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

 
 
> Странный сбой Cyclone3 в таблице переходов
Aal6
сообщение Sep 13 2009, 13:35
Сообщение #1


Участник
*

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



Подскажите пожалуйста, может быть кто-то сталкивался. 1111493779.gif

В проекте на AHDL происходит сбой в state table. При чтении состояний на AVR читается, что таблица не находится ни в одном из штатных состояний.
Reset таблицы приводит ее в чувство.. до следующего сбоя, причем некоторое время таблица работает нормально.

Все входы на таблицу синхронные, если приходят с другого клокового региона развязаны двумя тригерами, тактируемыми частотой таблицы, как положено..
Сlock 7.37Mhz->PLLх8-> 59MHz.

Камень EP3c5.

Проблемы начались при загрузке кристала выше 70%. laughing.gif

Цитата(Artem_Petrik @ Sep 13 2009, 17:29) *
Чаще всего причиной таких глюков бывает метастабильность. Возможно у Вас состояние автомата зависит от внешних несинхронизированных сигналов, или сигналов, приходящих из другого клокового домена.


__Все сигналы синхронизируются на входе клоком таблицы, там где идет запрос- ответ в два уровня тригеров__. Сам сперва думал что проблема в синхронизации, но обвешал всю таблицу тригерами по входу - не помогло.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
EvgenyNik
сообщение Sep 14 2009, 17:47
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 597
Регистрация: 24-05-06
Из: г. Чебоксары
Пользователь №: 17 402



Посмотрите ваш проект на наличие таких вот состояний:
Например, Вы предполагаете, что некие сигналы, порождаемые другой внутренней логикой (пусть это будут А и Б могут появляться в следующих комбинациях - А, АБ, --, но никак не отдельно Б). Из-за высокой частоты и запутанного внутреннего роутинга, тем не менее, получается, что в ряде случаев сигнал А не успевает "долететь" до входного регистра автомата и он защёлкивает только Б, который отдельно не предусмотрен. Начиная с этого момента автомат попадает на неописанные, но ссинтезированные петли. Такое часто бывает, если сигналы А и Б являются порождением комбинаторной логики.
Способы решения - 1. проанализировать наличие подобных ситуаций и завести такие сигналы иначе. 2. задать состояния по default'у или дополнить автомат петлями выхода из нештатных ситуаций в ближайшее штатное положение (обычно это цикл ожидания нехватающего сигнала).


--------------------
Почему разработчики систем повышенной надёжности плохо справляются с простыми проектами? :)
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 31st July 2025 - 17:28
Рейтинг@Mail.ru


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