X87
-
История и назначение x87
- x87 — подмножество команд архитектуры x86 для операций с плавающей запятой.
- Возник как расширение набора команд 8086 для сопроцессоров с плавающей запятой.
- Названия микрочипов заканчиваются на «87».
-
Архитектура и инструкции
- Регистры x87 образуют восьмиуровневую структуру стека.
- Инструкции включают базовые операции с плавающей запятой и сложные числовые операции.
- В большинстве процессоров x86 инструкции x87 реализованы в основном процессоре.
-
Производительность и оптимизация
- x87 обеспечивает двоичную арифметику с плавающей запятой с одинарной, двойной и 80-разрядной точностью.
- По умолчанию используется 80-разрядная система двойной расширенной точности.
- Инструкции x87 могут быть оптимизированы для суперскалярных процессоров.
-
Производители и поколения
- Компании, разработавшие или производившие модули с плавающей запятой, включают AMD, Cyrix, Fujitsu, Harris Semiconductor и другие.
- Поколения включают 8087, 80C187, 80287 и 80387.
-
Влияние и будущее
- С появлением SSE2 инструкции x87 стали менее важными, но остаются важными для высокоточных численных вычислений.
- x87 остается важным для численных вычислений, чувствительных к ошибкам округления.
-
Математический сопроцессор i387
- Выполняет аппаратную арифметику с плавающей запятой
- Возвращает результаты быстрее, чем программная библиотека
- Совместим только с i386 с 32-разрядной шиной
-
i386SX и i387SX
- i386SX имеет 16-разрядную шину данных
- Для i386SX требуется сопроцессор 80387SX
- Intel выпустила маломощную версию сопроцессора 387SX
-
i387DX и i386DX
- i387DX имеет 16-битный переключатель каналов и модуль CORDIC
- Совместим с i386DX
-
i487SX и i486SX
- i487SX продавался как сопроцессор для i486SX
- Содержал полноценную реализацию i486DX
- Отключал основной процессор при установке в i486SX
-
80587 и Nx586
- Nx587 был последним FPU для x86, производившимся отдельно от процессора
- Совместим с NexGen Nx586