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

Принцип работы микроЭвм

Работу микроЭВМ рассмотрим на основе блок-схемы, представленной на рисунке 1. МикроЭВМ содержит:

– микропроцессор КР 580 ВМ 80А, выполненного на одной БИС, в которую включено АЛУ, БДК, А, ТЕМ, Ак, Д, Ад, РК, РОН, РА, ДСК, SP, РС;

- программируемого параллельного интерфейса КР580 ВВ 55;

- шинного формирователя К589 АП16;

- многорежимного буферного регистра К589 ИР12;

- статического ОЗУ на микросхемах К585РУ2А (емкость каждой 1024х1 бит);

- ППЗУ К573РФ2 (2048х8 бит) и микросхемы серии К 155.

БИС КР 580 ВМ 80А представляет собой 8-разрядный микропроцессор, включающий в себя операционное и управляющее устройства. УУ содержит управляющую память, в которую записаны микропрограммы выполнения операций. Каждая из микропрограмм, предназначенная для реализации определенной команды, содержит от 4 до 17 микрокоманд, управляющих приемом из ОЗУ операндов, выполнением над ними простейших действий, выдачей в ОЗУ операндов и извлечением из ОЗУ очередной команды. В КР580 ВМ 80А не предусмотрена возможность изменения содержимого управляющей памяти, поэтому он относится к числу немикропрограммируемых с фиксированной системой команд. С использованием управляющей памяти микропроцессор реализует первый уровень управления ЭВМ - микропрограммное управление, предназначенное для обработки каждой команды, располагаемой в РК.

Второй уровень управления ЭВМ - командный, организуется хранимой в ОЗУ программой. Программа занимает определенную область ОЗУ, имеет обязательную начальную и конечную команды. Обращение к начальной команде с пульта управления ЭВМ или с помощью другой программы способствует передаче ее в РК и циклической обработке следующих команд, поступающих друг за другом в РК (естественный порядок) до извлечения конечной команды программы. Последняя команда заканчивает процесс программного управления ЭВМ, устанавливает блоки ЭВМ в начальное состояние и осуществляет прерывание вычислений по данной программе.

Каждая команда содержит поле кода операции (КОП) и поле адреса устройств (РОН, ячейки ОЗУ или ПЗУ, А и др.), участвующих в операции. Если устройством является один из РОН, то для указания адреса любого из них достаточно поля КОП длиною в 3 двоичных разряда. Если операция выполняется с участием ячейки ОЗУ, то необходимая разрядность поля адреса для определения номера ячейки характеризуется емкостью памяти ППЗУ и ОЗУ. При максимальной их размерности 64К ячеек для определения номера любой из них требуется 16-разрядное поле адреса. Поэтому в зависимости от разновидности операции и участвующих в ней устройств в микроЭВМ используются одно-, двух- и трехбайтные команды. В однобайтной команде 5 разрядов отводится под КОП и 3 разряда - под адрес устройства микропроцессора. В двух- и трехбайтных командах под поле КОП отводится первый байт команды. Вторые и третьи байты используются или под операнд (непосредственная адресация), или под код адреса (прямая адресация) ячейки в ПЗУ или ОЗУ.

Первый байт команды всегда располагается в РК, другие - в РОН, в которые они заносятся в последующие такты извлечения команды. После извлечения команды счетчик РС инкрементируется (РС=РС+1) для указания адреса следующей команды, при изменении естественного порядка в РС устанавливается код адреса из двух РОН (W, Z) при выполнении команд управления, реализующих условный (безусловный, отличный от естественного порядка) переход. Иногда содержимое 2-го и 3-го байтов команды заносится в Н и L в качестве адреса операнда, используемого следующей командой при выполнении операции.

Взаимодействие устройств микропроцессора удобнее всего рассмотреть на примере выполнения какой-либо команды. Так, выполнение команды сложения содержимого А с ячейкой памяти ОЗУ осуществляется в следующей последовательности:

- передача текущего адреса из РС в РА;

- инкрементация РС, т.е. установление адреса следующей команды;

- поступление адреса команды из РА через ША на адресные входы схемы памяти (ДСА), что обеспечивает выборку адресуемой ячейки памяти и передачу ее содержимого через ШД в буфер Д;

- занесение из буфера Д команды в РК;

- дешифрирование поля КОП команды ДСК и поступление унитарного кода в УУ, запуск в нем соответствующей микропрограммы, с помощью которой формируются управляющие сигналы, обеспечивающие настройку микропроцессора на выполнение заданной в команде операции (сложения);

- поступление адреса операнда из РОН (Н и L) в РА, передача операнда в АЛУ и сложение его с А, занесение результата в А;

- извлечение следующей команды по адресу, расположенному в РС.

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

Она осуществляется в такой последовательности:

- выдача текущего адреса из РА в ДСА;

- увеличение РС на единицу (инкрементация РС);

- выбор первого байта команды из памяти по коду адреса в РА;

- передача его через ШД, буфер Д, ВШД в РК;

- дешифрация в ДСК поля команды КОП и формирование в УУ последовательности управляющих знаков;

- извлечение второго байта команды (младших 8 разрядов кода адреса следующей команды) по адресу в РС, занесение его в Z, инкрементация РС;

- извлечение третьего байта команды безусловного перехода (старших 8 разрядов кода адреса следующей команды) по адресу РС и занесение его в W;

- передача содержимого группы регистров W,Z в РС и РА.

Заметим, что команда безусловной передачи управления выполняется за 10 тактов и при частоте тактового генератора 2 мГц выполняется за 5,0 мкс. В результате выполнения команды в РС устанавливается адрес следующей команды, отличный от естественного порядка, равный коду адреса, расположенного в третьем и втором байте команды безусловного перехода.

Отличительной особенностью команды условного перехода от команд управления безусловного перехода является проверка значения логического условия в соответствии с типом команды перед последней микрооперацией передачи содержимого группы регистров W и Z в РС. Если условие выполняется, то содержимое из W,Z передается в РС ; если нет, то РС инкрементируется. Содержимое РС затем передается а РА.

Таким образом, для организации процесса вычислений в ЭВМ с использованием команд необходимо разместить в ОЗУ программу и операнды, к которым команды будут обращаться для выполнения предписанных операций. Операнды и программы размещаются в разных рабочих областях ОЗУ в зависимости от структуры памяти ЭВМ. Рабочая (не заштрихованная) область памяти УОУ представлена на рисунке 3.

Ячейки памяти с адресами 0000-:-03FF (16) расположены в ППЗУ. В эти ячейки для облегчения процесса занесения программы и данных в ОЗУ, а также для контроля и организации вычислений введены команды программы Монитор, являющейся простейшей операционной системой. Монитор в процессе своей работы использует оперативную информацию, которую хранит в ячейках ОЗУ с адресами 83Е0-:-8400. Поэтому эта область, хотя и является рабочей областью памяти, программистом не используется. Область памяти с адресами 0400-:-7FFF и 87FF-:-FFFF является нерабочей, так как по данным адресам отсутствуют ячейки памяти.

Рисунок 3

Соседние файлы в папке Исходники программы эмулятора Электроника 580