Микропроцессор DEC Alpha AXP 21064

DEC Alpha, также известный как Alpha AXP, — 64-разрядный RISC микропроцессор, первоначально разработанный и произведённый компанией DEC, которая использовала его в собственной линейке рабочих станций и серверов. Микропроцессор был создан для компьютеров, которые планировались на смену серии VAX и изначально поддерживался операционными системами VMS и DEC OSF/1 AXP (в 1995 переименована в Digital UNIX, после покупки DEC компанией Compaq переименована в Tru64 UNIX). Позднее на него были перенесены свободные операционные системы GNU/Linux и BSD UNIX. Компания Microsoft производила Windows NT с поддержкой Alpha до версии Windows NT 4.0 SP6, однако поддержка была свёрнута после выпуска Windows 2000 Release Candidate 2.

ИсторияПравить

Прямым предком архитектуры Alpha является проект раннего RISC-процессора PRISM, который сам по себе является результатом нескольких более ранних проектов. Фирма DEC продвигала на рынок серию рабочих станций DECstation, использовавших процессоры с архитектурой MIPS, и нет ничего удивительного в том, что PRISM имел много общего с MIPS. Следует отметить отличие MIPS и PRISM: PRISM поддерживал программируемый пользователем микрокод (также известный как Epicode). PRISM проектировался с намерением реализовать для него новую операционную систему, известную как Emerald, которая бы позволяла запускать как «родные» программы PRISM, использовавшие все возможности процессора, так и, после незначительной модификации, существующие программы операционной системы VMS для архитектуры VAX. Руководство DEC сомневалось в необходимости разрабатывать новую компьютерную архитектуру для замены существующих семейств VAX и DECstation, и в 1988 году проект PRISM был закрыт.

Но ко времени закрытия проекта, второе поколение RISC процессоров (например, с архитектурой SPARC), достигло гораздо лучшего соотношения цена/производительность, чем серия VAX. Было очевидно, что третье поколение полностью обгонит VAX по всем характеристикам, а не только по цене. Было начато исследование, целью которого являлось определить, может ли быть создана RISC-архитектура, которая бы могла использоваться для запуска операционной системы VMS. Новая разработка использовала большую часть базовых концепций PRISM, но была доработана для того, что бы запускать без модификаций OS VMS и программы для неё с приемлемой скоростью. Было принято решение разработать полностью 64-разрядную архитектуру (архитектура PRISM была 32-разрядной). Со временем новая архитектура превратилась в то, что сейчас называется Alpha. Архитекторами системы команд процессоров Alpha были Dick Sites и Rich Witek.

Наибольший вклад процессоров Alpha в микропроцессорную индустрию (да и главная причина их высокой производительности) заключается не столько в самой архитектуре, сколько в превосходной её реализации. В то время (как, впрочем, и сейчас), в микроэлектронной промышленности доминировало автоматизированное проектирование, а для разводки цепей использовалось специальное программное обеспечение, реализовывавшее хитроумные алгоритмы. Разработчики микросхем в DEC были сторонниками трудоёмкого ручного проектирования, в частности именно так создавались компьютеры с очень непростой архитектурой VAX. Процессоры Alpha показали на своём примере, что ручное проектирование, использованное при работе над простой и прозрачной архитектурой позволяет достичь гораздо более высоких рабочих частот, нежели использование автоматизированных систем проектирования. Это привело к возрождению ручной разработки цепей среди разработчиков микропроцессоров.

Официально, процессоры Alpha обозначались как серия DECchip 21x64, где «21» обозначало 21й век, а «64» указывало на то, что процессор являлся 64-разрядным, средняя цифра указывала поколение архитектуры Alpha. Внутри компании, процессоры Alpha обозначались EV номерами, EV официально расшифровывалось как «Extended VAX» (расширенный VAX), но была и другая, юмористическая расшифровка — «Electric Vlasic».[1][Источник?]

