Alasir Enterprises
Main Page >  Articles >  Alpha: история в фактах и комментариях  

 
Main Page
 
 
Reviews
 
Articles
 
Software
 
Reference
 
Motley
 
 
About Us
 
 
Alpha: история в фактах и комментариях
Alpha Powered Dig my grave both long and narrow
Make my coffin neat and strong 

(из старой американской песни)

Павел Болотов
 
Дата публикации: 14 апреля 2005
Дата последнего изменения: 22 апреля 2007

Содержание:
in English

 
Alpha 21064 (EV4, EV45) and 21066 (LCA4, LCA45)

Первый процессор из семейства Alpha получил название 21064 ("21" указывал, что Alpha — это архитектура XXI века, "0" — процессорное поколение, "64" — разрядность в битах) и кодовое наименование EV4 ("EV" является [предположительно] аббревиатурой "Extended VAX", а "4" — поколением технологического процесса, CMOS4; в свою очередь, CMOS есть аббревиатура Complementary Metal Oxide Semiconductor). Стоит отметить, что прототип EV4 был готов ещё в 1991, хотя и на основе менее детализированного CMOS3 техпроцесса, а поэтому с уменьшенными кэшами и без блока вычислений с плавающей запятой. Тем не менее, он сыграл свою роль в отладке архитектуры и программного обеспечения. EV4 был представлен в ноябре 1992 на COMDEX в Лас-Вегасе (Невада, США) и поступил в производство на собственном 3-слойном 0,75µ техпроцессе (впоследствии производство было переведено на оптическую модификацию CMOS4 — 0,675µ CMOS4S). Состоял из 1,68 млн. транзисторов, обладал площадью ядра в 233мм² и был рассчитан на напряжение питания в 3,3В. Выпускался с тактовыми частотами от 150МГц до 200МГц (ТDP от 21Вт до 27Вт). Поддерживал работу в многопроцессорном режиме как один из ключевых моментов архитектуры. Форм-фактор: PGA-431 (Pin Grid Array).
 
Кэш-память L1 была интегрирована: 8Кб для команд (I-cache, instruction cache), с прямым отображением (direct-mapped), а также 8Кб для данных (D-cache, data cache), с прямым отображением и сквозной записью (write-through). Задержки при чтении из D-cache составляли 3 такта. Каждая строка I-cache состояла из 32 байт команд, 21-битного тэга, 8-битного поля истории переходов и нескольких вспомогательных полей. Каждая строка D-cache состояла из 32 байт данных и 21-битного тэга. Кэш-память L2 (B-cache, back-up cache) был рекомендуемой опцией, набирался на микросхемах синхронной или асинхронной статической памяти, работал в режиме обратной записи (write-back) с прямым отображением и упреждающим чтением (read-ahead), мог иметь размер до 16Мб (обычно от 512Кб до 2Мб). Каждая строка B-cache состояла из 32 байт данных или команд с 1-битным long-word parity или 7-битным long-word ECC, максимум 17-битного тэга с 1 битом чётности и 3 битов состояния с 1 битом четности. Скорость чтения/записи B-cache программировалась в тактах процессора. Системная шина данных была шириной в 64 или 128 бит (программируемо, с 1-битным long-word parity или 7-битным long-word ECC) и мультиплексировалась с шиной данных к B-cache, так что физические линии переключались при необходимости между этими логическими шинами. Ширина системной шины адреса составляла 34 бита. Организационно B-cache был включающим (inclusive) D-cache, то есть поддерживал полную копию содержимого последнего. Операции чтения/записи в B-cache являлись прерогативой исключительно процессора, но системной логикe было разрешено чтение файла тэгов (B-tag), что было удобно для обеспечения согласованности (cache coherence) B-cache. Другими словами, системная логика могла проверять содержимое B-cache во время так называемых отслеживающих операций (snoop operations) без вмешательства процессора.
 
EV4 имел один целочисленный конвейер (E-box, 7 стадий) и один вещественный конвейер (F-box, 10 стадий). Декодер и планировщик инструкций (I-box) был в состоянии подавать 2 команды за такт в порядке очереди (in-order) на исполняющие устройства, то есть на E-box, F-box и блок загрузки/сохранения (A-box). Контроллер кэш-памяти и системной шины (C-box) работал в тесном взаимодействии с A-box и управлял как интегрированными I-cache и D-cache, так и внешним B-cache. Расчёт виртуальных адресов входил в компетенцию E-box. Также присутствовал блок предсказания переходов (branch prediction unit) с таблицей переходов на 4096 записей (branch history table) по 2 бита каждая. I-TLB (Instruction TLB) обладал 8 записями для 8Кб страниц и 4 записями для 4Мб страниц, а D-TLB (Data TLB) — 32 записями для страниц размером от 8Кб до 4Мб. Оба TLB были полностью ассоциативны (fully-associative).
 
Micrograph of Alpha 21064 (EV4) Floor-plan of Alpha 21064 (EV4)
DEC Alpha 21064 (EV4) - front view DEC Alpha 21064 (EV4) - back view
(кликнуть для увеличения, 59Кб) (кликнуть для увеличения, 134Кб)

