Архивы: по дате | по разделам | по авторам

Застывшая в кремнии музыка: AMD K8

АрхивПлатформа
автор : Дмитрий Криканов   17.10.2007

После выхода ядра Thoroughbred стало ясно, что микроархитектура AMD K7 исчерпала свои возможности и соперничать с Intel NetBurst больше не в состоянии.

После выхода ядра Thoroughbred стало ясно, что микроархитектура AMD K7 исчерпала свои возможности и соперничать с Intel NetBurst больше не в состоянии. С каждым новым ядром Intel наращивала тактовые частоты своих процессоров. AMD на это отвечала повышением рейтингов производительности.

Не мегагерцем единым!..

По большому счёту, последние модели Athlon XP не сильно заботили корпорацию: главным приоритетом AMD была разработка микроархитектуры следующего поколения.

При проектировании новой микроархитектуры перед AMD встал вопрос: в каком направлении двигаться на сей раз. Идти по пути наращивания тактовой частоты процессоров было нельзя. Во-первых, сделать конвейер более длинный, чем у NetBurst, было весьма затруднительно, и, следовательно, получить более высокие тактовые частоты, чем у Pentium IV, было нельзя. Во-вторых, это шло бы вразрез с лозунгом AMD - "не в мегагерцах счастье".

С другой стороны, AMD было необходимо предложить что-то принципиально новое, чтобы поколебать позиции Intel. При этом отказываться от весьма удачной микроархитектуры К7 AMD совершенно не хотела. В результате корпорация решила пойти старым проверенным путём: немного инженерных изысканий плюс много маркетинга; так появилась на свет первая в мире 64-разрядная микроархитектура.

Казалось бы, о каком первенстве может идти речь, когда большинство гигантов, наподобие Sun, DEC и IBM, давным-давно создали 64-битные процессоры и благополучно их выпускают? Более того, даже основной конкурент AMD, корпорация Intel, также "отметилась" в 64-разрядном направлении со своим Itanium. Тем не менее, новой микроархитектуре AMD, получившей название K8/Hammer, удалось-таки снискать лавры первенства.

64-битная стратегия AMD

Анонсировав в 2002 новую микроархитектуру, AMD принялась активно муссировать слухи о потрясающих возможностях K8. При этом основной упор делался на то, что у AMD теперь есть 64-битная архитектура, а у Intel - нет. Вернее, у Intel тоже есть, но всё равно у AMD - лучше.

Фундаментальной особенностью новой микроархитектуры AMD являлась аппаратная поддержка 32-разрядных команд. Такой роскошью не мог похвастаться ни один из существовавших на тот момент 64-битных процессоров. Все они либо вовсе не могли исполнять инструкции х86, либо "пропускали" команды через декодер, тратя на это значительную часть вычислительной мощности. Другое дело, что 64-разрядная архитектура являлась прерогативой серверов, которые, в общем-то, неплохо обходились и без 32-битных программ.

Тем не менее факт остаётся фактом: AMD K8 стала первой в мире архитектурой, способной выполнять команды х86 на 64-разрядном ядре, не теряя при этом в скорости. Сложно сказать, насколько сильно рядовые пользователи нуждались в расширении архитектуры x86, но "первая в мире" - это почти всегда хороший маркетинг, а именно это AMD и хотела получить от новой архитектуры.

Архитектура AMD64

Основной "достопримечательностью" AMD K8 была реализация расширенной архитектуры х86-64. Однако маркетологи, по всей видимости, сочли, что "расширенная" и "уникальность" - понятия взаимоисключающие и быстро переименовали архитектуру в AMD64: дескать, архитектура 64-битная, новая, уникальная. На самом же деле за названием AMD64 скрывалось ни что иное, как старое, доброе ядро К7, расширенное и дополненное для взаимодействия с 64-разрядным пространством.

Основным преимуществом 64-битной архитектуры является значительно большее адресное пространство: теоретически процессор может адресовать до 16 Эб (экзабайт) памяти. Кроме того, число регистров общего назначения увеличилось с восьми до 16, а их ёмкость была расширена до 64 бит. В результате процессор мог реже обращаться к стеку, получая данные из регистров, что увеличивает скорость исполнения программного кода.

