Kernekoncepter
RVfpgaパッケージは、実践的な演習を通してRISC-VアーキテクチャとSoC設計を学ぶための包括的な教育ツールであり、大学レベルの講義やハッカソン、オンラインコースなど、様々な教育現場での活用事例が増えている。
本稿では、RVfpgaパッケージを用いた様々な教育実践事例と、その有効性について論じられています。RVfpgaは、オープンソースのRISC-V ISAをベースにしたSoC設計を学ぶための包括的なパッケージであり、FPGA上で動作するRISC-Vコア(VeeR EH1/EL2)や、周辺回路、ソフトウェアツールチェーンなどを提供しています。
大学における講義での活用事例
マドリード・コンプルテンセ大学(UCM)では、電子通信工学部の4年生を対象とした「統合システムアーキテクチャ」と、ソフトウェア工学部の2年生を対象とした「コンピュータ構成」の2つの講義でRVfpgaが活用されています。
「統合システムアーキテクチャ」では、学生はNexys A7 FPGAボードを用いて、RVfpga SoC上で動作するC言語やRISC-Vアセンブリ言語のプログラム開発を行い、パイプライン処理やキャッシュメモリ、割り込み処理などの高度なコンピュータアーキテクチャの概念を学びます。
「コンピュータ構成」では、Whisper、RVfpga-ViDBo、Ripes、RVfpga-Pipelineなどのシミュレータを用いて、RISC-V ISAやパイプライン処理、キャッシュメモリ、I/Oシステムなどの基礎的なコンピュータアーキテクチャの概念を学びます。
ポートランド州立大学では、電気工学専攻の大学院生を対象とした「SoC設計」の講義でRVfpgaが活用されています。
学生は、RVfpga SoCに周辺回路を追加するプロジェクトや、VGAコントローラを実装するプロジェクトなど、実践的な課題に取り組みます。
最終プロジェクトでは、学生はチームを組んで、RVfpga SoCを用いた独自のシステムを設計・開発します。
ルッピンアカデミックセンターでは、コンピュータ工学部と電気工学部の学生を対象としたRISC-Vハッカソンが開催されました。
学生は、RVfpga SoC上で動作する高速フーリエ変換(FFT)アルゴリズムの高速化に取り組みました。
ハッカソンを通じて、学生はアクセラレータのマイクロアーキテクチャや設計、システムレベル設計、ソフトウェア/ハードウェア協調設計などの知識・経験を深めました。
バルセロナ大学(UB)では、コンピュータ工学部の学生を対象とした「コンピュータ入門」と「コンピュータアーキテクチャ」の2つの講義でRVfpgaが活用されています。
「コンピュータ入門」では、RipesシミュレータとRVfpgaを用いて、RISC-V ISA、マイクロアーキテクチャ、メモリ階層、I/Oインターフェースなどの基礎的な概念を学びます。
「コンピュータアーキテクチャ」では、「コンピュータ入門」で学んだ知識を基に、パイプライン処理、スーパーパイプライン処理、スーパースカラプロセッサ、メモリ階層、I/Oインターフェースなどのより高度な概念を学びます。
RVfpgaを用いた教育の利点
これらの講義では、RVfpgaを用いることで、学生は理論的な知識を実践的に学ぶことができ、コンピュータアーキテクチャへの理解を深めることができたと報告されています。また、RVfpgaはオープンソースであり、無料で利用できるため、教育機関にとって導入しやすいという利点もあります。