Первые несколько поколений процессоров Alpha были наиболее инновационными для своего времени. Первая версия, 21064 или EV4, был первым КМОП микропроцессором, рабочая частота которого сделала его конкурентом миникомпьютерам и мейнфреймам, использовавшим гораздо более энергоёмкую элементную базу ЭСЛ. Второе поколение, 21164 или EV5, был первым микропроцессором, имевшим накристальный L2-кэш большого объёма. Процессор 21264 (EV6), был первым микропроцессором, совместившим в себе как высокую рабочую частоту, так и сложную out-of-order execution микроархитектуру.

По информации от источников внутри DEC, выбор торговой марки AXP для процессоров был сделан юридическим отделом DEC, который опасался проблем, аналогичных проблемам с торговой маркой VAX. После длительного поиска было выбрано название AXP, так как оно было ни кем не занято. В компьютерной индустрии известна шутка, что AXP расшифровывается как «Almost Exactly PRISM» — почти точный PRISM.

Поколения и версииПравить

Во время объявления процессора, было провозглашено, что его архитектура будет использована в течение следующих 25 лет. Хотя этому не суждено было сбыться, тем не менее, процессоры Alpha имели достаточно долгую жизнь. Первая версия, Alpha 21064 (также известная как EV4) была представлена в 1992 и работала на частоте до 192 МГц, через несколько месяцев, после перехода на чуть более совершенный технологический процесс (с 0,75 мкм до 0,675 мкм), была создана версия EV4S, способная работать на частоте 200 МГц. 64-разрядный процессор был конвейерным и суперскалярным, как и другие RISC-процессоры, но, тем не менее, превосходил их всех, что позволило фирме DEC назвать его самым быстрым процессором в мире. Тщательная проработка цепей процессора (что являлось заслугой Hudson design team) и централизованные цепи подачи синхросигналов позволили процессору работать на высоких частотах, несмотря на то, что микроархитектура процессора была во многом аналогична другим RISC-процессорам. Для сравнения, более дешёвый Intel Pentium работал на частоте 66 МГц, хотя был выпущен весной следующего года.

Процессор Alpha 21164 (EV5) стал доступен в 1995 году и работал на частотах до 333 МГц. В июле 1996 частота была доведена до 500 МГц, а в марте 1998 — до 666 МГц. Кроме того, в 1998 году был выпущен 21264 (EV6), первоначальная тактовая частота которого составляла 450 МГц; со временем она возросла до 1,25 ГГц (это было сделано в моделях 2001 года 21264C/EV68CB). В 2003 году был выпущен EV7 Marvel, работавший на частоте от 1 до 1,15 ГГц, и представлявший собой ядро EV68, оснащённое четырьмя каналами межпроцессорного обмена; пропускная способность каждого канала составляла 1,6 ГБ/с, что позволяло значительно поднять производительность многопроцессорных систем. Около 500000 систем на базе процессора Alpha было продано к концу 2000 года.

В 1999 производство процессоров Alpha было лицензировано компанией Samsung. Последовавшая покупка компании Digital компанией Compaq привела к тому, что большая часть производства продукции, использовавшей Alpha, было передано компании API NetWorks, Inc. (ранее называвшейся Alpha Processor Inc.), частной компании, основанной Samsung и Compaq. В октябре 2001 года, компания Microway становится эксклюзивным поставщиком использующей Alpha продукции API NetWorks.

25 июня 2001 Compaq заявляет, что производство Alpha будет свёрнуто к 2004, а вместо Alpha планируется использовать процессоры Itanium компании Intel. Это приводит к сворачиванию работ над процессором EV8, и продаже всей интеллектуальной собственности, имеющей отношение к Alpha, компании Intel. Через несколько месяцев компания HP, новый владелец Compaq объявляет, что развитие серии Alpha будет продолжено ещё в течение нескольких лет, включая выпуск 1,3 ГГц варианта EV7, названного EV7z. Эта версия, а также версия, которая должна была стать последней в семействе Alpha — EV79, с технологическим процессом 0,13 мкм, также была свёрнута. HP продолжала продавать сервера AlphaServer с операционными системами OpenVMS и Tru64 UNIX до 27 октября 2006 года, а также будет обеспечивать поддержку по крайней мере до 2011 года.

