Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ALL_Лекции_Эмпт_2ч_Глот.doc
Скачиваний:
4
Добавлен:
19.11.2019
Размер:
941.06 Кб
Скачать

9.3.3. Слово - состояния мп.

Для нормального функционирования МП - системы недостаточ-

но управляющих сигналов, генерируемых МП. МП - система в каж-

дом МЦ должна получать более полную информацию о состоянии МП.

В условиях "узкого" интерфейса МП, когда внешних выводов для

индикации внутреннего состояния (слова состояния) МП недоста-

точно, эта задача решается с использованием мультиплексирова-

ния шины данных и представления внутреннего состояния МП на

внешнем по отношению к МП регистре слова состояния РСС.

┌──────┐ ┌─────────┬─────────┬

│D0-D7 ├────────────────\ │ T1 │ T2 │

│ ├───┐ ┌──────────/ ШД ├─────────┼─────────┼

│ М П │ │ │ ┌──────┐ │ ___ ___

│ │ │ └────\│D0-D7 ├─>PSW0 Ф1 │/ \_____/ \_____

│ │ └──────/│Регистр . │ ___ ___

│ ├──────────>│состо-│ . Ф2 │______/ \_____/

└──────┘ СИНХРО │яния │ . │ _______

│(РСС) ├─>PSW7 СИНХРО│______/ \_____

└──────┘ │_________ __________

ШД │_________X__________

│____________ _______

Рис.9.4. РСС │____________X_______

Процессор в первом такте каждого МЦ генерирует на шине

данных слово состояния СС (PSW), которое содержит информацию о

процессах, происходящих в МП. Так как сигнал синхронизации

СИНХРО вырабатывается в начале каждого МЦ, то он используется

в качестве сигнала, идентифицирующего информацию, представлен-

ную на шине данных как СС.

- 61 -

СС загружается во внешний регистр РСС под воздействием

сигнала синхронизации СИНХРО. Сигналы, которые представлены на

выходе 8 - разрядного регистра состояния, используются в ка-

честве сигналов управления переферией МП - системы. Всего в МП

К580 десять типов машинного цикла и соответственно десять ко-

дов СС, идентифицирующих цикл. Каждый разряд слова состояния

заводится на соответствующие управляющие входы адаптеров или

схем сопряжения с УВВ, определяя тем самым их режим функциони-

рования в соответствии с данным текущим состоянием МП.

────┬──────┬────┬────┬────┬────┬────┬────┬────┬────┬───┬──────┐

Раз-│Сигнал│Вы- │Чте-│Зап-│Чте-│Зап-│Чте-│Зап-│Пре-│Ос-│Преры-│

ряд │состо-│бор-│ние │ись │ние │ись │ние │ись │ры- │та-│вание │

│яния │ка │из │в │из │в │из │в │ва- │нов│при │

│ │ком-│па- │па- │сте-│стек│УВВ │УВВ │ние │ │оста- │

│ │анды│мяти│мять│ка │ │ │ │ │ │нове │

────┼──────┼────┼────┼────┼────┼────┼────┼────┼────┼───┼──────┤

PSW0│Подтв.│ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ 1 │ 0 │ 1 │

│прерыв. │ │ │ │ │ │ │ │ │ │

PSW1│Запись│ 1 │ 1 │ 0 │ 1 │ 0 │ 1 │ 0 │ 1 │ 1 │ 1 │

│ Вывод│ │ │ │ │ │ │ │ │ │ │

PSW2│Стек │ 0 │ 0 │ 0 │ 1 │ 1 │ 0 │ 0 │ 0 │ 0 │ 0 │

PSW3│Подтв.│ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ 1 │ 1 │

│остан.│ │ │ │ │ │ │ │ │ │ │

PSW4│Вывод │ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ 1 │ 0 │ 0 │ 0 │

PSW5│ M1 │ 1 │ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ 1 │

