|
Altera - начальное состояние, Все ли триггеры инициализируются прошивкой? |
|
|
|
Mar 6 2014, 10:58
|
Профессионал
    
Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770

|
Я привык считать, что вне зависимости от настроек компилятора (то есть даже в случае, когда установлена опция "PowerUp do not care") все триггеры ПЛИС после инициализации всегда находятся в детерминированном состоянии. То есть эта опция даёт свободу компилятору присваивать триггерам начальное значение 0 или 1 для оптимизации, однако триггер будет в любом случае инициализирован. Однако сейчас я в проекте наблюдаю следующее.
У меня есть FIFO, сгенерированное визардом. Сигнал SCLR не сгенерирован, "PowerUp do not care" включено. Ставлю SignalTap на внутренние счётчики FIFO, включаю power-up trigger в SignalTap. Нормально эти счётчики на момент инициализации имеют нулевое значение, но один раз на несколько сотен загрузок счётчик чтения инициализируется единицей. Соответственно счётчик чтения обгоняет счётчик записи, и FIFO становится неработоспособным.
Я конечно напишу об этом в Спортлото (то есть Альтере), но думаю, что они мне скажут генерировать sclr, и на этом вопрос закроется. Мне же интересно: получается что в принципе ПЛИС стартует в недетерминированном состоянии, вопреки документации. И у меня пол-года назад был похожий случай в другом проекте, когда я не инициализировал триггер явно, но заложился на его нулевое значение при инициализации, и в результате проект один раз из ста не работал. Кто что скажет?
|
|
|
|
|
 |
Ответов
|
Mar 21 2014, 08:56
|
Участник

Группа: Участник
Сообщений: 45
Регистрация: 18-03-14
Пользователь №: 80 976

|
Цитата(ilkz @ Mar 17 2014, 10:46)  На временном пост-фиттерном моделировании (встренным моделятором) в квартусе 9.2SP2 и ниже видел такое странное дело, когда при вставшем в единицу LOCKED частота у PLL еще тактов 10-15 могла немного, совсем чуть-чуть, гулять. Может это были глюки симулятора или отображения сигналов, но глазом при различных масштабах зума времянки это было заметно. Поэтому при сбросе от LOCKED лучше делать небольшой счетчик, который либо отложит сброс схемы ненадолго, либо подольше подержит схему в сбросе. Так у PLL(Altera) есть "Gated Lock", как раз тот самый счетчик. В MagaWizard - это пункт Inputs/Lock -> Lock Output -> Hold 'locked' output low for * cycles after the PLL initializes. Что касается встроенного симулятора в Quartus 13.0 он присутствует.
|
|
|
|
Сообщений в этой теме
DmitryR Altera - начальное состояние Mar 6 2014, 10:58 o_khavin Цитата(DmitryR @ Mar 6 2014, 14:58) Кто ч... Mar 6 2014, 11:23 DmitryR Цитата(o_khavin @ Mar 6 2014, 15:23) Я ск... Mar 6 2014, 11:37  o_khavin Цитата(DmitryR @ Mar 6 2014, 15:37) Время... Mar 6 2014, 11:56   DmitryR Цитата(o_khavin @ Mar 6 2014, 15:56) На н... Mar 6 2014, 12:14    SM Цитата(DmitryR @ Mar 6 2014, 16:14) если ... Mar 6 2014, 12:47 DmitryR Мне тогда не очень понятно, почему Альтера разреша... Mar 6 2014, 12:53 o_khavin Цитата(DmitryR @ Mar 6 2014, 16:53) Мне т... Mar 6 2014, 13:13 sazh Цитата(DmitryR @ Mar 6 2014, 15:53) Мне т... Mar 6 2014, 13:14  DmitryR Цитата(sazh @ Mar 6 2014, 16:14) А глюкав... Mar 6 2014, 15:18   SM Цитата(DmitryR @ Mar 6 2014, 19:18) Однак... Mar 6 2014, 15:32 SM Цитата(DmitryR @ Mar 6 2014, 16:53) Мне т... Mar 6 2014, 13:20 alevnew Цитата(DmitryR @ Mar 6 2014, 18:14) А это... Mar 13 2014, 00:48 warrior-2001 Цитата(alevnew @ Mar 13 2014, 04:48) Как ... Mar 13 2014, 03:33 dm.pogrebnoy Я тут тоже недавно такт и LOCKED вывел от PLL нару... Mar 13 2014, 04:19 ViKo У меня сделано так.
Кодmodule Reset_m (
inpu... Mar 13 2014, 04:20 dima32rus А почему бы сигнал locked с PLL не использовать дл... Mar 17 2014, 06:41 o_khavin Цитата(dima32rus @ Mar 17 2014, 10:41) Вс... Mar 17 2014, 06:46 dima32rus Цитата(ilkz @ Mar 17 2014, 10:46) На врем... Mar 17 2014, 06:57 SM Цитата(ilkz @ Mar 17 2014, 10:46) когда п... Mar 17 2014, 08:53 Torpeda Цитата(DmitryR @ Mar 6 2014, 14:58) Я при... Mar 17 2014, 08:08 ilkz Понятно, значит дело в полосе захвата клока pll-ко... Mar 17 2014, 09:37 SM Встроенный моделятор квартуса это совсем другое де... Mar 17 2014, 09:46 o_khavin Цитата(SM @ Mar 17 2014, 13:46) Встроенны... Mar 17 2014, 10:46  alexadmin Цитата(o_khavin @ Mar 17 2014, 14:46) Ско... Mar 17 2014, 10:56  SM Цитата(o_khavin @ Mar 17 2014, 14:46) Там... Mar 17 2014, 12:28   o_khavin Цитата(SM @ Mar 17 2014, 16:28) Там вообщ... Mar 17 2014, 12:38    SM Цитата(o_khavin @ Mar 17 2014, 16:38) Пру... Mar 17 2014, 12:44     o_khavin Цитата(SM @ Mar 17 2014, 16:44) Вам надо,... Mar 17 2014, 12:50      SM Цитата(o_khavin @ Mar 17 2014, 16:50) Да ... Mar 17 2014, 12:52       o_khavin Цитата(SM @ Mar 17 2014, 16:52) Как и аде... Mar 17 2014, 12:54 dima32rus Цитата(SM @ Mar 17 2014, 13:46) Встроенны... Mar 18 2014, 00:51  SM Цитата(dima32rus @ Mar 18 2014, 04:51) А ... Mar 18 2014, 02:51 dima32rus Прикладываю скриншот из моделсима для Gate Level S... Mar 17 2014, 09:58 SM А я и не собирался особо утруждаться в ответ на та... Mar 17 2014, 13:04 ilkz Так вроде его вернули в последних версиях, не? Где... Mar 18 2014, 02:45
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|