Использование FPGA Express для компиляции проекта 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Использование FPGA Express для компиляции проекта



Когда проект VHDL читается в FPGA Express, то он преобразуется во внутренний формат базы данных так, чтобы FPGA Express мог синтезировать и оптимизировать его. Когда FPGA Express оптимизирует проект, он может изменить структуру частей или всего проекта в целом. Вы управляете степенью реструктуризации. Предоставляются следующие опции:

Полное сохранение иерархии проекта.

Разрешение перемещения целых модулей вверх или вниз по иерархии.

Разрешение комбинирования определенных модулей с другими. Сжатие целого проекта в один модуль (сглаживание проекта), если это будет полезным.

 

Методология проектирования

На рис. 5 приведена типичная процедура проектирования, которая использует FPGA Express и симулятор VHDL. Каждый шаг такой модели проектирования описан подробно.

 

 

 
 

 

 


Рис. 5. Структурная -схема этапов проектирования

 

13 14
1. Запись описания проекта на языке VHDL. Это описание может являться комбинацией структурных и функциональных элементов. Данное описание используется симуляторами FPGA Express и Synopsys VHDL.

2. Обеспечение языковых тестовых драйверов VHDL для симулятора. Драйвера обеспечивают тестовые вектора для моделирования и собирают выходные данные.

3. Моделирование проекта с помощью симулятора VHDL. Проверка правильности описания проекта.

4. Использование FPGA Express для синтеза и оптимизации описания проекта VHDL в элементарный список цепей. FPGA Express генерирует оптимизированные списки цепей, удовлетворяющие временным ограничениям выбранной архитектуры FPGA.

5. Использование системы проектирования FPGA (Design Manager) для связи определенной технологической версии FPGA с симулятором VHDL. Система проектирования включает в себя модели симуляции и интерфейсы, необходимые для сквозного проектирования.

6. Моделирование определенной технологической версии проекта с помощью симулятора VHDL. Допускается использовать оригинальные драйверы моделирования VHDL из пункта 2, поскольку определения модулей и портов сохраняются в процессе трансляции и оптимизации.

7. Сравнение выхода моделирования на элементном уровне (п. 6) с выходом моделирования оригинального описания VHDL (п. 3) для проверки того, что исполнение является корректным.

 

Иерархия проекта

FPGA Express поддерживает иерархические границы, определяемые при использовании структурных конструкций VHDL. Эти границы приводят к двум основным результатам:

1. Каждый проектный объект, определяемый в описании VHDL, синтезируется отдельно и поддерживается в виде независимого проекта. При этом учитываются проектные ограничения, и каждый объект может быть оптимизирован отдельно в FPGA Express.

2. Компонентные реализации внутри описаний VHDL поддерживаются в течение ввода. Имя реализации, которое присваивается каждому пользовательскому объекту, сохраняется вплоть до выполнения на элементном уровне.

Примечание. FPGA Express не поддерживает и не создает автоматически иерархию других неструктурных конструкций VHDL, таких, как блоки, процессы, циклы, функции и процедуры. Эти элементы описания VHDL транслируются в контексте своих проектов. После чтения проекта VHDL вы можете сгруппировать вместе логику процесса, функции или процедуры внутри окна выполнения FPGA Express (Implementation Window).

Выбор иерархических границ оказывает значительное воздействие на качество синтезируемого проекта. С помощью FPGA Express вы можете оптимизировать проект, сохраняя его иерархические границы. FPGA Express только частично оптимизирует логику поперек иерархических модулей. Полная оптимизация возможна в тех частях иерархии проекта, которые сжаты в FPGA Express.

Пример иерархической структуры сложного устройства показан на рис. 6

 

 

Рис. 6. Иерархическая структура

 

Типы данных

В VHDL необходимо назначать тип всем портам, сигналам и переменным. Тип данных объекта определяется операцией, которая может быть ему назначена. Например, оператор AND определяется для объектов типа BIT, но не для объектов типа INTEGER. Типы данных важны и при синтезе проекта. Тип данных объекта определяет его размер (ширину в битах) и битовую организацию. Правильный выбор типов данных значительно улучшает качество проекта и помогает минимизировать количество ошибок.

 

Проектные ограничения

Необходимо описать качественные ограничения модуля проекта внутри FPGA Express Implementation Window.

Выбор регистра

Размещение регистров и тактирующих схем является очень важным архитектурным решение. Существует два способа определения регистров в вашем описании VHDL. У каждого из этих методов существуют определенные преимущества:

1. Реализовать регистры непосредственно в описании VHDL, выбрав любой нужный элемент из библиотеки FPGA. Тактирующие схемы могут быть произвольной сложности. Выбирается архитектура, базирующаяся на триггерах или защелках. Основными недостатками такого подхода являются:

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

Программа пишется более сложно.

15 16
2. Использовать структуры if и wait, чтобы вывести триггера и защелки из описания. Преимущества такого подхода прямо противоположны недостаткам предыдущего. При использовании логического описания регистра программа VHDL становится технологически независимой и более легкой для написания. Этот метод позволяет FPGA Express выбирать тип описываемого компонента в зависимости от ограничений. Таким образом, если необходим специфический компонент, должна использоваться его реализация. Тем не менее, некоторые типы регистров и защелок не могут быть описаны логически.

Асинхронные проекты

Возможно использовать FPGA Express для конструирования асинхронных проектов с кратными и управляемыми синхроимпульсами. Однако, хотя эти проекты являются логически (статистически) корректными, они могут неправильно моделироваться или работать в связи с условиями состязания.

 

Языковые конструкции

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

 



Поделиться:


Последнее изменение этой страницы: 2016-04-26; просмотров: 165; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.143.244.83 (0.01 с.)