PSW6│Ввод │ 0 │ 0 │ 0 │ 0 │ 0 │ 1 │ 0 │ 0 │ 0 │ 0 │

PSW7│Чтение│ 1 │ 1 │ 0 │ 1 │ 0 │ 0 │ 0 │ 0 │ 1 │ 0 │

────┴──────┴────┴────┴────┴────┴────┴────┴────┴────┴───┴──────┘

Таким образом в условиях "узкого" интерфейса МП, управле-

ние МП - системой осуществляется генерацией управляющих воз-

действий на двух уровнях:

1.На уровне управляющих сигналов по шине управления

собственно МП в каждом такте работы первичного автомата;

2.На уровне микроприказов путем генерации слова состояния

в каждом МЦ.

Выходы регистра слова состояния и управляющие линии кор-

пуса МП образуют ШУ МП - системы со сложным, многофункциональ-

ным переферийным оборудованием. При этом использование времен-

- 62 -

ного мультиплексирования шины данных для вывода на внешний ре-

гистр состояния сигналов управления МП - системой снижает об-

щую производительность системы.

9.3.4. УПРАВЛЯЮЩЕЕ УСТРОЙСТВО МП.

Необходимо отметить важное обстоятельство в управлении МП

- системой. В режиме временного мультиплексирования шины дан-

ных МП выдает информацию о своем внутреннем состоянии в начале

каждого МЦ. Для согласованной работы МП и переферийного обору-

дования этого недостаточно. Однако воспользоваться приемом

временного мультиплексирования шины данных для вывода на ре-

гистр состояния информации о состоянии первичного автомата не

представляется возможным, так как это повлечет за собой ка-

тастрофическое снижение производительности МП - системы. Поэ-

тому в МП для индикации внутренних состояний первичного авто-

мата, для управления системой по состоянию используется комби-

нация прямых управляющих линий в шине управления собственно

МП, которая подсоединяется к внешним схемам. Сигналы на этих

управляющих линиях (РПР, ЧТ, ЗП, ЖДУ) изменяются на выходе МП

в каждом состоянии первичного автомата. т.е. они отражают пе-

реходы первичного автомата из состояния Ti в состояние Ti+1.

Такая комбинация: слово состояния МП, передаваемого в регистр

состояния один раз за МЦ, и набор управляющих сигналов, кото-

рые изменяются в каждом такте, позволяют организовать эффек-

тивное управление МП - системой.

Временная диаграмма определяет основной цикл команды МП в

условиях, когда присутствует внешний управляющий сигнал ГОТОВ,

информирующий о готовности переферийного оборудования к обмену

с МП (см. рисунок). В первом такте синхронизации Т1 МП выстав-

ляет на шине адреса адрес первой очередной команды А0 - А15.

- 63 -

Начинается цикл выборки команды. Одновременно на линии синхро-

низации СИНХРО появляется единичный сигнал, который, во-пер-

вых, идентифицирует информацию на шине данных D0 - D7 как сло-

во состояния процессора (ССП) и загружает его во внешний ре-

гистр состояния, а во вторых свидетельствует о начале машинно-

го цикла ВЫБОРКА.

По окончании сигнала синхронизации буферная схема ШД пе-

реводит ШД в режим ввода, о чем свидетельствует сигнал на ли-

нии ЧТ ШУ. В такте Т2 МП осуществляет проверку готовности

внешнего устройства к обмену в том случае, если адаптер внеш-

него устройства или память генерирует сигнал ГОТОВ. Первичный

автомат переходит в состояние ожидания. В этом состоянии МП

будет находиться до тех пор, пока на линии управления ГОТОВ не

появится единичный сигнал, который будет свидетельствовать,

что память или переферийное оборудование готовы к обмену. Пока

первичный автомат находится в состоянии ожидания Tw МП проста-

ивает. Из состояний T2 или Tw первичный автомат переходит в

состояние Т3, в котором производится чтение или запись слова в

