Валерий зотов
walerry@km.ru
В статье рассматриваются основные характеристики и особенности архитектуры ПЛИС платформы Virtex-6 HXT по сравнению с кристаллами семейств Virtex-6 LXT и Virtex-6 SXT [2]. Приводится информация о параметрах логических и специализированных аппаратных ресурсов, а также о корпусном исполнении ПЛИС нового семейства. Большое внимание уделяется особенностям архитектуры и топологии последовательных сверхскоростных приемопередатчиков RocketIO GTH. В данной публикации также содержится ряд примеров использования ПЛИС семейства Virtex-6 HXT для реализации устройств, применяемых в составе высокоскоростных сетей Ethernet.
особенности кристаллов программируемой логики с архитектурой FPGA семейства Virtex-6 HXT
Кристаллам программируемой логики с архитектурой FPGA платформы Virtex-6 HXT присуще большинство характерных особенностей ПЛИС семейств Virtex-6 LXT и Virtex-6 SXT [2], которые обусловлены сочетанием преимуществ используемой архитектуры и КМОП-технологии 40 нм. В кристаллах нового семейства, как и в других элементах этой серии, применяется модульная архитектура ASMBL (Advanced Silicon Modular Block) третьего поколения.
ПЛИС семейства Virtex-6 HXT характеризуются сочетанием высокой производительности и низким уровнем суммарной потребляемой мощности, который достигается
Новое семейство высокопроизводительных ПЛИС
с архитектурой FPGA фирмы Xilinx Virtex-6 HXT
Продолжая развитие новой серии высокопроизводительных кристаллов программируемой логики с архитектурой FPGA (Field Programmable Gate Array) [1] Virtex-6, фирма Xilinx объявила о скором выпуске следующего семейства ПЛИС — Virtex-6 HXT. Представители данного семейства позиционируются, в первую очередь, в качестве перспективной элементной базы для реализации устройств и систем, применяемых в составе высокоскоростных сетей передачи данных. Наличие в составе кристаллов семейства Virtex-6 HXT последовательных сверхскоростных приемопередатчиков следующего поколения обеспечивает возможность поддержки наиболее часто используемых протоколов мультигигабитных сетей Ethernet.
как за счет внедрения новых технологических решений (включающих в себя, в частности, использование новых транзисторов различных типов, сокращение их размеров, применение диэлектрика с низким значением диэлектрической постоянной (Low-K), уменьшение напряжения питания ядра кристаллов до 1 В), так и за счет применения дополнительных мер по снижению энергопотребления. Усовершенствованные конфигурируемые логические блоки (Configurable Logic Block, CLB), образующие основу архитектуры ПЛИС рассматриваемого семейства, выполнены на базе реальных 6-входовых таблиц преобразования Look-Up Table (LUT) с применением дополнительных триггеров, которые предоставляют возможность существенного увеличения уровней конвейерной организации обработки данных в проектируемых устройствах и системах.
Применение блоков управления синхронизацией (Clock Management Tile, CMT) следующего поколения, включающих в себя два комбинированных модуля управления синхронизацией (Mixed-Mode Clock Managers, MMCM), в сочетании с новой комплексной системой распределения тактовых сигналов внутри кристалла, позволяет легко формировать необходимую совокупность тактовых сигналов с различной частотой и фазовым сдвигом, а также обеспечить минимизацию задержек их распространения на трассировочных ресурсах ПЛИС.
Наличие в составе кристаллов семейства Virtex-6 HXT достаточно большого количества модернизированных аппаратных секций цифровой обработки сигналов (ЦОС) DSP48E1, которые могут функционировать на частотах
до 600 МГц и обладают расширенными функциональными возможностями, позволяет использовать их для реализации высокоскоростных устройств и систем ЦОС. Этому способствует также существенный объем двухпортовой блочной памяти Block RAM, организованной в виде модулей емкостью 36 кбит со встроенной системой обнаружения и коррекции ошибок (Error Correction Checking, ECC) и поддержкой режима побайтной записи. Каждый из модулей памяти Block RAM можно использовать также в виде двух независимых блоков объемом 18 кбит или конфигурировать в виде запоминающих устройств, функционирующих по принципу «первым вошел - первым вышел» (first-in first-out, FIFO).
Применение усовершенствованной технологии SelectI/O, включающей в себя модули цифрового управления импедансом (Digitally Controlled Impedance, DCI) и интерфейсные блоки ChipSync, обеспечивает возможность реализации широкого спектра однополюсных и дифференциальных цифровых стандартов ввода/вывода с уровнями сигналов от 1,2 до 2,5 В. Сочетание преимуществ данной технологии с большим количеством пользовательских выводов ПЛИС позволяет разрабатывать на базе кристаллов семейства Virtex-6 HXT цифровые устройства и встраиваемые микропроцессорные системы с высокоскоростными интерфейсами памяти различного типа, включая DDR3. В качестве основы встраиваемых систем предлагаются конфигурируемые 32разрядные микропроцессорные ядра семейства MicroBlaze [3-6], входящие в состав комплекса средств проектирования Xilinx Embedded Development Kit (EDK) [7]. На рис. 1 показаны
10x10G
10x10G <-------
1x2,5G/5G 4----------
DDR3
DDR3
32
32
DDR3
DDR3
32
32
DDR3
DDR3
32
32
DDR3
DDR3
32
32
Модули
памяти
DDR3
Z. 540 выводов при 450 М Гц
Контроль интерфейса памяти DDR3
Блок
интерфейса
100GE
10x10G
Блок
управления
трафиком
Модуль интерфейса PCI Express
Блок
интерфейса
Interlaken
20x6G
XC6VHX380T / XC6VHX565T
ç^JQQabiBOflOB ПрИ ддомпГ^
Массив памяти QDR2
20x6,25G
20x6,25G
Рис. 1. Пример сопряжения кристаллов программируемой логики семейства Virtex-6 HXT с модулями памяти различного типа
возможности сопряжения ПЛИС рассматриваемого семейства с модулями памяти различного типа (в частности, DDR3 и QDR2) на примере системы управления трафиком, которая может быть реализована на базе кристаллов XC6VHX380T и XC6VHX565T.
В составе каждого кристалла семейства Virtex-6 HXT присутствует модуль системного мониторинга (System Monitor), который позволяет контролировать значение температуры ПЛИС, уровни напряжений питания, а также состояние 17 внешних датчиков, подключаемых к соответствующим аналоговым входам. Наличие возможности программирования через порт JTAG-интерфейса максимального значения температуры, при котором производится отключение напряжения питания кристалла, создает предпосылки повышения надежности функционирования устройств, проектируемых на базе ПЛИС, в заданном температурном диапазоне.
В то же время ПЛИС новой платформы серии Virtex имеют ряд существенных отличий от кристаллов семейств Virtex-6 LXT и Virtex-6 SXT, наиболее заметными из которых являются:
• применение нового типа последовательных сверхскоростных приемопередатчиков следующего поколения RocketIO GTH, поддерживающих скорости приема и передачи данных до 11,2 Гбит/с при минимальной потребляемой мощности;
• использование кластерной организации сверхскоростных приемопередатчиков RocketIO типа GTH, обеспечивающей высокую гибкость и производительность разрабатываемых устройств и систем передачи и обработки данных;
• поддержка до 72 последовательных высокоскоростных каналов приема/передачи данных (до 48 каналов со скоростью 6,5 Гбит/с и до 24 каналов со скоростью 11,2 Гбит/с);
• возможность совместного использования в реализуемых проектах высокоскоростных приемопередатчиков RocketIO GTH и RocketIO GTX;
• оптимизированная топология последовательных приемопередатчиков RocketIO различного типа в составе кристаллов, позволяющая существенно облегчить процесс трассировки печатных плат для проектируемых устройств и систем;
• более высокий коэффициент соотношения объема памяти (блочной и распределенной) и объема логических ресурсов, создающий предпосылки для многоступенчатой буферизации обрабатываемых данных;
• двукратное увеличение числа интегрированных аппаратных модулей PCI Express следующего поколения, соответствующих спецификации PCI Express Base Specification Revision 2.0, которые могут конфигурироваться как конечное устройство (Endpoint) или как корневой порт (Root Port) и поддерживают полную буферизацию передаваемых и принимаемых данных с использованием блочной памяти;
• возможность совместного функционирования встроенных аппаратных контроллеров интерфейса (Tri-mode Ethernet Media Access Controller, TEMAC), соответствующих спецификации IEEE Std 802.3-2005 и поддерживающих протоколы 1000BASE-X PCS/PMA и SGMII, с последовательными приемопередатчиками RocketIO GTH, обеспечивающая поддержку высокоскоростных стандартов передачи данных;
• применение новых типов корпусов с оптимизированным расположением выводов последовательных сверхскоростных приемопередатчиков RocketIO GTH. Поддержка всех перечисленных особенностей и функциональных возможностей кристаллов программируемой логики семейства Virtex-6 HXT предусмотрена в последней версии системы проектирования Xilinx ISE (Integrated Software Environment / Integrated Synthesis Environment) Design Suite 11.3, которая в настоящее время доступна для использования. Более подробная информация о составе этого семейства, основных характеристиках, корпусном исполнении и архитектурных особенностях ПЛИС приводится в последующих разделах.
Состав и основные характеристики ПЛИС семейства Virtex-6 HXT
К моменту подготовки данной статьи в составе нового семейства ПЛИС Virtex-6 HXT представлено четыре кристалла, содержащих
от 251 904 до 566 784 логических ячеек (Logic Cells). Основные параметры ПЛИС данного семейства, отражающие сведения о количестве доступных логических и специализированных аппаратных ресурсов каждого типа, представлены в таблице 1.
При ознакомлении с этой таблицей следует обратить внимание на то, что кристалл с минимальным объемом логических ресурсов XC6VHX250T, входящий в состав рассматриваемого семейства, не содержит сверхскоростных последовательных приемопередатчиков RocketIO GTH. В данном типе ПЛИС используются только высокоскоростные последовательные приемопередатчики предыдущего поколения RocketIO GTX. Такую же особенность имеет кристалл XC6VHX380T, выпускаемый в тех же корпусах (FF1154 и FFG1154), что и ПЛИС XC6VHX250T. В то же время кристалл XC6VHX380T в другом корпусном исполнении обладает последовательными приемопередатчиками двух типов — RocketIO GTH и RocketIO GTX. Такое решение объясняется необходимостью обеспечения полной совместимости по выводам кристаллов, производимых в однотипных корпусах. Детальное описание технических характеристик и особенностей архитектуры ПЛИС семейства Virtex-6 HXT можно найти в [8-18]. Сведения об электрических и временных параметрах кристаллов данного семейства содержатся в [19].
Для производства ПЛИС семейства Virtex-6 HXT применяется новый ряд корпусов, элементы которых отличаются от типов корпус-
Таблица 1. Основные параметры ПЛИС семейства Virtex-6 HXT
Тип ресурсов ПЛИС Тип кристалла
XC6VHX250T XC6VHX255T XC6VHX380T XC6VHX565T
Логические ресурсы Количество секций (Slices) 39 360 39 600 59 760 88 560
Общее число триггеров CLB 314880 316 800 478 080 708 480
Число логических ячеек (Logic Cells) 251 904 253 440 382 464 566784
Ресурсы памяти Объем распределенной памяти (1К = 1024 бит) 3040К 3050К 4570К 6360К
Количество модулей блочной памяти Block RAM емкостью 36 кбит 504 516 768 912
Объем блочной памяти Block RAM (1К = 1024 бит) 18 144К 18567К 27 648К 32832К
Модули синхронизации Количество блоков управления синхронизацией (Clock Management Tiles, CMT) 6 9 9
Число модулей управления синхронизацией (Mixed-Mode Clock Managers, MMCM) 12 12 18 18
Встроенные специализированные аппаратные модули Число аппаратных секций DSP48E1 576 576 864 864
Число аппаратных модулей PCI Express 2 4 4
Количество аппаратных блоков 10/100/1000 Mбит/с Ethernet MAC 4 4 4
Число высокоскоростных последовательных приемопередатчиков RocketIO GTX 48 24 48 48
Число высокоскоростных последовательных приемопередатчиков RocketIO GTH 0 24 24 24
Ресурсы ввода/вывода Количество банков ввода/вывода 12 18 18
Максимальное число пользовательских выводов 320 480 720 720
Максимальное число дифференциальных пар выводов 160 240 360 360
Поддерживаемые стандарты сигналов ввода/вывода Hypertransport (HT), LVCMOS 2.5V, LVCMOS 1.8V, LVCMOS 1.5V h LVCMOS 1.2V, HSTL 1.2V (Class I), HSTL 1.5V (Class I), HSTL 1.5V (Class II), HSTL 1.5V (Class III), HSTL 1.8V (Class I), HSTL 1.8V (Class II), HSTL 1.8V (Class III), LVDS, Extended LVDS, RSDS, BLVDS (Bus LVDS), LVPECL, SSTL 1.5V, SSTL 1.8V (Class I), SSTL 1.8V (Class II), SSTL 2.5V (Class I), SSTL 2.5V (Class II)
Варианты быстродействия ПЛИС Варианты быстродействия для коммерческого исполнения -1, -2,-3 -1, -2,-3 -1, -2,-3 -1, -2
Варианты быстродействия для промышленного исполнения -1, -2 -1, -2 -1, -2 -1
Конфигурационная память Объем конфигурационной памяти, Мбит 76,2 76,2 114,2 153,2
ного исполнения, используемых для кристаллов программируемой логики семейств Virtex-6 LXT и Virtex-6 SXT. Переход к новой линейке корпусов обусловлен появлением последовательных сверхскоростных приемопередатчиков RocketIO GTH в составе архитектуры ПЛИС рассматриваемого семейства. Типы корпусного исполнения кристаллов семейства Virtex-6 HXT отли-
чаются оптимизированным расположением выводов различного назначения (в том числе последовательных приемопередатчиков RocketIO GTH и GTX), обеспечивающим минимизацию взаимных помех высокоскоростных каналов приема и передачи данных. Особенности топологии выводов ПЛИС семейства Virtex-6 HXT в новых типах корпусов показаны на рис. 2.
Топологическая структура выводов, используемая в новых типах корпусного исполнения ПЛИС семейства Virtex-6 HXT, позволяет добиться развязки приемного и передающего каналов свыше 40 дБ. При этом уровень развязки между различными последовательными приемопередатчиками RocketIO превышает 30 дБ. Эти значения в 3-4 раза превосходят аналогичные показатели ПЛИС семейств Virtex-5 LX, Virtex-5 LXT, Virtex-5 SXT, Virtex-5 FXT и Virtex-5 TXT [20].
Новая линейка типов корпусного исполнения кристаллов семейства Virtex-6 HXT включает в себя четыре вида корпусов. Каждый их этих видов выпускается в двух вариантах. Первый вариант исполнения, имеющий условное обозначение FFxxxx (где xxxx — количество выводов), предназначен для применения при традиционной технологии пайки с использованием свинца. Второй вариант исполнения, имеющий условное обозначение FFGxxxx, ориентирован на технологические процессы монтажа с бессвинцовой пайкой. Информация о применяемых разновидностях корпусов для каждого типа кристалла программируемой логики семейства Virtex-6 HXT, с указанием количества доступных пользовательских выводов и последовательных приемопередатчиков RocketIO GTH и RocketIO GTX приведена в таблице 2. Все кристаллы этого семейства обладают полной совместимостью по выводам в случае использования одинаковых корпусов, что существенно облегчает переход от одного типа ПЛИС к другому.
Более подробную информацию о корпусах, используемых для производства ПЛИС семейства Virtex-6 HXT, включающую описание функционального назначения выводов и температурных характеристик, можно найти в [21].
Рис. 2. Особенности расположения выводов различного назначения в корпусах ПЛИС семейства Virtex-6 НХТ
Таблица 2. Типы корпусного исполнения ПЛИС семейства Virtex-6 HXT
XC6VHX255T
XC6VHX380T
XC6VHX565T
Тип корпуса ПЛИС
FF1154, FFG1154
FF1155, FFG1155
FF1923, FFG1923
480
FF1924, FFG1924
640
_640_
35x35 мм
35x35 мм
45x45 мм
45x45 мм
0
0
К приемному каналу
От приемного канала
Рис. 3. Структура передающего канала последовательных сверхскоростных приемопередатчиков RocketIO GTH, используемых в ПЛИС семейства Virtex-6 HXT
Особенности архитектуры и топологии последовательных сверхскоростных приемопередатчиков RocketlO GTH
В составе архитектуры кристаллов программируемой логики семейства Virtex-6 HXT в большинстве своем используются те же типы основных логических и специализированных аппаратных ресурсов, что и в ранее представленных ПЛИС серии Virtex-6. Структура и особенности конфигурируемых логических блоков (Configurable Logic Block, CLB), аппаратных блоков контроллеров интерфейса Tri-mode Ethernet Media Access Controller, секций цифровой обработки сигналов (ЦОС) DSP48E1, аппаратных модулей интерфейса PCI Express, блоков управления синхронизацией CMT и линий распределения тактовых сигналов в ПЛИС были достаточно подробно рассмотрены в [2]. Модули блочной памяти Block RAM и высокоскоростные последовательные приемопередатчики RocketIO GTX в кристаллах Virtex-6 HXT имеют практически ту же структуру, что и в ПЛИС предыдущего поколения серии Virtex, представленного семействами Virtex-5 LXT, Virtex-5 SXT, Virtex-5 FXT и Virtex-5 TXT [20].
Главным преимуществом архитектуры кристаллов программируемой логики платформы Virtex-6 HXT по сравнению со структурой ПЛИС семейств Virtex-6 LXT и Virtex-6 SXT можно считать появление нового типа последовательных сверхскоростных приемопередатчиков RocketIO GTH и их топологию. Поэтому далее основное внимание уделяется рассмотрению особенностей структуры этих приемопередатчиков и их расположения в составе кристаллов семейства Virtex-6 HXT.
Архитектура последовательных сверхскоростных приемопередатчиков RocketIO GTH соответствует физическому уровню PHY базовой модели взаимодействия открытых систем (Open System Interconnection, OSI) технологии Ethernet. Данный уровень модели OSI
включает в себя несколько подуровней, в том числе подуровень сопряжения с физической средой передачи данных (Physical Medium Attachment, PMA) и подуровень кодирования данных (Physical Coding Sublayer, PCS).
Обобщенная структура передающего канала последовательных сверхскоростных приемопередатчиков RocketIO GTH изображена на рис. 3. В этой структуре подуровню сопряжения с физической средой передачи данных PMA соответствуют следующие модули: выходной драйвер (драйвер передаваемого сигнала), блок предварительной коррекции и преобразователь параллельного кода в последовательный.
Выходной драйвер приемопередатчиков RocketIO GTH, используемых в ПЛИС семейства Virtex-6 HXT, выполнен в виде логической схемы с переключением тока Current Mode Logic (CML) и обеспечивает совместимость передаваемого сигнала с уровнями различных цифровых дифференциальных сигнальных стандартов ввода/вывода. При этом формируемые сигналы характеризуются низким уровнем фазового шума (джиттера, jitter). Применение схемы с переключением тока CML позволяет не только программировать требуемые уровни выходных сигналов, но и добиться необходимого согласования с используемой линией передачи. Блок предварительной коррекции выполняет предварительную компенсацию затухания высокочастотных составляющих формируемого сигнала, вносимого линией передачи. Преобразователь параллельного кода в последовательный осуществляет трансформацию передаваемых данных из параллельной формы представления в последовательную.
К подуровню кодирования данных PCS передающего канала последовательных сверхскоростных приемопередатчиков RocketIO GTH относятся следующие блоки: внутренний интерфейс ПЛИС, генератор псевдослучайных последовательностей (Pseudo-Random Bit Sequences, PRBS), блоки кодирования
8b/10b, 64b/66b, блок некодированной передачи данных и блок управления полярностью. Внутренний интерфейс ПЛИС передающего канала представляет собой шлюз между основными ресурсами кристалла программируемой логики и блоками кодирования передающего канала приемопередатчиков RocketIO GTH. Параллельные порты этого интерфейса могут конфигурироваться с разрядностью 16, 20, 32, 40, 64 или 80 бит. Различные блоки кодирования и генератор псевдослучайных последовательностей PRBS обеспечивают поддержку наиболее распространенных протоколов передачи данных, применяемых в высокоскоростных сетях. Кроме того, в составе структуры передающего канала приемопередатчиков RocketIO GTH (рис. 3) предусмотрен блок трансляции данных без какого-либо кодирования. Блок управления полярностью предоставляет возможность инвертирования сформированного кода передаваемых данных. В обобщенной структуре приемного канала последовательных сверхскоростных приемопередатчиков RocketIO GTH, которая представлена на рис. 4, также можно выделить два подуровня — PMA и PCS.
Подуровню сопряжения с физической средой передачи данных PMA приемного канала соответствуют следующие модули: входной буфер с дифференциальными входами, блок линейной коррекции RX EQ, блок адаптивной фильтрации (Decision Feedback Equalization, DFE), блок восстановления данных и синхронизации (Clock Data Recovery, CDR), преобразователь последовательного кода в параллельный. Входной буфер обеспечивает возможность приема сигналов с уровнями различных цифровых дифференциальных сигнальных стандартов ввода/вывода. Блок линейной коррекции выполняет адаптивную компенсацию затухания принимаемого сигнала, вносимого линией передачи. Блок адаптивной фильтрации (DFE) предназначен для уменьшения уровня помех, возникающих в тракте передачи сигналов. Блок восстановления данных
II і s ° і з 9
X X
ctxo о я X ь
Последовательные Последовательные
приемопередатчики GTH приемопередатчики GTH
I ■
Последовательные Последовательные
приемопередатчики GTH Логические и специализированные ресурсы ПЛИС Virtex-6 НХТ приемопередатчики GTH
Последовательные приемопередатчики GTX Последовательные приемопередатчики GTX
Последовательные Последовательные
приемопередатчики GTX приемопередатчики GTX
; - I
Последовательные Последовательные
* ► приемопередатчики GTX приемопередатчики GTX
З І іі
¡1 С с
І і
¡1
о *
К 2
X X ct\D О м У ь
Q) с; і =
Рис. 5. Расположение последовательных приемопередатчиков RocketЮ GTH и RocketIO GTX в кристаллах программируемой логики семейства Virtex-6 HXT
и синхронизации осуществляет выделение восстановления информационных данных переданной информации и тактового сигнала и тактового сигнала основан на использова-из принятой смеси сигнала и шума. Процесс нии системы фазовой автоподстройки час-
тоты (ФАПЧ). Преобразователь последовательного кода в параллельный переводит принятые последовательности бит данных в параллельную форму представления с заданным количеством двоичных разрядов.
Подуровень кодирования данных PCS приемного канала последовательных сверхскоростных приемопередатчиков RocketIO GTH включает в себя следующие блоки: блок управления полярностью, блок контроля псевдослучайных последовательностей PRBS, блоки декодирования 8b/ 10b, 64b/66b, блок некодированной передачи данных и внутренний интерфейс ПЛИС. Блок управления полярностью предназначен для выбора требуемой формы представления параллельного кода принимаемых данных — прямой или инверсной. Блоки декодирования 8b/10b, 64b/66b в совокупности с блоком контроля псевдослучайных последовательностей PRBS необходимы для реализации наиболее распространенных протоколов передачи данных, используемых в высокоскоростных сетях. С помощью внутреннего интерфейса
Последовательные приемопередатчики GTH Последовательные приемопередатчики GTH
100GE
(CAUI)
Последовательные приемопередатчики GTH Логические и специализированные ресурсы ПЛИС Virtex-6 НХТ Последовательные приемопередатчики GTH t *
Последовательные приемопередатчики GTX Последовательные приемопередатчики GTX Щ:
Последовательные приемопередатчики GTX Последовательные приемопередатчики GTX Щ.
■ j
Последовательные приемопередатчики GTX Последовательные приемопередатчики GTX
10 х 10GE (10 х XFI) 10.3125 GB/S
Рис. 6. Организация сквозной высокоскоростной передачи данных через кристалл семейства Virtex-6 HXT с использованием последовательных приемопередатчиков RocketЮ GTH
Последовательные
приемопередатчики
ОТН
Логические и специализированные ресурсы ПЛИС
10(ЮЕ
(САШ)
Последовательные
приемопередатчики
отн
Последовательные
приемопередатчики
этх
Последовательные
приемопередатчики
отх
Последовательные
приемопередатчики
этх
Последовательные
приемопередатчики
этн
Последовательные
приемопередатчики
этн
Последовательные
приемопередатчики
ОТХ
Последовательные
приемопередатчики
этх
10 х 106Е (ЮхЮСАІЛ) 6.25 вВ/ъ
УИех-6 НХТ
Последовательные
приемопередатчики
этх
Рис. 7. Организация высокоскоростной передачи данных через кристалл семейства Virtex-6 HXT с использованием приемопередатчиков RocketЮ GTH и RocketЮ GTX
ЮОЭЕ
(САШ)
Последовательные
приемопередатчики
отн
Логические и специализированные ресурсы ПЛИС
Последовательные
приемопередатчики
єтн
Последовательные
приемопередатчики
этн
Последовательные
приемопередатчики
этх
Последовательные
приемопередатчики
ЄТХ
Последовательные
приемопередатчики
СГН
Последовательные
приемопередатчики
отх
Последовательные
приемопередатчики
ОТХ
Последовательные
приемопередатчики
этх
УіПех-6 НХТ
Последовательные
приемопередатчики
ОТХ
10 х 10ЄЕ (ЮхХАШ) 3.125 ОВ/э
ЮхКЮЕ (ЮхХАШ) 3.125 ЭВ/в
Рис. 8. Организация высокоскоростной передачи данных через кристалл семейства Virtex-6 HXT с использованием приемопередатчиков RocketIO GTH и RocketЮ GTX, расположенных на двух противоположных сторонах кристалла
ПЛИС приемного канала осуществляется сопряжение блоков декодирования приемопередатчиков RocketЮ GTH с основными ресурсами кристалла программируемой логики семейства ^Гйх-6 НХТ. Значение разрядности параллельных портов этого интерфейса можно выбрать при конфигурировании приемопередатчиков из той же совокупности вариантов, что и для внутреннего интерфейса ПЛИС передающего канала.
Последовательные сверхскоростные приемопередатчики RocketЮ GTH размещаются на двух противоположных сторонах кристаллов семейства Virtex-6 НХТ. При этом регионы расположения данных модулей и высокоскоростных приемопередатчиков RocketЮ GTX в ПЛИС рассматриваемого семейства не пересекаются. Особенности топологии модулей последовательных приемопередатчиков RocketЮ GTH и RocketЮ GTX в кристаллах программируемой логики платформы Virtex-6 НХТ в наглядном виде представлены на рис. 5.
Расположение модулей последовательных приемопередатчиков RocketЮ различного типа, применяемое в ПЛИС семейства Virtex-6 НХТ, предоставляет возможность организации сквозной высокоскоростной передачи данных через кристалл. При этом существенно упрощается процесс трассировки печатных плат для разрабатываемых устройств и систем. Особенности и рекомендации по выполнению процесса проектирования печатных плат для устройств, реализуемых на базе ПЛИС рассматриваемого семейства, приведены в [22].
Топология последовательных приемопередатчиков RocketЮ GTH и RocketЮ GTX позволяет эффективно реализовать устройства и системы с различной комбинацией высокоскоростных интерфейсов, используя сквозную передачу данных через ПЛИС. На рис. 6 показан пример организации высокоскоростной передачи данных между интерфейсами 100GE (САШ) и ШxШGE (10хХИ), основанной на особенностях размещения последо-
вательных сверхскоростных приемопередатчиков RocketЮ GTH в ПЛИС семейства Virtex-6 НХТ. В этом примере задействованы указанные приемопередатчики, расположенные на двух противоположных сторонах кристалла.
Пример совместного использования последовательных приемопередатчиков RocketЮ GTH и RocketЮ GTX для реализации сквозной высокоскоростной передачи данных через кристалл семейства Virtex-6 НХТ приведен
на рис. 7. Такое решение можно использовать при реализации мостов между интерфейсами 100GE (САШ) и ШxШGE (ЮхЯХАШ).
Для организации передачи данных между интерфейсами 100GE (САШ) и 10x10GE (10хХАШ) можно применять комбинацию сверхскоростных приемопередатчиков RocketЮ GTH и высокоскоростных приемопередатчиков RocketЮ GTX, которые расположены на противоположных сторонах кристалла семейства ^йех-б НХТ. Пример использова-
Кластер GTH (GTH Quad)
Кластер GTH (GTH Quad)
5 І
ФАПЧ
(PLL)
Логические и специализированные ресурсы ПЛИС Virtex-6 HXT
ФАПЧ
(PLL)
Рис. 9. Кластерная организация сверхскоростных приемопередатчиков RocketIO GTH в кристаллах программируемой логики семейства Virtex-6 HXT
5 °
Рис. 10. Схема тактирования последовательных сверхскоростных приемопередатчиков RocketIO GTH в кристаллах программируемой логики семейства Virtex-6 HXT
ния такой комбинации последовательных приемопередатчиков изображен на рис. 8.
Новые сверхскоростные приемопередатчики RocketIO GTH в кристаллах программируемой логики семейства Virtex-6 HXT скомпонованы в виде кластеров (Quad GTH), структура которых изображена на рис. 9.
Каждый кластер (Quad GTH) включает в себя четыре последовательных сверхскоростных приемопередатчика RocketIO GTH и общую систему ФАПЧ (Phase-Locked Loop, PLL). Такая организация позволяет оптимальным образом реализовать ряд протоколов передачи данных, используемых в высокоскоростных сетях. В каждом кластере GTH может использоваться отдельный опорный сигнал синхронизации. Упрощенная схема тактирования последовательных сверхскоростных приемопередатчиков RocketIO GTH в кластере показана на рис. 10.
Для быстрой подготовки HDL-описаний модулей последовательных приемопередатчиков в проекты разрабатываемых устройств и систем в составе генератора параметризиро-ванных модулей CORE Generator [17] средств проектирования серии Xilinx ISE (Integrated Software Environment / Integrated Synthesis Environment) Design Suite версии 11.3 предусмотрены соответствующие ядра. Для каждого из этих ядер предоставляется «мастер» настройки, который позволяет в диалоговом режиме указать требуемые параметры этих модулей. Формирование описаний высокоскоростных последовательных приемопередатчиков RocketIO GTX осуществляется с помощью «мастера» Virtex-6 FPGA GTX Transceiver Wizard. Для генерации описаний сверхскоростных последовательных приемопередатчиков RocketIO GTH предназначен «мастер» Virtex-6 FPGA GTH Transceiver Wizard. Более подробно процесс автоматизированной подготовки HDL-описаний модулей последовательных приемопередатчиков, используемых в кристаллах программируемой логики семейства Virtex-6 HXT, будет рассмотрен в одной из ближайших публикаций.
Приемопередатчики RocketIO GTX и RocketIO GTH, входящие в состав ПЛИС нового семейства, поддерживаются также средствами внутрикристальной отладки проектов ChipScope Pro [24, 25], начиная с версии 11.3, которые включают в себя набор соответствующих инструментов ChipScope Pro Serial I/O Toolkit.
Примеры использования ПЛИС семейства Virtex-6 HXT для реализации устройств, применяемых в составе высокоскоростных сетей Ethernet
Кристаллы программируемой логики семейства Virtex-6 HXT ориентированы, прежде всего, на реализацию различных узлов высокоскоростных сетей передачи данных. В настоящее время наряду с широким рас-
Рис. 11. Структурная схема моста между интерфейсами 100 GE и 120G Interlaken, предназначенная для реализации на базе ПЛИС семейства Virtex-6 HXT
Таблица 3. Объем ресурсов ПЛИС семейства Virtex-6 HXT,
необходимых для реализации каждого блока моста между интерфейсами 100 GE и 120G Interlaken
Функциональные блоки реализуемого устройства Ресурсы ПЛИС
Логические ячейки (Logic Cells), кбит Память, кбайт Блоки ввода/вывода IOB Сверхскоростные последовательные приемопередатчики GTH Высокоскоростные последовательные приемопередатчики GTX
Блок интерфейса 100GE MAC (10х 10GE, 2x40GE) 96 1800 0 10 0
Мост100GE-120G Interlaken 30 10 000 0 0 0
Блок интерфейса 120G Interlaken 75 576 0 0 20
Контроллер интерфейса памяти DDR3 10 0 400 0 0
Суммарный объем ресурсов ПЛИС, необходимый для реализации устройства 211 12 376 400 10 20
Полный объем ресурсов кристалла XC6VHX255T в корпусе FF1155 253 18 432 440 12 24
Объем свободных ресурсов кристалла XC6VHX255T при реализации устройства 42 6056 40 2 4
Объем ресурсов кристалла XC6VHX255T в корпусе FF1155, используемый для реализации устройства, % 83 67 90 83 83
пространением 10-гигабитного стандарта технологии Ethernet (10 GE) IEEE 802.3-2005 идет процесс активного внедрения 40-гигабитных (40 GE) и 100-гигабитных (100 GE) протоколов передачи данных. Для разработки оборудования, поддерживающего эти протоколы, необходимы соответствующие компоненты, обладающие высоким быстродействием и набором специализированных аппаратных модулей, которые реализуют различные уровни технологии Ethernet. Особенности архитектуры ПЛИС семейства Virtex-6 HXT, рассмотренные в предыдущих разделах, в совокупности с комплексом средств проектирования серии Xilinx ISE Design Suite версии 11.3 позволяют в сжатые сроки осуществлять проектирование различных устройств и систем для 40-гигабитных (40 GE) и 100-гига-битных (100 GE) сетей Ethernet.
В настоящем разделе приводятся варианты реализации различных узлов Ethernet на базе кристаллов программируемой логики семейства Virtex-6 HXT, предлагаемые специалистами фирмы Xilinx. Для каждого из этих вариантов приводится оценка необходимых ресурсов ПЛИС.
На рис. 11 представлена структурная схема моста между интерфейсами 100 GE и 120G Interlaken, предназначенная для реализации на базе ПЛИС семейства Virtex-6 HXT. Интерфейс Interlaken применяется, чаще всего, для организации высокоскоростной передачи данных между кристаллами (ПЛИС с архитектурой FPGA или ASIC, Application-Specific IC).
Приведенная структурная схема может быть реализована на базе кристалла XC6VHX255T, выпускаемого в корпусе FF1155. Основными элементами этой схемы являются: блок интерфейса 100GE (10x10GE, 2x40GE) MAC, собственно мост 100GE-120G Interlaken, блок интерфейса 120G Interlaken и контроллер интерфейса памяти DDR3. Информация об объеме ресурсов ПЛИС, необходимых для реализации каждого из этих блоков, содержится в таблице 3. В составе блока интерфейса 100GE задействованы последовательные сверхскоростные приемопе-
редатчики RocketIO GTH. Для реализации интерфейса 120G Interlaken применяются последовательные высокоскоростные приемопередатчики RocketIO GTX.
Пример использования кристаллов программируемой логики семейства Virtex-6 HXT для разработки узлов 40-гигабитных сетей передачи данных демонстрирует обобщенная структурная схема устройства, реализующего функции процессора обработки пакетов и менеджера трафика, представленная на рис. 12.
В состав данной схемы входят следующие модули: блок интерфейса 40GE MAC, процессор обработки пакетов 40G, менеджера трафика 40G и блок интерфейса 50G Interlaken. В составе блоков интерфейса 40GE и 50G Interlaken используются последовательные приемопередатчики RocketIO GTH и RocketIO GTX соответственно. Для оптимальной реализации представленного устройства, осуществляющего функции процессора обработки пакетов и менеджера трафика 40G, подходит ПЛИС XC6VHX255T в корпусе FF1155. В таблице 4 приведены сведения о количестве различных ресурсов этого кристалла, используемых для реализации каждого блока обобщенной структурной схемы, изображенной на рис. 12.
Процессор обработки пакетов и менеджер трафика, поддерживающие 100-гигабитные
протоколы передачи данных, при некоторых ограничениях могут быть реализованы на базе одного кристалла семейства Virtex-6 HXT с максимальным объемом логических и специализированных аппаратных ресурсов (XC6VHX565T). Но более эффективным является применение двух ПЛИС XC6VHX380T для раздельной реализации каждого из этих устройств. В этом случае для организации взаимодействия процессора обработки пакетов и менеджера трафика предлагается использовать открытый протокол Aurora, разработанный фирмой Xilinx для масштабируемого последовательного интерфейса [26, 27].
На рис. 13 приведена обобщенная структурная схема устройства, реализующего функции процессора обработки пакетов для 100-гигабитных сетей передачи данных, которая предназначена для выполнения на основе ПЛИС семейства Virtex-6 HXT.
Основными элементами этой схемы являются: блок интерфейса 100GE (10x10GE), собственно процессор обработки пакетов 100G, контроллеры интерфейсов памяти TCAM и QDR2, а также ядро последовательного интерфейса, поддерживающего протокол Aurora. Для организации последнего интерфейса используются последователь-
Сетевой
процессор
или
объединительная
панель
Сетевой
процессор
или
объеден и тел ьная панель
Память Модули памяти
ТСАМ SDRAM
Оптоволоконный модуль 40GE или 4x10GE
Рис. 12. Структурная схема устройства, реализующего функции процессора обработки пакетов и менеджера трафика 40G, предназначенная для реализации на базе ПЛИС семейства Virtex-6 НХТ
Оптоволокон Н Ь1 й модуль
100GE
или
т
Контроллер интерфейса памяти ТСАМ
САШ или lOxSFI 10x10.3125G 4--------
П оследовател ьные сверхскоростные приемопередатчики GTH Блок интерфейса 100GE или 10x10GE Процессор обработки пакетов 100G Ядро интерфейса Aurora Последовательные высокоскоростные приемопередатчики GTH
Контроллер интерфейса памяти QDR2
ПЛИС FPGA Virtex-6 НХТ
Aurora
20x6.25Gb/s
Менеджер
трафика
100G
ПЛИС FPGA Virtex-6 НХТ
120G Interlaken 12x10.3125G или
20x6.25G
Модули памяту QDR2
Рис. 13. Структурная схема устройства, реализующего функции процессора обработки пакетов 100G, предназначенная для реализации на базе ПЛИС семейства Virtex-6 НХТ
ные высокоскоростные приемопередатчики RocketЮ GTX. Оценки объема различных ресурсов ПЛИС XC6VHX380T, необходимых для реализации каждого блока обобщенной структурной схемы устройства, реализующего функции процессора обработки пакетов 100G, содержатся в таблице 5.
Для разработки устройства, реализующего функции менеджера трафика в 100-гигабит-ных сетях передачи данных, на основе ПЛИС семейства Virtex-6 HXT можно воспользоваться обобщенной структурной схемой, которая представлена на рис. 14. В состав этой схемы входят следующие модули: ядро последова-
тельного интерфейса, поддерживающего протокол Aurora, собственно менеджер трафика 100G, контроллеры интерфейса памяти DDR3 и QDR2, блок интерфейса 120G Interlaken. Информация об объеме ресурсов кристалла XC6VHX380T, требуемых для реализации каждого из этих блоков, содержится в таблице 6.
Таблица 4. Объем ресурсов ПЛИС семейства Virtex-6 НХТ, необходимых для реализации каждого блока устройства,
реализующего функции процессора обработки пакетов и менеджера трафика 40G
Ресурсы ПЛИС
Функциональные блоки реализуемого устройства Логические ячейки (Logic Cells), кбит Память, кбайт Блоки ввода/вывода IOB Сверхскоростные последовательные приемопередатчики GTH Высокоскоростные последовательные приемопередатчики GTX
Блок интерфейса 40GE MAC 45 416 0 4 0
Процессор обработки пакетов 40G 95 7000 100 0 0
Менеджер трафика 40G 50 7000 250 0 0
Блок интерфейса 50G Interlaken 30 288 0 0 8
Суммарный объем ресурсов ПЛИС, необходимый для реализации устройства 220 14 704 350 4 8
Полный объем ресурсов кристалла XC6VHX255T в корпусе FF1155 253 18 432 440 12 24
Объем свободных ресурсов кристалла XC6VHX255T при реализации устройства 33 3728 90 8 16
Объем ресурсов кристалла XC6VHX255T в корпусе FF1155, используемый для реализации устройства, % 86 79 79 33 33
Таблица 5. Объем ресурсов ПЛИС семейства Virtex-6 НХТ, необходимых для реализации каждого блока устройства, реализующего функции процессора обработки пакетов 100G
Функциональные блоки реализуемого устройства Ресурсы ПЛИС
Логические ячейки (Logic Cells), кбит Память, кбайт Блоки ввода/вывода IOB Сверхскоростные последовательные приемопередатчики GTH Высокоскоростные последовательные приемопередатчики GTX
Блок интерфейса 100GE MAC (или 10х 10GE MAC) 96 0 0 10 0
Процессор обработки пакетов 100G 200 20 000 0 0 0
Контроллер интерфейса памяти TCAM 10 96 84 0 0
Контроллер интерфейса памяти QDR2 10 96 100 0 0
Ядро интерфейса, реализующего протокол Aurora 7 768 0 0 20
Суммарный объем ресурсов ПЛИС, необходимый для реализации устройства 323 20 960 184 10 20
Полный объем ресурсов кристалла XC6VHX380T в корпусе FF1155 382 27 648 440 12 24
Объем свободных ресурсов кристалла XC6VHX380T при реализации устройства 59 6 688 256 4
Объем ресурсов кристалла XC6VHX380T в корпусе FF1155, используемый для реализации устройства, % 84 75 42 83 83
О ПТОВОЛОКОН н ы й модуль
100GE
или
10x10GE
Сетевой
процессор
или
объединительная
панель
CAUI
или
IOxSFI
10x10.3125G
Процессор
обработки
ПЛИС FPGA Virtex-6 НХТ
Контроллер интерфейса памяти DDR3
Последовательные высокоскоростные п ри е мопередатч и ки GTX Ядро интерфейса Aurora Менеджер трафика 100G Блок интерфейса Interlaken 120G После довател ьн ы е приемопередатчики GTX или GTH
Контроллер интерфейса памяти QDR2
т
120G Interlaken 12x10.3125G или 20x6.25G
ПЛИС FPGA Virtex-6 НХТ
Модули памяти QDR2
Рис. 14. Структурная схема устройства, реализующего функции менеджера трафика 100G, предназначенная для реализации на базе ПЛИС семейства Virtex-6 НХТ
Таблица 6. Объем ресурсов ПЛИС семейства Virtex-6 НХТ, необходимых для реализации устройства, реализующего функции менеджера трафика 100G
Функциональные блоки реализуемого устройства Ресурсы ПЛИС
Логические ячейки (Logic Cells), кбит Память, кбайт Блоки ввода/выводаIOB Сверхскоростные последовательные приемопередатчики GTH В ысокос ко рост ные последовательные приемопередатчики GTX
Ядро интерфейса, реализующего протокол Aurora 7 768 0 0 20
Менеджер трафика 100G 100 14 000 0 0 0
Контроллер интерфейса памяти DDR3 10 96 540 0 0
Контроллер интерфейса памяти QDR2 10 96 100 0 0
Блок интерфейса 120G Interlaken 60 288 0 12 0
Суммарный объем ресурсов ПЛИС, необходимый для реализации устройства 187 15 248 640 12 20
Полный объем ресурсов кристалла XC6VHX380T в корпусе FF1923 382 27 648 720 24 40
Объем свободных ресурсов кристалла XC6VHX380T при реализации устройства 195 12 400 80 12 20
Объем ресурсов кристалла XC6VHX380T в корпусе FF1923, используемый для реализации устройства, % 48 55 88 50 50
Возможные направления дальнейшего развития серии ПЛИС Virtex-6
Представленное семейство кристаллов программируемой логики Уи1ех-6 НХТ, по всей видимости, не завершает серию ПЛИС УГех-б. Если проанализировать развитие предыдущих поколений кристаллов линии УгЛех с модульной архитектурой ASMBL, то с большой степенью вероятности можно предполагать в недалеком будущем появление очередной платформы ПЛИС серии У1Лех-6, которая будет содержать новые виды специализированных аппаратных блоков. В частности, можно ожидать выпуска нового семейства кристаллов, содержащих аппаратные микропроцессорные модули, которые ориентированы на реализацию встраиваемых высокопроизводительных систем. Такое предположение основано на прослеживаемой устоявшейся стратегии фирмы ХШпх одновременного производства нескольких семейств кристаллов с архитектурой FPGA одной серии с различным целевым назначением. Данная стратегия позволяет разработчикам выбирать для реализации проектируемых устройств ПЛИС с оптимальным сочетанием логических и специализированных аппаратных ресурсов различного типа. ■
Литература
1. Кузелин М. О., Кнышев Д. А., Зотов В. Ю. Современные семейства ПЛИС фирмы Xilinx / Справочное пособие. М.: Горячая линия - Телеком, 2004.
2. Зотов В. Особенности архитектуры нового поколения высокопроизводительных ПЛИС FPGA фирмы Xilinx серии Virtex-6 // Компоненты и технологии. 2009. № 8.
3. Зотов В. Проектирование встраиваемых микропроцессорных систем на основе ПЛИС фирмы Xilinx. М.: Горячая линия - Телеком, 2006.
4. Зотов В. MicroBlaze — семейство 32-разрядных микропроцессорных ядер, реализуемых на основе ПЛИС фирмы Xilinx // Компоненты и технологии. 2003. № 9.
5. Зотов В. Система команд микропроцессорного ядра MicroBlaze // Компоненты и технологии. 2004. № 1-3.
6. Зотов В. Организация памяти микропроцессорного ядра MicroBlaze // Компоненты и технологии. 2004. № 5.
7. Зотов В. Embedded Development Kit — система проектирования встраиваемых микропроцессорных систем на основе ПЛИС серий FPGA фирмы Xilinx // Компоненты и технологии. 2004. № 4.
8. Virtex-6 Family Overview. Xilinx, 2009.
9. Virtex-6 FPGA Configuration User Guide. Xilinx, 2009.
10. Virtex-6 FPGA SelectIO Resources User Guide. Xilinx, 2009.
11. Virtex-6 FPGA Clocking Resources User Guide. Xilinx, 2009.
12. Virtex-6 FPGA Memory Resources User Guide. Xilinx, 2009.
13. Virtex-6 FPGA Configurable Logic Block User Guide. Xilinx, 2009.
14. Virtex-6 FPGA Embedded Tri-mode Ethernet MAC User Guide. Xilinx, 2009.
15. Virtex-6 FPGA DSP48E1 Slice User Guide. Xilinx, 2009.
16. Virtex-6 FPGA System Monitor User Guide. Xilinx, 2009.
17. Virtex-6 FPGA GTX Transceivers User Guide. Xilinx, 2009.
18. Virtex-6 FPGA GTH Transceivers User Guide. Xilinx, 2009.
19. Virtex-6 FPGA Data Sheet: DC and Switching Characteristics. Xilinx, 2009.
20. Зотов В. Инструментальный модуль компании Avnet для отладки проектов встраиваемых систем, разрабатываемых на базе нового семейства ПЛИС FPGA фирмы Xilinx Virtex-5 FXT // Компоненты и технологии. 2008. № 9.
21. Virtex-6 FPGA Packaging and Pinout Specifications. Xilinx, 2009.
22. Virtex-6 FPGA PCB Design Guide. Xilinx, 2009.
23. Зотов В. Проектирование цифровых устройств, реализуемых на базе ПЛИС FPGA фирмы Xilinx, с использованием средств CORE Generator // Компоненты и технологии. 2006. № 12. 2007. № 1.
24. Зотов В. Средства внутрикристальной отладки цифровых устройств и встраиваемых микропроцессорных систем, разрабатываемых на базе ПЛИС с архитектурой FPGA фирмы Xilinx — ChipScope Pro // Компоненты и технологии. 2008. № 10.
25. Зотов В. Формирование описаний компонентов для внутрикристальной отладки цифровых устройств и встраиваемых микропроцессорных систем на основе параметризированных модулей Xilinx CORE Generator Tool // Компоненты и технологии. 2008. № 11, 12. 2009. № 1.
26. LogiCORE IP Aurora 64B/66B v3.1 User Guide. Xilinx, 2009.
27. Aurora 64B/66B Protocol Specification. Xilinx, 2008.