問題タブ [cadence]
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.
vhdl - ncvhdl で vhdl デザインの内部信号を取得します (modelsim の信号スパイの代替)
ModelSim では、次のようなものを使用できます
modelsim では、init_signal_spy("../.../sig", mysignal); を使用できます。
深い階層シグナルを取得します。Cadence の NCVhdl でそのような信号を取得する方法はありますか?
これは、ツールの名前である「SimVision」にフラグを立てる必要がありますが、そのフラグは存在しないようです。
tcl - SimVision で信号を波形に送信するコマンド
SimVision で信号を波形に送信するために使用できる (Tcl-) コマンドはありますか? もちろん、それらを右クリックして「Send to WaveForm Window」を選択することもできますが、シミュレーションを開始するたびにそれを行うのは面倒です。
Modelsim では、dofile (tcl ファイル) で「add wave」を簡単に使用できますが、ncsim でこれを行う方法がない場合は奇妙です...
tcl - 信号が ncsim で何らかの値を持つとすぐに tcl コマンドを実行します。
modelsim ユーザーとして、私は自分の do ファイルに次の行のようなものを書くことに慣れています。
これにより、modelsim でシミュレーションが実行され、VHDL-Signalsupersignal
の値が「1」になるとすぐに、ブロックstop;
が実行されます。
(ケイデンス) ncsim 用の同様の tcl コマンドはありますか? を呼び出すときに dofile 内で使用できるコマンドを探していますncsim -input dofile.do
。シミュレーションを停止するだけでなく、tcl コマンドも実行したい場合。
verilog - Verilog の CASE ステートメントでの合成エラー
私は Verilog に不慣れで、以下に引用されている私のコードの一部を合成しようとしたときに発生するエラーについて、あなたの意見を知りたいです:
Cadence合成ツールを使用していますが、コードのこの部分に次のようなエラーが表示されます。
インデックス 'X[-1]' は、宣言 [31:0] の有効な範囲内にありません
width=0
for ループを使用してはならない特別なケースがある場合でも、理解できません。また、制限をwidth +2
に増やしてみましたが、同じエラーが発生しました。width +1
shift the quantity X by 2
前もって感謝します!
eclipse - 未使用の変数を見つける
Verilog + system-verilog でのプログラミングに次のツールを使用していますが、どの変数が使用されていないかを検出できるのはどれか疑問に思っています。
- エクリプス
- Eclipse DVT 拡張機能
- ケイデンス ツール
vhdl - VHDL ポートを UVM のシステム Verilog インターフェイス定義に接続する
VHDL の多次元ユーザー定義型を UVM 環境の SystemVerilog に接続しようとすると、Cadence ツール チェーン シミュレーションでこの問題が発生します。これは、VHDL 出力タイプの定義です。
DUT の VHDL 出力ポートの 1 つはタイプloop_array_ty
です。
SystemVerilog に相当するものを次のように定義しようとしています。
を使用するirun
と、次のエラーが表示されます。
VHDL ポート タイプは Verilog と互換性がありません。
可能な回避策を提案してください。
verilog - 定数式のオペランドが不正です
特定のインスタンスの異なるピンを簡潔に比較できる、いくつかの階層を掘り下げる必要があるタスクを構築しようとしています。特に、次のようなことをしたいと思います。
残念ながら、上記を実行しようとすると、エラボレーション中に NOTPAR エラーがスローされ、レジスタを非定数に割り当てることは受け入れられないと主張します ( のような行は好きではありませんcheck[0] = test.inst[i].lane_0.PIN_FIRST;
)。ちなみに、これはテスト用であり、合成可能なものではありません。
誰かがこれが許可されていない理由を説明し、別の解決策を提案できますか? ループの反復ごとにタスクを作成する必要があるように見えますが、それは不必要に肥大化して醜いものになるようです。
ありがとう
verilog - Verilog コードでの SimVision のプローブの設定
Verilog で構築されたデジタル ロジックのシミュレーションに取り組んでおり、変更を確認するためにシミュレーションを頻繁に再起動する必要があります。Cadence SimVision を使用して波形を確認しています。
SimVision 環境でコマンドを Verilog に書き込む方法はありますか? プローブやパラメーターのようなものを意味します。