память. Состояния Т4 и Т5 отводятся для реализации операции,

заданной кодом команды. Выполнение некоторых сложных команд

может потребовать от первичного автомата неоднократного прохо-

да по циклу состояний от Т2 до Т5.

РАБОТА ПЕРВИЧНОГО УПРАВЛЯЮЩЕГО АВТОМАТА В РЕЖИМЕ ПРЕРЫВАНИЯ

Переферийное оборудование МП - системы может запросить

прерывание текущей программы у МП путем подачи сигнала ЗПР на

вход прерывания. Сигнал прерывания может возникнуть в любой

момент цикла команды. Обработка прерываний организована таким

образом, что запрос прерывания фиксируется во внутреннем триг-

гере запроса прерывания только при переходе первичного авто-

- 64 -

мата к циклу М1, т.е. к начальному циклу очередной команды, и

только в случае, если программным путем было разрешено преры-

вание, т.е. внутренний триггер разрешения прерывания РПР нахо-

дится с состоянии "1". Выполнение этих условий приведет к то-

му, что следующий МЦ М1 будет циклом обработки запроса преры-

вания. Машинный цикл прерывания, который начинается в такте Т1

в условиях разрешенного прерывания, в основных чертах повторя-

ет МЦ ВЫБОРКА.

РАБОТА ПЕРВИЧНОГО УПРАВЛЯЮЩЕГО АВТОМАТА В РЕЖИМЕ

ПРЯМОГО ДОСТУПА К ПАМЯТИ.

Управляющее устройство МП позволяет выполнять операции с

прямым доступом к памяти (ПДП). При этом обмен данными осу-

ществляется без участия процессора. Режим ПДП наиболее це-

лесообразен при обмене блоками данных. В этом случае обмен

данными между оперативной памятью и переферийным устройством

производится быстрее, чем при программно - управляемом обмене.

Выставляя на соответствующей линии запрос ПДП, переферийное

устройство приостанавливает вычислительный процесс в МП и осу-

ществляет управление по шинам адреса и данных. Первичный авто-

мат при этом вырабатывает управляющие сигналы, переводящие бу-

ферные схемы шин адреса и данных МП в высокоимпедансное состо-

яние. Таким образом реализуется принцип захвата шины МП - сис-

темой для ввода - вывода данных. Т.к. в режиме ПДП обмен дан-

ными происходит без участия МП, содержимое всех регистров МП

остается неизменным.

.

- 65 -

┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐

│ T1 │ T2 │ Tw │ T3 │ T4 │ T5 │

___ ___ ___ ___ ___ ___

F1 / \_____/ \_____/ \_____/ \_____/ \_____/ \_____

___ ___ ___ ___ ___ ____

F2 _____/ \_____/ \_____/ \_____/ \_____/ \_____/

_______________________________________ ______________

A0-A15_____X_______________________________________X_не определено

_________ _____________________________

D0-D7 _____X_________X_____режим_записи____________>──────────────

____ ___________________ высокоимпедансное

D0-D7 ____X_____режим_чтения__>────────────────────────

_________ состояние буфера

СИНХРО_____/ \____________________________________________

__________ __________________________________

ГОТОВ \______________/

_________

ЖДУ ____________________/ \_____________________________

___________________

ЧТ _______________/ \________________________

__ ____________________ ___________________

ЗП \___________________/

│ │выдача │ │ │ │ │

│ │слова │ данные │ │ │ │

│ │состояния│ │ │ │ │

├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤

│A0 - A15 │Проверка │НЕ обязат. Выборка │ Не обязательно │

│адрес па-│готовности ========│ данных │ ============== │

│мяти или │ГТ, ЗПДП,│согласо- │ или │ выполнение │

│номер УВВ│ ОСТ │вание с │ команды │ операции │

│D0 - D7 │ │временем │ или │ (если нужно) │

│информ. о│ │доступа к│ запись │ │ │

│сост. МП │ │памяти │ данных │ │ │

