Микропроцессоры седьмого поколения AMD Athlon
Athlon — представитель седьмого поколения процессоров AMD |
И все-таки практика показывает, что достаточно высокие технические характеристики являются необходимым условием рыночного успеха. AMD шла к своему, по моему мнению, самому большому техническому успеху долгие годы. На этом пути к вершине производительности были как скромные вехи (486-е и Pentium-cовместимые — K5 — микропроцессоры), так и вполне впечатляющие достижения (К6 и их модификации). Вперые AMD сумела опередить Intel, объявив об архитектуре 3DNow! до анонса SSE (ранее — Katmai), расширения системы команд х86. Правда, с моей точки зрения, это опережение не следует считать существенным.
Оказалось, однако, что это лишь первый звонок. Первые дешевые процессоры Intel Сeleron оказались не очень удачными, и AMD K6 стали их теснить. Однако Intel, быстро сориентировавшись, сумела переломить негативные тенденции, интегрировав в Celeron небольшой кэш второго уровня, работающий на частоте микропроцессора. Как мы увидим ниже, новейшие процессоры Athlon (ранее известные как K7, так как это действительно уже седьмое поколение процессоров AMD, имеющих архитектуру x86) самым серьезным образом претендуют на роль лидеров производительности.
Великолепная семерка
Вспомним, что все компании-«копировщики», включая и саму AMD, выпускали х86-совместимые процессоры, уступавшие по производительности процессорам Intel, и соответственно имевшие более «слабые» характеристики микроархитектуры. Все они конкурировали с Intel за счет меньшей цены. Теперь же К7 превосходит по основным техническим характеристикам Pentium III, о чем свидетельствуют данные таблицы.
Микроархитектура Athlon представлена на рисунке. С целью увеличения пропускной способности декодеров, которые перекодируют х86-команды во внутренние макрооперации, в блок кэш-памяти команд первого уровня добавлена специальная кэш-память предварительного декодирования. Эти макрооперации представляют собой, грубо говоря, RISC-команды, которые, собственно, и исполняются. Подобная схема перекодирования из х86 в RISC используется и в Pentium III, и в предыдущих процессорах AMD, и в некоторых других х86-совместимых процессорах. Я усматриваю в этом подтверждение того факта, что архитектура х86/IA-32 стала тормозом для роста производительности.
В Athlon таких декодеров три, а число выдаваемых на выполнение за такт команд больше, чем в Pentium III Команды в декодеры попадают из кэша команд первого уровня. Он является двухканальным, а в Pentium III — четырехканальным, но его емкость (64 Кбайт) в четыре раза выше, чем в Pentium III. Кроме того, блок кэша команд в AMD содержит два уровня буферов быстрой переадресации TLB: первого уровня — на 24 строки, а второго — на 256.
Емкость кэша данных первого уровня в Athlon также в четыре раза больше, чем в Pentium III, — 64 Кбайт. Он также является двухканальным и также включает двухуровневый блок TLB. Кэш данных имеет восемь банков, что позволяет одновременно загружать в регистры или писать из них в кэш до двух 64-разрядных величин.
Команды из кэша команд поступают в декодеры, а оттуда — в блок управления командами, емкость которого 72 строки. Athlon, как и Pentium III, является суперскалярным микропроцессором с внеочередным спекулятивным выполнением команд. Большая емкость очереди команд позволяет Athlon эффективно использовать свои ресурсы: число функциональных исполнительных устройств в нем больше, чем в Pentium III.
Cобственно, совокупность вышеуказанных факторов уже объясняет, почему производительность Athlon выше, чем в Pentium III. В Athlon имеется три целочисленных устройства против двух в Pentium III, а устройств с плавающей запятой в Athlon — три (в Pentium III — одно). Кроме того, Athlon содержит три адресных устройства. Все исполнительные устройства способны работать во внеочередном режиме. Для этого в арифметических устройствах имеются «планировщики», содержащие очереди команд емкостью 18 (для целочисленных устройств) и 36 (для вещественных устройств) строк соответственно.
Особенно следует отметить устройства с плавающей запятой: cумматор, умножитель и модуль загрузки регистров/записи в память. Они могут работать параллельно, поэтому производительность микропроцессора (в MFLOPS) в два раза выше, чем его тактовая частота (1,3 GFLOPS при 650 МГц), и в два раза выше, чем у Pentium III при той же частоте. Кроме того, умножитель Athlon — это настоящий конвейер. Следует отметить, что физических регистров с плавающей запятой в Athlon — 88, что позволяет использовать технологию переименования регистров.
Athlon — не только суперскалярный, но еще и суперконвейерный микропроцессор. Это одновременно и плюс и минус. С одной стороны, большое число ступеней конвейеров (10 — в целочисленном и 15 — в вещественном конвейере) позволяет легче поднимать тактовую частоту. С другой стороны, это вызывает проблему заполнения конвейеров: если они не заполняются, производительность падает. Наиболее «опасными» будут при этом программы нерегулярного характера с большим числом условных переходов, которые трудно динамически предсказывать. Кстати, в Athlon блок динамического предсказания переходов включает таблицу предыстории на 2048 строк. Такой большой объем позволяет добиться очень высокого качества предсказания переходов.
По сравнению с AMD K6-III, в Athlon расширена система команд 3D-Now!. Их теперь 45, из них 24 — новых, в том числе: 12 команд целочисленной математики для обработки видео и распознавания речи; 7 команд пересылки данных, ориентированных на программы, подобные Internet-приложениям, работающим с графическими данными; 5 новых команд для цифровой обработки сигналов. В самой AMD полагают, что аналога последних у Intel нет. Впрочем, набор SSE-команд в Pentium III богаче: их в нем 71.
Внешние связи
Кроме рассмотренных выше блоков микропроцессора, Athlon имеет встроенное управление внешним кэшем второго уровня и сопряжение с системной шиной.
Интеграция в микропроцессор функций управления внешним кэшем позволяет Athlon иметь кэш второго уровня, расположенный на выделенной шине с программируемой частотой. Поддерживается совместимость с индустриальными стандартами SRAM, в том числе DDR и SDR. Кроме того, этот блок содержит память тегов для кэша второго уровня наиболее популярного размера 512 Кбайт (емкость кэша второго уровня может составлять до 8 Мбайт).
Системный интерфейс Athlon обеспечивает соединения «точка-точка», то есть фактически мы имеем дело с коммутатором, а не с общей системной шиной, как у Pentium III. Важным преимуществом коммутаторов является то, что в отличие от системной шины они не имеют конфликтов и обеспечивают гарантированный уровень пропускной способности. Это особенно важно для многопроцессорных SMP-систем.
Системный интерфейс шириной 8 байт может работать на частотах от 200 до 400 МГц, что обеспечивает гораздо более высокую пропускную способность, чем у шины Pentium III. Однако, по некоторым данным, на тестах пропускной способности оперативной памяти — STREAM — Athlon лишь незначительно опережает Pentium III. Важным преимуществом системного интерфейса Athlon является расщепленная обработка транзакций (до 24 на процессор против 4 в Pentium III). При этом пакетный протокол может передавать блоки в 64 байт против 32 байт у Pentium III.
Максимальная поддерживаемая емкость оперативной памяти составляет у Athlon 7 Тбайт против 64 Гбайт в Pentium III; впрочем, это отличие вряд ли имеет сегодня практическое значение. Учитывая высокую пропускную способность системного интерфейса, он явно проектировался в расчете на использование с Athlon технологии RAMBUS. Увеличилась и надежность: теперь как шина внешнего кэша, так и системный интерфейс используют ECC-коды.
Вместо резюме
Вышесказанное не оставляет поводов удивляться тому, что производительность Athlon превосходит Pentium III при одинаковых частотах. Так, базовые оценки SPECint95/fp95 для 650-мегагерцевых микропроцессоров cоставляют 29,4/22,4 (или 25,1/20,6 при 550 МГц) против 23,6/15,1 для Pentium III/Xeon при 550 МГц. AMD приводит целый ряд других итогов тестирования (3DWinBench99 FPU WinMark, Winstone 99, 3DWinbench99, тестов Adobe Photoshop, Autocad 2000 и других), подтверждающих исключительно высокую производительность нового процессора продукта. Еще важнее то, что AMD, насколько я помню, впервые приводит данные SPEC95.
Athlon имеет площадь 128 кв. мм и производится по 0,25-микронной технологии с шестислойной металлизацией. В 2000 году AMD планирует ввести в строй фабрику Fab30 в Дрездене; там Athlon будет выпускаться по медной 0,18-микронной технологии.
Athlon использует разъем типа Slot A, механически совместимый со Slot 1 и близкий к применяемому в Alpha EV6. Сообщалось, еще в период конфронтации между Digital Equipment и Intel в связи со встречными судебными исками о незаконном использовании чужих разработок, когда и само будущее Alpha было неясно, из DEC в AMD перешла группа разработчиков. Похоже, это, равно как и применение лицензии на технологию шины EV6, сильно способствовало успеху разработки Athlon.
О своих планах по разработке наборов микросхем для Athlon заявили VIA, Acer Lab и SiS, о намерении создавать материнские платы — Microstar, Gigabyte, ASUS и FIC. В настоящее время доступен лишь набор микросхем AMD750, в котором поддерживаются однопроцессорные системы и оперативная память емкостью до 768 Мбайт. О выпуске BIOS для Athlon объявили все ведущие производители — AMI, Award и Phoenix Technologies.
Поставки Athlon начались в третьем квартале (от 249 долл. при 500 МГц до 849 долл. при 650 МГц за 1 тыс. штук).
Однако какой резонанс может вызвать это событие на рынке микропроцессоров архитектуры х86? Прежде всего следует сказать, что высоких технических характеристик как таковых недостаточно. У AMD, кроме затянувшихся финансовых передряг, застарелые проблемы с недостаточным объемом производства процессоров. Intel же вполне готова ответить своему конкуренту ускоренным наращиванием частоты микропроцессоров и понижением цен. Однако для того, чтобы обойти Athlon по техническим параметрам микроархитектуры, Intel понадобилось бы перепроектировать ядро Pentium III. Кстати, для основной массы современных настольных приложений производительности сегодняшних микропроцессоров, как мне кажется, и так уже хватает.
Естественно предположить, что свои основные планы по дальнейшему техническому совершенствованию Intel связывает с архитектурой IA-64. В частности, представители Intel в Москве заявили, что при развитии линии Pentium III производительность с плавающей запятой не будет предметом особого внимания — это задача для IA-64. Задержка с выходом Merced несколько изменила ситуацию. В перспективе же процессоры c архитектурой IA-64, по моему мнению, способны полностью вытеснить IA-32 и сделать бесперспективным выпуск процессоров архитектуры x86, включая Athlon. Однако для этого понадобится время.
Михаил Кузьминский — старший научный сотрудник Центра компьютерного обеспечения химических исследований РАН. С ним можно связаться по телефону (095) 135-6388.
Сравнение Athlon и Pentium III
Характеристика | Athlon | Pentium III |
Тактовая частота, МГц | 500-650 | 500-600 |
Число транзисторов, млн. штук | 22 | 21 |
Пиковая производительность с плавающей запятой, GFLOPS | до 1,3 | до 0,6 |
Число декодеров x86-команд | 3 | 3 |
Число выдаваемых за такт команд | 9 | 5 |
Число целочисленных устройств | 3 | 2 |
Число устройств с плавающей запятой | 3 | 1 |
Кэш первого уровня, Кбайт | 128 | 32 |
Кэш второго уровня, Мбайт | 0,5-8 | 0,5-2 |
Частота шины, МГц | 200-400+ | 100/133(*) |
Тип шины | коммутатор | общая |
Пропускная способность шины, Гбайт/с | 1,6-3,2 | 0,8/1,06 |