Микропроцессоры компании Cyrix

Вторым конкурентом компании Intel, после AMD, по объему производства процессоров с архитектурой х86 является Cyrix [8, 17,18].

Микропроцессор Cyrix 5х86 (Misc). 5х86 - это первый представитель среди процессоров компании Cyrix с архитектурой х86 5-го поколения, предложенный в качестве альтернативы Pentium [8]. Для упрощения этапа перехода пользователей на новый процессор компания обеспечила его совместимость по выводам с 486-м процессором. В 5х86 воплощены архитектурные и структурные решения, характерные для процессоров пятого поколения, такие, как 64-разрядная внутренняя архитектура предсказания переходов, предварительная посылка данных, выполнение нескольких операций за один такт (благодаря разнесению устройств загрузки/сохранения), 80-разрядное устройство вычислений с плавающей точкой, 16 Кбайтовый общий кэш данных и команд.

Особенностью микропроцессора является высокоэффективная система управления энергопотреблением процессора и внешних устройств. Система управления энергопотреблением может отключить модуль операций с плавающей точкой и другие периферийные внутренние схемы, если они в данный момент не используются. Низкое энергопотребление процессора (на частоте 100 МГц при напряжении питания 3,3В) 5х86 потребляет менее 3,5Вт, делает его предпочтительным для использования в мобильных компьютерах, для которых критичны энергопотребление и отвод тепла.

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

Процессор содержит модуль предсказания переходов, включающий буфер адресов перехода (ВТВ), 16 Кбайтовый объединенный кэш данных и команд с режимом обратной записи, устройство операций с плавающей точкой, устройство выборки и устройство декодирования команд, устройство управления памятью с буфером преобразования адресов на 32 элемента, параллельно функционирующие устройства загрузки/сохранения и модуль вычисления адресов. Функциональные модули 5х86 связаны между собой двумя 32-разрядными шинами, обеспечивающими не блокируемый обмен данными, 128-разрядная шина выборки команд обеспечивает за один такт передачу 16-байтовых команд в 3-уровневый буфер устройства декодирования команд.

Модуль целочисленных операций выбирает, декодирует и выполняет команды в шестистадийном конвейере. На первой стадии выборки (Fetch Stage) генерируется непрерывный высокоскоростной поток команд из внутреннего кэша. За один такт считывается до 128 бит кода. На второй стадии - декодирования (Decode Stage) анализируется поток команд и определяется число байт в каждой команде и ее тип. На третьей стадии (Address Calculation) выполняется конвейеризированное вычисление адреса, включающее стадии АС1 и АС2. АС1 используется для вычисления линейного адреса, если команда обращается к операнду в памяти. АС2 выполняет любые операции доступа к памяти, кэшу и регистрам. В случае обнаружения команды с плавающей точкой, АС2 передает ее устройству вычислений с плавающей точкой. На стадии выполнения (Execution Stage) под управлением микрокода осуществляется выполнение команды. На стадии записи результата (Write-Back) сохранение в регистровом файле выполняется непосредственно в модуле целочисленных операций, а сохранение в памяти выполняется модулем загрузки/сохранения.

Устройство операций с плавающей точкой связано 64-разрядным интерфейсом с кэшем и модулем целочисленных операций и поддерживает систему команд х87, включая расширенный 80-разрядный формат.

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

64-разрядная внутренняя шина микропроцессора преобразуется в 32-разрядную внешнюю шину. Внешняя шина микропроцессора может работать с частотой от 33 до 50 МГц, умножитель частоты повышает внутреннюю частоту до 100-120 МГц.

По производительности микропроцессор сравним с младшими моделями Pentium (75, 90), но существенно дешевле последних.

Микропроцессор Cyrix 6х86МХ. Следующей разработкой компании Cyrix явился процессор с мультимедийными расширениями 6х86МХ, известный также как М2 [18]. Cyrix представляет этот процессор как более дешевый конкурент Pentium II. Подобно Pentium PRO, он оптимизирован для работы с 32-разрядными программами, но, в отличие от последнего, он успешно работает с 16-разрядными программами и может устанавливаться в стандартное гнездо Socket 7.

