реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Как объяснить ModelSim, что clock глобальный?, Не могу объяснить ModelSim, что clock глобальный.
andrew_b
сообщение Sep 25 2017, 06:23
Сообщение #16


Профессионал
*****

Группа: Свой
Сообщений: 1 822
Регистрация: 30-12-04
Из: Воронеж
Пользователь №: 1 757



Цитата(warrior-2001 @ Sep 25 2017, 09:11) *
Именно дельта задержку! На картинке с моделсимом не указан масштаб. А там вероятно 1 пс.
Дельта-задержка -- это не задержка в привычном понимании, она не измеряется ни петасекундах, ни в чём. Дельта-задержка -- это гругря отражение причинно-следственной связи: сначала происходит что-то, после чего происходит ещё что-то, и т. д.
Например, сначала приходит фронт клока. Только после фронта -- после, а не в тот же момент -- происходит инкремент счётчика. После инкремента счётчика происходит срабатывание компаратора. Поскольку значения всех этих "после" на этапе RTL-симуляции принципиально неизвестны (так как до P'n'R ещё далеко), а учитывать их как-то надо, то и используется механизм дельта-задержки.

Ваша ситуация с клоком
Код
clk2 <= clk;

с точки зрения языка принципиально ничем не отличается от ситуациии с компаратором после счётчика
Код
Cnt5 <= '1' when (Counter = 5) else '0';


Драйвер есть? Есть. Получите дельта-задержку.
Go to the top of the page
 
+Quote Post
Nick Potapov
сообщение Sep 25 2017, 06:51
Сообщение #17


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 19-05-06
Из: Нижний Новгород
Пользователь №: 17 250



Может быть поможет использование псевдонимов?

alias clk_copy : std_logic is clk_original;
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Sep 25 2017, 07:07
Сообщение #18


Местный
***

Группа: Участник
Сообщений: 409
Регистрация: 11-06-13
Пользователь №: 77 140



А зачем вообще применять конструкцию типа:
Код
clk1 <= clk2

Какой в этом практический смысл ?

Сообщение отредактировал Flip-fl0p - Sep 25 2017, 07:07
Go to the top of the page
 
+Quote Post
andrew_b
сообщение Sep 25 2017, 07:27
Сообщение #19


Профессионал
*****

Группа: Свой
Сообщений: 1 822
Регистрация: 30-12-04
Из: Воронеж
Пользователь №: 1 757



Цитата(Flip-fl0p @ Sep 25 2017, 10:07) *
А зачем вообще применять конструкцию типа:
Код
clk1 <= clk2

Какой в этом практический смысл ?

Ну я, например, так иногда делаю в тестбенчах, если мне нужны два разных клока одинаковой частоты.
Go to the top of the page
 
+Quote Post
warrior-2001
сообщение Sep 25 2017, 09:43
Сообщение #20


Местный
***

Группа: Свой
Сообщений: 324
Регистрация: 9-10-08
Из: Таганрог, Ростовская обл.
Пользователь №: 40 792



Цитата(Flip-fl0p @ Sep 25 2017, 09:13) *
Так а разве дельта задержку можно увидеть при увеличении масштаба ?

В QuestaSim отображается. Думаю, так же и в ModelSim.

А измеряется дельта задержка в переменной (TimeScale -t 1ps для сткрипта). Для корректной симуляции IP фирмы Intel(Altera) необходимо указывать 1 пс.


--------------------
Глупцы игнорируют сложность. Прагматики терпят ее. Некоторые могут избегать ее. Гении ее устраняют.
Go to the top of the page
 
+Quote Post
andrew_b
сообщение Sep 25 2017, 10:20
Сообщение #21


Профессионал
*****

Группа: Свой
Сообщений: 1 822
Регистрация: 30-12-04
Из: Воронеж
Пользователь №: 1 757



Цитата(warrior-2001 @ Sep 25 2017, 12:43) *
А измеряется дельта задержка в переменной (TimeScale -t 1ps для сткрипта).
Это не дельта-задержка.
Go to the top of the page
 
+Quote Post
videoscan
сообщение Sep 25 2017, 11:31
Сообщение #22


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 16-09-14
Из: Москва
Пользователь №: 82 826



Цитата(iosifk @ Sep 24 2017, 21:12) *
Завтра после 11 я буду на связи. Можем поговорить о Ваших проблемах.


Сегодня до вечера занят. Только после 20 или завтра с утра.

Цитата(Flip-fl0p @ Sep 25 2017, 06:13) *
Так а разве дельта задержку можно увидеть при увеличении масштаба ?

Можно, нужно только перейти в режим отображения, который называется Expended time deltas mode.

Go to the top of the page
 
+Quote Post
yes
сообщение Sep 25 2017, 14:12
Сообщение #23


Профессионал
*****

Группа: Свой
Сообщений: 1 979
Регистрация: 23-12-04
Пользователь №: 1 640



Цитата(Flip-fl0p @ Sep 25 2017, 09:13) *
Так а разве дельта задержку можно увидеть при увеличении масштаба ?

нужно перейти в режим просмотра дельтазадержек (что-то типа expanded time и т.п.)
upd: долго тормозил с ответом sm.gif

вот в моделсиме не сталкивался с тем, чтобы дельтазадержки тактового сигнала нарушали синхронность дизайна (нк то есть когда на данных проскакивает цикл), может проекты маленькие.. а вот в ncsim-e такое видел часто, особенно при миксед vhdl-verilog дизайне. насколько я понимаю, в sv приложили дополнительные усилия для того, чтобы тактовые сигналы гарантировано "щелкали" раньше
ну типа initial forever clk=~clk и т.п.
Go to the top of the page
 
+Quote Post
videoscan
сообщение Sep 26 2017, 06:21
Сообщение #24


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 16-09-14
Из: Москва
Пользователь №: 82 826



Цитата(andrew_b @ Sep 25 2017, 05:28) *
"Просит" его об этом стандарт языка VHDL. Каждый драйвер порождает дельта-задержку со всеми вытекающими из этого нюансами.

Скажите, а у Verylog HDL по этой части по другому?
Go to the top of the page
 
+Quote Post
andrew_b
сообщение Sep 26 2017, 07:07
Сообщение #25


Профессионал
*****

Группа: Свой
Сообщений: 1 822
Регистрация: 30-12-04
Из: Воронеж
Пользователь №: 1 757



Не знаю. Я верилог "читаю со словарём", утирая слезящиеся глаза.
Go to the top of the page
 
+Quote Post
EugeneS
сообщение Sep 26 2017, 07:09
Сообщение #26


Частый гость
**

Группа: Свой
Сообщений: 173
Регистрация: 28-08-04
Пользователь №: 557



QUOTE (Nick Potapov @ Sep 25 2017, 09:51) *
Может быть поможет использование псевдонимов?

alias clk_copy : std_logic is clk_original;


применял, работает
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th October 2017 - 17:41
Рейтинг@Mail.ru


Страница сгенерированна за 0.01297 секунд с 7
ELECTRONIX ©2004-2016