Организация микропроцессорных систем. Учебное пособие. Могнонов П.Б. - 46 стр.

UptoLike

Составители: 

ШУ
ШД
ША
HLDA HRQ
DACK
DREQ
_
___
IOW
_
__
IOR
ША
_
__
IIOR
_
___
IIOW
____
MW
___
MR
ЦП
HLDA HLD
ОЗУ
КПДП ПУ
_
__
MW
_
_
MR
ШД
Рис.3.1. Структурная схема МПС с контроллером ПДП
Циклы ПДП выполняются с последовательно расположенными ячейками памяти,
поэтому КПДП должен иметь счетчик адреса ОЗУ. Число циклов ПДП определяется
специальным счетчиком. Управление обменом осуществляется специальной логической
схемой, формирующей в зависимости от типа обмена пары управляющих сигналов: MR,
IOW (циклы чтения) и IOR, MW (циклы записи).
Из изложенного следует, что контроллер ПДП по запросу (DREQ) от устройства
внешней памяти ПУ должен взять на себя управление системными шинами и выполнять
совмещенные циклы чтения или записи до тех пор, пока содержимое счетчика циклов ПДП
не будет равно нулю. После этого, устройство внешней памяти снимает запрос ПДП (DREQ),
что приводит к снятию соответствующего запроса в процессор (HRQ), и он возобновляет
приостановленную программу.
3.3. Ввод-вывод в режиме прерывания
При организации режима прерывания в микропроцессорных системах
непроизводительные потери времени микропроцессора в циклах ожидания резко
сокращаются. Это позволяет строить гибкие системы прерывания с подключением большого
количества устройств, работающих с различными скоростями.
Рассмотрим принципы организации ввода-вывода в режиме прерывания. При
выполнении текущей программы могут возникать события, как внешние, так и внутренние
по отношению к микропроцессору, которые требуют немедленной реакции с его стороны.
Эта реакция состоит в том, что при возникновении подобных событий микропроцессор
должен прервать обработку текущей программы и перейти к выполнению другой программы
однозначно связанной с данным событием. По завершению этой программы микропроцессор
должен вернуться к выполнению прерванной программы. Этот процесс называется
прерыванием программ.
Каждое событие, требующее прерывание, должно сопровождаться сигналом,
оповещающим микропроцессор о его возникновении. Этот сигнал называется запросом
прерывания (INT). Программы, затребованные запросами прерывания, называются
прерывающими программами, а программы, выполнявшиеся до появления запросов
прерывания, будем называть прерываемыми программами.
Запросы на прерывание могут возникать как внутри микропроцессора, так и от ПУ. К
первым относятся, например, запросы при возникновении таких событий, как переполнение
разрядной сетки, попытка деления на 0, сигнал от систем автоматического контроля и т.д.
Запросы прерывания возникают по мере необходимости в обмене информации.
Каждое ПУ может посылать в микропроцессор сигнал запроса прерывания INT, когда
оно готово к операциям ввода-вывода, который требует немедленной реакции
микропроцессора. Сигнал INT появляется в произвольные моменты времени, асинхронно по
отношению к действиям микропроцессора, и управлять его появлением программа не может.
Поэтому, заранее неизвестно, в какой точке программы, и какие ПУ инициируют
прерывания.
                                                     ША
                                   ЦП                                                     ОЗУ
                                                     ШД
                                                                                      ___
                                                                                      MW
                                HLDA    HLD          ШУ
                                                                                      __
                                                      ___                ___          MR
                                              ____    IIOR               IOR
                                              MW
                                                      ____               ____
                                              ___            ША                      ШД
                                                      IIOW               IOW
                         HLDA      HRQ        MR
                                                                  DREQ
                                                КПДП                            ПУ
                                                                  DACK




                      Рис.3.1. Структурная схема МПС с контроллером ПДП
       Циклы ПДП выполняются с последовательно расположенными ячейками памяти,
поэтому КПДП должен иметь счетчик адреса ОЗУ. Число циклов ПДП определяется
специальным счетчиком. Управление обменом осуществляется специальной логической
схемой, формирующей в зависимости от типа обмена пары управляющих сигналов: MR,
IOW (циклы чтения) и IOR, MW (циклы записи).
       Из изложенного следует, что контроллер ПДП по запросу (DREQ) от устройства
внешней памяти ПУ должен взять на себя управление системными шинами и выполнять
совмещенные циклы чтения или записи до тех пор, пока содержимое счетчика циклов ПДП
не будет равно нулю. После этого, устройство внешней памяти снимает запрос ПДП (DREQ),
что приводит к снятию соответствующего запроса в процессор (HRQ), и он возобновляет
приостановленную программу.

                          3.3. Ввод-вывод в режиме прерывания

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