Процессор производится по технологии КМОП 0,35 мкм с 5-слойной металлизацией. Ему требуется два напряжения питания: 2,9В для процессорного ядра и 3,3В для подсистемы ввода/вывода. Процессор может работать с частотой шины до 75 МГц. Его производительность по Pentium-рейтинг составляет PR 166, PR200 и PR233. После перехода на технологию 0,25 мкм выпушен процессор с производительностью PR300.

Структура микропроцессора показана на рис. 1.8.

Процессор 6х86МХ - это улучшенный процессор 6х68, в который добавлена возможность выполнения набора из 57-ми мультимедийных команд, совместимых с ММХ расширением Intel, повышена тактовая частота, увеличен объем кэш-памяти, применен двухуровневый буфер трансляции адресов (TLB) и улучшенный кэш адресов переходов.

Процессор базируется на суперскалярном ядре 6х86, которое, благодаря наличию двух независимых конвейеров, способно выполнять несколько команд за такт. В 6х86МХ увеличена длина конвейеров, что позволило повысить тактовую частоту процессора.

В 6х68 используется предсказание переходов и спекулятивное выполнение команд после перехода и операций с плавающей точкой. Спекулятивное выполнение может осуществляться на глубину до 4 команд перехода и операций с плавающей точкой. Результаты, полученные при спекулятивном выполнении команд, не переносятся в кэш и внешнюю память до тех пор, пока не будет получено подтверждение правильности сделанного предположения. Спекулятивное выполнение команд продолжается до тех пор, пока не произойдет одно из следующих событий:

• Уровень спекулятивного выполнения превысил 4;

• Возникло исключение или установлена ложность предсказания перехода;

• Переполнение буфера записи результатов спекулятивно выполненных команд;

• Предпринята попытка модификации ресурсов, не сохраненных в контрольной точке (например, сегментных регистров, системных флагов).

 
 

Основные отличия процессоров 6х86МХ и 6х86 отражены в таблице 1.1

МП 6х86МХ содержит два кэша: 64 Кбайтовый 4-входовой ассоциативный общий кэш с обратной записью и 256 байтовый высокоскоростной кэш команд с прямым отображением. Для поддержки выполнения мультимедийных операций часть кэш-памяти может быть использована в качестве основной памяти со строковой организацией. В этом случае она не участвует в операциях кэширования.

В 6х86МХ используются два буфера трансляции адресов (TLB) - основной TLB первого уровня (TLB LI) и вторичный TLB (TLB L2) большего размера. TLB LI с прямым отображением адресов имеет 16 позиций, 6-входовой ассоциативный TLB L2 рассчитан на 384 позиции.

Таблица 1.1. Отличия процессоров Cyrix 6х86 и 6х86МХ

Характеристика 6х86МХ 6х86
Напряжение питания Ядро Подсистема ввода\вывода   2,9 В 3,3 В 6х86 6х86L
3,3 или 3,52 В 3,3 В 2,8 В 3,3 В
Кэш первого уровня 64 Кбайт 16 Кбайт
TLB L1: 16 позиций L1: 384 позиций L1:128 позиций
Предсказание переходов     512-позиционный кэш адресов переходов; 1024-позиционная таблица предыстории переходов 256- позиционный кэш адресов переходов 512-позиционная таблица предыстории переходов
ММХ Да Нет
Реализация строковой памяти в первичном кэше Да Нет
Умножение частоты 2х, 2.5х, 3х, 3.5х 2х, 3х

 

Устройство операций с плавающей точкой (FPU) имеет 64-разрядный интерфейс, 4-позиционную входную очередь команд на выполнение и 6 позиционную выходную очередь на запись результатов. FPU расширен возможностью выполнения команд ММХ, наряду с командами с плавающей точкой. Команды обоих типов могут выполняться одновременно целочисленными операциями.

Для возможного применения в мобильных компьютерах в 6х68МХ предусмотрена эффективная система управления энергопотреблением.