コーディング規則
個人の趣味なのでSTARCルール等には従っていません。
Verilog
- 内部にフリップフロップやラッチを持つモジュールは、同期リセット・非同期リセットの両方に対応させる。
具体的には、`or_negedge_RST_をalwaysの条件に加える
例: always @(posedge CLK `or_negedge_RESET_X)
- portでない信号(内部に閉じた信号)には先頭にi_を付ける
例: wire i_SEL;
- 負論理の信号には末尾に_Xを付ける
例: wire i_IRQ_X;
- #時間 を使用していなくても、各ファイルに`timescaleを入れる
例: `timescale 1 ns / 1 ns
- テキストファイルは文字コードUTF-8、改行はUNIX(LFのみ)で作る。
VHDL
trunk/pblaz/rtl/vhdl 以下のソースコードは、以下のルールに従って書いたつもりです。
- portに関して、以下のsuffixをつける(OpenCores HDL modeling guidelines風味)。
- signalに関して、以下のprefixをつける。
| D-FlipFlopに合成されることを意図したsignal | R_ |
| 単なるwireに合成されることを意図したsignal | W_ |
- constantに関して、prefix C_ をつける。
言語に依存しない
- テストベンチは t<対象の名前>.v(hd) というファイル名にする。