ファイルひとつごとの解説
/sample/create_project.tcl
- ModelSim, ISE, ISE Simulatorのプロジェクトファイルを自動作成します。
- 履歴を見ればなんの設定を変えたかはっきりわかるので、複数人でFPGAを開発するときは、
iseのプロジェクトファイルでなくプロジェクトを作るtclスクリプトをSubversion
に管理させるのがよいです。
- iseのバージョンに依存しにくくなるため、iseをバージョンアップ/ダウンするのも楽になります。
- ModelSIMのプロジェクトファイルには、絶対パスが入ってしまいますが、自動作成のスクリプトを
使った場合は相対パスを記述できるので複数人での開発に威力を発揮します。
/model/MIMIC_DCM.vhd
- DCMもどきです。動作の正確さが無い代わりに、Xilinx標準のDCMモデルより動作が軽いです。
- 正確さは期待しないでください。特に、位相シフトは未実装です。
- ナノ秒単位のシミュレーションでも動きます(Xilinx標準のものはピコ秒単位でないとだめ)。
/sample/s
- 短縮コマンドを登録するTclスクリプトです。
- ModelSIMとiseを自動判別するのがミソです。
/tcl/fsm.tcl
- NOODLYBOX.vhdに入る中身(NOODLE)の部分です。スパゲッティ・プログラムになってしまったので、
tcllibのstooopで書き直す予定です。
- ModelSIMとISE Simulatorとの差異を吸収して、ユーザプログラム(Cで書く部分)の変更が不要になるように
作ってあります。
/model/t~.vhd
- 頭にtが付いたファイルはテストベンチの最上位階層です。ModelSIMならばdo msim~.doで実行できます。
/sample/msim~.do
- 更新されたソースのコンパイル、シミュレーション、波形表示を行います。
シミュレーションの合否判定が自動でないのが欠点です。
- 誰でも同一の条件でシミュレーションができるため、これも複数人での開発に有用だと思います。