ВУЗ:
Составители:
ШУ
ШД
ША
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 появляется в произвольные моменты времени, асинхронно по отношению к действиям микропроцессора, и управлять его появлением программа не может. Поэтому, заранее неизвестно, в какой точке программы, и какие ПУ инициируют прерывания.
Страницы
- « первая
- ‹ предыдущая
- …
- 44
- 45
- 46
- 47
- 48
- …
- следующая ›
- последняя »