Утверждение не выполняется с , имя экземпляра не является допустимым значением rvalue [7.1 (IEEE)]

Мой код утверждения выглядит следующим образом:

property p_crossbar_halted_chk12;
      @(posedge `SOG_REST_SCOPE.clk)
      $rose(`SOG_REST_SCOPE.crossbar_halted) 
          |-> ##[0:1] $rose(`SOG_REST_SCOPE.last_cycle) 
          |-> ##[0:1] $fell(`SOG_REST_SCOPE.last_cycle);
endproperty

ASSERT_P_CROSSBAR_HALTED_CHK12: assert property(p_crossbar_halted_chk12);

И он продолжает выдавать ошибку компиляции, говоря

ASSERT_P_CROSSBAR_HALTED_CHK12 свойство утверждения (p_crossbar_halted_chk12) Имя экземпляра не является допустимым значением r [7.1 (IEEE)]


person Pooja shah    schedule 22.06.2018    source источник
comment
Этот код компилируется. Ошибка должна быть в другом месте. Я предполагаю, что в той же области есть экземпляр с именем экземпляра p_crossbar_halted_chk12.   -  person Matthew Taylor    schedule 22.06.2018


Ответы (1)


Это происходит со мной, когда я пытаюсь заменить %s в вызове $sformatf макросом, подобным вашему. Попробуйте указать абсолютный путь вместо вашего макроса «SOG_REST_SCOPE», и я думаю, что проблема будет решена.

person camillo_benso    schedule 16.07.2018