問題タブ [riscv]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
271 参照

linux - RISC-V Linux (Zedboard) から物理メモリを予約するには?

Linux の起動時に物理メモリの一部を確保したいと考えています。Zedboard で実行されているデフォルトの RISC-V カーネルでは、物理メモリのサイズが 254MB (0xfe00000 バイト、260096K) であることがわかりました。

そこで、カーネル パラメーター「mem=128M memmap=126M$128M」を指定して 126MB の物理メモリを予約しようとしましたが、Linux が認識する物理メモリ サイズは同じままです。

0 投票する
0 に答える
903 参照

riscv - RISCV 命令セットに新しいカスタム命令を追加する方法

何日もの間、RISV ISA シミュレーターを使用して新しいカスタム命令をシミュレートしようとしてきましたが、新しい命令を作成して riscv アセンブラーでコンパイルすることに成功していません。risk-tools/riscv-opcodes/opcodes に独自の新しいオペコードを追加してみました。ADD の機能を実行するカスタム オペコードを作成してから、ADD をアセンブリ コードのカスタム命令に置き換えようとしましたが、アセンブラは命令が見つからないと言ってコンパイルに失敗しました。また、組み込みのカスタム命令 custom0,1,2 を使用しようとすると、無効なオペランドのエラーが常に発生します。

0 投票する
1 に答える
372 参照

linux-kernel - ZC706 での linux-3.14.41 の起動: カーネル パニック

FPGA ZC706 で linux-3.14.4 を起動すると、次のエラーが発生します。次の方法ですべてのツールを構築しました。

ロケットチップ:

ルート ディスク イメージ:

起動:

ブートが開始されますが、ある時点で停止します。以下は起動エラーです

私が何か見逃しているかどうかにかかわらず、誰かが私を助けることができますか. linux-3.14.33 も試しました。同じエラーが出ます

0 投票する
1 に答える
660 参照

linux - Linux カーネルが Zedboard での RISC-V custom0 命令の実行を妨害するのはなぜですか?

dummy_rocc は、RISCV ツールの単純な組み込み RoCC アクセラレータの例で、いくつかの custom0 命令が定義されています。dummy_rocc をセットアップした後 (Spike ISA シミュレータまたは Rocket-FPGA のいずれかで異なります)、dummy_rocc_test (ユーザー プログラム テストケース) を使用して、dummy_rocc アクセラレータの正確性を検証します。dummy_rocc_test を実行するには、pk (プロキシ カーネル) または Linux の 2 つの方法があります。

Spike ISAシミュレーターでdummy_roccをセットアップしたことがありますが、dummy_rocc_testはpkでもLinuxでもうまく機能しました。

ここで、Spike を Zedboard の Rocket-FPGA に置き換えます。pk での実行が成功している間:

Linux での実行は失敗します。

スクリーンショットは、「シグナル 4」が custom0 命令によって発生したことを示しています。 dummy_rocc_test の readelf スクリーンショット

だから私の問題は、「Linux カーネルが Zedboard での RISC-V custom0 命令の実行を妨害するのはなぜですか?」

dummy_rocc_test のソース コードは参考として提供されています。

0 投票する
1 に答える
1347 参照

benchmarking - RISCV アーキテクチャでの SPEC06 の実行

RISC-V Rocket チップ アーキテクチャと RISC-V コンパイラに変更を加えて、SPEC06 ベンチマークを実行したいと考えています。Dhrystone が既に存在することは承知していますが、他のベンチマークでパフォーマンスを測定したいと考えています。RISC-V 環境で SPEC06 ベンチマークを実行できるようにするための手順は?

編集: FPGA (特に zc706) に SPEC06 をインストールして実行する方法を教えてください。ロケットチップでプログラムされた zc706 で linux-3.14.41 を起動できます。

0 投票する
1 に答える
620 参照

riscv - riscv64-unknown-elf-gcc を使用してコンパイルされたマルチスレッド プログラムのコンパイル エラー

私が直面したエラーは、thread-ex.c:24:5: error: unknown type name 'pthread_t' pthread_t thread1, thread2; でした。/* スレッド変数 */ ^ thread-ex.c:36:5: 警告: 関数 'pthread_create' の暗黙の宣言 [-Wimplicit-function-declaration] pthread_create (&thread1, NULL, (void *) &print_message_function, (void ) &data1 ); ^ thread-ex.c:42:5: 警告: 関数 'pthread_join' の暗黙の宣言 [-Wimplicit-function-declaration] pthread_join(thread1, NULL); ^ thread-ex.c: 関数 'print_message_function' 内: thread-ex.c:61:5: 警告: 関数 'pthread_exit' の暗黙の宣言 [-Wimplicit-function-declaration] pthread_exit(0); /終了*/

0 投票する
1 に答える
87 参照

riscv - スパイク時のコア間通信

スパイク -p2 を使用してマルチコア モードでスパイクを使用する場合、あるコアから別のコアへのデータの転送をシミュレートできる方法はありますか? それができるプログラムはありますか?

0 投票する
1 に答える
513 参照

linux - Linux が FPGA 上のマルチコア Rocket を認識しない

How to make a multicore system using the RISC-V Rocket-chip processor to generate a multicore Rocket for FPGA (board: Xilinx ZC706)の指示に従っていますが、Linux は追加のコアを認識しません。

FPGA をロケット チップ エミュレーターまたは Spike ISA シミュレーターに置き換えると、Linux はマルチコアを認識するため、Linux は SMP に適していると確信しています。

スクリーンショット

更新: マルチコア修正コミットを適用した後、riscv Linux が停止します。