|
Опять вопросы с синтезабельностью |
|
|
|
Aug 31 2010, 16:11
|
Участник

Группа: Участник
Сообщений: 50
Регистрация: 2-05-10
Пользователь №: 57 029

|
Здравствуйте, товарищи! Хочу сделать генератор хелловорлдный. Оказалось, нужно проинициализировать некоторые переменные без сигнала сброса. Делал таким образом: input clc; output reg outclc; reg is_init;
always @(clc) begin if(is_init!=1) begin is_init =1; //разная всякая инициализация end else begin //ну например, outclc<=clc; end end
Синтезатор не кричал, в моделсиме красные полоски (не работает, как нужно) Рассуждаю так: вначале is_init инеет несинтезируемое значение Х, чему в жизни отвечает "не знаю". Нельзя сказать, что (is_init!=1) истина или ложь. Но я переписал так:
input clc; output reg outclc; reg is_init;
always @(clc) begin if(is_init==1) begin //ну например, outclc<=clc; end else begin is_init =1; //разная всякая инициализация end end
и на всех 4-х временных моделированиях моделсим выдавал то, чего мне было надо. Но ведь предидущие рассуждения отрицают возможность того, что можно сказать is_init==1 истина или ложь. Подскажите , пожалуйста, это вообще синтезируемо (2-й вариант)? А если нет, то как можно провести инициализацию без сигнала сброса?
Заранее благодарен за помощь!
|
|
|
|
|
 |
Ответов
|
Sep 1 2010, 16:22
|
Знающий
   
Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905

|
Какая проблема с потерять 1nS на линии данных в относительно большом корпусе? Да хоть две! А если микросхема не пустая и сигнал проходит не по самому оптимальному пути? Чтобы было наглядно, берем входную ножку поближе к буферу глобальной сети клока, в идеале, специально для этого придуманную, а регистр с клоком на входе данных принудительно ставим на максимальном от неё расстоянии. Констрейн maxskew злостно нарушается. Получаем skew 2.7nS в конкретном примере - Virtex6 VLX75 FF784. Это означает, что мегагерцах эдак на двухстах вы поймаете задний фронт этим регистром. В аттаче исходный текст и архив с UCF-файлом - форум не ест расширения vhdl и ucf.
Прикрепленные файлы
skew.vhd ( 536 байт )
Кол-во скачиваний: 27
skew.rar ( 224 байт )
Кол-во скачиваний: 13
|
|
|
|
|
Sep 1 2010, 17:03
|
Профессионал
    
Группа: Свой
Сообщений: 1 088
Регистрация: 20-10-09
Из: Химки
Пользователь №: 53 082

|
Цитата(Shtirlits @ Sep 1 2010, 20:22)  Какая проблема с потерять 1nS на линии данных в относительно большом корпусе? Да хоть две! А если микросхема не пустая и сигнал проходит не по самому оптимальному пути? Чтобы было наглядно, берем входную ножку поближе к буферу глобальной сети клока, в идеале, специально для этого придуманную, а регистр с клоком на входе данных принудительно ставим на максимальном от неё расстоянии. Констрейн maxskew злостно нарушается. Получаем skew 2.7nS в конкретном примере - Virtex6 VLX75 FF784. Это означает, что мегагерцах эдак на двухстах вы поймаете задний фронт этим регистром. В аттаче исходный текст и архив с UCF-файлом - форум не ест расширения vhdl и ucf.  Да-да, нашаманили, верю...даже странно малое значение получили, у меня на стратикс4 по диагонали до 5ns доходит обычная задержка сигнала... Я предвидел такой расклад в предыдущем посте Цитата ну а вообще это практически нереальная ситуация, в данном примере . Ну а серьезно - уберите "если" и САПР всегда найдет хотя бы один свободный триггер рядом с буфером глобальной сети, ну не видел я реально работающих проектов, которые были забиты более чем на 90%, а в Вашем случае получается загрузка на 100% хоть и отдельного куска ПЛИС.
|
|
|
|
Сообщений в этой теме
arcer Опять вопросы с синтезабельностью Aug 31 2010, 16:11 bogaev_roman Цитата(arcer @ Aug 31 2010, 20:11) Хочу с... Aug 31 2010, 16:24 arcer Цитата(bogaev_roman @ Aug 31 2010, 19:24)... Aug 31 2010, 16:31  bogaev_roman Цитата(arcer @ Aug 31 2010, 20:31) Т.е. д... Aug 31 2010, 16:42   arcer Цитата(bogaev_roman @ Aug 31 2010, 19:42)... Aug 31 2010, 16:47    bogaev_roman Цитата(arcer @ Aug 31 2010, 20:44) Платы ... Aug 31 2010, 16:48   Shtirlits QUOTE (bogaev_roman @ Aug 31 2010, 20:42)... Aug 31 2010, 16:53    arcer Цитата(Shtirlits @ Aug 31 2010, 19:53) Ту... Aug 31 2010, 16:56 Shtirlits В общем случае - да.
В некоторых архитектурах нача... Aug 31 2010, 16:34 arcer Цитата(Shtirlits @ Aug 31 2010, 19:34) В ... Aug 31 2010, 16:42 arcer слово "в некоторых" смущает. Значит в не... Aug 31 2010, 16:50 bogaev_roman Цитата(arcer @ Aug 31 2010, 20:50) слово ... Aug 31 2010, 16:56  arcer Цитата(bogaev_roman @ Aug 31 2010, 19:56)... Aug 31 2010, 17:07   bogaev_roman Цитата(arcer @ Aug 31 2010, 21:07) А поче... Aug 31 2010, 17:18    arcer Цитата(bogaev_roman @ Aug 31 2010, 20:18)... Aug 31 2010, 17:20    Shtirlits QUOTE (bogaev_roman @ Aug 31 2010, 21:18)... Aug 31 2010, 17:29     bogaev_roman Цитата(Shtirlits @ Aug 31 2010, 21:29) Не... Aug 31 2010, 17:53 Shtirlits Если короче, то на сколько короче? А что будет, ес... Aug 31 2010, 18:34 bogaev_roman Цитата(Shtirlits @ Aug 31 2010, 22:34) Ес... Sep 1 2010, 09:19 Shtirlits Ну, если принимать во внимание удачу, то её я вам ... Sep 1 2010, 17:40
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|