問題タブ [function-coverage]
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.
code-coverage - 受け入れテストとコードカバレッジ
受け入れテストのカバレッジを測定するための最良の方法は何ですか?
受け入れテストがどの程度カバーし、いつ十分になるかをどのように定義しますか?
transition - トランジション カバレッジ固有のエラー
こんにちは、機能カバレッジ、特にトランジション カバレッジのコードをデバッグしているときに、奇妙なエラー メッセージが表示されます。最初のレベル ピン、つまり level1 のカバレッジを実行しているときに、fifo1 と fifo2 の 2 つのレベル ピンがそれぞれありますが、コードは正常に解析されますが、level2 ピンの場合は次のようなエラーがスローされます。
specman - specmanでカバレッジアイテムの範囲を動的に制限する方法は?
信号 x はビット 'n' の 1 つのホットな信号です。信号の 1 つのホットな値だけをカバーし、他の値には関心がありません。
例: 信号 x が 3 ビットの場合、x が以下の値に達しているかどうかを確認します。
目標を達成するために以下を試しました。
しかし、上記のコードは、'n' が環境に応じて変化する可能性のある値を定義するため、エレガントではありません。上記の場合のカバレッジの書き方を教えてください。
ご協力いただきありがとうございます。よろしく、 スリカント
system-verilog - カバーポイントのハンドルを取得するには?
そのハンドルを使用してメソッドを呼び出すことができるように、カバーポイントのハンドルを取得するにはどうすればよいですか? 最初に、ハンドルをインスタンス化できるように、カバーポイントのタイプを知る必要があります。
次に例を示します。
VCS 2013.06 を使用して上記を実行すると、次のようになります。
注: を実行する$display("%s", $typename(inst.my_covergroup.my_coverpoint))
と、<unknown>
functional-testing - SV: クロック サイクルを気にせずにトランジションのファンクショナル カバレッジを作成するにはどうすればよいですか?
通常、特定のトランジションの長い時間のシーケンスに対して繰り返しメソッドを使用するだけです。
すなわち。
複数のトランジションをチェックする別の方法はありますが、繰り返しの制限は設定されていません。明確にするために、特定の遷移が発生したかどうかを確認できるようにしたいのですが、時間 (clk サイクル) は気にしません。
system-verilog - Systemverilog カバレッジ ビン
システム Verilog カバレッジを使用しており、ビンの範囲を確認したい。1000 ~ 2000 の範囲内にしたいのですが、mod 5 の値だけがサンプリングされます。たとえば、1000、1005、1010 などです。
助けてくれてありがとう!
specman - Specman e: インスタンス/ユニットのカバレッジを無効にする方法は?
私の検証環境でsys
は、 のインスタンスがありますtimer_sve
。下timer_sve
には、他に 2 つのインスタンスがあります:timer
とocp_master
:
のみのカバレッジを収集する必要がありtimer
ます。のカバレッジを無効にするために、このコード (およびその他の多くのバリエーション) を試しましたocp_master
。
コードは正常にコンパイルおよび実行されますが、引き続きカバレッジを収集しocp_master
ます... カバレッジの収集を無効にするにはどうすればよいocp_master
ですか? 本当にありがとうございました。
system-verilog - Functional_coverage が適切な結果を表示しない
簡単な加算器を検証するための簡単な uvm テストベンチを開発しました。カバレッジの監視にも機能カバレッジを使用しました。加算器は 8 ビットで、入力はa
およびb
出力はc
で、9 ビットです。
との 8 ビットのトランザクションを開発しましrand logic
た。順番に、それを実行しました。ランダム化され、DUT にドライブされます。このシナリオの機能カバレッジの最良のケースは (100/256)*100% です。つまり、値が繰り返されないと仮定すると、約 40% になります。スコアボードでカバレッジをサンプリングし、env でカバレッジ結果を取得します。a
b
repeat(100)
a
b
ここに私のコードスニペットがあります
コードを実行すると、約 81 のカバレッジが得られます。結果を以下に示します。
私がここでやっている間違いを誰でも説明できますか? カバレッジはすべての実行で累積されますか?
system-verilog - QuestaSIM のカバレッジでサンプリングされたビンのソースを取得する方法
私は QuestaSIM を使用しており、回帰からマージされたカバレッジ レポートを持っています。
マージされたカバレッジ レポートから、サンプリングされたビンをそのシミュレーション (テスト名とシード値) まで追跡するにはどうすればよいですか?