Патрик Гелсингер:

Под архитектурой x86 понимается набор машинных команд, используемых микропроцессорами, которые выпускаются Intel и рядом других компаний. Конструкторы процессоров x86, начиная от первого образца 8086, двигаясь далее в направлении моделей 80186, 80286, 80386, 80486 и различных вариантов Pentium и, заканчивая современными многоядерными процессорами и процессорами для мобильных приложений, постепенно расширяли первоначальный набор инструкций x86, но всякий раз сохраняли обратную совместимость с предыдущими членами семейства. На протяжении трех десятилетий с момента появления процессора 8086 архитектура x86 непрерывно развивалась, освоив помимо настольных ПК сферу серверов, портативных компьютеров и суперкомпьютеров. На этом пути инженеры Intel сумели одолеть и отодвинуть на обочину целый ряд конкурирующих архитектур. Даже на тех рынках, где традиционно правили бал конкуренты (к примеру, в Apple Macintosh долгое время устанавливались процессоры Motorola PowerPC), позиции x86 в последние годы заметно укрепились.

Каким же образом архитектуре Intel удалось завоевать компьютерный мир? Обратимся к истории.

Первые шаги

Первым микропроцессором Intel была 4-разрядная модель 4004, созданная в 1971 году для японского калькулятора. Вслед за ней довольно быстро был разработан 8-разрядный чип 8008, а в 1975 году и 8-разрядный чип 8080. Процессоры 8080 устанавливались в ПК Altair 8800, которые можно было заказать по почте.

Тремя годами позже дебютировал 16-разрядный процессор 8086. Выбор корпорации IBM, решившей заняться производством персональных компьютеров, пал на 8088 -- один из вариантов 8086. Появление в начале 80-х годов ПК на базе этих процессоров придало архитектуре x86 колоссальный импульс и помогло ей превратиться в отраслевой стандарт, коим она является и сегодня.

Инженер-электротехник, конструктор микросхем, а теперь еще и исполнительный вице-президент Intel Патрик Гелсингер поворотной точкой в истории отрасли ПК -- моментом, который действительно способствовал заметному ее ускорению развития, -- считает появление в 1985 году 32-разрядной архитектуры 80386. В то время целесообразность отказа от 16-разрядной адресации, которая применялась в выпускавшихся ранее моделях, представлялась вовсе не очевидной. "Зачем нам 32-разрядная адресация? -- раздавались отовсюду возгласы. -- Это удел мини-компьютеров и мэйнфреймов". В тот период разработчики Intel подвергались острой критике за "ненужную расточительность".

Примерно в это же время компания Compaq Computer анонсировала ПК с процессором 386, ослабив тем самым гегемонию корпорации IBM на рынке персональных компьютеров. IBM же выпускала только компьютеры с 16-разрядными процессорами 80286, которые работали в три раза медленнее.

Говорят, в IBM отвергли новые процессоры 386, потому что в мире тогда просто не было 32-разрядных программ, позволявших извлечь заметную выгоду из расширенной адресации. Кроме того, IBM продвигала собственную 16-разрядную операционную систему OS/2.

"IBM тогда владела архитектурой сверху донизу и контролировала ее, -- вспоминает Гелсингер, один из участников команды разработчиков 386. -- Осуществив самостоятельный переход к следующему поколению, она могла бы приобрести монопольное положение единственной компании, предлагающей полномасштабное решение без каких-либо гарантий совместимости существующих поколений с последующими. Но с появлением процессора 386 ситуация кардинально изменилась. Из вертикальной отрасль превратилась в горизонтальную, и это открыло перед нами весь мир".

Следом в 1989 году был выпущен процессор 486. Затем, поняв, что цифр на торговую марку может и не хватить, представители Intel в 1993 году отказались от сложившейся традиции выбора имен и вместо 586 назвали процессор пятого поколения Pentium. Под маркой Pentium на свет появилось сразу несколько поколений процессоров (Pentium Pro, Pentium II, Pentium D и ряд других). В какой-то момент процессоры младшего класса с архитектурой x86 решено было назвать Celeron, а старшего - фигурируют сегодня под торговой маркой Core 2.

