Выбери формат для чтения
Загружаем конспект в формате pdf
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Общая структура микропроцессора КР580ВМ80
Структуру и базовые принципы работы микропроцессора рассмотрим на
примере 8-разрядного МП КР580ВМ80, являющегося отечественным аналогом
широко известного во второй половине 1970-х годов МП Intel 8080. В
настоящее время для построения вычислительных систем используются
гораздо более мощные модели МП, но изучение структуры МП лучше начать с
относительно простой модели.
Общая структурная схема МП КР580ВМ80 представлена на рисунке 4.
Рисунок 4 − Общая структурная схема МП КР580ВМ80
На данной схеме представлены следующие основные элементы:
• A (Accumulator) − 8-разрядный регистр-аккумулятор, в котором
хранится один из операндов в двухоперандной команде, а также
результат операции.
• TR (Temporary Register) − 8-разрядный регистр для временного
хранения одного из операндов.
• TA (Temporary Accumulator) − 8-разрядный временный регистраккумулятор.
• ALU (Arithmetic-Logic Unit) − арифметико-логическое устройство
(АЛУ), выполняющее действия над двумя операндами, подаваемыми
на его входы. В АЛУ реализованы следующие операции: сложение,
вычитание, сдвиг, сравнение, поразрядные (битовые) логические
операции (дизъюнкция, конъюнкция). Кроме того, АЛУ включает в
себя схему перевода двоичных чисел в двоично-десятичные числа,
обозначенную как DA (Decimal Adjust).
• RF (Register Flags) − 8-разрядный регистр флагов (признаков),
формируемых в результате выполняемых АЛУ арифметических и
логических операций. Имеются 5 флагов (признаков), которые могут
использоваться для управления процессом вычислений, а именно:
С (Carry) − признак переноса (бит 0) устанавливается в 1, если в
результате выполнения команды происходит перенос из
старшего разряда;
P (Parity) − признак четности (бит 2) устанавливается в 1, если
число единиц в разрядах результата четное;
AC (Auxiliary Carry) − признак вспомогательного переноса (бит 4)
устанавливается в 1 при возникновении переноса из третьего
бита результата, т.е. при переносе из старшего бита младшей
тетрады (используется при выполнении операций в двоичнодесятичном коде);
Z (Zero) − признак нуля (бит 6) устанавливается в 1, если результат
операции равен 0;
S (Sign) − признак знака (бит 7) устанавливается в 1, если результат
является отрицательным числом;
Биты 1, 3, 5 в качестве признаков (флагов) не используются.
• MUX (Multiplexor) − мультиплексор, связывающий блок регистров с
внутренней шиной МП.
• Блок регистров содержит следующие регистры:
W, Z − 8-разрядные регистры для временного хранения данных при
выборке команды из памяти (недоступны для программиста).
B, C, D, E, H, L − 8-разрядные регистры общего назначения (РОН),
которые могут использоваться программистом. Эти регистры
можно объединять попарно (B−C, D−E, H−L), чтобы использовать
эти пары как 16-разрядные регистры. При этом пары регистров
именуются буквами первого регистра пары, т.е. как B, D, H
соответственно.
SP (Stack Pointer) − 16-разрядный регистр, называемый указателем
стека, в котором содержится адрес первой свободной ячейки
стека. Стек − это область памяти, доступ к ячейкам которой
организован в соответствии с принципом LIFO (Last In − First
Out), т.е. последним вошел, первым вышел (так называемая
«магазинная» память − по аналогии с магазином автомата).
Содержимое указателя стека автоматически уменьшается, когда
данные загружаются в стек, и автоматически увеличивается,
когда данные выбираются из стека. Обычно стек используется
для хранения и восстановления содержимого программно
доступных регистров процессора.
PC (Program Pointer) − 16-разрядный регистр, называемый
программным счетчиком (счетчиком команд), который содержит
текущий адрес команды, автоматически увеличивающийся после
выборки каждого байта команды. После того как команда
целиком выбрана из памяти, в программном счетчике будет
содержаться адрес следующей команды программы.
INC/DEC (Increment/Decrement) − схема, позволяющая без участия
АЛУ выполнять увеличение или уменьшение на 1 содержимого
одного из РОН, а также SP или PC.
Буферный регистр адреса RG (Register) − 16-разрядный регистр с
тремя состояниями, предназначенный для формирования
сигналов на линиях шины адреса.
Буферный регистр данных BF (Buffer) − 8-разрядный регистр с
тремя состояниями, предназначенный для формирования
сигналов на линиях шины данных.
IR (Instruction Register) − 8-разрядный регистр, принимающий из
памяти первый байт команды, в котором содержится код
операции (КОП). Последующая дешифрация КОП, выполняемая
дешифратором команд, порождает сигналы, необходимые УУ
для реализации машинных циклов выполнения команды.
SW (Status Word) − байт, передаваемый УУ на шину и содержащий
так называемое слово состояния, которое используется для
формирования некоторых управляющих сигналов.
УУ (Устройство управления) генерирует управляющие сигналы для
всех блоков МП в соответствии с дешифрированными кодами
команд и поступающими внешними управляющими сигналами.
Основными линиями шины управления, представленными на рисунке 4,
являются следующие:
F1, F2 − входы двух неперекрывающихся последовательностей
импульсов синхронизации;
RESET − вход сигнала начальной установки (сброса) МП;
READY − вход сигнала готовности внешнего устройства или памяти к
обмену данных;
WAIT − выход сигнала подтверждения ожидания. Активный уровень
сигнала свидетельствует о том, что МП перешел в режим
ожидания и выполняет такты ожидания;
HOLD − вход сигнала запроса прямого доступа к памяти (англ. Direct
Memory Access − DMA, ПДП) или запроса захвата шины;
HLDA (HOLD Acnnowledge) − выход сигнала подтверждения ПДП;
INT (INTerrupt) − вход сигнала запроса прерывания;
INTE (INTErrupt Enable) − выход сигнала разрешения прерывания;
DBIN (Data Bus IN) − выход сигнала чтения. Высокий уровень этого
сигнала свидетельствует о том, что двунаправленная шина
данных находится в режиме выдачи информации;
WR (WRite) − выход сигнала записи. Низкий уровень этого сигнала
свидетельствует о том, что двунаправленная шина данных находится
в режиме выдачи информации;
SYNC (SYNChronization) − выход сигнала синхронизации. Высокий
уровень этого сигнала свидетельствует о том, что по шине данных
передается байт состояния (SW − Status Word), который используется
для формирования некоторых управляющих слов.