УДК 004.27; 004.274; 004.315
А.В. ПАЛАГИН, Ю.С. ЯКОВЛЕВ, Е.В. ЕЛИСЕЕВА
ОСОБЕННОСТИ ПОДХОДА К ВЫБОРУ ПЛИС ДЛЯ ПРОЕКТИРОВАНИЯ Р1М-СИСТЕМ
Анотація. Розглянуто узагальнену структурну схему, основні властивості ПЛІС як елементної бази для побудови PIM-систем, а також особливості структурної організації PIM-систем, на підставі чого виділено чинники, що визначають придатність PIM-системи для реалізації на ПЛІС. Сформульовано особливості вибору сімейства і типу ПЛІС та запропоновано математичне відображення умов вибору ПЛІС як елементної бази для побудови PIM-систем.
Ключові слова: PIM-системи, ПЛІС, елементна база.
Аннотация. Рассмотрены обобщенная структурная схема, основные свойства ПЛИС как элементной базы для построения PIM-систем, а также особенности структурной организации PIM-систем, на основании чего выделены факторы, определяющие пригодность PIM-системы для реализации на ПЛИС. Сформулированы особенности выбора семейства и типа ПЛИС, предложено математическое отображение условий выбора ПЛИС в качестве элементной базы для построения PIM-систем.
Ключевые слова: PIM-системы, ПЛИС, элементная база.
Abstract. The generalized structural diagram, basic PLIS properties as an element base for the PIM-systems construction are considered. Peculiarities of the PIM-systems ’ structural organization are regarded. On this base the factors determining PIM-systems availability for realization on PLIS were highlighted. The peculiarities of family choice and PLIS type are formulated. The mathematical representation ofPLIS choice terms as an element base for the PIM-systems construction is offered. Keywords: PIM-systems, PLIS, element base.
1. Введение
Потребности в дальнейшем повышении степени интеграции привели к разработке СБИС класса SоC (Systems оп Chip), т.е. «систем на кристалле». Сущность такого подхода заключается в размещении на одном кристалле связанных между собой микропроцессоров и массива вентилей программируемой логической интегральной схемы (ПЛИС). Фирма Atmel в 1999 г. выпустила первое семейство СБИС такого типа с названием FPSLIC (Field Programmable System Level Integration Circuits), что в переводе означает: программируемые схемы системного уровня интеграции [1].
По данным исследований, лидерами рынка ПЛИС являются компании Xilinx, Altera и Lattice. Компании Actel, Atmel, QuckLogic, AMIS и NEC стоят на втором месте. Xilinx в настоящее время производит следующие микросхемы ПЛИС семейства FPGA (Field Programmable Gate Array): Virtex-7, Virtex-6; Virtex-5; Virtex-4; Spartan-6; Spartan-3 и др. Xilinx также выпускает микросхемы ПЛИС семейства CPLD (Complex Programmable Logic Device): CoolRunner-II; CoolRunner XPLA3; XC9500; XC9500XL; XC9500XV и др.
Фирма Altera производит как FPGA, так и CPLD. К микросхемам FPGA фирмы Altera относятся такие семейства микросхем ПЛИС: Stratix V (E, GX, GS, GT); Stratix IV (E, GX, GT); Stratix III (L and E); Stratix II (and GX); Stratix (and GX); Arria V (GX and GT); Arria II (GX and GZ); Arria GX; Cyclone V (E, GX, GT); Cyclone IV (E and GX); Cyclone III (and LS); Cyclone II; Cyclone и др.
К микросхемам CPLD фирмы Altera относятся следующие ПЛИС: MAX V; MAX II (and G, Z); MAX 3000A, MAX7000, MAX9000, FPGA семейств FLEX10K, FLEX8000, FLEX6000 и др.
© Палагин А.В., Яковлев Ю.С., Елисеева Е.В., 2012 ISSN 1028-9763. Математичні машини і системи, 2012, № 3
Микросхемы фирмы ЛС;е1 отличаются надежностью работы в специальных условиях (в т.ч. в космосе). Прожигаемые ПЛИС готовы к работе сразу при включении питания, т.е. не требуется время на загрузку конфигурации. Но для таких микросхем ПЛИС нужны специальные программаторы и, кроме того, если прожиг пройдет неудачно, микросхему приходится выбрасывать.
ПЛИС каждой фирмы требуют применения своих программных пакетов, степень доступности которых различна. Некоторые фирмы предоставляют бесплатные версии своих программных продуктов с определенными ограничениями их возможностей.
Поэтому ПЛИС уже давно стали весьма распространенной и привычной элементной базой для разработчиков цифровых устройств. Особенно актуальным является применение ПЛИС при создании новых изделий в странах, где отсутствует необходимый для этого уровень интегральной технологии, так как разработчикам с помощью ПЛИС представляется единственный путь проверки своих новых идей и инженерно-технических решений [2, 3]. Учитывая имеющиеся на настоящий момент времени параметры ПЛИС и высокие темпы развития технологии их создания, ПЛИС различных фирм-производителей стали использовать и в серийных изделиях, тем более что эти фирмы предоставляют разработчикам для проектирования на ПЛИС необходимое программное обеспечение. Особенно привлекает в ПЛИС их замечательное свойство - возможность настройки на решение определенных классов задач с целью оптимизации их конкретных параметров [2].
2. Основные свойства ПЛИС как элементной базы для построения Р1М-систем
Структурную схему ПЛИС рассмотрим на примере ПЛИС серии У1г!ех фирмы ХШих, которая приведена на рис. 1 [4].
Кристалл (рис. 1) содержит конфигурируемые логические блоки
(КЛБ), программируемые блоки ввода-вывода
(БВВ) и модули автоподстройки задержек (БЬЬ). Все соединения между
элементами (КЛБ, БВВ) осуществляются с помощью набора иерархических высокоскоростных программируемых трассировочных ресурсов. Соединение между КЛБ осуществляется с помощью главных трассировочных матриц - ГТМ,
Рис. 1. Обобщенная структурная схема ПЛИС к°т°рые с°держат матри-
цы программируемых
транзисторных двунаправленных переключателей, расположенных на пересечении горизонтальных и вертикальных линий связи. Каждый КЛБ окружен локальными линиями связи (УегеаВ1оскТМ), которые позволяют осуществлять соединения с матрицей ГТМ. Интерфейс ввода-вывода УегеаШ^ создает дополнительные трассировочные ресурсы по периферии кристалла.
Модули автоподстройки задержек (БЬЬ)
Блоки
ввода-
вывода
(БВВ)
Блоки приемопередатчиков (Rocket IO)
Блоки
ввода-
вывода
(БВВ)
Модули автоподстройки задержек (БЬЬ)
БВВ
БВВ
Трассировочные ресурсы (кольцевой интерфейс Versa Ring)
БВВ
БВВ
БВВ
Блок умножителей | Блок памяти
КЛБ Б лок КЛБ Блок КЛБ
КЛБ процессора (Power PC405) КЛБ процессора (Power PC405) КЛБ
КЛБ КЛБ КЛБ
КЛБ Контроллеры КЛБ Контроллеры MAC (Ethernet) КЛБ
КЛБ MAC (Ethernet) КЛБ КЛБ
Блок умножителей Блок памяти
Трассировочные ресурсы (кольцевой интерфейс Versa Ring)
БВВ
БВВ
БВВ
БВВ
БВВ
Модули автоподстройки задержек (БЬЬ)
Блоки Блоки приемо- Блоки
ввода- передатчиков ввода-
вывода (Rocket IO) вывода
(БВВ) (БВВ)
Модули автоподстройки задержек (БЬЬ)
По сравнению с дискретными логическими схемами ПЛИС как элементная база для построения PIM-систем (Processor-in-Memory) имеет ряд преимуществ, главные из которых следующие [5]:
• простота внесения изменений в логическую схему и возможность модификации проектов (реконфигурации устройств) для их настройки на класс решаемых задач;
• меньшее по сравнению с дискретными системами излучение ВЧ-помех в окружающее пространство;
• разнообразие в выборе напряжений питания и параметров сигналов ввода/вывода, а также режимов снижения мощности, что особенно важно для портативной аппаратуры с автономным питанием;
• наличие разнообразных эффективных программных средств автоматизированного проектирования, малое время проектирования и отладки проектов, а также выхода продукции на рынок;
• разнообразие конструктивного исполнения, поскольку обычно одни и те же кристаллы поставляются в разных корпусах;
• постоянная тенденция снижения стоимости, обусловленная массовым производством и высоким процентом выхода годных микросхем вследствие их достаточно регулярной структуры;
В табл. 1 отображены сравнительные характеристики наиболее популярных в настоящее время микросхем ПЛИС серии Virtex [6, 7-12]. При этом, если сравнивать в один зафиксированный период времени характеристики наиболее доступных представителей семейств ПЛИС фирм Altera и Actel по отношению к параметрам ПЛИС Virtex 4FX фирмы Xilinx, то получим следующую картину, которая отображена в табл. 2. Согласно этой таблице, по основным параметрам ПЛИС фирм Xilinx и Altera близки, однако объем встроенной памяти ПЛИС Virtex 4FX почти в два раза превосходит объем встроенной памяти соответствующей ПЛИС фирмы Altera. При этом функциональные возможности ПЛИС Virtex 4FX явно превосходят ПЛИС StratixII GX фирмы Altera за счет использования на кристалле дополнительных блоков: двух процессоров PowerPC, RoccketIO, DSP 192 (против DSP 96 ф. Altera) и EMAC 4. Кроме того, более чем в два раза в ПЛИС Virtex4FX увеличено количество блоков синхронизации, однако количество блоков умножителей уменьшено на 60 единиц, что не столь существенно, так как их функции восполняют процессорные элементы.
Что касается ПЛИС ProASICCE ф. Actel, то использование технологии соединений путем прожигания металлизированных перемычек резко снизило реализацию на кристалле активных логических элементов и элементов памяти.
Однако это естественная цена за приобретение высокой надежности и радиационной стойкости, что является преимуществом для таких микросхем перед другими типами ПЛИС других фирм-производителей, если возникает необходимость создания с применением ПЛИС-систем, работающих в жестких условиях эксплуатации, а также систем с повышенными требованиями к надежности и достоверности обработки информации.
Примерно аналогичная ситуация возникает и для последних моделей ПЛИС, выпускаемых в настоящее время этими фирмами.
Таблица 1. Сравнительные характеристики ПЛИС серии Virtex
Тип ресурсов ПЛИС Тип кристалла
Virtex-4 Virtex-5 Virtex-6 Virtex-7
4VFX140 XC5VFX200T XC6VHX565T XC7V2000T
Количество секций (Slices) - 30 720 88 560 305 400
Общее число триггеров CLB - 122 880 708 480 2 443 200
Число логических ячеек (Logic Cells) 142 128 196 608 566 784 1 954 560
Объем распределенной памяти (1К = 1024 бит) 987K 2280 K 6360К 21550K
Количество модулей блочной памяти Block RAM емкостью 36 Кбит, по 18 Кбит каждый 552 456 912 1292
Объем блочной памяти Block RAM (1К = 1024 бит) 9 936К 16 416 K 32832К 46512K
Количество блоков управления синхронизацией (Clock Management Tiles, CMT) 20 12 9 24
Число модулей управления синхронизацией (Mixed-Mode Clock Managers, MMCM) - 6 18 24
Число аппаратных секций DSP48E1 микропроцессорных блоков PowerPC 440 PowerPC405 2 384 2 864 2160
Число аппаратных модулей PCI Express 4 4 4
Количество аппаратных блоков 10/100/1000 Mбит/с Ethernet MAC 4 8 4 1
Число высокоскоростных последовательных приемопередатчиков RocketIO GTX - 24 48 36
Количество аналого-цифровых блоков XADC - - - 1
Количество банков ввода/вывода 448 27 18
Максимальное число пользовательских выводов 960 960 720 1200
Максимальное число дифференциальных пар выводов 896 480 360 576
Объем конфигурационной памяти, Мбит 50, 900 70,9 153,2 419,1
Максимальное число модулей: DSP, DCM, PMCD 192 20 8 - - -
Таблица 2. Сравнительные характеристики представителей семейств ПЛИС фирм Altera и Actel по отношению к характеристикам ПЛИС Virtex 4FX фирмы Xilinx_____________________
Семейство ПЛИС Макси- мальная тактовая частота, МГц Кол-во логических 4-входовых LUT Объем встроенной памяти, Кбит Кол-во линий ввода- вывода Кол-во блоков синхронизации на кристалле Кол-во блоков умножи- телей Кол-во дополнительных блоков
Ф. Xilinx, Virtex 4FX 1200 126,336 9,936 896 20DCM 192 2 Power PC, Roccket IO, DSP 192, EMAC 4
Ф. Altera StratixII GX 1300 137,842 5,857 734 8PLL 252 DSP 96
Ф. Actel, ProASICCE 700 7,624 504 616 6CCC Нет Пользователь флэш ПЗУ (1 Кбит)
3. Факторы, определяющие пригодность PIM-системы для реализации на ПЛИС
PIM-система по своим особенностям архитектурно-структурной организации [13, 14] пригодна для реализации на ПЛИС, так как состав компонентов ПЛИС и их назначение фактически совпадают с требованиями со стороны PIM-системы. В частности, PIM-система (рис. 2) имеет ведущий процессор (ВП), в качестве которого может быть использован встроенный на кристалле ПЛИС стандартный процессор, например, типа PowerPC. PIM-система также имеет множество усеченных процессоров (процессорных ядер (ПЯ)) и логических блоков, которые можно сконфигурировать, используя большое количество логических ячеек, регистров, умножителей и других компонентов, размещенных на ПЛИС. При этом несколько десятков (и даже сотен) умножителей в состоянии распараллелить обработку входного потока информации таким образом, что на долю стандартного процессора остаются только операции сбора данных и общего управления процессом. При этом, так как ПЯ ориентированы на реализацию массовых, но весьма простых операций, то для создания ПЯ могут быть сконфигурированы даже одноразрядные средства обработки. Речь идет не просто о размещении на кристалле дополнительного цифрового устройства, обмен с которым мог бы вестись путем его отображения на адресное пространство PowerPC. В составе процессорного блока часто используют специальный контроллер конфигурируемых сопроцессоров - APU (Auxiliary Processor Unit) [15], который активно участвует в процессе выполнения очередной команды. Подобные конфигурируемые сопроцессоры называются также Fabric Coprocessor Modules (FCM). В результате, после выполнения основной работы над матрицей логических ячеек и реализации с их помощью устройств, способных разгрузить процессор, дальнейшая работа может быть переложена на прикладного программиста, который, не вдаваясь в технические подробности, может рассматривать имеющуюся у него аппаратную платформу как PowerPC с некоторыми дополнительными командами.
іХОСТ - машина I
Массив банков памяти .
Массив ПЯ
К шине (PCI)
Ж
1 -й
Rn I I Rn
Блок обработки управляющего ____________пакета___________
L.FI^UJ
4F
ККнтроллер управления чипом
О
ш □ і і
t _. О . О I'
I О : О : О и
-_-_-_С.ЄЛ.ЄК1РР.Дьібрр_а__ВП___. |____________Селектрр_выбрраПЯ _
Селектор выбора распределенных на ПЛИС блоков па_____________мяти_______________
Селектор выбора слова из
Интерфейс загрузки ППЗУ 1
Интерфейс диагностики и отладки Контроллер связи с Интернетом
Интерфейс ввода-вывода данных Контроллер для связи с внешней памятью
т
К внешним устройствам
т
К дополнительной памяти
К Интернету
Обозначения: ВП - ведущий процессор чипа; КЭШ - память типа КЭШ; ПЯ - процессорные ядра, подключенные к банкам памяти; ППЗУ - полупостоянное ЗУ загрузки
Рис. 2. Состав компонентов на одном кристалле, отражающий особенности организации Р1М-системы при современном уровне интегральной технологии
Размещенная на ПЛИС достаточно объемная коммутационная среда позволяет реализовать для PIM-системы коммутационные блоки необходимой структуры (рис. 2): селектор выбора ведущего процессора (ВП), селектор выбора ПЯ и селектор выбора слова из считанной линейки слов. Именно с помощью этих селекторов выполняют настройку структуры и ресурсов PIM-системы на класс решаемых задач или на конкретную задачу. Кроме того, PIM-система содержит множество распределенных блоков памяти, в качестве которых могут быть использованы находящиеся на ПЛИС соответствующие распределенные блоки памяти, подключение которых к соответствующим ВП и ПЯ также выполняют с помощью соответствующего коммутационного поля, размещенного на кристалле ПЛИС.
Большинство ПЛИС с процессорами содержат также и модули контроллеров Ethernet. Кроме того, на базе логических ячеек можно создать контроллер внешней памяти практически любого типа (включая SDRAM, DDR, DDR-II и многие другие). Сочетание такого процессора, как PowerPC, сетевого контроллера и контроллера внешней памяти, позволяет сконструировать на ПЛИС однокристальную функционально законченную PIM-систему с высоким уровнем параллелизма обработки информации.
4. Об особенностях выбора ПЛИС для проектирования PIM-систем
В соответствии с вышеизложенным при выборе семейства и типа ПЛИС для проектирования PIM-системы целесообразно, прежде всего, руководствоваться следующими соображениями общего характера: насколько имеющиеся на кристалле ПЛИС множество компонентов Qn или возможности создания компонентов Q*n соответствуют компонентам Qp, из которых может быть построена архитектурно-структурная организация PIM-системы Wp с её особенностями, отличающими её от классической компьютерной системы (КС) и обеспечивающими по сравнению с ней более высокие технические характеристики. Кроме того, процесс реконфигурации PIM-системы с целью настройки её архитектуры Wp на алгоритм A решаемой задачи путем выбора с помощью средств реконфигурации Rp соответствующих аппаратных q с Qp и программных p с P ресурсов должен обеспечиваться компонентами реконфигурации Rп за счет создания структурных единиц к программируемых связей коммутационной среды к с KП (рис. 1, рис. 2).
Таким образом, имеющийся аппаратный ресурс ПЛИС можно определить как
Qs = Q uQ%) + *п + Kп ,
а используемый при этом аппаратный ресурс, из которого строится PIM-система, соответственно можно представить в виде:
QH = Qf + Rp + q + к .
Тогда коэффициент использования ресурсов ПЛИС, на которой размещают проектируемую компьютерную систему, может быть выражен отношением
D = qh ! qs (1)
Естественно, что параметр D для разных проектов не будет одинаковым, и в большинстве случаев он редко достигает значений 0,7 - 0,9. Системы типа PIM с этой точки зрения имеют хорошие показатели, поскольку, с одной стороны, архитектура PIM- системы близка к регулярной, и, с другой стороны, активные компоненты ПЛИС при построении распределенной системы этого класса практически используются полностью, так же, как и коммутационная среда, на основе которой строятся средства реконфигурации. В
D
1,0. 0,8 0,6 0,4 0,2,
П1 ", П3 П4 П5 "б
общем случае, если расположить различные проекты по возрастанию коэффициента О, то, согласно (1), получим примерный график значений О для разных типов проектов, как показано на рис. 3.
На рис. 3 можно условно выделить проект П5 - реализация на ПЛИС РГМ-системы
с коэффициентом использования О кристалла ПЛИС примерно на 75 %.
Кроме того, при выборе ПЛИС следует также оценить основные параметры и системные особенности S, характерные для каждой фирмы-производителя ПЛИС, которые можно сгруппировать по следующим категориям: функционально-технические, технологические и общетехнические.
К первой категории могут быть отнесены такие параметры, как количество логических вентилей (логическая емкость); количество встроенных блоков процессоров и при необходимости аналого-цифровых преобразователей на кристалле; наличие встроенных блоков умножителей; количество внутренних блочных ОЗУ; количество и типы внутренних буферов с возможностью переключения в высокоомное состояние для организации системных двунаправленных шин; количество глобальных линий с низкими задержками распространения сигнала; наличие распределённого ОЗУ, реализованного, например, посредством тех же ЬИТ-таблиц; наличие высокоскоростных трансиверов; наличие функций индивидуального контроля высокоомного состояния и времени нарастания фронта выходного сигнала по каждому внешнему выводу; наличие функций общего сброса/установки всех триггеров ПЛИС; наличие функций контроля и корректировки информации при сбоях и отказах и др.
Ко второй категории относят такие параметры, как быстродействие, надежность, номенклатура и значения напряжения источников питания, емкость памяти различных типов и др. (табл. 1).
К третьей категории относятся параметры, определяемые предметной областью и условиями эксплуатации разрабатываемого изделия. При этом принимаются во внимание возможность удовлетворения со стороны РГМ-системы на ПЛИС общих требований из набора параметров Т : рабочий диапазон температур, стойкость к ионизирующим излучениям, стоимость средств разработки, включающая стоимость программного обеспечения и стоимость аппаратных средств отладки, стоимость оборудования для программирования ПЛИС или конфигурационных ПЗУ, наличие методической и технической поддержек, наличие и надежность поставщиков микросхем и непосредственно их стоимость и др.
Таким образом, математическое отображение О условий выбора ПЛИС для построения архитектуры РГМ-системы можно представить в следующем виде:
12 "з 114 "5 "6 Проекты "
Рис. 3. Значения коэффициентов использования ресурсов ПЛИС для различных проектов систем обработки информации
о={(дп, а%): ,
/(0Р) ^ Жр,(Яп : Кп ),
/ ( Кп ) ^ Яр,
/(Яр сЖр)^А)\^т,
что можно трактовать таким образом: компоненты, размещенные на кристалле ПЛИС QJ
П
или при необходимости скомпонованные Q *П, должны быть отображены через компо
ненты PIM-системы, действия (компоновка) над которыми f(Qp) приводят к адекватной архитектурно-структурной организации PIM-системы Wp. При этом среда ЯП реконфигурации ПЛИС должна иметь свойства быть отображенной через её компоненты реконфигурации KП, действия над которыми f (KП ) приводят к адекватным компонентам реконфигурации PIM-системы Rp, которые, являясь уже составной частью архитектурноструктурной организации PIM-системы Wp на ПЛИС, обеспечивают её адекватность
структуре алгоритма A решаемой пользователем задачи при удовлетворении требований к значениям наборов параметров S и T .
Дополнительным фактором при выборе ПЛИС конкретных фирм - производителей является наличие достаточно развитых открытых версий САПР, которые предоставляют эти фирмы, с полным набором документации по архитектуре и применению ПЛИС. Эти САПР должны быть ориентированы на создание систем на кристалле (SoC), на котором размещен один или несколько аппаратных (hard) процессоров. Кроме того, немаловажным фактором является возможность программирования в системе непосредственно на плате, а также наличие опубликованной схемы загрузочного кабеля для программирования и загрузки конфигурации устройств. Следует отметить, что новые конфигурационные ПЗУ допускают программирование с помощью этого устройства, тем самым отпадает нужда в программаторе, что, естественно, снижает стоимость владения технологией.
Целесообразно отметить, что совместное использование на одном кристалле стандартного процессора и матрицы логических ячеек способно не только обеспечить высокую производительность, но и ускорить процесс разработки за счет представления программируемых устройств ПЛИС как особого вида сопроцессоров, подключаемых к PowerPC и расширяющих его возможности. Однако, если конфигурируемые на кристалле процессоры (софт-процессоры) можно видоизменять и перезагружать практически неограниченно, то с аппаратными процессорами так поступать нельзя, а, значит, реализуемый процессор должен иметь достаточный набор функций и высокие значения параметров, чтобы по меньшей мере не устареть морально в течение активного использования в разработках этого семейства ПЛИС. В настоящее время практически все производители ПЛИС предлагают продукцию с аппаратно реализованными процессорными схемами.
Реализация всех компонентов цифровой системы на одном кристалле (в числе прочего) существенно снижает затраты на достижение требуемых характеристик проекта, работающего на высокой тактовой частоте. Снижение затрат происходит как благодаря тому, что все коррекции схемы происходят за счет перепрограммирования кристалла, так и благодаря более короткому циклу внесения изменений в ПЛИС по сравнению с повторным изготовлением печатной платы. В условиях экспериментальных производств и при выпуске небольших партий изделий данное качество является весьма ценным. Кроме того, ориентация современных САПР ПЛИС на использование языков описания аппаратуры часто делает возможным перенос проекта на новое семейство ПЛИС путем простой смены названия микросхемы в настройках проекта, так как языки описания аппаратуры достаточно хорошо приспособлены к переносимому стилю разработки между отдельными семействами ПЛИС. Поэтому освоение нового семейства ПЛИС должно происходить автоматически, по мере появления этих семейств на рынке. Результатом станет очередное снижение цены выпускаемых изделий наряду с достижением более высоких технических характеристик. Очевидно, что сказанное в первую очередь относится к выбору аппаратной платформы для реализации «систем-на-кристалле».
Кроме того, программируемые соединения, выполненные на кристалле ПЛИС, хотя и обладают несколько большими задержками по сравнению с металлическими соединениями микросхем ASIC, однако они более устойчивы к помехам и существенно проще в
обращении для разработчика, чем печатные проводники. Поэтому использование ПЛИС для построения одночипового решения позволяет относительно легко добиться устойчивой работы системы на высоких тактовых частотах. Сюда же можно отнести возможность простой организации шин с большой разрядностью, в которых целостность сигналов автоматически обеспечивается САПР при трассировке проекта [13].
Выбрать нужную микросхему ПЛИС можно с помощью таблиц параметров, которые можно взять из Интернета, обращаясь непосредственно на сайты фирм-
производителей, или через поисковые системы по ключевым словам: “выбор ПЛИС ф. Xilinx”, “выбор ПЛИС ф. Altera”, “выбор ПЛИС ф. Actel” и т.д. для других фирм-производителей.
Проектирование PIM-системы на ПЛИС - это отдельная проблема, которую лучше всего рассматривать применительно к конкретному проектируемому изделию. Здесь мы
ограничимся ссылкой [16] , где рассмотрено инструментальное средство проектирования для ПЛИС Xilinx с аппаратно реализованными процессорами типа PowerPC на кристалле. Это базовая САПР Xilinx Platform Studio (XPS), которая позволяет объединить процесс разработки программного и аппаратного обеспечения, сформировав в итоге файл конфигурации ПЛИС, содержащий как описание аппаратуры, так и данные для инициализации блочной памяти. Для старта системы достаточно загрузить конфигурацию ПЛИС. При этом файл конфигурации оборудования и образ памяти процессора объединяются утилитой, которая позволяет также заменять только данные для инициализации блочной памяти, без необходимости повторной трансляции всего проекта, что весьма полезно при отладке программного обеспечения, когда аппаратная часть системы уже не подвергается изменениям.
Для «быстрого старта» в области систем на базе PowerPC можно использовать предоставляемый ПЛИС Virtex режим UltraController, который позволяет рассматривать блоки КЭШ-памяти как обычную память процессора.
Следует помнить, что программирование вычислительных систем на ПЛИС отличается от программирования систем традиционной архитектуры и его можно условно разделить на две составляющие: программирование структурное, которое создает необходимые вычислительные структуры в поле логических ячеек ПЛИС, и программирование процедурное - программирование в традиционном смысле, заключающееся в организации вычислительного процесса в ПЛИС. При этом программирование вычислительных структур вызывает у пользователей наибольшие трудности. Информация об отладочных платах для ПЛИС, в составе которых имеются процессоры, доступна по адресу
http://www.xilinx.com/products/devboards/index.htm.
5. Выводы
Основным свойством ПЛИС, привлекающим разработчиков, является большое количество программируемых ресурсов, которые позволяют организовать параллельные вычислительные системы, производительность которых в итоге превышает производительность процессоров, выполненных на обычных БИС типа ASIC, аналогичных по сложности и цене. Поэтому основными критериями выбора ПЛИС для PIM-системы является возможность реализации на кристалле ПЛИС структурных компонентов PIM-системы. При этом весьма важным является возможность построения на ПЛИС структуры, адекватной структуре PIM-системы, а также возможность обеспечения со стороны технологий создания ПЛИС требуемых параметров по производительности, емкости памяти, надежности и др. Наличие на кристалле ПЛИС необходимых компонентов и средств реконфигурации позволяет создавать PIM-системы, структура которых адекватна структуре решаемой задачи, что обеспечивает высокую эффективность вычислений и близкий к линейному рост производительности при наращивании вычислительного ресурса. Это, в свою очередь, обеспечи-
вает ускорение процесса разработки за счет представления программируемых устройств ПЛИС как особого вида сопроцессоров, подключаемых к PowerPC и расширяющих его возможности.
Исходя из перечисленных свойств PIM-системы и адекватного отображения её компонентов на ПЛИС, можно сделать вывод, что PIM-системы на ПЛИС целесообразнее всего рассматривать в задачах, ориентированных на однообразную интенсивную обработку потока данных, преимущественно параллельную или многоканальную, с массовым обращением к памяти. Причем для решения этих задач применение микросхем ASIC является нецелесообразным, так как при этом не удается удовлетворить набор требований к отдельным параметрам системы в целом.
СПИСОК ЛИТЕРАТУРЫ
1. Поречный В. Применение ПЛИС в цифровой схемотехнике [Электронный ресурс] / В. Пореч-ный. - Режим доступа: http://vkopilke .narod.ru/pls.html.
2. Палагин А.В. Реконфигурируемые вычислительные системы: Основы и приложения / А.В. Пала-гин, В.Н. Опанасенко. - К.: Просвіта, 2006. - 2S0 с.
3. Перекрест А. Обзор современных ПЛИС и САПР фирмы Xilinx [Электронный ресурс] / А. Перекрест // Компоненты и технологии. - 2006. - № 3. - Режим доступа: http: //www .w3.org/ 1999/xhtml.
4. ПЛИС с архитектурой FPGA семейства VirtexTM (2.5В) [Электронный ресурс]. - Режим доступа: http://masters.donntu.edu.ua/2005/fvti/skoropad/library/virtex rus.pdf.
5. Стешенко В. Тенденции и перспективы развития ПЛИС и их применение при проектировании аппаратуры ЦОС [Электронный ресурс] / В. Стешенко, С. Шипулин, В. Храпов. - Режим доступа: http://www.kit-e.ru/articles/dsp/2000 0S 50.php.
6. Тарасов И. Сравнительный анализ архитектуры основных семейств ПЛИС FPGA фирмы Xilinx
[Электронный ресурс] / И. Тарасов. - Режим доступа: http://www.kit-e .ru/articles/plis/
2005 5 11S.php.
7. Сложные программируемые логические схемы CPLD [Электронный ресурс]. - Режим доступа: http://rudocs.exdat.com/docs/index-S372.html?page=2#413207.
8. Кузелин М. Современные ПЛИС фирмы Xilinx: серия Virtex [Электронный ресурс] / М. Кузелин. - Режим доступа: http://www.radiomaster.net/load/07-20/index.html.
9. Virtex 5 [Электронный ресурс]. - Режим доступа: http://www.kit-e.ru/articles/plis/2006 9 7S.php.
10. Зотов В. Особенности архитектуры нового поколения высокопроизводительных ПЛИС FPGA
фирмы Xilinx серии Virtex-6 [Электронный ресурс] / В. Зотов. - Режим доступа:
http://www.kit-e.ru/assets/files/pdf/2009 0S 78.pdf.
11. Зотов В. Новое семейство высокопроизводительных ПЛИС с архитектурой FPGA фирмы Xilinx Virtex-6 HXT [Электронный ресурс] / В. Зотов. - Режим доступа: http://www.kit-e .ru/articles/plis/ 2010 1 56.php.
12. Зотов В. Особенности архитектуры нового поколения ПЛИС с архитектурой FPGA фирмы Xilinx [Электронный ресурс] / В. Зотов. - Режим доступа: http://www.kit-e.ru/articles/plis/ 2010 12 17.php.
13. Яковлев Ю.С. Однокристальные компьютерные системы высокой производительности. Особенности архитектурно-структурной организации и внутренних процессов / Ю.С. Яковлев. - Винница: ВНТУ, 2009. - 294 с.
14. Тарасов И. Системы на кристалле на базе ПЛИС FPGA Xilinx со встроенными процессорами PowerPC [Электронный ресурс] / И. Тарасов. - Ч. 1. - Режим доступа: http://www.kit-e.ru/articles/ plis/2005 7 62.php.
15. Тарасов И. Системы на кристалле на базе ПЛИС FPGA Xilinx со встроенными процессорами PowerPC [Электронный ресурс] / И. Тарасов. - Ч. 2. - Режим доступа: http://www.kit-e.ru/ articles/plis/2005 S S2.php.
16. Тарасов И. Системы на кристалле на базе ПЛИС FPGA Xilinx с встроенными процессорами PowerPC [Электронный ресурс] / И. Тарасов. - Ч. 3. - Режим доступа: http://www.kit-e.ru/ articles/plis/2005 9 92.php.
Стаття надійшла до редакції 05.07.2012