Несмотря на смену названий -- не говоря уже о совершенствовании конструкции, позволившем добиться огромного прогресса в части повышения быстродействия и эффективности, а также снижения энергопотребления -- все они созданы на базе набора инструкций x86, который впервые появился в процессоре 8086 и продолжает расширяться по сей день.

Составляющие рецепта успеха

Почему же архитектура x86 на протяжении столь долгого времени пользуется успехом, отодвигая в сторону, а в некоторых случаях и полностью вытесняя конкурирующие микропроцессорные архитектуры? Прежде всего, архитектура x86 появилась в очень удачное для дебюта время. К 1978 году отрасль уже в течение нескольких лет осуществляла переход от больших и дорогостоящих мэйнфреймов к маленьким и дешевым мини-компьютерам. Очередным логическим рубежом в этой цепи переходов и стали настольные компьютеры.

Далее, архитектура x86 подтвердила правило, сформулированное в 1965 году Гордоном Муром, который впоследствии занял пост председателя совета директоров корпорации Intel. Суть его высказывания заключалась в том, что производительность микропроцессоров будет удваиваться через каждые полтора-два года при неизменной стоимости. Прогноз, который позже окрестили законом Мура, и впрямь оказался верным, а архитектура x86 получила повсеместное распространение, начиная от центров обработки данных и заканчивая рабочими местами сотрудников организаций и жилищами конечных пользователей.

Процессор 8086 и его последователи продолжали укреплять отношения между двумя главными первопроходцами отрасли настольных ПК. В 1972 году юные Билл Гейтс и Пол Аллен без особого успеха пытались разрабатывать интерпретатор языка Basic для процессора 8008. Завершить эту работу им удалось уже для более мощного процессора 8080, на базе которого в 1975 году был построен микрокомпьютер Altair.

С этого фактически и началось сотрудничество между Intel и Microsoft, на основе которого со временем была создана гигантская база программного обеспечения, продолжающая диктовать направления развития отрасли. Из всех факторов, обеспечивших успех архитектуры x86, пожалуй, ни один не играет такой важной роли, как имеющиеся запасы программного обеспечения. Лучшим подтверждением справедливости этого утверждения является нынешний упадок RISC-процессоров.

Риски, связанные с RISC-архитектурой

В конце 80-х и начале 90-х годов серьезной угрозой для архитектуры x86 стало наступление процессоров RISC (Reduced Instruction Set Computing) с сокращенным набором инструкций, к числу которых относились продукты Sun SPARC, IBM/Apple/Motorola PowerPC, а также процессоры MIPS. Идея заключалась в том, что при выполнении простых инструкций, занимающих один цикл процессора, компьютер начинает работать гораздо быстрее, чем при обработке инструкций процессоров со сложным набором команд (Complex Instruction Set Computing, CISC). А именно к категории CISC и принадлежали все представители архитектуры x86.

Технические эксперты, пресса и конкуренты Intel в один голос утверждали, что со временем процессоры CISC утратят свое положение. "Для нас это было трудное время, -- признает Гелсингер. -- Инженеры Intel приступили даже к разработке своего собственного RISC-процессора. Но ни i860, ни какой-то иной RISC-процессор так и не сумели приблизиться к безраздельной гегемонии архитектуры x86".

И вот как это объясняет Гелсингер, ведущий архитектор 80486: "За день до официальной презентации процессора 486, которая состоялась 10 апреля 1989 года, его уже поджидали программы на миллиарды долларов. И хотя CISC-архитектура x86 по скорости несколько уступала RISC-процессорам, к тому времени, как программное обеспечение для RISC-машин наконец появилось, мы сумели заметно увеличить производительность машин x86. У нас было колоссальное экономическое преимущество, связанное с обладанием огромной базой уже установленного программного обеспечения и большим числом разработчиков. RISC-машины так никогда и не смогли добиться аналогичных результатов".

По иронии судьбы, нехватка программного обеспечения для RISC-систем, а также быстрый рост производительности процессоров 80486 и Pentium привели к тому, что i860 разделил судьбу других RISC-процессоров. Попытка создания альтернативной полномасштабной микропроцессорной архитектуры была ошибкой, и позже в Intel это признали.

