23 ноября 2005
Обновлено 17.05.2023

От клона до Атлона. История успеха компании AMD, часть 2

От клона до Атлона. История успеха компании AMD, часть 2 - изображение обложка

90 -е годы вошли в компьютерную историю как один из самых бурных периодов развития процессорных технологий. В марте 1993 -го был выпущен первый процессор пятого поколения — Intel Pentium. Однако в гордом одиночестве Pentium пребывал недолго: меньше чем через год, в декабре 1994 -го, на рынке появился еще один процессор пятого поколения — Nx586 , разработанный фирмой NexGen. Как и процессоры Cyrix , NexGen производили на фабриках IBM. Ровно через год, в декабре 95 -го, “пятое поколение” пополнилось еще одним участником — Cyrix 6x86-120. Примечательно, что и Cyrix 6x86 , и Nx586 не являлись клонами Pentium, а представляли собой независимые разработки. Любопытно, что Cyrix и NexGen отказались от клонирования разработок Intel намного раньше AMD.

Независимой разработкой должен был стать и AMD K5.

Кто не успел — тот опоздал

Первые модели K5 работали на тактовой частоте 75 , 90 и 100 МГц и использовали одинаковый множитель — 1,5х. Отличия моделей заключались только в частоте системной шины — 50 , 60 и 66 МГц соответственно. В систему маркировки этих моделей впервые был введен термин PRprocessor rating , однако на первых порах он соответствовал частоте процессора: к примеру, 75 МГц K5 маркировали как K5 PR75.

Поскольку к моменту появления K5 на рынке уже продавали 133 МГц модели процессоров, новинки от AMD были не очень популярны.

Осенью 96 -го AMD выпустила новые модели K5: PR120 и PR150. Начиная с них компания берет на вооружение хитрый и действенный прием: processor rating уже не отображает тактовую частоту процессора, а указывает на эквивалент производительности процессоров Intel. Другими словами — K5 PR120 означает, что “процессор работает не медленнее, чем Pentium 120 МГц”, хотя его реальная частота была всего 90 МГц. Маркировка процессоров по процессорному рейтингу настолько понравилась маркетологам AMD, что вошла в традицию и сохранилась до наших дней.

Однако возникает вопрос — за счет чего процессоры K5 оказывались быстрее Pentium при равной и даже меньшей частоте? Ответ прост — Pentium, несмотря на такие нововведения, как суперскалярная архитектура, оставался CISC -процессором, тогда как K5 имел в основе пост- RISC ядро и транслятор, который “разбирал” CISC-инструкции на “RISC-запчасти”. Аналогичную технологию использовали разработки Cyrix и NexGen, чуть позже по такому же принципу был сделан Pentium Pro , а затем это технологическое решение окончательно прижилось в архитектуре процессоров для PC -совместимых компьютеров. Но вернемся к K5.

Запоздалый выход на рынок свел на нет преимущества K5. Сравните сами: в июне 1996-го AMD анонсировала K5 PR100 , Intel в это же время выпустила Pentium 200 MMX , а Cyrix — 6x86-200

В результате K5 так и не окупил огромные вложения, затраченные на него. AMD срочно требовался революционный продукт, который смог бы укрепить пошатнувшиеся позиции компании.

А вот здесь нужно сделать небольшое отступление. Монопольное положение Intel вызывало недовольство не только у AMD. Показательна история отношений Intel и Compaq. Долгое время последняя тесно сотрудничала с Intel и была одним из основных закупщиков их процессоров. Однако идиллия быстро закончилась, когда Intel решила заняться производством чипсетов и материнских плат. Руководство Compaq опасалось, что так Intel сможет быть на шаг впереди остальных производителей чипсетов и тогда лидерству Compaq придет конец (так, в общем-то, и произошло).

В начале 90 -х трещина в отношениях Compaq и Intel начала разрастаться: Compaq увеличила долю закупок процессоров у AMD и Cyrix, а затем организовала консорциум независимых производителей ПК, который вкладывал деньги в молодую компанию NexGen. Наличие талантливых инженеров и финансовые вливания привели к тому, что уже в декабре 94 -го NexGen разработала и начала выпуск Nx586 на заводах IBM. Nx586 стал вторым после Pentium процессором пятого поколения, и именно в нем впервые была реализована технология обработки инструкций x86 при помощи внутреннего RISC-ядра.

Разумеется, у Nx586 были и недостатки — слабый математический сопроцессор и необходимость использования платы не с Socket 7 , как у всех, а со специальным разъемом. Недостатки этого решения очевидны: обычно пользователь мог свободно собрать машину на базе Pentium 75, затем заменить его на Cyrix 6x86-120 или там AMD K5-PR166. А тот, кто выбирал Nx586, был вынужден ждать выхода новинок от NexGen либо менять и процессор, и материнскую плату. В итоге Nx586 не получил широкого распространения, а сама NexGen постоянно находилась на грани разорения.

