вход Вход Регистрация



Микропроцессор КР580ВМ80А может осуществлять синхронный и асинхронно-синхронный обмены информацией с памятью и внеш­ними устройствами за один или несколько машинных циклов. Кроме того, его подсистема прерываний может инициировать асинхронно-синхронный обмен по прерыванию. При обработке большинства команд микропроцессор осуществляет обмены с памятью - извле­кает код команды и операнды, засылает в память содержимое регист­ров и лишь только две команды IN и OUT предназначены для проведения обмена с внешними устройствами. Обмен с памятью иниции­руется также при начальной установке микропроцессора.

Начальная установка. При одновременном включении питания - 5, +5 и 12В (или последовательном в указанном порядке) и по­ступлении на микропроцессор серий тактовых импульсов F1 и F2, все регистры и флаги микропроцессора устанавливаются в произволь­ные состояния. При поступлении на вход RESET сигнала высокого уровня длительностью не менее 3 тактов счетчик команд PC, триггер разрешения прерывания (выход INTE), а также триггер подтвержде­ния захвата (выход HLDA) сбрасываются, и микропроцессор начинает выборку из памяти команды, расположенной по нулевому адресу.

Микропроцессор выполняет различные команды за различное время в течение от 1 до 5 машинных циклов (M1 - М5) Первый цикл обычно состоит из 4 - 5 машинных тактов, а последующие - из 3. Таким образом, в зависимости от типа выполняемого машинного цикла микропроцессор последовательно проходит устойчивые состояния , , ( или , для первого цикла команды), в каждом из которых он находится в течение 1 машинного такта. Кроме того, микропроцессор может находиться неограниченное время в следую­щих устойчивых состояниях: ожидания, захвата, останова.

В зависимости от выполняемой команды микропроцессор проходит через последовательность различных машинных циклов (табл. 1.2), о каждом из которых он посылает на шину данных в первом такте цикла информацию - слово состояния, структура которого сле­дующая: D0 (INTA) - подтверждение запроса на прерывание; D1 () - запись в память или вывод во внешнее устройство; D2 (STACK) - операции со стеком; D3 (HLTA) - подтверждения останова после выполнения команды HLT; D4 (OUT) - вывод; D5 (M1) - первый цикл команды; D6 (INP) - ввод; D7 (MEMR) - чтение из памяти.

Таблица 1.2

Слово
состояния
M1 M2 M3 M4 M5 M6 M7 M8 M9 M10
Извлечение команды Чтение из памяти Запись в память Чтение из стека Запись в стек Ввод Вывод Подтверждение пребывания Подтверждение останова Подтверждение прерывания во время останова
D0 INTA 0 0 0 0 0 0 0 1 0 1
D1 1 1 0 1 0 1 0 1 1 1
D2 STACK 0 0 0 1 1 0 0 0 0 0
D3 HLTA 0 0 0 0 0 0 0 0 1 1
D4 OUT 0 0 0 0 0 0 1 0 0 0
D5 M1 1 0 0 0 0 0 0 1 0 1
D6 INP 0 0 0 0 0 1 0 0 0 0
D7 MEMR 1 1 0 1 0 0 0 0 1 0

Различают следующие циклы: - прием первого байта (цикл извлечения команды); - чтение из ЗУ по адресу, расположенному в паре регистров (ВС, DE, HL) или счетчике команд PC; - запись в ЗУ по адресу, расположенному в паре регистров (ВС, DE, HL);

Рисунок 1.2 - временная диаграмма входных и выходных сигналов микропроцессора

 

- чтение из стека - области ЗУ, на которую указывает содер­жимое SP; - запись в стек - область ЗУ, на которую указывает содержимое SP; - ввод-загрузка аккумулятора из внешнего устройства; - вывод-сохранение содержимого аккумулятора во внешнем устройстве; - прерывание-переход на обслуживание запроса от внешнего источника; - останов; - прерывание во время останова - переход на обслуживание запроса от внешнего источника из состояния останова. Все множество допустимых циклов микропроцессора КР580ВМ80А можно условно разбить на три груп­пы: чтение (ввода) - , , , , , (временная диаграмма входных и выходных сигналов микропроцессора изображена на рис. 1.2, а); записи (вывода) , , (рис. 1.2,б); останова . В цик­лах группы чтения во втором такте на выходе DBIN появляется сигнал высокого уровня, по которому микропроцессор выполняет чтение информации из памяти или внешних устройств. В циклах группы записи в такте на выходе микропроцессора появ­ляется сигнал отрицательной полярности, по которому происходит запись информации в память или внешние устройства. В циклах пер­вой группы М1, М8, М10 информация с шины данных вводится в регистр команд IR, в - в аккумулятор А или в один из регистров общего назначения (В, С, D, E, H, L, W, Z), в - в пару регистров (ВС, DE, HL или PSW), в - в аккумулятор А. В цикле вто­рой группы информация на шину данных выводится из аккумуля­тора или одного из регистров общего назначения, в - из регистра пары (ВС, DE, HL или PSW); в - из аккумулятора. Следует отметить, что в циклах первой группы после такта , в котором может завершаться чтение, могут следовать такты и , или следующего цикла, а в циклах второй группы вслед за , в кото­ром осуществляется запись, всегда следует следующего цикла. При выполнении любой команды последовательность циклов обмена, иници­ируемая микропроцессором, начинается циклом , в котором проис­ходит извлечение кода команды.

Цикл извлечения команды. В первом такте по переднему фронту F2 на выходе SYNC по­является сигнал высокого уров­ня, индицируя первый такт ма­шинного цикла (рис. 1.3). Кроме того, на шине данных в этом такте появляется слово состоя­ния, у которого в разрядах D1, D5, D7 записаны единицы. По переднему фронту F2 в этом так­те на адресной шине устанавли­вается адрес ячейки памяти, ко­торый поступил в буфер адреса из счетчика команд микропро­цессора.

Во втором такте на выходе микропроцессора DBIN появляется сигнал высокого уровня длительностью в один такт, по которому обычно происходит чтение памяти и внешних устройств. В этом такте микропроцессор опрашивает сигналы на входах READY, HOLD и триггере HLTA. В зависимости от значения сигналов на этих выво­дах микропроцессор переходит в различные состояния: ожидания, захвата или останова. Если на выводы READY, HOLD поступили сигналы 1, 0, а триггер HLDA установлен в «0», то микропроцессор переходит в состояние . В третьем такте может выполняться или завершаться чтение памяти, после чего шина данных переходит в высокоимпедансное состояние. Следует отметить, что обычно до четвертого такта уже изменяется значение счетчика команд и, таким образом, в нем находится адрес новой команды, который поступает на адресные шины в первом такте следующего машинного цикла.

В четвертом такте код команды, поступившей в регистр команд, дешифрируется - определяется, сколько циклов и тактов требуется для выполнения команды, которая затем отрабатывается микропро­цессором в течение данного или последующего пятого такта . Если команда двух- или трехбайтная, то выполнение ее происходит в сле­дующих машинных циклах после извлечения оставшихся байтов. Следует отметить, что по переднему фронту F2 на выводах адресной шины в такте появляется неопределенное значение, а в такте эти выводы переводятся в высокоимпедансное состояние.

Рисунок 1.3 - Диаграмма цикла извлечения команды

© 2018
  • Сайт "Литературка"
  • мы собираем различную техническую, образовательную, научную литратуру