На базе микропроцессора i8086/8088
Для адаптации к возможно большему применений в МП i8086/8088 предусмотрены два режима работы: минимальный и максимальный. Эти режимы задают соответственно минимальную и максимальную базовые конфигурации центральных процессоров на базе микропроцессора i8086/8088.
Минимальный режим рассчитан на небольшие однопроцессорные системы, в которых все необходимые сигналы управления шиной генерируются непосредственно МП, что минимизирует необходимую логику управления шиной.
Максимальный режим рассчитан на средние и большие системы, которые могут быть мультипроцессорными. В этом режиме сигналы управления шиной генерируются системным контроллером i8288, который использует для этого информацию о типе выполняемого цикла шины, определяемого 3-х битовым кодом состояния на соответствующих выводах МП.
Функциональное назначение восьми выводов МП зависит от режима работы, поэтому выводы имеют двойные обозначения, причем обозначения в скобках соответствуют максимальному режиму. Режим работы определяется сигналом на входе . При – режим работы минимальный и, соответственно, при – максимальный.
Рассмотрим функциональное назначение выводов МП i8086, являющихся общими для двух режимов.
AD15 – AD0– мультиплексированная (совмещенная) двунаправленная шина адреса/данных, по которой с разделением времени передаются младшие 16 бит адреса памяти (или полные адреса ввода – вывода) и данные. В МП i8088 с 8-разрядной внешней шиной данных линии AD8 – AD15 используются только для передачи адресов, и поэтому обозначаются как А8 – А15.
A19/ST6 – A16/ST3 – мультиплексированная выходная шина адреса/состояния. В первом такте цикла шины на эти выводы выдаются 4 старшие разряда адреса памяти, а при адресации ВУ – нули. В остальных тактах цикла шины МП выдает на эти выводы сигналы состояния ST6 – ST3. Код на линиях S3 и S4 определяет вид сегментного регистра, сигнал на линии S5 соответствует состоянию флага IF разрешения прерываний, а вывод S6 не используется и всегда S6=0.
- разрешение передачи байта данных по старшей половине шины AD15 – AD8 / резервный бит состояния ST7. В МП i8088 с 8-разрядной внешней шиной данных на этом выводе формируется сигнал, логически эквивалентный сигналу состояния .
- строб чтения, идентифицирует выполнение цикла чтения из памяти или внешнего устройства.
RDY – сигнал готовности, указывающий на то, что адресуемое в данном цикле внешнее устройство готово к обмену данными. Если устройство не готово к взаимодействию с МП, оно выдает сигнал RDY=0, и МП переходит в состояние ожидания. В этом случае между тактами Т3 и Т4 цикла шины появляется необходимое число тактов ожидания TW. После установки RDY=1 процессор выходит из состояния ожидания и возобновляет работу.
INTR – сигнал маскируемого запроса прерывания, опрашиваемый МП в конце выполнения каждой команды. Сигнал на вход INTR подается с выхода программируемого контролера прерываний i8259. Если прерывания разрешены (IF=1), МП может перейти к подпрограмме обработки запроса прерывания. Если прерывания запрещены (IF=0), то запрос по входу INTR игнорируется.
NMI – сигнал немаскируемого запроса прерывания, распознаваемый МП по завершению текущей команды независимо от состояния флага разрешения прерывания IF. Этот запрос вызывает прерывание по фиксированному вектору и предназначен для сигнализации о таких критических ситуациях, как аварийное отключение электропитания или ошибках памяти.
- входной сигнал, выполняемый с командой WAIT, которая проверяет уровень сигнала . Если , то МП переходит к выполнению следующей по порядку команды. Если , МП зацикливается и периодически проверяет значение сигнала на этом входе до изменения ситуации. Таким образом, команда WAIT и сигнал обеспечивают синхронизацию работы МП с внешними сигналами: - вход программной проверки, а RDY – вход аппаратной проверки готовности устройств в системе.
CLK- тактовые импульсы частотой 2-5-8-10 МГц, обеспечивающие синхронизацию работы МП.
RESET – сигнал сброса, который переводит блоки МП (сегментные регистры, указатель команд IP, регистр признаков, регистры очереди команд и т.д.) в определенное начальное состояние.
Рассмотрим функциональное назначение остальных выводов МП i8086, используемых для построения центрального процессора, функциональная схема которого приведена на рис.4.2..
ALE – строб адреса, выдаваемый в начале каждого цикла шины для записи кода адреса в регистр – защелку.
- строб данных, выдаваемый в циклах записи и чтения для управления шинными формирователями данных i8286.
- сигнал передача/прием данных, определяющий направление перемещения данных по шине AD. Этот сигнал предназначен для управления шинными формирователями данных i8286.
- сигнал, указывающий на обращение к памяти ( ) или внешним устройствам ( ).
- строб записи, указывающий на выполнение цикла записи в память или внешнее устройство.
- выходной сигнал подтверждение запроса прерывания. Формируется в ответ на запрос INTR и стробирует чтение вектора прерывания.
HOLD – запрос шины (запрос захвата) от контроллера прямого доступа к памяти.
HLDA – выходной сигнал подтверждение захвата шины. Формируется МП в ответ на сигнал HOLD и указывающий на то, что МП перевел свои шины адреса/данных, адреса/состояния и управления в высокоимпендансное состояние. Таким образом, контроллер прямого доступа к памяти может использовать системную шину самостоятельно.
- сигналы состояния, определяющие тип выполняемого цикла шины в соответствие с табл.4.2. Эти сигналы подаются в системный контроллер i8288, который дешифрирует их и формирует набор управляющих сигналов системной шины. Сигнал логически эквивалентен сигналу , а сигнал - сигналу . Системный контроллер выполнен на базе микросхемы i8288.
QS0, QS1 – сигналы, идентифицирующие состояние внутренней 6 – байтовой очереди команд. Эти сигналы предназначены для арифметического сопроцессора i8087.
- двунаправленные линии запроса /предоставления, которые используются для обмена сигналами между процессорами в мультипроцессорной системе для управления процедурой использования шин.
Таблица 4.2.
Типы циклов шины МП i8086/8088
Тип циклов шины | |||
Подтверждение прерывания | |||
Чтение из внешнего устройства | |||
Запись во внешнее устройство | |||
Останов | |||
Выборка кода команды | |||
Чтение из памяти | |||
Запись в память | |||
Цикла шины нет |
- выходной сигнал блокировки (занятости) шины, информирующий другие активные устройства системы о том, что они не могут использовать шину. Этот сигнал, как и предыдущий используется только в мультипроцессорных системах.
Дата добавления: 2021-12-14; просмотров: 277;