Intel 80486

Intel 80486 (также известный как i486, Intel 486 или просто 486-й) — 32-битный скалярный x86-совместимый микропроцессор четвёртого поколения, построенный на гибридном CISC-RISC-ядре и выпущенный фирмой Intel 10 апреля 1989 года. Этот микропроцессор является усовершенствованной версией микропроцессора 80386. Впервые он был продемонстрирован на выставке Comdex Fall, осенью 1989 года. Это был первый микропроцессор со встроенным математическим сопроцессором (FPU). Применялся преимущественно в настольных ПК, в высокопроизводительных рабочих станциях, в серверах и портативных ПК (ноутбуки и лэптопы).

Руководителем проекта по разработке микропроцессора Intel 486 был Патрик Гелсинджер.

История 
Intel 80486 был анонсирован на весенней выставке Comdex в апреле 1989 года. Во время анонса Intel заявила, что образцы будут доступны в третьем квартале 1989 года, а серийные партии будут поставляться в четвертом квартале 1989 года. Первые ПК на базе 80486 были анонсированы в конце 1989 года, но некоторые советовали подождать до 1990 года, чтобы приобрести ПК на базе 80486, поскольку ранее поступали сообщения об ошибках и несовместимости программного обеспечения.

Первое серьезное обновление архитектуры 80486 произошло в марте 1992 года с выпуском серии 486DX2 с интегрированным математическим сопроцессором и кэшем первого уровня. Впервые тактовая частота ядра процессора была отделена от тактовой частоты системной шины с помощью двойного тактового множителя, что привело к выпуску чипов 486DX2 с частотой 40- и 50-МГц. Более быстрый 66-МГц 486DX2-66 был выпущен позже, в августе того же года.

Несмотря на выпуск в 1993 году нового процессора Pentium пятого поколения, Intel продолжала выпускать процессоры i486, что привело к выпуску  с тройным множителем, тактовой частотой 100 МГц и кэшем L1, удвоенным до 16 КБ.

Ранее Intel решила не делиться своими технологиями 80386 и 80486 с AMD. Однако AMD считала, что их совместное использование технологий распространяется и на 80386 как производную от 80286. Поэтому AMD провела самостоятельную обратную разработку чипа 386 и выпустила 40-МГц чип Am386DX-40, который был дешевле и имел меньшее энергопотребление, чем лучшая 33-МГц версия 386 от Intel. Intel попыталась помешать AMD продавать процессор, но AMD выиграла судебное разбирательство, что позволило ей выпустить процессор и утвердиться в качестве конкурента Intel.

AMD продолжала создавать клоны, в результате чего в апреле 1993 года был выпущен чип первого поколения Am486 с тактовыми частотами 25-, 33- и 40 МГц. Последующие чипы второго поколения Am486DX2 с тактовыми частотами 50-, 66- и 80 МГц были выпущены в следующем году. Серия Am486 была завершена 120-МГц чипом DX4 в 1995 году.

В 1995 году после восьмилетней судебной тяжбы AMD против Intel был урегулирован арбитражный иск 1987 года, и AMD получила доступ к микрокоду Intel 80486. Как сообщается, это привело к созданию двух версий процессора 486 от AMD — одна была создана на основе микрокода Intel, а другая использовала микрокод AMD в процессе разработки в чистом помещении. Тем не менее, в соглашении также указано, что процессор 80486 станет последним процессором Intel, который будет клонирован AMD.

Другим производителем клонов 486 была компания Cyrix, которая была безфабричным производителем микросхем сопроцессоров для систем 80286/386. Первые процессоры Cyrix 486, 486SLC и 486DLC, были выпущены в 1992 году и использовали пакет 80386. Оба процессора Cyrix производства Texas Instruments были совместимы по контактам с системами 386SX/DX, что позволило им стать вариантом модернизации для старых систем. Однако эти чипы не могли сравниться с процессорами Intel 486, имея всего 1 КБ кэш-памяти и не имея встроенного математического сопроцессора. В 1993 году Cyrix выпустила собственные процессоры Cx486DX и DX2, которые по производительности были ближе к аналогам Intel. Это привело к тому, что Intel и Cyrix подали друг на друга в суд, причем Intel обвинила Cyrix в нарушении патентов, а Cyrix выдвинула встречно антимонопольные претензии. Судебное разбирательство закончилось в 1994 году победой Cyrix и снятием антимонопольного иска.

В 1995 году и Cyrix, и AMD обратили внимание на готовый рынок пользователей, желающих обновить свои процессоры. Cyrix выпустила производный 486 процессор под названием 5x86, основанный на ядре Cyrix M1, который работал на тактовой частоте 120 МГц и был опцией для материнских плат 486 Socket 3. AMD также выпустила 133-МГц Am5x86, который по сути был улучшенным 80486 с удвоенным кэшем и четырехкратным множителем, который также работал с оригинальными материнскими платами 486DX. Am5x86 был первым процессором, который использовал рейтинг производительности AMD и продавался как Am5x86-P75, с утверждениями, что он эквивалентен Pentium 75. Компания Kingston Technology также выпустила модуль 'TurboChip' 486, в котором использовался 133-МГц Am5x86.

