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

 
 
> Общие вопросы
go2winner
сообщение Apr 27 2016, 10:48
Сообщение #1


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

Группа: Участник
Сообщений: 78
Регистрация: 19-10-15
Пользователь №: 88 917



Доброго времени суток.
Я начал вторую итерацию своего обучения ПЛИС (XILINX). И появилось множество вопросов. Вот есть простая VHDL модель, отлаженная в симуляторе.

Какие шаги чтобы ее подконтрольно "залить" в ПЛИС нужно пройти? Просто обозначить контакты и прошить, это опять не то, как я понял.
С чего начинается (какие шаги) создание проекта с целью загрузить прошивку из готовой VHDL модели?

timing constraints как ими пользоваться? Есть ли литература /статьи (документацию начал читать). Как оценить проект по временным параметрам?
Как узнать время hold, setup в проекте? Как узнать возможны нарушения по временам и устранить их?

Как возможно устранить всякие возможные проблемы , которые могут всплыть?

Я пока пользуюсь ISE и ориентируюсь на xilinx spartan 6 серии .
_______________________________________________________
Проект создается через Planahead или ISE profect navigator?
Какую документацию необходимо изучить и держать под рукой включая на софт(документации много для себя пока держу несколько, связанных с DSP, IO.)
В общем хочется научиться так же на базовой уровне пользоваться ПО для ПЛИС, чтобы перед прошивкой быть в проекте уверенным и понимать на что он способен и какие ограничения имеет.

Приму любые толковые ссылки на статьи/литературу/обучалки/советы

PS. чтобы не засорять вторым топиком, еще один вопрос задам тут. Я столкнулся с такой ситуацией. Один и тоже проект на одно и том же кристалле в одной точке дает разные (две платы-два кристалла -одна и та же конфигурация) результаты. Т.к. проект не мой , но я как раз изучаю схожие вопросы, я хочу данный проект проверить на временные параметры. Как вот в таких ситуациях, когда используешь чужие проекты их сопровождаешь и устраняешь неисправности? (проект схемотехнический, в смысле не описан языком. ). И как оформлять свои проекты, чтобы их удобней и самому сопровождать и другим? Тк. кроме vhdl кода еще же нужно прикладывать какие-то данные (насйтроки среды и т.п.)
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Gorby
сообщение Apr 28 2016, 07:36
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 449
Регистрация: 28-10-04
Из: Украина
Пользователь №: 1 002



Цитата(go2winner @ Apr 27 2016, 12:48) *
Я начал вторую итерацию своего обучения ПЛИС (XILINX). Вот есть простая VHDL модель, отлаженная в симуляторе.

Какие шаги чтобы ее подконтрольно "залить" в ПЛИС нужно пройти? Просто обозначить контакты и прошить, это опять не то, как я понял.
С чего начинается (какие шаги) создание проекта с целью загрузить прошивку из готовой VHDL модели?


Тут Вы немного поспешили.
Настоятельно рекомендую "простую VHDL модель, отлаженную в симуляторе" имплементировать в ФПГА и прогнать т.н. временнУю симуляцию.
При этом Вы переходите от абстракций VHDL модели к ее конкретной практической реализации в железе. При временнОй симуляции (моделировании)
схема работает "как настоящая", со всеми аппаратными задержками и проч. УзнАете много нового.
Выяснится, что одновременные события на VHDL ни разу не одновременны в реальности.
Из плюсов - если схема заработала во временнОм моделировании, она практически гарантированно заработает в реальности.

То есть вот Вам программа:
- научиться имплементировать проект;
- научиться моделировать его в Моделсиме с подключенным .sdf файлом.

(прошивать пока бессмысленно).


--------------------
Умею молчать на 37 языках...
Go to the top of the page
 
+Quote Post
go2winner
сообщение Apr 28 2016, 08:02
Сообщение #3


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

Группа: Участник
Сообщений: 78
Регистрация: 19-10-15
Пользователь №: 88 917



Цитата(Gorby @ Apr 28 2016, 07:36) *
Тут Вы немного поспешили.
Настоятельно рекомендую "простую VHDL модель, отлаженную в симуляторе" имплементировать в ФПГА и прогнать т.н. временнУю симуляцию.
При этом Вы переходите от абстракций VHDL модели к ее конкретной практической реализации в железе. При временнОй симуляции (моделировании)
схема работает "как настоящая", со всеми аппаратными задержками и проч. УзнАете много нового.
Выяснится, что одновременные события на VHDL ни разу не одновременны в реальности.
Из плюсов - если схема заработала во временнОм моделировании, она практически гарантированно заработает в реальности.

