ЛР7. Разработка обобщённого графа индивидуального задания и ввод исходных данных для эмулятора «СUU», страница 2
Описание файла
Документ из архива "ЛР7. Разработка обобщённого графа индивидуального задания и ввод исходных данных для эмулятора «СUU» ", который расположен в категории "". Всё это находится в предмете "вычислительные сети и системы" из 5 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "лабораторные работы", в предмете "вычислительные средства асоиу" в общих файлах.
Онлайн просмотр документа "ЛР7. Разработка обобщённого графа индивидуального задания и ввод исходных данных для эмулятора «СUU»"
Текст 2 страницы из документа "ЛР7. Разработка обобщённого графа индивидуального задания и ввод исходных данных для эмулятора «СUU»"
операнды
Данные
В АЛУ
Данные в ОП
Адрес в ОП
R
ТИ
Ш1 Ш2 Ш3
Рис. 2 Структурная схема ЦУУ
С хема инкремента-декремента (СИД) увеличивает или уменьшает на единицу подаваемые на ее вход значения. Она может работать одновременно с АЛУ, увеличивая производительность процессора. СИД используют для обработки содержимого РОН, РИ, РС, SP. Она выполняет микрооперации типа С:=С + 1, где С - переменная на входе СИД.
Регистр возврата используют в командах «Переход с возвратом» при обращении к подпрограммам для хранения адреса возврата в основную программу.
В процессорах с внутренней памятью часто РИ, РС, SP, РВ размещают в регистрах общего назначения. Иногда РВ и А также размещают в РОН.
В процессорах со стековой памятью адрес возврата размещают в стеке.
Управление работой АЛУ
Таблица 1
Управляющие сигналы | Логические операции в АЛУ | Арифметические операции в АЛУ | |||
y11 | y12 | y13 | y14 | y15=1 | y15=0 |
0 | 0 | 0 | 0 | _ Х | X+1 |
0 | 0 | 0 | 1 | ____ ХУ | L1(X.1) |
0 | 0 | 1 | 0 | _ ХУ | X+2 |
0 | 0 | 1 | 1 | 0 | - |
0 | 1 | 0 | 0 | ____ ХУ | R1(0.X) |
0 | 1 | 0 | 1 | _ У | X+3 |
0 | 1 | 1 | 0 | ХУ | X-Y |
0 | 1 | 1 | 1 | _ ХУ | - |
1 | 0 | 0 | 0 | _ ХУ | R1(1.X) |
1 | 0 | 0 | 1 | ____ ХУ | X+Y |
1 | 0 | 1 | 0 | У | Y-X |
1 | 0 | 1 | 1 | ХУ | X+4 |
1 | 1 | 0 | 0 | FF | L1(X.0) |
1 | 1 | 0 | 1 | _ ХУ | - |
1 | 1 | 1 | 0 | ХУ | - |
1 | 1 | 1 | 1 | Х | X-1 |
Управляющий автомат формирует управляющие сигналы Y1, …, Ym на основе кода операции, поступающего из регистра команд и признаков выполнения микроопераций в АЛУ. В АЛУ формируются следующие признаки: 1) Z=1 – нулевой результат;
2) N=1 – отрицательный результат (единица в старшем разряде слова);
3) С=1 – перенос при сложении, вычитании и сдвиге вправо или влево;
4) Р=1 – переполнение.
Управляющий автомат может быть микропрограммным или схемно-логического типа. В лабораторной работе необходимо использовать УА
схемно-логического типа (рис. 3) на основе программируемых логических матриц (ПЛМ) и регистра состояния (Р).
Р
f1
D1
F1
Dk
Fk
D1
F1
f k
ПЛМ
X1
X2
Y 1
Ym
Dk
Fk
Рис. 3 Структурная схема управляющего автомата:D1,D2,…,Dk – сигналы установки регистра Р;
F1,F2,…,Fk – выходные сигналы регистра Р;
X1,X2,… – осведомительные сигналы (признаки Z,N,C,P из АЛУ);
Y1, Y2 … - управляющие сигналы.
Типовые машинные команды, используемые в работе
-
Трехадресная команда с прямой адресацией:
КОП | R | S1 | S2 | S3 |
ОП[S1+ И]*ОП[S2+ И] ОП[S3+ И]
Здесь И - индекс для модификации адресов. В поле R указывается адрес регистра (РОН), используемого для модификации адресов, либо адрес слова в странице оперативной памяти, в котором хранится индекс (адресом ОП будет F.R). Если для хранения индекса предусмотрен специальный индексный регистр, то в поле R записывают нуль. В команде можно модифицировать один, два или три адреса. Звездочка (*) определяет одну из операций в АЛУ (см. табл. 1) в том числе и операцию пересылки. При И=0 выполняется команда без модификации.
-
Двухадресная команда с прямой адресацией и модификацией:
КОП | R | S1 | S2 |
ОП [S1+И]*ОП[S2+И] ОП [S1+И]
-
Двухадресная команда с косвенной адресацией и модификацией:
КОП | R | R1 | R2 |
ОП [РОН[R1]+И]*ОП[РОН[R2]+И] ОП [РОН[R1]+И]
Здесь в РОН с адресами R1 и R2 хранятся адреса операндов.
-
Одноадресная команда с прямой адресацией и модификацией:
КОП | R | S1 |
А*ОП[S1+И] ОП[S1+И], А
Результат выполнения операции может засылаться в оперативную память или/и
аккумулятор.
-
Одноадресная команда с косвенной адресацией и модификацией:
КОП | R | R1 |
А*ОП [РОН[R1]+И] ОП [РОН[R1]+И], А
-
Команды с прямой регистровой адресацией:
КОП | 0 | R1 | R2 |
РОН[R1]*РОН[R2] РОН[R1], А
-
Команды с непосредственной адресацией:
КОП | R | S1 |
S1 РОН[R], РИ, ОП [F.R], SP, …
Команду используют для установки начальных значений адресов, индексов и
т. д. в регистрах общего назначения.
-
Команда безусловного перехода по косвенному адресу (возврат из подпрограммы):
КОП | R |
Команда заносит адрес возврата в программный счетчик. Адрес возврата может храниться в стеке или в регистре возврата (в этом случае R=0), или в оперативной памяти по адресу F.R (в последнем случае в поле R записывают четырехразрядный адрес слова в странице F, где хранится адрес возврата).
-
Команда безусловного перехода по прямому адресу:
КОП | 0 | S1 |
S1 PC
Команда заносит адрес перехода из поля S1 в программный счетчик, в качестве которого можно использовать регистр программного счетчика или один из регистров общего назначения.
-
Команда обращения к подпрограмме (переход с возвратом):
КОП | R | S1 |
PС запомнить, S1 PC
Адрес возврата можно запоминать в стеке, в регистре возврата или в фиксированной ячейке памяти с адресом F.R .
-
Команда условного перехода по прямому адресу:
КОП | R | S1 |
S1, если P=1,
РС:=
PC+1, если P=0,
где Р – условие перехода.
Типовым условием перехода является положительный, отрицательный или нулевой результат, который может храниться в РОН[R], РИ или в ячейке ОП с адресом F.R , используемой для хранения индекса. Команды условного перехода могут быть одно-, двух - и трех - адресными:
S1, если РИ > 0;
РС:=
PC+1, если РИ < 0;
S1, если ОП [F.R]<0;
РС:= S2, если ОП [F.R]>0;
PC+1, если ОП [F.R]=0;
S1, если РОН [R]>0;
РС:= S2, если РОН [R]<0;
S3, если РОН [R]=0;
Здесь РС:= РС+1 означает переход к следующей команде, расположенной за командой условного перехода. В команде можно реализовать и другие условия перехода. Поля S2 и S3 можно использовать в двух-, и трехадресных командах.
-
Команда «Стоп»:
КОП | 0 |
Используется для завершения работы программы.