Смекни!
smekni.com

Архитектура и производительность серверных ЦП (стр. 8 из 13)

В 1994 г. появился PA-7100LC (Low Cost, низкая цена), предназначавшийся для массовых систем. Это был однокристальный процессор со встроенным контроллером оперативной памяти FPM или EDO DRAM, со 128-бит шиной (с 16-бит каналом ЕСС). I-cache и D-cache были сведены в один унифицированный кэш объемом до 2 Мбайт, кроме того, был предусмотрен встроенный в ядро 1-Кбайт кэш команд. В структуру Е-box был добавлен второй конвейер. Количество записей в TLB сократилось до 64. Многопроцессорный режим предусмотрен не был. Для связи с периферией использовалась 32-бит шина GSC (General System Connect), причем данные и адреса передавались по одному и тому же каналу (мультиплексировались). Процессор изготавливался по трехслойному 75-нм технологическому процессу и был рассчитан на тактовые частоты до 100 МГц. Еще одним важным новшеством стало появление дополнительного набора команд МАХ-1, позволяющего проводить векторные расчеты, моделируя два 16-бит кванта данных в одном целочисленном регистре, что заметно ускоряло обработку однородных потоковых данных, например MPEG-кадров. Таким образом, Hewlett-Packard оказалась первой компанией, которая ввела поддержку SIMD-команд в архитектуру ЦП общего назначения.

На смену РА-7100 в 1995 г. пришел РА-7200. Он обладал всеми функциональными достоинствами РА-7100LC и был оснащен новой высокоскоростной системной шиной Runway, обеспечивающей скорость обмена данными до 960 Мбайт/с при частоте 120 МГц. Внешние I-cache и D-cache остались без изменений, но в ядро ЦП был встроен вспомогательный унифицированный 2-Кбайт кэш. ЦП мог быть использован в многопроцессорных системах — до четырех ЦП, подключенных к общей шине Runway. Добавилась поддержка порядка следования байт little-endian. Процессор изготавливался по 550-нм проектным нормам, тактовые частоты удалось довести до 140 МГц.

Появившийся в середине 1996 г. PA-7300LC оказался последним 32-бит ЦП этой архитектуры. Данный процессор представлял собой доработанный вариант PA-7100LC, в который благодаря четырехслойному 500-нм технологическому процессу удалось встроить 64-Кбайт I-cache и D-cache с двухканальной ассоциативностью. Был предусмотрен и внешний унифицированный B-cache с прямым отображением и сквозной записью, его объем мог достигать 8 Мбайт. Встроенный контроллер оперативной памяти был сохранен. Использовалась более скоростная модифицикация системной шины, GSC+. Как и у PA-7100LC, работа в многопроцессорном режиме не была предусмотрена. Хотя тактовые частоты возросли до 180 МГц, а показатели производительности этого ЦП были довольно хороши, лидером он не стал. Например, по результатам SPECint95 рабочая станция HP Visualize C160L, оборудованная 160-МГц PA-7300LC с 1-Мбайт B-cache, показывала производительность, близкую DEC AlphaStation 500/266 (266-МГц 21164 с 2-Мбайт B-cache), Sun Ultra 2 1200 (200-МГц UltraSPARC с 1-Мбайт B-cache) или Dell Dimension XPS Pro (200-МГц Pentium Pro с 256-Кбайт S-cache). По результатам SPECfp95 DEC AlphaStation 500/266 оказалась быстрее HP Visualize C160L на 47%, Sun Ultra 2 1200 — на 51%, a Dell Dimension

XPS Pro — медленнее на 16%. Таким образом, HP Visualize C160L вряд ли могла составить достойную конкуренцию 64-бит рабочим станциям на 21164 и UltraSPARC, а 32-бит рабочие станции на Pentium Pro находились в более низкой ценовой категории.

Необходимо отметить, что существовали и другие 32-бит ЦП архитектуры РА-RISC компании Hitachi. В 1993 г. появился РА/50 (изготавливаемый по трехслойному 600-нм техпроцессу) в двух вариантах:

PA/50L с тактовой частотой до 33 МГц и напряжением питания ядра 3,3 В предназначался для систем с низким энергопотреблением,

РА/50М с тактовой частотой до 66 МГц и напряжением питания ядра Б В — для стандартных конфигураций.

По архитектуре ядра обе модификации идентичны: только два конвейера (один целочисленный и один вещественный) и небольшие встроенные 8-Кбайт I-cache и 4-Кбайт D-cache — оба с двухканальной ассоциативностью. Традиционный для РА-7х00 большой скоростной внешний кэш отсутствовал. Имелся TLB I-cache на 32 записи и TLB D-cache на 64 записи. Был предусмотрен встроенный контроллер оперативной памяти с поддержкой SDRAM и аппаратной предвыборки данных (data prefetch).

Представленный в августе того же года на конференции Hot Chips процессор HARP-1 (Hitachi Advanced RISC Processor) обладал всеми функциональными достоинствами РА/50. Размер D-cache был увеличен до 16 Кбайт при сохранении двухканальной ассоциативности. Емкости обоих TLB были расширены до 128 записей каждый. Были добавлены внешние кэши команд и данных по 512 Кбайт каждый. Благодаря более совершенному четырехслойному 500-нм технологическому процессу, а также более высокому порогу энергопотребления, тактовые частоты ядра достигли 150 МГц.

Возвращаясь к продукции Hewlett-Packard, хотелось бы заметить, что к 1996 г. спрос на 32-бит RISC-серверы и рабочие станции упал, а конкуренты уже предлагали 64-бит решения. Поэтому не было ничего удивительного в том, что в январе вышла в свет уже 64-бит архитектура PA-RISC 2.0 и был представлен первый ЦП нового поколения — РА-8000.

Ядро ЦП было полностью перепроектировано, было реализовано внеочередное выполнение команд (предусмотрен буфер переупорядочения емкостью в 56 команд). Количество конвейеров ФУ увеличилось в несколько раз: четыре на Е-box (два основных и два вспомогательных), четыре на F-box (два для обработки операций умножения и сложения, два для расчета деления и вычисления квадратного корня), два на А-box (универсальные, т. е. каждый в состоянии рассчитывать виртуальные адреса и выполнять операции загрузки-сохранения). Учитывая ограничения пятислойного 500-нм техпроцесса, разработчики РА-8000 пошли на кардинальный шаг, вовсе отказавшись от интеграции кэш-памяти в ядро ЦП. А так как конвейеры ФУ остались довольно короткими (хотя мы и не располагаем информацией о точном количестве стадий каждого конвейера), то это фактически исключало возможность работы ЦП на высоких тактовых частотах. Это позволило использовать внешние I-cache и D-cache (оба двухпортовые и с прямым отображением, изготовленные из микросхем статической памяти), работающие на частоте, близкой к частоте ядра ЦП и подключенные к нему независимыми шинами. На практике использовались 6,7-нс синхронные 1-Мбит микросхемы SRAM с отложенной записью, формирующие кэши размером по 1 Мбайт. Был предусмотрен унифицированный полноассоциативный двухпортовый TLB на 96 записей, а также таблица истории условных переходов на 256 записей и кэш адресов переходов на 32 записи. Поддерживалось как статическое, так и динамическое предсказание условных переходов. В качестве системного интерфейса была применена уже опробованная с РА-7200 шина Runway. Также сохранилась работа в четырехканальном многопроцессорном режиме.

РА-8000 оказался вторым после POWER2 по количеству контактов на корпусе — 1085. Учитывая 64-бит целочисленную реализацию, был обновлен вспомогательный набор команд, который получил название МАХ-2 и предназначался для одновременной обработки уже четырех 16-бит квантов данных, находящихся в любом целочисленном регистре. Сохранилась впервые примененная в РА-7200 поддержка порядка следования байт little-endian, в дополнение к изначально заложенной в архитектуру big-endian. Важно, что при столь серьезных изменениях гарантировалась полная обратная совместимость с существующей 32-бит программной базой, написанной для предыдущих ЦП.

