4.3. Конфигурируемый логический блок - КЛБ

Базовым элементом КЛБ является логическая ячейка - ЛЯ (Logic Cell — LC). ЛЯ состоит из 4-входового функционального генератора, ло­гики ускоренного переноса и запоминающего элемента. Выход каждого функционального генератора каждой логической ячейки подсоединен к выходу КЛБ и к D-входу триггера. Каждый КЛБ серии Virtex содержит че­тыре логические ячейки, организованные в виде двух одинаковых секций (Рис. 4). На Рис. 5 представлено детальное изображение одной секции.

В дополнение к четырем базовым логическим ячейкам, КЛБ серии Virtex содержит логику, которая позволяет комбинировать ресурсы функциональ­ных генераторов для реализации функций от пяти или шести переменных. Таким образом, при оценке числа эквивалентных системных вентилей для микросхем семейства Virtex, каждый КЛБ приравнивается к 4.5 ЛЯ.

4.3.1. Таблица преобразования

Функциональные генераторы реализованы в виде 4-входовых таблиц преобразования (Look-Up Table — LUT). Кроме использования в качестве функциональных генераторов, каждый LUT-элемент может быть также ис­пользован как синхронное ОЗУ размерностью 16х1 бит. Более того, из двух LUT-элементов в рамках одной секции можно реализовать синхрон­ное ОЗУ размерностью 16х2 бита или 32х1 бит, либо двухпортовое син­хронное ОЗУ размерностью 16х1 бит.

На LUT-элементе микросхемы Virtex может быть реализован 16-раз­рядный сдвиговый регистр, который идеально подходит для захвата высо­коскоростных или пакетных потоков данных. Этот режим может также ис­пользоваться для запоминания данных в приложениях цифровой обработ­ки сигналов.

 

4.3.2. Запоминающие элементы

Запоминающие элементы в каждой секции КЛБ Virtex могут конфигу­рироваться как динамические триггеры (чувствительные к фронту сигна­ла) D-типа, либо как триггеры-защелки, чувствительные к уровню сигна­ла. D-вход триггера может управляться либо от функционального генератора в рамках той же секции КЛБ, либо непосредственно от входов данной секции КЛБ, минуя функциональные генераторы.

Кроме сигналов синхронизации (Clock) и разрешения синхрониза­ции (Clock Enable — СЕ) в каждой секции КЛБ есть сигналы синхрон­ной установки (Set) и сброса (Reset). Обозначение этих сигналов — SR и BY соответственно. Сигнал SR переводит запоминающий элемент в состояние, определенное для него в конфигурационных данных, а сиг­нал BY — в противоположное состояние. Эти же сигналы могут быть использованы также в качестве асинхронной предустановки (Preset) и очистки (Clear). Все сигналы управления могут быть независимо про-инвертированы. Они подаются на оба триггера в рамках конкретной секции КЛБ.

 

4.3.3. Дополнительная логика

Дополнительная логика, входящая в каждый КЛБ, представлена двумя мультиплексорами: F5 и F6.

На вход мультиплексора F5 подаются сигналы с выходов функциональных генераторов данной секции КЛБ. Этот узел может работать как функциональ­ный генератор, реализующий любую 5-входовую функцию, либо как мульти­плексор 4:1, либо как некоторая функция от девяти входных переменных.

Аналогично, мультиплексор F6 объединяет выходы всех четырех функ­циональных генераторов КЛБ, используя один из выходов мультиплексора F5. Это позволяет реализовать либо любую 6-входовую функцию, либо мультиплексор 8:1, либо некоторую функцию до 19 переменных.

Каждый КЛБ имеет четыре сквозных линии — по одной на каждую ло­гическую ячейку. Эти линии используются как дополнительные входы данных, либо как дополнительные трассировочные ресурсы, не расходую­щие логические ресурсы.

 

4.3.4. Арифметическая логика

Каждая ЛЯ содержит специальную логику ускоренного переноса, кото­рая обеспечивает наилучшую реализацию на ПЛИС различных арифмети­ческих функций. КЛБ содержит две отдельные цепи переноса — по одной на каждую секцию. Размерность цепи переноса — два бита на КЛБ.

Арифметическая логика включает в себя элемент, реализующий функ­цию исключающего ИЛИ, который позволяет реализовать однобитовый сумматор в одной логической ячейке.

В каждой логической ячейке имеется элемент, реализующий функ­цию И (AND), который предназначен для построения быстродействую­щих умножителей.

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

 

4.3.5. Буферы с тремя состояниями

Каждый КЛБ Virtex содержит два буфера с тремя состояниями, кото­рые нагружены на внутренние шины (см. также п. 4.4.4 «Специальные трассировочные ресурсы»). Каждый буфер BUFT имеет независимый вход управления с третьим состоянием и независимый входной контакт.

4.3.6. Блочная память (Block RAM)

В FPGA Virtex встроена особая блочная память (Block Select RAM) большой емкости. Она создана в дополнение к распределенной памяти не­большой емкости (Select RAM), реализованной на таблицах преобразова­ния (Look Up Table RAM — LUTRAM).

Блоки памяти Block Select RAM+ организованы в виде столбцов. Все устройства Virtex содержат два таких столбца, по одному вдоль каждой вертикальной стороны кристалла. Эти колонки увеличивают полный раз­мер кристалла. Каждый блок памяти равен по высоте четырем КЛБ, таким образом, микросхема Virtex, имеющая 64 КЛБ по высоте, содержит 1-6 бло­ков памяти на колонку и 32 блока памяти в целом. В Табл. 5 приводятся ем­кости блочной памяти для различных кристаллов Virtex.