Первая рабочая станция архитектуры Alpha от DEC была выпущена в ноябре 1992, DEC 3000 Model 500 AXP (кодовое имя Flamingo), с 150МГц 21064, 512Кб B-cache, 32Мб оперативной памяти, интегрированным 8-битным видеоконтроллером с 2Мб VRAM, SCSI HDD на 1Гб, SCSI CD-ROM, встроенным контроллером Ethernet 10Мбит (толстый коаксиал и витая пара), встроенным звуковым и ISDN контроллером, а также с 19-дюймовым монитором (1280х1024x72Гц). Вся периферия обслуживалась шиной TURBOchannel собственной разработки. Цена была впечатляющей: 39 тыс. USD, хотя предлагалась и более дешёвая DEC 3000 Model 400 AXP (с 133МГц 21064), но всё же была необходимость в более доступном решении.
 
DEC пыталась создать персональный компьютер на основе 21064 и периферийной шины EISA или ISA начиная с февраля 1991. Было успешно спроектировано и выпущено 35 систем в рамках проекта Бета (the Beta project), каждая из которых обладала 100МГц прототипом EV4, набором системной логики Intel 82380 с поддержкой шины ISA, а также многим другим аппаратным обеспечением как собственного производства, так и доступного на рынке. Последующий проект Тета (the Theta project) постигла неудача из-за ошибок при проектировке материнской платы на основе набора системной логики Intel 82350DT с поддержкой шины EISA. Тем не менее, две команды разработчиков из Мэйнарда (Массачусетс, США) и Эйра (Шотландия, Великобритания) сумели устранить неполадки и выпустили DECpc AXP 150 (кодовое имя Jensen) в августе 1992. Эта машина располагала 150МГц EV4, 512Кб B-cache, материнской платой формата AT, стандартными 72-контактными FPM parity SIMMs и EISA периферией. Хотя DECpc AXP 150 работал с DEC OSF/1 и OpenVMS, но его будущее всё же связывалось с Windows NT. Он был представлен 28 октября 1992 в Нью-Йорке (Нью-Йорк, США) на презентации Windows on Wall Street, когда Билл Гэйтс впервые продемонстрировал общественности свою новую ОС.
 
Также имелось три семейства серверов на основе 21064: 2-процессорные DEC 4000, 6-процессорные DEC 7000 (с 182МГц процессорами) и DEC 10000 (с 200МГц процессорами). DEC 7000 и DEC 10000 были модульными машинами, которые располагали по 4Мб B-cache на каждый процессор и до 14Гб оперативной памяти (с 7 установленными 2Гб модулями). В то время как DEC 4000 был рассчитан на работу с периферийной шиной FutureBus+, DEC 7000 и DEC 10000 также могли быть сконфигурированы для работы с периферийной шиной XMI (при установке соответствующего модуля или даже нескольких). DEC 7000 и DEC 10000 под названиями VAX 7000 и VAX 10000 предлагались с процессорами NVAX+ (переконфигурация была возможна путём простой замены процессорных модулей).
 
Несмотря на отличную производительность, 21064 был довольно дорог для значительной части потенциальных покупателей, а поэтому в сентябре 1993 был анонсирован его бюджетный собрат, 21066 (LCA4 или LCA4S). Этот процессор был основан на ядре 21064, но с дополнительно интегрированными контроллерами оперативной памяти и шины PCI, а также некоторыми второстепенными функциональными блоками. Однако, разрядность системной шины данных была урезана до 64 бит, что негативно сказалось на производительности. LCA4 производился по 0,675µ CMOS4S техпроцессу и его площадь оказалась ещё меньше, чем у оригинального EV4 (209мм² по сравнению с 233мм²), а тактовые частоты были занижены (от 100МГц до 166МГц), в значительной мере из-за потенциальной угрозы перегрева в плохо вентилируемых настольных системных блоках того времени, а также чтобы не создавать дополнительной конкуренции EV4. Количество транзисторов в ядре составило 1,75 млн., a напряжение питания — 3,3В. Дизайн этого процессора был лицензирован Mitsubishi, которая также производила LCA4, включая и 200МГц версию.
 
