Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

khor32

.pdf
Скачиваний:
26
Добавлен:
29.02.2016
Размер:
8.16 Mб
Скачать

8.2.Архитектура транспьютеров семейств Т200, Т400 и Т800

возможность параллельного обращения транспьютеров (точнее, их микропроцессоров) к памяти (каждого к своей локальной памяти); следовательно, быстродействие памяти (композиции ЛП всех транспьютеров) в мультитранспьютерных ВС выше, чем y общей памяти большой емкости в мультипроцессорных ВС c шинной структурой.

Транспьютеры могли использоваться и как обычные микропроцессоры, они по своим техническим характеристикам не уступали однокристальным микропроцессорам. Сравним первый 32-разрядный тpанспьютер гМs Т414 фирмы Inmos (1985) c 32-разрядным микропроцессором 80386 фирмы Intel (1986). Тактовые частоты названных схем сравнимы: транспьютер Т414 мог иметь частоту 15 или 20 МГц, a процессор 80386 16 МГц.

Архитектура Т414 позволяла выполнять команды в среднем за 2 такта, сле-

довательно, она обеспечивала быстродействие около 10 МiРS (н опера-

ций над целыми числами в секунду, см. § 2.6). B микропроцессоре 80386 на

выполнение команды в среднем требовалось 4 такта, что позволяло достичь

быстродействия, равного только 4 MIPS. По размерам кристалла (8,7 x 8,9 мм 2)

и числу транзисторов (200 тыс.) Т414 несколько уступал 80386 (270 тыс. транзисторов), однако в тpанспьютере по сравнению c микропроцессором

было достигнуто четырехкратное снижение энергопотребления (500 мВт

вместо 2 Вт). При этом следует отметить, что на кристалле Т414 кроме мик-

ропроцессора были размещены оперативная память емкостью 2 K байт, интерфейс внешней памяти (обеспечивающий прямой доступ к памяти c про-

пyскной способностью 25 Мбайт/с) и четыре липка. Ми ропроцессор 80386

имел традиционную архитектуру: встроенная память в нем отсутствовала и

имелся лишь один канал для обмена c внешними памятью и устройствами (пропускная способность 32 Мбайт/c). Для формирования параллельных

ВС на базе Intel 80386 требовалась разработка элементарного процессора

как платы c множеством БИС. Габариты формируемой ВС (даже при небольшом количестве ЭП) были значительными, возможности межпроцессорных обменов информацией весьма ограниченными, стоимость и энергопотребление высокими, a надежность низкой.

Следует еще раз подчеркнуть, что важной архитектурной особенно-

стью транспьютеров является то, что они рассчитаны на реализацию язьпса параллельного программирования высокого уровня Оккам (Оссат). Работа Оккам сводится к представлению сложной задачи в виде совокупности ветвей-процессов и организации обменов данными между ними. Транс-

пьютер имеет аппаратурную поддержку основных конструкций Оккам, что позволяет выполнять программы, написанные на этом языке, c эффективностью Ассемблера.

Итак, комплексный проект, включающий разработку тpанспьютера и языка Оккам, имел следующие цели:

383

8.Транспьютерные вычислитель} ые системы

1)создание микроэлектронного элемента) много процессора (транспьютера), ориентированного на формирование ВС c массовым параллелизмом;

2)обеспечение поддержки параллельной обработки информации как на аппаратурном, так и на программном уровня: к;

3)достижение «масштабируемости» со: Сдаваемых ВС; увеличение производительности ВС при наращивании чис па параллельно работающих процессоров;

4)использование параллельного языка высокого уровня для программирования элементарного процессора.

Работы по созданию транспьютеров и яыка Оккам велись в рамках Западно-Европейской стратегической программ: А исследований и разработок

вобласти информационной технологии Esprit (European Strategic Program of Research and Development in Information Теснпоl оуу).

8.2.2. Семейства транспьютеров

