-DACK0 - -DACK3 и -DACK5 - -DACK7 (O)
Сигналы подтверждения ПДП 0 - 3 и 5 - 7 используются для подтверждения запросов на ПДП (DRQ0 - DRQ7), они активны при низком уровне.
AEN (O)
Сигнал 'ADDRESS ENABLE' используется для блокирования микропроцессора и других устройств от канала ввода-вывода, чтобы разрешить режим ПДП. Когда эта линия активна, управление адресной шиной, линиями команды чтения шины данных (для памяти и ввода-вывода) и линиями команды записи (для памяти и ввода-вывода) принадлежит контроллеру ПДП.
-REFRESH (I/O)
Этот сигнал используется для индикации цикла регенерации и может управляться микропроцессором на канале ввода-вывода.
T/C (O)
Сигнал 'TERMINAL COUNT' обеспечивает импульс, когда достигается заданное число циклов в любом канале ПДП.
SBHN (I/O)
Сигнал 'BUS HIGH ENABLE' (системный) индицирует передачу данных в верхнем байте шины данных, SD8 - SD15. 16-разрядные устройства используют 'SBHE', чтобы привязать буферы шины данных к SD8- SD15.
-MASTER (I)
Этот сигнал используется с линией DRQ для получения управления системой. Процессор или контроллер ПДП на канале ввода-вывода могут подать сигнал DRQ в канал ПДП в каскадном режиме и получить в ответ сигнал -DACK. Получив -DACK, микропроцессор ввода-вывода может установить на линии '-MASTER' низкий уровень,
что позволит ей получить управление системными линиями адресов, данных и управления (состояние, называемое трехстабильным). После установки низкого уровня на '-MASTER' процессор ввода-вывода должен подождать один системный период синхронизации, прежде чем получит управление линиями адресов и данных, и два периода синхронизации, прежде чем подать команду READ или WRITE. Если сигнал сохраняет низкий уровень более 15 Мкс, содержимое системной памяти может быть потеряно из-за отсутствия регенерации.
-MEM CS16 (I)
Сигнал '-MEM 16 CHIP SELECT' сообщает системной плате, является ли данная передача 16-разрядной, с одним состоянием ожидания и циклом памяти. Этот сигнал должен формироваться из адреса выбора устройства LA17 - LA23, а управляться открытым коллектором или трехстабильным формирователем, обеспечивающим ток
утечки 20 MA.
-I/O CS16 (I)
Сигнал '-I/O 16 CHIP SELECT' сообщает системной плате, является ли данная передача 16-разрядной, с одним состоянием ожидания и циклом памяти. Этот сигнал должен формироваться из адреса выбора устройства, а управляться открытым коллектором или 3-стабильным формирователем, обеспечивающим ток утечки 20 MA сигнал активен при низком уровне.
OSC (O)
Сигнал 'OSCILLATOR' (OSC) является скоростным синхронизирующим сигналом с периодом 70 Нс (14,31818 Мгц). Этот сигнал не синхронен с сигналом синхронизации системы. Рабочий цикл сигнала составляет 50 %.
0WS (I)
Сигнал 'ZERO WAIT STATE' сообщает микропроцессору, что он может выполнить данный цикл шины без дополнительных циклов ожидания. Чтобы исполнить цикл памяти для 16-разрядного устройства без циклов ожидания, сигнал '0WS' формируется из адреса выбора устройства, стробируемого командой чтения или записи. Чтобы исполнить цикл памяти для 8-разрядного устройства минимум с двумя состояниями ожидания, сигнал '0WS' должен активизироваться через один системный период синхронизации после того, как команда чтения или записи станет активной путем стробирования адресом выбора устройства. Команды чтения и записи активизируются по заднему фронту системного синхроимпульса. '0WS' активен при низком уровне и должен управляться открытым коллектором или 3-стабильным формирователем с током утечки 20 ма.
Сопроцессор
Математический сопроцессор персонального компьютера IBM PC AT позволяет ему выполнять скоростные арифметические и логарифмические операции, а также тригонометрические функции с высокой точностью.
Сопроцессор работает параллельно с микропроцессором, это сокращает время вычислений, позволяя сопроцессору выполнять математические операции, в то время как микропроцессор занимается выполнением других функций.
Сопроцессор работает с семью типами числовых данных, которые делятся на следующие три класса:
- двоичные целые числа (3 типа);
- десятичные целые числа (1 тип);
- действительные числа (3 типа).
Условия программирования
Сопроцессор предлагает расширенный набор регистров, команд и типов данных для микропроцессора.
Сопроцессор имеет восемь 80-разрядных регистров, которые эквивалентны емкости сорока 16-разрядных регистров в микропроцессоре. В регистрах можно хранить во время вычислений временные и постоянные результаты, что сокращает расход памяти, повышает быстродействие, а также улучшает возможности доступа к шине. Пространство регистров можно использовать как стек или как постоянный набор регистров . При использовании пространства в качестве стека работа ведется только с двумя верхними стековыми элементами. В следующей таблице показано представление больших и малых чисел в каждом типе данных.
Условия аппаратного обеспечения
Математический сопроцессор использует тот же генератор синхроимпульсов, что и микропроцессор. Он работает с частотой, равной одной трети частоты системных синхроимпульсов микропроцессора. Сопроцессор подсоединен так, что он функционирует как устройство ввода-вывода через порт ввода-вывода с адресами 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.
Базовая система ввода-вывода (BIOS)
Базовая система ввода-вывода (BIOS) находится в ПЗУ на системной плате. Она обеспечивает управление уровнями для основных устройств ввода-вывода в системе. На дополнительных адаптерах могут размещаться дополнительные модули ПЗУ, которые обеспечивают управление уровнями устройства на этом дополнительном адаптере. Рабочие программы BIOS позволяют программисту, работающему на языке ассемблера, выполнять операции ввода-вывода в блоковом (диски или дискеты) или в символьном формате без учета адреса и параметров устройства. BIOS предусматривает такие системные услуги, как определение времени суток и размера памяти.
Целью BIOS является обеспечение операционной связи с системой и освобождение программиста от заботы об аппаратных характеристиках устройств. Интерфейс BIOS отделяет пользователя от аппаратуры, позволяя добавлять к системе новые устройства, сохраняя при этом связь с устройством на уровне BIOS. В этом случае аппаратные изменения и расширения становятся "прозрачными" для пользователя.
Использование BIOS
Доступ к BIOS обеспечивается через программные прерывания микросхемы 80286 в режиме реального времени. Каждая точка входа в BIOS доступна через собственное прерывание. например, для определения объема базового ОЗУ, доступного в системе, содержащей 80286, в режиме реального времени, прерывание INT 12H вызывает рабочую программу BIOSа для определения размера памяти и возвращает полученное значение системе.
Передача параметров
Все параметры, передающиеся в рабочие программы 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.
Список используемой литературы: