Hay un problema al que me enfrento al utilizar un operador de implicación en uno de mis ejemplos de código. Este código se puede encontrar en enlace
Resumen de código
- En mi código, he definido estados correspondientes a cada cuenta de un contador.
- He definido una secuencia s2_7 que es una secuencia que comienza en (cuenta == 2) y termina en (cuenta == 7).
sequence s2_7;
(state == 2) ##1 (state == 3) ##1 (state == 4) ##1 (state == 5) ##1 (state == 6) ##1 ((state == 7));
endsequence
- He definido una directiva de propiedad con la etiqueta 'test_3:' que afirma la secuencia s2_7.
test_3: assert property ( @(posedge clk) (state==STATE2) |=>s2_7)
$display("%0.0t, Property s2_7 is asserted.",$time());
- Mi código se imprime debajo de la línea cuando el antecedente de la propiedad es verdadero.
35, Iniciar secuencia de propiedades s2_7, estado = ESTADO3
- Mi código se imprime debajo de la línea cuando la secuencia s2_7 ha comenzado.
45, secuencia de inicio s2_7, estado = ESTADO4
A continuación se muestra el resultado de mi código.
0, state = STATE1 25, state = STATE2 35, Start property sequence s2_7 , state = STATE3 35, state = STATE3 45, Starting sequence s2_7 , state = STATE4 45, state = STATE4 55, state = STATE5 65, state = STATE6
Issue
Tengo problemas para entender debajo de la línea de la salida.
45, secuencia de inicio s2_7, estado = ESTADO4
Alguien puede explicar esto.