80286 процессор

3г 3 ВВЕДЕНИЕ 3L- Успехи новой технологии привели к широкому распространению персональных компьютеров, позволяющих решать задачи, требующие весьма больших вычислений. Типичным и наиболее распространенным представителем таких мощных персоналок является компьютер PCAT производства фирмы IBM. Этот компьютер разработан на осно- ве процессора 80286 фирмы INTEL, представляющего сейчас один из наиболее мощных шестнадцатиразрядных микропроцессоров, хотя за
последнее время появились более производительные процессоры, и 80286 был снят с производства в ведущих странах. Но стоит оста- новиться на рассмотрении этого процессора и построенных на его основе системах, т.к. на их примере нагляднее всего получить представление о новом классе машин – серии AT. В данной работе рассмотрены основные данные и сравнительные характеристики на примере самой ранней моделе компьютера- на от- дельных логических ИМС и некоторых
БИС, без применения микросхем сверхвысокой степени интеграции и специальных ПЛИС и ПЛМ, на ос- нове которых создаются компьютеры сегодня. Рассматривается цент- ральный процессор с самой низкой тактовой частотой для 80286 чи- пов- 6 Мгц 2 – 3г 3 ФУНКЦИОНИРОВАНИЕ МИКРОКОМПЬЮТЕРОВ 3 С ШИННОЙ ОРГАНИЗАЦИЕЙ 3L- Шины микрокомпьютера образует группа линий передачи сигна- лов с адресной
информацией, данных, а также управляющих сигна- лов. Фактически ее можно разделить на три части адресную шину, шину данных и шину управляющих сигналов. Уровни этих сигналов в данный момент времени определяют состояние системы в этот момент. На рис. 1 изображены синхрогенератор 82284, микропроцессор 80286 и шинный контроллер 82288. Кроме того, показаны три шины адреса, данных и управляющих сигналов. Синхрогенератор генерирует тактовый сигнал CLK для синхро- низации внутреннего функционирования процессора и других микрос- хем. Сигнал RESET производит сброс процессора в начальное состо- яние. Это состояние показано на рисунке упрощенно. Сигнал -READY также формируется с помощью синхрогенератора. Он предназначен для удлинения циклов при работе с медленными периферийными уст- ройствами.
На адресную шину, состоящую из 24 линий, микропроцессор выставляет адрес байта или слова, который будет пересылаться по шине данных в процессор или из него. Кроме того, шина адреса ис- пользуется микропроцессором для указания адресов периферийных портов, с которыми производится обмен данными. Шина данных состоит из 16 линий. по которым возможна пере- дача как отдельных байтов. так и двухбайтовых слов. При пересыл- ке байтов возможна передача и по старшим 8
линиям, и по младшим. Шина данных двунаправленна, так как передача байтов и слов может производится как в микропроцессор, так и из него. Шина управления формируется сигналами, поступающими непос- редственно от микропроцессора, сигналами от шинного контроллера, а также сигналами, идущими к микропроцессору от других микросхем и периферийных адаптеров. Микропроцессор использует шинный контроллер для формирова- ния управляющих сигналов, определяющих перенос данных по шине.
Он выставляет три сигнала -SO, -SI, M-IO, которые определяют тип цикла шины подтверждение прерывания, чтение порта вводавы- вода, останов, чтение памяти, запись в память. На основании значений этих сигналов шинный контроллер формирует управляющие сигналы, контролирующие динамику данного типа шины. Для того, чтобы понять динамику работы, разберем, каким об- разом осуществляется процессором чтение слов из оперативной па- мяти. Это происходит в течение 4 тактов CLK, или 2 состояний процессора т.е. каждое состояние процессора длится 2 такта синхросигнала CLK. Во время первого состояния, обозначаемого, как Т 4s 0, процессор выставляет на адресную шину значение адреса, по которому будет читаться слово. Кроме того, он формирует на шине совместно с шинным контроллером сооответствующие значения управляющих сигналов. Эти сигналы и адрес обрабатываются схемой управления памятью, в результате чего, начиная с
середины второ- го состояния процессора Т 4c 0 т.е. в начале четвертого такта CLK, на шине данных появляется значение содержимого соответствующего слова из оперативной памяти. И наконец, процессор считывает зна- чение этого слова с шины данных. На этом перенос копирование значения слова из памяти в процессор заканчивается 3 – Таким образом, если частота кварцевого генератора, опреде- ляющая частоту
CLK, равна 20 МГц, то максимальная пропускная способность шины данных равна 204 миллионов слов в секунду, или 10 Всек. Реальная пропускная способность существенно ниже. 3г 3 ОРГАНИЗАЦИЯ СИСТЕМЫ ШИН L,X,S и M 3 В КОМПЬЮТЕРЕ PCAT 3L- На самом деле, в реальном компьютере имеется не одна, а несколько шин рис. 2. Основных шин всего три, а обозначаются они как
L- шина, S- шина, X- шина. Нами ране рассматривалась L- шина. Можно ввести понятие удаленности шины от процессора, счи- тая, что чем больше буферов отделяют шину, тем она более удалена от процессора. Основной шиной, связывающей компьютер в единое целое, явля- ется S- шина. Именно она выведена на 8 специальных разъемов- слотов. Эти слоты хорошо видны на системной плате компьютера.
В них стоят платы периферийных адаптеров. Линии адреса, идущие от микропроцессора, образуют так назы- ваемую L- шину. Для передачи этого адреса на S- шину имеются специальные буферные регистры- защелки. Эти регистры- защелки не только передают адрес с L- шины на S- шину, но так же разъединя- ют их в случае необходимости. Такая необходимость возникает, например, когда осуществляется прямой доступ к памяти. В ютом случае на S- шину выставляют контроллер прямого доступа 8237А и так называемые страничные регистры. Они подключены к X- шине, которая так же через буферные регистры соединена с системной S- шиной. Таким образом, наличие трех шин позволяет выставлять ад- реса на системную шину различным микросхемам. Все микросхемы на системной плате, кроме процессора и соп- роцессора, подключены к X- шине, в которой имеется адресная часть XА- шина, линия данных
XD- шина и управляющие сигналы XCTRL- шина. Поэтому они отделены от процессора двумя буфера- ми между L- и S- шинами и между S- и X- шинами. Кроме этих трех шин в компьютере имеется M- шина, предназ- наченная для отделения системной S- шины от оперативной памяти. 3г 3 РЕГИСТРЫ ПРОЦЕССОРА 80286 3L- Набор регистров процессора 80286 представляет собой строгое расширение набора регистров 8086, который
имел 14 регистров. В процессоре 80286 появились дополнительно еще 5 новых регистров, в результате чего их общее число увеличилось до 19. Далее рассматриваются так называемые видимые регистры, содержимое которых можно либо прочитать, либо изменить прорам- мным способом. Отметим, что в процессоре имеются невидимые ре- гистры, хранящие различную информацию для работы процессора и ускоряющие его работу. Регистры представлены на рисунке неви- димые изображены одинарной линией 4
– гT AX AH AH BX BH BL CX CH CL DX DH DL L- г SP BP SI T T DI Права доступа кБазовый адресРазмер сегмента L- сегменту CS сегмента CS CS г CS Права доступа кБазовый адресРазмер сегмента сегменту DS сегмента DS DS DS Права доступа кБазовый адресРазмер сегмента SS сегменту SS сегмента SS SS ES Права доступа кБазовый адресРазмер сегмента L- сегменту ES сегмента ES ES г L IP L- г F L- г MSW L- гT Базовый адрес таблицы GDTR L- гT Базовый адрес таблицы IDTR L- T T г права базовый адрес сегмента с размер сегм. LDTR локальной дескрипторной с локальной L- доступа таблицей таблицей L T T г права базовый адрес сегмента размер сегм. TR состояния текущей с состоянием
L- доступа задачи задачи L 5 – Регистры можно объединить в группы по схожести выполняемых ими функций. В первую группу, называемую группой регистров обще- го назначения, входят регистры AX, BX, CX, DX. Они предназначены в основном для хранения данных- шестнадцатибитных слов. Только регистры BX и DX могут дополнительно использоваться как адрес- ные регистр BX- как адрес смещения байта или слова в оператив- ной памяти, регистр
DX- как адрес порта вводавывода. При обра- ботке данных каждый из этих регистров имеет свои особенности. Например, регистр AX всегда используется как один из операндов в команде умножения, регистр CX используется как счетчик командой LOOP организации цикла, DX как расширение регистра AX в командах умножения и деления. Эти регистры можно рассматривать как состо- ящие из двух однобайтовых регистров каждый
AX состоит из AH и AL, BX- из BH и BL и т.д. Следующую группу образуют регистры SP, BP, SI, DI. Эта группа называется группой адресных и индексных регистров. Из названия видно, что эти регистры могут использоваться в качестве адресных. Кроме того, их можно использовать в качестве операндов в инструкциях обработки данных. Третья группа регистров CS, DS, SS, ES образует группу сег- ментных регистров.
В процессоре 80286 доступ к данным и коду программы осуществляется через окна размером максимум 64К каж- дое. Есть окно с программой, его начало определяется регистром CS есть окно с данными, начало которого определяется регистром DS. Начало окна со стеком определяется регистром SS, а дополни- тельного окна с данными- регистром ES. В процессоре 80286 появилась возможность размещать таблицу векторов прерываний в произвольном месте оперативной памяти, а не обязательно в самом начале, как в процессоре 8086. Для этого имеется специальный регистр IDTR, по структуре аналогичный спе- циальному сорокабитному регистру GDTR определяющий положение и размер глобальной дескрипторной таблицы, для определения же ло- кальной дескрипторной таблицы имеется шестнадцатибитный регистр LDTR. Он определяет начало и размер таблицы векторов прерыва- ний.
Имеются так же специальные команды его чтения и записи. Регистр IP служит для хранения адреса смещения следующей исполняемой команды, а регистр F- для хранения флагов. В процессоре 80286 появился новый регистр MSW, называемый словом состояния, или регистром состояния. Его значение прежде всего в том, что, загружая этот регистр состояния специальным значением с битом
PE1, мы тем самым переключаем режим работы с обычного на защищеннный. И наконец, последний девятнадцатый регистр TR служит для организации многозадачной работы процессора в защищенном режиме. В обычном режиме он просто недоступен. Этот регистр служит се- лектором сегмента состояния задачи. Существуют выполняемые толь- ко в защищеннном режиме команды чтения этого регистра
TR и запи- си в него. Таким образом, а процессоре 80286 при сравнении его с 8086 появилось пять новых видимых регистров и шесть невидимых , четыре из которых связаны с регистрами CS, DS, SS, ES. Все новые регистры служат для управления доступом к памяти и организации многозадачной работы процессора 6 – 3г 3 Память 3L- Системная плата предусматривает подключение двух банков па- мяти, каждый из которых содержит 128K 18-разрядных слов при этом общий объем памяти составляет 512 кбайт
с контролем по чет- ности. 3г 3 Микропроцессор 3L- Микропроцессор INTEL 80286 предусматривает 24-разрядную ад- ресацию, 16-разрядный интерфейс памяти , расширенный набор ко- манд, функции ПДП и прерываний , аппаратное умножение и деление чисел с плавающей запятой , обединенное управление памятью , 4-уровневую защиту памяти , виртуальное адресное пространство на 1 гигабайт 1 073 741 824 байта для каждой задачи и два режима работы режим реальной адресации, совместимый с микропроцессо- ром 8086, и режим защищенной виртуальной адресации. 2 2 Режим реальной адресации 2L В режиме реальной адресации физическая память микропроцес- сора представляет собой непрерывный массив объемом до одного ме- гобайта. Микропроцессор обращается к памяти , генерируя 20-раз- рядные физические адреса. 20-разрядный адрес сегмента памяти состоит из двух частей старшей 16-разрядной переменной части
и младшей 4-разрядной час- ти, которая всегда равна нулю. таким образом , адреса сегментов всегда начинаются с числа, кратного 16. В режиме реальной адресации каждый сегмент памяти имеет размер 64 Кбайта и может быть считан, записан или изменен. если операнды данных или команд попытаются выполнить циклический возврат к концу сегмента , может произойти прерывание или воз- никнуть исключительная ситуация например , если младший байт слова смещен на FFFF, а старший байт равен 0000. если в режиме реальной
адресации информация, содержащаяся в сегменте, не ис- пользует все 64 кбайт, неиспользуемое пространство может быть предоставлено другому сегменту в целях экономии физической памя- ти. 2 2 Режим защиты 2L Режим защиты предусматривает расширенное адресное прост- ранство физической и виртуальной памяти , механизмы защиты памя- ти , новые операции по поддержке операционных систем и виртуаль- ной памяти. Режим защиты обеспечивает виртуальное адресное пространство на 1 гигабайт для каждой задачи
в физическом адресном пространс- тве на 16 Мегабайт. виртуальное пространство может быть больше физического , т.к. любое использование адреса , который не расп- ределен в физической памяти , вызывает возникновение исключи 7 – тельной ситуации, требующей парезапуска. Как и режим реальной адресации, режим защиты использует 32-разрядные указатели, состоящие из 16-разрядного искателя и компонентов смещения. искатель, однако , определяет индекс в ре- зидентной таблице памяти, а не старшие 16 разрядов адреса реаль- ной памяти. 24-разрядный базовый адрес желаемого сегмента памяти получают из таблиц памяти. для получения физического адреса к базовому адресу сегмента добавляется 16-разрядное смещение. мик- ропроцессор автоматически обращается к таблицам , когда в ре- гистр сегмента загружается искатель. все команды, выполняющие загрузку регистра, обращаются к таблицам памяти без дополнитель- ной программной поддержки. таблицы памяти содержат 8-байтовые
значения , называемые описателями. 3г 3 Производительность системы 3L- Микропроцессор 80286 работает с частотой 6 Мгц, в результа- те чего период синхроимпульсов составляет 167 Нс. Цикл шины требует 3 периода синхроимпульсов включая один цикл ожидания таким образом достигается 500-наносекундный 16-разрядный цикл работы микропроцессора. операции передачи дан- ных по 8-разрядной шине на 8-разрядные устройства занимают 6 пе- риодов синхроимпульсов включая 4 цикла ожидания, в результате чего достигается 1000-наносекундный
цикл работы микропроцессора. операции передачи данных по 16-разрядной шине на 8-разрядные устройства занимают 12 периодов синхроимпульсов включая 10 циклов ожидания ввода-вывода , в результате чего достигается 2000-наносекундный цикл работы микропроцессора 8 – 3г 3 Системные прерывания 3L- Микропроцессор немаскируемых прерываний НМП 80286 и две микросхемы контроллера прерываний 8259A обеспечивают 16 уровней системных прерываний. ниже эти уровни приводятся в порядке уменьшения приоритета.
Замечание как все прерывания, так и любое из них в отдель- ности, могут маскироваться включая НМП микропроцес- сора. гT Уровень Функция Микропроцессор Контроль четности или каналов вво- НМП да-вывода L- г Контроллеры прерываний TT N Уровень Функция IRQ 0 выход 0 таймера 1 IRQ 1 клавиатура выходной буфер полон IRQ 2 прерывание от CTRL 2 IRQ 8 часы реального времени IRQ 9 переадресовка программы к INT 0AH IRQ 2 IRQ 10 резерв IRQ 11 резерв 2 IRQ 12 резерв IRQ 13 сопроцессор IRQ 14 контроллер жесткого диска IRQ 15 резерв IRQ 3 последовательный порт 2 IRQ 4 последовательный порт 1 1 IRQ 5 параллельный порт 2 IRQ 6 контроллер накопителя на
ГМД IRQ 7 параллельный порт 1 L 9 – 3г 3 Описание сигналов канала ввода-вывода 3L- Ниже приводится описание сигналов канала ввода-вывода сис- темной платы. все сигнальные линии ТТЛ- совместимы. адаптеры ввода-вывода должны рассчитываться максимально на две маломощных нагрузки ТТЛШ на одну линию. 2 2 Сигналы SA0 – SA19 ввод-вывод 2L Адресные разряды 0 – 19 используются для адресации к памяти и устройствам ввода – вывода внутри системы.
эти 20 адресных ли- ний, вместе с линиями LA17 – LA23 , обеспечивают доступ к 16 Мб памяти. SA0 – SA19 выводятся в системную шину, когда BALE име- ет высокий уровень , и защелкивается по заднему фронту BALE. эти сигналы генерируются микропроцессором или контроллером пдп. ими могут также управлять другие микропроцессоры или контроллеры ПДП, находящиеся на канале ввода-вывода.
2 2 Сигналы LA17 – LA23 ввод-вывод 2L Эти сигналы незащелкнутые используются для адресации к памяти и устройствам ввода-вывода внутри системы, они обеспечи- вают доступ к 16 Мб памяти. Эти сигналы истинны, когда BALE имеет высокий уровень. LA17 – LA23 не защелкиваются во время циклов микропроцессора и поэтому не сохраняют истинность в тече- ние всего цикла. Целью этих адресных линий является генерация сигналов выбора памяти для циклов памяти
с одним состоянием ожи- дания. эти сигналы выбора должны защелкиваться адаптерами ввода – вывода по заднему фронту BALE. Этими сигналами могут также управлять другие микропроцессоры или контроллеры ПДП , находящи- еся на канале ввода-вывода. 2 2 CLKO 2L Это сигнал синхронизации системы с частотой 6 Мгц, он расс- читан на цикл микропроцессора длительностью 167 Нс. Рабочий цикл составляет 50 этого сигнала. Сигнал должен использоваться толь- ко для целей синхронизации. он не предназначен для тех случаев, когда требуется постоянная частота. 2 2 RESET DRVO 2L RESET DRIVE используется для очистки или инициализации логических схем системы при включении питания или при падении напряжения на линии. этот сигнал активен при высоком уровне 10 – 2 2 SD0 – SD15 ввод-вывод 2L Эти сигналы обеспечивают установку разрядов 0 – 15 для мик- ропроцессора, памяти и устройств ввода-вывода.
D0 является млад- шим разрядом , а D15 – старшим. Все 8-разрядные устройства на канале ввода-вывода должны использовать для связи с микропроцес- сором разряды D0 – D7. 16-разрядные устройства используют разря- ды D0 – D15. для поддержки 8-разрядных устройств данные с линий D8 – D15 будут выводиться на линии D0 – D7 во время циклов 8-разрядных передач на эти устройства при
передаче данных из 16-разрядного микропроцессора на 8-разрядное устройство эти дан- ные преобразуются в 8-разрядные. 2 2 BALEO с буферизацией 2L Сигнал BUS ADDRESS LATCH ENABLE генерируется контроллером шины 82288 и используется на системной плате для защелкивания истинных адресов и сигналов выбора памяти, поступающих из мик- ропроцессора. Канал ввода – вывода рассматривает его как индика- тор истинного адреса микропроцессора или пдп когда
используется AEN. Адреса микропроцессора SA0 – SA19 защелкиваются по зад- нему фронту BALE. Во время циклов ПДП на BALE устанавливает- ся высокий уровень. 2 2 -IO CH CK I 2L Сигнал -IO CHANNEL CHECK обеспечивает системную плату информацией об ошибках четности в памяти или устройствах на ка- нале ввода – вывода. Когда сигнал активен, он индицирует неуст- ранимую системную ошибку.
2 2 IO CH RDY I 2L Сигнал IO CHANNEL READY устанавливается памятью или уст- ройством ввода-вывода на низкий уровень нет готовности, чтобы удлинить циклы ввода-вывода или памяти. Любое устройство с низ- ким быстродействием, использующее эту линию, должно установить на ней низкий уровень, как только обнаружит свой истинный адрес и команду чтения или записи. Машинные циклы продлеваются на це- лое число периодов синхронизации 167 Нс. Этот сигнал должен сохранять низкий уровень не менее 2,5 Мкс. 2 2 IRQ3 – IRQ7, IRQ9 – IRQ12 и IRQ14 – IRQ15 2L Сигналы INTERRUPT REQUEST 3 – 7, 9 – 12, 14 и 15 исполь- зуются для сообщения микропроцессору о том , что устройство вво- да-вывода требует обслуживания. Запросы на прерывание имеют при- оритетную структуру
IRQ9 – IRQ12 , 14 и 15 имеют высший приори- тет IRQ9 – наивысший, а IRQ3 – IRQ7 имеют низший приоритет IRQ7 – наинизший. Запрос на прерывание генерируется , когда уровень на линии IRQ изменяется с низкого на высокий. Высокий уровень на линии должен сохраняться до тех пор , пока микропро- цессор не подтвердит запрос на прерывание подпрограмма обслу 11 – живания прерываний .
IRQ13 используется на системной плате , но не доступен на канале ввода-вывода. IRQ8 используется для часов реального времени. 2 2 -IORIO 2L Сигнал -IO READ обеспечивает передачу данных с устройс- тва ввода – вывода в шину данных. Сигнал может управляться сис- темным микропроцессором или контроллером ПДП или же микропроцес- сором или контроллером ПДП , находящимися на канале ввода-выво- да.
Этот сигнал активен при низком уровне. 2 2 -IOWIO 2L Сигнал -IO WRITE обеспечивает чтение данных из шины дан- ных в устройство ввода-вывода. Сигнал может управляться любым микропроцессором или контроллером пдп в системе. активен при низком уровне. 2 2 -SMEMRO -MEMRIO 2L Эти сигналы обеспечивают передачу данных с устройств памяти в шину данных. -SMEMR активен только тогда, когда адрес выбора памяти находится в нижнем 1
Мб пространства памяти. -MEMR ак- тивен во всех циклах чтения памяти. -MEMR может управляться любым микропроцессором или контроллером ПДП в системе. -SMEMR образуется из -MEMR и адреса выбора нижнего 1 Мб памяти. Если микропроцессор на канале ввода – вывода захочет управлять сигна- лом -MEMR, то в течение одного периода синхронизации перед ак- тивизацией -MEMR все адресные линии на шине должны быть истин- ными. оба сигнала активны при низком уровне. 2 2 DRQ0 – DRQ3 и DRQ5 – DRQ7 I 2L Запросы на ПДП 0 – 3 и 5 – 7 являются асинхронными запроса- ми канала, используемыми периферийными устройствами и микропро- цессорами канала ввода-вывода для получения ПДП или управления системой. Запросы имеют приоритетную структуру DRQ0 имеет высший приоритет, а
DRQ7 – низший. Запрос генерируется путем ус- тановки активного уровня на линии DRQ. Линия DRQ должна сохра- нять высокий уровень до тех пор , пока не станет активной линия подтверждения запроса на пдп DACK. По запросам DRQ0 – DRQ3 вы- полняется 8-разрядная передача, а по DRQ5 – DRQ7 16-разрядная. DRQ4 используется на системной плате и не доступен для канала ввода- вывода. 2 2 -DACK0 – -DACK3 и -DACK5 – -DACK7 O 2L Сигналы подтверждения
ПДП 0 – 3 и 5 – 7 используются для подтверждения запросов на ПДП DRQ0 – DRQ7, они активны при низком уровне 12 – 2 2 AEN O 2L Сигнал ADDRESS ENABLE используется для блокирования мик- ропроцессора и других устройств от канала ввода-вывода , чтобы разрешить режим ПДП. Когда эта линия активна , управление адрес- ной шиной, линиями команды чтения шины данных для памяти
и вво- да-вывода и линиями команды записи для памяти и ввода-вы- вода принадлежит контроллеру ПДП. 2 2 -REFRESH IO 2L Этот сигнал используется для индикации цикла регенерации и может управляться микропроцессором на канале ввода-вывода. 2 2 TC O 2L Сигнал TERMINAL COUNT обеспечивает импульс , когда дости- гается заданное число циклов в любом канале ПДП. 2 2 SBHN IO 2L Сигнал BUS HIGH ENABLE системный индицирует передачу данных в верхнем байте шины
данных, SD8 – SD15. 16-разрядные устройства используют SBHE, чтобы привязать буферы шины данных к SD8- SD15. 2 2 -MASTER I 2L Этот сигнал используется с линией DRQ для получения управ- ления системой. Процессор или контроллер ПДП на канале ввода-вы- вода могут подать сигнал DRQ в канал ПДП в каскадном режиме и получить в ответ сигнал -DACK. Получив -DACK, микропроцессор ввода-вывода может установить на линии -MASTER низкий уровень, что позволит ей получить управление системными линиями адресов, данных и управления состояние, называемое трехстабильным. Пос- ле установки низкого уровня на -MASTER процессор ввода-вывода должен подождать один системный период синхронизации, прежде чем получит управление линиями адресов и данных, и два периода синх- ронизации, прежде чем подать команду
READ или WRITE. Если сигнал сохраняет низкий уровень более 15 Мкс, содержимое системной па- мяти может быть потеряно из-за отсутствия регенерации. 2 2 -MEM CS16 I 2L Сигнал -MEM 16 CHIP SELECT сообщает системной плате, яв- ляется ли данная передача 16-разрядной, с одним состоянием ожи- дания и циклом памяти. Этот сигнал должен формироваться из адре- са выбора устройства LA17 – LA23, а управляться открытым кол- лектором или трехстабильным формирователем, обеспечивающим
ток утечки 20 MA 13 – 2 2 -IO CS16 I 2L Сигнал -IO 16 CHIP SELECT сообщает системной плате, яв- ляется ли данная передача 16-разрядной , с одним состоянием ожи- дания и циклом памяти. Этот сигнал должен формироваться из адре- са выбора устройства , а управляться открытым коллектором или 3-стабильным формирователем, обеспечивающим ток утечки 20 MA. сигнал активен при низком уровне. 2 2 OSC O 2L
Сигнал OSCILLATOR OSC является скоростным синхронизиру- ющим сигналом с периодом 70 Нс 14,31818 Мгц. Этот сигнал не синхронен с сигналом синхронизации системы. Рабочий цикл сигнала составляет 50 . 2 2 0WS I 2L Сигнал ZERO WAIT STATE сообщает микропроцессору, что он может выполнить данный цикл шины без дополнительных циклов ожи- дания. Чтобы исполнить цикл памяти для 16-разрядного устройства без циклов ожидания, сигнал 0WS формируется из адреса выбора устройства , стробируемого командой чтения или записи. Чтобы ис- полнить цикл памяти для 8-разрядного устройства минимум с двумя состояниями ожидания , сигнал 0WS должен активизироваться че- рез один системный период синхронизации после того, как команда чтения или записи станет активной путем стробирования адресом выбора устройства. Команды чтения и записи активизируются по заднему фронту системного синхроимпульса.
0WS активен при низ- ком уровне и должен управляться открытым коллектором или 3-ста- бильным формирователем с током утечки 20 ма. 3г 3 Сопроцессор 3L- 2 2 Описание 2L Математический сопроцессор персонального компьютера IBM PC AT позволяет ему выполнять скоростные арифметические и логариф- мические операции , а также тригонометрические функции с высокой точностью. Сопроцессор работает параллельно с микропроцессором, это сокращает время
вычислений , позволяя сопроцессору выполнять ма- тематические операции , в то время как микропроцессор занимается выполнением других функций. Сопроцессор работает с семью типами числовых данных, кото- рые делятся на следующие три класса – двоичные целые числа 3 типа – десятичные целые числа 1 тип – действительные числа 3 типа 14 – 2 2 Условия программирования 2L Сопроцессор предлагает расширенный набор регистров , команд и типов данных для микропроцессора. Сопроцессор имеет восемь 80-разрядных регистров, которые
эквивалентны емкости сорока 16-разрядных регистров в микропро- цессоре. В регистрах можно хранить во время вычислений временные и постоянные результаты , что сокращает расход памяти , повышает быстродействие , а также улучшает возможности доступа к шине. Пространство регистров можно использовать как стек или как пос- тоянный набор регистров . При использовании пространства в ка- честве стека работа ведется только с двумя верхними стековыми элементами. В следующей таблице показано представление больших и малых чисел в каждом типе данных 15 – 2 2 Т И П Ы Д А Н Н Ы Х 2L гTTT Тип данных число верных приблизительный диапазон битов значащих десятичн. цифр Целое слово 16 4 -32768 7, 0 X 7, 0 32768 Короткое 32 9 -2 х 10 59 0 7, 0 X 7 , 0 2 х 10 59 0 целое Длинное 64 19 -9 х 10 518 0 7, 0 X 7, 09 х 10 518 0 целое Упакованное десятичное 80 18 -99 99 7 ,
0 X 7, 099 99 короткое 18 разрядов Действит. 32 6-7 8.43х10 5-37 0 7, 0X 7, 03.37 х 10 538 0 длинное Действит. 64 15-16 4.19 х 10 5-307 7, 0X 7, 01.67 х 10 5308 0 временное Действит. 80 19 3.4 х 10 5-4932 0 7, 0X 7, 01.2 х 10 54932 0 L 16 – 2 2 Условия аппаратного обеспечения 2L Математический сопроцессор использует тот же генератор синхроимпульсов , что и микропроцессор. Он работает с частотой, равной одной трети частоты системных
синхроимпульсов микропро- цессора. Сопроцессор подсоединен так , что он функционирует как устройство ввода-вывода через порт ввода-вывода с адресами 00F8, 00FA и 00FC. Микропроцессор посылает коды операций и операнды в эти порты ввода-вывода, через них он также принимает и записыва- ет в память результаты вычислений. Сигнал занятости сопроцессора сообщает микропроцессору о том , что он исполняет операции. По команде WAIT микропроцессор ожидает, пока сопроцессор закончит
исполнение. Сопроцессор выявляет шесть различных исключительных ситуа- ций, которые могут возникнуть во время исполнения команды. Если маска соответствующего исключения в сопроцессоре не установлена, сопроцессор устанавливает сигнал ошибки, по которому генерирует- ся прерывание 13, и сигнал BUSY фиксируется в установленном состоянии. Сигнал BUSY может быть очищен командой записи 8-разрядного ввода-вывода по адресу F0, при условии что D0-D7 равны нулю. Код самоконтроля при включении питания в системном ПЗУ раз- решает прерывание 13 и устанавливает вектор этого прерывания , указывающий на рабочую программу ПЗУ. Эта программа очищает за- щелку сигнала BUSY и передает затем управление по адресу , указанному вектором немаскированного прерывания. Это позволяет использовать код, записанный для любого персонального компьютера IBM, в IBM PC AT. Драйвер немаскируемых прерываний должен прочи- тать состояние сопроцессора,
чтобы определить, было ли НМП выз- вано сопроцессором. Если нет, то управление передается исходному драйверу НМП. Сопроцессор предусматривает два режима работы, подобные двум режимам микропроцессора. после сброса при включении питания или при операции записи ввода – вывода в порт с адресом 00F1 сопроцессор находится в режиме реальной адресации. Этот режим совместим с сопроцессором 8087 , который используется с другими
персональными компьютерами IBM. Сопроцессор может быть переведен в режим защиты с помощью команды SETPM ESC. В режим реальной ад- ресации он может возвратиться, если будет выполнена операция за- писи ввода-вывода в порт с адресом 00F1, при условии что D0-D7 равны 0. 3г 3 Базовая система ввода-вывода BIOS 3L- Базовая система ввода-вывода BIOS находится в ПЗУ на сис- темной плате.
Она обеспечивает управление уровнями для основных устройств ввода-вывода в системе. На дополнительных адаптерах могут размещаться дополнительные модули ПЗУ , которые обеспечи- вают управление уровнями устройства на этом дополнительном адап- тере. Рабочие программы BIOS позволяют программисту, работающему на языке ассемблера, выполнять операции ввода-вывода в блоковом диски или дискеты или в символьном формате без учета адреса и параметров устройства. BIOS предусматривает такие системные ус- луги , как определение времени суток и размера памяти 17 – Целью BIOS является обеспечение операционной связи с систе- мой и освобождение программиста от заботы об аппаратных характе- ристиках устройств. Интерфейс BIOS отделяет пользователя от ап- паратуры, позволяя добавлять к системе новые устройства, сохра- няя при этом связь с устройством на уровне BIOS. В этом случае аппаратные изменения и расширения становятся
прозрачными для пользователя. 2 2 Использование BIOS 2L Доступ к BIOS обеспечивается через программные прерывания микросхемы 80286 в режиме реального времени. Каждая точка входа в BIOS доступна через собственное прерывание. например, для оп- ределения объема базового ОЗУ, доступного в системе, содержащей 80286, в режиме реального времени , прерывание INT 12H вызывает рабочую программу BIOSа для определения размера памяти и возвра- щает полученное значение
системе. 2 2 Передача параметров 2L Все параметры, передающиеся в рабочие программы BIOS и об- ратно, проходят через регистры микросхемы 80286. Вводная часть каждой функции BIOS содержит регистры, используемые при вызове и возврате, например , для определения размера памяти параметры не передаются. Размер памяти в килобайтах возвращается в регистр
AX. Если функция BIOS содержит в себе несколько возможных операций, то регистр AH используется на входе, чтобы показать желаемую опе- рацию, например, для установки времени суток требуется следующая программа MOV AH,1 установить время суток MOV CX,HIGH COUNT установить текущее время MOV DX,LOW COUNT INT 1AH установить время для чтения времени суток
MOV AH,0 считать время суток INT 1AH считать таймер Программы BIOS запоминают все регистры, кроме AX и флагов. Другие регистры изменяются по возврату только в том случае, если они возвращают значение вызывающей программе. Конкретное назна- чение регистра можно определить по вводной части каждой функции BIOS.