問題タブ [register-transfer-level]

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

arrays - systemverilog の構造体の配列であるパラメーターのサイズをオーバーライドする

定義済みの構造体の配列であるモジュール パラメーターがあります。この配列のデフォルト サイズを 1 要素に設定しました。アイデアは、インスタンス化時に適切なサイズでオーバーライドすることです。

以下に示す方法は、サイズをオーバーライドしません。最初の値をオーバーライドするだけです。サイズフィールドがパラメーター化されていないため、なぜこれを行うのかがわかります。サイズのパラメーターを渡すよりも良い方法はありますか?

お手伝いありがとう。

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

verilog - Verilog で 1 つだけを含むベクトルを定義して初期化する方法は?

すべてが 1 の 128 ビット ベクトルを宣言したい場合、これらの方法のどれが常に正しいですか?

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

vhdl - systemverilog カバー グループを vhdl モジュールにバインドする

VHDL IP の systemverilog カバー グループを作成しています。私の計画は、VHDL IP の内部信号にアクセスできると仮定した別の SV コードを作成することです。その後、コードの SV セグメントがシミュレータによって VHDL で自動的にインスタンス化されるように、バインドを行います。間違っている場合は修正してください。以前はバインディングを使用したことがありませんでした。

始める前に、バインドがどのように機能するかを確認しようとして、それをテストするための小さなプログラムを作成しました。ここにあります...

test_bind.sv

今、コンパイルしようとすると、次のエラーが発生します。

my_vhdl_module は単純な vhdl src コードです。my_vhdl_module の非常に単純な verilg 版でも同じことを試みましたが、同じエラーが発生しました。単純なバグのように見えるので、ばかげているように感じますが、まだ理解できませんでした。これに関するコメントは本当に役に立ちます。

0 投票する
3 に答える
14315 参照

verilog - スコアボードとチェッカーの違い

RTL DUT 用のテストベンチの開発を開始しました。テストベンチのすべてのコンポーネントを使用して、DUT の機能を検証するためのセルフチェック メカニズムを実装したいと考えています。

したがって、スコアボード コンポーネントを開発する必要があります。しかし、ここでは、チェッカーコンポーネントの概念さえ理解しています。

スコアボードコンポーネントとチェッカーコンポーネントの違いは何ですか?

また、そのアプリケーションは?

スコアボードチェッカー、またはその両方を使用する必要があるのはいつですか?

ありがとう。

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

verilog - Verilog を使用した Quartus RTL ビューアの奇妙なコンポーネント

私は Verilog を学んでいますが、Verilog コードを見ただけでは回路がどのように機能するかがわからない場合は、RTL ビューアーにアクセスしてデジタル ロジックを確認します。しかし、このコードには奇妙なコンポーネントが表示され、このコンポーネントが何なのかわかりません。フリップフロップ、マルチプレクサ、またはロジック ポートですか? 以下はコードと画像です。画像では、コンポーネントは赤い三角形です。

コード :

ここに画像の説明を入力

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

vhdl - vhdl'87 のインスタンス ピンの定数接続

次の簡単なテストケースがあります:

これでmodelsimを実行すると、問題なく動作します。しかし、オプション '-87' を指定して modelsim を実行すると、これが得られないというエラーが表示されます Error: top.vhd(13): (vcom-1451) Actual (enumeration literal '0') for formal "A" is not signal name.。これは VHDL'87 の不正な RTL ですか?

これが VHDL'87 でサポートされていない場合、定数をインスタンス ピンに接続する正しい方法は何でしょうか。

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

vhdl - 重要な出力での VHDL 警告「警告 (13024): 出力ピンが VCC または GND に固定されている」

私は現在、フィボナッチ アルゴリズムの高レベル記述 (C) を取得し、VHDL で記述された RTL モジュールに変換する必要があるプロジェクトに取り組んでいます。そのためには、このような高レベルの記述を合成可能な VHDL コードに変換する必要があります。つまり、IC プロトタイピングで広く知られている方法で、データパスと有限状態マシン (FSM) の VHDL コードを記述する必要があります。

データパスと FSM を 2 つの別個のファイルに記述し、それらを 3 番目のファイルで VHDL COMPONENT としてインスタンス化し、フィボナッチ モジュールを定義しました。Quartus II ソフトウェアを使用すると、"Analysis & Synthesis" はエラーなしで成功し、"警告 (13024): 出力ピンが VCC または GND に固定されています" という非常に煩わしい警告が表示されます。この警告が本当に厄介なのは、最終結果であるフィボナッチ モジュールの最も重要な出力に表示されることです。この出力は、私のコードでは「d_o」と呼ばれています。

「data_o」出力ピンは、加算器、減算器、レジスタ、マルチプレクサなどのコンポーネントを使用して記述されるデータパス コンポーネントから取得されます。データパスのみをコンパイル (分析と合成) すると、同じ出力に対して警告が再度表示されます。

私のコードの何が問題なのか本当にわかりません。皆さんが私を助けてくれることを願っています。コードを以下に示します。

そして警告:

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

verilog - Verilog でラウンド ロビン アービターを作成しようとしています。

そのため、テストベンチで RR アービターに正しい値を出力させようとしていますが、状態が適切に遷移している間、出力は常にデフォルトの16'h0000. この値が変わらない理由はありますか?

これが私のデザインです: