いずみ研的回路インターフェースのサンプル

サンプル

処理モジュールの記述例と特徴
※ソースコードが文字化けするときは、 〔表示〕→〔エンコード〕→〔日本語(自動選択)〕にする。
記述例 ソースと検証ログ 実装形式 わかりやすさ 実行効率
(スループット)
設計規約上の
安全性・確実さ
例1 ifsmpl_multicycle.v
tb_ifsmplvw_multicycle.log
マルチサイクル 最低効率(6clock/data) ○(レジスタ出力)
例2 ifsmpl_multicycle2.v
tb_ifsmplvw_multicycle2.log
マルチサイクル 低効率(4clock/data) △(出力前にロジックを含む)
例3 ifsmpl_multicycle3.v
tb_ifsmplvw_multicycle3.log
マルチサイクル × 低効率(4clock/data) ○(レジスタ出力)
例4 ifsmplvw_pipeline.v
tb_ifsmplvw_pipeline.log
パイプライン 高効率(2clock/data) ○(レジスタ出力)
例5 ifsmplvw_pipeline2.v
tb_ifsmplvw_pipeline2.log
パイプライン 最高効率(1clock/data)
(バースト処理)
×(入力から出力にFFを通らないパス)
例6 ifsmplvw_pipeline3.v
tb_ifsmplvw_pipeline3.log
パイプライン × 高効率(1clock/data)
(バースト処理)
○(レジスタ出力)
検証のためのテストベンチの記述例:tb_ifsmplvw.v
送受信レート調整機能付きproducerとconsumerを用いて、(1)最大速度のproducerとconsumer、(2)速いproducerと遅いconsumer、(3)遅いproducerと速いconsumerで検証
Makefile
シミュレータ iverilog & vvp と波形表示 gtkwave を起動する Makefile
tb_ifsmplvw.sig
gtkwave で表示する信号のリスト

関連資料

valid & wait 方式の通信プロトコル解説
演算機能回路資料 http://www.ritsumei.ac.jp/ocw/se/2006-55170/lecture_doc/2006-55170-13.pdf
Verilog-HDL による回路設計のリハビリ
http://www.ritsumei.ac.jp/se/re/izumilab/lecture/07veri-basic/
フリーのCADツールの使用例
http://www.ritsumei.ac.jp/se/re/izumilab/lecture/08cadexamples/
valid & wait 方式によるより具体的なモジュール設計例 http://www.ritsumei.ac.jp/se/re/izumilab/lecture/07electone/

戻る