В результате Intel выпустила чип обновления Pentium OverDrive для материнских плат 486, который представлял собой модифицированное ядро Pentium, работающее на частоте до 83 МГц на платах с тактовой частотой системной шины 25- или 33 МГц. OverDrive не был популярен из-за низкой производительности и высокой цены. После того как процессоры серии Pentium закрепились на рынке, Intel продолжила выпуск ядер 486 для промышленных встраиваемых приложений, а затем в конце 2007 года прекратила производство процессоров серии 80486.

Описание

Технические характеристики (сводно) 
 Дата анонса первой модели: 10 апреля 1989 год
 Разрядность регистров: 32 бита
 Разрядность внешней шины данных: 32 бита
 Разрядность внешней шины адреса: 32 бита
 Объём виртуальной адресуемой памяти: 64 Тб (246)
 Максимальный объём сегмента: 4 Гбайт
 Объём физической адресуемой памяти: 4 Гбайт
 Кэш L1: 8 Кбайт, DX4 — 16 Кбайт
 Кэш L2: на материнской плате (на частоте FSB)
 FPU: на кристалле, у SX отключён
 Тактовые частоты процессора, МГц: 16—100 (DX4)
 Тактовые частоты FSB, МГц: 16—50
 Напряжение питания: 5—3,3 В
 Количество транзисторов: 1,185 млн, SX2 — 0,9 млн, SL — 1,4 млн, DX4 — 1,6 млн.
 Техпроцесс, нм: 1000, 800 и 600 для DX4
 Площадь кристалла: 81 мм² для 1,185 млн транзисторов и технологии 1000 нм, 67 мм² для 1,185 млн транзисторов и 800-нм технологии, 76 мм² для DX4
 Максимально потребляемый ток: нет данных
 Максимально потребляемая мощность: нет данных
 Разъём: гнездо типа Socket
 Корпус: 168- и 169-контактный керамический PGA, 132- и 208-контактный пластиковый PQFP
 Инструкции: x86 (150 инструкций, не считая модификаций)
Процессор обладал 32-битными шинами адреса и данных. Это требовало наличия памяти в виде четырёх 30-контактных или одного 72-контактного модуля SIMM.

Различия между Intel 486DX и Intel 386 
Intel 486DX, 486DX2 и 486DX4 представляют собой кристалл, содержащий центральный процессор, математический сопроцессор и контроллер кэша. Полностью совместимые на уровне предпроцессора с процессорами Intel 386, тем не менее, они имеют следующие отличия:
 процессоры Intel 486, в отличие от Intel ULP486GX, который имеет поддержку только 16-битной шины данных, обеспечивают динамическое изменение размера используемой шины для поддержки 8-, 16- и 32-битных транзакций. Intel 386 поддерживают только два размера ширины шины, 16 и 32 бита, и не требуют внешней логики для организации смены ширины шины.
 Процессоры Intel 486 имеют режим укороченной передачи, который позволяет за одну транзакцию передать по шине четыре 32-битных слова из внешней памяти в кэш, используя всего пять циклов. Intel 386 для передачи того же объёма данных требуется минимум восемь циклов.
 Процессор Intel 486 имеет сигнал BREQ, используемый для поддержки мультипроцессорных систем.
 Шина процессора Intel 486 значительно мощнее шины процессора Intel 386. Новые возможности в виде умножения частоты шины, проверки чётности (отсутствует в ULP486SX и ULP486GX), укороченный цикл передачи данных, кэшируемые циклы, в том числе кэшируемый цикл без проверки данных, поддержка транзакций по 8-битной шине.
 Для поддержки кэша на кристалле введены новые управляющие регистры (CD и NW), добавлены новые выводы для шины, новые типы циклов обмена по шине.
 Набор инструкций математического процессора Intel 387 не только поддерживается в полном объёме, но и расширен. Во время выполнения команды по обработке данных с плавающей точкой не выполняются никакие циклы ввода-вывода. Не задействовано прерывание 9, происходит прерывание 13.
 Процессор Intel 486 поддерживает новые режимы выявления ошибок, что гарантирует совместимость с DOS. Эти новые режимы требуют нового бита в управляющем регистре 0 (NE).
 К набору команд добавлено шесть новых: BSWAP (Byte Swap), XADD (Exchange and Add), CMPXCHG (Compare and Exchange), INVD (Invalidate data cache), WBINVD (Write-back and Invalidate data cache) и INVLPG (Invalidate TLB Entry).
 В управляющем регистре 3 назначены два новых бита, отвечающих за кэширование текущего каталога страниц.
 Добавлены новые возможности защиты страниц, требующие нового бита в управляющем регистре 0.
 Добавлены новые возможности проверки выравнивания, требующие нового бита в регистре флагов и управляющем регистре 0.
 Заменён алгоритм для TLB на алгоритм псевдо-LRU (PLRU), подобно используемому в кэше на кристалле.
 Для тестирования кэша на кристалле добавлены три новых тестовых регистра: TR5, TR6 и TR7. Повышена стабильность работы TLB.
 Очередь предварительной выборки увеличена с 16 до 32 байт. Для гарантированного правильного выполнения новых инструкций всегда выполняются переходы после модификации кода.
 После сброса в верх байта ID записывается значение <04>.

