Intel 80286 - Intel 80286

Intel 80286
KL Intel i286.jpg
Процессор Intel A80286-8 с серым керамическим теплораспределителем
Общая информация
Запущен 1982 г.
Снято с производства 1991 г.
Общий производитель (и)
Представление
Максимум. Тактовая частота процессора От 5 МГц до 25 МГц
Скорость FSB От 5 МГц до 25 МГц
Ширина данных 16 бит
Ширина адреса 24 бит
Архитектура и классификация
Мин. размер элемента 1,5 мкм
Набор инструкций x86-16MMU )
Физические характеристики
Транзисторы
Сопроцессор Intel 80287
Пакет (ы)
Розетки)
История
Предшественник 8086 , 8088 (в то время как 80186 был современником)
Преемник Intel 80386

Intel 80286 (также продается как iAPX 286 и часто называется Intel 286 ) представляет собой 16-битовый микропроцессор , который был введен 1 февраля 1982 г. Это был первый 8086 на основе процессора с отдельными, не- мультиплексируются адреса и данных шины и также первый с управлением памятью и широкими возможностями защиты. 80286 использовал приблизительно 134 000 транзисторов в своем первоначальном воплощении nMOS ( HMOS ) и, как и современный 80186 , мог правильно выполнять большую часть программного обеспечения, написанного для более ранних процессоров Intel 8086 и 8088 .

80286 использовался в IBM PC / AT , представленном в 1984 году, а затем широко использовался в большинстве PC / AT-совместимых компьютеров до начала 1990-х годов.

История и производительность

AMD 80286 (версия 16 МГц)

Первые чипы Intel 80286 были рассчитаны на максимальную тактовую частоту 5, 6 или 8  МГц, а в более поздних версиях - 12,5 МГц. Позднее AMD и Harris произвели детали с частотой 16 МГц, 20 МГц и 25 МГц соответственно. Intersil и Fujitsu также разработали полностью статические версии CMOS оригинальной реализации nMOS Intel с истощающей нагрузкой , в основном предназначенные для устройств с батарейным питанием.

В среднем 80286, как сообщается, имел скорость около 0,21 инструкции за такт в «типичных» программах, хотя он мог быть значительно быстрее при оптимизированном коде и в жестких циклах, поскольку многие инструкции могли выполняться за 2 такта каждая. По сообщениям, модели с 6 МГц, 10 МГц и 12 МГц работали со скоростью 0,9 MIPS, 1,5 и 2,66 MIPS соответственно.

Более поздний уровень E -step процессора 80286 был свободен от нескольких существенных ошибок, которые вызвали проблемы для программистов и разработчиков операционных систем в более ранних CPU B-step и C-step (распространенных в клонах AT и AT). Эта шаговая часть E-2 могла быть доступна в конце 1986 года.

Архитектура

Упрощенная микроархитектура 80286
Intel 80286 штамп

Intel не ожидала, что персональные компьютеры будут использовать 286. ЦП был разработан для многопользовательских систем с многозадачными приложениями, включая средства связи (например, автоматизированные АТС ) и управление процессами в реальном времени . Он имел 134 000 транзисторов и состоял из четырех независимых блоков: блока адреса, блока шины, блока команд и блока исполнения, организованных в слабо связанный (буферизованный) конвейер , как и в 8086. Он был произведен в корпусе с 68 выводами. , включая корпуса PLCC ( пластиковая несущая пластина для микросхем ), LCC ( бессодержательная микросхема ) и PGA ( матричный массив выводов ).

Прирост производительности 80286 по сравнению с 8086 (или 8088) может составлять более 100% за такт во многих программах (т. Е. Удвоение производительности при той же тактовой частоте). Это был большой рост, полностью сопоставимый с увеличением скорости семь лет спустя, когда были представлены i486 (1989) или оригинальный Pentium (1993). Частично это было из-за отсутствия мультиплексирования адресов и шин данных, но в основном из-за того, что вычисление адресов (например, базовый + индекс ) было менее затратным. Они выполнялись специальным блоком в 80286, в то время как более старый 8086 должен был выполнять эффективное вычисление адресов с использованием своего общего ALU , во многих случаях потребляя несколько дополнительных тактовых циклов. Кроме того, 80286 был более эффективен в предварительной выборке инструкций, буферизации, выполнении переходов и сложных числовых операциях с микрокодированием, таких как MUL / DIV, чем его предшественник.

80286 включал, в дополнение ко всем инструкциям 8086, все новые инструкции 80186: ENTER, LEAVE, BOUND, INS, OUTS, PUSHA, POPA, PUSH немедленный, IMUL немедленный и немедленный сдвиги и вращение. В 80286 также добавлены новые инструкции для защищенного режима: ARPL, CLTS, LAR, LGDT, LIDT, LLDT, LMSW, LSL, LTR, SGDT, SIDT, SLDT, SMSW, STR, VERR и VERW. Некоторые инструкции для защищенного режима могут (или должны) использоваться в реальном режиме для настройки и переключения в защищенный режим, а некоторые (такие как SMSW и LMSW) полезны для самого реального режима.

