stringtranslate.com

Моторола 68881

Моторола 68881 ФПУ

Motorola 68881 и Motorola 68882 — это блоки с плавающей запятой (FPU), используемые в некоторых компьютерных системах вместе с 32-битными микропроцессорами Motorola 68020 или 68030 . Эти сопроцессоры представляют собой внешние микросхемы, разработанные до того, как математика с плавающей запятой стала стандартом для процессоров. Motorola 68881 был представлен в 1984 году. [1] 68882 — это более производительная версия, выпущенная позже.

Обзор

ФПУ Motorola 68882

Процессоры 68020 и 68030 были разработаны с учетом отдельного чипа 68881. Их наборы команд зарезервировали инструкции «F-линии» — то есть все коды операций , начинающиеся с шестнадцатеричной цифры «F», могли либо быть перенаправлены на внешний сопроцессор, либо использоваться как «ловушки», которые вызывали бы исключение , передавая управление операционная система компьютера . Если FPU отсутствует в системе, ОС либо вызовет эмулятор FPU для выполнения эквивалента инструкции с использованием целочисленного программного кода 68020, вернет программе ошибку, завершит работу программы, либо выйдет из строя и потребует перезагрузки.

Архитектура

68881 имеет восемь 80-битных регистров данных (64-битная мантисса плюс знаковый бит и 15-битная показатель степени со знаком). [2] Он поддерживает семь различных режимов числового представления, включая плавающую запятую одинарной точности, плавающую запятую двойной точности, плавающую запятую расширенной точности, целые числа в виде 8-, 16- и 32-битных величин, а также двоичные числа с плавающей запятой . кодированный десятичный формат. Двоичные форматы с плавающей запятой определены стандартом IEEE 754 для чисел с плавающей запятой. Он был разработан специально для вычислений с плавающей запятой и не является процессором общего назначения. Например, когда инструкция требует каких-либо вычислений адреса, основной процессор обрабатывает их до того, как 68881 возьмет на себя управление.

Пара CPU/FPU спроектирована таким образом, что оба могут работать одновременно. Когда ЦП встречает инструкцию 68881, он передает FPU все операнды, необходимые для этой инструкции, а затем FPU освобождает ЦП для продолжения выполнения следующей инструкции.

68882

Плашка Motorola 68882

68882 — это улучшенная версия 68881 с улучшенной конвейерной обработкой и, в конечном итоге, доступная на более высоких тактовых частотах . [3] [4] Его набор команд точно такой же. В некоторых маркетинговых публикациях Motorola утверждала, что она выполняет некоторые инструкции на 40% быстрее, чем 68881 при той же тактовой частоте, хотя это не отражает типичную производительность, о чем свидетельствует более скромное улучшение в таблице ниже. 68882 совместим по выводам с 68881 и может использоваться в качестве прямой замены в большинстве систем. Самая важная программная несовместимость заключается в том, что 68882 использует больший кадр состояния FSAVE, что влияет на UNIX и другие операционные системы с вытесняющей многозадачностью, которые пришлось модифицировать, чтобы выделить для него больше места.

Применение

68881 или 68882 использовались в рабочих станциях Sun Microsystems Sun-3 , рабочих станциях IBM RT PC , семействе Apple Computer Macintosh II , NeXT Computer , Sharp X68000 , Amiga 3000 , Convergent Technologies MightyFrame, Atari Mega STE , TT и Falcon . Некоторые [ какие? ] сторонние продукты Amiga и Atari использовали 68881 или 68882 в качестве периферийного устройства с отображением памяти для 68000 .

Версии

68881

68882

Эта статистика взята из FAQ по comp.sys.m68k. [3] Для 68882 с частотой 16 МГц и 20 МГц статистика не указана, хотя эти чипы действительно производились.

Наследие

Начиная с Motorola 68040 , поддержка операций с плавающей запятой была включена в сам процессор.

Рекомендации

  1. ^ Стерлинг, Томас; Андерсон, Мэтью; Бродович, Мацей (2017). Высокопроизводительные вычисления: современные системы и практики. Морган Кауфманн. п. 459. ИСБН 978-0-12-420158-3.
  2. ^ Техническое описание MC68881 Сопроцессор HCMOS с плавающей запятой (PDF) , Справочное руководство по семейству MC68000, Motorola
  3. ^ ab Boys, Роберт (6 января 1996 г.). «Часто задаваемые вопросы (FAQ) comp.sys.m68k». faqs.org . Проверено 23 июня 2023 г.
  4. ^ Техническое описание MC68882 Сопроцессор HCMOS с плавающей запятой (PDF) , Справочное руководство по семейству MC68000, Motorola
Примечания