Блог пользователя des00

TimeQuest для чайников. Часть 5 (Заключение)

Мы рассмотрели основные вопросы по заданию констрейнов для различных проектов.

За границами рассмотрения остались такие виды задания ограничений как : мультицикловые пути в проекте (мы рассмотрели их использование только в интерфейсах), интерфейсы с работой по обеим фронтам.

Цель охватить все возможные ситуации не ставилась, предоставленной информации достаточно для начала использования TimeQuest.  То что будет не понятно можно найти в документации на TimeQuest и в хендбуке на квартус. Все это доступно на сайте альтеры. 

TimeQuest для чайников. Часть 4 (Как много интерфейсов разных)

Вот мы и подошли к основному таинству TimeQuesta. Это таинство задания временных ограничений для интерфейсов ввода/вывода. Интерфейсов существует великое множество, но относительно методов их обработки и задания констрейнов их можно разделить на 2 основные группы : асинхронные и синхронные интерфейсы.

Под синхронностью я понимаю метод обработки интерфейса в ПЛИС. Если для обработки потока данных используется логика, тактируемая от частоты этого интерфейса, то такой интерфейс я называю синхронным. В противном случае интерфейс асинхронный.

Асинхронные я делю на истинно асинхронные (т.е. обрабатываемые полностью на  комбинационной логике) и асинхронные с обработкой на системном клоке. Синхронные же в свою очередь делятся по признаку местоположения источника тактовой частоты на system-synchonus и source-synchronus интерфейсы.

Есть еще самосинхронные интерфейсы работающие с Clock Data Recovery (CDR), но их мы рассматривать не будем. Также не будем рассматривать подробно вопросы реализации интерфейсов, нас интересует только задание временных ограничений в TimeQuest. 

TimeQuest для чайников. Часть 3 (Клоки как вас много)

Продолжаем наше погружение в мир TimeQuest-а. Как вы уже поняли, эта часть посвящена проектам, в которых клоков больше чем один. Задание ограничений для таких проектов не намного сложнее, чем для рассмотренного нами ранее одночастотного проекта. Рассмотрим основные случаи многочастотных проектов.

Внимание  рассматриваем только вопросы задания частот. Задание констрейнов ввода/вывода будем рассматривать в следующих частях.

TimeQuest для чайников. Часть 2 (TimeQuest лицом к лицу)

В предыдущей части мы рассмотрели самый простой проект для  ПЛИС, который только может быть. Перед тем как перейти к более сложным проектам надо освоить инструмент, о котором идет речь. Эта часть посвящена основам временного анализа с помощью TimeQuest.

TimeQuest это программа для проверки выполнения временных ограничений, заданных в sdc файле констрейнов. Вот тут возникает первое правило TimeQuest а:

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

TimeQuest для чайников. Часть 1 (Введение)

В свое время фирма Altera, желая быть ближе к народу (удобство работы в ее софте это большой плюс), создала инструмент под названием Timing Analyzer. Было все просто, прописал тактовые частоты проекта и нажал run для анализа. Но проекты становились все сложнее, частоты все выше, а количество частот в проекте все больше, возможностей Timing Analyzer стало нехватать.

SVN для ПЛИСоводов-АЛЬТЕРодиов. Что скармливать SVNу

Quartus при своей работе создает множество файлов, большинство из которых служебные и изменяются от компиляции к компиляции. Естественно что подобные файлы не имеет смысла хранить в репозитории SVN, т.к. они не несут информацию о настройках проекта.

В Quartus основная информация находится в следующих файлах

SVN для продолжающих. Как управлять версиями релизов библиотек

Очень часто есть определенное количество файлов общих для разных проектов. В этом случае разработчики обычно оформляют их как библиотеки. Их удобно использовать с помошью SVN свойства svn::externals. Но тут есть одна тонкость.

Ссылаться на основную ветку разработки trunk не совсем правильно, т.к. в ней могут лежать не рабочие файлы. Значит надо делать релизы в tags.

SVN для продолжающих. Как делать релизы библиотек.

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

Зачем нужно техническое задание или сказка "Сделайте мне хорошо".

Предисловие

Заказчик на объекте принимает работу у подрядчика. Тот подводит его к выкопанной шахте диаметром 3 метра и глубиной 50 метров, заглядывают туда, а на дне горит прожектор.
Заказчик : Что за херня???
Подрядчик : Вот же чертеж! По нему и сделали.
Заказчик (переворачивая чертеж на 180 градусов): Это маяк, бл..! МАЯК!

(c) Народный фольклёр

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

RSS-материал