Федеральное агентство по образованию РФ
ГОУ ВПО «Уральский государственный технический университет — УПИ»
Физико-технический факультет
Кафедра вычислительной техники
Специальность
«Вычислительные машины, комплексы, системы и сети»
Курсовой проект
БЛОК ВЫПОЛНЕНИЯ ОПЕРАЦИЙ ДЕСЯТИЧНОЙ АРИФМЕТИКИ
2005
Задание на проектирование
Разработать вычислительное устройство, состоящее из двух взаимосвязанных частей — операционного и управляющего автоматов — и выполняющее операции десятичной арифметики.
Числа произвольных знаков, разрядность 32, прямой код. Тип УА: с адресным ПЗУ.
Арифметические операции над десятичными числами выполняются подобно операций над двоичными числами. Основой АЛУ десятичной арифметики является сумматор двоично-десятичных кодов. Такой сумматор, как правило, строится на основе двоичного, путем добавления некоторых специальных цепей.
Содержание
- Введение
- 1. Разработка структурной схемы
- 2. Блок суммы и разности
- 3. Блок умножений
- 4. Блок делений
- 5. Управляющий блок
- Обзор литературы
Введение
Каноническая структура синтеза синхронного вычислительного устройства состоит из двух автоматов — операционного (ОА) и управляющего (УА).
Каноническая структура вычислительного устройства
Рис.1
На вход ОА подаются входные (исходные) данные, а на выходе ОА формируются выходные данные (результат). На вход УА подается управляющая информация (например, код операции (КОП), сигнал разрешения чтения и т.д.), а на выходе УА формируется выходная управляющая информация (например, сигнал готовности, сигнал ошибки и т.д.). ОА и УА взаимосвязаны: от ОА к УА передаются сигналы признаков (условия) и в зависимости от этих условий от УА к ОА возвращается соответствующая микрокоманда. Синхронизация служит для управления работой всех синхронных узлов и деталей устройства.
блок вычислительное устройство схема
Данная структурная схема вычислительного устройства является наиболее обобщенной и годится для реализации алгоритмов любой сложности.
1. Разработка структурной схемы
Структурная схема блока выполнения операций десятичной арифметики
Рис.1.1
2. Блок суммы и разности
Упрощенная структура АЛУ для сложения (вычитания) десятичных чисел
Рис.2.1
Реализация сложения модулей сводится к следующим действиям:
Прием операнда Х на регистр первого слагаемого РгВ и прием цифр 6 во все тетрады второго слагаемого РгА.
Получение с помощью двоичного сумматора Х6. Пересылка Х6 на регистр первого слагаемого РгВ и прием Y на регистр второго слагаемого РгА.
Получение с помощью двоичного сумматора Z’ = Х6 + Y и фиксация тетрад Z’, из которых не возник перенос.
Пересылка Z’ на регистр первого слагаемого РгВ. Занесение цифр 10 во все тетрады регистра второго слагаемого РгА, соответствующие тетрадам Z’, из которых не было переноса, и 0 в остальные тетрады.
Сложение на двоичном сумматоре содержимого РгА и РгВ с блокировкой межтетрадных переносов.
Вычитание двоично-десятичных модулей X — Y осуществляется следующим образом:
Все разряды Y инвертируются, что дает дополнение каждой цифры Y до 15. При этом получается обратный код двоично-десятичного Y с избытком 6, обозначенный Yo6p6. Затем, складывая X + Yo6p6 и прибавляя 1 к младшему разряду, получаем Z’. Результат Z’ является положительным числом, если из старшей тетрады его возникает перенос. При этом Z’ корректируется по тем же правилам, что и при сложении модулей.
Если из старшей тетрады Z’ нет переноса, то получен отрицательный результат, представленный в дополнительном коде. В этом случае код Z’ инвертируется и к нему прибавляется 1 младшего разряда. Новое Z’ корректируется. При этом к тетрадам, из которых возникал перенос при получении (X + Yo (lp6 + 1), прибавляется 10, а к остальным не прибавляется. Выполнение сложения и вычитания чисел со знаками сводится к выполнению сложения или вычитания модулей путем определения фактической выполняемой операции по знакам операндов и виду выполняемой операции. Знак результата определяется отдельно. Например, при X < 0 и Y < 0 вычитание X — Y заменяется на вычитание | Y | — | X |. Затем знак результата меняется на противоположный знаку (| У | — | X |).
При сложении (вычитании) двух чисел (Z= X±Y) возможны следующие ситуации:
табл.2.1
Таблица возможных ситуаций при сложении и вычитании
X |
Операция |
Y |
Z |
|
+X |
«+» |
+Y |
X+Y |
|
+X |
«+» |
-Y |
X-Y |
|
-X |
«+» |
+Y |
Y-X |
|
-X |
«+» |
-Y |
— (X+Y) |
|
+X |
«-« |
+Y |
X-Y |
|
+X |
«-« |
-Y |
X+Y |
|
-X |
«-« |
+Y |
— (X+Y) |
|
-X |
«-« |
-Y |
Y-X |
Из таблицы видно, что, в зависимости от вида выполняемой операции (сложение или вычитание) и знаков операндов, процесс сложения и вычитания чисел можно представить следующим образом:
1. При необходимости меняем местами операнды (например, — X — (-Y) = (|Y|-|X|)
2. Определяем вид операции, которую будем проводить над модулями (сложение или вычитание)
3. Проводим операцию сложения (вычитания)
4. При необходимости меняем знак результата
Функциональная схема сложения (вычитания)
Рис.2.2
Комбинационная схема 1 (КС1) в зависимости от знаков операндов, вида выполняемой операции производит следующие действия:
1. Меняет местами операнды.
2. Выдает сигнал о необходимости изменить знак результата.
3. Вырабатывает сигнал в УБ, какая будет производиться операция над модулями (сложение или вычитание).
Комбинационная схема 1 (КС1)
Рис.2.3
Комбинационная схема 1.1 фиксирует оба слагаемых, выделяет модули и знаки
Комбинационная схема 1.1 (КС1.1)
Рис.2.4
Комбинационная схема 1.2 обрабатывает знаки, вид операции и вырабатывает сигнал о необходимости менять местами операнды.
Комбинационная схема 1.2 (КС1.2)
Рис.2.5
Комбинационная схема 1.3 меняет местами операнды
Комбинационная схема 1.3 (КС1.3)
Рис.2.6
Комбинационная схема 1.3.1 меняет местами разряды операндов
Комбинационная схема 1.3.1 (КС1.3.1)
Рис.2.7
Комбинационная схема 1.4 вырабатывает сигнал в УБ о том, какая будет проводиться операция над модулями чисел (сложение или вычитание)
Комбинационная схема 1.4 (КС1.4)
Рис.2.8
Комбинационная схема 1.5 выдает сигнал о необходимости изменить знак результата
Комбинационная схема 1.5 (КС1.5)
Рис.2.9
Комбинационные схемы 2 и 3 производят обработку переносов из тетрад. Число, полученное путем агрегации переносов из тетрад, преобразуется в двоично-десятичное число. В комбинационной схеме 2 переносы из тетрад, где был перенос, преобразуются в двоичное число 10, а там, где переноса не было, преобразуется в число 0000. В комбинационной схеме 3 переносы из тетрад, где переноса не было, преобразуются в двоичное число 10, а там, где был перенос, преобразуется в число 0000.
Комбинационная схема 2 (КС2)
Рис.2.10
Комбинационная схема 3 (КС3)
Рис.2.11
Комбинационная схема 4 обрабатывает результат.
Комбинационная схема 4 (КС4)
Рис.2.12
Электронный ключ
Рис.2.13
Сумматор
Рис.2.14
Алгоритм сложения (вычитания)
Рис.2.15
табл.2.1
Таблица микрокоманд сложения (вычитания)
Адрес мк. команды (МК) |
Адрес след. МК |
Сигн. оповещ. |
Микрокоманда |
Код МК |
Адрес оповещ. сигнала |
|||
1 |
00000001 |
00000010 |
КС1 (А): =ШиВх |
w1 |
000001 |
1100 |
||
2 |
00000010 |
00000100 |
f0 |
КС1 (В): =ШиВх |
w2 |
000010 |
1011 |
|
3 |
00000011 |
00000101 |
ТГВыпОп: = 0 |
w19 |
010011 |
1100 |
||
4 |
00000100 |
00000101 |
ТГВыпОп: = 1 |
w16 |
010000 |
1100 |
||
5 |
00000101 |
00001101 |
v0 |
пусто |
w57 |
111001 |
0000 |
|
А+В |
||||||||
6 |
00000110 |
00000111 |
РгВ: = КС1 (В) |
w5 |
000101 |
1100 |
||
7 |
00000111 |
00001000 |
РгА: = 6…6 |
w7 |
000111 |
1100 |
||
8 |
00001000 |
00001001 |
РгСм: =См |
w11 |
001011 |
1100 |
||
9 |
00001001 |
00001010 |
РгВ: = РгСм |
w9 |
001001 |
1100 |
||
10 |
00001010 |
00001011 |
РгА: = КС1 (А) |
w3 |
000011 |
1100 |
||
11 |
00001011 |
00001100 |
РгСм: =См |
w11 |
001011 |
1100 |
||
12 |
00001100 |
00010100 |
РгП: =Прн |
w10 |
001010 |
0001 |
||
А-В |
||||||||
13 |
00001101 |
00001110 |
РгА: = |
w4 |
000100 |
1100 |
||
14 |
00001110 |
00001111 |
РгВ: = КС1 (В) |
w5 |
000101 |
1100 |
||
15 |
00001111 |
00010000 |
РгСм: =См |
w11 |
001011 |
1100 |
||
16 |
00010000 |
00010001 |
РгА: =1 |
w8 |
001000 |
1100 |
||
17 |
00010001 |
00010010 |
РгВ: =РгСм |
w9 |
001001 |
1100 |
||
18 |
00010010 |
00010011 |
РгСм: =См |
w11 |
001011 |
1100 |
||
19 |
00010011 |
00010111 |
v1 |
РгП: =Прн |
w10 |
001010 |
0001 |
|
20 |
00010100 |
00010101 |
РгВ: =РгСм |
w9 |
001001 |
1100 |
||
21 |
00010101 |
00010110 |
РгА: =КС2 |
w6 |
000110 |
1100 |
||
22 |
00010110 |
00011100 |
Ргблпер: =1 |
w12 |
001100 |
1100 |
||
23 |
00010111 |
00011000 |
РгВ: = |
w14 |
001110 |
1100 |
||
24 |
00011000 |
00011001 |
РгА: = 1 |
w8 |
001000 |
1100 |
||
25 |
00011001 |
00011010 |
РгСм: =См |
w11 |
001011 |
1100 |
||
26 |
00011010 |
00011011 |
РгВ: = РгСм |
w9 |
001001 |
1100 |
||
27 |
00011011 |
00011100 |
РгА: = КС3 |
w17 |
010001 |
1100 |
||
28 |
00011100 |
00011101 |
РгСм: =См |
w11 |
001011 |
1100 |
||
29 |
00011101 |
00011110 |
Ргблпер: =0 |
w18 |
010010 |
1100 |
||
30 |
00011110 |
10110100 |
ШиВых: = КС3 |
w13 |
001101 |
1100 |
3. Блок умножений
Двоично-десятичное умножение сводится к образованию и многократному сложению двоично-десятичных произведений. Умножение двоично-десятичных чисел выполняется следующим образом. Сумма частичных произведений полагается равной нулю. Анализируется очередная цифра (тетрада) множителя, и множимое прибавляется к сумме частичных произведений столько раз, какова цифра множителя. Сумма частичных произведений сдвигается вправо на 1 тетраду, и повторяются действия, указанные в п.2, пока все цифры множителя не будут обработаны. Для ускорения умножения часто отдельно формируются кратные множимого 8Х, 4Х, 2Х, при наличии которых уменьшается количество сложения при выполнении п.2.
Знак обрабатывается отдельно.
Функциональная схема умножения
Рис 3.1
Комбинационная схема 5 обрабатывает знак результата.
Комбинационная схема 5 (КС5)
Рис.3.2
Алгоритм выполнения операции умножения
Рис.3.3
Рис.3.6 Алгоритм сложения модулей (РгХ4+РгХ4)
табл.3.1
Таблица микрокоманд умножения
Адрес МК |
Адрес след. МК |
Сигнал оповещ. |
Микрокоманда |
Код МК |
Адрес оповещ. сигнала |
|||
40 |
00101000 |
00101001 |
Рг Y: = ШиВх |
w30 |
011110 |
1100 |
||
41 |
00101001 |
00101010 |
РгХ: =ШиВх |
w31 |
011111 |
1100 |
||
42 |
00101010 |
00101011 |
ТгЗнY: =РгY [0] |
w32 |
100000 |
1100 |
||
Х+Х |
||||||||
43 |
00101011 |
00101100 |
ТгБл. прн: =0 |
w58 |
111010 |
1100 |
||
44 |
00101100 |
00101101 |
РгВ: = РгХ |
w35 |
100011 |
1100 |
||
45 |
00101101 |
00101110 |
РгА: = 6…6 |
w48 |
110000 |
1100 |
||
46 |
00101110 |
00101111 |
РгСм: = См |
w50 |
110010 |
1100 |
||
47 |
00101111 |
00110000 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
48 |
00110000 |
00110001 |
РгА: = РгХ |
w40 |
101000 |
1100 |
||
49 |
00110001 |
00110010 |
РгСм: = См |
w50 |
110010 |
1100 |
||
50 |
00110010 |
00110011 |
Рг П: = Прн |
w52 |
110100 |
1100 |
||
51 |
00110011 |
00110100 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
52 |
00110100 |
00110101 |
РгА: = КС2 |
w47 |
101111 |
1100 |
||
53 |
00110101 |
00111000 |
v4 |
ТгБл. прн: =1 |
w49 |
110001 |
0100 |
|
54 |
00110110 |
00110111 |
РгСм: = См |
w50 |
110010 |
1100 |
||
55 |
00110111 |
00111001 |
РгХ2: =Рг См |
w44 |
101100 |
1100 |
||
56 |
00111000 |
00111001 |
РгХ2: =9…9 |
w59 |
111011 |
1100 |
||
2Х+2Х |
||||||||
57 |
00111001 |
00111010 |
ТгБл. прн: =0 |
w58 |
111010 |
1100 |
||
58 |
00111010 |
00111011 |
РгВ: = РгХ2 |
w36 |
100100 |
1100 |
||
59 |
00111011 |
00111100 |
РгА: = 6…6 |
w48 |
110000 |
1100 |
||
60 |
00111100 |
00111101 |
РгСм: = См |
w50 |
110010 |
1100 |
||
61 |
00111101 |
00111110 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
62 |
00111110 |
00111111 |
РгА: = РгХ2 |
w41 |
101001 |
1100 |
||
63 |
00111111 |
01000000 |
РгСм: = См |
w50 |
110010 |
1100 |
||
64 |
01000000 |
01000001 |
Рг П: = Прн |
w52 |
110100 |
1100 |
||
65 |
01000001 |
01000010 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
66 |
01000010 |
01000011 |
РгА: = КС2 |
w47 |
101111 |
1100 |
||
67 |
01000011 |
01000110 |
v4 |
ТгБл. прн: =1 |
w49 |
110001 |
0100 |
|
68 |
01000100 |
01000101 |
РгСм: = См |
w50 |
110010 |
1100 |
||
69 |
01000101 |
01000111 |
РгХ4: =Рг См |
w45 |
101101 |
1100 |
||
70 |
01000110 |
01000111 |
РгХ4: =9…9 |
w60 |
111100 |
1100 |
||
4Х+4Х |
||||||||
71 |
01000111 |
01001000 |
ТгБл. прн: =0 |
w58 |
111010 |
1100 |
||
72 |
01001000 |
01001001 |
РгВ: = РгХ4 |
w37 |
100101 |
1100 |
||
73 |
01001001 |
01001010 |
РгА: = 6…6 |
w48 |
110000 |
1100 |
||
74 |
01001010 |
01001011 |
РгСм: = См |
w50 |
110010 |
1100 |
||
75 |
01001011 |
01001100 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
76 |
01001100 |
01001101 |
РгА: = РгХ4 |
w42 |
101010 |
1100 |
||
77 |
01001101 |
01001110 |
РгСм: = См |
w50 |
110010 |
1100 |
||
78 |
01001110 |
01001111 |
Рг П: = Прн |
w52 |
110100 |
1100 |
||
79 |
01001111 |
01010000 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
80 |
01010000 |
01010001 |
РгА: = КС2 |
w47 |
101111 |
1100 |
||
81 |
01010001 |
01010100 |
v4 |
ТгБл. прн: =1 |
w49 |
110001 |
0100 |
|
82 |
01010010 |
01010011 |
РгСм: = См |
w50 |
110010 |
1100 |
||
83 |
01010011 |
01010101 |
РгХ8: =Рг См |
w46 |
101110 |
1100 |
||
84 |
01010100 |
01010101 |
РгХ8: =9…9 |
w61 |
111101 |
1100 |
||
85 |
01010101 |
01010110 |
Сч1: =8 |
w54 |
110110 |
1100 |
||
86 |
01010110 |
01010111 |
РгСм: =0 |
w56 |
111000 |
1100 |
||
87 |
01010111 |
01100100 (100) |
V3 |
Пустая |
w57 |
111001 |
0011 |
|
РгХ+РгСм |
||||||||
88 |
01011000 |
01011001 |
ТгБл. прн: =0 |
w58 |
111010 |
1100 |
||
89 |
01011001 |
01011010 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
90 |
01011010 |
01011011 |
РгА: = 6…6 |
w48 |
110000 |
1100 |
||
91 |
01011011 |
01011100 |
РгСм: = См |
w50 |
110010 |
1100 |
||
92 |
01011100 |
01011101 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
93 |
01011101 |
01011110 |
РгА: = РгХ |
w40 |
101000 |
1100 |
||
94 |
01011110 |
01011111 |
РгСм: = См |
w50 |
110010 |
1100 |
||
95 |
01011111 |
01100000 |
Рг П: = Прн |
w52 |
110100 |
1100 |
||
96 |
01100000 |
01100001 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
97 |
01100001 |
01100010 |
РгА: = КС2 |
w47 |
101111 |
1100 |
||
98 |
01100010 |
10110100 |
v4 |
ТгБл. прн: =1 |
w49 |
110001 |
0100 |
|
99 |
01100011 |
01100100 |
РгСм: = См |
w50 |
110010 |
0011 |
||
РгХ2+РгСм |
||||||||
100 |
01100100 |
01110000 (112) |
v3 |
ТгБл. прн: =0 |
w58 |
111010 |
1100 |
|
101 |
01100101 |
01100110 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
102 |
01100110 |
01100111 |
РгА: = 6…6 |
w48 |
110000 |
1100 |
||
103 |
01100111 |
01101000 |
РгСм: = См |
w50 |
110010 |
1100 |
||
104 |
01101000 |
01101001 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
105 |
01101001 |
01101010 |
РгА: = РгХ2 |
w41 |
101001 |
1100 |
||
106 |
01101010 |
01101011 |
РгСм: = См |
w50 |
110010 |
1100 |
||
107 |
01101011 |
10110100 |
Рг П: = Прн |
w52 |
110100 |
1100 |
||
108 |
01101100 |
01101101 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
109 |
01101101 |
01101110 |
РгА: = КС2 |
w47 |
101111 |
1100 |
||
110 |
01101110 |
10110100 |
v4 |
ТгБл. прн: =1 |
w49 |
110001 |
0100 |
|
111 |
01101111 |
01110000 |
РгСм: = См |
w50 |
110010 |
0011 |
||
112 |
01110000 |
01111100 (124) |
v3 |
ТгБл. прн: =0 |
w58 |
111010 |
1100 |
|
113 |
01110001 |
01110010 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
114 |
01110010 |
01110011 |
РгА: = 6…6 |
w48 |
110000 |
1100 |
||
115 |
01110011 |
01110100 |
РгСм: = См |
w50 |
110010 |
1100 |
||
116 |
01110100 |
01110101 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
117 |
01110101 |
01110110 |
РгА: = РгХ4 |
w42 |
101010 |
1100 |
||
118 |
01110110 |
01110111 |
РгСм: = См |
w50 |
110010 |
1100 |
||
119 |
01110111 |
01111000 |
Рг П: = Прн |
w52 |
110100 |
1100 |
||
120 |
01111000 |
01111001 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
121 |
01111001 |
01111010 |
РгА: = КС2 |
w47 |
101111 |
1100 |
||
122 |
01111010 |
10110100 |
v4 |
ТгБл. прн: =1 |
w49 |
110001 |
0100 |
|
123 |
01111011 |
01111100 |
РгСм: = См |
w50 |
110010 |
0011 |
||
РгХ8+РгСм |
||||||||
124 |
01111100 |
10001000 (136) |
v3 |
ТгБл. прн: =0 |
w58 |
111010 |
1100 |
|
125 |
01111101 |
01111110 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
126 |
01111110 |
01111111 |
РгА: = 6…6 |
w48 |
110000 |
1100 |
||
127 |
01111111 |
10000000 |
РгСм: = См |
w50 |
110010 |
1100 |
||
128 |
10000000 |
10000001 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
129 |
10000001 |
10000010 |
РгА: = РгХ8 |
w43 |
101011 |
1100 |
||
130 |
10000010 |
10000011 |
РгСм: = См |
w50 |
110010 |
1100 |
||
131 |
10000011 |
10110100 |
Рг П: = Прн |
w52 |
110100 |
1100 |
||
132 |
10000100 |
10000101 |
РгВ: = РгСм |
w39 |
100111 |
1100 |
||
133 |
10000101 |
10000110 |
РгА: = КС2 |
w47 |
101111 |
1100 |
||
134 |
10000110 |
10110100 |
v4 |
ТгБл. прн: =1 |
w49 |
110001 |
0100 |
|
135 |
10000111 |
10001000 |
РгСм: = См |
w50 |
110010 |
1100 |
||
136 |
10001000 |
10001001 |
РгY: = Л (1) РгY |
w34 |
100010 |
1100 |
||
137 |
10001001 |
10001010 |
РгY [0.3]: = РгСм [28.31] |
w33 |
100001 |
1100 |
||
138 |
10001010 |
10001011 |
РгСм: =П (4) РгСм |
w51 |
110011 |
1100 |
||
139 |
10001011 |
01010111 (87) |
v5 |
Сч1: = Сч1-1 |
w53 |
110101 |
0101 |
|
140 |
10001100 |
10110100 |
ШиВых: = КС5 |
w55 |
110111 |
1100 |
4. Блок делений
Двоично-десятичное деление выполняется путем многократных вычитаний подобно тому, как это делается при делении «уголком».
Знак обрабатывается отдельно.
Функциональная схема деления
Рис.4.1
Комбинационная схема 6 сравнивает разряды мантисс, составленных из тетрад делимого (Х) и делителя (Y). Вырабатывает сигналы: v6 — Y=0,v7 — разрядность Y> разрядности X, v8 — разрядность Y= разрядности X.
Комбинационная схема 6 (КС6)
Рис.4.2
Комбинационная схема 6.1 вычисляет разрядность мантиссы числа.
Комбинационная схема 6.1 (КС6.1)
Рис.4.3
Комбинационная схема 6.1.1 вычисляет разрядность мантиссы числа по тетрадам.
Комбинационная схема 6.1.1 (КС6.1.1)
Рис.4.4
Алгоритм выполнения операции деления
Рис.4.5
табл.4.1
Таблица микрокоманд деления
Адрес МК |
Адрес след. МК |
сигнал оповещ. |
Микрокоманда |
Код МК |
Адрес оповещ. сигнала |
|||
149 |
10010101 |
10010110 |
РгX: =ШиВх |
w70 |
1000110 |
1100 |
||
150 |
10010110 |
10010111 |
РгY: =ШиВх |
w75 |
1001011 |
1100 |
||
151 |
10010111 |
10110100 |
v6 |
пусто |
w57 |
0111001 |
0110 |
|
152 |
10011000 |
10110100 |
v7 |
пусто |
w57 |
0111001 |
0111 |
|
153 |
10011001 |
10011010 |
Тг2: = РгХ [0] |
w87 |
1010111 |
1100 |
||
154 |
10011010 |
10011011 |
Тг3: = РгY [0] |
w88 |
1011000 |
1100 |
||
155 |
10011011 |
10011110 |
v8 |
пусто |
w57 |
0111001 |
1000 |
|
156 |
10011100 |
10011101 |
РгY: =Л (4) РгY |
w73 |
1001001 |
1100 |
||
157 |
10011101 |
10011011 |
Сч1: =Сч1+1 |
w83 |
1010011 |
1100 |
||
158 |
10011110 |
10011111 |
Сч2: =0 |
w86 |
1010110 |
1100 |
||
159 |
10011111 |
10100000 |
ТгБл. прн: =0 |
w89 |
1011001 |
1100 |
||
160 |
10100000 |
10100001 |
РгX1: =РгX |
w72 |
1001000 |
1100 |
||
161 |
10100001 |
10100010 |
РгY1: = |
w76 |
1001100 |
1100 |
||
162 |
10100010 |
10100011 |
РгСм: =См |
w81 |
1010001 |
1100 |
||
163 |
10100011 |
10100100 |
РгY1: = 1 |
w92 |
1011100 |
1100 |
||
164 |
10100100 |
10100101 |
РгX1: = РгСм |
w71 |
1000111 |
1100 |
||
165 |
10100101 |
10100110 |
РгСм: =См |
w81 |
1010001 |
1100 |
||
166 |
10100110 |
10101101 |
v9 |
РгП: = Прн |
w78 |
1001110 |
1001 |
|
167 |
10100111 |
10101000 |
РгX1: = РгСм |
w71 |
1000111 |
1100 |
||
168 |
10101000 |
10101001 |
РгY1: = КС2 |
w77 |
1001101 |
1100 |
||
169 |
10101001 |
10101010 |
ТгБл. прн: =1 |
w90 |
1011010 |
1100 |
||
170 |
10101010 |
10101011 |
РгСм: =См |
w81 |
1010001 |
1100 |
||
171 |
10101011 |
10101100 |
РгХ: =РгСм |
w82 |
1010010 |
1100 |
||
172 |
10101100 |
10011111 |
Сч2: = Сч2+1 |
w85 |
1010101 |
1100 |
||
173 |
10101101 |
10101110 |
РгРез: =Л (4) Ргрез |
w79 |
1001111 |
1100 |
||
174 |
10101110 |
10110001 |
v10 |
РгРез [28.31]: =Сч2 |
w80 |
1010000 |
1010 |
|
175 |
10101111 |
10110000 |
Сч1: =Сч1-1 |
w84 |
1010100 |
1100 |
||
176 |
10110000 |
10011110 |
РгY: =П (4) РгY |
w74 |
1001010 |
1100 |
||
177 |
10110001 |
10110100 |
ШиВых: =КС 5 |
w91 |
1011011 |
1100 |
5. Управляющий блок
Управляющий блок построен на основе автомата с хранимой в памяти логикой.
Принцип действия автомата:
Под воздействием синхросигнала в регистр Рг1 из памяти считывается очередная микрокоманда. Операционная часть микрокоманды поступает в операционный блок. Адресная часть микрокоманды поступает в комбинационную схему 1 (КС1), в которой формируется адрес следующей микрокоманды. Этот адрес формируется исходя из: кода операции, осведомительного сигнала из управляющего блока, адресной части микрокоманды, предыдущего адреса микрокоманды. Сформированный адрес поступает в Рг2. Далее в памяти выбирается следующая микрокоманда.
Ветвления обрабатываются следующим образом:
1. Без осведомительного сигнала (v=0) адрес следующей микрокоманды равен адресной части выбранной в памяти микрокоманды.
2. С осведомительным сигналом (v=1) адрес следующей микрокоманды получается путем прибавление единицы к адресу текущей микрокоманды.
Логическая схема управляющего блока:
Рис.5.1
Функциональная схема управляющего блока
Рис.5.2
Комбинационная схема 7 (КС7)
Комбинационная схема вырабатывает адрес следующей микрокоманды исходя из: кода операции, осведомительного сигнала из управляющего блока, адресной части микрокоманды, предыдущего адреса микрокоманды, сигнала «пуск». Если сформированный адрес является конечным, вырабатывается сигнал «стоп» для остановки процесса.
Рис.5.3
Комбинационная схема 7.1 (КС7.1)
Комбинационная схема анализирует код операции и выдает адрес начала обработки операции.
Рис.5.4
Обзор литературы
1. Каган Б.М. Электронные вычислительные машины и системы. Учеб. пособие для вузов. М.: Энергия, 1979г.528 с.
2. Угрюмов Е.П. Цифровая схемотехника СПб.: БХВ-Петербург, 2004г.528 с.