Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lab_1_2013.doc
Скачиваний:
4
Добавлен:
01.04.2025
Размер:
316.42 Кб
Скачать

7.2 Байт состояния микропроцессора

Для нормального функционирования микропроцессорной системы недостаточно управляющих сигналов, генерируемых непосредственно МП {например, DBIN (чтение), WAIT (ожидание), HLDA (подтверждение захвата шин) и др.}. Система в каждом машинном цикле должна получать более полную информацию о состоянии МП. Эта информация, в виде байта состояния МП, выдаётся им в первом такте каждого машинного цикла на шину данных и фиксируется на время данного цикла во внешнем регистре состояния (РБС). Выходы РБС и управляющие сигналы самого МП совместно образуют шину управления МП-системы (12 линий), сигналы которой используются при обращениях к памяти или периферийным устройствам.

Из 256 возможных наборов байта состояния только 10 из них используются для формирования различных команд МП. Эти десять кодов определяют, в свою очередь, десять типов машинных циклов со следующими именами: выборка команды, чтение из памяти, запись в память, чтение из стека, запись в стек, ввод, вывод, разрешение прерывания, останов, разрешение прерывания при останове.

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

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

Назначение каждого разряда в коде байта состояния разъяснено в табл. 4. Косая черта в конце обозначения означает, что активный уровень данного управляющего сигнала – низкий.

7.3 Адресное пространство микропроцессора

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

Иначе говоря, адресное пространство представляет собой упорядоченное множество кодов , где n – число адресных линий микропроцессора.

Так как адресная шина микропроцессора i8080 содержит всего 16 линий, то по ней можно передать различных адресов (кодов). Таким образом, его адресное пространство составляет , где .

Это, однако, не означает, что каждому коду из указанного множества обязательно соответствует реальный программно-доступный элемент – ячейка памяти или периферийное устройство. Адресное пространство определяет лишь потенциальные возможности системы – максимальное число программно-доступных элементов, которые принципиально могут в ней присутствовать. Поэтому адресное пространство можно сравнить с пустым или частично заполненным помещением библиотеки, в котором можно разместить, например, не более 64К книг.

Адресное пространство – понятие абстрактное и его стоимость, например, нельзя выразить в денежных единицах. Это пространство позволяет лишь наглядно представить размещение в нём адресов различных программно-доступных объектов системы, таких как ячейки оперативной и постоянной памяти, контроллеров связи разного применения, таймеров и других устройств. Если процессор обратится в любую не занятую ячейку адресного пространства, то он, конечно, не получит ответного сигнала от несуществующего устройства. В малых микропроцессорных системах доля занятого адресного пространства обычно бывает весьма незначительной.

Таблица 3 – Типы и коды машинных циклов МП

Назначение машинного цикла

Разряды байта состояния МП

D7

D6

D5

D4

D3

D2

D1

D0

MEMR

ЧТ

INP

ВВ

M1

М1

OUT

ВЫВ

HLTA

ПОСТ

STACK

СТЕК

WO/

ЗВ/

INTA

ППР

Выборка команды

1

0

1

0

0

0

1

0

Чтение из памяти

1

0

0

0

0

0

1

0

Запись в память

0

0

0

0

0

0

0

0

Чтение из стека

1

0

0

0

0

1

1

0

Запись в стек

0

0

0

0

0

1

0

0

Ввод

0

1

0

0

0

0

1

0

Вывод

0

0

0

1

0

0

0

0

Разрешение

прерывания

0

0

1

0

0

0

1

1

Разрешение

останова

1

0

0

0

1

0

1

0

Разрешение прерывания при останове

0

0

1

0

1

0

1

1

Таблица 4 – Назначение каждого разряда в коде байта состояния

Обозначение

упр. сигнала

Разряд

БС МП

Назначение

MEMR

ЧТ

D7

Указывает на то, что в текущем машинном цикле будет производиться чтение из памяти

INP

ВВ

D6

Указывает, что в текущем машинном цикле выполняется операция ввода

M1

М1

D5

Указывает, что МП находится в цикле выборки первого байта команды

OUT

ВЫВ

D4

Указывает, что в текущем машинном цикле выполняется операция вывода

HLTA

ПОСТ

D3

Свидетельствует о том, что МП перешел в состояние останова по команде HLT

STACK

СТЕК

D2

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

WO/

ЗВ/

D1

Указывает, что в текущем машинном цикле будет выполняться запись в память или вывод (при WO=0)

INTA

ППР

D0

Подтверждение запроса прерывания, сигнал используется для запуска команд RST (рестарт), которая вызывает одну из 8 подпрограмм обработки прерываний

4*. 5. Определить контрольную сумму мас сива. памяти, пользу-ясь директивой "KG" . В кгдместве массива использовать занесен­ную рабочую ггрограмму. Вычислить контрольную сумму вручную и сравнить с машинной.

4.6. Заполнить массив памяти с адресами ОА.40Н . - - -OA5FH

после запуска программы имитатора необходимо обнулить содержимое ОЗУ и Регистров, путем нажатия на кнопки Сброс ОЗУ и Сброс Рег.

После сброса содержимого Регистров и ОЗУ, необходимо нажать кнопку ОЗУ.

Над окошком сегментных индикаторов будет выведен запрос ‘‘Введите номер ячейки ОЗУ‘‘ курсором мыши на клавиатуре имитатора вводим необходимый адрес ячейки ОЗУ в который мы будем записывать данные. В первом поле сегментного индикатора отображается адрес, а во втором содержимое ячейки памяти соответствующей этому адресу. После ввода содержимого ячейки во втором поле сегментного индикатора, чтобы занести данные по адресу необходимо нажать кнопку Ввод.

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