RARS
Awesome RISC-V

RARS

RISC-Vエコシステム

RARSは大学のアセンブリ言語の授業で使われるJava製のRISC-Vシミュレータです。ミズーリ州立大学のMIPSシミュレータであるMARSを基に構築されています。

RARSはLYSZTでダウンロードできます。

RARSのインストール方法

1行でRARSをあなたのマシンにインストールします。インストーラーはGitHubから最新リリースを取得し、お使いのオペレーティングシステムとアーキテクチャに一致するファイルを選択し、そのsha256チェックサムを検証して、ホームディレクトリにインストールします。管理者権限は必要ありません。

ターミナルからインストール
curl -fsSL https://lyszt.net/install.sh | sh -s -- rars

コマンドはLinuxとmacOSで動作します。Windowsでは、以下の手順に従ってファイルを手動でダウンロードしてください。

手動ダウンロード

RARS はご自身でダウンロードすることもできます。ダウンロードダイアログでお使いのオペレーティングシステムを選択し、公式 GitHub リリースからファイルを取得してください。

公式ドキュメントより
メソッド要件方法
JAR ファイルを実行する
  • Java 8+
java -jar rars_<version>.jar
リリースページを開く
ソースからビルド
  • JDK
  • Git
git clone https://github.com/TheThirdOne/rars --recursive./build-jar.sh

Java 8 以降がインストールされている必要があります。

Flathubでも利用可能です:Flathub

概要

RARSはJavaで書かれたRISC-Vアセンブラ兼シミュレータです。アセンブラは、命令の読みやすいテキスト形式であるアセンブリコードを機械語に変換します。シミュレータは、プロセッサを模倣してその機械語を実行します。RARSは両方をエディタとともに1つのデスクトップウィンドウにまとめています。

RARSは、乗算と除算のためのM拡張、浮動小数点のためのF拡張とD拡張、ユーザーレベルの割り込みのためのN拡張を備えた32ビットおよび64ビットの基本命令セットをサポートしています。すべての疑似命令を、それが変換される実際の命令の隣に表示します。疑似命令とは、アセンブラが1つ以上の実際の命令に展開する省略記法です。プログラムは、MARSやSpikeのものと一致するシステムコールを通じてテキストを出力し、入力を受け取ります。

履歴

Benjamin Landersは2017年にMARS 4.5を改変してRARSを作成しました。MARSは、ミズーリ州立大学のPete SandersonとKenneth Vollmarによって構築された、より古い命令セットであるMIPSのためのアセンブラおよびシミュレータであり、長年にわたりアセンブリの授業で標準的なツールでした。

MIPSからRISC-Vへの切り替えにより、遅延分岐などのMIPSの機能が削除され、RARSをRISC-V仕様に照らして検証するテストフレームワークが追加されました。命令はプラグインとして読み込まれるため、コンパイル済みのクラスをフォルダに配置することで新しい拡張をサポートできます。

使用場所

MARSでMIPSを教えていたコースは、RARSでRISC-Vに移行でき、使い慣れたインターフェースと使い慣れたシステムコールをそのまま維持できます。RARSは単一ファイルとして提供され、Java 8以降が入ったあらゆるコンピューターで動作します。

ソース

  1. RARS README
  2. MARS, Missouri State University