└─────────┴─────────┴─────────┴─────────┴─────────┴─────────┘

Рис.9.5.

.

- 66 -

9.4. СИСТЕМА КОМАНД МИКРОПРОЦЕССОРА К580.

Для лучшего понимания особенностей системы команд МП

воспользуемся программистской моделью МП, соответствующей уп-

рощенной структуре МП.

Программно - доступные узлы Память

7───────────────0 регистр- ┌───────────────┐

│ А │ аккумулятор │ │

└───────────────┘ │ Постоянная │

15──────────────────────────────0 счетчик │ память │

│ СК(SP) │ команд │ стандартных │

└───────────────────────────────┘ │ программ и │

┌───────────────────────────────┐ указатель │ констант │

│ УС(SP) │ стека │ │

└───────────────────────────────┘ └\/\/\/\/\/\/\/\┘

┌───────────────┬───────────────┐ регистр ┌\/\/\/\/\/\/\/\┐

│ H │ L │ косвенного │ │

└───────────────┴───────────────┘ адреса │ О З У │

┌───────────────┐ │ │

│ B │ │ программ и │

├───────────────┤ │ │

│ C │ │ данных │

├───────────────┤ Р О Н ы │ │

│ D │ └\/\/\/\/\/\/\/\┘

├───────────────┤ ┌\/\/\/\/\/\/\/\┐

│ E │ │ │

└───────────────┘ │ │

┌─┬─┬─┬─┬─┬─┬─┬─┐ регистр │ │

РП(F) │ │ │▒│ │▒│ │▒│ │ признаков │ С Т Е К │

└┬┴┬┴─┴┬┴─┴┬┴─┴┬┘ │ │

│ │ │ │ └─CY-перенос │ │

│ │ │ └───── P-паритет │ │

│ │ └─────────AC-вспомогат. └\/\/\/\/\/\/\/\┘

│ │ перенос

│ └───────────── Z-нуль

└─────────────── S-знак

Программно - недоступные узлы

15──────────────────────────────0

│ РА │ регистр адреса

└───────────────────────────────┘

┌────────┐ 7───────0 7───────0

│ │ \ \/ / управляющее устройство

│ У У │ \ А Л У / и АЛУ

│ │ \ /

└────────┘ 7──────────0

7───────────────0

│ T │ регистры

├───────────────┤ временного

│ W │ хранения

├───────────────┤ данных

│ Z │

Рис.9.6. └───────────────┘

- 67 -

Модель содержит только узлы, наиболее важные для понима-

ния программистом процесса работы МП.

В системе команд МП имеются однобайтные, двухбайтные и

трехбайтные команды. Формат команды и тип адресации задаются в

команде неявно кодом операции. Адрес команды определяется ад-

ресом ее первого байта.

возможные поля

┌───┬─────┬─────┐

│7 6│5 3│2 0│ однобайтная команда

└─┬─┴──┬──┴──┬──┘

│ │ └─ регистр - источник

│ └─────── регистр - приемник

└──────────── код операции

┌──1-й байт─────┬───2-й байт────┐

│ код операции │непоср.операнд │ двухбайтная команда

└───────────────┴─или порт в/в──┘

┌──1-й байт──┬────2-й байт─────┬────3-й байт─────┐ трехбайтная

│код операции│младший полуадрес│старший полуадрес│ команда

└────────────┴─────────────────┴─────────────────┘

.

- 68 -

Варианты однобайтных команд

┌───┬─────┬─────┐ ▒ - поле кода операции

│▒▒▒│D D D│S S S│

└───┴─────┴─────┘ DDD - трехбайтный номер регистра - приемника

┌───┬─────┬─────┐

│▒▒▒│D D D│▒▒▒▒▒│ SSS - трехбайтный номер регистра - источника

└───┴─────┴─────┘

┌─────────┬─────┐ RP - двухразрядный указатель адресующий

