D1 – WO (write or output) – инверсный сигнал (т.е. активным является лог. 0), показывающий, что в данном машинном цикле будет производиться запись в память или вывод данных в ВУ; в противном случае (на линии – лог. 1) – чтение данных из памяти или прием информации от устройства ввода;
D2 – STACK – сигнал о том, что ША содержит полученный из указателя стека адрес данных в основной памяти (в области, отведенной под магазинную память);
D3 – HLTA (halt instruction acknowledge) – сигнал, подтверждающий согласие на выполнение команды ОСТАНОВ;
D4 – OUT (output) – на ША адрес устройства вывода, а на ШД микропроцессор, перейдя в состояние выдачи данных, выставит информацию для этого устройства;
D5 – M1 (memory 1) – МП находится в цикле выборки первого байта команды из памяти;
D6 – INP (input) – на ША адрес устройства ввода, данные из которого должны быть выставлены на ШД, когда МП перейдет в состояние приема данных;
D7 – MEMR (memory) – в данном машинном цикле ШД будет использована для считывания информации из памяти.
Все эти сигналы вырабатываются МП в начале машинного цикла и выставляются на ШД на короткий промежуток времени – в течение только первого такта каждого машинного цикла. Для сохранения их слово состояния фиксируется в специальных регистрах. Эти сигналы используются для формирования дополнительных управляющих линий в микроЭВМ. Формирование этих линий осуществляется аппаратным путем (т.е. проектированием специальных схем или использованием готовых устройств). При этом в сложных МПУС для этой цели используются все разряды слова состояния, а в более простых же могут использоваться только некоторые (необходимые) его разряды, или, если это возможно, можно обойтись управляющими сигналами собственно микропроцессора.
Рассмотрим более подробно, как используется в машинном цикле шина данных. Как мы выяснили, она, кроме передачи данных из МП в память и устройства вывода и приема информации из памяти и устройств ввода, используется для передачи в специальный регистр (регистр слова состояния – РСС) слова состояния процессора, причем функция передачи слова состояния процессором в каждом машинном цикле выполняется первой. Следовательно, разработчику следует позаботиться о том, чтобы в течение первого такта любого машинного цикла память и УВВ не выставляли информацию на ШД, чтобы исключить конфликтные ситуации. Это решается достаточно просто, если сигналы управления памятью и УВВ формировать как раз на основании слова состояния. В этом случае эти сигналы появятся на линиях шины управления не раньше, чем во втором такте машинного цикла, то есть когда МП уже снимет слово состояния с ШД. После окончания первого такта шина данных уже может использоваться для передачи данных от МП к памяти и УВВ или, наоборот, от этих устройств к МП.
1. Ввод-вывод в режиме прерывания. Алгоритм обслуживания прерываний.
Подсистема прерываний МПС
Подсистема прерываний - совокупность аппаратных и программных средств, обеспечивающих реакцию программы на события, происходящие вне программы. Такие события возникают, как правило, случайно и асинхронно по отношению к программе и требуют прекращения (чаще временного) выполнения текущей программы и переход на выполнение другой программы (подпрограммы), соответствующей возникшему событию.
Внутренние и внешние прерывания
Различают внутренние и внешние (по отношению к процессору) события, требующие реакции подсистемы прерываний. К внутренним событиям относятся переполнение разрядной сетки при выполнении арифметических операций, попытка деления на 0, извлечение корня четной степени из отрицательного числа и т.п., появление несуществующего кода команды, обращение программы в область памяти, для нее не предназначенную, сбой при выполнении передачи или операции в АЛУ и многое другое. Внутренние прерывания должны обеспечиваться развитой системой аппаратного контроля процессора, поэтому они не получили широкого распространения в простых 8- и 16-разрядных МП.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.