いったん、現時点のコードセットをSynthesijer-1.0としてアーカイブしました。
1. ダウンロード
https://sourceforge.net/projects/synthesijer/files/synthesijer-1.0/ から
- synthesijer-20140730.jar
- sample-20140730.zip
をダウンロードしてください。samle-20140730.zipはサンプルプログラムです。unzipなどで展開してみてください。
2. ベンチマークをビルド,シミュレーションする
sampleには次のものがまとめられています。
- bench – ベンチマーク用の素数を見つけるプログラムとバブルソート
- sc1602 – 組み込みでよく見る16文字2行のキャラクタディスプレイ用サンプル
- serial_echo – RS232Cのエコーバック。小文字を大文字に変換する
- bf – brainf**kインタプリタ
- test – 構文テスト用
bench以下のベンチマークプログラムをコンパイルしてみましょう。次のようにダウンロードしたJarファイルを環境変数に指定してmakeしてください。
SYNTHESIJER=~/Downloads/synthesijer-20140730.jar make
これでJavaプログラムからVHDLとVerilog HDLが生成されます。
GHDL(64bit版)があれば、次のようにしてシミュレーション用のバイナリを作成できます。
make ghdl64
バイナリを実行すればシミュレーションできます。たとえば、
./primesim_top --vcd=hoge.vcd
しばらくするとシミュレーションが終わります。(シミュレーションはfailという表示がでますが、”Simulation End!”と表示されれば問題なしです)GtkWaveなどで結果を確認すると、16bitで表現できる数の中で最大の素数65521ができていることがわかります。