できないことはできない

ただのメモの置き場所

VHDLのクロックイベント

会社に入る前はVerilogしか扱ってなかったけど、会社の公用語?がVHDLなので入社して1年間VHDLをずっと使ってきた。
宣言の仕方とか細かな文法は違うけどほとんど違和感無く使えるようになった。

でもその中でもかなり違和感があったのはクロックイベントの書き方。

verilogだとこう。

always @(posedge CLK) begin
 A <= B;
end

でもVHDLだとこう。

process(CLK) begin
 if(CLK'event and CLK = '1')then
  A <= B;
 end if;   
end processs;

長くね・・・?と思ったのが第一印象。でもどこを見てもこう書いているし、こういうものだと思って1年間使ってた。

しかーしAlteraのQuartusの記述テンプレートをたまたま見たところ、

process(CLK) begin
 if(rising_edge(CLK))then
  A <= B;
 end if;   
end processs;

という記述が・・・。知らなかった。

今度からこっちを使おうっと・