Я пытаюсь написать утверждение SVA для процедуры рукопожатия.
В своих поисках я обнаружил следующее:
property p_handshake(clk,req,ack);
@(posedge clk)
req |=> !req [*1:max] ##0 ack;
endproperty
assert property(p_handshake(clock,valid,done));
Однако моему сигналу «готово» разрешено приходить много циклов после того, как допустимый цикл переходит в высокий уровень. Как сделать так, чтобы этот оператор гарантировал, что "готово" будет подтверждено в любой точке после подтверждения достоверности, без отмены подтверждения достоверности?