1

信号 x はビット 'n' の 1 つのホットな信号です。信号の 1 つのホットな値だけをカバーし、他の値には関心がありません。

例: 信号 x が 3 ビットの場合、x が以下の値に達しているかどうかを確認します。

x == 3'b001
x == 3'b010
x == 3'b100

目標を達成するために以下を試しました。

struct ABC {
 x :uint(bits:n);
 event pqrs;
 cover pqrs is {
   item x using ranges={
                         range([1]);
                         range([2]);
                         range([4]);
                       };
 };

しかし、上記のコードは、'n' が環境に応じて変化する可能性のある値を定義するため、エレガントではありません。上記の場合のカバレッジの書き方を教えてください。

ご協力いただきありがとうございます。よろしく、 スリカント

4

2 に答える 2