Смекни!
smekni.com

Микропроцессоры для пользователей (стр. 9 из 11)

В PA-8000 использован буфер переупорядочивания команд (IRB) глубиной 56 команд, позволяющий "просматривать"программу на следующие 56 команд вперед в поисках таких четырех команд, которые можно выполнить параллельно. IRB фактически состоит из двух 28-слотовых буферов. Буфер АЛУ содержит команды для целочисленного блока и блока плавающей точки, а буфер памяти - команды загрузки/записи.

Как только команда попадает в слот IRB, аппаратура просматривает все команды, отправленные на функциональные блоки, чтобы найти среди них такую, которая является источником операндов для команды, находящейся в слоте. Команда в слоте запускается только после того, как будет распределена на исполнение последняя команда, которая сдерживала ее. Каждый из буферов IRB может выдавать по две команды в каждом такте, и в любом случае выдается самая "старая" команда в буфере. Поскольку PA-8000 использует переименование регистров и возвращает результаты выполнения команд из IRB в порядке их следования по программе, тем самым поддерживается точная модель обработки исключительных ситуаций.

HP проектировала РА-8000 специально для задач коммерческой обработки данных и сложных вычислений, типа генной инженерии, в которых объем данных настолько велик, что они не умещаются ни в один из мыслимых внутрикристалльных кэшей. Вот почему, РА-8000 полагается на внешние первичные кэши команд и данных. Слоты в третьем 28-слотовом буфере, который называется буфером переупорядочивания адресов (Adress-Recorder Buffer - ARB), один к одному ассоциированы со слотами в буфере памяти IRB. В АРВ содержатся виртуальные и физические адреса всех выданных команд загрузки/записи. Кроме того, АРВ допускает выполнение загрузок и записей в произвольном порядке, но с сохранением согласованности и сглаживанием влияния задержки, связанной с адресацией внешних кэшей.

4.9. Процессоры Motorola.

Motorola/IBM процессор PowerPC620 это первая 64-битовая реализация архитектуры PowerPC. Имея 64-битовые регистры и внутренние магистрали данных и семь миллионов транзисторов, новому процессору требуется почти вдвое больший и сложный кристалл, чем у PowerPC 604. Модель 620 имеет четырехканальную суперконвейерную схему с шестью исполнительными устройствами: три целочисленных АЛУ, блок плавающей точки, блок загрузки/записи и блок переходов. Последний способен на четырехуровневое предсказание ветвлений в программе и условное исполнение с использованием схемы переименования регистров.

ПО микроархитектуре RISC-ядра 620-й похож на 604-й. Отличия сводятся в основном к ширине регистров и магистралей данных, а также к увеличенному числу станций резервирования для условного исполнения команд. Прибавка производительности достигнута за счет улучшенного шинного интерфейса. Теперь он имеет 128-битовый интерфейс к памяти, по которому за один цикл обращения можно выбрать два 64-битовых длинных слова, и 40-битовая шина адреса, по которой можно адресовать до одного терабайта физической памяти.

В состав шинного интерфейса входить также поддержка кэш-памяти второго уровня объемом до 128 Мбайт, которая может работать на четверти, половине или на полной скорости ЦПУ.

5. Лабораторные испытания и тестирование микропроцессоров.

5.1. Лабораторные испытания процессоров i386DX.

В 1992 году на рынке появилось три новых МП, способных заместить существующие 386DX и обеспечить повышение характеристик систем на основе i386. Это: Intel RapidCAD, Chips&Technologies 38600DX, и Cyrix 486DLC. В настоящий момент предлагаются только версии 33 МГц, хотя C&T и Cyrix обещают выпустить в начале 1993 года вариант 40 МГц. Конечно, на такой частоте можно заставить работать и 33 МГц вариант, но мой опыт показывает, что это ненадежно, в любой момент машина может зависнуть. Intel RapidCAD распространяется, как продукт для конечных пользователей, т.е. в машину его устанавливают именно они. Напротив, C&T и Cyrix поставляют свои процессоры и производителям. Cyrix также производит процессор 486SLC, заменяющий Intel/AMD 386SX. C&T объявил о создании процессора 38600SX, но в продаже он появится только в 1993 году, если вообще появится.

RapidCAD, грубо говоря, представляет собой процессор 486DX без внутренней кэш-памяти и с цоколевкой процессора 386. Для программ он соответствует 386 с сопроцессором, так как все специфичные команды i486 удалены из набора команд. Рекламируется этот процессор, как "абсолютный сопроцессор" и, к чему и обязывает такое имя, он предназначен для замены процессора 386DX в существующих системах и резкого повышения производительности операций с плавающей точкой, таких, как CAD, электронные таблицы, математические программные пакеты (SPSS, Mathematica и т.д.). RapidCAD состоит из двух корпусов; RapidCAD-1, в корпусе PGA (132 вывода), устанавливающийся в гнездо для i386, включает в себя ЦПУ и модуль операций с плавающей точкой, и RapidCAD-2, в корпусе PGA (68 выводов), устанавливающийся в гнездо для сопроцессора i387, включает в себя ПЛМ, подающий сигнал на схемы системной платы для правильной обработки особых ситуаций при операциях с плавающей точкой. Большинство операций исполняется в течение одного цикла, как и в i486. Однако узким местом является интерфейс шины 386, так как каждый цикл шины равен двум циклам процессора. Это значит, что команды выполняются быстрее, чем считываются из памяти. Поскольку операции с плавающей точкой выполняются медленнее обычных команд, то замедление на них не сказывается, и они выполняются с такой же скоростью, как и на i486DX. Именно поэтому RapidCAD позволяет получить более высокие характеристики с плавающей точкой, чем любая комбинация 386/387. Результаты теста SPEC, стандартного теста для машин под UNIX, показывают, что RapidCAD ускоряет операции с плавающей точкой на 85%, а с целыми числами - на 15% по сравнению с любой комбинацией 386/387 при одинаковой тактовой частоте. Потребляемая мощность при 33 МГц составляет 3500 мВт. Текущая цена RapidCAD 33 МГц составляет 300$.

