Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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

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 инструкции за такт в «типичных» программах [7], хотя он мог быть значительно быстрее в оптимизированном коде и в жестких циклах, поскольку многие инструкции могли выполняться за 2 такта. каждый. По сообщениям, модели с 6 МГц, 10 МГц и 12 МГц работали со скоростью 0,9 MIPS, 1,5 MIPS и 2,66 MIPS соответственно. [8]

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

Архитектура [ править ]

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

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

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

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 компьютеров редко поставлялись с оперативной памятью более одного мегабайта. [12] Кроме того, имелось снижение производительности при доступе к расширенной памяти из реального режима (в котором работала DOS, доминирующая операционная система ПК до середины 1990-х годов), как указано ниже.

Особенности [ править ]

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

Защищенный режим [ править ]

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

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

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

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

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

  • беззнаковое упакованное десятичное число ,
  • беззнаковый двоичный файл,
  • беззнаковая распакованная десятичная дробь,
  • подписанный двоичный файл,
  • числа с плавающей запятой (только с 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 диска , или в качестве эмуляции из расширенной памяти . [12] Сложность заключалась в несовместимости старыхв реальном режимеПрограммы DOS с защищенным режимом. Они просто не могли изначально работать в этом новом режиме без значительных изменений. В защищенном режиме управление памятью и обработка прерываний выполнялись иначе, чем в реальном режиме. Вдобавок программы DOS обычно имеют прямой доступ к данным и сегментам кода, которые им не принадлежат, поскольку реальный режим позволяет им работать без ограничений; Напротив, замысел конструкции защищенного режима состоял в том, чтобы предотвратить доступ программ к любым сегментам, кроме их собственных, если специальный доступ не был явно разрешен. Хотя можно было настроить среду защищенного режима, которая разрешала всем программам доступ ко всем сегментам (путем помещения всех дескрипторов сегментов в GDT и присвоения им одинакового уровня привилегий),это подрывает почти все преимущества защищенного режима, за исключением расширенного (24-битного) адресного пространства. Перед разработчиками ОС стоял выбор: либо начать с нуля и создать ОС, которая не запускала бы подавляющее большинство старых программ, либо предложить версию DOS, которая была медленной и некрасивой (т.е. viewpoint), но все равно будет запускать большинство старых программ. Защищенный режим также не давал достаточно значительного преимущества в производительности по сравнению с 8086-совместимым реальным режимом, чтобы оправдать поддержку его возможностей; на самом деле, за исключением переключения задач при многозадачности, это фактически приводило только к снижению производительности, поскольку замедляло выполнение многих инструкций из-за множества дополнительных проверок привилегий. В защищенном режиме регистры все еще были 16-битными,и программист по-прежнему был вынужден использовать карту памяти, состоящую из сегментов по 64 КБ, как и в реальном режиме.[13]

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

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

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

Компонент поддержки [ править ]

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

  • 82C284 тактовый генератор и драйвер
  • 82288 Контроллер шины
  • 82289 Автобусный арбитр

См. Также [ править ]

  • U80601 - Практически идентичная копия 80286, произведенная в 1989/90 году в Восточной Германии . В Советском Союзе клон 80286 получил обозначение КР1847ВМ286 ( русский язык : КР1847ВМ286 ). [23]
  • LOADALL - недокументированная инструкция 80286/80386, которую можно использовать для получения доступа ко всей доступной памяти в реальном режиме.
  • Окна / 286
  • iAPX , для имени iAPX

Ссылки [ править ]

  1. ^ «История ЦП - Музей ЦП - Жизненный цикл ЦП» . www.cpushack.com .
  2. ^ "Процесс литографии 1,5 мкм - WikiChip" . en.wikichip.org .
  3. ^ "Зал славы микропроцессоров" . Intel. Архивировано из оригинала 6 июля 2007 года . Проверено 11 августа 2007 года .
  4. ^ Справочник программиста iAPX 286 (PDF) . Intel. 1983. стр. 1-1.
  5. ^ Более простой родственник из линейки 8086 со встроенными периферийными устройствами, предназначенный для встраиваемых систем .
  6. ^ "Intel Museum - Зал славы микропроцессоров" . Intel.com. 14 мая 2009 года в архив с оригинала на 12 марта 2009 года . Проверено 20 июня 2009 года .
  7. ^ "Intel Architecure [sic] Программирование и информация" . Intel80386.com. 13 января 2004 . Проверено 28 апреля 2009 года .
  8. ^ "80286 Пакет микропроцессора, 1982" . Content.cdlib.org . Проверено 28 апреля 2009 года .
  9. ^ a b Фостер, Эдвард (26 августа 1985 г.). «Intel показывает новый чип 80286 - будущее DRI Concurrent DOS 286 все еще неясно после исправления процессора» . InfoWorld . InfoWorld Media Group . 7 (34): 21. ISSN 0199-6649 . 
  10. ^ Гросс, Нил; Кой, Питер (6 марта 1995 г.). «Технологический парадокс» . Блумберг . Проверено 19 марта 2020 года .
  11. ^ "Семейство микропроцессоров Intel 80286" . CPU-мир . Проверено 19 мая 2012 года .
  12. ^ a b c Бахадуре, Нилеш Б. (2010). «15 других 16-битных микропроцессоров 80186 и 80286» . Микропроцессоры: 8086/8088, 80186/80286, 80386/80486 и семейство Pentium . PHI Learning Pvt. Ltd., стр. 503–537. ISBN 978-8120339422.
  13. ^ Петцольд, Чарльз (1986). «Препятствия на пути к взрослой операционной системе» . Журнал ПК . 5 (11): 170–74.
  14. ^ a b Фостер, Эдвард (13 мая 1985 г.). «Super DOS ожидает нового 80286 - Concurrent DOS 286 - отложена до тех пор, пока Intel не обновит чип - предлагает мощь Xenix и совместимость с IBM PC» . InfoWorld . InfoWorld Media Group . 7 (19): 17–18. ISSN 0199-6649 . 
  15. ^ Приложение FlexOS для компьютеров на базе Intel iAPX 286 (PDF) . 1.3 (1-е изд.). Digital Research, Inc. ноябрь 1986 . Проверено 14 августа 2018 года .
  16. ^ «Параллельный DOS 68K 1.2 - Комплект разработчика для Motorola VME / 10 - Диск 2» . 6 августа 1986 г. [1986-04-08] . Проверено 13 сентября 2018 года .(NB. Этот пакет также включает некоторые файлы заголовков из Concurrent DOS 286 , включая STRUCT.H, явно упоминающий LOADALL для «эмуляции 8086».)
  17. Мелисса Кальво и Джим Форбс (10 февраля 1986 г.). InfoWorld (ред.). IBM использует операционную систему DRI . п. 12 . Проверено 6 сентября 2011 года .
  18. ^ Дьюар, Роберт Б.К .; Смосна, Мэтью (1990). Микропроцессоры: взгляд программиста . Нью-Йорк: Макгроу-Хилл. ISBN 0-07-016638-2.
  19. ^ http://www.tenox.net/docs/microsoft_xenix_30_286_press_release.pdf Архивировано 7 января 2014 г. на Wayback Machine .
  20. ^ http://textfiles.com/internet/FAQ/coherent.faq .
  21. ^ http://minix.net/minix/minix.html Архивировано 7 января 2014 г. на Wayback Machine .
  22. Чарльз Петцольд , Intel's 32-bit Wonder: The 80386 Microprocessor, PC Magazine , 25 ноября 1986 г., стр. 150–152.
  23. ^ «Советские микропроцессоры, микроконтроллеры, микросхемы FPU и их западные аналоги» . CPU-мир . Проверено 24 марта 2016 года .

Внешние ссылки [ править ]

  • Таблицы данных Intel
  • Справочное руководство программиста Intel 80286 и 80287 на bitsavers.org
  • Справочное руководство программиста Intel 80286, 1987 г. (txt) . Подсказка: используйте, например, кодировку иврита (IBM-862) .
  • Linux на 286 ноутбуках и ноутбуках
  • Изображения и описания Intel 80286 на cpu-collection.de
  • CPU-INFO: 80286, подробная история процессора
  • Обзор всех 286 совместимых чипов
  • Информация о процессоре Intel 80286, включая ошибки в микросхеме и недокументированное поведение
  • Справочное руководство по аппаратному обеспечению Intel 80286