October 19 2017 19:14:29
Навигация
Авторизация
Логин

Пароль



Вы не зарегистрированы?
Нажмите здесь для регистрации .

Забыли пароль?
Запросите новый здесь.
Обработка команд микропроцессора
ЭЛЕКТРОНИКА- курс лекций

Включение электропитания МПС сопровождает импульс RESET, по которому микропроцессор начинает обработку команд, осуществляемую в следующем порядке:

  1. в регистры микропроцессора, включая IP, записываются нули;

  2. содержимое IP выдается на ША, после чего микропроцессор переходит к считыванию первого байта из ячейки ПЗУ (в ОЗУ после включения питания еще никакой информации нет) с нулевым адресом — этот байт всегда воспринимается микропроцессором как код операции команды;

  3. на основании кода операции дешифратор команд определяет общее число байтов команды, которые должны быть считаны далее;

  4. после чтения очередного байта адрес в IP увеличивается на единицу, выдается на ША, и микропроцессор переходит к считыванию следующего байта из ячейки с этим адресом.

Байты команд располагаются в памяти в порядке очередности друг за другом, а процесс выполнения каждой команды представляет собой последовательность действий, определенных кодом операции. После считывания очередной команды, состоящей из некоторого числа байтов, адрес в IP обязательно увеличится именно на это число. Если выполнение командного кода более никак не изменило адресной информации в IP, то содержимое этого регистра будет указывать на первый байт команды, следующей в очереди. В этом случае командные коды, расположенные в памяти друг за другом, будут выполняться подряд.

Существует группа команд, изменяющих адрес в IP в соответствии с кодом, заданным программистом, и дающих возможность переходить к другим командам, находящимся по требуемым адресам. Таким образом реализуется переход к различным участкам программы и подпрограммам, а также организация программных циклов - циклического выполнения последовательности команд. Другая группа содержит команды, позволяющие по адресу, заданному разработчиком программы, реализовать чтение или запись информации в определенные ячейки памяти или УВВ. При завершении выполнения таких команд IP содержит адрес, указывающий на код операции следующей команды. Более подробно группы команд будут рассмотрены ниже.

Каждая команда выполняется за время, называемое командным циклом. Поскольку она может состоять из нескольких байтов, обработка каждого из которых требует времени, командный цикл обычно составляют несколько машинных циклов.

Машинный цикл - временной интервал, в течение которого осуществляется чтение или запись одного байта. В свою очередь каждый машинный цикл образуют несколько периодов тактовой частоты ГТИ - машинных тактов.

Таблица 8.1.

Бит локальной ШД Сигнал Назначение
D7 MEMR Чтение данных из памяти.
D6 INP Чтение данных из УВВ.
D5 M1 Чтение из памяти первого байта команды - выборка команды.
D4 OUT Запись данных в УВВ.
D3 HLTA Подтверждение останова.
D2 STACK На ША выдано содержимое SP.
D1 img376 Запись данных в память.
D0 INTA Подтверждение прерывания.

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

Выполнение команды начинается с момента ее считывания, определяемого первым тактом командного цикла. В первом же такте каждого машинного цикла на локальную ШД, (соединяющую микропроцессор и СКФ) выдается специальный код, называемый словом состояния процессора (status word - SW). Назначение активных сигналов SW приведено в таблице 8.1. Это слово содержит информацию о типе машинного цикла, необходимую для управления устройствами МПС. Существуют следующие типы:

  1. выборка первого байта команды;

  2. чтение данных из памяти;

  3. запись данных в память;

  4. чтение стека;

  5. запись в стек;

  6. чтение данных из УВВ;

  7. запись данных в УВВ;

  8. прерывание;

  9. останов;

  10. прерывание в останове.

В зависимости от типа цикла микропроцессор по-разному взаимодействует с подключенными к нему устройствами - считывает или записывает данные в память либо УВВ, производит операции со стеком и т.д. Временные диаграммы некоторых процессов взаимодействия, определяемых тем или иным типом цикла, будут рассмотрены ниже.

Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста, залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, авторизуйтесьили зарегистрируйтесь для голосования.

Нет данных для оценки.

Время загрузки: 0.03 секунд 2,256,278 уникальных посетителей