Предполагается, что процессор фирмы C&T 38600DX полностью совместим с i386DX. В отличие от процессора Am386 фирмы AMD, который использует микрокод, идентичный микрокоду Intel 386, в процессоре 38600DX использован патентно чистый микрокод, для обеспечения полной совместимости в набор команд даже включена недокументированная команда LOADALL386. Некоторые команды выполняются быстрее, чем в i386. C&T также выпустила процессор 38605DX, включающий кэш-память команд на 512 байт, что еще более повысит его производительность. К сожалению, 38605DX выпускается в корпусе PGA (144 вывода) и не может быть установлен непосредственно в разъем i386DX. При проведении испытаний я заметил, что у 38600DX есть серьезные проблемы коммуникации ЦПУ- сопроцессор, и из-за этого скорость выполнения в большинстве программ операций с плавающей точкой у него падает ниже уровня i386/i387. Эта проблема существует для всех производимых на настоящий момент 387- совместимых сопроцессоров (ULSI 83C87, IIT 3C87, Cyrix EMX87, Cyrix 83D87, Cyrix 387+, C&T 38700, Intel 387DX). Мой знакомый по сети тоже проводил такие тесты с 38700DX и пришел к аналогичным выводам. Он связался с C&T, и ему ответили, что знают об этом. Средняя потребляемая мощность 38600DX 40 МГц - 1650 мВт, что меньше, чем потребление i386 33 МГц. Текущая цена 38600DX 33 МГц - 80$.

Процессор Cyrix 486DLC - последняя новинка на рынке заменителей i386DX. Набор его команд совместим с i486SX, установлена 1 КВ кэшпамять и аппаратно реализованный 16х16 бит умножитель. Исполнительное устройство 486DLC, созданное с использованием некоторых принципов RISC, выполняет большинство команд за один цикл. Аппаратный умножитель перемножает 16-разрядные значения за 3 цикла, вместо 12 - 25 циклов у i386DX. Это особенно удобно при вычислении адресов (код, генерируемый некоторыми неоптимизирующими компиляторами, может содержать много команд MUL для доступа к массивам) и для программных вычислений с плавающей точкой (напр., при эмуляции сопроцессора). Внутренняя кэшпамять представляет собой обьединенную память команд и данных сквозной записи, и может быть конфигурирована, как память с прямым отображением, или как 2-канальная ассоциативная. Из-за необходимости обеспечения полной совместимости после перезагрузки процессора кэшпамять отключается, и должна быть включена с помощью небольшой программы, предоставляемой фирмой Cyrix. Если кэш-память включена при загрузке, (напр., при "горячей" перезагрузке, Ctrl-Alt-Del), BIOS моего РС (пр-ва AMI) зависает при загрузке, и мне приходится либо выполнять рестарт процессора, либо отключать кэш перед перезагрузкой. Это одна из причин того, что после запуска процессора кэш-память отключается. Я уверен, что в следующих версиях BIOS фирмы AMI это будет учтено и встроенная кэш-память будет поддерживаться. Кэш-память помогает процессору 486DLC преодолеть ограничения интерфейса шины 386, хотя процент попаданий составляет не более 50%. Фирма Cyrix предусмотрела некоторые возможности управления кэш-памятью процессора, что, конечно, улучшит связь внешней и внутренней кэш-памяти. Современные системы 386 не воспринимают эти управляющие сигналы, не имеющие значения для i386DX, но в дальнейшем системы, разработанные с учетом этих возможностей 486DLC, могут использовать их. Встроенный кэш 486DLC допускает до 4-х некэшируемых областей памяти, что может быть очень полезно в том случае, если ваша система использует периферийные устройства, отображаемые в память (напр., сопроцессор Weitek). В существующих системах 386 пересылки DMA (напр., SCSI контроллера, платы звука) могут отключить внутренний кэш, так как не существует других способов обеспечить соответствие кэш-памяти и основной памяти, что, конечно, снижает характеристики 486DLC. Потребляемая мощность 486DLC 40 МГц - 2800 мВт. Немецкий дистрибьютор продает 486DLC 33 МГц по текущей цене 115$. 486DLC работает далеко не со всеми сопроцессорами и не во всех обстоятельствах, особенно критичен в этом отношении многозадачный защищенный режим (улучшенный режим MS- Windows). При использовании 486DLC совместно с Cyrix EMC87, Cyrix 83D87 (выпуск до августа 1992) и IIT 3C87 машина зависает из-за проблем синхронизации между ЦПУ и сопроцессором при исполнении команд FSAVE и FRSTOR, сохраняющих и восстанавливающих состояние сопроцессора при переключении задач. Лучше всего использовать 486DLC с Cyrix 387+ (распространяется только в Европе) или Cyrix 83D87 выпуска после июля 1992, являющийся наиболее мощным сопроцессором среди совместимых сопроцессоров 486DLC. Если у вас уже есть сопроцессор Cyrix 83D87, и вы хотите знать, совместим ли он с 486LCD, я рекомендую вам мою программу COMPTEST, распространяемую как CTEST257.ZIP через анонимные ftp из garbo@uwasa.fi или другие ftp-серверы. Если программа сообщит о сопроцессоре 387+, то у вас установлен либо 387+, либо аналогичная новая версия 83D87 и проблем с совместимостью не будет.