stringtranslate.com

МОЩНОСТЬ1

POWER1 — это многокристальный процессор , разработанный и изготовленный IBM , в котором реализована архитектура набора команд POWER (ISA). Первоначально он был известен как ЦП RISC System/6000 или, в сокращенной форме, ЦП RS/6000 , до появления преемников требовалось заменить исходное имя на имя, которое использовало ту же схему именования (POWER n ), что и его преемников, чтобы отличить его от более новых моделей.

История

POWER1 был представлен в 1990 году с появлением серверов IBM RS/6000 POWERserver и рабочих станций POWERstation , которые имели POWER1 с тактовой частотой 20, 25 или 30 МГц . POWER1 получил два обновления: одно в 1991 году с появлением POWER1+ и в 1992 году с появлением POWER1++. Эти обновленные версии имели тактовую частоту, превышающую исходную POWER1, что стало возможным благодаря улучшенным полупроводниковым процессам . POWER1+ имел тактовую частоту немного выше, чем исходный POWER1, на частотах 25, 33 и 41 МГц, тогда как POWER1++ вывел микроархитектуру на самые высокие частоты — 25, 33, 41,6, 45, 50 и 62,5 МГц. В сентябре 1993 года на смену POWER1 и его вариантам пришел POWER2 ( кратко известный как «RIOS2»), представлявший собой развитие микроархитектуры POWER1.

Прямыми производными POWER1 являются RISC Single Chip (RSC), однокристальный вариант с уменьшенными функциональными возможностями для систем RS/6000 начального уровня, и RAD6000 , радиационно-стойкий вариант RSC для космических приложений. Косвенным производным от POWER1 является PowerPC 601 , вариант RSC с ограниченными возможностями, предназначенный для потребительских приложений.

POWER1 примечателен тем, что он представлял собой ряд новинок для IBM и вычислительной техники в целом. Это был первый RISC- процессор IBM , предназначенный для высокопроизводительных приложений ( ROMP считался коммерческим провалом и не использовался в высокопроизводительных рабочих станциях), он был первым, реализовавшим новую на тот момент архитектуру набора команд POWER, и это был первый успешный процессор IBM. RISC-процессор. Что касается вычислений, POWER1 будет известен как первый процессор, реализовавший ту или иную форму переименования регистров и выполнения вне очереди — метод, который повышает производительность суперскалярных процессоров, но ранее был зарезервирован для мэйнфреймов .

POWER1 также послужил основой для последовавших за ним весьма успешных семейств процессоров POWER , PowerPC и Power ISA , имеющих сотни различных реализаций.

Компилятор GCC с открытым исходным кодом удалил поддержку POWER1 (RIOS) и POWER2 (RIOS2) в версии 4.5. [1]

Микроархитектура

POWER1 — это 32-битный двусторонний суперскалярный процессор. Он содержит три основных исполнительных блока: блок с фиксированной запятой (FXU), блок ветвления (BPU) и блок с плавающей запятой (FPU). Хотя POWER1 представляет собой 32-битный процессор с 32-битным физическим адресом , его виртуальный адрес имеет длину 52 бита. Было выбрано большее виртуальное адресное пространство, поскольку оно повышало производительность приложений, позволяя каждому из них иметь большой диапазон адресов в 4 ГБ .

POWER1 — это процессор с прямым порядком байтов , который использует иерархию кэша Гарвардского типа с отдельными кэшами инструкций и данных. Кэш инструкций, называемый IBM «I-cache», имеет размер 8 КБ и является двусторонним ассоциативным набором с размером строки 64 байта. I-кэш расположен на чипе ICU. Кэш данных, называемый IBM «D-кэшем», имеет размер 32 КБ для конфигураций RIOS.9 и 64 КБ для конфигураций RIOS-1. D-кэш является четырехсторонним ассоциативным набором с размером строки 128 байт. В D-кэше используется схема обратного хранения, при которой данные, которые должны быть сохранены, записываются в кэш, а не в память, чтобы уменьшить количество операций записи, предназначенных для памяти. Схема обратного хранения используется для предотвращения монополизации процессором доступа к памяти.