То есть вот Вам программа:
- научиться имплементировать проект;
- научиться моделировать его в Моделсиме с подключенным .sdf файлом.

(прошивать пока бессмысленно).


Я создаю проект в VHDL. С начало выполняю behavior симуляцию. Как я понимаю это без учета задержек. Т.е. идеальный случай. И выполняю Post-Route симуляцию. Выполняю с помощью ISIM, кажется так называется
Это достаточно? Правда я файлов sdf не подключаю..он сам цепляется? Просто дело не в прошивке (загрузки конфигурации). Я хочу делать проект и быть уверенным, что завтра, когда я его запущу он заработает и я смогу его отдаить в случае чего. А не написать модель абстрактно, а потом еще сидеть огромное количество времени и думать как средой пользоваться, как выявлять ошибки , исправлять, отлаживать, откуда reset брать.
Я пока дальше симулятора не хожу.

Еще вопрос попутный раз уж про симуляцию. Иногда я вырабатываю в проектах сигнал разрешения, который длиться один такт (от фронта rising до фронта rising)..как его надежней использовать?
Читать в другом процессе тоже по возрастающему фронту.....или есть ситуации когда читать лучше по падающему(тогда по диограмме падающий фронт приходиться ровно по середине импульса разоен\щшения )
Go to the top of the page
 
+Quote Post
Gorby
сообщение Apr 28 2016, 10:25
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 449
Регистрация: 28-10-04
Из: Украина
Пользователь №: 1 002



Цитата(go2winner @ Apr 28 2016, 10:02) *
Я создаю проект в VHDL. С начало выполняю behavior симуляцию. Как я понимаю это без учета задержек. Т.е. идеальный случай. И выполняю Post-Route симуляцию. Выполняю с помощью ISIM, кажется так называется
Это достаточно? Правда я файлов sdf не подключаю..он сам цепляется? Просто дело не в прошивке (загрузки конфигурации). Я хочу делать проект и быть уверенным, что завтра, когда я его запущу он заработает и я смогу его отдаить в случае чего. А не написать модель абстрактно, а потом еще сидеть огромное количество времени и думать как средой пользоваться, как выявлять ошибки , исправлять, отлаживать, откуда reset брать.
Я пока дальше симулятора не хожу.

Еще вопрос попутный раз уж про симуляцию. Иногда я вырабатываю в проектах сигнал разрешения, который длиться один такт (от фронта rising до фронта rising)..как его надежней использовать?
Читать в другом процессе тоже по возрастающему фронту.....или есть ситуации когда читать лучше по падающему(тогда по диограмме падающий фронт приходиться ровно по середине импульса разоен\щшения )


Вы делаете всё правильно. Если Post-Route симуляция работает без ошибок, вероятность работающего дизайна в микросхеме приближается к 1.0 ;

Таки читать этот сигнал длительностью в один период клока надо по тому же фронту, по которому он был сформирован (rising). Этим Вы гарантируете максимальную гибкость дизайна.
Например, использовав противополярный, Вы сознательно урезали временной бюджет для возможной логики и соединений ровно вдвое - нехорошо.
Единственное, о чем стоит беспокоиться - это о соблюдении условий setup\hold для всех триггеров дизайна. К счастью, при правильном задании констрейнов ПО делает это автоматически.
Отсюда есть интересное следствие: если дизайн полностью синхронен, то необходимо и достаточно задать один-единственный констрейн - тактовую частоту.

Еще интересные особенности: при использовании PLL достаточно задать его входную частоту. Все цепи, питающиеся его выходным синтезированным клоком, автоматически получат правильные значения констрейнов.

Кстати о симуляторах. Таки Моделсиму и Ментор Графикс доверия больше, чем доморощенному ISIMу.


Цитата(Bad0512 @ Apr 28 2016, 11:50) *
Это означает лишь что ни с чем сложнее ДДР контроллера вы ещё не работали.
Многие проекты просто невозможно симулировать с реальными задержками именно из-за их объёма.

