2013年11月8日金曜日

Verilatorで変換できるdual port SRAMモデル

Verilatorでdual port SRAMを含むモジュールをシミュレーションしようとしたら、そもそもSRAMのモデルがないことに気が付いた。適当に書けばいいだろうと思ったのも束の間、そういえばVerilatorは合成可能じゃないと変換できないんだったっけ。

…と言うわけで、Verilatorで変換可能なSRAMモデルのeRubyのテンプレートを作った。ファイル先頭のName, AddrWidth, DataWidthを好みに書き換えて

% erb ram.v.erb > ram.v
とでもすれば、SRAMモデルのRTLが生成される。不要な機能は適当なラッパを被せて潰すつもりでビットイネーブルまで付けたけど、ちょっと重たいかな。ちなみに、昨日のetを使って
% erb ram.v.erb | et > ram.v
とすれば、すこし見栄えが良くなる(主観)。

0 件のコメント:

コメントを投稿