У AMD в сравнении с NexGen ситуация была иной: денег, несмотря на провал K5, хватало, с маркетингом проблем также не наблюдалось, а лучше всего ситуация обстояла с производством — как раз в 1994 -м вошла в строй фабрика Fab25 в Техасе. С другой стороны, у AMD не хватало новых идей, поэтому покупка NexGen выглядела весьма логично. Хотя поначалу AMD критиковали — мол, глупо тратить $600 млн на компанию с сомнительным успехом. Но история все расставила по своим местам и доказала, что AMD не ошиблась.

Одна голова хорошо, а две — K6

Первым результатом объединения усилий AMD и NexGen стал процессор K6 , в дизайне которого были использованы наработки его предшественника, трансляция CISC-инструкций в RISC, примененная еще в Nx586 , плюс ряд других задумок.

Для AMD этот процессор стал первым серьезным успехом, который открыл новые перспективы для развития компании. В частности, K6-233 был самым быстрым процессором в своей весовой категории, в которую помимо него входил Intel Pentium 233 MMX , Cyrix IBM 6x86MX-233 и IDT C6-240 совместного производства IDT и Centaur. Пальму первенства у K6 смог отобрать только Pentium II.

Первый K6 с тактовой частотой 166 МГц и маркировкой K6-166 появился в марте 1997 -го, всего через два месяца после презентации Pentium MMX , — отставание от Intel наконец-то было преодолено. Так же, как и новые Pentium, процессоры семейства K6 поддерживали набор инструкций MMX. Главное отличие K6 от Pentium MMX заключалось в отсутствии встроенного кэша второго уровня, который в случае K6 находился на материнской плате, причем для скоростного доступа к нему использовалась технология, впервые опробованная в NexGen Nx586. Весьма интересно сравнить и число транзисторов K6 и Pentium MMX — 8,8 млн против 4,4 млн.

Сразу же после анонса K6-166 были представлены еще две модели — с частотой 200 и 233 МГц. Причем для всех процессоров этой волны AMD вернула “нормальную” маркировку, которая отражала реальную скорость.

В январе 1998 -го на Fab25 улучшили техпроцесс с 0,35 микрон до 0,25 и AMD запустила в производство три новых K6 с частотами 233 , 266 и 300 МГц.

Все перечисленные процессоры отличались высокой производительностью, высокой надежностью и конкурентоспособной ценой.

Прибыль от K6 потекла рекой, что позволило выделить большие суммы на разработку нового процессора. Но перед тем как вершить революцию, нужно было выжать из технологии K6 все соки.

RISC или CISC — вот в чем вопрос!

CISC ( Complex Instruction Set Chip , процессор со сложным набором команд) — “классический” дизайн, который подразумевает, что процессор умеет выполнять большой набор команд (несколько сотен). Такой ассортимент инструкций по идее должен обеспечивать огромную гибкость и производительность, но только при одном условии — если набор инструкций будет использоваться эффективно. Вообще CISC-технология зарекомендовала себя неплохо: процессоры были не очень сложные, набор команд не превышал несколько сотен инструкций, а подавляющее большинство серьезных программ писали на ассемблере или частично на нем.

Но время шло, и ассемблер постепенно вытеснили процедурные языки высокого уровня типа C и Pascal. А компиляторы языков программирования в силу технических особенностей не могут “творчески” использовать весь набор CISC-инструкций, они используют его шаблонно. Соответственно, большая часть команд не востребована: более 90% приложений под 80386 использовали не более 10% инструкций.

Стимула выворачиваться наизнанку для оптимизации кода у программистов не было, так как каждый год росла тактовая частота процессоров, увеличивался объем оперативной памяти — все это облегчало им жизнь. В то же время набор CISC-инструкций семейства x86 продолжал хаотично расширяться, что привело к парадоксальной ситуации: инструкций стало больше, но количество программ, которые использовали бы хотя бы половину, практически не было.

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

Альтернативной технологией стала RISC ( Reduced Instruction Set Chip , процессор с сокращенным набором команд). Типичный RISC-процессор имеет очень маленький набор команд (менее сотни), причем их размер очень невелик и фиксирован (как правило — 32 бита). Они выполняются очень быстро, а любая сложная задача решается не использованием редких и “хитрых” инструкций, а их разбиением на набор маленьких команд.

Какие плюсы дает такой подход? Во-первых, все инструкции выполняются одинаково быстро — за один процессорный такт. Во-вторых, разбивать код на разные конвейеры в суперскалярных процессорах становится просто. Третий плюс — более простая архитектура процессора. Вдобавок, более простая архитектура позволяет избежать ошибок в архитектуре процессора. И, наконец, разработка компиляторов под RISC-процессоры намного проще, чем под CISC.

Справедливости ради стоит отметить, что классических CISC-процессоров для ПК сейчас уже не осталось: все они имеют в своей основе RISC-ядро и транслятор, который разбивает длинные CISC-команды на набор маленьких RISC-инструкций. Такова цена совместимости с предками современных PC -совместимых компьютеров.

Иногда CISC-процессоры с внутренним RISC-ядром называют MISC ( Mixed Instruction Set Chip , процессор со смешанным набором команд).

Продолжение следует…

Комментарии
Чтобы оставить комментарий,Войдите или Зарегистрируйтесь