Микроархитектура

Математическая модель и набор инструкций 
Набор инструкций не претерпел существенных изменений, но были добавлены дополнительные инструкции для работы со внутренней кэш-памятью (INVD, INVLPG, WBINVD), одна инструкция (BSWAP) для обеспечения совместимости с процессорами Motorola, две инструкции для атомарных операций с памятью: CMPXCHG (для сравнения с обменом — новое значение записывалось только если старое совпадало с заданным, старое запоминалось) и XADD (инструкция для сложения двух операндов с помещением результата во второй операнд, а не в первый, как в ADD). Инструкция CPUID позволяла впервые в семействе x86 напрямую получить детальную информацию о версии и свойствах процессора. Помимо этого, к набору инструкций добавилось 75 инструкций FPU.

Длина очереди инструкций была увеличена до 32 байт.

Блоки и реализация интерфейсов

Регистры 
В процессоре имеется расширенный, по сравнению с в 80386, набор инструкций, в который добавлено несколько дополнительных регистров, а именно, три 32-битных тестовых регистра (TR5, TR4, TR3). Также были добавлены новые флаги в регистре флагов (EFLAGS) и в других управляющих регистрах (CR0, CR3).

Вследствие включения сопроцессора в кристалл процессора, в Intel 486 можно обращаться и к регистрам FPU: регистры данных, регистр тегов, регистр состояния, указатели команд и данных FPU, регистр управления FPU.

Конвейерная обработка инструкций 
В Intel 486 был усовершенствован механизм выполнения инструкций в несколько этапов. Конвейер процессоров серии Intel 486 состоял из 5 ступеней: выборка инструкции, декодирование инструкции, декодирование адресов операндов инструкции, выполнение команды, запись результата выполнения инструкции. Использование конвейера позволило во время выполнения одной инструкции производить подготовительные операции над другой инструкцией. Это в значительной степени позволило увеличить производительность процессора.

Кэш процессора 

Intel 486 имел расположенную на кристалле кэш-память объёмом 8 Кбайт, позднее — 16 Кбайт, работающую на частоте ядра. Наличие кэша позволило существенно увеличить скорость выполнения операций микропроцессором. Изначально кэш Intel 486 работал по принципу сквозной записи (), но позже, в рамках семейства Intel 486, были выпущены модели со внутренним кэшем, работающим по принципу обратной записи (). Процессор мог использовать и внешний кэш, скорость чтения-записи которого, однако, была заметно ниже, чем у внутреннего кэша. При этом внутренний кэш стали называть кэшем первого уровня (Level 1 Cache), а внешний кэш, расположенный на материнской плате, кэшем второго уровня (Level 2 Cache). Кэш имел 4-канальную наборно-ассоциативную архитектуру и работал на уровне физических адресов памяти.

Однако, в результате использования интегрированной кэш-памяти, существенно возросло количество транзисторов в процессоре и, как следствие, увеличилась площадь кристалла. Увеличение количества транзисторов привело к существенному увеличению рассеиваемой мощности. В среднем, рассеиваемая мощность увеличилась в 2 раза по сравнению с аналогичными моделями серии 80386. Во многом этому способствовала интеграция кэш-памяти, хотя были и другие факторы, но они не столь существенны. По этой причине процессоры Intel 486 старших моделей уже требовали принудительного (активного) охлаждения.

Математический сопроцессор 
В Intel 486 был использован встроенный математический сопроцессор ().

Это был первый микропроцессор семейства x86 со встроенным FPU. Встроенный FPU был программно совместим с микросхемой Intel 80387 — математическим сопроцессором, применявшимся в системах с процессором 80386. Благодаря использованию встроенного сопроцессора удешевлялась и ускорялась система за счёт уменьшения общего числа контактов и корпусов микросхем.

