Перейти к содержанию
    

ModelSim - как смоделировать такты, сдвинутые по фазе?

Всем привет!

 

Может вопрос детский, но что-то внезапно заступорил меня.

Тема такая: нужно проверить работу синхронизатора между двумя модулями. Для этого нужно поподавать на один модуль такты, сдвинутые на разную величину времени относительно тактов другого модуля.

 

Вот, например, пытаюсь сдвинуть такты 2 относительно тактов 1 на 6 наносекунд:

 

reg clk1;
reg clk2;

always
  #10 clk1 = ~clk1;

always
  #10 clk2 = ~clk2;

initial
begin
  #0 clk1 = 0;
  #0 clk2 = 0;
  #6 clk2 = 1;
end

 

Получается неправильно - результат на картинке. Как надо написать, чтобы было правильно?

post-55950-1405496367_thumb.png

Изменено пользователем jokolemene

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10.3.3 Continuous assignment delays 
.....
Specifying the delay in a continuous assignment that is part of the net declaration shall be treated differently
from specifying a net delay and then making a continuous assignment to the net. A delay value can be
applied to a net in a net declaration, as in the following example:
wire #10 wireA;
This syntax, called a  net delay , means that any value change  that is to be applied to  wireA  by some other
statement shall be delayed for ten time units before it  takes effect. When there is a continuous assignment in
a declaration, the delay is part of the continuous assignment and is not a net delay. Thus, it shall not be added
to the delay of other drivers on the net. Furthermore, if the assignment is to a vect or net, then the rising and
falling delays shall not be applied to the individual bits if the assignment is included in the declaration.

 

Но вам это не поможет, потому что на функциональном уровне метастабильность моделируется другими средствами :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...