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

3.5 Понятие глобальных временных ограничений

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

Как было указано выше, для размещения и разводки элементов внутри кристалла FPGA используются соответствующие средства САПР. Для фирмы Xilinx таким средством является утилита PaR. Данная утилита поддерживает возможность задания пользовательских ожиданий по частоте. Эти ожидания и называются глобальными временными ограничениями.

Существует четыре главных типа глобальных временных ограничений:

  • Ограничения на период распространения сигнала (PERIOD). Данное ограничение включает в себя распространение сигнала от одного триггера до другого, дрожание тактового сигнала (jitter) и разброс в тактировании всех триггеров в системе;

  • Входное смещение (OFFSET IN). Описывает задержку сигнала от внешнего входа микросхемы до первого триггера на пути следования сигнала;

  • Выходное смещение (OFFSET OUT). Описывает задержку сигнала от первого триггера на пути следования сигнала до внешнего выхода микросхемы;

  • Задержка от входа к выходу (PAD to PAD). Определяет задержку сигнала от входа микросхемы до его выхода, при этом на пути следования сигналов не должно быть триггеров.

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

Рисунок 3.5.1 — Представление глобальных временных ограничений

Временные ограничения описываются либо с помощью обычного текстового редактора, либо с использованием специальной утилиты от Xilinx – Timing Constraints Editor.

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

3.6 Генерация ip-блоков

При реализации больших проектов для FPGA может возникнуть мысль о использовании законченных блоков, написанных другими разработчиками. Фирма Xilinx обладает своим собственным репозиторием таких модулей, являющихся полностью оттестированными и готовыми к использованию ядрами класса “soft-core”. Подобное ядро представляют собой черный ящик, реализующий требуемые функции. Для многих ядер можно изменить настройки конфигурации, такие как ширину входных и выходных сигналов, методы обработки информации и т.д., что позволяет получить конкретное решение под конкретную задачу.

Все подобные IP-блоки от Xilinx можно разделить на 2 группы: решения от LogiCore и решения от AllianceCore. При этом решения от LogiCore поддерживаются непосредственно фирмой Xilinx, имеют расширенный набор параметров, полностью задокументированы и зачастую не требуют покупки специальных лицензий. В свою очередь, решения от AllianceCore поддерживаются партнерами Xilinx, требуют покупки дополнительных лицензий и часто не имеют возможности к параметризации.

Для централизованного доступа и конфигурации блоков различных реализаций и типов, Xilinx предоставляет утилиту, называемую Core Generator. Данная утилита имеет удобный графический интерфейс и позволяет просматривать имеющиеся для использования модули. Также эта утилита позволяет использовать дополнительные ресурсы FPGA, реализованные в виде IP-ядер класса «hard-core», таких как: блочная память, CMT, DSP48, контроллеров динамической памяти и т.д.

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

  • Существенно экономите время проектирования;

  • Получаете гарантированно работающие модули для построения системы;

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

Все эти плюсы говорят о существенной роли подобных блоков в проектировании цифровых устройств для FPGA.

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