Изначально все выпускавшиеся микропроцессоры Intel 486 оснащались работающим сопроцессором, эти процессоры получили имя Intel486DX. Позже, в 1991 году, Intel решает выпустить процессоры с отключённым сопроцессором, и эти процессоры получили наименование Intel486SX. Системы построенные на этих процессорах могли оснащаться отдельным сопроцессором, например, Intel487SX или сопроцессором других производителей.

Построение вычислительной системы 

Первоначально системы на базе Intel 486 были оборудованы только 8- и/или 16-битными шинами ISA. Более поздние материнские платы совмещали в себе медленную шину ISA с высокоскоростной шиной VESA (или VLB — ), предназначавшуюся прежде всего для видеоплат и контроллеров жёсткого диска. Последние материнские платы для процессоров i486 были оборудованы шинами PCI и ISA, а иногда и VESA. Быстродействие шины ISA определялось множителями, а рабочая частота шин PCI и VLB была равна частоте шины процессора i486 (хотя некоторые материнские платы имели множители также и для них).

Позже материнские платы для i486 обрели поддержку технологии Plug-and-Play, которая использовалась в Windows 95 и позволяла компьютерам автоматически обнаруживать и настраивать периферийные устройства и устанавливать соответствующие драйверы.

Модели 

С момента появления первого процессора Intel 486DX было выпущено множество других моделей семейства 486 с суффиксами SX, SL, DX2, DX4, GX. Они различались функциональным предназначением и некоторыми технологическими параметрами (напряжение питания, тактовая частота, размер кэш-памяти, отсутствием или наличием сопроцессора и др.).

Процессоры 486DX2 имели коэффициент умножения 2 — то есть, например, при частоте системной шины 33 МГц рабочая частота самого процессора составляла 66 МГц. Позже появились процессоры Intel DX4 — однако коэффициент умножения у них был не 4, а 3. В результате введения множителей в широкий обиход впервые вошло такое понятие, как разгон () — повышение производительности процессора путём увеличения тактовой частоты шины или коэффициента умножения. Так, известно, что в России даже в открытую продажу поступали системы, в которых процессоры i486 работали на частотах до 160 МГц.

Конкурентные решения 
Ко времени выпуска 486 Intel лишилась прав собственности на товарные знаки x86 и подобные наименования использовало множество производителей. Основным лозунгом конкурентов Intel был «Практически то же, что и у Intel, только за меньшие деньги».

486-совместимые процессоры производились и такими компаниями, как IBM, Texas Instruments, AMD, Cyrix, UMC и Chips and Technologies. Некоторые из них были почти точными копиями как по производительности, так и по техническим характеристикам, другие же, наоборот, отличались от оригинала.

Уже после ухода с массового рынка 486-х процессоров производства Intel компания AMD выпустила процессоры 486DX4-120 и Am5x86-133.

В мае 2006 года Intel заявила, что производство чипов 80486 прекратится в конце сентября 2007 года. И хотя для прикладных программ на персональных компьютерах этот чип уже долгое время являлся устаревшим, Intel продолжала производить его для использования во встраиваемых системах.

Примечания

Литература 
 Документация, выпущенная Intel:
 Order No: 271329-002 «MILITARY Intel486 PROCESSOR FAMILY»
 Order No: 272755-001 «Embedded Ultra-Low Power Intel486 GX Processor»
 Order No: 272731-002 «Embedded Ultra-Low Power Intel486 SX Processor»
 Order No: 272731-001 «Embedded Ultra-Low Power Intel486 SX Processor»
 Order No: 271329-003 «MILITARY Intel486 PROCESSOR FAMILY»
 Order No: 241199-002 «Intel486 Family of Microprocessors. Low Power Version. Data Sheet»
 Order No: 273025-001 «EMBEDDED Intel486 PROCESSOR. HARDWARE REFERENCE MANUAL»
 Order No: 273021-001 «EMBEDDED Intel486 PROCESSOR FAMILY. DEVELOPER’S MANUAL»
 Order No: 272815-001 «Ultra-Low Power Intel486 SX PROCESSOR. EVALUATION BOARD MANUAL»
 Order No: 272771-002 «Embedded Write-Back Enhanced IntelDX4 Processor»
 Order No: 272771-001 «Embedded Write-Back Enhanced IntelDX4 Processor»
 Order No: 272770-002 «Embedded IntelDX2 Processor»
 Order No: 272770-001 «Embedded IntelDX2 Processor»
 Order No: 272769-002 «Embedded Intel486 SX Processor»
 Order No: 272769-001 «Embedded Intel486 SX Processor»
 Order No: 272755-002 «Embedded Ultra-Low Power Intel486 GX Processor»
 Order No: 240440-006 «Intel486DX MICROPROCESSOR»

Ссылки 
 История судебных тяжб между Intel и AMD
 Документация на процессор на сайте bitsavers.org
 Intel 80486 microprocessor family

X86
1989 
Микропроцессоры фирмы Intel