По первоначальному проекту предполагалось создать простой транспьютер как процессор со стековой архитектур зй, имеющий небольшой набор однобайтовых и однотактных команд (использование микропрограмм не планировалось). Следовательно, при воплощении замысла транспьютер

имел бы архитектуру RISC (Reduced Instruction Set Computer).

Архитектуры RISC в 1980-x годах приобрели большую популярность.

Вычислительные средства c такой архитектурой характеризуются:

сокращенной системой команд;

простотой команд (имеющих фиксировЕ нный формат и однотактное исполнение);

простои системой адресации;

наличием емкой сверхоперативной памяти (кэш и большого числа регистров);

аппаратурной реализацией команд (отсуi ствием микропрогpамм);

ориентацией на язык высокого уровня;

технико-экономически оптимальным соотношением между аппаратурными и программными средствами.

Степень воплощения отмеченных архитектурных свойств зависит от реализации микропроцессоров.

Транспьютер имеет заметные отклоне Кия от канонической RISCархитектуры. B самом деле, система команд iранспьютера является далеко не сокращенной. Она насчитывает более ста i:оманд, среди которых превалируют команды, выполняющиеся более чем за один такт (например, в первом транспьютере Т414 из 110 команд только 15 являются однотактными).

384

8.2. Архитекту

тьютеров семейств Т200, Т400 и Т800

Тем не менее такие про

как простота коман,

приме-

нение языков высокогс

и обеспечение опт

3етствия

между аппаратными и

иными средствами

просле-

живаются явно. Можнс

;нуть, что транспьк

себе ос-

новные достоинства RlsС-архитектypы c достоинс

4икропрограмми-

рования и использования быстрой внyтpенней памя'

 

Фирма Inmos производила следующие сел

транспьютеров:

Т200, Т400, Т800, Т9000. Транспьютеры первых т

мейств вьшолня-

лись, как правило, в керамических корпусах площад

: 30 мм2 и c 84-мя

выводами-штырями. Модели семейств совместим' (по системе команд) снизу вверх. Характеристики транспьютеров семейств Т200, Т400, Т800 приведены в табл. 8.1. Семейство Т9000 представлено вариантами транспьютера Т9000, отличающимися друг от друга по тактовой частоте, его архитектypа достаточно развита, она сочетает в себе достоинства высокопро-

изводительных микропроцессоров и транспьютеров предшествующих се-

мейств. далее детально рассмотрим архитектуру первых трех семейств

транспьютеров.

Таблица 8.1

Семейство

Тип транс-

Разряд-

транспьюте-

пьютера

нocть

ров

 

 

Т200

Т212

16

 

Т222

16

 

Т225

16

 

М212

Т400

Т400

32

 

Т414

32

Т800

Т425

32

Т800

32

 

Т801

32

 

Т805

32

^

2

2

4

4

4

4

ПлаваКоманды

ющая отладки2

арифме-

тика

+

+

+

++

++

Число Буферз

линков в линке

^

+

д'

+

 

+

^'

+

^

+

^

+

1 ЛП локальная память, т. e. внyтpикpистaльнaя оперативная память.

2 Команды отладки позволяют реализовать возможность более эффективной

отладки (Debugging) программ в тpанспьютерной системе.

Буфер в линке 8-разрядный буферный регистр для хрaнения 1 байт данных, принимаемого из канала; отсутствие этого буфера в ранних моделях транспьютеров

приводило к задержкам при обменах информацией между тpанспьютерами.

Семейство Т200. Производство транспьютеров семейства Т200 было открыто в середине 1986 г. Транспьютеры этого семейства 16-разрядные и

13 — 685

385

8. Транспьютерные вычислителё ные системы

обычно используются как встроенные контрог леры (например, для накопи-

телей на дисках) или как средства управления электронными коммутатора-

ми при построении тpанспьютерных плат c программируемой структурой.

