問題タブ [verilator]

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 投票する
1 に答える
1543 参照

stdout - SystemVerilog $display を stderr に送信

Verilatorを使用して、SystemVerilog で記述されたアルゴリズムをstdin、 およびを介して渡される I/O ストリームを操作する実行可能ユーティリティに組み込みますstdout。残念ながら、SystemVerilog$display()関数を使用すると、出力はstdout. 他の目的のために汚染されないstderrようにしてほしい。stdout

どうすればこれを実現できますか?

0 投票する
2 に答える
1711 参照

verilog - 1000 サンプル値を持つ入力の単一の最大値を見つけるための Verilog コード

正の clk エッジごとに 1 回メモリから読み取られる 1000 個の 10 進値を持つ入力信号の単一の最大値を見つけたいです。最大値を見つけるために次の大まかなコードを実行しましたが、正しい最大値が得られませんでした。 /number 入力信号のこれらの 1000 の値から 1 つの最大値を見つけることができるように、私を助けてください..`事前に感謝します

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

c++ - 関数パラメーターとして使用されるクラス型を初期化する方法

HDL から C++ への変換を処理しようとしていますが、ちょっとした問題にぶつかりました。Ubuntu で Verilator を使用した変換は簡単ですが、1 つのデータ型に悩まされています。

階層の最上位コードは...

関数にデータを渡す

私が得ていないものです。2 番目のパラメーターは理解しやすいものです。最初は、それほどではありません。

つまり、コンパイラは私が合格することを期待していますか? どのデータ型?

私はそのようにデータを渡したい...

しかし、「randomCharacter」は初期化されていません。

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

scala - チゼル 3 のダイナミック テスト ハーネス

Chisel にプロセッサを実装しており、非常にトリッキーなテスト ケースが多数あります。多くの状態を持つ要素の場合、オンザフライでテスト ベクトルの長いシーケンスを生成し、オンザフライで正しい応答も計算したいと考えています。Chisel 3 でこれを行う唯一の方法は、Java イントロスペクションを使用してハッキングし、scala コードを C++ テスト ハーネスに接続して、C++ コードで刺激ベクトルと正しい応答を生成することです。

あまりきれいではありません。Scala フレームワーク内に留まり、Scala コードで動的テストを作成する方法はありますか? これまでの問題は、Verilator によって生成された C++ に Scala を接続することでした。Verilator で生成された C++ シミュレーターを、刺激ベクトルを生成してその場で応答をテストする Scala/Chisel テスト ハーネス コードと対話させるクリーンな方法はありますか?

ありがとう

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

verilog - サブモジュールを検証しないようにベリレーターリンターに指示する方法は?

このコマンドでデザインをリントするために検証ツールを使用しています:

ただし、一部のサブモジュールは使用できません (主に FPGA コンストラクターからテンプレート化されるため)。次に、次のようなエラーがあります。

これらのエラー メッセージに記載されているすべてのサブモジュールは、格子 machxo3 fpga のテンプレートです。

これらのモジュールを気にしないようベリレーターに依頼する解決策はありますか?

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

verilog - トップモジュールでサブモジュールを作成すると検証エラーが発生する

Verilog の学習を始めたばかりで、4 ビット加算器を作成することにしました。この 4 ビット加算器を作成するために、最初に half_adder モジュールを作成し、次に half_adder モジュールを使用する full_adder モジュールを作成しました。4 ビット加算器では、4 つの full_adder モジュールを使用します。ここまでは、Verilator を使用してすべてをコンパイルおよびシミュレートします。いくつかのテストを作成し、すべての出力が正しいことを確認しました。

4 ビット加算器が完成した後、加算に 4 ビット加算器を使用する小さな ALU を作成することを考えました。ALU モジュールで 4 ビット加算器のサブモジュールを作成すると、検証エラーが発生します。

4 ビット加算器は次のようになります。

ALU (今のところ) は次のようになります。まだ optcode select などを実装する必要がありますが、4 ビット加算器サブモジュールを作成しても、既にエラーが発生しています...:

コマンド実行時 verilator -Wall -cc alu_4_bit.v

次のエラーが表示されます。

奇妙なことに、これらのエラーは adder_4_bit.v から発生しているように見えますが、ベリレーターで既にコンパイルしてシミュレートしています。正しく動作することも確認しました。

ここで何が問題になる可能性がありますか?