Intel 80286 имел 24-разрядную шину адреса и был способен адресовать до 16  Мбайт в оперативной памяти , по сравнению с 1 МБ адресуемой своего предшественника. Однако стоимость памяти и первоначальная редкость программного обеспечения, использующего память более 1 МБ, означали, что 80286 компьютеров редко поставлялись с оперативной памятью более одного мегабайта. Кроме того, имелось снижение производительности при доступе к расширенной памяти из реального режима (в котором работала DOS, доминирующая операционная система ПК до середины 1990-х годов), как указано ниже.

Функции

Siemens 80286 (версия 10 МГц)
IBM 80286 (версия 8 МГц)

Защищенный режим

286 был первым из семейства процессоров x86, который поддерживал защищенный режим виртуального адреса , обычно называемый « защищенным режимом ». Кроме того, это был первый коммерчески доступный микропроцессор с возможностью встроенного MMU (системы, использующие современные Motorola 68010 и NS320xx, могли быть оснащены дополнительным контроллером MMU). Это позволило бы IBM-совместимым устройствам впервые иметь передовые многозадачные ОС и конкурировать на рынке серверов / рабочих станций, где доминирует Unix .

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

Еще одна важная особенность 80286 - предотвращение несанкционированного доступа. Это достигается за счет:

  • Формирование разных сегментов для данных, кода и стека и предотвращение их перекрытия.
  • Назначение уровней привилегий каждому сегменту. Сегменты с более низкими уровнями привилегий не могут получить доступ к сегментам с более высокими уровнями привилегий.

В 80286 (и в его сопроцессоре Intel 80287 ) арифметические операции могут выполняться над следующими различными типами чисел:

По своей конструкции 286 не может вернуться из защищенного режима в базовый 8086-совместимый режим реального адресареальный режим ») без аппаратного сброса. В PC / AT, представленном в 1984 году, IBM добавила внешнюю схему, а также специализированный код в ROM BIOS и периферийный микроконтроллер 8042, чтобы программное обеспечение могло вызвать сброс, позволяя повторный вход в реальном режиме, сохраняя при этом активную память и возвращая управление контроллеру. программа, инициировавшая сброс. (BIOS обязательно задействован, потому что он получает управление напрямую при перезагрузке ЦП.) Хотя он работал правильно, этот метод привел к огромному снижению производительности.

Теоретически приложения реального режима могут быть напрямую выполнены в 16-битном защищенном режиме, если будут соблюдаться определенные правила (недавно предложенные с введением 80286); однако, поскольку многие программы DOS не соответствовали этим правилам, защищенный режим широко не использовался до появления его преемника, 32-разрядного процессора Intel 80386 , который был разработан, чтобы легко переключаться между режимами и обеспечивать имитацию реальный режим в защищенном режиме. Когда Intel разработала 286, он не был предназначен для многозадачности приложений реального режима; реальный режим был задуман как простой способ для загрузчика начальной загрузки подготовить систему и затем переключиться в защищенный режим; По сути, в защищенном режиме 80286 был разработан как новый процессор, имеющий много общего со своими предшественниками, в то время как реальный режим на 80286 был предложен для систем меньшего размера, которые могли бы извлечь выгоду из более продвинутой версии ядра ЦП 80186 с преимуществами такие как более высокие тактовые частоты, более быстрое выполнение инструкций (измеряется в тактовых циклах) и немультиплексированные шины, но не 24-битное (16 МБ) пространство памяти.

Для поддержки защищенного режима были добавлены новые инструкции: ARPL, VERR, VERW, LAR, LSL, SMSW, SGDT, SIDT, SLDT, STR, LMSW, LGDT, LIDT, LLDT, LTR, CLTS. Также есть новые исключения (внутренние прерывания): недопустимый код операции, сопроцессор недоступен, двойная ошибка, переполнение сегмента сопроцессора, ошибка стека, переполнение сегмента / общая ошибка защиты и другие только для защищенного режима.

Поддержка ОС

