Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

шпоргалка / Грицюк

.doc
Скачиваний:
53
Добавлен:
21.02.2014
Размер:
85.5 Кб
Скачать

Временная диаграмма работы МП БИС (процесса получения кода команды)

Т1

Т2

Т3

Т4

Т5

Ф1

Ф2

С

D0-D7

Импульс записи в РгСС

Выход РгСС

Приём

Готовность

А0 - А15

код

командыы

слово

состояния

отключена МД

Память (ЗП)

1 2 3 4 5

1 – МП выдаёт адрес на МА, слово состояния на МД

2 – Запись слова состояния, анализ сигналов Готовность, Захват, Об.Ост.

3 – Запись кода команды (данных) в МП БИС

4 – Дешифрация кода команды

5 – Время дополнительного Т, если потребуется

Выполнение любой команды начинается с цикла выборки команды М1.

На такте Т1 программный счётчик выдаёт на шину адреса (ША) адрес ячейки памяти, из которой будет считываться код команды. При этом его содержимое автоматически увеличивается на 1. Положительным фронтом Ф2 формируется синхронизация С и выдаётся слово состояния на шину данных (ШД). Сигнал “Приём”, управляемый двунаправленным шинным формирователем (ДШФ) магистрали данных (МД), на Т1 равен 0, что позволяет слову состояния поступить на магистраль данных (МД) микроЭВМ.

На Т2 слово состояния записывается в РгСС. Положительным фронтом сигнала Ф2 формируется единичный сигнал “Приём”, позволяющий данным поступать на вход МП БИС через ДШФ. Из сигнала “Приём” и восьмого разряда (D7) слова состояния формируется сигнал на чтение данных из памяти “Память”, позволяющий данным поступать из памяти на магистраль данных. Изменения данных на этом такте восприниматься МП не будет.

На такте Т3 в фиксированные моменты времени осуществляется запись данных, анализируется состояние сигналов “Готовность”, “Захват” и “Обработка останова” при нулевом состоянии сигнала. Запрос захвата в разряде D4 слова состояния и единичном сигнале “Готовность” МП БИС переходит к выполнению такта Т3. Если к моменту появления отрицательного фронта сигнала Ф2 на такте Т2 сигнал “Готовность” будет иметь нулевой потенциал, то МП БИС переходит в режим ожидания. В этом режиме приостанавливается процесс обработки данных и формируется единичный сигнал на входе “Ожидание”, подтверждающий это состояние. Время ожидания выражается целым числом тактов и может длиться бесконечно долго. На каждом такте в этом режиме при отрицательном фронте сигнала Ф2 будет проверяться состояние сигнала “Готовность”. На этом такте в момент отрицательного фронта сигнала Ф1 производится запись данных во внутренний регистр кода команд. Положительным фронтом Ф2 оканчивается сигнал “Приём” и сигнал “Чтение памяти”. Импульс на выходе “Приём” формируется в машинных циклах извлечение кода команды, чтение данных из памяти, прерывание, чтение из стека или внешнего устройства.

На тактах Т4, Т5 дешифратор расшифровывает код команды, определяет количество байт в команде, формирует команды на внутренние пересылки данных и подготавливает МП к выполнению следующих машинных циклов.

Схема чтения кода команды (данных) из памяти

МА

1

На машинном цикле М1 МП БИС будет воспринимать числа, полученные на такте Т3 по магистрали данных как код команды; а на машинных циклах чтения данных из памяти, стека или внешнего устройства как данные.

Схема записи данных в память (внешние устройства)

ДШФ

А0-А15

D0-D7

РгСС

1

Память

С

Ф1

МП БИС

МД

D4

П

ЗП

0

При записи данных анализируется состояние сигналов “Захват” и “Обработка останова”.

Режим “Захват” (Зх) используется для останова управления МП БИС работы микроЭВМ. В этом случае выходные магистрали МП переводятся в третье состояние и отключаются от магистралей микроЭВМ, обеспечивая возможность обмена информацией с микроЭВМ по КПДП (канал прямого доступа к памяти). Режим Зх осуществляется подачей1 на вход З.Зх МП БИС подтверждает переход в режим Зх путём выдачи единичного сигнала на выход подтверждения захвата. Состояние Зх длится целое число тактов, установка нуля на входе З.Зх проверяется на каждом сигнале Ф2 и при его наличии на следующем импульсе режим Зх будет прекращён и МП БИС перейдёт к выполнению следующего цикла, начиная с такта Т1.