В мае 1997 г. была выпущена незначительно доработанная версия РА-8200, работающая на более высоких тактовых частотах, насколько это было возможно в рамках того же техпроцесса. Модификации подверглась логика предсказания условных переходов, отныне оперирующая таблицей истории переходов на 1024 записи. Емкость TLB была увеличена до 120 записей. Благодаря появлению на рынке 5-нс синхронных 4-Мбит микросхем SRAM с отложенной записью, объемы I-cache и D-cache увеличились вдвое. Заметим, что на момент выхода РА-8000 этот процессор обошел по производительности лидировавшего до этого 21164: при сравнении HP Visualize C180-XP (180-МГц РА-8000 с 1-Мбайт I-cache и 1-Мбайт D-cache) с DEC AlphaStation 5/333 (333-МГц 21164 с 2-Мбайт B-cache) первая оказалась производительнее в SPECint95 на 20%, а в SPECfp95 — на 50%. Лидерство РА-8000 продержалось всего несколько месяцев, пока стремительно набирающий тактовые частоты 21164А не вернул все на круги своя. 240-МГц РА-8200 смог вырваться вперед в SPECfp95, но уже не в SPECint95.

В сентябре 1998 г., благодаря переходу на пятислойный 250-нм техпроцесс, появился процессор РА-8500. Новый технологический процесс позволил достичь более высоких тактовых частот ядра ЦП, а также безболезненно интегрировать I-cache и D-cache, избавившись от сравнительно дорогих внешних микросхем SRAM. Размер I-cache составил 0,5 Мбайт с четырехканальной ассоциативностью, a D-cache — 1 Мбайт с четырехканальной ассоциативностью и обратной записью. В то же время задержки чтения из кэшей были небольшими, учитывая размеры кэшей: три такта. Размер таблицы истории переходов был увеличен в два раза (до 2048 записей), увеличилось и количество записей в TLB (со 120 до 160). Значительным изменениям подверглась системная шина Runway: она стала асинхронной (независимой от частоты ядра ЦП), а ее частота была зафиксирована на уровне 120 МГц при неизменной ширине канала данных в 64 бит (не считая битов ЕСС), эффективная частота удваивалась благодаря применению технологии DDR. На электрическом уровне шина также подверглась значительным изменениям: на смену 3,3-В терминируемой схеме push/pull пришла 1,5-В параллельно-терминируемая схема open drain. В итоге это позволило достичь эффективной скорости обмена данными по шине 1,92 Гбайт/с. Благодаря интеграции I-cache и D-cache количество контактов в разъеме ЦП сократилось почти вдвое, до 544.

В январе 2000 г. появилась модификация РА-8500 в рамках того же техпроцесса, работающая на более высоких тактовых частотах: РА-8600. В августе 2001 г. был выпущен РА-8700, уже по семислойному 180-нм техпроцессу с применением SOI — у него были увеличены до 0,75 Мбайт I-cache и до 1,5 Мбайт D-cache. Вдвое была увеличена емкость TLB (до 240 записей).

В 2003 г. после перехода на 130-нм технологию SOI был выпущен двухъядерный РА-88ОО с 0,75-Мбайт I-cache и 0,75-Мбайт D-cache в расчете на каждое ядро. Кроме того, был предусмотрен интерфейс для В-cache размером до 32 Мбайт. Системная шина была заменена на используемую ЦП семейства Itanium 2, что позволило максимально сблизить обе аппаратные платформы. Выпущенный в 2005 г. РА-8900 отличается лишь возросшими тактовыми частотами ядра, так как выпускается по тому же технологическому процессу, что и РА-8800. РА-8900 — это последний ЦП архитектуры РА-RISC, которая вскоре будет полностью замещена архитектурой Itanium. UNIX-подобная ОС для архитектуры РА-RISC несколько лет назад была перенесена на архитектуру Itanium со всей сопутствующей программной базой.