Семейство ПЛИС Virtex-5 FXT с встроенным процессорным ядром PowerPC 440
Характеристики ПЛИС новой платформы
Virtex5 FXT последняя платформа в семействе высокопроизводительных FPGA фирмы Xilinx, выполненных с технологическими нормами 65 нм. Начиная с предыдущего поколения FPGA Xilinx использует модульную архитектуру высокопроизводительных FPGA, названную ASMBL (Advanced Silicon Modular Block), что позволило в рамках одного семейства Virtex4 выпустить сразу три платформы ПЛИС, различавшихся соотношением основных ресурсов логических ячеек, блоков цифровой обработки, памяти и специализированных модулей (процессорных ядер и высокоскоростных приемопередатчиков). Широкие функциональные возможности в приложениях коммуникации, которые предоставили аппаратные приемопередатчики, привели к тому, что в Virtex5 такие устройства были размещены и в ПЛИС без аппаратных процессорных ядер LXT и SXT. Теперь же, правда, с некоторой задержкой относительно выхода предыдущих платформ, появились устройства Virtex5 FXT, содержащие как приемопередатчики (на что указывает буква T в обозначении), так и аппаратные ядра процессора PowerPC. Характеристики этих ПЛИС приведены в таблице 1. Ячейка Virtex5 содержит четыре секции, так что для определения количества триггеров и логических генераторов необходимо умножить на 4 количество ячеек, указанное в таблице. Легко заметить, что получающиеся цифры меньше, чем величины, приведенные в обозначении ПЛИС. Это связано с тем, что Xilinx проводит оценку емкости в «стандартных ячейках», содержащих триггер и 4входовый логический генератор, тогда как в Virtex5 LUT имеют шесть входов.
Устройство | Ячеек | DSP48E | Блоков памяти |
Итого памяти, кбайт |
CMT | PPC | PCIExpress endpoint |
Ethernet MAC | Rocket IO GTX |
---|---|---|---|---|---|---|---|---|---|
XC5VFX30T | 5120 | 64 | 68 | 2448 | 2 | 1 | 1 | 4 | 8 |
XC5VFX70T | 11 200 | 128 | 148 | 5328 | 6 | 1 | 3 | 4 | 16 |
XC5VFX100T | 16 000 | 256 | 228 | 8208 | 6 | 2 | 3 | 4 | 16 |
XC5VFX130T | 20 480 | 320 | 298 | 10 728 | 6 | 2 | 3 | 6 | 20 |
XC5VFX200T | 30 720 | 384 | 456 | 16 416 | 6 | 2 | 4 | 6 | 24 |
В последней колонке приведено количество скоростных приемопередатчиков Rocket IO GTX, которые отличают данное семейство даже от других платформ Virtex5 с приемопередатчиками (LXT, SXT). В них используются модули Rocket IO GTP, способные осуществлять обмен данными со скоростями 1003750 Мбит/с, тогда как у ядер GTX возможные значения скоростей составляют 1506500 Мбит/с.
Важной частью таблицы является колонка, обозначенная как PPC. В этой колонке приведено количество процессорных ядер PowerPC 440, которые заменили уже применявшиеся в предыдущих поколениях ПЛИС Xilinx ядра PowerPC 405. Основные сравнительные характеристики этих ядер приведены в таблице 2, а структурное изображение процессорного ядра PowerPC 440 и сопутствующих элементов показано на рис. 1.
PowerPC 405 | PowerPC 440 | |
---|---|---|
Конвейер, стадий | 5 | 7, outoforder |
Тактовая частота, МГц | 450 | 550 |
Максимальная производительность, DMIPS | 700 | 1100 |
Кэш инструкций/данных | 16/16 кбайт, 2way |
32/32 кбайт, 64way |
На рис. 1 можно видеть, что обмен данными с основными накристальными устройствами происходит через устройство коммутации (crossbar). Это устройство позволяет разгрузить основную шину процессора PLB, поскольку к ней в проектах на базе ПЛИС оказываются подключенными сразу несколько устройств с большим трафиком. Например, при одновременном подключении высокоскоростной внешней памяти и контроллера Ethernet каждое из этих устройств само по себе обладает неплохими характеристиками, но их присутствие на одной и той же шине сразу снижает максимальные скорости обмена данными. Пример системы, использующей несколько скоростных интерфейсов, показан на рис. 2. На нем можно видеть, что такие требовательные к ресурсам системной шины устройства, как внешняя память, EMAC, PCIe, имеют собственные подключения к коммутатору, что позволяет перераспределять потоки данных (например, выполнять прямой доступ в память).
Ядро PowerPC 440 имеет 7уровневый конвейер и позволяет запускать исполнение двух команд одновременно (наподобие первого поколения процессоров Intel Pentium, имеющих U и Vконвейеры). Дополнительно используется технология переупорядочивания команд (outoforder execution), которая на аппаратном уровне пытается уменьшить взаимозависимость команд по данным, если это возможно. Итоговая производительность ядра оценивается в 1100 DMIPS (два ядра в старших ПЛИС дадут уже 2200 DMIPS). Подобный уровень производительности более чем достаточен для запуска современных операционных систем, и такие продукты, как uLinux, Linux, VxWorks, QNX, заняли прочное место среди тестовых примеров, предлагаемых для ПЛИС верхнего уровня. Что важно, разработчик при этом получает ОС, если и не полностью «из коробки», то, по крайней мере, с просматриваемым путем установки и запуска ее на собственной аппаратной платформе.
Отладочная плата ML507 на основе Virtex5 FXT
Для ознакомления с ПЛИС Virtex5 FXT фирма Xilinx выпустила стартовый набор ML507. Эта плата имеет тот же набор периферии, что и ML505 на базе LXT, и ML506 на базе SXT, и ту же топологию печатных проводников, что позволяет разработчику в процессе проектирования оперативно переходить к ПЛИС с другим соотношением ресурсов без необходимости заново проектировать контроллеры периферийных устройств. Практически, эти платы заменяют по своему назначению довольно популярную серию плат ML401/402/403. Внешний вид ML507 показан на рис. 3. Несмотря на то, что плата выполнена как плата расширения для PC и может быть вставлена в слот PCIExpress, возможна и автономная работа при условии подачи внешнего питания.
На плате (рис. 3) установлена микросхема XC5VFX70TFFG1136, а также следующие устройства.
- Память и средства загрузки:
- DDR2 SODIMM (256 Mбайт),
- ZBT SRAM ( 1 Mбайт),
- Linear Flash ( 32 Mбайт),
- System ACE CF technology (CompactFlash),
- Platform Flash,
- SPI Flash,
- JTAG.
- Интерфейсы на базе GTP:
- MII, GMII, RGMII и SGMII Ethernet PHY,
- краевой разъем PCI Express (x1 Endpoint),
- GTP: SFP (1000BaseX),
- GTP: SMA (дифференциальные пары RX и TX),
- GTP: SGMII,
- GTP: PCIe,
- GTP: SATA (сдвоенный хост),
- микросхема генератора тактовых сигналов для GTP.
- Прочие интерфейсы:
- разъемы для внешних тактовых сигналов (2 дифференциальные пары),
- USB (2),
- PS/2 (2) клавиатура, мышь,
- RJ45 10/100/1000 Мбит/с,
- RS232 (Male) последовательный порт,
- Audio In (2) линейный вход, микрофон,
- Audio Out (2) линейный выход, SPDIF, пьезодинамик,
- вращающийся энкодер,
- видеовход,
- видеовыход (DVI/VGA),
- однопроводные и дифференциальные разъемы общего назначения.
Плата поддержана САПР EDK 10.1 SP1, с помощью которой можно быстро создать систему на кристалле под управлением PowerPC или Microblaze. Большое внимание в версии 10.1 линейки САПР Xilinx уделено ускорению вычислений в системах на базе аппаратных процессорных ядер и софтпроцессоров. Для PowerPC доступно подключение модулей расширения системы команд с помощью ячеек ПЛИС (APU Auxiliary Processor Unit). Сопроцессор для выполнения операций с плавающей точкой наконецто прочно занял позицию среди таких устройств, и по сравнению с предыдущими версиями технические ограничения на его использование были существенно уменьшены. В частности, расширен частотный диапазон и соотношение частот процессора и системной шины, при которых FPU работоспособен. Для аппаратных приемопередатчиков существует возможность простого подключения к локальной шине процессора, и, таким образом, система на кристалле сразу получает доступ к накристальному оборудованию, в том числе под управлением языков высокого уровня. Примеры проектов, предлагаемые Xilinx для ML507, включают в себя и средства обмена данными с помощью аппаратных приемопередатчиков.
Выводы
Платформа Virtex5 FXT завершила линейку высокопроизводительных FPGA фирмы Xilinx, выполненных с технологическими нормами 65 нм. Представление на рынке всех анонсированных ранее устройств нового семейства формально открывает для Xilinx путь к освоению следующего поколения FPGA верхнего уровня, хотя следует признать, что платформа FXT несколько задержалась как относительно прочих представителей семейства Virtex5, так и в сравнении с ситуацией на рынке. С другой стороны, в последнее время Xilinx придерживается политики представления информации только об уже готовых к заказу микросхемах, и Virtex5 FXT в этом плане не является исключением. Теперь следующей важной вехой должен стать переход к технологическим нормам 45 нм, и отказ Xilinx от ранних анонсов семейств с низкой степенью готовности создает определенную интригу. Если учесть, что Virtex5 прекрасно отразили принципиальные улучшения, внесенные в микроэлектронику 65нм техпроцессом, можно только догадываться, что ожидает разработчиков аппаратуры на базе ПЛИС от возможного следующего поколения продуктов Xilinx.