Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Микроархитектура К7.




 

Общее представление об микроархитектуре К7 дает следующий рисунок.

Рис. 1 Упрощенная схема микроархитектуры AMD K7

 

Кэш-память первого уровня включает 2-канальные частично-ассоциативные (наборно-ассоциативные) кэши команд и данных емкостью по 64 Кбайт каждый., что в вдвое больше, чем в К6-3, и вчетверо больше, чем в Pentium III.

Кэш данных К7 имеет 8 банков и обеспечивает одновременный доступ к двум 64-разрядным величинам при выполнении команд загрузки регистров/записи в память. Другой важной особенностью К7 является наличие в блоке кэша команд специальной кэш-памяти предварительного декодирования, которая используется декодерами команд. В других высокопроизводительных х86-совместимых процессорах произошел отказ от выполнения х86-команд, поскольку они неудобны для достижения максимума производительности. Вместо этого х86-команды декодируются в более простые и эффективные внутренние RISC-подобные команды фиксированной длины, которые собственно и исполняются микропроцессором. В K7 таких декодера три, и они работают параллельно, поэтому кэш предварительного декодирования в существенной степени способствует увеличению пропускной способности.

Кроме того, кэш команд первого уровня в К7 содержит двухуровневый блок быстрой переадресации страниц TLB, используемый для преобразования виртуальных адресов в физические: TLB первого уровня имеет емкость 24 строки, а TLB второго уровня256 строк. Аналогичный блок TLB в кэше данных первого уровня включает TLB первого уровня емкостью 32 строки и TLB второго уровня емкостью 256 строк. Также кэш команд первого уровня содержит большую таблицу предсказания переходов емкостью 2048 строк, что позволяет достигнуть высокой вероятности правильного динамического предсказания переходов.

Из декодеров команды попадают в ICU-устройство управления командами (рис. 1) емкостью 72 строки. AMD K7 является суперскалярным микропроцессором с внеочередным спекулятивным выполнением команд. Большая емкость устройства управления командами позволяет К7 эффективно использовать свои ресурсы.

А именно, К7 имеет 9 функциональных исполнительных устройств, которые являются конвейерными и способны к внеочередному выполнению команд. В числе этих 9 устройств: 3 адресных конвейера, 3 целочисленных конвейера и 3 конвейера с плавающей запятой. Соответственно этому К7 может выполнять до 9 команд за такт. Общая длина целочисленного конвейера в К7 составляет 10 стадий, а конвейера с плавающей запятой – 15 стадий.

Сама AMD характеризует К7 как суперскалярный (т.е. способный выполнять несколько команд за такт) и суперконвейерный процессор. Последнее означает, что конвейеры К7 имеют большую длину (много стадий). Это, как известно, облегчает увеличение тактовой частоты, но увеличение числа стадий имеет и свой минус: длинные конвейеры сложнее заполнять, и поэтому эффективность их использования может оказаться ниже.

Емкость «целочисленного» планировщика команд составляет 18 строк; через него команды поступают как в целочисленные, так и в адресные функциональные устройства. Аналогичный планировщик команд с плавающей запятой имеет емкость 36 строк. На работе блока команд с плавающей запятой стоит остановиться подробнее.

Прежде всего стоит отметить, что этот блок обеспечивает работу в соответствии со стандартами IEEE754 и IEEE854 с одинарной (32 разряда), двойной (64 разряда) и расширенной (80 разрядов) точностью. Кроме того, эти функциональные исполнительные устройства работают с данными в форматах команд ММХ (дополнительный набор инструкций выполняющий характерные для процессоров кодирования/декодирования потоков аудио/видео данных действия за одну машинную операцию) и 3DNow! (дополнительное расширение MMX для процессоров AMD, вводившее 21 новую команду процессора и возможность оперировать 32-битными вещественными типами и стандартами MMX-регистрах). Исполнительное устройство FSTORE выполняет команды загрузки регистров/записи в память. FADD, кроме сложения операндов с плавающей запятой, выполняет команды сложения из набора 3DNow! и ММХ-команды АЛУ и сдвига. FMUL, кроме умножения чисел с плавающей запятой, выполняет ММХ-команды АЛУ и умножения, команды 3DNow! с плавающей запятой, обращение чисел и специальные операции для поддержки деления. Таким образом, К7 может одновременно выполнять сложение и умножение чисел с плавающей запятой в FADD и FMUL. Это дает пиковую производительность в 2 операции с плавающей запятой за такт.

К7 имеет мультимедийные командам, среди которых имеются и специализированные команды с плавающей запятой. Если ММХ-команды K7 совпадают с Intel x86, то поднабор команд AMD 3DNow! отличается от SSE. Общее число команд SSE равно 71, что много больше, чем в 3DNow!. В AMD K6-3 число команд 3DNow! равно 21; в AMD K7 к ним были добавлены еще 24 новые команды, в том числе 12 команд целочисленной математики (для обработки видео, распознавания речи и др.), 7 команд пересылки данных (используемых, например, в графических Web-приложениях) и 5 команд, ориентированных на цифровую обработку сигналов, не имеющие.

 






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных