ПЛИСсемейства Virtex™
1.Особенности
• Высокопроизводительные, большой емкости, программируемыепользователем логические интегральныесхемы с архитектурой FPGA (Field ProgrammableGate Arrays):
— емкость от 50К до 1М системных вентилей;
— системная производительность до 200 МГц;
— совместимы с шиной PCI66 МГц;
— поддерживаютфункцию Hot-swap для Compact PCI.
• Поддержка большинства стандартов ввода-вывода (технология SelectIO™):
— 16 высокопроизводительных стандартов ввода — вывода;
— прямое подключение к ZBTRAM устройствам.
• Встроенные цепи управления тактированием:
— четыре встроенных модуляавтоподстройки задержек (DLL -delay-locked loop) для расширенного управления тактовыми сигналами каквнутри кристалла, так и всего устройства;
— четыре глобальные сети распределения тактовых сигналов с малыми разбегамифронтов, плюс 24 локальные тактовые сети.
• Иерархическая система элементов памяти:
— на базе 4-входовых таблицпреобразования (4-LUT — - Look-Up Table), конфигурируемыхлибо как 16-битовое ОЗУ (Random Access Memory), либо как 16-разрядный сдвиговый регистр;
— встроенная блочная память, каждый блокконфигурируется как синхронное двухпортовое ОЗУ емкостью 4 Кбит;
— быстрые интерфейсы к внешнемувысокопроизводительному ОЗУ.
• Гибкая архитектура с балансом быстродействия и плотности упаковки логики:
— специальная логика ускоренного переноса длявысокоскоростных арифметических операций;
— специальная поддержка умножителей;
— каскадируемые цепочки для функций с большим количествомвходов;
— многочисленные регистры/защелки с разрешениемтактирования и синхронные/асинхронные цепи установки и сброса;
— внутренние шины стремя состояниями;
— логика периферийного сканирования в соответствии состандартом IEEE1149.1;
— датчик температурыкристалла.
• Проектирование осуществляется пакетамипрограммного обеспечения Foundation™ и Alliance Series, работающими на ПК или рабочей станции.
• Конфигурация кристалла хранится во внешнем ПЗУ, и загружается вкристалл после включения питания автоматически или принудительно:
— неограниченное числоциклов загрузки,
— четыре режимазагрузки.
• Производятся по 0.22-мкм КМОП-технологии с 5-слойной металлизацией наоснове статического ОЗУ.
• 100%-ное фабричное тестирование.
2.Описание
Семейство FPGA Virtex™ позволяет реализовать высокопроизводительные, большойемкости, цифровые устройства на одном кристалле. Резкое увеличениеэффективности реализаций достигнуто благодаря новой архитектуре, болееэффективной для размещения и трассировки элементов, а также производствукристаллов на основе 0.22-мкм процесса с пятью слоями металлизации. Все этопозволяет использовать кристаллы Virtex как альтернативумасочно-программируемым вентильным матрицам. В состав семейства Virtex входят девять микросхем, отличающихся логическойемкостью (Табл. 1).
Таблица 1. Основныехарактеристики семейства Virtex.Прибор
Системные вентили
Матрица КЛБ
Логические ячейки
Число доступных входов-выходов
Блочная память [бит]
Память на базе LUT [бит]
XCV50
57 906
16x24
1 728
180
32 768
24 576
XCV100
108 904
20x30
2 700
180
40 960
38 400
XCV150
164 676
24x36
3 888
260
49 152
55 296
XCV200
236 666
28x42
5 292
284
57 344
75 264
XCV300
322 970
32x48
6 912
316
65 536
98 304
XCV400
468 252
40x60
10 800
404
81 920
153 600
XCV600
661 111
48x72
15 552
512
98 304
221 184
XCV800
888 439
56x84
21 168
512
114 688
301 056
XCV1000
1 124 022
64x96
27 648
512
131 072
393 216
Созданное на основе опыта, приобретенного при разработкахпредыдущих серий FPGA, семейство Virtex является революционным шагом вперед, определяющим новыестандарты в производстве программируемой логики. Сочетая большое разнообразиеновых системных свойств, иерархию высокоскоростных и гибких трассировочныхресурсов с передовой кремниевой технологией изготовления, семейство Virtex предоставляет разработчику широкие возможностиреализации быстродействующих, большой логической емкости цифровых устройств, призначительном снижении времени разработки.
3.Обзор архитектуры семейства Virtex
Основными особенностями архитектуры кристаллов семейства Virtex являются гибкость и регулярность. Кристаллы состоят из матрицыКЛБ (Конфигурируемый Логический Блок), которая окружена программируемымиблоками ввода-вывода (БВВ). Все соединения между основными элементами (КЛБ,БВВ) осуществляются с помощью набора иерархических высокоскоростныхпрограммируемых трассировочных ресурсов. Изобилие таких ресурсов позволяетреализовывать на кристалле семейства Virtex даже самыегромоздкие и сложные проекты.
Кристаллы семейства Virtex производятся на основе статического ОЗУ (Static Random Access Memory — SRAM), поэтому функционирование кристаллов определяетсязагружаемыми во внутренние ячейки памяти конфигурационными данными.Конфигурационные данные могут загружаться в кристаллнесколькими способами. В ведущем последовательном режиме (Master Serial) загрузкаосуществляется из внешнего ОЗУ и полностью управляется самой FPGA Virtex. В других режимахуправление загрузкой осуществляется внешними устройствами (режимы Select-MAP™, подчиненный-последовательный(Slave Serial и JTAG).
Конфигурационные данные создаются пользователем припомощи программного обеспечения проектирования Xilinx Foundation и Alliance Series. Программноеобеспечение включает в себя схемный и текстовый ввод, моделирование,автоматическое и ручное размещение и трассировку, создание, загрузку иверификацию загрузочных данных.
3.1.Быстродействие
Кристаллы Virtex обеспечивают болеевысокую производительность, чем предыдущие поколения FPGA. Проекты могут работать на системных частотах до 200МГц, включая блоки ввода-вывода. Блоки ввода-вывода Virtex полностью соответствуют спецификациям PCI-шины, поэтому кристалл позволяет реализовыватьинтерфейсные схемы, работающие на частоте 33 МГц или 66 МГц. В дополнение кэтому кристаллы Virtex удовлетворяют требованию «hot-swap» для Compact PCI.
К настоящему времени кристаллы полностью протестированына «эталонных» схемах. На основе тестов выявлено, что хотя производительностьсильно зависит от конкретного проекта, большинство проектов работают начастотах превышающих 100 МГц и могут достигать системных частот до 200 МГц. В Табл.2 представлены производительности некоторых стандартных функций,реализованных на кристаллах с градацией быстродействия '6'.
В отличие от предыдущих семейств ПЛИС фирмы «Xilinx», в сериях Virtex™ и Spartan™ градация по быстродействию обозначается классом, а незадержкой на логическую ячейку. Соответственно, в семействах Virtex™ и Spartan™чем больше класс, тем выше быстродействие.
4.Описание архитектуры
4.1.Матрица Virtex
Программируемая пользователем вентильная матрицу серии Virtex показана на Рис. I. Соединение между КЛБосуществляется с помощью главных трассировочных матриц — ГТМ. ГТМ — это матрицапрограммируемых транзисторных двунаправленных переключателей,расположенных на пересечении горизонтальных и вертикальных линий связи. КаждыйКЛБ окружен локальными линиями связи (VersaBlock™), которые позволяют осуществить соединения с матрицейГТМ.
Таблица2. Производительность стандартных функций Virtex-6
Функция
Разрядность [бит]
Производительность
Внутрисистемная производительность Сумматор
16
5.0 нс
64
7.2 нс Конвейерный умножитель
8х8
5.1 нс
16х16
6.0 нс
Декодер адреса
16
4.4 нс
64
6.4 нс
Мультиплексор
16:1
5.4 нс
Схема контроля по четности
9
4.1 нс
18
5.0 нс
36
6.9 нс Системная производительность
Стандарт HSTL Class IV
200МГц
Стандарт LVTTL
180МГц
DLL
Блоки ввода-вывода (БВВ) DLL
Блоки ввода-вывода (БВВ) Versa Ring Блоки ввода-вывода (БВВ)
Versa Ring
Блочная память
Матрица КЛБ
Блочная память
Versa Ring
Versa Ring
DLL
Блоки ввода-вывода (БВВ)
DLL
Рис.1. Структура архитектуры Virtex.
Интерфейс ввода-вывода VersaRing создает дополнительные трассировочные ресурсы попериферии кристалла. Эти трассы улучшают общую «трассируемость» устройства ивозможности трассировки после закрепления электрических цепей к конкретнымконтактам.
Архитектура Virtex также включаетследующие элементы, которые соединяются с матрицей ГТМ:
• Специальные блоки памяти (BRAMs) размером 4096 бит каждый.
• Четыре модуляавтоподстройки задержек (DLL), предназначенныхдля компенсации задержек тактовых сигналов, а также деления, умножения и сдвигафазы тактовых частот.
• Буферы с тремя состояниями (BUFT), которые расположены вблизи каждого КЛБ и управляютгоризонтальными сегментированными трассами.
Коды, записанные в ячейки статической памяти, управляютнастройкой логических элементов и коммутаторами трасс, осуществляющихсоединения в схеме. Эти коды загружаются в ячейки после включения питания имогут перезагружаться в процессе работы, если необходимо изменить реализуемыемикросхемой функции.
4.2.Блок ввода-вывода
Основным отличительным свойством EBBсемейства Virtex является поддержка широкогоспектра стандартов сигналов ввода-вывода. На Рис. 2 представленаструктурная схема БВВ. В Табл. 3 перечислены поддерживаемые стандарты.
Таблица 3.Поддерживаемые стандарты ввода-вывода.
Стандарт ввод/вывод
Напряжение порогового уровня входных каскадов,
Напряжение питания выходных каскадов,
Напряжение согласования с платой,
5-В совместимость
LVTTL
нет
3.3
нет
да
LVCMOS2
нет
2.5
нет
да
PCI, 5 A
нет
3.3
нет
да
PCI, 3.3 A
нет
3.3
нет
нет
GTL
0.8
нет
1.2
нет
GTL+
1.0
нет
1.5
нет
HSTL Class I
0.75
1.5
0.75
нет
HSTL Class III
0.9
1.5
1.5
нет
HSTL Class IV
0.9
1.5
1.5
нет
SSTL3 Class I & II
1.5
3.3
1.5
нет
SSTL2 Class I & II
1.25
2.5
1.25
нет
CTT
1.5
3.3
1.5
нет
AGP
1.32
3.3
нет
нет
БВВ содержит три запоминающих элемента, функционирующихлибо как D-тригтеры, либо кактриггеры-защелки. Каждый БВВ имеет входной сигнал синхронизации (CLK), распределенный на три триггера и независимые длякаждого триггера сигналы разрешения тактирования (Clock Enable — СЕ).
Кроме того, на все триггеры заведен сигналсброса/установки (Set/Reset-SR). Для каждоготриггера этот сигнал может быть сконфигурирован независимо, как синхроннаяустановка (Set), синхронный сброс (Reset), асинхронная предустановка (Preset) или асинхронный сброс (Clear).
Входные и выходные буферы, а также все управляющиесигналы в БВВ допускают независимый выбор полярности. Данное свойство неотображено на блок-схеме БВВ, но контролируется программой проектирования.
Все контакты защищены от повреждения электростатическимразрядом и от всплесков перенапряжения. Реализованы две формы защиты отперенапряжения, олдна допускает 5-В совместимость, а другая нет. Для случая 5-Всовместимости, структура, подобная диоду Зенера, закорачивает на землю контакт,когда напряжение на нем возрастает приблизительно до 6.5В. В случае, когдатребуется 3.3-В PCI-совместимость, обычныедиоды ограничения могут подсоединяться к источнику питания выходных каскадов,
1. Резистор, соединенный с общей шиной питания (pull-down).
2. Резистор, соединенный с шиной питания (pull-up).
3. Маломощная схема удержания последнего состояния (week-keeper).
До начала процесса конфигурирования микросхемы всевыводы, не задействованные в этом процессе, принудительно переводятся всостояние высокого импеданса. Резисторы «pull-down» и элементы «week-keeper» неактивны, арезисторы «pull-up»можно активировать.
Активация резисторов «pull-up» перед конфигурациейуправляется внутренними глобальными линиями через управляющие режимные контакты.Если резисторы «pull-up»не активны, то выводы находятся в состоянии неопределенного потенциала. Если впроекте необходимо иметь определенные логические уровни до начала процессаконфигурирования нужно использовать внешние резисторы.
Все БВВ микросхемы Virtex совместимы со стандартом IEEE 1149.1 периферийного сканирования.
4.2.1. Ввод сигнала
Входной сигнал БВВ может быть протрассирован либонепосредственно к блокам внутренней логики, либо через входной триггер.
Кроме того, между выходом буфера и D-входом триггера может быть подключен элемент задержки,исключающий время удержания для случая контакт-контакт. Данная задержкасогласована с внутренней задержкой распределения сигнала тактирования FPGA, что гарантирует нулевое время удержания дляраспределения сигналов контакт-контакт.
Каждый входной буфер может быть сконфигурирован такимобразом, чтобы удовлетворять одному из низковольтных сигнальных стандартов,поддерживаемых устройством. В некоторых из этих стандартов входной буфериспользует напряжение порогового уровня ( позволяетввести в устройство принудительные опорные величины для различных, близких поиспользуемым логическим уровням стандартов (см. также «Банки ввода-вывода»).
К каждому входу после окончания процесса конфигурированиямогут быть, по выбору, подключены внутренние резисторы (либо pull-up, либо pull-down). Сопротивление этихрезисторов лежит в пределах 50… 150 кОм.
4.2.2. Вывод сигнала
Выходной сигнал проходит через буфер с тремя состояниями,выход которого соединен непосредственно с выводом микросхемы. Сигнал можетбыть протрассирован на вход буфера с тремя состояниями, либо непосредственно отвнутренней логической структуры, либо через выходной триггер блокаввода-вывода.
Управление буфером с тремя состояниями также можетосуществляться либо непосредственно от внутренней логической структуры, либочерез специальный триггер БВВ, который позволяет создать синхронное управлениесигналом разрешения и запрещения для буфера с тремя состояниями. Каждый такойвыходной каскад рассчитан на втекающий ток до 48 мА и вытекающий ток до 24 мА.Программирование мощности и скорости нарастания сигнала выходного каскадапозволяет минимизировать переходные процессы в шинах.
Для большинства сигнальных стандартов выходной уровеньлогической единицы зависит от приложенного извне напряжения позволяет ввести вустройство принудительные опорные величины для различных, близких поиспользуемым логическим уровням стандартов (см. также «Банки ввода-вывода»).
По выбору, к каждому выходу может быть подключена схема «week-keeper». Если данная цепьактивирована (пользователем на этапе создания схемы), то она следит занапряжением на контакте микросхемы и создает слабую нагрузку для входногосигнала, подключенную либо к «земле» (если на входе уровень логического нуля),либо к источнику питания (если на входе уровень логической единицы). Есликонтакт подключен к нескольким источникам сигнала, эта цепь удерживает уровеньвходного сигнала в его последнем состоянии, при условии, что все источники былипереведены в состояние с высоким импедансом. Поддержание таким путем одного издопустимых логических уровней позволяет ликвидировать неопределенность уровняшины.
Так как схема «week-keeper» использует входной буфер для слежения за входнымуровнем, то необходимо использовать подходящее значение напряжения