"Вместе с тем разработка RISC-архитектуры породила множество инноваций, -- отметил профессор Калифорнийского университета в Беркли Дэвид Паттерсон, который в 80-е годы был одним из самых ярких "проводников" таких новаторских решений. -- К примеру, в архитектуре VAX корпорации Digital Equipment не было ничего от RISC, и она постепенно исчерпала себя. Что же касается Intel, она сумела впитать популярные идеи RISC, поддерживая при этом свою старую архитектуру, для которой уже была создана огромная база программного обеспечения. И часть этих идей впоследствии нашла отражение в превосходной организации производства Intel".

"Катастрофа с плавающей запятой"

Пожалуй, не меньшую угрозу, чем RISC, таил в себе кризис, разразившийся летом 1994 года, когда инженеры Intel, занимавшиеся тестированием, выявили недочет в схеме вычислений с плавающей запятой нового процессора Pentium. Ошибки возникали так редко, а их влияние было столь незначительным, что в Intel решили просто исправить их и запустить процессор обратно в производство, не отзывая уже готовые дефектные чипы.

Однако несколько месяцев спустя профессор математики Томас Найсли обнаружил в своем ПК дефект. Как признавали позже в Intel, он просто не смог найти в корпорации человека, который хотя бы выслушал его жалобы. Тогда Найсли разместил результаты своего исследования в Internet. Спустя короткое время на корпорацию обрушилась сильнейшая волна критики, которая серьезно навредила репутации Intel и заставила ее отозвать уже выпущенные процессоры. В результате убытки Intel составили почти полмиллиарда долларов.

"Это был весьма болезненный удар, но в конечном итоге мы научились вести себя так, как это положено компании, выпускающей товары для потребительского рынка", -- вспоминает бывший старший вице-президент Intel Альберт Ю.

Смешивание и подгонка

Следующий определяющий момент в истории архитектуры x86, по свидетельству профессора Университета Карнеги-Меллона и научного консультанта Intel Тода Маури, наступил в 1995 году. Корпорация Intel представила микропроцессор Pentium Pro, в котором появился целый ряд радикальных усовершенствований. В процессор была заложена возможность предварительной выборки потока инструкций, определения того, какие из них понадобятся в дальнейшем, и выполнения их в более удобной для себя последовательности. В результате полезная нагрузка на процессор увеличилась, а в сочетании с новой, очень быстрой кэш-памятью, многим приложениям это сулило существенное повышение производительности.

"Принципиальная разница заключалась в том, что разработчики использовали преимущества RISC-архитектуры, не внося изменений в сам набор инструкций, -- отметил Маури. -- Они проделали это, преобразовав инструкции x86 в набор микроопераций. В результате пользователи получили RISC-машину внутри машины x86, и в один прекрасный день это помогло Intel ликвидировать отставание в производительности".

Pentium Pro разрабатывался путем нисходящего проектирования. "Сначала конструкторы приступили к созданию проекта быстрой машины, а уже потом задумались о том, как втиснуть в ее рамки архитектуру x86", -- пояснил Маури.

"Подобный подход -- поиск хороших идей вне рамок архитектуры x86 и возврат к этим идеям впоследствии -- в конечном итоге сработал, -- заметил Гелсингер. -- Появление Pentium стало заметным шагом вперед в части развития архитектуры. Мы взяли лучшие идеи, заложенные в мини-компьютеры и мэйнфреймы, и внедрили их у себя, творчески переосмыслив".

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

Возрастание конкуренции

Intel так и не удалось избавиться от конкуренции даже на своем домашнем поле x86. В 1987 году в Кремниевой долине была основана дислоцировавшаяся на Тайване компания VIA Technologies, которая начала продавать наборы микросхем с базовой логикой. Ее продукция, использовавшая в том числе и технологию x86, предназначалась для установки в материнские платы и другие электронные компоненты. Сегодня VIA выпускает достаточно широкий набор продуктов, позиционируя свои процессоры x86 на рынке мобильных и встроенных устройств с низким энергопотреблением.

Компания Advanced Micro Devices, занимающая сегодня второе место в мировом рейтинге производителей микропроцессоров, стала составлять серьезную конкуренцию Intel, начиная примерно с 2000 года. На протяжении 80-х и 90-х годов AMD выступала скорее в качестве подражателя и не доставляла Intel серьезного беспокойства. (Сегодня, по оценкам аналитиков Mercury Research, AMD принадлежит примерно 15% рынка процессоров с архитектурой x86, предназначенных для установки в настольные и портативные компьютеры).