В октябре 1993 на Microprocessor Forum был анонсирован 21064А (EV45) — обновлённая версия EV4, производимая по собственному 4-слойному 0,5µ CMOS5 техпроцессу. В ноябре 1994 на COMDEX был представлен 21066А (LCA45), почти аналогично модифицированная версия LCA4. Стоит отметить, что манера маркетологов DEC добавлять букву к модели процессора при перепланировке ядра под новый техпроцесс сохранилась и в будущем. Собственно состав процессорных ядер изменился незначительно. EV45 теперь обладал удвоенным размером кэш-памяти L1 (16Кб I-cache + 16Кб D-cache), к полям данных и тэгам I-cache и D-cache было добавлено по биту чётности, поля истории переходов I-cache были расширены до 16 бит, ассоциативность D-cache была увеличена до 2 каналов (2-way set associative), а к режимам контроля над системной шиной данных был добавлен 1-битный byte parity. Также в EV45 и LCA45 был незначительно модифицирован F-box (оптимизация деления: в EV4 одна операция требовала 34 такта для операндов одинарной точности и 63 такта для операндов двойной точности вне зависимости от значений операндов; в EV45 она уже требовала от 19 до 34 тактов для операндов одинарной точности и от 29 до 63 тактов для операндов двойной точности в зависимости от значений операндов). LCA45 производился также и на мощностях Mitsubishi. Площади ядер уменьшились: до 164мм² у EV45 и до 161мм² у LCA45. Количество транзисторов в ядре EV45 возросло до 2,85 млн., а в ядре LCA45 осталось неизменным — 1,75 млн. В конечном результате, энергопотребление обоих процессоров в расчёте на единицу частоты сократилось, хотя напряжение питания осталось неизменным — 3,3В. Тактовые частоты 21064A составляли от 200МГц до 300МГц (TDP от 24Вт до 36Вт), а 21066A — от 166 до 233МГц.
 
21066 и 21066A, в основном, нашли своё применение в персональных компьютерах DEC UDB (Universal Desktop Box; кодовое имя Multia), хотя машины с этим названием также оснащались процессорами Intel Pentium. Помимо этого, 21066 и 21066A использовались в Tadpole ALPHAbook 1, первом (и единственном?) Alpha-ноутбуке.
 
Так как DEC участвовала в разработках оборудования под заказ Министерства обороны США, то в 1994 были спроектированы процессоры 21068 (66МГц) и 21068А (100МГц), являвшиеся вариантами LCA4 и LCA45, адаптированными под военные нужды (пассивное охлаждение, переносимость к вибрации и жёстким температурным условиям, пр.). Например, к военному обородованию могли предъявляться требования по сохранению работоспособности в температурном режиме от -54 °C до +70 °C при 30-минутном допуске в +85 °C (взято из MIL-E-5400T, General Specification for Electronic Equipment, Aerospace от мая 1990). В 1986 DEC заключила соглашение с Raytheon Company о ведении совместных разработок для Министерства обороны, тогда ещё на основе архитектуры VAX (доработка VAX 6200). Проектирование DEC AXPvme 64 было завершено к 1994. В основе системы лежал 66МГц 21068 со стандартной для военного оборудования периферийной шиной VME64, а также некоторой PCI и ISA периферией, включая DEC 21040 Ethernet-контроллер. Этот модуль продавался как Raytheon Model 910.
 
В июле 1994 были анонсированы первые рабочие станции на основе 21064A: DEC 3000 Model 900 AXP и Model 700 AXP (кодовые имена Flamingo45 и Sandpiper45 соответственно). Первая оснащалась 275МГц процессором, а вторая — 225МГц. Обе рабочие станции обладали 2Мб B-cache, 128Мб оперативной памяти, 24-битной видеокартой семейства ZLX, периферией FastSCSI и тем же сетевым, звуковым и ISDN аппаратным обеспечением, что и Model 500 AXP. Первая рабочая станция предлагалась по цене в 43,4 тыс. USD, вторая — в 27,7 тыс. USD.
 
Первые наборы системной логики для архитектуры Alpha использовали периферийные шины TURBOchannel, FutureBus+ и XMI. В частности, безымянный набор для DEC 3000 состоял из 6 микросхем: 1 ADDR ASIC, 1 TC (TURBOchannel) ASIC, и 4 SLICE ASICs; последние обслуживали 128-битный канал данных системной шины, 256-битный канал данных шины памяти и 32-битный канал данных к TC ASIC. Хотя эта и другие реализации были весьма скоростными для своего времени (около 100Мб/с на шину), они не получили широкого распространения, а количество доступной периферии было небольшим. Поэтому DEC обратила внимание на новую перспективную шину PCI. В начале 1994 был представлен набор системной логики DEC Apecs в двух исполнениях: с 64-битной системной шиной данных (21071) и 128-битной (21072). Вся разница между ними состояла в том, что 21071 состоял из 4 микросхем (1 универсальный контроллер — COMANCHE, 2 микросхемы data slice — DECADE, 1 контроллер шины PCI — EPIC), а 21072 — из 6 (дополнительно ещё 2 DECADE). Поддерживал частоту системной шины в 33МГц, до 16Мб B-cache, до 4Гб памяти FPM parity со временем доступа от 100 до 50нс (8 банков) и до 16Мб двухпортовой VRAM (1 банк) для поддержки опционального буфера видеокадра. Поддержка шины ISA или EISA могла быть реализована посредством стандартного моста, такого как Intel 82378IB (ISA) или 82378EB (EISA). Использовался в материнских платах EB64+ и AlphaPC 64 (кодовое имя Cabriolet).
Drawing of DEC Apecs
<< Предыдущая страница Следующая страница >>

Copyright (c) Болотов Павел Владимирович, 2005-07. Все права сохранены.
Полная или частичная перепечатка без разрешения автора запрещена.
 
Designed and maintained by Alasir Enterprises, 1999-2007
rhett from alasir.com, walter from alasir.com