АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция
|
Функционирование микропроцессора К580ВМ80А при выполнении команд
Функционирование восьмиразрядного микропроцессора К580ВМ80А зависит от воздействующих на микросхему управляющих сигналов, которые представлены в табл.4.
Таблица 4
| Обозначение
| Наименование
| Назначение и условия возникновения
| Сигналы управления шинами
| DBIN
| Разрешение приема информации с шины данных
| Выходной сигнал. Шина данных находится в режиме приема информации.
|
| Признак выдачи информации на шину данных
| Выходной сигнал. На шину данных выдана информация для записи в запоминающее или во внешнее устройство.
| Сигналы управления прямым доступом к памяти
| HOLD
| Захват шин
| Входной сигнал. Запрос на прямой доступ к памяти со стороны внешнего устройства.
| HLDA
| Подтверждение захвата шин
| Выходной сигнал. Признак допуска внешнего устройства к шине данных и шине адреса .
| Сигналы управления прерываниями
| INT
| Запрос прерывания
| Входной сигнал. Запрос прерывания работы процессора. Проверяется в состояниях ожидания во время останова, а также в конце выполнения команды, если внутренний триггер установлен в состояние, разрешающее прерывание.
| INTE
| Разрешение прерывания
| Выходной сигнал. Разрешение прерывания. Соответствует состоянию внутреннего триггера разрешения прерывания.
|
Продолжение таблицы 4
| Обозначение
| Наименование
| Назначение и условия возникновения
| Сигналы управления асинхронной передачей данных
| READY
| Готовность к передаче данных
| Входной сигнал. Информация для обмена между запоминающим или внешним устройством и микропроцессором готова. При отсутствии сигнала готовности микропроцессор переходит в состояние ожидания.
| WAIT
| Ожидание
| Выходной сигнал. Микропроцессор находится в состоянии ожидания. При появлении сигнала готовности микропроцессор выходит из состояния ожидания.
| Сигналы общего назначения
| SYNC
| Синхронизация
| Выходной сигнал. Начало машинного цикла. По этому сигналу на шину данных микропроцессор выдает управляющее слово состояния.
| RESET
| Сброс
| Входной сигнал. Сброс. Сигнал устанавливает в нуль счетчик команд, сбрасывает триггеры захвата шин и разрешения прерывания.
| F 1, F 2
| Последовательности тактовых импульсов
| Входные сигналы. Неперекрывающиеся тактовые последовательности. Обеспечивают тактирование микропроцессора.
|
Выполнение каждой команды производится микропроцессором в строго определенной последовательности, определяемой кодом команды, и синхронизируется во времени двумя последовательностями неперекрывающихся импульсов, поступающими от тактового генератора. В зависимости от вида команды для выполнения может потребоваться от одного до пяти машинных циклов. Машинный цикл – это время, требуемое для извлечения одного байта информации и выполнения команды. В каждом цикле производится обращение микропроцессора к памяти или устройствам ввода/вывода. Машинный цикл может состоять из 3–5 машинных тактов.
Микропроцессор К580ВМ80А имеет десять различных машинных циклов:
1. извлечение кода команды (кода операции);
2. чтение данных из памяти;
3. запись данных в память;
4. чтение данных из стека;
5. запись данных в стек;
6. ввод данных из внешнего устройства;
7. запись данных во внешнее устройство;
8. обслуживание прерывания;
9. останов;
10. обслуживание прерывания при останове.
Первым машинным циклом при выполнении любой команды всегда является цикл извлечения кода команды. На первом такте каждого машинного цикла микропроцессор указывает тип выполняемого цикла с помощью восьмиразрядного слова состояния, выдаваемого на шину данных. Информация слова состояния отображает действия, производимые в текущем цикле. Назначение каждого разряда слова состояния расшифровывается в табл.5. Коды машинных циклов представлены в табл.6.
Для нормального функционирования микропроцессорной системы недостаточно управляющих сигналов, генерируемых микропроцессором. Микропроцессорная система в каждом машинном цикле должна получать наиболее полную информацию о состоянии микропроцессора. В условиях, когда внешних выводов микросхемы К580ВМ80А для индикации внутреннего состояния микропроцессора недостаточно, эта задача решается с использованием мультиплексирования шины данных и представления внутреннего состояния микропроцессора на внешнем по отношению к микропроцессору регистре состояния. Запись в регистр состояния микропроцессора восьмиразрядного слова состояния, выдаваемого на первом такте каждого машинного цикла на шину данных, осуществляется с помощью специальным образом сформированного сигнала синхронизации. Слово состояния, записанное в регистр состояния микропроцессора, остается неизменным в течение всего машинного цикла. Сигналы с восьми выходов регистра состояния микропроцессора поступают на шину управления микропроцессорной системы. Каждый разряд регистра состояния микропроцессора передается на соответствующие управляющие входы адаптеров или схем сопряжения с устройствами ввода/вывода, определяя тем самым их режим функционирования в соответствии с текущим состоянием микропроцессора.
Таблица 5
| Разряд
| Обозначение
| Назначение
| D 0
| INTA – подтверждение прерывания
(interrupt acknoledge)
| Используется для стробирования сигнала, организующего прерывание при наличии сигнала DBIN, разрешающего прием информации с шины данных.
| D 1
| – запись–вывод (write–output)
| При нулевом значении указывает, что в текущем машинном цикле будет производиться запись в память или вывод данных. В противном случае будет выполняться ввод или чтение данных из памяти.
| D 2
| STACK – стек
| Указывает, что на шине адреса находится содержимое указателя стека, адресующегося к верхней ячейке стека.
| D 3
| HLTA – подтверждение останова
(halt acknowledge)
| Подтверждает выполнение процессором операции останова.
| D 4
| OUT – вывод
(output cycle)
| Показывает, что на адресной шине находится адрес устройства вывода, причем шина данных будет содержать выводимую информацию, когда появится нулевой сигнал , являющийся признаком выдачи информации на шину данных.
| D 5
| M 1 – извлечение кода команды
| Указывает на нахождение микропроцессора в цикле извлечения первого байта команды.
| D 6
| INP – ввод
(input cycle)
| Показывает, что на адресной шине находится адрес устройства ввода, причем ввод информации будет производиться на шину данных, когда появится сигнал DBIN, разрешающий прием информации.
| D 7
| MEMR – чтение
(memory read)
| Указывает, что шина данных будет использована в текущем цикле для чтения данных из памяти.
|
Таблица 6
| Машинный цикл
| Слово состояния микропроцессора
| INTA
|
| STACK
| HLTA
| OUT
| M 1
| INP
| MEMR
| Извлечение кода команды
|
|
|
|
|
|
|
|
| Чтение данных из памяти
|
|
|
|
|
|
|
|
| Запись данных в память
|
|
|
|
|
|
|
|
| Чтение данных из стека
|
|
|
|
|
|
|
|
| Запись данных в стек
|
|
|
|
|
|
|
|
| Ввод данных во внешнее устройство
|
|
|
|
|
|
|
|
| Вывод данных во внешнее устройство
|
|
|
|
|
|
|
|
| Обслуживание прерывания
|
|
|
|
|
|
|
|
| Останов
|
|
|
|
|
|
|
|
| Обслуживание прерывания при останове
|
|
|
|
|
|
|
|
|
При подаче на микропроцессор сигнала RESET начинается первый такт машинного цикла. Происходит передача содержимого счетчика команд по шине адреса в память и выдача слова состояния на шину данных в виде параллельного восьмиразрядного кода. На втором такте анализируются сигналы READY, HOLD и HLTA. Если или то микропроцессор переходит в состояние ожидания или состояние останова соответственно. В состоянии ожидания микропроцессор будет находиться до тех пор, пока не поступит сигнал . Из состояния останова микропроцессор может выйти при поступлении сигналов , и при установленном в единичное состояние триггере разрешения прерывания.
Если , то микропроцессор переходит к анализу сигнала HOLD. При вырабатывается сигнал HLDA и микропроцессор переходит в режим захвата, предоставляя шины адреса и данных внешнему устройству для реализации режима прямого доступа к памяти. Если текущий машинный цикл не является циклом записи, то сигнал HLDA выдается в четвертом такте. Переход к режиму захвата ранее не разрешается, поскольку в третьем такте микропроцессор должен закончить обмен информацией с регистром состояния. При наличии в текущем машинном цикле четвертого и пятого тактов они совмещаются с режимом захвата. После освобождения шин внешнее устройство устанавливает сигнал и микропроцессор начинает выполнять следующий машинный цикл прерванной команды или первый цикл новой команды.
После выполнения третьего такта микропроцессор в зависимости от типа машинного цикла может перейти к четвертому такту или закончить текущий цикл. После четвертого такта ситуация аналогична. Во время четвертого и пятого тактов обращений к внешним устройствам нет, и микропроцессор выполняет внутренние операции.
В конце машинного цикла анализируется сигнал HOLD. Если , то выполнение действий режима захвата продолжается. При микропроцессор заканчивает прерванную команду. По окончании последнего машинного цикла команды анализируется сигнал INT. Если и внутренний триггер разрешения прерывания находится в состоянии единицы, то внутренний триггер запроса прерывания устанавливается в единицу и микропроцессор выдает сигнал INTE. Внутренний триггер разрешения прерывания устанавливается в единицу командой EI, а сбрасывается в ноль командой DI. При отсутствии запросов на прерывание микропроцессор переходит к выполнению следующей команды.
Подача сигнала длительностью не менее трех периодов тактовой частоты устанавливает микропроцессор в начальное состояние. Программный счетчик и триггер разрешения прерывания сбрасываются в нулевые состояния, а схема управления начинает формировать первый такт машинного цикла извлечения кода команды.
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | Поиск по сайту:
|