Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МвСУ_16.11.2011.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
6.76 Mб
Скачать

5.2. Микропроцессоры семейства Hammer

Микропроцессоры данного семейства являются 64-разрядными, однако в отличие от архитектуры IA-64 Intel, обеспечивают совместимость с системой команд х86, в связи с чем архитектура получила название х86-64.

Упрощенная структура микропроцессора Hammer показана на рис. 30.

Основные преимущества архитектуры x86-64 следующие: обратная совместимость с инструкциями х86; 64-битные версии регистров общего назначения; 8 новых РОН (general purpose registers, GPRs), доступных только для 64-битных приложений; поддержка SSE и SSE2, добавлено 8 новых регистров SSE2; увеличен объем адресуемой памяти;  высокая производительность 32-битных приложений, поддержка 64-битных приложений, увеличена длина вычислительных конвейеров: целочисленного конвейера до 12 стадий, с плавающей точкой до 17 стадий; встроен контроллер памяти; усовершенствован блок предсказания ветвлений; встроен когерентный интерфейс.

Рис. 30.Упрощенная структура микропроцессора Hammer

Встроенный когерентный интерфейс обеспечивает возможность использования Hammer в мультипроцессорной конфигурации.

Улучшение блока предсказания ветвлений заключается в выявлении и учете информации о типе ветвлений: статическое ветвление, т. е. адрес перехода не изменяется, или динамическое.

Микропроцессоры c архитектурой power pc и arm

6.1. Микропроцессоры с архитектурой power

Архитектура POWER во многих отношениях представляет собой традиционную RISC-архитектуру. Она придерживается наиболее важных отличительных особенностей RISC: фиксированной длины команд, архитектуры регистр-регистр, простых способов адресации, простых (не требующих интерпретации) команд, большого регистрового файла и трехоперандного (неразрушительного) формата команд. Однако архитектура POWER имеет также несколько дополнительных свойств, которые отличают ее от других RISC-архитектур.

Во-первых, набор команд был основан на идее суперскалярной обработки. В базовой архитектуре команды распределяются по трем независимым исполнительным устройствам: устройству переходов, устройству с фиксированной точкой и устройству с плавающей точкой. Команды могут направляться в каждое из этих устройств одновременно, где они могут выполняться одновременно и заканчиваться не в порядке поступления.

Во-вторых, архитектура POWER расширена несколькими "смешанными" командами для сокращения времен выполнения. Возможно единственным недостатком технологии RISC по сравнению с CISC, является то, что иногда она использует большее количество команд для выполнения одного и того же задания. Было обнаружено, что во многих случаях увеличения размера кода можно избежать путем небольшого расширения набора команд, которое вовсе не означает возврат к сложным командам, подобным командам CISC. Это было сделано с помощью косвенной адресации посредством таблицы содержания, которая модифицируется во время загрузки.

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

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

Архитектура POWER вместо того, чтобы исправлять проблемы, связанные с традиционным подходом к регистру условий, предлагает наличие специального бита в коде операции каждой команды, что делает модификацию регистра условий дополнительной возможностью и тем самым восстанавливает способность компилятора реорганизовать код. Так же предлагается несколько (восемь) регистров условий для того, чтобы обойти проблему единственного ресурса и обеспечить большее число имен регистра условий так, что бы компилятор мог разместить и распределить ресурсы регистра условий, как он это делает для универсальных регистров.

6.2. Микропроцессоры с архитектурой PowerPC

В однокристальных микропроцессоры семейства PowerPC сохранены свойства архитектуры микропроцессоров POWER и усовершенствован процесс параллельного выполнения команд. Семейство представлено несколькими процессорами: микропроцессоры PowerPC 601, PowerPC 603, PowerPC 604, PowerPC 620, PowerPC 750, PowerPC G4, PowerPC G5 и некоторыми другими. Младшие модели суперскалярных процессоров семейства (PowerPC 601, PowerPC 603, PowerPC 604) являются 32-разрядными, а старшие модели (PowerPC 620) – 64-разрядными. Микропроцессор PowerPC содержат в своем составе несколько исполнительных блоков: блок целочисленных вычислений, блок операций с плавающей точкой и блок обработки переходов. Все блоки конвейеризированы. Микропроцессоры PowerPC допускают внеочередное исполнение команд и обеспечивают одновременную выдачу на исполнение до четырех команд. В каждом такте работы микропроцессоров PowerPC 601 и PowerPC 603 могут завершать исполнение до трех команд, а процессор PowerPC 604 – до шести команд.

Суперскалярный процессор PowerPC 620 стал первой 64-разрядной реализацией архитектуры PowerPC. Он предназначен для построения высокопроизводительных ВМ, серверов и мультипроцессорных систем. Микропроцессор PowerPC 620 совместим по коду с ранними моделями процессоров PowerPC. Благодаря этому он может выполнять не только новые, специально разработанные для него 64-битовые программы, но и ранее созданные 32-битовые программы микропроцессоров PowerPC.

Структурная схема суперскалярного процессора PowerPC 620 представлен рис. 31, которая содержит шесть независимых исполнительных блоков, высокоскоростной интерфейс, раздельные кэш команд и кэш данных 1-го уровня емкостью 32 Кбайт каждый, контроллер внешней кэш-памяти. За такт процессор может выполнять до четырех команд. Для поддержания эффективной загрузки исполнительных блоков в процессоре применяется динамическое предсказание переходов и спекулятивное исполнение команд.