Синхронизировать с вхождением данных в том же цикле
Я использую Sync следующим образом:
sync true (ports.ocp_cmd$ == 3'b010);
Я хочу, чтобы симулятор переходил к следующей команде в том же цикле, где данные ocp_cmd is 010
, в настоящее время симулятор автоматически переходит 1 цикл и только затем переходит к следующей команде specman.
Как я могу изменить свою командную строку, чтобы не создавалась задержка (чтобы при желании я мог поднять сигнал подтверждения в том же цикле)
2 ответа
Поскольку оператор sync true должен находиться в методе, требующем много времени. Сравните, когда событие выборки - для трудоемкого метода - происходит относительно изменения в ocp_cmd, становящегося 3'b010. Может случиться так, что вы должны изменить событие отбора проб.
Я думаю, что вы имеете в виду, что вы образец ocp_cmd
на переднем крае часов, и это означает, что вы поднимаете ocp_read
начиная с этих часов, что означает, что два сигнала будут иметь задержку в 1 цикл между собой.
Если вы знаете ocp_cmd
не глючит, вы можете изменить синхронизацию на sync true (ports.ocp_cmd$ == 3'b010) @sim
,
Это неправильная практика при работе с синхронными сигналами. Вы бы лучше контролировать причину ocp_cmd
собирается 010
и полагаться на это.