FireSimについてある程度動かしたので、今度はカスタマイズをしてみたい。
というわけで、Firesimの実際のデザイン部分であるFireChipを使ってみることにした。
Tutorial: Developing New Devices — FireSim documentation
まずはデザインをForkしてダウンロードしてみる。とりあえずriscv-toolsはインストールしなくても良いらしい。
$ git clone https://github.com/msyksphinz/firechip.git $ cd firechip/ $ git submodule update --init $ cd rocket-chip/ $ git submodule update --init $ cd ..
私はVCSは持っていないので、Veritalorでシミュレーションを行う。
$ cd verisim/
$ make
これで、DefaultExampleConfig
という構成でFireSimの構成が作られる。
これで次に進もうとしたのだが、run-regression-tests
が動作しなくて途中で止めてしまった。これ、定義されてるのかなあ?
$ make run-regression-tests
その代わり、普通にビルドしたベンチマークプログラムは動作するらしい。試しに何本か流してみた。
msyksphinz@msyksphinz-VirtualBox:~/work/firechip/verisim$ ./simulator-example-DefaultExampleConfig /home/msyksphinz/riscv64/riscv64-unknown-elf/share/riscv-tests/benchmarks/dhrystone.riscv Microseconds for one run through Dhrystone: 540 Dhrystones per Second: 1850 mcycle = 270271 minstret = 196530 msyksphinz@msyksphinz-VirtualBox:~/work/firechip/verisim$ ./simulator-example-DefaultExampleConfig /home/msyksphinz/riscv64/riscv64-unknown-elf/share/riscv-tests/benchmarks/rsort.riscv mcycle = 238440 minstret = 171171