Забавно, но в середине 2003 года, когда шло сворачивание производства Alpha, первое и второе места в списке самых быстрых компьютеров в США занимали кластеры на основе процессоров Alpha (см. кластер на 4096 процессорах Alpha).

МоделиПравить

Модель AKA Год Частота,
МГц
Тех. процесс,
мкм
Транзисторов,
млн
Размер кристалла,
мм²
Кол-во контактов Потребляемая мощность,
Вт
Напряжение
питания, В
Пропуск.
способность
памяти, МБ/с
Кэш данных,
КБ
Кэш команд,
КБ
Scache Bcache Система команд
EV4 21064 1992 100—200 0,75 1,68 234 290 30 3,3 80 8 8
EV45 21064A 1994 200—300 0,5 2,85 164 33 3,3 80 16 16
LCA4 21066 1993 100—166 0,68 1,75 209 21 3,3 30 8 8
LCA45 21066A 1994 166—233 0,5 1,75 161 23 3,3 30 8 8
EV5 21164 1995 266—500 0,5 9,7 299 296 56 3,3/2,5 150 8 8 96 КБ 1 R
EV56 21164A 1996 400—767 0,35 9,3 209 46 3,3/2,0 300 8 8 96 КБ 1—2 МБ R,B
PCA56 21164PC 1997 400—533 0,35 3,5 141 264 40 3,3/2,5 8 16 1 МБ R,B,M
PCA57 21164PC 600—666 0,28 5,7 101 283 20 2,5/2,0 16 16 1 МБ R,B,M
EV6 21264 1998 450—600 0,35 15,2 314 389 73 2,0 1600 64 64 2—8 МБ R,B,M,F
EV67 21264A 1999 667—750 0,25 15,2 210 389 2,0 64 64 2—8 МБ R,B,M,F,C
EV68AL 21264B 2001 800—833 0,18 15,2 125 1,7 64 64 2—8 МБ R,B,M,F,C,T
EV68CB 21264C 2001 1000—1250 0,18 15,2 125 65—75 1,65 64 64 2—8 МБ R,B,M,F,C,T
EV68CX 21264D 1,65 64 64 2—8 МБ R,B,M,F,C,T
EV7/EV7z 21364 2003 800—1300 0,18 130 397 125 1,5 64 64 1,75 МБ R,B,M,F,C,T
EV79 21364A(?) (свёрнуто) 1700 0,13 152 300 120 1,2 64 64 1,75 МБ? R,B,M,F,C,T

Расширения системы команд:

  • R: ?
  • B: BWX, «Byte/Word Extension», дополнительные инструкции для выполнения 8- и 16-битных операций при обращении к памяти и устройствам ввода-вывода
  • M: MVI, мультимедиа-инструкции
  • F: FIX, инструкции для преобразования целых чисел в числа с плавающей запятой и извлечения квадратного корня
  • C: CIX, инструкции для поиска и подсчёта битов
  • T: поддержка упреждающей выборки с модификацией, направленно на повышение производительности при первом обращении с целью захвата семафора.

Системы, использующие AlphaПравить

Первое поколение систем на базе Alpha включало в себя серию рабочих станций DEC 3000 AXP и сервера начального уровня, серию серверов среднего уровня 4000 AXP и серии высокопроизводительных серверов: DEC 7000 AXP и DEC 10000 AXP.

Серия DEC 3000 AXP использовала туже шину TURBOchannel, что и предыдущее поколение рабочих станций DEC, использовавших микропроцессоры с архитектурой MIPS. Серия 4000 APX использовала шину FutureBus+, в то время как серии 7000 и 10000 использовали архитектуру, сходную с архитектурой компьютеров VAX.