То есть Вы запускаете Бураны на Альфу Центавра (ну типа сложный проект), причем функционально моделируется, а после разводки - уже нет?
Бред.
И как же Вы докажете Главному Принимающему (мамой клянусь?), что Ваш проект вообще рабочий? Типа смотрите, на столе в течении 10 минут работает?
Всегда можно моделировать по частям, или просто долго (некоторые проекты таки могут симулироваться десятки часов на секунду реального времени,
особенно если привлекается еще и процессор с эмуляцией его же софта).
Ну или голову включать и симулировать отдельные аспекты.

Знавал я одного программиста, который отказался работать с AVR Atmega644 (64кбайт флеш!) по той причине,
что скомпилированная AVR GCC с DEBUG информацией прошивка не влезала в эти 64К. Без отладочной информации - 4кб(!!!).
Оказался беспомощен без отладчика с хождением по строкам исходника.


--------------------
Умею молчать на 37 языках...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- go2winner   Общие вопросы   Apr 27 2016, 10:48
- - bogaev_roman   Начните с простого - назначьте пины и определитесь...   Apr 27 2016, 11:31
|- - go2winner   Цитата(bogaev_roman @ Apr 27 2016, 11:31)...   Apr 27 2016, 12:11
|- - Maverick   Цитата(go2winner @ Apr 27 2016, 15:11) Ещ...   Apr 27 2016, 12:46
|- - bogaev_roman   Цитата(go2winner @ Apr 27 2016, 15:11) То...   Apr 27 2016, 12:55
|- - Jackov   Цитата(bogaev_roman @ Apr 27 2016, 15:55)...   Apr 27 2016, 15:05
|- - Bad0512   А вообще неплохо бы определиться нужен ли вам ресе...   Apr 28 2016, 05:18
|- - go2winner   Цитата(Bad0512 @ Apr 28 2016, 05:18) А во...   Apr 28 2016, 06:59
|- - Bad0512   Цитата(go2winner @ Apr 28 2016, 12:59) Ст...   Apr 28 2016, 07:14
- - go2winner   Так .. Т.к. мои проекты маленькие и простые с ним...   Apr 28 2016, 07:34
|- - Bad0512   Цитата(go2winner @ Apr 28 2016, 13:34) Та...   Apr 28 2016, 08:10
||- - go2winner   Цитата(Bad0512 @ Apr 28 2016, 08:10) Судя...   Apr 28 2016, 08:27
||- - Bad0512   Цитата(go2winner @ Apr 28 2016, 14:27) Т....   Apr 28 2016, 09:04
|- - bogaev_roman   Цитата(go2winner @ Apr 28 2016, 10:34) Ка...   Apr 28 2016, 08:49
|- - Gorby   Цитата(bogaev_roman @ Apr 28 2016, 10:49)...   Apr 28 2016, 09:45
||- - Bad0512   Цитата(Gorby @ Apr 28 2016, 15:45) А я во...   Apr 28 2016, 09:50
||- - andrew_b   Цитата(Gorby @ Apr 28 2016, 12:45) А я во...   Apr 28 2016, 11:56
|- - go2winner   Цитата(bogaev_roman @ Apr 28 2016, 08:49)...   Apr 28 2016, 11:54
|- - bogaev_roman   Цитата(go2winner @ Apr 28 2016, 14:54) По...   Apr 28 2016, 12:49
|- - go2winner   Цитата(bogaev_roman @ Apr 28 2016, 12:49)...   Apr 28 2016, 13:15
|- - bogaev_roman   Цитата(go2winner @ Apr 28 2016, 16:15) Та...   Apr 28 2016, 13:56
|- - go2winner   Цитата(bogaev_roman @ Apr 28 2016, 13:56)...   Apr 28 2016, 14:23
|- - bogaev_roman   Цитата(go2winner @ Apr 28 2016, 17:23) То...   Apr 28 2016, 14:59
|- - Bad0512   Цитата(go2winner @ Apr 28 2016, 20:23) ка...   Apr 29 2016, 05:27
- - Bad0512   Цитата(Gorby @ Apr 28 2016, 16:25) То ест...   Apr 28 2016, 10:33
- - bogaev_roman   Цитата(Gorby @ Apr 28 2016, 13:25) То ест...   Apr 28 2016, 10:48


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

 


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


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