-
Notifications
You must be signed in to change notification settings - Fork 1
mux ramの合成
Ushitora Anqou edited this page Sep 2, 2021
·
2 revisions
mux-ramはIyokan内部でも自動的に合成できるが、Yosysによって合成したものを使用することもできる。Yosysによる最適化が見込めるので、後者のほうが高速に動作する(傾向にある)。
合成したものはリンク時にIyokanバイナリにくっつける。C++側のこのあたりやCMakeLists.txtのこのあたりを参考のこと。
以下の手順はyosys-json
をサポートしていなかったときの記述(iyokanl1-json
を用いている)。
yosys-json
を用いる方法は別途作る必要がある。Iyokan-L1ではRAM用に特殊な処理をしていたので(genRam
オプション)、それをIyokan側にポートしなければならない(はず)。
$ dotnet run -p ../kvsp/Iyokan-L1/ -c Release ../cahp-ruby/ram-1KiB-16bit.json mux-ram-9-16-16.json genRam
$ cat mux-ram-9-16-16.json | \
sed -e 's/io_port_writeEnable/wren/' \
-e 's/io_port_readData/rdata/' \
-e 's/io_port_addr/addr/' \
-e 's/io_port_writeData/wdata/' | \
jq -c > mux-ram-9-16-16.min.json