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

 
 
 
Reply to this topicStart new topic
> Нечеткость работы прошивки на Cyclone
Peter Pavlov
сообщение Apr 28 2009, 08:38
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 22-09-07
Пользователь №: 30 755



Делая QPSK модулятор и FEC для DVBT много раз сталкивался с тем что одна и таже прошивка переодически сбоит и спасает перекомпиляция с несущественными изменениями логики. Може ли быть здесь моменты не связанные с гонкой и помехами по питанию? Пытался фиксировать разведенные блоки в которых я был уверен из рабочей прошивки к месту кристалла, но элемент шаманства как был так и оставался. Товарищ недавно тоже жаловался на подобное. Поделитесь мнениями плиз.
Go to the top of the page
 
+Quote Post
alexadmin
сообщение Apr 28 2009, 12:39
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 572
Регистрация: 17-11-05
Из: СПб, Россия
Пользователь №: 10 965



Если откинуть проблемы с дизайном, то можно попробовать поменять САПР на более свежий.
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 28 2009, 13:06
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Peter Pavlov @ Apr 28 2009, 12:38) *
Може ли быть здесь моменты не связанные с гонкой и помехами по питанию?


Еще тайминг может быть задан по периоду клока без запаса на джиттер.
Еще бывает асинхронщина. В полностью синхронной схеме вопрос гонок не возникает...


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
wolfman
сообщение Apr 28 2009, 17:53
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 529
Регистрация: 15-06-05
Из: Питер
Пользователь №: 6 032



У меня такая бывает ситуация, когда микросхемы шьются отдельным программатором, который по версии младше квартуса, где происходила компиляция.

Так же было с шестым квартусом, проект мог лечь как угодно, но замена квартуса на 7,2 решила проблему.

Да еще такой момент:
Откомпилите проект, посмотрите нормально ли все работает, запомните кол-во использованных ресурсов плис, затем поредактируйте, но не сильно и снова откомпилите, и снова проверьте работоспособность, если не работает проверьте кол-во ресурсов в рабочем проекте и в не рабочем, квартус в полне может часть схемы проигнорировать.

Такое случалось у меня и некоторых моих коллег.


--------------------
Россия это даже не страна.
Россия это секрет, завернутый в загадку и укрытый не проницаемой тайной...
Go to the top of the page
 
+Quote Post
Peter Pavlov
сообщение Apr 28 2009, 19:14
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 22-09-07
Пользователь №: 30 755



Цитата(wolfman @ Apr 28 2009, 20:53) *
У меня такая бывает ситуация, когда микросхемы шьются отдельным программатором, который по версии младше квартуса, где происходила компиляция.

Так же было с шестым квартусом, проект мог лечь как угодно, но замена квартуса на 7,2 решила проблему.

Да еще такой момент:
Откомпилите проект, посмотрите нормально ли все работает, запомните кол-во использованных ресурсов плис, затем поредактируйте, но не сильно и снова откомпилите, и снова проверьте работоспособность, если не работает проверьте кол-во ресурсов в рабочем проекте и в не рабочем, квартус в полне может часть схемы проигнорировать.

Такое случалось у меня и некоторых моих коллег.

По поводу программатора я не совсем согласен - если залилась прошивка, значит и структура и чексуммы (или что у них там) совпадают. У меня всегда микроконтроллер заливал. Возможно квартус виноват. DVBT FEC содержит скремблер, витерби, ридсоломон и интерливер. Если что то одно не работает то не работает вся прошивка (приемник не видит несущей). Мегафункции интерливера и ридсоломона были взяты с сайта альтеры если память не изменяет, разобраться в них до тонкостей сложно для меня. Возможно проблема в этих функциях. Кстати я переписывал стандартную мегафункцию умножителя на свою, на высокой частоте моя работала намного лучше чем стандартная, так что вполне возможно что альтеровские мегафункции могут быть кривоваты. Но все равно странновато - добавишь чтонить несущесвенное на несущественный сигнал для того что бы квартус перекомпилил проект и все завелось. Ощущение осталось что многое зависит как проект будет раскидан по кристаллу.
Go to the top of the page
 
+Quote Post
wolfman
сообщение Apr 28 2009, 20:33
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 529
Регистрация: 15-06-05
Из: Питер
Пользователь №: 6 032



в том то и дело разные версии программатора и квартуса и что-то фигово заливается.

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

Мне всегда казалось что возникающие проблему у меня, в основном, от того что квартус леченный.
Ибо елси некоторое время теребить проект, то квартус пишет ошибка в текущем модуле и благополучно вылетает.