Защищенный режим 80286 обычно не использовался в приложениях для ПК в течение многих лет после его выпуска, отчасти из-за высокой стоимости добавления расширенной памяти к ПК, но также из-за необходимости программного обеспечения для поддержки большой базы пользователей 8086 шт. Например, в 1986 году единственной программой, которая использовала его, была VDISK, драйвер RAM-диска, входящий в состав PC DOS 3.0 и 3.1. DOS , может использовать дополнительную оперативную память доступной в защищенном режиме ( расширенная память ) либо через BIOS вызов (INT 15h, AH = 87h), в качестве RAM диска , или в качестве эмуляции из расширенной памяти . Трудность заключалась в несовместимости старых программ DOS реального режима с защищенным режимом. Они просто не могли изначально работать в этом новом режиме без значительных изменений. В защищенном режиме управление памятью и обработка прерываний выполнялись иначе, чем в реальном режиме. Вдобавок программы DOS обычно имеют прямой доступ к данным и сегментам кода, которые им не принадлежат, поскольку реальный режим позволяет им работать без ограничений; Напротив, замысел конструкции защищенного режима состоял в том, чтобы предотвратить доступ программ к любым сегментам, кроме их собственных, если специальный доступ не был явно разрешен. Хотя можно было создать среду защищенного режима, которая позволяла всем программам получать доступ ко всем сегментам (помещая все дескрипторы сегментов в GDT и назначая им один и тот же уровень привилегий), это подрывало почти все преимущества защищенного режима, кроме расширенное (24-битное) адресное пространство. Перед разработчиками ОС стоял выбор: либо начать с нуля и создать ОС, которая не будет запускать подавляющее большинство старых программ, либо придумать версию DOS, которая будет медленной и некрасивой (т. Е. Некрасивой из-за внутренней технической viewpoint), но все равно будет запускать большинство старых программ. Защищенный режим также не давал достаточно значительного преимущества в производительности по сравнению с 8086-совместимым реальным режимом, чтобы оправдать поддержку его возможностей; на самом деле, за исключением переключения задач при многозадачности, это фактически приводило только к снижению производительности, поскольку замедляло выполнение многих инструкций из-за множества дополнительных проверок привилегий. В защищенном режиме регистры по-прежнему были 16-битными, и программист был вынужден использовать карту памяти, состоящую из сегментов размером 64 КБ, как и в реальном режиме.

В январе 1985 года Digital Research представила операционную систему Concurrent DOS 286 1.0, разработанную в сотрудничестве с Intel . Продукт будет работать строго как операционная система 80286 с собственным режимом (то есть в защищенном режиме), позволяя пользователям в полной мере использовать защищенный режим для выполнения многопользовательских многозадачных операций при запуске эмуляции 8086. Это сработало на этапе прототипа чипа B-1, но Digital Research в мае обнаружила проблемы с эмуляцией на этапе C-1 производственного уровня, которые не позволяли Concurrent DOS 286 запускать программное обеспечение 8086 в защищенном режиме. Выпуск Concurrent DOS 286 был отложен до тех пор, пока Intel не разработает новую версию чипа. В августе, после обширного тестирования образцов 80286 шага E-1, Digital Research признала, что Intel исправила все задокументированные 286 ошибок, но сообщила, что еще остались недокументированные проблемы с производительностью чипа с предварительной версией Concurrent DOS 286, работающей на E- 1 шаг. Intel заявила, что подход Digital Research к эмуляции программного обеспечения 8086 в защищенном режиме отличается от исходных спецификаций. Тем не менее, на этапе E-2 они внесли незначительные изменения в микрокод , которые позволили Digital Research намного быстрее запускать режим эмуляции. Названный IBM 4680 OS , IBM изначально выбрал DR Параллельная DOS 286 в качестве основы их IBM 4680 компьютера для продуктов IBM System Plant и пункт-продажи терминалов в 1986. Digital Research , FlexOS 286 версии 1.3, дифференцирование Параллельная DOS 286, было была разработана в 1986 году, представлена ​​в январе 1987 года и позже принята IBM для своей ОС IBM 4690 , но на нее повлияли те же ограничения.

Эти проблемы привели к тому, что Билл Гейтс называл 80286 «мертвым чипом», поскольку было ясно, что новая среда Microsoft Windows не сможет запускать несколько приложений MS-DOS с 286. Возможно, он был ответственен за раскол между Microsoft и IBM, поскольку IBM настаивала на том, чтобы OS / 2 , первоначально совместное предприятие IBM и Microsoft, работала на 286 (и в текстовом режиме).

Другими операционными системами, которые использовали защищенный режим 286, были Microsoft Xenix (около 1984 г.), Coherent и Minix . Им в меньшей степени препятствовали ограничения защищенного режима 80286, поскольку они не были нацелены на запуск приложений MS-DOS или других программ реального режима. В своем преемнике 80386 Intel улучшила защищенный режим для увеличения объема памяти, а также добавила отдельный виртуальный режим 8086 , режим в защищенном режиме с гораздо лучшей совместимостью с MS-DOS, чтобы удовлетворить различные потребности рынка.

Компоненты поддержки

Это список компонентов интерфейса шины, который подключается к микропроцессору Intel 80286.

  • 82258 Усовершенствованный контроллер прямого доступа к памяти - скорость передачи 8 МБ в секунду, поддерживает до 32 подканалов, маскирует и сравнивает, проверяет, переводит и выполняет операции сборки / разборки, которые обрабатываются одновременно. Он также поддерживает диапазон адресации 16 МБ. Это было доступно за 170 долларов США в количестве 100 штук.
  • 82C284 тактовый генератор и драйвер
  • 82288 Контроллер шины
  • 82289 Автобусный арбитр

Смотрите также

использованная литература

внешние ссылки