Технический прорыв AMD совершила в 2000 году, представив архитектуру x86-64 -- 64-разрядное расширение набора инструкций x86. Обеспечение полной совместимости означало, что пользователи новых машин x86-64 могли без проблем запускать на своих компьютерах и старые 32-разрядные программы.

Примерно в это же время корпорация Intel представила 64-разрядный процессор Itanium, разработанный специалистами Intel и HP для организации суперскалярных вычислений. Этот процессор не обеспечивал прямой совместимости с 32-разрядным программным обеспечением, предназначенным для архитектуры x86. На вызов AMD инженеры Intel ответили созданием собственного 64-разрядного расширения набора инструкций x86, получившего название EM64T, только в 2004 году. Активность маркетинговой службы AMD и прессы, утверждавшей, что Intel потерпела поражение на рынке 64-разрядных вычислений, в конечном итоге сослужили AMD службу.

"Мы стали свидетелями того, как гибкость набора инструкций x86 была направлена против Intel, -- заметил Паттерсон. -- Даже в условиях доминирования Intel на рынке другая компания сумела задать новое направление развития архитектуры x86".

Экстремальные опыты

Сегодня архитектура x86 осваивает и экстремальные области. В апреле Intel подписала соглашение с компанией Cray о совместной разработке новых суперкомпьютеров на основе процессоров Intel x86. (К этому моменту инженеры Cray уже использовали в своих компьютерах 64-разрядные процессоры AMD Opteron с архитектурой x86.)

На форуме разработчиков IDF, прошедшем в начале апреля в Шанхае, Intel анонсировала процессор Atom, самый маленький чип с архитектурой x86. Его потребляемая мощность не превышает 2,5 ватт, в то время как типичный процессор для портативного компьютера потребляет порядка 35 ватт. Поставки Atom для небольших портативных и настольных компьютеров уже начались. Что же нужно сделать разработчикам архитектуры x86, для того чтобы обеспечить ее процветание или хотя бы выживание в течение последующих 30 лет? Существуют силы, которые уже в ближайшем будущем принципиально изменят конструкцию микропроцессоров (см. "Архитектура x86: что дальше"). Но мало кто думает, что представители почтенной и уважаемой архитектуры x86 полностью исчезнут с рынка. "Я не вижу причин, которые сопутствовали бы такому же громкому успеху какого-то другого набора инструкций, потому что на платформе x86 работает слишком много ценного программного обеспечения", -- отметил Маури.


Ретроспектива: краткая история x86

Давайте бросим взгляд на события и технологии, способствовавшие развитию архитектуры Intel x86, и вспомним основные вехи ее 30-летнего царствования.

1947: В лаборатории Bell Labs изобретен транзистор.

1965: Гордон Мур из компании Fairchild Semiconductor публикует в журнале Electronics статью, в которой утверждает, что число транзисторов в полупроводниковых микросхемах будет удваиваться через каждые два года. Применительно к микропроцессорам, количество транзисторов удваивается через каждые полтора-два года на протяжении вот уже трех десятков лет.

1968: Мур, Роберт Нойс и Энди Гроув основали компанию Intel, с тем чтобы развивать бизнес INTegrated ELectronics.

1969: Intel анонсирует свой первый продукт, первую в мире микросхему статической памяти RAM 1101 на основе структуры "металл-оксид-полупроводник" (МОП). Это событие знаменует собой окончание эры памяти на магнитных сердечниках.

1971: Intel выпускает первый в мире микропроцессор, 4-разрядный 4004, разработанный инженером Федерико Фэджином. Чип, состоявший из 2 тыс. транзисторов, предназначался для японского калькулятора, но в дальновидной рекламе Intel это устройство называлось "микропрограммным компьютером на одном кристалле".

1972: Intel анонсирует 8-разрядный процессор 8008. Юные Билл Гейтс и Пол Аллен пытаются разрабатывать для него язык программирования, но он оказывается недостаточно мощным.

