Масштабируемый мультипроцессор для цифровой...
description
Transcript of Масштабируемый мультипроцессор для цифровой...
Масштабируемый мультипроцессордля цифровой обработки сигналов
Н. В. Данильченко, С. Н. МакеевФГУП «НИИЭТ» г. Воронеж
Критерии эффективности
Универсальным критерием эффективности мультипроцессорной системы является время выполнения совокупности работ, распределенных между процессорами.
Поскольку ускорение вычислений Sp на мультипроцессоре зависит от доли последовательной составляющей α параллельного вычислительного процесса
Sp=1/(α + (1- α)/p) (Известная формула Амдала), то
эффективность мультипроцессорной системы тем выше, чем меньше последовательная составляющая α.
Выбор архитектуры мультипроцессорной системы
Поскольку последовательная составляющая содержит обмен данными и синхронизацию параллельного вычисли-тельного процесса, то одним из основных требований к архитектуре проектируемого мультипроцессора было обеспечение:• Высокой эффективности синхронизации вычислительного
процесса и обмена данными.• Масштабируемости.• Контролируемости времени синхронизации и обмена
данными.Мы остановили свой выбор на архитектуре ОВС, которая,
на наш взгляд в наибольшей степени отвечает выше названным требованиям.
Архитектура Однородных Вычислительных Систем (ОВС)
Архитектура ОВС была предложена в 1966 г. Евреиновым Э.В. и Косыревым Ю.Г.
ОВС – это вычислительная система регулярно соединенных Элементарных Машин (ЭМ).
ЭМ содержит Процессор (Пр) и программируемый Коммутатор (К).
На ОВС выполняется Системная Программа.
Системная программа – последовательность, не обязательно линейная, Системных Команд.
Системные командыСистемная команда Функции MPI
Трансляционный обмен MPI_Bcast
Трансляционно-циклический обмен MPI_Alltoall
Дифференцированный обмен MPI_Send, MPI_Recv
Коллекторный обмен MPI_Gather
Конвейерный обмен MPI_Sendrecv
Индивидуальный обмен MPI_Send /MPI_Recv
Обобщенный безусловный переход Нет
Обобщенный условный переход MPI_Barrier
Настройка MPI_Comm_group
Некоторые особенности реализации архитектуры ОВС
1. Системные Команды выполняется во всех ЭМ синхронно (по крайней мере в рамках одной подсистемы).
2. Выполнение Системных Команд в ЭМ начинается одновременно. В связи с этим существует понятие Системного Такта.
3. Структура системы связи регулярная.
4. Коммутатор программируется из прооцессора ЭМ.
5. Синхронизация выполнения Системных Команд осуществляется на аппаратном уровне.
6. Большинство Системных Команд выполняются за два процессорных такта ЭМ.
Структура Элементарной Машины
RCVRSNDRSPLRSWSRSSWRSWCRSNMREMTR
IS
DS
PS
Data_oData_i
SW
EM
Top
RightLeft
Bot
tom
PR
PM
DM
№ Характеристика Значение1 Процессорный элемент c320C25tx2 Объем памяти
программ, Кбайт32
3 Объем памяти данных, Кбайт
32
4 Коммутатор 15 Число направлений
коммутатора4
6 Разрядность шины данных коммутатора
16
7 Тактовая частота, МГц 150
Структура СБИС мультипроцессора
SW00
XT
C00
YT
C00
XRC
YRC
XB
YPRXPR
SW01
YLC
XLC
YPRXPR
SW02XRC02
YRC02
YPRXPR
SW10
YT
YB
XB
YPRXPR
SW11
YPRXPR
SW12
YPRXPR
SW20
XT
YT
YPRXPR
SW21
YPRXPR
SW22
YPRXPR
PR
XYRD02
XRC12
YRC12XYRD12
XRC22
YRC22XYRD22
XLC00
YLC00XYTLD00
XLC10
YLC10XYLD10
XLC02
YLC02XYLD02
XY
TD
00
XT
C01
YT
C01
XY
TD
01
XT
C02
YT
C02
XY
TD
02
XB
C20
YB
C20
XY
BD
20
XB
C21
YB
C21
XY
BD
21
XB
C22
YB
C22
XY
BD
22
PMDM PR PM
DM PR PMDM
PR PMDM PR PM
DM PR PMDM
PR PMDM PR PM
DMPR PM
DM
SPI
SPI
SPI
SP
I
SP
I
SPI
SP
I
SP
I
SP
I
YLDXLDYRD
XRD
XRC
YRC
YLC
XLCYLDXLDYRD
XRD
XRC
YRC
YLC
XLCYLDXLDYRD
XRD
XRC
YRC
YLC
XLCYLDXLDYRD
XRD
XRC
YRC
YLC
XLCYLDXLDYRD
XRD
XRC
YRC
YLC
XLCYLDXLDYRD
XRD
XT
CY
BC
XT
DY
BD
YT
DX
BD
XB
YT
XT
CY
BC
XT
DY
BD
YT
DX
BD
XB
YT
XT
CY
BC
XT
DY
BD
YT
DX
BD
XB
YT
XT
CY
BC
XT
DY
BD
YT
DX
BD
XB
YT
XT
CY
BC
XT
DY
BD
YT
DX
BD
NMBCHIP
MP25
Характеристики СБИС мультипроцессора№ Параметр Описание1 Число Элементарных Машин 92 Топология Двумерная3 Масштабируемость До 18432 ЭМ4 Межпроцессорное
взаимодействиеКоммутация
каналов5 Производительность, MIPS до 13506 Тактовая частота, МГц 1507 Потребляемая мощность ядра
микросхемы, мВт< 250
8 Общее число сигнальных выводов/питания-земли
500/102
10 Технология, мкм 0,1811 Корпус CPGA602
Системные инструкции№ Мнемоника Описание1 SRCV nem, dst Прием из канала (Receive from Channel). 2 STRN nem, src Передача данных в канал (Transmit to Channel)3 SSSW nem, swyl,
swyt, swyr, swyb, swyp
Настройка коммутатора (Set Switch)
4 SCND nem, encndl, encndt, encndr, encndb, encndp, andor, AR, dma
Настройка формирования обобщенного системного условия. Значения encndl, encndt, encndr, encndb, encndp, andor записываются в соответствующие биты регистра SWCR для ЭМ с номером nem.Если encndХ=1, (Х=, l, t, r, b, p), то соответствующее направление участвует в формировании обобщенного условия.
5 CNDP cndp, AR, dma
Установка системного условия в ЭМ. Значение cndp записывается в бит CNDP регистра SWSR
6 UCBR PC Безусловный переход (Unconditional Branch)Все ЭМ безусловно переходят по адресу PC
Системные инструкции (продолжение)7 CBR dma, TPC, FPC Условный переход (Conditional Branch) 8 SPEX srcch, src,
dstch, dstКонвейерный обмен (Pipelined Exchange)
9 SEXE PC, AR, dma Выполнение (Execution). Передает управление по адресу РС
10 SNOP Нет системной операции. Выполняется только синхронизация с системой
11 STEX nem, src, dst, cntr, AR, dma
Трансляционный Обмен. (Translational Exchange) ЭМ с номером nem, передает данные из src. ЭМ не с номером nem, принимают данные в dst.
12 SDEX nemi, src, nemj,…, nemk, dst, cntr
Дифференцированный Обмен (Differentiated Exchange) ЭМ с номером nem, передает данные из src. ЭМ с номерами nemj, ,nemk принимают данные в dst.
13 SCEX nemi, dst, nemj, …, nemk, src, cntr
Коллекторный Обмен (Collector Exchange)ЭМ с номерами nemi, …, nemk передает данные из src в dst ЭМ с номером nemi
14 SIEX nem, dst, nemj, src, cntr
Индивидуальный Обмен (Individual Exchange)
Масштабируемость СБИС
МP25Nmbchip=0x000
МP25Nmbchip
=0x001
МP25Nmbchip=0x002
МP25Nmbchip
=0x003
8xSPI
9хGP
8xSPI
9хGP
8xSPI
9хGP
8xSPI
9хGP
Характеристики мультипроцессора из 4-х СБИС
№ Характеристика Значение1 Число СБИС МР25 в системе, шт. 42 Число Элементарных Машин, шт. 363 Пиковая производительность, MIPS до 54004 Число последовательных портов (SPI) 325 Число портов общего назначения (GP) 36
Сравнение характеристик СБИС мультипроцессора и TMS320C6414
№ Параметр TMS320C6414 (TI)
МР25
2 Частота, МГц 500 2103 Ток потребления, мА 550 3254 КИХ фильтр 128
отводов, МГц2 1,6
5 Технология, мкм 0,13 0,13*
* - характеристики СБИС МР25 аппроксимированы для технологических норм 0,13 мкм.
Программирование мультипроцессораВ тексте доклада приведен фрагмент программы КИХ
фильтра Системные Команды написаны в виде Макросов на языке Ассемблер.
Из текста программы видно, что собственно обмен данными и синхронизация составляют меньшую часть программы
// Передача N коэффициентов h(n) ЭМ00 всем ЭМSTEX EM00, src1, dst1, N, AR , dma// Передача (N - 1) первых отсчетов x(n) ЭМ00// всем ЭМ с помощью трансляционного обменаSTEX EM00, src2, dst2, N - 1, AR, dma// Передача очередного отсчета x(i) ЭМ00 всем ЭМCONV: STEX EM00, src3, dst3, 1, AR, dma
Программирование мультипроцессора (продолжение)
// Вычисление промежуточных значений// y(i) = ∑ h(i) × x(n - i), i = 0, 1, ..8F1: SEXE PC, AR, dmaCNDP cndp, AR, dmaCBR dma, T1, F1// Передача промежуточых значений y(i) в ЭМ00T1: SCEX EM00, dst4, EM01, src01, .. , EM22, src22, 8// Вычисление выходного значения// Y(n) = ∑ y(i), i = 0, 1, ..8SEXE PC, AR, dmaCNDP cndp, AR, dmaCBR dma, END, CONVEND:
Заключение Оценка производительности мультипроцессорной
СБИС МР25 с архитектурой ОВС на задачах умножения матрицы на вектор и решения задачи КИХ фильтрации показывает, что архитектура ОВС перспективна для решения задач цифровой обработки сигналов.
Хорошая масштабируемость архитектуры ОВС дает возможность создавать СБИС на различных технологических нормах без изменения ее архитектуры, получая, при этом рост производительности.
Реализация Системных Команд в ЭМ на аппаратном уровне, а также конвейеризация выполнения Системных Команд позволят повысить эффективность мультипроцессора с архитектурой ОВС.