Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции / 1CompArch.doc
Скачиваний:
36
Добавлен:
20.06.2014
Размер:
657.41 Кб
Скачать

Смена состояний процессора при выполнении программы

Начальное состояние процессора

Процессор при подаче на него питания или сигнала сброса (SR или RESET) устанавливается в исходное состояние. Исходным состоянием любого процессора является чтение первого байта команды из памяти по определенному адресу.

Для процессора i8080 длительность сигнала сброса должна быть не менее трех периодов тактовой частоты. В начальном состоянии процессора триггер разрешения прерывания, триггер захвата, регистр команд, регистр признаков и счетчик команд имеют нулевое значение. Таким образом, после окончания действия сигнала SR процессор производит первое обращение за чтением команды к ячейке памяти по адресу 000016.

Для процессора i8086 сигнал сброса должен подаваться на соответствующий вход не менее четырех периодов тактовой частоты. В начальном состоянии регистр признаков F, регистр указателя команд IР, сегментные регистры процессора i8086 имеют значения в соответствии с табл., выходы шины адреса/данных находятся в высокоомном состоянии, выходы шины управления — в высокоомном или пассивном состоянии, пошаговые и маскируемые прерывания запрещены.

Табл. Начальное значение регистров процессора i8086

Назначение регистра

Содержимое регистра

Регистр признаков F

F00216

Регистр адреса команды IP

000016

Регистр сегмента команд CS

FFFF16

Регистр сегмента данных DS

000016

Регистр сегмента стека SS

000016

Регистр дополнительного сегмента ES

000016

Таким образом, по окончании сигнала SR первая команда начинает выбираться из ячейки памяти с физическим адресом FFFF0h. Обычно первой командой является команда межсегментного перехода.

В зависимости от выполняемой команды, значений управляющих сигналов и внутреннего состояния процессор осуществляет то или иное действие, переходит в то или иное состояние, формируя необходимые управляющие сигналы. Управляющие сигналы могут формироваться аппаратной логикой процессора или микропрограммно. В последнем случае каждой команде процессора соответствует программа (подпрограмма), располагающаяся в специальной памяти процессора — микропрограммной памяти. Микропрограмма состоит из микрокоманд. Микрокоманда представляет собой совокупность битов, соответствующих определенным управляющим сигналам процессора в определенном такте. Если бит равен единице, то соответствующий управляющий сигнал устанавливается в активный уровень, если нулю — в неактивный.

Особые состояния процессора

При выполнении программы процессор может переходить в одно из трех особых состояний: ожидание, захват и останов, длительность которых определяется внешними управляющими сигналами. Кроме того, у многих процессоров имеются состояния пониженного энергопотребления.

Состояние ожидания

В состояние ожидания процессор переходит, когда на входе RDY появляется логический 0. Сигнализирует процессор о переходе в это состояние активизацией сигнала WAIT. Сигнал RDY может быть использован для согласования работы процессора с работой медленных устройств, а также для организации пошагового выполнения программы (по командам или по машинным циклам).

Состояние захвата

В состояние захвата процессор переходит при подаче сигнала высокого уровня на вход HLD. Информирует о переходе в это состояние сигналом высокого уровня на выходе HLDA. В этом состоянии буферные схемы шин адреса и данных переходят в высокоомное состояние, т.е. выводы адреса и данных процессора отключаются, а выходные управляющие сигналы переходят в неактивный уровень. Это состояние позволяет организовать режим прямого доступа к памяти для любого внешнего устройства, способного сформировать необходимые управляющие и адресные сигналы и осуществить обмен данными с памятью.

Состояние останова

В состояние останова процессор переходит при выполнении команды HLT. Подтверждает переход в это состояние сигналом HLTA (бит 3 байта состояния). При этом буферные схемы адреса и данных переводятся в высокоомное состояние. Выход из состояния останова осуществляется при появлении сигнала высокого уровня на одном из трех входов:

  1. SR. Процессор начинает выполнять цикл М1.

  2. HLD. Процессор переходит в состояние захвата и возвращается из него при дезактивации сигнала HLD в состояние останова.

  3. INT. Процессор переходит к выполнению цикла прерывания при останове, если прерывания разрешены, иначе остается в состоянии останова. После обработки прерывания в состояние останова процессор не возвращается.

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

Соседние файлы в папке Лекции