Добавил:
СПбГУТ * ИКСС * Программная инженерия Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

4 семестр / ППЭВС. 4 семестр. Лекция 10

.pdf
Скачиваний:
17
Добавлен:
09.05.2020
Размер:
394.48 Кб
Скачать

Задержки распространения сигнала в структурах FPGA.

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

Общая задержка должна не превышать периода синхроимпульса. Задержка расчитывается на цепях, связующих выход одного регистра со входом второго. Но, при этом необходимо учитывать время удержания data на входе регистра для уверенного приема и время удержания состояния выхода для уверенной обработки. Время удержания данных на входе перед приходом синхроимпульса связано с особенностями структуры D-триггера с динамическим синхровходом. Минимальное время удержания соответствует максимальной задержке элементов 1 + 4 представленной схемы, иначе поступление «1» на вход синхронизации приведет к неправильной записи информации в ячейку хранения, или получения неопределенного состояния триггера.

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

Оптимизация оставшейся части производится под время длительности периода за минусом необходимого времени удержания, которое не должно равняться минимальному. Такая оптимизация должна заключаться в правильном размещении схемы и уменьшении количества используемой логики (мультиплексоров) в проектируемой схеме.

Полученные ассемблерные коды конфигурации размещаются в структуре FPGA, которая представлена следующим образом:

Светло-серым цветом отмечены наборные логические блоки (LABs, MLABs) с входящими в них адаптивными блоками (ALMs).

Темно-серым цветом отмечены встроенные блоки памяти - M10K.

Черным обозначены перестраиваемые высокоточные блоки цифрового преобразования сигналов (DSP-digital signal processing).

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

Распределенная память представлена отдельными триггерами, тогда как любая внутренняя память блоков, как построенная на основе MLABs, так и на основе M10K называется выделенной памятью. В фрагменте таблицы представлены объемы выделенной памяти для различных типов кристаллов. Кристалл лабораторного макета 5CSEMA5F31C6. В таблице находим SE и A5. Можем определить общий объем встренной памяти используемого

FPGA.

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

-входной регистровый банк;

-предварительный сумматор;

-внутренний коэффициент;

-умножители;

-сумматор;

-аккумулятор и сумматор выходной последовательности;

-регистры одновременной подачи информации;

-удвоенный накопительный регистр;

-выходной банк регистров.

Система на кристалле – микропроцессор + FPGA.

Микросхема имеет три типа внешних выводов:

-I/O, закрепленные за внешними, энергонезависимыми устройствами памяти (Flash), тактовой частотой (clk) и сбросом (reset) процессора;

-совместно используемые I/O – могут назначаться периферии HPS или логике FPGA;

-I/O FPGA – выводы, закрепленные за структурой FPGA. Некоторые периферийные устройства структуры HPS могут передавать сигналы через FPGA для использования выводов, закрепленных за FPGA, а не совместно используемых.