Vengineerの妄想(準備期間)

人生は短いけど、長いです。人生を楽しみましょう!

endmodule : モジュール名

Verification Engineerの戯言

Verilog HDLでは、

module module_name( .... );

endmodule // module_name

のように、コメントを使って、endmoduleの後に、モジュール名を書くことでこのmoduleが
どのモジュールに対応するかをわかりやすくすることができました。
(といっても、ほとんどのコードはそんなことはしていないと思いますが)

SystemVerilogでは、

module module_name( .... );

endmodule : module_name

のように、endmoduleに、コロン(:)を付け、その後にモジュール名(module_name)を明記する
ことができました。

endmoduleだけでなく、endtask、endfunctionでも同じようにタスク名、関数名を明記することが
できます。また、endclassの後には、クラス名を明記できます。

私は、かならず、:を使って、モジュール名などを明記するようにしています。

ちなみに、nSysの論文(http://www.nsysinc.com/nsys_SNUG_taipei07.pdf)では、
endclass // クラス名 のようにVerilog HDLの方法を使っています。
せっかくSystemVerilogで書いているので、endclass : クラス名にすればいいのに!