--------------------
Россия это даже не страна.
Россия это секрет, завернутый в загадку и укрытый не проницаемой тайной...
Go to the top of the page
 
+Quote Post
SM
сообщение Apr 28 2009, 20:37
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Сомневаюсь, что что-то подобное может быть, если нет той самой асинхронщины, упомянутой Oldring, которая как правило первопричина всех бед, если все пути обконстрейнены и если, в случае, если имеются более чем один клок-домен, переходы меж доменами сделаны корректно (их обконстрейнить невозможно, если клоки асинхронны, либо так синхронны, что физически невозможно выполнить ограничения Tsu/Th в какие-то моменты времени, которые нельзя предсказать). Так что проверьте эти вещи.

ЗЫ. Леченность квартуса априори не причем. Забудьте.
Go to the top of the page
 
+Quote Post
wolfman
сообщение Apr 29 2009, 18:45
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 529
Регистрация: 15-06-05
Из: Питер
Пользователь №: 6 032



Нет проект синхронный, все частоты привязаны к одной, на которой все работает.

Пример: файл прошивки сделан в квартусе 8.0, а шью я его в плис квартус программером 5.0. все работает, перешиваю им же, ничего не работает, шью еще раз работает, но сбоит. Шью программером 8.0 все работает без сбоев, могу зашить сколь угодно раз и все работает. Причина сего мне не понятна, правда я на это напарывался всего пару раз.

А вот на то что квартус не цепляет часть проекта при компиляции попадал очень много раз, но это очень легко отследить.

про лечение квартуса: у нас в конторе есть купленный честно квартус, так вот никаких ошибок при компиляции не выдает, работает. А леченный квартус переодически падает.


--------------------
Россия это даже не страна.
Россия это секрет, завернутый в загадку и укрытый не проницаемой тайной...
Go to the top of the page
 
+Quote Post
sazh
сообщение Apr 29 2009, 19:07
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



Цитата(wolfman @ Apr 29 2009, 22:45) *
Нет проект синхронный, все частоты привязаны к одной, на которой все работает.

Пример: файл прошивки сделан в квартусе 8.0, а шью я его в плис квартус программером 5.0. все работает, перешиваю им же, ничего не работает, шью еще раз работает, но сбоит. Шью программером 8.0 все работает без сбоев, могу зашить сколь угодно раз и все работает. Причина сего мне не понятна, правда я на это напарывался всего пару раз.

А вот на то что квартус не цепляет часть проекта при компиляции попадал очень много раз, но это очень легко отследить.

про лечение квартуса: у нас в конторе есть купленный честно квартус, так вот никаких ошибок при компиляции не выдает, работает. А леченный квартус переодически падает.


Это не серьезно.
Go to the top of the page
 
+Quote Post
EvgenyNik
сообщение Apr 30 2009, 07:08
Сообщение #10


Знающий
****

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



Компиляция одним, прошивка - другим... Дело не в этом. Фиттер генерит файл прошивки и программатор не перекидывает ничего по своему усмотрению.
Разницу в работе при переходе от одной версии квартуса к другой можно объяснить либо:
- узкими местами в проекте и разной раскладкой путей по кристаллу разными оптимизаторами, либо
- разными настройками компиляции, что можно устроить и с одной версией, задав, например, Ignore Soft Buffers и т.п.
Разницу в работе при компиляциях в одной версии с одними настройками, но с небольшими изменениями в проекте, можно объяснить только - узкими местами в проекте: асинхронизм, короткие сигналы (например - выделение фронтов на триггерах с автосбросом), генерация тактовых сигналов от дешифраторов, слишком высокие частоты на сумматорах и т.п.


--------------------
Почему разработчики систем повышенной надёжности плохо справляются с простыми проектами? :)
Go to the top of the page
 
+Quote Post
des00
сообщение May 1 2009, 07:51
Сообщение #11


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



а почему бы не натравить на проект сигнал тап и выяснить что не работает ? Присоединяюсь к предыдущим авторам, где то в проекте ошибка.


--------------------
Go to the top of the page
 
+Quote Post
Oldring
сообщение May 1 2009, 12:31
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Peter Pavlov @ Apr 28 2009, 23:14) *
Кстати я переписывал стандартную мегафункцию умножителя на свою, на высокой частоте моя работала намного лучше чем стандартная


Чудеса какие-то. Что значит "намного лучше"? IMHO или умножитель работает, или нет biggrin.gif


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 18th July 2025 - 10:59
Рейтинг@Mail.ru


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