Новая микроархитектура обеспечивает два режима работы: режим совместимости с х86-кодом и т.н. "длинный" режим - исполнение кода х86-64. При этом в режиме совместимости большинство нововведений недоступно - просто потому, что 32-разрядная программа "ничего не знает" ни о новых регистрах, ни об увеличенном объёме памяти. Единственное преимущество запуска х86-кода на новой архитектуре заключается в том, что программа получает в своё распоряжение все "ожидаемые" 4 Гб оперативной памяти, не "делясь" с операционной системой. Опять же, это справедливо только в случае работы под управлением 64-разрядной операционной системы. Если же на машине установлена 32-разрядная ОС, то мы получаем AMD K7, несильно отличающийся от оригинала.

В "длинном" режиме всё несколько интересней. С одной стороны, чем больше памяти может использовать программа, тем лучше. С другой стороны, "безумные" 16 Эбайт - это всё-таки перебор, поскольку в распоряжении системы на К8 вряд ли окажется такой объём памяти. Кроме того, даже 64-битные Windows ограничиваются 16 Тбайт. В результате мы получаем потрясающие воображение 16 Эбайт памяти, из которых на самом деле используются только 16 Тбайт и только в 64-разрядных приложениях.

Интегрированный в кристалл контроллер памяти

Интегрированный в кристалл процессора контроллер памяти - уникальное и при этом весьма логичное решение.

Расположение контроллера непосредственно на кристалле позволяет значительно сократить задержки доступа к памяти и повысить скорость работы самого контроллера. Первое достигается за счёт расположения контроллера в непосредственной близости от ядра, а второе - за счёт использования высокоскоростных транзисторов, выполненных по тому же техпроцессу, что и ядро (от 130 нм до 65 нм). Так, интегрированный контроллер памяти обеспечивает почти такую же задержку доступа к памяти, что и процессоры с вдвое большей тактовой частотой и внешним контроллером.

Из недостатков этого решения можно отметить только то, что при решении использовать более технологичную память придётся менять процессор, а не материнскую плату. С другой стороны, встроенный контроллер можно отключить и использовать внешний - правда, при этом микроархитектура AMD K8 лишается одного из своих главных преимуществ. По большому счёту, K8 с использованием внешнего контроллера памяти становится похож на старый К7, только с удлинённым конвейером и, соответственно, 64-разрядной архитектурой.

Многопроцессорность

Будучи прямой наследницей микроархитектуры К7, микроархитектура К8 обладала прекрасными возможностями для организации многопроцессорных систем, главным образом благодаря легендарной системной шине EV-6. Шина EV-6, являясь по сути коммутатором, обеспечивала каждому процессору системы прямой доступ к набору системной логики за счёт подключения типа "точка-точка". Это позволяло избежать конфликтов, связанных с разделением полосы пропускания системной шины.

В новой микроархитектуре AMD решила пойти дальше и реализовала технологию со звучным названием HyperTransport. HyperTransport также является протоколом типа "точка-точка", но состоит из трёх отдельных шин, шириной по 16 бит. Процессоры системы взаимодействуют между собой посредством двух шин, а третья используется для связи с другими частями системы. Благодаря интегрированным контроллерам памяти, пропускная способность памяти увеличивается пропорционально числу работающих процессоров. При этом каждый из процессоров может использовать как свой контроллер, так и контроллер любого из "соседей", что также повышает эффективность работы памяти.

В результате при увеличении числа процессоров от одного до двух, система на базе процессоров К8 обеспечивает в два раза больший прирост производительности по сравнению с системой из процессоров микроархитектуры Intel NetBurst, причём обладающих более высокой тактовой частотой.

AMD K8: и всё-таки первая!

Несмотря на то, что 64-разрядные микроархитектуры уже не были чем-то диковинным, AMD K8 удалось получить не только формальное первенство. Обратная совместимость с х86-кодом и возможность получить все преимущества 64-битного процессорного ядра позволила AMD в очередной раз заявить о своём превосходстве. Теперь уже настал черёд Intel "заимствовать" разработки у AMD.

Хотя процессоры архитектуры К8 не получили ожидаемого спроса, в техническом плане они выглядели более чем достойно, что повышало состоятельность AMD в глазах потребителей. А для AMD, по сути, это важнее, чем спрос.


Предыдущие статьи цикла:
© ООО "Компьютерра-Онлайн", 1997-2019
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.