Кроме того, DEC выпускала рабочие станции на базе Alpha, сходные с персональными компьютерами и использовавшими шину EISA: DECpc 150 AXP (эта модель также известна как DEC 2000 AXP). Это были первые системы на базе Alpha, поддерживающие Windows NT. Позднее DEC выпустила Alpha версии своих Celebris XL и Personal Workstation PC серий, оснастив их процессорами 21164.

Процессоры 21066 и 21068 были использованы в компактных рабочих станциях DEC Multia VX40/41/42.

В 1994 году фирма DEC выпустила новый ряд систем AlphaStation и AlphaServer, которые использовали процессоры 21064 и 21164, шину PCI, совместимые с VGA фреймбуферы и PS/2-совместимые клавиатуру и мышь. Серия серверов AlphaServer 8000, заменившая DEC 7000/10000 AXP, использовала шины XMI и FutureBus+.

Рабочие станции AlphaStation XP1000 были первыми, использовавшими процессор 21264. В дальнейшем модели рабочих станций и серверов AlphaServer/Station, использовавших процессор 21264 были разбиты на следующие семейства:

  • DS (departmental server)
  • ES (enterprise server)
  • GS (global server)

Процессор 21364 использовался в моделях AlphaServer ES47, ES80 и GS1280.

Некоторое количество OEM-материнских плат для Alpha было произведено фирмами DEC, Samsung и Alpha Processor Inc., включая EB64+, EB164, API UP1000 и UP2000.

Компания Cray Research использовала процессоры 21064 и 21164 в своих массивно-параллельных суперкомпьютерах Cray T3D и Cray T3E соответсвенно.

Процессоры 21164 и 21264 были использованы компанией Network Appliance в системах сетевого хранения данных (Network Attached Storage systems).

Влияние на отрасльПравить

Процессор Alpha и заложенные в нём концепции прямо или косвенно оказали влияние на конструкцию других процессоров и на развитие отрасли в целом.

В оригинальном процессоре AMD Athlon использовалась шина, первоначально разработанная для Alpha. В процессоре AMD Opteron применяется высокоскоростная межпроцессорная магистраль HyperTransport и встроенный контроллер памяти — технологии, аналогичные тем, которые первыми предложили разработчики Alpha. Дирк Мейер, главный инженер процессоров AMD, раньше работал над Alpha.

Применяемая в современных серверных и настольных процессорах Intel технология HyperThreading, позволяющая процессору решать несколько задач одновременно, навеяна исследованиями в области многопоточности, проведёнными командой Alpha в DEC в 1990-е годы, также в значительной мере повлияли на технологию HyperThreading. Из HP в Intel перешли более 300 инженеров работавших над Alpha, теперь большинство из них работает над процессором Itanium 2.

Источники информацииПравить

  • Корнеев В., Киселев А. Современные микропроцессоры. 3-е изд.— СПб.: БХВ-Петербург, 2003. — 448 с.: ил. ISBN 5-94157-385-5

ПримечанияПравить

  1. "Characterization of Organic Illumination Systems" (PDF).  Unknown parameter |lang= ignored (help); Unknown parameter |datepublished= ignored (help)

СсылкиПравить

Новостные сайты AlphaServer

Основная техническая документация

  • Digital Technical Journal, Volume 4, Number 4, Special Issue 1992 Alpha AXP Architecture and Systems(англ.)
  • DEC Alpha Documentation Library(англ.) техническая документация, посвящённая процессарам Alpha, а также системным контроллерам и материнским платам для этих процессоров; последнее обновление — июль 1999 (здесь можно найти Alpha Architecture Handbook)
  • DEC Alpha Documentation Archives(англ.) техническая документация, посвящённая ранним процессарам Alpha: 21064, 21066, 21164, а также системным контроллерам и материнским платам для этих процессоров.

История

Порты BSD операционных систем для процессоров семейства DEC/Compaq Alpha

Дистрибутивы GNU/Linux

eo:Alpha hu:DEC Alpha