Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
XilinxCourse_v2.0.doc
Скачиваний:
76
Добавлен:
22.04.2019
Размер:
3.26 Mб
Скачать

2.8 Процесс имплементации и создания конфигурационного файла

Процесс имплементации является следующим шагом после процесса синтеза в маршруте проектирования. Для данного этапа можно выделить три характерные ступени:

  • Трансляция (Translate);

  • Отображение (Map);

  • Размещение и разводка (Place and Route).

В связи с тем, что любой проект может состоять не только из множества файлов, содержащих исходный код описания модулей проекта на языках HDL, но и содержать множество файлов, представляющих собой списки соединений (netlist), то требуется некоторый этап, на котором будет осуществлена конвертация всех списков соединений к некоторому единому формату. Этим этапом и является процесс трансляции. При объединении всех списков соединений в единое целое, на этом этапе также происходит слияние с файлами, описывающими ограничения проекта (design constraints). Также следует отметить, что формат и структура результирующего файла, полученного на этом этапе является специфичной от фирмы производителя программного обеспечения.

На стадии отображения, проект отображается на реально доступные ресурсы, характерные для целевого кристалла FPGA. При этом процессе обнаруживаются ошибки по использованию недоступных или отсутствующих для целевого FPGA ресурсов.

Заключительной стадией процесса имплементации проекта является стадия размещения и разводки. На этом этапе средства автоматизированного проектирования размещают проект на физическом уровне. Вся логика проекта размещается на конкретных физических структурах целевой FPGA, кроме этого между логическими блоками прокладывается трассировка. На данном этапе можно выявить ошибки по переполнению целевой FPGA – т.е. выявить потребность в использовании большего количества ресурсов, чем имеется в наличии. Также причиной ошибок могут стать ситуации, при возникновении которых, невозможность корректно соединить некоторый участок логики с общим проектом по причине нехватки соединений и т.д.

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

2.9 Понятия «система на кристалле» и ip-ядро

В этом разделе будут освещены некоторые дополнительные понятия в проектировании цифровой техники, имеющие непосредственное отношение к FPGA. Здесь хотелось бы отметить современную методологию проектирования, называемую “система на кристалле” (СнК, System-on-Chip, SoC). Данная методология проектирования предполагает многократное повторное использование законченных и протестированных сложно-функциональных блоков (IP-ядро). При этом по критерию гибкости повторного использования все IP-ядра могут быть разделены на следующие классы:

1) синтезируемые ядра (“soft-core”) – технологически независимые блоки, описание которых осуществляется на высокоуровневых языках описания аппаратуры;

2) ядра класса “firm”, ориентированные на определенную технологию, привязка к которой осуществляется на уровне предварительного разбиения на структурные единицы в выбранном технологическом процессе для достижения требуемых характеристик по быстродействию и площади;

3) “жесткие” ядра (“hard-core”) – привязанные к одному технологическому процессу ядра (готовая топология).

В качестве технологической платформы для реализации цифровых СнК могут выступать программируемые логические интегральные схемы. При этом активно используются IP-ядра класса “soft-core”. В главе, посвященной проектированию цифровой аппаратуры с помощью языка Verilog HDL мы рассмотрим приемы создания таких IP-ядер.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]