FPGA開発日記

カテゴリ別記事インデックス https://msyksphinz.github.io/github_pages , English Version https://fpgadevdiary.hatenadiary.com/

ブラウザ上でRISC-Vプロセッサの動作を学習できるGUIパイプラインシミュレータWebRISC-V

RISC-Vメーリングリストでアナウンスがあった。ウェブブラウザ上で動作するRISC-VパイプラインシミュレータWebRISC-Vが面白い。

論文も公開されている。正直何が新規要素なのかはよく分からないが、しっかりまとまっていることはいいことなので時間を取って読んでみたい。

https://dl.acm.org/doi/10.1145/3338698.3338894

リンクをクリックすると、RISC-Vのパイプライン画面が登場する。ここにプログラムをロードして動作を確認することができる仕組みだ。これがブラウザ上で動作するというのはとても面白い。

x.dii.unisi.it

f:id:msyksphinz:20200515010349p:plain

さっそく使ってみる。" Load Program"からサンプルプログラム"Factorial"を選択して"Load into Memory"をクリックする。すると、バイナリエンコーディングが左側に表示された。

f:id:msyksphinz:20200515010648p:plain

早速、"Step Forward"で命令を実行して行くが、ぬぬ?どうもパイプラインの動きか良く分からんなあ。 もう少しアニメーションで表示してくれると分かりやすいのだが、せっかく面白いアイデアなのに少しもったいない。

そういえば高校1年生の授業で、計算機アーキテクチャ実習でCASL II/COMET IIのGUIシミュレータを使って授業をしていたことを思い出した。

それがとても面白くて、冬休みに自分でVisual Basicを使ってGUIシミュレータの模倣品を作ったことを思い出した。今思い出すとそれがコンピュータアーキテクチャに興味を持った最初だった気がするので、こういう分かりやすいシミュレータが学生のモチベーションになってくれると嬉しい。