Tenho uma situação em que um sinal em um projeto deve ser ativado por pelo menos um ciclo, enquanto outro sinal é ativado por pelo menos X ciclos.
Resultados desejados:
Aprovado: passe o exemplo 1
Aprovado: passe o exemplo 2
Aprovado: passe o exemplo 3
Falha: falha exemplo 1
Eu gostaria de escrever uma propriedade para verificar isso usando SVA, essencialmente capturando isso entre o posedge
e negedge
de sig_1
, sig_2
deve ter ambos $rose()
e $fell()
.
Eu tentei algo como ...
property prop_sig_2_while_sig_1;
@(posedge clk)
$rose(sig_1) ##[0:$] $rose(sig_2) ##[0:$] $fell(sig_2) ##[0:$] $fell(sig_1);
endproperty : prop_sig_2_while_sig_1
mas, infelizmente, isso não funcionou como desejado.
Existe uma maneira simples e eficaz de conseguir isso?