問題タブ [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.
arrays - systemverilog の構造体の配列であるパラメーターのサイズをオーバーライドする
定義済みの構造体の配列であるモジュール パラメーターがあります。この配列のデフォルト サイズを 1 要素に設定しました。アイデアは、インスタンス化時に適切なサイズでオーバーライドすることです。
以下に示す方法は、サイズをオーバーライドしません。最初の値をオーバーライドするだけです。サイズフィールドがパラメーター化されていないため、なぜこれを行うのかがわかります。サイズのパラメーターを渡すよりも良い方法はありますか?
お手伝いありがとう。
verilog - Verilog で 1 つだけを含むベクトルを定義して初期化する方法は?
すべてが 1 の 128 ビット ベクトルを宣言したい場合、これらの方法のどれが常に正しいですか?
vhdl - systemverilog カバー グループを vhdl モジュールにバインドする
VHDL IP の systemverilog カバー グループを作成しています。私の計画は、VHDL IP の内部信号にアクセスできると仮定した別の SV コードを作成することです。その後、コードの SV セグメントがシミュレータによって VHDL で自動的にインスタンス化されるように、バインドを行います。間違っている場合は修正してください。以前はバインディングを使用したことがありませんでした。
始める前に、バインドがどのように機能するかを確認しようとして、それをテストするための小さなプログラムを作成しました。ここにあります...
test_bind.sv
今、コンパイルしようとすると、次のエラーが発生します。
my_vhdl_module は単純な vhdl src コードです。my_vhdl_module の非常に単純な verilg 版でも同じことを試みましたが、同じエラーが発生しました。単純なバグのように見えるので、ばかげているように感じますが、まだ理解できませんでした。これに関するコメントは本当に役に立ちます。
verilog - スコアボードとチェッカーの違い
RTL DUT 用のテストベンチの開発を開始しました。テストベンチのすべてのコンポーネントを使用して、DUT の機能を検証するためのセルフチェック メカニズムを実装したいと考えています。
したがって、スコアボード コンポーネントを開発する必要があります。しかし、ここでは、チェッカーコンポーネントの概念さえ理解しています。
スコアボードコンポーネントとチェッカーコンポーネントの違いは何ですか?
また、そのアプリケーションは?
スコアボード、チェッカー、またはその両方を使用する必要があるのはいつですか?
ありがとう。
verilog - Verilog を使用した Quartus RTL ビューアの奇妙なコンポーネント
私は Verilog を学んでいますが、Verilog コードを見ただけでは回路がどのように機能するかがわからない場合は、RTL ビューアーにアクセスしてデジタル ロジックを確認します。しかし、このコードには奇妙なコンポーネントが表示され、このコンポーネントが何なのかわかりません。フリップフロップ、マルチプレクサ、またはロジック ポートですか? 以下はコードと画像です。画像では、コンポーネントは赤い三角形です。
コード :

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 でサポートされていない場合、定数をインスタンス ピンに接続する正しい方法は何でしょうか。
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」出力ピンは、加算器、減算器、レジスタ、マルチプレクサなどのコンポーネントを使用して記述されるデータパス コンポーネントから取得されます。データパスのみをコンパイル (分析と合成) すると、同じ出力に対して警告が再度表示されます。
私のコードの何が問題なのか本当にわかりません。皆さんが私を助けてくれることを願っています。コードを以下に示します。
そして警告:
verilog - Verilog でラウンド ロビン アービターを作成しようとしています。
そのため、テストベンチで RR アービターに正しい値を出力させようとしていますが、状態が適切に遷移している間、出力は常にデフォルトの16'h0000. この値が変わらない理由はありますか?
これが私のデザインです: