私が言いたいのは、「シーケンスA
が発生する場合、シーケンスはB
そのシーケンス内で発生する」ということです。これどうやってするの?
私はアサーションを使用できると思っていたでしょう:
assert property (@(posedge clk) (A |-> (B within A));
しかし、これは私の例ではうまくいかないようです。
私はそれを読んだ:
線形シーケンスは、最初のブール式が最初のクロック ティックで true と評価され、2 番目のブール式が 2 番目のクロック ティックで true と評価されるという条件で、連続するクロック ティックの有限間隔に沿って一致すると言われます。最後のクロック ティックで true と評価される最後のブール式。
|->
しかし、最初にしたいときに、クロックティックが最後のクロックティックの反対側に渡されたと思われます。
私の特定の例は、十分な数の正の数を追加するとオーバーフローすることが予想されるアキュムレータA = (input == 1)[*MAX_SIZE]
です。B = (output == 0)
B
私はsystem-verilogに非常に慣れていないので、コードの他の部分が間違っている可能性がありますが、この例がどこでも行われたことはありません。