hirax.net::Keywords::「VHDL」のブログ



2008-01-10[n年前へ]

「ビジュアル言語」 

 グラフィカルな表現でプログラムを表現しようという「ビジュアル言語」の話を読んだ。この記事を読んで、ふと思い出したことがあった。

 計測・制御などをする場合、National InstrumentsのLabVIEWや、CYBERNETのSimulinkといったツールを使うことが多いように思う。いずれも、(基本的には)アイコンをワイヤー(線)で結ぶ「ビジュアル言語」である。少し前の実験系の理系学生であれば、誰でも98BASICでGP-IBを操作するプログラムを書かざるをえなかったように思うけれど、現在では、そういった場合に使われるツール群がLabVIEWやSimulinkといった辺りに移行しているように感じる。LabVIEWやSimulinkをPC BOX上で動かして計測や制御を行った上で、さらにはFPGAやASICにしてしまう、ということもある。

 こういった「ビジュアル言語」を触り始めたとき、苦手だったことの一つが、「どこから実行されるのかわからない」「どこから眺めて行けば・理解すれば良いのかわからない」ということだった。そして、しばらくそういうツールを使ってから、ようやく気づいたのが「どこからも実行されている」ことを理解していないとダメなんだな、ということだった。「あらゆる箇所で並列計算が行われている」と普通に思えばよいのだな、ということだった。

 VHDLなどのハードウェア記述言語では、基本的に、すべての部分が同時に動作する。行番号順に実行されたりするわけではない。そういうことは回路図という「ビジュアル言語」を見たら当然のように理解できるかもしれないが、そういったことはVHDLを見ただけではわかりにくい。どうしても、上から順番に実行されるような感覚で読んでしまう。最初の頃には、そういう感覚でLabVIEWやSimulinkのダイアグラムを眺めていたので、「どこから実行されるのかわからなくてイヤ」と感じいてたように思う。

 もう一つ、画像処理に「ビジュアル言語」が向くだろうか。私が素人だからかもしれないが、そうは思えない気がする。

2010-04-10[n年前へ]

VHDLで"Hello World"!? 

 スラッシュドットの「人気のプログラミング言語、Cが4年ぶりに1位に返り咲く」中のコメント「Re:群雄割拠と言う感じ」から、WikipediaのVHDLの説明を読みに行く。

 …VHDLのコード例が「Hello World」と「フィボナッチ数列」というWikipediaのエントリは、VHDLの説明として間違っているとしか思えません…
 VHDLの説明中の一番最初のコード例が"Hello World"というのは、それをネタとして眺めてみれば、とても面白い。
-- VHDL example programme: hello.vhd
 
use std.textio.all;
 
entity hello is
end entity hello;
 
architecture Wiki of hello is 
    constant message : string := "hello world"; 
begin
     process is
        variable L: line;
    begin
        write(L, message);
        writeline(output, L);
        wait;
    end process; 
end architecture Wiki;

 ちなみに、英語版のWikipediaのVHDLの説明を眺めにいくと、そこには現在VHDLが使われる用途を意識した、単純な例が並んでいる。



■Powered by yagm.net