Безусловно, их можно применять и как элементарные процессоры ВС (для параллельной обработки 16-разрядных данных 1. Транспьютер IMS М212 занимает особое место, он представляет собой контроллер гибкого и жесткого дисков и имеет два двyнаправленных канала.

Семейство Т400. B семейство входит пЕ-рвый транспьютер ГМ Т414,

который начал серийно выпускаться фирмой Inmos в октябре 1985 г. Это семейство 32-разрядных тpанспьютеров, которые рассчитаны на реализацию операций арифметики c фиксированной запятой. Модель IMS Т400 представляeт собой кристалл в пластмассовом корпусе, имеет два пинка, его цена (при партии в 50 000 шт.) в 1990 г. составляла всего 20 долл. (более чем на

порядок ниже, чем IMS Т414). Следует отмети гь, что транспьютер IMS Т212 является 16-разрядным вариантом IMS Т414 и полностью совместим c ним.

B состав тpанспьютера IMS Т414 (рис. 3.2) входят процессор, ориен-

тированный на обработку информации c фикс: лрованной запятой, локальная (или внутренняя) статическая память емкость ю 2 K байт, интерфейс внешней памяти c пропускной способностью 25 M байт/c, четыре двунаправленных линка и системный блок. Транспьютер реализован в виде БИС на кристалле 8,7 x 8,9 2, число транзисторов 200 тыс., тактовая частота 20 МГц, быстродействие около 10 MIPS, потребляел! ая мощность 500 мВт.

Процессор аппаратypно реализует модель параллельных вычислений и связей между процессами, предлагаемую язы^ :ом Оккам. B процессоре имеется планировщик процессов, который позволяет выполнять любое число параллельных процессов в режиме разделения времени. Связь между про-

Системный

C ^

J П оессо

блок

 

 

Пинк 0

Локальная

 

Пинк 1

память

 

 

 

 

С

Пинк 2

Интерфейс

 

Пинк з

внешней

 

 

памяти

 

 

Шина адрсов и данных

Рис. 8.2. Функциональная структура тр. iнспьютера IMS Т414

386

8.2. Архитектура транспьютеров семейств Т200, Т400 и Т800

цессами реализуется при помощи команд пересылок данных между блоками локальной памяти.

B процессоре обеспечивается два уровня приоритетов. Процессы высшего приоритета могут использоваться для маршрутизации при передаче информации и для быстрой реакции на внешние события. Реализована возможность программировать на языке Оккам аппаратурные и программные прерывания. Процессор содержит тaймер, что позволяет выполняемому процессу либо осуществлять слежение за временем, либо ждать достижения определенного момента времени. Процессор способен работать c памятью емкостью 232 байта (4 Гбит), при этом локальная (внутренняя) и внешняя па-

мяти рассматриваются как единое пространство адресов. Под внешней памятью понимается оперативное запоминающее устройство, расположенное

вне транспьютера. Связь процессора c ней осуществляется через интерфейс

внешней памяти.

Процессор имеет средства обнаружения ошибок. Сигнал (флаг) об

ошибке может быть использован для останова процессора c сохранением

его состояния, что дает возможность выявить причину ошибки.

Пинки 0-3 свидетельствуют о том, что тpанспьютер является четырехполюсником. Следовательно, из транспьютеров могут быть построены ВС c двyмерной структурой. Ликки обеспечивают скорость передачи данных 10 Мбит/c. допускается параллельная работа процессора и линков. Каждый линк имеет последовательные вход и выход, которые используются для передачи как данных, так и управляющей информации (необходимой для реализации протоколов связи). Данные передаются в последовательном коде в виде последовательностей пакетов, каждый из которых содержит 1 байт информации (рис. 8.3). После передачи пакета данных транспьютер-отпра- витель ожидает получения пакета подтверждения от транспьютера-полу- чателя o том, что он готов принимать следующий пакет данных.

Для синхронизации работы устройств транспьютера используются внутренние тактовые импульсы, вырабатываемые в системном блоке. При обмене данными (в синхронном режиме) обеспечивается правильное функционирование, если разность частот синхронизации в двух транспьютерах, связанных каналом, не превышает 400 имп./мин. Интенсивность отказов, обусловленных средствами синхронизации, оценивается значением

10-1о 1/ч.

o

1

2 3 4 5 6 7

1 o

1 1

 

Байт данных

 

 

a

6

Рис. 8.3. Форматы транспьютерных пакетов: a — пакет данных; б — пакет подтверждения

13*

387

8. Транспьютерные вычислительные системы

Интерфейс внешней памяти c помощью 32-разрядной шины адресов и данных обеспечивает для процессора быстры й доступ и к статическим, и к динамическим запоминающим устройствам c различными временными режимами работы. Более того, в интерфейсе заложена возможность программной настройки c учетом возможностей п зименяемой внешней памяти. Настройка проводится по специальной програл, гме, которая способна генерировать требуемый режим работы памяти (в част iости, формы сигналов).

B состав системного блока транспьютер входят устройство питания, тактовые генераторы, устройства инициализацн и и сброса.

Все устройства транспьютера связаны мeжду собой общей двунаправленной 32-разрядной шиной адресов и данных. Эта шина позволяет процессору обращаться к локальной и внешней памв [ти и обмениваться информацией c внешней средой (например, другими три Lнспьютерами) через липки.

Семейство Т800. Это семейство 32-разрядных тpанспьютеров, спо-

собных выполнять арифметические операции с плавающей запятой. Модель

IMS Т800 производилась серийно c конца 1987 г. Транспьютер IMS Т800 имел в своем составе 64-разрядный сопpоцессор c плавающей запятой (FPU Floating Point Unit) и локальную оперативную память емкостью 4 K байт. Число транзисторов в кристалле IMS Т800 сосавляло 300 тыс.; при этом его

площадь была увеличена (по сравнению с IЛ 8 Т414) всего на 25 %. Это удалось достичь за счет оптимизации компоно вки кристалла и применения 1,4-мкм КМОП-технологии.

C начала 1988 г. серийно выпускался тт анспьютер IMS Т800 c тактовой частотой 20 МГц; среднее время выполнения одной команды в данном

транспьютере 2 такта, следовательно, его i 5ыстродействие при выполнении операций c фиксированной запятой было равно 10 МГР. При реализа-

ции операций c плавающей запятой транспью9 'ер IMS Т800 обеспечивал бы-

стродействие 1,5 MFLOPS и 1,1 MFLOPS соответственно для 32-разрядных и 64-разрядных чисел (y транспьютера IMS Т 414 эти значения значительно ниже : 0,1 и 0,025 MFLOPS).

Локальная (внутренняя) память позволяла осуществлять выборку слова за время одного такта, что при тактовой частоте 20 МГц составляет 50 нс. Следовательно, локальная память, по сути, бы. та сверхоперативной.

Каждый из четырех линков IMS Т800 обеспечивал скорость передачи

данных, равную 10 Мбит/с. Реaльная пропуске сая способность каналов связи

между тpанспьютерами IMS Т800 (при непосредственном соединении лин-

ков) оценивалась величинами 0,9 Мбайт/с и 1,2 Мбайт/c соответственно в полудуплексном и дуплексном режимах.

Интерфейс внешней памяти (до 4 Гбайi) позволял подключать к процессору БИС c различными видами запоминающих устройств (статических и динамических). Это достигалось возможностью реализации нескольких

388

8.2. Архитектура транспьютеров семейств Т200, Т400 и Т800

стандартных режимов, обеспечивающих время обращения к внешней памяти от 3 до 12 тактов. B интерфейс была заложена возможность программирования специфичных режимов обращения к внешней памяти на случай, если ни один из стандартных режимов оказывался не подходящим по каким-

либо причинам.

Важной архитектурной особенностью тpанспьютера IMS Т800 было

то, что его процессор (центральный), сопроцессор c плавающей запятой и четыре линка могли работать параллельно (до тех пор, пока не происходило обращение к одному и тому же ресурсу, например к внешней памяти).

Совмещения операций осуществлялись всегда, когда это было принципиально возможно. Так, при запросе процессора на запись слова во внешнюю память осуществлялась передача этого слова в интерфейс и собственно запись совмещалась c выполнением очередных команд процессора. Одновременно c этим могли выполняться команды приема-передачи данных по линкам и операции c плавающей запятой в сопроцессоре.

Традиционная система прерываний в транспьютере отсутствовала, a для обеспечения работы в режиме реального времени в состав процессора была включена система работы c приоритетами.

B транспьютере имелся таймер, который применялся как для отсчета текущего времени, так и для организации задержки выполнения процесса до

наступления заранее определенного момента времени.

B тpанспьютер ГМ Т800 (кроме единой шины адреса и данных) были

введены две дополнительные шины. Одна из них использовалась процессором для передачи управляющих команд в сопроцессор для плавающей арифметики и получения в ответ информации o состоянии. другая шина служила для отдельного доступа процессора к линкам. Такая архитектура позволяла процессору и сопроцессору работать параллельно: во время вы

числения процессором адресов сопроцессор проводил операции над числа-

., ..

ми c плавающейтойзаня .

Транспьютер IMS Т801 в отличие от ГМ Т800 имел раздельные шины адресов и данных в интерфейсе внешней памяти. Это позволило использовать в качестве внешней памяти быстродействующие БИС статической памяти c временем обращения, равным двум тактам процессора. Разделение

шин адресов и данных привело к изменению конструкции кристалла, в ча-

стности число выводов было увеличено до 100.

Транспьютер IMS Т805 наиболее распространенная модель семей-

ства Т800 (pис. 8.4). Состав ГМ Т805: 32-paзpядный процессор, сопроцес-

сор для выполнения операций над б4-paзpядными числами c плавающей занятой, быстрая локальная память емкостью 4 К байт, интерфейс внешней

памяти (расширяющий адресное пространство до 4 Гбайт), четыре липка, схемы обслуживания линков, таймер, схема обработки внешних запросов,

389

8. Транспьютерные вычислитель,"ые системы

Сопроцессор c плавающей запятой

Системный

C

^

Процессор

блок

 

 

 

Схемы обслуживания

Таймер

 

 

 

 

пинков

 

 

 

Линк 0

Локальная память

 

С

Линк 1

 

 

 

Линк 2

 

 

 

Линк 3

 

 

 

С ема обработки

 

 

 

вис шних запросов

Интерфейс

 

 

 

внешней памяти

 

 

 

 

 

 

Шина а, ^ресов и данных

Рис. 8.4. Функциональная структура транспьютера IMS Т805

системный блок. Имеются модификации транспьютера c тактовой частотой 20 и 30 МГц. B тpанспьютере c частотой 30 МГц пиковое быстродействие

оценивается величинами: 30 MIPS и 4,3 MFLOPS. Среднее быстродействие

при обращении к локальной памяти составляет 120 Мбайт/c, a к внешней 40 Мбайт/c. Скорость передачи данных по лпнкам может программно настpаиваться в диапазоне от 5 до 20 Мбит/c. Загрузка программ в транспьютер может выполняться из специального постоянного запоминающего устройства или по линку.

Транспьютер заключен в керамический Е:орпус размером 30 x 30 мм 2 c 84-мя штырьковыми выводами. По назначен ию выводов он совместим c тpанспьютерами семейства Т400 и c транспьютером IMS Т800.

Координатный коммутатор 1MS С004 предназначается для построения ВС со сложной структурой (напомним, что транспьютер позволяет формировать ВС, структура которых не сложнее двyмерных сетей). Координатный коммутатор IMS С004 обеспечивает возможность в процессе решения задачи изменять структуру сети меж транспьютерных связей. Это полнодоступный коммутатор, позволяющий р1 ^ализовать любые соединения своих 32 входов и 32 выходов. в нем любые коммутации реализуются без ослабления сигналов; поддерживаются две скорости передачи данных: 10 и 20 Мбит/c. Коммутатор реализован в виде отдельной интегральной схемы.

Управление коммутатором в ВС осуществля,,тся специально выделенным

390

8.2. Архитектура транспьютеров семейств Т200, Т400 и Т800

транспьютером. При построении ВС c особо сложной структурой можно осуществлять каскадное соединение коммyтаторов ГМ С004.

8.2.3. Организация памяти транспьютера

B процессе функционирования транспьютера осуществляются взаи-

модействия его процессора (и сопроцессора) c локальной внутренней и

внешней памятью и c собственными регистрами [19, 20].

Адресация памяти. для адресации памяти транспьютера используется одно слово, которое называется указателем. Указатель (Pointer) состоит из двух полей: байтового сектора и адреса слова. Байтовый сектор содержит столько битов, сколько необходимо для указания положения байта в слове. B 32-разрядных транспьютерах байтовый сектор занимает младшие 2 бит в указателе, a адрес слова старшие 30 бит. Такая система адресации позволяет использовать одинаковые адресные команды вне зависимости от длины слова, что имеет большое значение для совместимости транспьютеров c различной разрядностью.

B системе команд транспьютера предусмотрены специальные инст - рукции (такие, как 1оад 1оса1 pointer, 1оад non-local pointer, word subscript)

для создания указателей и для манипуляций c ними при обращении к элементам массивов.

Значение указателя рассматривается как целое число со знаком (в диапазоне от минимального отрицательного до максимального положительного значений). Это позволяет использовать для указателей стандартные арифметические операции и функции сравнения.

доступы к внутренней памяти (на кристалле) и к внешней памяти

осуществляются идентично. Все адресное пространство линейно и однородно. Размер прямоадресуемой памяти состaвлял 4 Гбайт, или 2 30 слов. Транспьютеры ГМ Т414 и IMS Т800 имеют статическую внутреннюю память емкостью соответственно 2 К байт и 4 К байт.

Наибольшая производительность транспьютера достигается, если данные и программа размещены во внутренней памяти. Усредненные ре-

зультаты выполнения некоторых типичных программ при различных вари-

.,

.,

антах расположения данных и программ во внутренней и внешней памяти

транспьютера приведены в табл. 8.2. За единицу принято время выполнения

программы для случая, когда данные и программа находятся во внутренней

памяти транспьютера.

За один цикл внешней памяти можно или обратиться к одному слову данных, или провести выборку четырех команд. Поэтому лучшие результа-

ты достигаются в Случае размещения во внешней памяти не данных, a про -

гpамм.

391

8. Транспьютерные вычислительные системы

 

 

 

Таблица 8.2

Размещение

Время выполнения

Программа

Данные

Программа c интен-

Вычислительная

 

 

сивным бращением

программа

 

 

K данным

 

Внутренн яя память

1

1

Внешняя память

Внутренняя память

1,3

1,1

Внутренняя память

Внешняя память

1,5

1,2

Внешняя память

1,8

1,3

Регистры. Наличие быстродействующе[ внутренней памяти позволило разработчикам транспьютера ограничиться очень небольшим числом регистpов. Это, в свою очередь, ускорило доступ к регистрам, упростило систему команд транспьютера, a также управляющую логику. При выполнении последовательных программ в процессоре используется шесть 32-разрядных

регистров (рис. 8.5): регистры A, B и С составляют классический вычислительный стек; регистры W (Wordspace), I (next Instruction) и O (Operand) специальные, причем:

W регистр-указатель рабочей области; определяет место хранения локальных переменных выполняемого в текущий момент времени процесса;

I регистр-указатель инструкций (или ziдреса следующей команды); 0 регистр операндов; используется при формировании операндов

команд.

Вычислительный стек (из регистров A, B, C) используется практически всеми командами транспьютера. B нем размещаются операнды и результаты большинства арифметических и логических операций, a также команд планирования параллельных процессов м коммуникаций, в него записываются параметры при вызове процедур и т. п.

Регистры

Локапь:ые

Команды

 

перемег:ные

 

A

В

С

W, рабочая область

I, следующая команда О, операнд

Рис. 8.5. Регистры общего назначения процессора транспьютера

392

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]