Аппаратные средства персональных компьютеров. Самоучитель, стр. 11

По мере снижения стоимости интерфейсных микросхем и увеличения их сложности процессор 8088 уступил место в компьютерах своему предку.

Процессор 80186

Для применения в различных контроллерах корпорацией Intel на базе процессора 8086/8088 в 1982 г. были выпущены процессоры 80186/80188, у которых на одном кристалле находился не только центральный процессор, но и периферийные устройства. Так как предполагалось использовать эти микропроцессоры в качестве встроенных интеллектуальных устройств для самых различных промышленных систем, то интегрированные в него периферийные устройства имели интерфейсы, не совместимые со спецификацией IBM PC.

На кристалле процессора 80186/80188 удалось расположить контроллеры прерываний и прямого доступа к памяти, трехканальный таймер и генератор синхроимпульсов. Процессоры 80C186/80C188, изготовленные по более современной технологии, имели не только пониженную потребляемую мощность, но и систему управления энергопотреблением.

Присутствие на одном кристалле всех необходимых периферийных устройств позволило использовать эти микропроцессоры для управления самыми разнообразными устройствами. Например, модемы фирмы U.S. Robotics не в малой степени обязаны своей популярностью именно применением в них микропроцессоров 80186/80188. Это позволило не только удешевить конструкцию и повысить надежность работы сложного электронного устройства, но и очень быстро, за счет смены микропрограммы, выпускать на рынок новые типы модемов.

Процессор 80286

Второе поколение 16-битных процессоров в линейке x86 – это 80286, о котором объявили в феврале 1982 г. Для него впервые стало использоваться сокращенное обозначение – 286-й процессор (подобная практика использовалась потом и для процессоров 80386 и 80486, кстати, Pentium – это тот же 586).

Хотя процессор 80286 получился со многими недоработками и в большинстве случаев использовался как быстрый 8086, его появление обеспечило победу IBM PC совместимым компьютерам и операционной системе MS-DOS в конкурентной борьбе с другими фирмами.

Процессор 80286 (рис. 2.6) выпускался с тактовыми частотами 6, 10 и 12 МГц, что составляло скорость выполнения 0,9, 1,5 и 2,66 млн. операций в секунду. Количество транзисторов превысило 134 000 (использовалась технология 1,5 мкм).

Аппаратные средства персональных компьютеров. Самоучитель - i_030.png

Рис. 2.6. Процессор 80286

Основная задача, которую хотели решить инженеры корпорации Intel,  – это создание процессора для многопользовательских и многозадачных систем. Для этого в процессор была встроена четырехуровневая система защиты, механизм переключения задач и поддержка виртуальной памяти. Режим работы с такими возможностями был назван защищенным режимом виртуальной адресации (Protected Virtual Address Mode), сегодня для него используется термин – «защищенный режим» (Protected Mode). В этом режиме работают все многозадачные операционные системы, в том числе и Windows.

Суть этого режима вот в чем. Многопользовательский режим в однопроцессорных компьютерах реализуется на принципе выделения выполняемым задачам (программам) небольших квантов времени, в течение которых все разрешенные для данной задачи ресурсы процессора и внешних устройств принадлежат конкретной задаче. При переключении по сигналу таймера на другую задачу все текущие данные, относящиеся к первой задаче, сохраняются в специально выделенной памяти (обычно это стек), а процессор начинает выполнять инструкции другой программы. Когда приходит время выполнения первой задачи, сохраненные ранее ее текущие данные загружаются из стека, что создает видимость непрерывного выполнения задачи. Процессор продолжает выполнять прерванную задачу с того момента, когда она была отложена.

Чтобы прерванная задача могла без проблем продолжать свою работу, требуется защитить данные, которые она использует, от воздействия любых других задач. В первую очередь должны быть защищены блоки оперативной памяти, с которыми работает данная программа (отсюда и пошло название режима). Во-вторых, надо присвоить каждой задаче определенный уровень привилегий (возможность использовать те или иные ресурсы компьютера).

В защищенном режиме 24-разрядная шина адреса позволила программисту использовать 16 Мбайт памяти, а при включении механизма страничной адресации отображать до 1 Гбайт так называемой виртуальной памяти.

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

Если до появления чипа 80286 любая ошибка в конструкции какого-либо микропроцессора приводила к его провалу на рынке, то, начиная с этого процессора корпорации Intel, несуразицы в конструкции стали использоваться программистами и разработчиками. А самое удивительное, в последующих версиях процессоров корпорации Intel и их аналогов от других производителей такие просчеты закреплялись как стандарт de-facto. Только грубые (очевидные) ошибки исправлялись, и корпорация брала на себя обязательства по замене дефектных чипов.

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

Наиболее очевидная, причем грубая ошибка – это неправильная адресация памяти в реальном режиме. Но она оказалась настолько "удачной", что ее восторженно приняли программисты, которым уже не хватало ресурсов памяти стандартной архитектуры 8086. А вот защищенный режим адресации памяти в 286 процессоре остался, в большинстве случаев, не востребованным – слишком много оказалось технических проблем, а, точнее, недоработок, которые мешали использовать такую возможность.

В заключение следует обратить внимание, что два процессора из линейки х86 – 8088 и 80386SX, являются переходными моделями, т. к. были разработаны в целях удешевления персональных компьютеров, собранных на их основе. Оба микропроцессора были как бы шагом назад по сравнению с базовым аналогом. Сохраняя все программные возможности, они имели укороченную в два раза шину данных. Такое техническое решение позволяло удешевить производство персональных компьютеров – 8088 имел 8-разрядную шину данных, сохраняя 16-разрядную архитектуру, a 80386SX для совместимости с 80286, которой на самом деле не оказалось, получил 16-разрядную шину данных.

Так как выпуск 16-разрядных процессоров был пионерской разработкой, которая внесла в компьютерный мир много нового, то именно архитектуре этих процессоров стали подражать большинство разработчиков микросхем. Теперь можно сказать, что процессор 8086 стал родоначальником семейства процессоров х86, которое явилось эталоном для подражания.

К сожалению, новые идеи и конструкции всегда несут в себе ошибки и проблемы. Не стал исключением и 8086, который как бы заложил мину замедленного действия для своих потомков.

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

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

Если проанализировать дальнейшее развитие семейства х86, то основные направления совершенствования, в большинстве случаев, касались преодоления проблем архитектуры 8086. Сегодня можно констатировать, что современные Pentium обладают самой сложной, не поддающейся логическому объяснению системой команд. Правда, в процессоре Pentium 4 наметились новые подходы решения накопившихся проблем.