│▒▒▒▒▒▒▒▒▒│S S S│

└─────────┴─────┘ пару регистров

┌───┬───┬───────┐

│▒▒▒│R P│▒▒▒▒▒▒▒│ CND - трехразрядный указатель условия

└───┴───┴───────┘

┌───────────────┐ передачи управления

│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│

└───────────────┘ NUM - трехразрядный код, определяющий адрес

┌───┬─────┬─────┐

│▒▒▒│C N D│▒▒▒▒▒│ вектора прерывания

└───┴─────┴─────┘

┌───┬─────┬─────┐

│▒▒▒│N U M│▒▒▒▒▒│

└───┴─────┴─────┘

Варианты двухбайтных команд

┌───┬─────┬─────┬───────────────┐

│▒▒▒│D D D│▒▒▒▒▒│непоср. операнд│

└───┴─────┴─────┴───────────────┘

┌───────────────┬───────────────┐

│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│непоср. операнд│

└───────────────┴─или порт в/в──┘

Варианты трехбайтных команд

┌───┬───┬───────┬─────────────────┬─────────────────┐

│▒▒▒│R P│▒▒▒▒▒▒▒│младший полуадрес│старший полуадрес│

└───┴───┴───────┴─────────────────┴─────────────────┘

┌───────────────┬─────────────────┬─────────────────┐

│▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│младший полуадрес│старший полуадрес│

└───────────────┴─────────────────┴─────────────────┘

┌───┬─────┬─────┬─────────────────┬─────────────────┐

│▒▒▒│C N D│▒▒▒▒▒│младший полуадрес│старший полуадрес│

└───┴─────┴─────┴─────────────────┴─────────────────┘

В командах условного перехода 3-х разрядный код CND зада-

ет в 3-х байтной команде условие передачи управления по ад-

ресу, указанному в команде. Возможны задания 8 вариантов усло-

вия переходов:

- по наличию переноса;

- отсутствию переноса;

- нулевому результату;

- 69 -

- ненулевому результату;

- положительному результату;

- отрицательному результату;

- четному результату;

- нечетному результату;

9.4.1. ГРУППЫ КОМАНД МП

Систему команд принято разделять на группы команд в соот-

ветствии с их функциональным назначением. По этому признаку

выделяют пять групп:

1)пересылки информации;

2)арифметических операций;

3)логических операций;

4)ветвления;

5)управления.

1. ГРУППА КОМАНД ПЕРЕСЫЛКИ.

Группу команд пересылки информации образуют команды орга-

низации двустороннего обмена между внешней памятью и блоком

РОН или между различными регистрами блока РОН. Признаки состо-

яния МП не изменяются в процессе выполнения этих команд

MOV r1, r2 (mov register) - передать из регистра в регистр

┌───┬─────┬─────┐

│0 1│D D D│S S S│ (r1) <- (r2)

└───┴─────┴─────┘

Содержимое регистра r2 копируется в регистр r1. При этом ста-

рое содержимое r1 уничтожается, а содержимое r2 не меняется.

LDAX rp (load A indirect) - загрузить А с косвенной ад-

ресацией

┌───┬───┬───────┐

│0 0│R P│1 0 1 0│ (A) <─ ((rp))

└───┴───┴───────┘

Содержимое ячейки памяти, адрес которой содержится в паре ад-

ресуемых командой регистров, загружается в Аккумулятор.

- 70 -

STAX rp (Store A indirect)

┌───┬───┬───────┐

│0 0│R P│0 0 1 0│ ((rp)) <─ A

└───┴───┴───────┘

Содержимое Аккумулятора загружается в ячейку памяти, адрес ко-

торой содержится в указанной паре регистров.

PUSH RP - загрузить в стек

┌───┬───┬───────┐

│1 1│R P│0 1 0 1│

└───┴───┴───────┘

Содержимое пары регистров загружается в стек. При этом значе-

ние указателя стека уменьшается на 2.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]