Хотя POWER1 был высокопроизводительной конструкцией, он не был способен к многопроцессорной обработке и, как таковой, находился в невыгодном положении, поскольку единственным способом повышения производительности было повышение тактовой частоты процессора, что было трудно сделать с таким большим многочиповым процессором. дизайн. IBM использовала кластеризацию, чтобы преодолеть этот недостаток в системах POWER1, позволяя им эффективно функционировать, как если бы они были многопроцессорными системами. Эта концепция подтверждается популярностью суперкомпьютеров SP1 на базе POWER1. Поскольку POWER1 был основой микропроцессоров POWER2 и P2SC , отсутствие многопроцессорности перешло и на эти более поздние процессоры POWER. Многопроцессорность не поддерживалась до появления POWER3 в 1998 году.

Физическое описание

МОЩНЫЙ ЦП настольной рабочей станции начального уровня RS/6000 32H.
Микросхемный комплекс процессора РИОС-1  (Каждая линия представляет собой 32-битную шину.)
Микросхемный комплекс процессора RIOS.9  (Каждая линия представляет собой 32-битную шину.)

POWER1 — это многокристальный процессор, построенный из отдельных чипов, соединенных друг с другом шинами. POWER1 состоит из блока кэша инструкций (ICU), блока с фиксированной запятой (FXU), блока с плавающей запятой (FPU), нескольких блоков кэша данных (DCU), блока управления памятью (SCU) и блока управления памятью (SCU). блок ввода/вывода . Благодаря своей модульной конструкции IBM смогла создать две конфигурации, просто варьируя количество DCU: RIOS-1 и RIOS.9 . Конфигурация RIOS-1 имеет четыре DCU (предполагаемое количество) и работает на тактовой частоте до 40 МГц, тогда как ЦП RIOS.9 имел два DCU и работал на более низких частотах.

Чипы монтируются на «планарном процессоре», печатной плате (PCB), с использованием технологии сквозных отверстий. Из-за большого количества микросхем с широкими шинами печатная плата имеет восемь плоскостей для разводки проводов, четыре для питания и земли и четыре для сигналов. На каждой стороне платы имеется две сигнальные плоскости, а четыре плоскости питания и земли находятся в центре.

Чипы, составляющие POWER1, изготавливаются по КМОП- технологии 1,0 мкм с тремя слоями межсоединений. Чипы упакованы в корпуса с керамической решеткой выводов (CPGA), которые могут иметь до 300 выводов и рассеивать максимум 4 Вт тепла каждый. Общее количество транзисторов , используемых в POWER1, если предположить, что это конфигурация RIOS-1, составляет 6,9 миллиона, из которых 2,04 миллиона используются для логики и 4,86 ​​миллиона используются для памяти. Площадь кристалла всех чипов вместе взятая составляет 1284 мм². Общее количество сигнальных контактов — 1464.

Чипсы

Блок кэша инструкций (ICU)

ICU содержит кэш инструкций, называемый IBM «I-кэшем», и блок обработки ветвей (BPU). BPU содержит счетчик программ , регистр кода состояния и регистр цикла. ICU содержит 0,75 миллиона транзисторов, из которых 0,2 миллиона используются для логики и 0,55 миллиона используются для SRAM . Размер матрицы ICU составляет примерно 160 мм² (12,7 × 12,7 мм).

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

Регистр кодов условий имеет восемь наборов полей, первые два зарезервированы для инструкций с фиксированной и плавающей запятой, а седьмой — для векторных инструкций . Остальные поля могут использоваться другими инструкциями. Регистр цикла представляет собой счетчик циклов «уменьшение и переход на ноль» без штрафа за ветвление, функция, аналогичная той, которая имеется в некоторых DSP , таких как TMS320C30.

Блок фиксированной точки (FXU)

