問題タブ [system-verilog]
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.
system-verilog - 大きな SystemVerilog 制約の例
大規模で複雑な SystemVerilog 制約の例を教えてください。大きいほど良く、できれば現実的です。おそらく、他のいくつかの変数にも依存するアドレス計算です。
SystemVerilog 制約を使用するように IP を切り替えることを検討しています。経営陣は、SystemVerilog 制約を作成/理解することがいかに簡単/難しいかを知りたがっています。
c++ - C ++でSystemVerilogスタイルのビットベクトルスライス割り当てを行う方法は?
SystemVerilogコードをSystemC/C++に移植しています。std :: bitsetを使用してビットベクトルを表現していますが、スライスにアクセスするためのメソッドを提供するには不十分であることがすでにわかります。
たとえば、SystemVerilogコードを使用してreg1をreg2のビット4〜8に設定する場合:
std :: bitsetでこれを行うにはどうすればよいですか?
もっと良い方法はありますか?
verilog - システムの verilog コンストラクトは do-while 合成可能ですか?
コンストラクトdo <blah> while (0)
はシステム Verilog で合成可能ですか?
この構文を使用して保護したい複雑なマクロがいくつかあるため、質問します。
例えば
または、私が使用できる同様の Verilog コンストラクトがあります。Verilog は、より多くのツールで使用されるため、優先されます。
system-verilog - SystemVerilog でバイトを文字列と連結する方法
ModelSim では、次のコードは正常に機能します。
Aldec Riviera では、これによりコンパイル エラーが発生しますIncompatible types at assignment: .r<string> <- s[i]<byte>
。
SystemVerilog LRM を読むと、中かっこはバイトではなく文字列を連結するためにのみサポートされているように見えます。そのため、ModelSim は LRM にそれほど厳密ではないか、暗黙的にs[i]
バイトを 1 文字の文字列に変換します (このコンテキストでは理にかなっているようです)。Riviera では、s[i]
手動でバイトを 1 文字の文字列に変換する必要があるようです。最も効率的で簡潔な解決策は何ですか (可能な場合、一時変数を導入する必要はありません)?
verilog - Verilog で m*n 出力を定義する方法
サブレジスタの各シフト後に値を格納するシフトレフトレジスタの Verilog コードを書いています。出力レジスタをこのような配列として定義できますか?提供されているコードは、私のコードではなく概念を示すための単純な例です。
それ以外の
そして、最初の方法で c[i] を呼び出す方法
verilog - このVerilog初期化構文の重要な順序は何ですか?
これは単純なSystemVerilogの質問であり、答えを見つけるのに驚くほど困難な時間を過ごしています。
この種のビット配列初期化構文では、b [0]部分はaの最上位ビットに割り当てられていますか、それとも最下位ビットに割り当てられていますか?
では、a [0]==1またはa[7]== 1ですか?
verilog - SystemVerilog の構造体内の共用体に代入パターンを使用する
これは説明用の例です。SystemVerilog では、配列割り当てパターンと構造体割り当てパターンの構文があります。ここでのユニオン構造がパックされているかアンパックされているかに関係なく、合成可能かどうかに関係なく、割り当てパターンの有効な使用法ですか? はいの場合、 union にはどのような値を指定する必要がありますx
か?
いいえの場合、アンパックされた構造のフィールドごとに初期値を指定する必要があるということですか?
system-verilog - SystemVerilog のデータ型の違い (reg、logic、bit)
systemverilog には、次のように使用できるさまざまなデータ型があります。
それらの3つはどのように異なりますか?
system-verilog - What is the minimum length of time/cycles a System Verilog wait() statement will wait?
I have a SystemVerilog task I am trying to port to SystemC. The body of the task simply waits on a boolean expression and then pushes onto a queue. The SystemC wait mechanism doesn't work quite the same way though, it will only wait on time or events.
So I'm wondering what is the minimum length of cycles/time that SystemVerilog wait() will wait before re-testing the boolean expression. In other words, how often or what drives re-testing of boolean expressions in SV wait()?
If the answer is simply once every cycle, which I hope and expect but can not confirm, then the solution is easy.
Here is the code, with some things renamed and simplified to make more sense out of context:
arrays - $ size、$ bits、verilog
$size
verilogのと演算子の違いは何$bits
ですか?変数が[9:0]a
ある場合、、、。[6:0]b
[31:0]c
上記の式からの「c」での出力はどうなりますか?