neironne_seti_i_neirokompjuter (1085713), страница 25
Текст из файла (страница 25)
5.3. Пример реализации нейрокомпьютера на основе ПЦОС TMS320C4xПервоначальная загрузка осуществляется по Host-интерфейсу или полинкам. Управляющий интерфейс любого матричного ПЦОС позволяетуправлять процессорным сбросом и прерываниями, его идентификационнымномером и т.п.Такая архитектура нейрокомпьютеров обеспечивает выполнениеопераций ЦОС в реальном времени, ускорение векторных вычислений,136PDF created with pdfFactory trial version www.pdffactory.comвозможностьреализациинейросетевыхалгоритмовсвысокимпараллелизмом выполнения векторных и матричных операций.Структурная схема нейрокомпьютера на основе ПЦОС TMS320C4xпредставлена на рис.
5.3. Несколько ПЦОС, входящих в структурунейрокомпьютера, образуют распределенную вычислительную структуру изпроцессорных модулей, соединенных между собой высокоскоростнымипортами. Данный вариант нейрокомпьютера может быть реализован сиспользованием ПЦОС в количестве от двух до восьми.При использовании двух параллельных 32-разрядных ПЦОСTMS320C40 обмен информацией при реализации нейросетевых алгоритмовосуществляется с помощью шести связанных портов с пропускнойспособностью в 30 МБайт/c и каналов ПДП каждого из ПЦОС.
Поддерживаяпараллельную независимую работу, подсистемы ПДП и ПЦОСобеспечивают параллельный обмен информацией со скоростями до 560Мб/c. При помощи высокоскоростных портов возможна реализация такихархитектур, как кольца, иерархические деревья, гиперкуб и т.п. Каждая излокальных шин TMS320C40 обеспечивает обмен информации на скоростяхдо 120 Мбайт/с.Процессорные модули функционируют независимо и принеобходимости объединяются посредством связанных портов. Функцииобмена, управления процессорными модулями, прерываниями и каналамиDMA реализуют ПЛИС, например фирмы Xilinx.
Применение внейрокомпьютерах динамических реконфигурируемых структур (нейроннойсети со структурной адаптацией) и использование современных ПЛИСсемейств хС2ххх-хС4ххх (фирмы Xilinx) или аналогичных, требуетминимизации времени на реконфигурацию ПЛИС, которые чаще всегопрограммируются в режимах Master Serial и Peripherial. Основнойнедостаток при использовании данных режимов перепрограммированиязаключается в зависимости процесса переконфигурации ПЛИС отвстроенного тактового генератора. Минимальные потери времени можнополучить при проведении переконфигурации ПЛИС в режиме Slave Serial, вкотором внутренний тактовый генератор отключен, а синхронизацияосуществляется посредством внешних синхросигналов. РеконфигураторПЛИС выполняется в виде специализированной микросхемы (например,XC2018-84pin-50MHz, XC3020-68pin-50MHz).Построение нейрокомпьютеров на базе ПЛИС с одной стороныпозволяет гибко реализовать различные нейросетевые парадигмы, а с другой– сопряжено с большими проблемами разводки всех необходимыхсоединений.
Выпускаемые в настоящее время ПЛИС имеют различныефункциональные возможности (с числом вентилей от 5 до 100 тысяч).Нейрокомпьютеры на базе ПЛИС, как правило, считаются гибкими,идеально приспособленными для научно-исследовательских целей и137PDF created with pdfFactory trial version www.pdffactory.comмелкосерийного производства. Для построения более производительных иэффективных нейрокомпьютеров применение ПЦОС предпочтительнее.Вопросам создания нейрокомпьютеров на ПЛИС посвящено большоечисло работ, ежегодно представляемых на конференциях и выставках«Нейрокомпьютеры и их применение», проходящих в Институте проблемуправления (ИПУ РАН) им.
В.А. Трапезникова.Нейрокомпьютер ППК НИИ Системных исследований РАНРассмотримвкачествепримераудачнойреализациинейрокомпьютеров, созданный в НИИ Системных исследований РАНпараллельный перепрограммируемый компьютер (ППК).Данный нейрокомпьютер разработан в стандарте VME и реализован набазе перепрограммируемых микросхем семейства 10К фирмы Altera.Предназначается для работы в качестве аппаратного ускорителя и являетсяведомым устройством на шине VME. Он должен включаться в систему какподчиненное устройство основной управляющей ЭВМ (host-машины) суниверсальным процессором.
Тактовая частота нейрокомпьютера 33 МГц.Таблица 5.1. Оценка производительности ППК *Название алгоритмаPentium100, сPentiumII333, сUltraSPARC, cППК, сСвертка с ядром 4х4 3)0,650,110,760,02Медианный фильтр1,970,490,750,001Повышение контрастности0,510,131,310,004Прямое поточечное сравнениес маской 32х32 4)43,787,1458,890,142Поиск локальных неоднородностей32х320,1200,0280,1460,0328,610,6012,310,011Умножение матрицы на матрицу* - Оценки приведены для:Pentium-100 на частоте 100 МГц, объем ОЗУ 16 Мбайт;Pentium-333 на частоте 350 МГц, объем ОЗУ 128 Мбайт;UltraSPARC при частоте 200 МГц, объем ОЗУ 64 Мбайт;ППК на частоте 33 МГц.138PDF created with pdfFactory trial version www.pdffactory.comППК используется для построения систем распознавания образов наоснове обработки телевизионной, тепловизионной и другой информации, атакже систем, основанных на реализации алгоритмов с пороговымифункциями и простейшими арифметическими операциями, и позволяетдобиться при этом значительной скорости вычислений (табл.
5.1).ППК состоит из следующих функциональных блоков (рис. 5.4):§ схема управления;§ базовые вычислительные элементы (БВЭ1 - БВЭ6);§ контроллер внешней шины (контроллер E-bus);§ контроллер системной шины (контроллер VME);§ два массива статической памяти (ОЗУ 0, ОЗУ 1);§ блок высокоскоростных приемников/передатчиков (блок ВПП).Рис.
5.4. Структурная схема ППК139PDF created with pdfFactory trial version www.pdffactory.comСхема управления используется для управления БВЭ и потокамиданных в вычислителе и представляет собой простейший RISC-процессор.Структура и набор команд процессора могут изменяться в зависимости оттипа решаемой задачи.БВЭ используются для выполнения простейших арифметическихопераций суммирования, вычитания, умножения и вычисления пороговыхфункций. Так как БВЭ реализованы на перепрограммируемых микросхемах,их архитектура может изменяться.Архитектура БВЭ для различных алгоритмов может отличаться, ноони легко реализуются путем комбинации библиотечных функций,компиляции их при помощи САПР (типа MaxPlus) и загрузки файлаконфигурации в выбранный БВЭ.Два массива локальной статической памяти, собранные из 8микросхем статической памяти емкостью 0,5 Мбайт, имеют размер 4Мбайт иорганизованы как массив 512К 8-байтовых слов.
Массивы памяти связаны сосхемойуправленияотдельнымиадреснымишинамии могутфункционировать независимо друг от друга. Память предназначена дляхранения общих коэффициентов, а также промежуточных илиокончательных результатов вычислений, подготовленных к передаче черезконтроллер системной шины в центральный процессор или через контроллерE-bus на линк-порты. Связь нескольких вычислителей между собой иливычислителя с устройством оцифровки изображения при наличии уустройства оцифровки соответствующего интерфейса осуществляетсяпосредством последовательного канала приемников/передатчиков HOTLinkфирмы CYPRESS.
Управление передачей данных выполняет контроллервнешней шины, который представляет собой набор четырех стандартныхFIFO и регистров управления и данных. Контроллер шины VME выполняетфункцию интерфейса с центральным процессором и является стандартнымустройством. С точки зрения программиста вычислитель можно представитькак RISC-процессор (схема управления или управляющий процессор) ишестьвекторныхпроцессоров(вычислительныхэлементов),отрабатывающих SIMD-команды (одна команда для многих данных).Большое количество шин данных, возможность одновременной работы всехБВЭ и выполнение арифметических операций умножения и сложения заодин такт позволяет эффективно распараллеливать процесс обработкиинформации.
Особенностью схемы управления перепрограммируемоговычислителя для систем обработки информации является наличие рабочейкоманды, управляющей шестью базовыми вычислительными элементами.Команда позволяет одновременно за один такт задавать различные режимыфункционирования шести базовым вычислительным элементам иинкрементировать адреса обоих массивов памяти на любое число от 0 до255, хранимое в регистрах инкремента, причем каждому массивусоответствует свой регистр. Команда может повторяться любое количество140PDF created with pdfFactory trial version www.pdffactory.comраз в соответствии со значением, хранимым в специальном регистре. Этопозволяет выполнять основную команду без потерь на организацию циклови переходов. Рабочая команда позволяет одновременно запускать обаконтроллера локальной памяти, инкрементировать адресные регистры натребуемое значение, выставлять на адресные шины адреса изсоответствующих регистров адреса, выставлять на шины управления БВЭкоманды из соответствующих регистров БВЭ.