Таблица 5. Емкость блочной памяти.

Кристалл Virtex Число блоков Общий объем блочной памяти [бит]
XCV50 8 32 768
XCV100 10 40 960
XCV150 12 49 152
XCV200 14 57 344
XCV300 16 65 536
XCV400 20 81 920
XCV600 24 98 304
XCV800 28 114 688
XCV1000 32 131 072

Каждый блок памяти, как показано на Рис. 6, это полностью синхронное двухпортовое ОЗУ с независимым управлением для каждого порта. Размер­ность шины данных для обоих портов может быть сконфигурирована незави­симо, что позволяет создавать преобразователи размерности шины. В Табл. 6 показаны возможные соотношения размерностей шин данных и адреса.

В кристаллах Virtex созданы специальные трассировочные ресурсы для связи блочной памяти с блоками КЛБ и другими блоками памяти.

Таблица 6. Соотношение шин адреса и данных
Разрядность Глубина Шина адреса Шина данных
1 4096 ADDR<11:0> DATA<0>
2 2048 ADDR<10:0> DATA<1:0>
4 1024 ADDR<9:0> DATA<3:0>
8 512 ADDR<8:0> DATA<7:0>
16 256 ADDR<7:0> DATA<15:0>

 

4.4. Программируемая трассировочная матрица

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

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

 

4.4.1. Локальные связи

Как показано на Рис. 7, в кристалле Virtex созданы локальные трасси­ровочные ресурсы, называемые VersaBlock. Они позволяют реализовать три типа соединений:

1.    Связи между таблицами преобразования (LUT), триггерами и глав­ной трассировочной матрицей (ГТМ).

2.          Внутренние обратные связи КЛБ, которые создают высокоскорост­ные связи с таблицами преобразования в рамках одного КЛБ и позволяют соединять их в виде цепочек с минимальными задержками распростране­ния сигналов.

3.          Прямые трассы, которые создают высокоскоростные соединения с соседними по горизонтали КЛБ, избегая при этом больших задержек, при­сущих трассам ГТМ.

4.4.2. Трассировочные ресурсы общего назначения

Большинство связей в кристаллах Virtex реализуются с помощью трас­сировочных ресурсов общего назначения, и, следовательно, большая часть ресурсов межсоединений связана с этим типом трассировочной иерархии. Трассировочные ресурсы общего назначения расположены в виде горизон­тальных и вертикальных трассировочных каналов и размещены в непосредственной близости от строк и столбцов матрицы, образованной блока­ми КЛБ. Ниже перечислены эти ресурсы:

• Примыкающая к каждому КЛБ главная трассировочная матрица (ГТМ) — это матрица переключателей, с помощью которых комму­тируются горизонтальные и вертикальные трассы и посредством кото­рых блоки КЛБ получают доступ к трассировочным ресурсам общего назначения.

• ГТМ связана в каждом из четырех направлений с соседней ГТМ посредством 24 трасс одинарной длины.

• 96 буферизованных НЕХ-линий трассируют сигналы ГТМ к шести другим ГТМ в каждом из четырех направлений. НЕХ-линии органи­зованы в виде зигзагообразных линий. НЕХ-линии могут подклю­чаться к источникам сигнала только в своих конечных точках или се­рединных (три блока от источника). Одна третья часть НЕХ-линий является двунаправленными, в то время как остальные — однона­правленные.

• 12 длинных линий являются буферизированными, двунаправленными линиями, распространяющими сигналы в микросхеме быстро и эф­фективно. Вертикальные длинные линии имеют протяженность, равную полной высоте кристалла, а горизонтальные длинные линии — полной ширине.

 


Информация о работе «ПЛИС Xilinx семейства Virtex™»
Раздел: Радиоэлектроника
Количество знаков с пробелами: 66085
Количество таблиц: 18
Количество изображений: 0

Похожие работы

Скачать
23688
7
19

... значительно снизить их себестоимость. До недавнего времени, несмотря на все достоинства ПЛИС Xilinx, существовало обстоятельство сдерживающее их применение (особенно недорогих кристаллов при разработке несерийных устройств) — необходимость дополнительных затрат на приобретение пакета программных средств проектирования и программирования. Чтобы устранить это препятствие, фирма Xilinx предоставила ...

Скачать
44493
3
33

... диаграмм с сохранением результатов в стандартном формате VCD (Value Change Dump), воспринимаемом всеми системами работы с временными диаграммами. [1] 2.МЕТОД ПРОЕКТИРОВАНИЯ УСТРОЙСТВ ФИЛЬТРАЦИИ ПО РАБОЧИМ ПАРАМЕТРАМ Методика проектирования фильтров по рабочим параметрам основана на нахождении значений элементов, нармированных по частоте и сопротивлению нагрузки, путём аппроксимации или с ...

Скачать
138361
13
23

... программирование микроконтроллера, как инструмента накопления данных и управления ресурсами, с учётом необходимой и достаточной степени доступа к конечной аппаратуре. Модуль накопления для задач многомерной мессбауэровской спектрометрии спроектирован с учётом следующих условий: -  Синхронизация накопителя с системой доплеровской модуляции осуществляется внешними тактовыми импульсами “старт” и ...

0 комментариев


Наверх