Режим “Останов” является результатом выполнения команды HALT. Находясь в этом режиме, магистрали МП БИС не отключаются от микроЭВМ, а МП отмечает время в течение которого он ничего не выполняет. Состояние микроЭВМ в этом режиме аналогично состоянию “Ожидание” за исключением того, что это состояние устанавливается программно. Обычно режим “Останов” оканчивается, когда внешние устройства выдают запрос на обслуживание. Одним из методов формирования запроса на обслуживание является подача запроса прерывания на вход запроса прерывания МП БИС. Если сигналы прерывания не воспринимаются МП БИС, например, после выполнения команды DI – запрет прерывания, то выйти из состояния “Останов” можно подачей сигнала начальной установки на вход “Сброс” МП БИС. Специфика режима “Останов” заключается в том, что в этом состоянии МП БИС может входить в режим Зх и выходить из него. В режиме “Останов” запрос на захват не будет удовлетворяться, если на вход З.Пр был подан единичный сигнал, но не было подтверждено его обслуживание. После подтверждения получения прерывания, т.е. при нулевом уровне на выходе П.Пр, микроЭВМ может выйти в состояние Зх.

Обслуживание запросов на прерывание

Внешние устройства выдают сигнал З.Пр асинхронно по отношению к работе МП БИС путём подачи 1 на вход З.Пр. Запрос может быть удовлетворён только в том случае, если МП БИС находится в состоянии разрешения восприятия запросов на прерывание. МП БИС автоматически устанавливается в режим запрета после выполнения начальной установки, а также после начала обслуживания З.Пр.

Управление состоянием приёма З.Пр может осуществляться с помощью команд DI – запрет прерываний и EI – разрешение прерываний. МП БИС указывает на возможность П.Пр на входе разрешения прерываний Р.Пр. Если на выходе присутствует 1, то запросы прерывания могут быть восприняты, в противном случает они не воспринимаются. Если запрос прерывания воспринят, то начинается цикл обслуживания прерывания. На первом машинном цикле обслуживания прерываний МП БИС получает по МД микроЭВМ код прерывания.

Существует 2 способа задания кода прерывания:

1) С помощью команды RST <N> - ПРЕРВАТЬ ВЫПОЛНЕНИЕ ПРОГРАММЫ, N=0 – 7 – номер уровня рестарта.

2) С помощью команды CALL <A1> <A2> (векторный способ) асинхронный – несовпадение в наступлении цикла. А1 – начальный адрес подпрограммы обслуживания прерываний, А2 – адрес точки останова.

Первый машинный цикл обслуживания прерывания для обоих способов является общим и отличается от цикла М1 тем, что содержимое программного счётчика при этом увеличивается. На первом такте Т1 устанавливается нулевой уровень на выходе Р.Пр. МП БИС информирует внешнее устройство о восприятии и начале обслуживания прерывания выдачей слова состояния с 1 в разрядах D0, D1, D5. Разряд D0 слова состояния совместно с сигналом на выходе “Приём” используется для формирования сигналов обслуживания прерывания магистрали управления микроЭВМ.

ДШФ

D0-D7

РгСС

П

С

RST1

З.Пр

Схема ввода кода команды RST1 при обслуживании МП БИС сигнала прерывания

Об.Пр

1

Регистр сообщения кода прерываний

Ф1

D0

Схема формирования З.Пр

Существует 8 кодов команды RST <N>, где N=0-7.

По сигналу обслуживания прерывания внешние устройства выдают на МД микроЭВМ либо код команды RST, либо код команды CALL. Получив команду на первом машинном цикле, МП БИС на последующих машинных циклах записывает в область памяти, отведённую под стек, текущее значение программного счётчика. Сохранение содержимого программного счётчика в стеке необходимо для возврата к прерванной программе после окончания выполнения подпрограммы обслуживания прерывания. Каждая подпрограмма обслуживания прерывания должна иметь в конце команду RET (RETURN), с помощью которой осуществляется возврат. Эта команда загружает содержимое двух верхних ячеек стека программного счётчика. Первым машинным циклом при обращении к ячейкам памяти, указанным в RST, является цикл М1.

При векторном способе задания прерывания на первом цикле М1 внешние устройства будут передавать МП БИС не команду RST <N>, а команду CALL <A1> <A2>. Получив эту команду, МП БИС автоматически переходит в режим ввода двух байт адреса А1, А2 на втором и третьем циклах. После этого организуется сохранение содержимого программного счётчика в стеке и обращение к началу подпрограммы обслуживания прерывания. При векторном способе задания прерывания внешнее устройство сообщает не только команду, но и адрес начала подпрограммы обслуживания прерываний.

Организация магистралей микроЭВМ

Обмен информацией между МП БИС и ВУ организуется с помощью трёх магистралей микроЭВМ: МА, МД, МУ.

МА является однонаправленной магистралью, выдача адресов на которую осуществляется МП БИС или схемой прямого доступа к памяти. Малая нагрузочная способность МА требует применения буфера.

По МД организуется двунаправленный обмен данными между МП БИС и памятью или ВУ. Для увеличения нагрузочной способности МД микроЭВМ необходимо применять буфер МД.

МУ состоит из 5 шин, сигналы на которых формируются из записанного слова состояния МП БИС и его выходных сигналов “Приём” и “Запись”.

4

Соседние файлы в папке шпоргалка