FXU отвечает за декодирование и выполнение всех инструкций с фиксированной запятой, а также инструкций загрузки и сохранения с плавающей запятой. Для выполнения FXU содержит файл регистров с фиксированной точкой POWER1, арифметико-логическое устройство (АЛУ) для общих инструкций и специальный блок умножения и деления с фиксированной точкой. Он также содержит буферы инструкций, которые получают инструкции как с фиксированной, так и с плавающей запятой из ICU, передавая инструкции с плавающей запятой в FPU, и двусторонний набор-ассоциативный D- TLB на 128 записей для трансляции адресов. FXU содержит около 0,5 миллиона транзисторов, из которых 0,25 миллиона используются для логики и 0,25 для памяти, на кристалле площадью около 160 мм².

Модуль с плавающей запятой (FPU)

Модуль с плавающей запятой POWER1 выполняет инструкции с плавающей запятой, выданные ICU. FPU является конвейерным и может выполнять инструкции одинарной (32-битной) и двойной точности (64-битной). Он способен выполнять инструкции умножения-сложения , что способствовало высокой производительности POWER1 с плавающей запятой. В большинстве процессоров операции умножения и сложения, распространенные в техническом и научном коде с плавающей запятой, не могут быть выполнены за один цикл, как в POWER1. Использование объединенного умножения-сложения также означает, что данные округляются только один раз, что немного повышает точность результата.

Файл регистров с плавающей запятой также находится на микросхеме FPU. Он содержит 32 64-битных регистра с плавающей запятой, шесть регистров переименования и два регистра, которые используются инструкциями деления.

Блок кэширования данных (DCU)

POWER1 имеет кэш данных объемом 64 КБ , реализованный с помощью четырех идентичных блоков кэша данных (DCU), каждый из которых содержит 16 КБ кэша данных. Кэш и шины, соединяющие DCU с другими чипами, защищены ECC. DCU также обеспечивают интерфейс с памятью. Если присутствуют два DCU (конфигурация RIOS.9), ширина шины памяти составляет 64 бита, а если присутствуют четыре DCU (конфигурация RIOS-1), ширина шины памяти составляет 128 бит. Часть интерфейса памяти модулей DCU обеспечивает три функции, которые повышают надежность и доступность памяти: очистка памяти , ECC и управление битами. Каждый DCU содержит около 1,125 миллиона транзисторов, из которых 0,175 миллиона используются для логики и 0,95 миллиона используются для SRAM, на кристалле размером примерно 130 мм² (11,3 × 11,3 мм).

Блок управления хранилищем (БКУ)

POWER1 управляется микросхемой SCU. Все коммуникации между микросхемами ICU, FXU и DCU, а также памятью и устройствами ввода-вывода контролируются SCU. Хотя DCU предоставляют средства для очистки памяти, именно SCU управляет этим процессом. SCU содержит около 0,23 миллиона транзисторов, все логические, на кристалле площадью около 130 мм².

Блок ввода/вывода

Интерфейсы ввода-вывода POWER1 реализованы блоком ввода-вывода, который содержит контроллер канала ввода-вывода (IOCC) и два адаптера последовательного канала (SLA). IOCC реализует интерфейс Micro Channel и управляет транзакциями ввода-вывода и DMA между адаптерами Micro Channel и системной памятью. Каждое из двух соглашений об уровне обслуживания реализует последовательный оптоволоконный канал, предназначенный для соединения систем RS/6000 вместе. Оптические каналы связи не поддерживались на момент выпуска RS/6000. Блок ввода-вывода содержит около 0,5 миллиона транзисторов, из которых 0,3 миллиона используются для логики и 0,2 миллиона для памяти, на кристалле площадью около 160 мм².

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

Рекомендации

  1. ^ «Серия выпусков GCC 4.5 — изменения, новые функции и исправления - Проект GNU - Фонд свободного программного обеспечения (FSF)» . gcc.gnu.org .

дальнейшее чтение