
- •Методические указания
- •Под редакцией к.Т.Н. Доцента Виноградова в.И.
- •1.Теоретическая часть Особенности центрального устройства управления
- •Рон ри рс sp а в рк сид рв ра Результат Из алу Команды и Данные из оп y1 y n x1 – x4 уа z,n,c,p Из алу операнды ДанныеВ алу Данные в оп Адрес в оп r тиш1 ш2 ш3
- •Управление работой алу
- •Типовые машинные команды, используемые в работе
- •Результат выполнения операции может засылаться в оперативную память или/и
- •Список микроопераций
- •Варианты заданий
- •2. Пример выполнения задания учебной задачи
- •Система команд
- •Выбор регистра общего назначения
- •3.Лабораторная работа «Типовые микрооперации».
- •4.Лабораторная работа «Форматы машинных команд».
- •5.Лабораторная работа «Операционные устройства процессора».
- •6.Лабораторная работа «Способы адресации».
- •7.Лабораторная работа «Типовые машинные операции».
- •8.Лабораторная работа «Управляющие автоматы схемно-логического типа».
- •9.Лабораторная работа «Программируемые логические матрицы».
- •10.Лабораторная работа «Типовые устройства персонального компьютера (пк)».
Список микроопераций
Таблица 2
УС |
Микрооперации |
УС |
Микрооперации |
y20 |
А:=R |
Y49 |
PC: =0 |
Y21 |
A: =S1 |
Y50 |
PC: =PC*A |
Y22 |
A: =S2 |
… |
|
Y23 |
A: =S3 |
Y52 |
SP: =A |
Y24 |
A: =PC |
Y53 |
SP: SP*A |
Y25 |
A: =PB |
… |
|
Y26 |
A: =SP |
Y55 |
РОН[R]:=S1 |
Y27 |
A: =РОН [R1] |
Y56 |
РОН[R1]:=A |
Y28 |
A: =РОН [R2] |
Y57 |
РОН[R]:=РОН[R]*A |
Y29 |
A: =РОН [T] |
Y58 |
РОН[T]:=РОН[T]*A |
Y30 |
A: =ОП [PA] |
… |
|
Y31 |
A: =A*B |
Y60 |
ОП[PA]:=A |
… |
|
… |
|
Y35 |
B: =РИ |
Y62 |
РК[31:16]:=ОП[PA] |
Y36 |
B: =РОН[R] |
Y63 |
РК[31:8]:=ОП[PA] |
Y37 |
B: =A*B |
Y64 |
РК[31:0]:=ОП[PA] |
Y38 |
B: =F.R |
… |
|
… |
|
Y66 |
А:=Дисплей |
Y41 |
PA: =РОН [T] |
Y67 |
Дисплей:= А |
Y42 |
PA: =A*B |
Y68 |
«Переполнение» |
Y43 |
PA: =0 |
Y69 |
«Ошибка в ОП» |
… |
|
Y70 |
«Стоп» |
Y45 |
PB: =A |
|
|
… |
|
|
|
Y47 |
РИ:=РИ+/-1 |
|
|
Y48 |
РИ:=A |
|
|
Варианты заданий
Таблица 3
Вариант |
Код задания |
Вариант |
Код задания |
Вариант |
Код задания |
Вариант |
Код задания |
Вариант |
Код задания |
I |
I-П3-I |
21 |
5-П2-7 |
41 |
9-П3-9 |
61 |
13-П2-5 |
81 |
1-Р-8 |
2 |
2-П2-2 |
22 |
6-П1-8 |
42 |
10-КР1--7 |
62 |
14-П3-6 |
82 |
2-П3-9 |
3 |
3-П1-3 |
23 |
7-КР2-9 |
43 |
11-П1-7 |
63 |
15-КР1-4 |
83 |
3- П3-8 |
4 |
4-КР2-4 |
24 |
8-КР1-1 |
44 |
12-П3-6 |
64 |
16-Р-3 |
84 |
4-Р-7 |
5 |
5-КPI-5 |
25 |
9-Р-2 |
45 |
13-КР1-5 |
65 |
1-П2-2 |
85 |
5-Р-6 |
6 |
6-Р-6 |
26 |
10-П3-3 |
46 |
14-Р-4 |
66 |
2 - Р-3 |
86 |
6-П3 -5 |
7 |
7-ПЗ-7 |
27 |
11-П2-4 |
47 |
15-П2-3 |
67 |
3-КР2-4 |
87 |
7-П2-4 |
8 |
8-П2-8 |
28 |
12-П1-5 |
48 |
16-КР1-2 |
68 |
4-П1-5 |
88 |
8-Р - 3 |
9 |
9-П1-9 |
29 |
13-КР2-6 |
49 |
1-КР1-1 |
69 |
5-П1-6 |
89 |
9-КР2-2 |
10 |
10-КР2 -1 |
30 |
14-КР1-7 |
50 |
2-П1-2 |
70 |
6-КР1-7 |
90 |
10-П1-1 |
11 |
11-KPI-2 |
31 |
15-Р-8 |
51 |
3-П2-3 |
71 |
7-Р-8 |
91 |
11-Р-2 |
12 |
12-P-3 |
32 |
16-П1-9 |
52 |
4-КР1-4 |
72 |
8-П1-9 |
92 |
12-КР2-3 |
13 |
13-ПЗ-4 |
33 |
1-П1-1 |
53 |
5-КР2-5 |
73 |
9-П2-8 |
93 |
13-П1-4 |
14 |
14-П2-5 |
34 |
2-КР2-2 |
54 |
6-П2-6 |
74 |
10-Р-9 |
94 |
14-П1-5 |
15 |
15-П1-6 |
35 |
3-КР1-3 |
55 |
7-КР1-7 |
75 |
11-П3-8 |
95 |
15-КР2-6 |
16 |
16 -П3-8 |
36 |
4-П2-4 |
56 |
8-П3-8 |
76 |
12-П2-7 |
96 |
16-Р-7 |
17 |
1-КР2-3 |
37 |
5-П3-5 |
57 |
9-КР1-9 |
77 |
13-Р-6 |
97 |
1-КР2-6 |
18 |
2-КР1-4 |
38 |
6-КР2-6 |
58 |
10-П2-8 |
78 |
14- КР2 -5 |
98 |
2-КР1-7 |
19 |
3-Р-5 |
39 |
7-П1-7 |
59 |
11-КР2-7 |
79 |
15-П3-6 |
99 |
3-Р-9 |
20 |
4-П3-6 |
40 |
8-КР2-8 |
60 |
12-КР1-6 |
80 |
16-Р-7 |
100 |
4-КР2-8 |
|
|
|
|
|
|
|
|
|
|
101 |
5-КР1-3 |
107 |
11-КР1-7 |
113 |
1-П1-9 |
119 |
7-П1-2 |
125 |
13-П1-2 |
102 |
6-Р-2 |
108 |
12-Р-8 |
114 |
2-П2-6 |
120 |
8-П2-4 |
126 |
14-П2-3 |
103 |
7-П3-1 |
109 |
13-П3-9 |
115 |
3-П3-7 |
121 |
9-П3-6 |
127 |
15-П3-4 |
104 |
8-КР1-9 |
110 |
14-КР1-1 |
116 |
4-КР1-6 |
122 |
10-КР1-5 |
128 |
16-КР1-5 |
105 |
9-Р-5 |
111 |
15-Р-2 |
117 |
5-КР2-1 |
123 |
11-КР2-3 |
129 |
1-КР2-6 |
106 |
10-КР2-6 |
112 |
16-КР2-7 |
118 |
6-Р-8 |
124 |
12-Р-1 |
130 |
2-Р - 7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Характеристики команд
Таблица 4
Обозначение |
Тип команд |
Длина команды, байт |
П3 |
Трехадресная с прямой адресацией |
4 |
П2 |
Двухадресная с прямой адресацией |
3 |
П1 |
Одноадресная с прямой адресацией |
2 |
КР2 |
Двухадресная с косвенной регистровой адресацией |
2 |
КР1 |
Одноадресная с косвенной регистровой адресацией |
2 |
Р |
Прямая регистровая адресация (двухадресные форматы RR и RS) |
2 |
Пример выполнения учебой задачи
1. Получить у преподавателя вариант задания. Варианты заданий приведены в табл. 3. Код задания определяет номер задачи, характеристику команды и структуру ЦУУ (см. перечень задач на стр. 15 и табл. 4 и 5).
Параметры структуры ЦУУ
Таблица 5
Местонахождение компонент и код структуры ЦУУ
Компоненты ЦУУ |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
Программный счетчик |
РОН |
РОН |
РОН |
РОН |
РС |
РС |
РС |
РОН |
РС |
Индексный регистр |
РОН |
РОН |
РОН |
РОН |
РИ |
РИ |
РОН |
РИ |
РИ |
Адрес возврата |
РВ |
ОП |
Стек |
Стек |
Стек |
Стек |
ОП |
ОП |
РВ |
Указатель стека |
- |
- |
РОН |
- |
РОН |
- |
- |
- |
- |
2. Разработать алгоритм решения задач.
Для реализации полученного алгоритма разработать необходимый набор машинных команд. Машинные команды выбирать с учетом форматов и типов (см. рис. 1). Адресность арифметических и логических команд указана в задании. Число команд в наборе не должно превышать 16, так как под поле кода операции выделено четыре разряда.
Разработать микропрограммы машинных операций (рис. 4)
.
Разработать обобщенную микропрограмму работы ЦУУ. Исходные данные для проектирования микропрограммы : разработанный набор машинных команд, список допустимых микроопераций (см. табл. 2) и алгоритмы выполнения машинных операций. В микропрограмме необходимо предусмотреть выборку машинных команд из оперативной памяти в регистр команд (с учетом длины команды), расшифровку кода операции выбранной команды и выполнение соответствующей операции, а также переход к выбору и выполнению следующей команды программы. Микропрограмма должна обеспечивать загрузку начального (нулевого) адреса в программный счетчик и окончание вычислений после выполнения машинной программы.
Ввод
n
Переход
к подпрограмме
Настройка
i
:=
n
i
:=
i-1
Ci
:=
ai
+bi
i=0? НЕТ
Вывод
C1 ДА
Возврат
из подпрограммы
Вывод
n
Рис.4 Схема алгоритма программы
Построить закодированный граф микропрограммы, пользуясь списками микроопераций и логических условий.
В соответствии с закодированным графом микропрограммы разработать управляющий автомат по схеме Мура или Мили и построить списки переходов. Списки переходов содержат всю информацию, необходимую для построения управляющего автомата ЦУУ.
Синтезировать управляющий автомат на основе программи-руемых логических матриц и регистра, включенного в режим записи по тактовому сигналу (см. Рис. 3) [2]:
а) определить разрядность памяти управляющего автомата по формуле К= log2N ,где N- число состояний автомата;
б) определить число m управляющих сигналов, формируемых управляющим автоматом;
в) определить необходимое число ПЛМ для реализации УА (каждая ПЛМ имеет 16 входов, 8 выходов и может реализовать до 68 конъюнкций) и распределить между ПЛМ управляющие сигналы и сигналы возбуждения;
г) для каждой ПЛМ построить таблицы соединений. На входы ПЛМ подавать коды состояний и осведомительные сигналы, а с выходов снимать сигналы возбуждения D (с первой ПЛМ) и управляющие сигналы (с первой и последующих ПЛМ).
В соответствии с алгоритмом и набором машинных команд составить машинную программу в мнемокодах. Программу оформить в виде стандартной подпрограммы с параметрами. Обращение к программе осуществляется через нулевую ячейку памяти.
Составить карту памяти. ЦУУ взаимодействует с памятью объемом 256 байт. Память имеет страничную организацию и состоит из 16 страниц по 16 байт в каждой. Для составления карты памяти необходимо распределить страницы за программой обращения к подпрограмме, за самой подпрограммой, а также за параметрами, исходными данными, результатами и стеком и указать соответствующие полные адреса.
Закодировать машинные команды в шестнадцатеричной системе счисления и составить программу в машинных кодах в соответствии с картой памяти и допустимыми полями машинных команд (см. рис.1).
Промоделировать работу ЦУУ на ЭВМ:
а) вызвать программу моделирования. На экране должно высветиться меню задач. Моделирование проводить в режиме диалога с ЭВМ;
б) последовательно выполняя пункты меню задач, ввести в ЭВМ подготовленное при домашней проработке описание ЦУУ (списки переходов, программу в машинных кодах и исходные данные для проверки работы ЦУУ). Для выполнения нужного пункта в меню задач необходимо ввести номер соответствующего пункта и нажать клавишу ввода.
Замечание.
В режиме контроля и редактирования на
экран дисплея вызывается соответствующая
информация. Эту информацию можно
исправить непосредственно на экране.
После внесения всех изменений нажать
клавишу ввода. Курсор перемещать
клавишами
<> , < >,< >,< >.
Отчет по лабораторной работе должен содержать:
Постановку задачи и исходные данные
Алгоритм решения задач.
Программу в мнемокодах.
Программу в машинных кодах.
Карту памяти.
Фотографии памяти.
Микропрограмму.
Закодированный граф микропрограммы.
Список переходов.
Таблицы соединений ПЛМ.
Протокол работы ЦУУ.
Перечень задач
Вычислить
Сi = 2Аi –Bi,i=1,п
Вычислить:
Сi=Ai+ 2Bi,i=1,n.
Переписать из массива А в массив В все числа, большие единицы.
Поменять местами в массивах А и В элементы с одинаковыми порядковыми номерами*.
Вычислить
n
С=(Аi +Bi),i=1,n*
i=1
Найти максимальный элемент в массиве А и записать его в оперативную память*.
Найти минимальный элемент в массиве А и записать его в оперативную память*.
В массиве А все отрицательрые элементы преобразовать в дополнительный код и найти их сумму*.
П
оменять местами соответствующие элементы в массивах А, В и С по схеме
Аi Bi
Ci ,
i =1,n*
10. Выполнить преобразование Сi (7:0) = Ai(7:4).0000, i=1,n*.
11. Вычислить полную сумму четных элементов двух массивов А и В.
12. Вычислить полную сумму нечетных элементов двух массивов А и В.
13. Подсчитать число четных элементов в массивах А и В*.
14. Подсчитать число нечетных элементов в массивах А и В*.
15. В массивах А и В найти сумму элементов , лежащих в интервале 3…9*.
16. Вычислить Сi=Ai+Bi,i=1,n. Вывести на дисплей п и Сi.
*Размерность массивов n задать командой ввода.
Результаты всех задач вывести на дисплей.