9 |
RISC-Vの調査 |
BluespecのFluteプロセッサ
BluespecのBSVが読めるようになったところで、引き続いてFluteプロセッサの調査を行います。FluteはBluespecの開発したRISC-Vアーキテクチャの5段パイプラインRISC CPUです。それだけでなく、仮想記憶をサポートしているため、Linuxが動作します。(ページ)テーブルウォークはMMU内のハードウェアが実行します。ソースではステートベース設計のFSMで実装されていました。
Githubからダウンロード
としてGithubからダウンロードします。
RV32ACIMUアーキテクチャのBsimモデルの作成
アーキテクチャには各種ありますが、比較的軽いもの、例えば32bit、Floating無しのマイクロアーキテクチャを選択します。
として、ターゲットディレクトリに移行します。
と実行すると、
このように、bsvで書かれたソースファイルがbscによりコンパイルされ、シミュレーションモデルであるexe_HW_simが生成されます。
RV32ACIMUアーキテクチャのBsimモデルの試験
により、出来上がったシミュレーションモデルが、RISC-Vのテストスイートによりテストされます。
テストスイートのelfを、elf_to_hexにより、asciiのメモリイメージファイルに変換しています。
これはadd命令単体のテストですが、全てのテストを行うには、以下のように実行します。
と実行すると、
のように出力され、67個全てのテストが実行され、全てパスしたことが表示されます。