XiangShan – オープンソースの高性能RISC-Vプロセッサ
(github.com/OpenXiangShan)-
XiangShanプロジェクトの紹介
- XiangShanは高性能RISC-Vプロセッサを開発するためのオープンソースプロジェクトで、中国科学院計算技術研究所とファンチン研究所が進めている。
- このプロジェクトでは、アジャイル開発手法を活用してチップ開発プロセスを加速するための各種ツールを開発・利用している。
-
文書およびスライド
- XiangShan-docは公式ドキュメントリポジトリで、設計仕様、技術スライド、チュートリアルなどを含む。
- マイクロアーキテクチャの文書が公開されており、詳細はXiangShan-docで確認できる。
-
出版物
- 2022年MICROで発表された論文は、XiangShanとアジャイル開発手法を用いた高性能RISC-Vプロセッサ開発を紹介している。
- この論文は、可用性、機能性、再現性に関するすべてのバッジを受賞した。
-
アーキテクチャ
- XiangShanの最初の安定したマイクロアーキテクチャはYanqihuで、2番目はNanhuである。
- 現在開発中のバージョンはKunminghuで、masterブランチで進められている。
-
サブディレクトリ概要
- 主要ディレクトリには設計ファイル、仮想デバイス、SoCラッパー、上位モジュール、ユーティリティコード、メイン設計コードなどが含まれる。
- スクリプト、浮動小数点ユニット、L2/L3キャッシュ、コシミュレーションフレームワーク、事前ビルド済みシミュレーションイメージも含まれる。
-
IDEサポート
make bspコマンドでBSPをサポート。make ideaコマンドでIDEAをサポート。
-
Verilog生成
make verilogコマンドでVerilogコードを生成でき、出力ファイルはbuild/XSTop.vである。
-
プログラム実行とシミュレーション
- 環境変数を設定し、
millをインストールした後、プロジェクトをクローンしてmake initでサブモジュールを初期化する。 - Verilatorをインストールし、
make emuコマンドでC++シミュレータをビルドして実行可能。
- 環境変数を設定し、
-
トラブルシューティングガイド
- XiangShanのドキュメントには多くの主要論文が掲載されており、将来、さらに多くの学術的イノベーションが実現されることを期待している。
1件のコメント
Hacker Newsコメント
Dockerfileを使ってシミュレーションを実行できる。64GBのRAMが必要で、16GB RAMに48GBスワップを追加して対処した。
このプロジェクトは最近の関心領域をうまく組み合わせていて、興味深い。
融合命令リストには予想外の点がある。
このプロジェクトは学術的な観点から見ても興味深い。
Chiselを使っている別のプロジェクトを見るのも面白い。
XiangShanの「Nanhu」アーキテクチャを採用した商用製品がある。
「高性能」という言葉の意味が気になる。
オープンソース化の戦略が気になる。
素晴らしい仕事への賛辞。
中国がAI、ロボット工学、プロセッサ分野で大きな進展を遂げ、多くをオープンソース化している点が印象的だ。