Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект 58 страниц 2002.doc
Скачиваний:
91
Добавлен:
15.06.2014
Размер:
4.07 Mб
Скачать

Транспьютеры

Ориентированы на многопроцессорные многопроцессные системы.

Производительность вычислительных систем определяется:

  1. Быстротой переключения вентилей.

  2. Расстоянием между устройствами.

В транспьютерах, главный упор делался на развитие второго условия.

Транспьютер – микрокомпьютер с собственной внутренней памятью и линками (каналами) для соединения с другими транспьютерами.

Транспьютеры стали первой промышленной разработкой, ориентированной на массово – параллельные системы.

Основоположник – фирма Inmos, которая произвела разработку такой аппаратно- программной системы.

Первый транспьютер – IMS T414 имел следующую структуру:

Подробная структура транспьютера Т800.

Система команд ориентирована на поддержку языка высоко уровня Okkam  язык параллельных программ.

Программа на Okkam представляет собой совокупность асинхронных, совместно протекающих и взаимодействующих процессов. Под процессом понимается ход исполнения программы или её фрагмента. Взаимодействие между процессами реализуется путём обмена данными по принципу “рандеву” (через канал).

Данная модель вычислений поддерживается аппаратным диспетчером, обеспечивающим выполнение параллельных процессов в режиме квантования времени. Количество одновременно выполняющихся процессов не ограничено.

Мультипроцессорная система на базе транспьютеров представляет собой совокупность транспьютеров, соединённых линиями связи. Одинаковая модель параллельных вычислений поддерживается как внутри отдельного транспьютера, так и в рамках мультипроцессорной системы => программа, написанная на для мультипроцессорной системы может быть отлажена на одном транспьютере. Исключение составляет ограничение числа каналов связи процесса с процессами, протекающими на других транспьютерах.

Центральный процессор

Центральный 32-разрядный процессор работает на частоте до 30 МГц. Аппаратный планировщик CPU организует в режиме разделения времени одновременное выполнение нескольких процессов.

Каждому процессу в момент его создания в адресном пространстве транспьютера выделяется выровненная на границе слова рабочая область памяти и устанавливается приоритет. Реализована двухуровневая система приоритетов: 0  высокий приоритет, 1  низкий приоритет. Адрес рабочей области и приоритет образуют дескриптор процесса.

Центральный процессор содержит два регистра таймера: для высокоприоритетных и низкоприоритетных процессов. Высокоприоритетный регистр инкрементируется каждую мкс, а низкоприоритетный  каждые 64 мкс.

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

Регистры общего назначения A, B, C образуют регистровый стек с дисциплиной доступа LIFO

АЛУ выполняет логические и арифметические команды над операндами, содержащимися в регистровом стеке. Операнды загружаются в стек через регистр А, но при этом происходит смещение A  B, а B  C. Результаты операций также формируются в регистре А, при этом содержимое регистра С B.

Все команды транспьютера  однобайтовые и выполняются за один такт. Старшие 4 бита команды код команды, младшие 4  формирование операнда или кода команды в регистре операндов.

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

Выполнение операций с плавающей точкой, распознавание команд и передача их на выполнение осуществляется аппаратно в CPU, там же выполняется вычисление адресов операндов и загрузка их в FPU, который также содержит три регистра A, B, C. Команды с плавающей точкой подразделяются на два класса:

  1. полностью самостоятельная, никак не влияющая на состояние процессора команда;

  2. команда, пересылающая результаты в процессор.

После передачи команды на исполнение в FPU процессор продолжает выполнение потока команд, если команда относится к первому классу или ожидает результат выполнения, если команда относится ко второму классу.