Не уверен, почему это свойство systemverilog не работает - PullRequest
0 голосов
/ 05 июня 2019

У меня есть следующее свойство в systemverilog:

 property rule_1(trig, prop, clk, rst=1'b0);
    @(clk) disable iff(rst) trig |-> prop;
  endproperty 

hello:  assert property (rule_1($rose(clk_in),s_eventually(always(clk_in == clk_in1)),fast_clk));

Я получил следующую ошибку:

KERNEL: Ошибка: Утверждение «hello» не выполнено во время: 45 нс (45 clk),testbench.sv (64), область действия: тест, время запуска: 36 нс (37 клк)

KERNEL: ошибка: сбой при подтверждении «hello»: 45 нс (45 клк), testbench.sv (64), область действия: тест, время запуска: 26 нс (27 clk)

ЯДЕР: Ошибка: сбой подтверждения «hello» за раз: 45 нс (45 clk), testbench.sv (64), область действия: тест, запуск-time: 16ns (17 clk)

KERNEL: Ошибка: Утверждение 'hello' не выполнено во время: 45ns (45 clk), testbench.sv (64), область действия: test, время запуска: 6ns (7)clk)

Что я хочу проверить, так это то, что пока clk_in и clk_in1 в конечном итоге выровнены друг с другом, тест должен пройти. Я не совсем уверен, почему мое свойство не выполняется.Может кто-нибудь исправить мою собственность?

Ссылка на EDAPlayground: https://www.edaplayground.com/x/3tb7

Форма волны следующая:

Waveform:

...