1974: Intel представляет 8-разрядный процессор 8080, который содержит 4500 транзисторов и по производительности десятикратно превосходит своего предшественника.

1975: 8080 обретает свой первый компьютер. Появление модели Altair 8800 становится началом революции ПК. Гейтс и Аллен разрабатывают для процессора 8080 интерпретатор Altair Basic, который впоследствии получит название Microsoft Basic.

1976: Архитектура x86 вынуждена отступить, после того как Стив Джобс и Стив Возняк представили компьютер Apple II на базе 8-разрядного процессора Motorola 6502. Процессоры конкурента Intel использовал также производитель ПК Commodore.

1978: Intel представляет 16-разрядный микропроцессор 8086.

1979: Разработчики Intel выпускают более дешевую версию 8086 -- процессор 8088 с 8-разрядной шиной.

1980: Intel представляет математический сопроцессор 8087.

1981: Корпорация IBM выбирает для своего ПК процессор Intel 8088. Впоследствии в Intel назвали это "величайшей победой за все время существования своей компании".

1982: Intel выпускает 16-разрядный процессор 80286 на 134 тыс. транзисторах.

1984: IBM проектирует на базе процессора 80286 ПК второго поколения PC-AT. Компьютер, работающий под управлением операционной системы MS-DOS, на ближайшие десять лет становится фактическим стандартом в мире ПК.

1985: Intel отказывается от выпуска памяти DRAM, решив полностью сосредоточиться на микропроцессорах, и представляет 32-разрядный процессор 80386. Новый процессор содержит 275 тыс. транзисторов и способен одновременно выполнять сразу несколько программ.

1986: Компания Compaq Computer опережает IBM, выпуская ПК на основе процессора 80386.

1987: Основана компания VIA Technologies, планирующая поставлять наборы микросхем базовой логики для архитектуры x86.

1989: Intel выпускает процессор 80486, содержащий 1,2 млн транзисторов, со встроенным математическим сопроцессором. Согласно прогнозам Intel, после 2000 года на рынке должны появиться многоядерные процессоры.

Конец 80-х годов: Архитектура x86, относящаяся к категории CISC, подвергается атаке со стороны конкурирующих архитектур RISC, среди которых выделяются процессоры Sun SPARC, IBM/Apple/Motorola PowerPC и MIPS. Intel отвечает созданием собственного RISC-процессора i860.

1990: Compaq выпускает первый сервер на базе ПК с процессором 80486.

1993: Intel представляет процессор Pentium, выполненный по суперскалярной технологии, работающий на частоте 66 МГц и имеющий 3,1 млн. транзисторов.

1994: AMD и Compaq формируют альянс, цель которого заключается в оснащении компьютеров Compaq микропроцессорами Am486.

1995: На рынке появляется "могильщик" RISC-архитектуры, процессор Pentium Pro, обладающий принципиально новыми возможностями. Он поддерживает функции прогнозирования выборки инструкций и выполнения их в удобной для себя последовательности. Все это в сочетании с невероятно быстрой кэш-памятью и двойными независимыми шинами позволяет существенно повысить производительность ряда приложений.

1997: Intel представляет 64-разрядную процессорную технологию Epic. На рынке появляется чип Pentium MMX, поддерживающий функции обработки графики, аудиоинформации и голоса и предназначенный для приложений цифрового сигнального процессора.

1998: Intel представляет недорогой процессор Celeron.

1999: VIA приобретает компании Cyrix и Centaur Technology.

2000: На рынке дебютирует процессор Pentium 4, содержащий 42 млн транзисторов.

2003: Компания AMD представляет x86-64, 64-разрядное расширение набора инструкций x86.

2004: AMD демонстрирует двухъядерный процессор.

2005: Intel поставляет свой первый двухъядерный процессор.

2005: Apple анонсирует перевод компьютеров Macintosh с процессоров PowerPC, поставляемых компаниями Freescale (бывшее полупроводниковое подразделение Motorola) и IBM, на семейство процессоров Intel x86.

2005: AMD инициирует антимонопольное разбирательство, обвиняя Intel в использовании своего положения и нарушении свободной конкуренции. (В 2008 году судебный процесс входит в новую фазу.)

2006: Dell объявляет о выпуске систем на базе процессоров AMD.