RegressionTest
sample/regression.shは、NOODLYBOXの機能追加・リファクタリングのときに、エンバグしていないことを確認するために用意したものです。
しかし、NOODLYBOXの配布物をダウンロードしてくださった方の環境で、正しくシミュレーション・合成が動作するかどうか、を確認するためにも使うことができるのに気がついたため、この文書を書くことにしました。
使い方
- msys/msys.batをダブルクリックして、MinGW32のプロンプト(rxvt)を開きます。
- cdコマンドでnoodlybox/sampleディレクトリまで移動します。
- 以下のコマンドを打ち込みます。
. settings.sh
./regression.sh
regression.shの実行で、以下の処理を全自動で行います。行わせたくないものは#でコメントアウトするとよいでしょう。
- ModelSIMでVHDLのシミュレーション
- ModelSIMでVerilog HDLのシミュレーション
- ISEでVHDLの合成
- ISEでVerilog HDLの合成
- ISE SimulatorでVHDLのシミュレーション
- ISE SimulatorでVerilog HDLのシミュレーション
実行後に、regression.logを開いて、何も記録されていなければ以前のバージョンと動作に差が無い、つまりエンバグしていない、ということです。
rubyやtcllibのインストールを忘れていたりすると、ModelSIMやISE Simulatorの実行途中にエラーが出て止まることがあります。そのような場合は、ウィンドウなら×を押すことで、、コンソールならCtrl-Cを押すことで終了させてください。
ModelSIM XE Starterについて
- ModelSIM XE Starterをインストールするときに、Verilog HDLとVHDLのどちらかを選択していると思います。
- regression.shは、両方の言語でシミュレーションを行うのですが、インストール時に選択したほうしか動きません。
- 両方の言語で動かすには、Xilinxで配布しているModelSIM XE Librariesのアップデート(サービスパック)をModelSIMのインストールディレクトリに展開すればOkです。