М. Кузелин
ПЛИС фирмы Xilinx с архитектурой FPGA: семейство Spartan-IIE
В ноябре 2001 года компания Xilinx объявила о начале выпуска нового семейства ПЛИС с архитектурой FPGA - семейства SpartanTM-IIE (напряжение питания ядра кристалла - 1,8 В). Семейство SpartanTM-IIE - четвёртое поколение ПЛИС серии Spartan, призванной заменить в крупносерийных изделиях заказные микросхемы. Основными особенностями, позволяющими ПЛИС серии Spartan конкурировать с заказными микросхемами, являются: сопоставимая цена, значительно меньшее время разработки проекта пользователя, возможность корректировки ошибок или внесения изменений в конфигурацию микросхемы непосредственно в готовом устройстве. ПЛИС семейства Spartan-IIE могут применяться в системах с тактовыми частотами до 200 МГц, поддерживают 19 стандартов ввода/вывода, среди которых 3 дифференциальных стандарта (LVDS, BLVDS и LVPECL), содержат 4 модуля управления синхронизацией. Семейство содержит 5 микросхем, отличающихся логической ёмкостью, в свою очередь, каждая микросхема выпускается в нескольких корпусах. Основные параметры микросхем семейства Spartan-IIE представлены в табл. 1.
Таблица 1. Основные параметры микросхем семейства Spartan-IIE
Микросхема |
XC2S50E |
XC2S100E |
XC2S150E |
XC2S200E |
XC2S300E |
Логические ячейки |
1 728 |
2 700 |
3 888 |
5 292 |
6 912 |
Системные вентили |
50 000 |
100 000 |
150 000 |
200 000 |
300 000 |
Матрица КЛБ |
16x24 |
20x30 |
24x36 |
28x42 |
32x48 |
Всего КЛБ |
384 |
600 |
864 |
1 176 |
1 536 |
Максимальное число программируемых выводов |
182 |
202 |
263 |
289 |
329 |
|
84 |
86 |
114 |
120 |
120 |
Максимальное число дифференциальных пар |
24 576 |
38 400 |
55 296 |
75 264 |
98 304 |
Распределённая память, Бит |
32К |
40К |
48К |
56К |
64К |
Блочная память, Бит Корпуса |
TQ-144 PQ-208 FT-256 |
TQ-144 PQ-208 FT-256 FG-456 |
PQ-208 FT-256 FG-456 |
PQ-208 FT-256 FG-456 |
PQ-208 FT-256 FG-456 |
Кристаллы семейства Spartan-IIE производятся на основе статического ОЗУ (Static Random Access Memory - SRAM), поэтому функционирование кристаллов определяется загружаемыми во внутренние ячейки памяти конфигурационными данными. Конфигурационные данные могут загружаться в кристалл несколькими способами. В ведущем последовательном режиме (Master Serial) загрузка осуществляется из внешнего ПЗУ и полностью управляется самой FPGA Spartan-IIE. В других режимах управление загрузкой осуществляется внешними устройствами (подчинённый параллельный режим Slave Parallel, подчинённый последовательный Slave Serial и JTAG).
Для хранения конфигурационной последовательности компанией Xilinx выпускаются однократно программируемые последовательные ПЗУ серии XC17S00A и многократно перепрограммируемые непосредственно в устройстве параллельные/последовательные ПЗУ серии XC18V00.
Конфигурационные данные создаются пользователем при помощи программного обеспечения проектирования ISE, бесплатная версия которого (ISE Web-Pack) доступна для загрузки по адресу http://www.xilinx.com/sxpresso/webpack.htm. Программное обеспечение включает в себя модули схемного и текстового ввода, моделирования, автоматического и ручного (только в платной версии) размещения и трассировки, создания, загрузки и верификации конфигурационных данных.
Архитектура кристалла семейства Spartan-IIE основана на архитектуре семейства Virtex-E и состоит из пяти основных конфигурируемых элементов:
- блоков ввода/вывода (БВВ), осуществляющих соединение внутренней логики кристалла с выводами корпуса микросхемы;
- конфигурируемых логических блоков (КЛБ), реализующих логические и регистровые функции;
- блочной памяти, каждый блок по 4096 бит;
- модулей управления синхронизацией (DLL);
- трассировочных ресурсов, осуществляющих соединение перечисленных выше элементов.
Отличие архитектуры семейства Spartan-IIE от архитектуры семейства Virtex-E заключается в меньшем в 2 раза количестве блоков памяти и блоков управления синхронизацией. Блок-схема архитектуры семейства Spartan-IIE показана на рис. 1.
Рисунок 1. Обобщённая блок-схема ПЛИС семейства "Spartan-IIE"
Конфигурируемый логический блок (КЛБ)
КЛБ состоит из двух секций, каждая из которых состоит из двух 4-входовых функциональных генераторов, логики ускоренного переноса и двух регистровых элементов (рис. 2). Каждый КЛБ содержит два буфера с тремя состояниями, которые позволяют реализовать внутрикристальные шины. Аналогичные ПЛИС других фирм таких буферов не имеют, а эмулируют их за счёт использования функциональных генераторов.
Рисунок 2. Структура КЛБ
Функциональные генераторы реализованы в виде 4-входовых таблиц преобразования (Look-Up Table - LUT). Кроме использования в качестве функциональных генераторов, каждый LUT-элемент может быть также использован как синхронная память типа RAM размерностью 16x1 бит. Более того, из двух LUT-элементов в рамках одной секции можно реализовать синхронную RAM-память размерностью 16x2 или 32x1 бит, либо двухпортовую синхронную RAM-память размерностью 16x1 бит.
На LUT-элементе микросхемы Spartan-IIE может быть реализован 16-бит сдвиговый регистр, который идеально подходит для захвата высокоскоростных или пакетных потоков данных. Этот режим может также использоваться для запоминания данных в приложениях цифровой обработки сигналов.
Блоки ввода/вывода
Блоки ввода/вывода поддерживают 19 сигнальных стандартов ввода/вывода, включая дифференциальные стандарты LVDS, BLVDS и LVPECL. Дифференциальные стандарты LVDS и BLVDS позволяют коммутировать ПЛИС семейства Spartan-IIE с другими микросхемами на плате без использования дополнительных конверторов или трансляторов. Помимо этого, дифференциальные стандарты более скоростные, чем однопроводные, позволяют снизить энергопотребление кристалла и шумы, а также устраняют электромагнитные наводки. В табл. 2 представлены все поддерживаемые стандарты ввода/вывода. Совместимость по входу с 5-В логическими сигналами обеспечивается подключением последовательного резистора на 100 Ом.
Таблица 2. Поддерживаемые Spartan-IIE стандарты ввода/вывода
Интерфейсы межкристального обмена |
Интерфейсы между платами |
Интерфейсы между платами |
LVTTL |
PCI 33/66 MHz, 3,3 V |
HSTL-I |
LVCMOS2 |
GTL |
HSTL-III & IV |
LVCMOS18 |
GTL+ |
SSTL3-I & II |
LVDS |
AGP-2X |
SSTL2-I & II |
LVPECL |
BLVDS |
CTT |
Блочная память (Block RAM)
Каждый блок памяти (рис. 3) - это синхронная двухпортовая RAM с независимым управлением для каждого порта. Размерность шины данных для обеих портов может быть сконфигурирована независимо, что позволяет создавать преобразователи размерности шины. В табл. 3 показаны возможные соотношения размерностей шин данных и адреса.
Таблица 3. Возможные соотношения размерностей шин данных и адреса
Разрядность |
Глубина |
Шина адреса |
Шина данных |
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 |
216 |
ADDR<7:0> |
DATA<15:0> |
Рисунок 3. Блочная память
Модули автоподстройки задержки (DLL)
Полностью цифровая автоподстройка задержки (DLL) может устранять перекос задержек между синхросигналом на входном контакте микросхемы и сигналами на тактовых входах внутренних схем устройства. Дополнительная задержка вводится таким образом, чтобы фронты сигналов синхронизации достигали внутренних триггеров в точности на один период синхронизации позже их прихода на входной контакт. Эта система с обратной связью эффективно устраняет задержку распределения сигналов синхронизации, гарантируя, что фронты синхросигналов на входе микросхемы и на внутренних тактовых входах с большой точностью синхронны.
Вдобавок, для устранения задержек, возникающих при распределении тактовых сигналов, DLL создаёт новые возможности управления функциями синхронизации. Модуль DLL может создавать четыре квадратурные фазы из исходного источника синхросигнала; удваивать частоту синхросигнала или делить эту частоту на 1,5, 2, 2,5, 3, 4, 5, 8 или 16.
Модуль DLL также функционирует как тактовое зеркало. Путём вывода из микросхемы сигнала с выхода DLL и последующего ввода этого сигнала снова внутрь кристалла, схема DLL может устранить разбег фаз для тактовых сигналов на уровне печатной платы при работе с несколькими микросхемами Spartan-IIE.
Чтобы гарантировать, что системная синхронизация будет нормально функционировать до момента окончания конфигурирования системы и начала штатной работы, схема DLL имеет возможность задерживать процесс конфигурирования до нормальной синхронизации с системой.
В настоящее время выпускаются микросхемы XC2S50E, XC2S100E, XC2S200E и XC2S300E, выпуск микросхемы XC2S150E планируется начать во II квартале 2002 года. Микросхемы XC2S50E и XC2S300E поступили на склад дистрибьютора Xilinx в Москве в декабре 2001 года.
Подробная информация о семействе представлена на web-сайте компании Xilinx: www.xilinx.com.
Литература
- Xilinx Inc. XCELL. The Quarterly Journal For Xilinx Programmable Logic Users. Issue 41.
- Кнышев Д.А., Кузелин М.О. ПЛИС фирмы Xilinx: описание структуры основных семейств. М.: Издательский дом "Додека-XXI", 2000. 240 с.
|