Автор работы: Пользователь скрыл имя, 15 Января 2015 в 09:08, доклад
Объекты управления (ОУ) бытовой техники по своему назначению делятся на два класса. К первому классу относятся хорошо известные объекты, предназначенные для использования в домашних условиях: телевизоры, видеомагнитофоны и другие устройства бытовой радиоэлектронной аппаратуры (БРЭА), а также холодильники, стиральные машины, кухонные комбайны и др. Ко второму классу относятся объекты, предназначенные для оказания услуг населению в производственных условиях:промышленные стиральные машины, машины химической чистки одежды, станочное оборудование предприятий по ремонту и изготовлению мебели по заказам населения.
Рис. 2 - Структурная схема (а) и схема подключения (б) ГТИ к МП
Заметим, что формирование системного стробирующего сигнала СТС производится ИС ГТИ после подачи на его вывод СВ (вход синхросигнала) синхросигнала С с соответствующего вывода МП.
Временные соотношения тактовых импульсных последовательностей Ф1 и Ф2 и формирование системного сигнала СТС показаны на рис. 3.
По переднему фронту тактирующего сигнала Ф2 синхросигнал С подается на вход СВ ГТИ и с его помощью на вывод СТС ГТИ передается инвертированный сигнал Ф1, который является системным стробом СТС.
Рис. 3 - Формирование сигнала СТС
Рис. 4 - Временная диаграмма цикла выборки КОП
Процесс выполнения любой команды МП разбивается на циклы, обозначаемые М1, М2,..., М10. В каждом цикле происходит одно обращение МП к памяти или внешнему устройству (ВУ). Каждый цикл разбивается на такты Т1, Т2, ..., Т5. Самый длительный цикл выполнения команды составляет 5 тактов. В микропроцессоре КР580ВМ80А могут выполняться следующие машинные циклы:
Рассмотрим последовательность выполнения первого цикла любой команды — цикла М1 выборки кода операции. Как известно, коды всех команд находятся в ячейках памяти. Поэтому в первом такте Т1 по переднему фронту сигнала Ф2 на ША счетчик команд PC выставляет адрес ячейки памяти, в которой содержится очередная команда, подлежащая выполнению (рис. 5). При этом схема приращения МП автоматически увеличивает на единицу содержимое счетчика PC. Одновременно с появлением адреса на ША, МП вырабатывает синхросигнал С, а на шину данных ШД выдает байт снова состояния, значения разрядов которого (см. таблицу 1) используются далее для формирования управляющих сигналов, действующих в течение всего текущего цикла. Для сохранения на время выполнения цикла "слово состояния" записывается в регистр-защелку.
Рис. 6 - Функциональная схема выборки КОП
Таблица 1 |
Разряд |
Обозначение |
Назначение |
D0 |
INTA |
Сигнал подтверждения прерывания. Используется для разрешения выдачи на ШД первой команды после прерывания при активном сигнале "П" |
D1 |
WR |
Указывает, что операция в текущем цикле цикле (при WR=1) является операцией записи (при WR=0) или чтения |
D2 |
STACK |
Означает наличие на шине адреса содержимого указателя стека |
D3 |
HLTA |
Сигнал подтверждения команды останова |
D4 |
OUT |
Указывает, что в текущем цикле выполняется операция вывода |
D5 |
M1 |
Указывает, что текущий цикл служит для выборки первого байта команды |
D6 |
IMP |
Указывает, что в текущем цикле выполняется операция ввода |
D7 |
MEMR |
Указывает, что в текущем цикле производится чтение памяти |
Осуществляется это следующим образом (рис. 6). После появления (в такте Т1 по положительному фронту импульса Ф2) стробирующего сигнала С на шине данных находится байт "слова состояния". В начале такта Т2 положительным фронтом импульса Ф1 на выходе ГТИ формируется строб СТС, которым "слово состояния" записывается во внешний регистр Рг.СС. Положительным фронтом Ф2 заканчивается сигнал С и МП формирует сигнал приема П, который совместно с седьмым разрядом регистра-защелки "слова состояния" используется для формирования системного управляющего сигнала ЧТ.Памяти — чтение памяти, и данные (код команды) выставляются на ШД. Далее проводится анализ состояния входного сигнала готовности ГТ и захвата ЗХ. При наличии высокого уровня сигнала ЗХ микропроцессор выдает сигнал подтверждения захвата ПЗХ, по наличию которого МС берет управление на себя. При отсутствии сигнала "ГТ" микропроцессор сигналом ОЖ сообщает МС о переходе в режим ожидания, который может длиться до появления сигнала ГТ (неограниченное количество тактов). При наличии сигнала ГТ осуществляется переход к такту ТЗ.
В такте ТЗ по наличию сигнала ЧТ.Памяти и спаду Ф1 производится запись данных во внутренний регистр команд. Положительным фронтом Ф2 оканчивается сигнал прием (П) и сигнал ЧТ.Памяти.
В такте Т4 принятый код операции дешифрируется и передается в управляющее устройство для формирования управляющих сигналов, обеспечивающих внутренние пересылки. Выясняется, требуется ли дополнительное обращение к памяти. Если дополнительные обращения не требуются, то в такте Т4 операция выполняется или требуется для этого такт Т5. Если требуется дополнительное обращение к памяти, то на такте Т4 завершается цикл М1 и привлекается цикл М2 или М2 и МЗ.
Каждая команда заканчивается анализом сигнала ЗПР (запрос прерывания). При наличии сигнала ЗПР МП переходит к выполнению особого цикла М8 обслуживания прерывания, который характеризуется тем, что при его выполнении счетчик команд не увеличивает свое содержание на 1, а МП выдает сигнал подтверждения прерывания — РПР. В этом случае из устройства, запросившего прерывание, должна поступить команда, организующая прерывание. Однако сигнал ЗПР будет воспринят МП в том случае, если прежде специальной командой EI триггер запроса прерывания будет установлен. В противном случае сигнал ЗПР игнорируется, содержимое счетчика команд увеличивается на 1, и начинается выполнение цикла М1 следующей команды.
Таблица 1 расшифровывает значение каждого разряда "слова состояния" МП, записанного в регистр-защелку. Зная содержимое каждого разряда регистра-защелки, по табл. 2 можно определить, какой машинный цикл выполняется микропроцессором.
Таблица 2 |
Машинный цикл |
Разряды регистра состояния | |||||||
D0 |
D1 |
D2 |
D3 |
D4 |
D5 |
D6 |
D7 | |
M1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
M2 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
M3 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
M4 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
M5 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
M6 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
M7 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
M8 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
M9 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
M10 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
Режим начальной установки используется при включении микропроцессора (МП). В режиме начальной установки счетчик команд PC микропроцессора обнуляется, а на шине адреса ША, следовательно, выставляется шестнадцатеричный адрес ячейки памяти 0000. Дальнейшие действия МП, как известно, сводятся к реализации цикла М1 (чтение кода операции). Следовательно, в «нулевой» ячейке памяти должна быть записана любая команда, с которой начинается выполнение программы. Чаще всего в эту ячейку записывают команду безусловного перехода к области памяти, где располагается управляющая программа системы. Таким образом, режим начальной установки обеспечивает запуск МП.
Практически режим начальной установки реализуется подачей на вход СБР (Reset) МП сигнала низкого уровня, который может быть сформирован либо в момент включения питания, либо нажатием кнопки сброса Кн, подключенной ко входу СБ.в ГТИ (рис. 1). В момент включения источника питания +5 В конденсатор С разряжается, напряжение на входе СБ.в ГТИ равно нулю, что позволяет ГТИ сформировать на своем входе сигнал СБР низкого уровня. После заряда конденсатора С током через резистор R сигнал СБР равен 1, и МП начинает выполнять цикл М1 первой команды программы.
Рис. 1 - Начальная установка
При нажатии на кнопку Кн конденсатор С разряжается и на выходе ГТИ возникает сигнал сброса СБР. При размыкании кнопки КН процедура зарядки конденсатора повторится, что приведет к снятию сигнала СБР. Напомним, что по сигналу СБР в МП сбрасывается триггер прерывания, а для его установки необходимо выполнить команду EI. В противном случае запросы на прерывания игнорируются.
Режим ожидания
В ряде случаев быстродействие МП оказывается несогласованным с быстродействием внешнего устройства (ВУ). Например, быстродействие интегральных схем (ИС) памяти или устройства цифропечати существенно ниже быстродействия МП. В этих случаях необходимо приостановить действие МП, т. е. растянуть машинный цикл на целое количество тактов.
Аналогичная ситуация может возникнуть при реализации поциклового и покомандного режимов работы МП. Необходимость работы МП в этих режимах возникает при отладке программ, когда после выполнения каждого машинного цикла или после выполнения команды требуется переводить МП в режим ожидания.
Режим ожидания МП реализуется путем подачи на вход ГТ микропроцессора сигнала низкого уровня. Чтобы МП отреагировал на низкий уровень сигнала ГТ в текущем машинном цикле, этот уровень должен стабилизироваться минимум за 180 нс до спадающего фронта сигнала Ф2 и сохраняться до его окончания. При соблюдении условия МП не переходит к такту ТЗ, а входит в состояние ожидания TW (рис. 2), которое может сохраняться как угодно долго. В состоянии TW на шине адреса сохраняется выданный в такте Т1 адрес ячейки памяти (или любого регистра ВУ) и сигнал ЧТ, если текущий цикл связан с чтением данных в МП. Перейдя в режим ожидания, МП информирует ВУ о своем состоянии сигналом ОЖ, который формируется по нарастающему фронту сигнала Ф1.
Рис. 2 - Режим ожидания
Продолжительность ожидания определяется моментом подачи на вход ГТ сигнала высокого уровня от ВУ системы. Чтобы МП отреагировал на готовность ВУ, высокий уровень сигнала ГТ должен стабилизироваться не менее чем за 180 нс до спадающего фронта Ф2. После этого МП переходит к такту ТЗ и по нарастающему фронту снимает сигнал ОЖ.
Использование режима ожидания снижает производительность системы, но обеспечивает надежное согласование работы МП и ВУ с различным быстродействием.
Режим прерывания программы
Используемый для обмена данными с ВУ режим ожидания имеет очевидный недостаток - снижение производительности МП за счет бесполезной траты времени на ожидание готовности ВУ. Режим прерывания программы не имеет этого недостатка и является особенно полезным для организации работы МС в реальном масштабе времени. Сущность режима прерывания заключается в том, что ВУ обращается с запросом на обмен данными тогда, когда оно готово обменяться данными. Инициатором обмена данными является ВУ, которое выдает сигнал запроса прерывания асинхронно по отношению к МП в виде сигнала ЗПР высокого уровня. Запрос на прерывание может быть воспринят МП не всегда и может быть удовлетворен только в том случае, если до поступления сигнала ЗПР триггер запроса прерывания установлен. Для установки триггера используется специальная команда EI (разрешение прерывания). Если же после режима начальной установки команда EI не была выполнена, то запросы ВУ на прерывания игнорируются.
Возможность восприятия прерываний сигнализируется МС сигналом РПР (разрешение прерываний). Если на этом выводе МП присутствует лог. "1", то прерывание программы возможно. В противном случае запросы на прерывание игнорируются.
Инициаторами на прерывание могут быть несколько ВУ одновременно. Поэтому, если МП находится в состоянии восприятия запроса прерывания, то должны выполняться следующие действия: идентификация источника запроса прерывания; сохранение состояния МП (содержание счетчика команд PC, аккумулятора, РОН, РП) с тем, чтобы обеспечить возможность возобновления вычислений по прерванной программе; выполнение программы обработки прерывания; восстановление состояния МП и возврат к выполнению прерванной программы. Для временного запоминания состояния МП используется стековая память.
В МС на базе МП К580 реализована так называемая векторная система прерываний. Асинхронный сигнал высокого уровня ЗПР может появиться в любой момент цикла выполняемой команды. Поэтому внутренняя схема управления должна синхронизировать внешний запрос и установить соответствие с сигналами системной синхронизации, обеспечивая завершение выполнения текущей команды. В последнем такте последнего машинного цикла всех команд, кроме команды EI, при действии сигналов ЗПР=1 и РПР=1 по нарастающему фронту сигнала Ф2 устанавливается внутренний триггер прерывания. Это приводит к тому, что следующим тактом оказывается такт Т1 машинного цикла М3 (подтверждение прерывания). Он напоминает цикл М1 - выбора кода операции, так как в байте состояния установлен бит D5, но одновременно устанавливается и бит прерывания DO, который подтверждает восприятие микропроцессором запроса на прерывание, а бит D7 - считывание из памяти - сбрасывается.
Информация о работе Структура микропроцессорных систем управления