Проектирование операционного устройства, реализующего получение операнда и результата. Алгебраическое вычитание для чисел с фиксированной точкой в простых дополнительных кодах. Канонический метод синтеза автоматом комбинационных схем с жесткой логикой.
Аннотация к работе
Функцию ОУ можно представить в виде R=W(D), где УА генерирует последовательность управляющих сигналов, которая определена микропрограммой и соответствует значениям ЛУ и, следовательно, задает порядок выполнения МКО в ОА. Слову П(1) присвоить значение «0». Слову С присвоить значение суммы слов А и В. Слову П(1) присвоить значение «1» и перейти к п.При разработке автомата построены структурные и функциональные схемы УА и ОА, построена обобщенная схема автомата.
Введение
Любой сложный преобразователь дискретный информации может быть представлен в виде совокупности операционных устройств (ОУ) и интерфейса (сопряжения этих устройств).
Функцией ОУ является выполнение фиксированного множества операций F={f1, f2., FG} над множеством входных слов D={d1, d2,…. DH} для вычисления слов R = {r1, r2,…, RQ}, которые являются результатами операций из множества F. В течение определенного отрезка времени устройство может реализовать только одну операцию R=fg(D), которая определяется кодом операции (номером) g=1, 2., G. Функцию ОУ можно представить в виде R=W(D), где
ОУ объединяются в структуру с помощью цепей, по которым передаются электрические сигналы. Одна цепь передает в один момент времени бит информации (0 1). Совокупность цепей, связывающих два ОУ и алгоритм, определяющий порядок передачи информации между ОУ, называется интерфейсом. Обычно ОУ представляют в виде двух автоматов: операционного автомата (ОА) и управляющего автомата (УА). ОА выполняет действия над словами информации - хранение, реализацию МКО и вычисление ЛУ - и, таким образом, является исполнительной частью ОУ. УА генерирует последовательность управляющих сигналов, которая определена микропрограммой и соответствует значениям ЛУ и, следовательно, задает порядок выполнения МКО в ОА.
На рисунке 1 представлена упрощенная структура ОУ. D - множество входных слов, R - множество выходных слов, Y - множество микроопераций, X - множество логических условий, g - код операции fg.
Рис. 1. Упрощенная структура ОУ
1. Определение функций операционного устройства
1.1 Анализ алгоритма заданной операции
Алгоритм операции: 1. Начало.
2. Слову П(1) присвоить значение «0».
3. Изменить знак вычитаемого на противоположный.
4. Образовать дополнительные коды слов А и В.
5. Слову С присвоить значение суммы слов А и В.
6. Знаковые разряды слов А и В равны?
ДА: перейти к п. 7, НЕТ: перейти к п. 9.
7. Знаковые разряды слов С и А равны?
ДА: перейти к п. 8, НЕТ: перейти к п. 10.
8. Имеется особый случай переполнения?
ДА: перейти к п. 10, НЕТ: перейти к п. 9.
9. Образовать прямой код результата и перейти к п. 11.
10. Слову П(1) присвоить значение «1» и перейти к п. 11.
11. Конец.
Для проектирования ОУ, необходимо было удостовериться в правильности алгоритма, для этого была осуществлена проверка (смотри таблицу 1).
Таблица 1. Проверка алгоритма
Пункт алгоритма Действие и результат Пункт перехода Комментарии
1. A (1:5) = 1.10112 = -11 ; B (1:5) = 1.01112 = -7 Сложение без переполнения; знаки операндов А и В отрицательные
2 П (1) = 0 3 Слову П(1) присвоить значение «0»
3 В (1) = u В (1) 4 Изменить знак вычитаемого на противоположный
4 A (1:5) = 1.0101 B (1:5) = 0.0111 5 Образовать дополнительные коды слов А и В
5 С (1:5) = A (1:5) B (1:5) A (1:5) = 1.0101 B (1:5) = 0.0111 C (1:5) = 1.1100 6 Слову С присвоить значение суммы слов А и В
6 А (1) = 1; В (1) = 0 А (1) В (1) = 19Проверка на совпадение знаковых разрядов слов А и В
9 С (1:5) = 1.01002 = -4 11Образовать прямой код результата
11 Конец
2. А (1:5) = 0.10112 = 11 ; B (1:5) = 0.01112 = 7 Сложение без переполнения; знаки операндов А и В положительные
2 П(1) = 0 3 Слову П(1) присвоить значение «0»
3 В (1) =u В (1) 4 Изменить знак вычитаемого на противоположный
4 А (1:5) = 0.1011 В (1:5) = 1.1001 5 Образовать дополнительные коды слов А и В
5 С (1:5) = A (1:5) B (1:5) A (1:5) = 0.1011 B (1:5) = 1.1001 C (1:5) = 10.0100 = 0.0100 6 Слову С присвоить значение суммы слов А и В
6 А (1) = 0; В (1) = 1 А (1) В (1) = 19Проверка на совпадение знаковых разрядов слов А и В
9 С (1:5) = 0.01002 = 4 11Образовать прямой код результата
11 Конец
3. A (1:5) = 0.10112 = 11 ; B (1:5) = 1.00112 = -3 Сложение без переполнения; знак операнда А положительный, а В отрицательный
2 П (1) = 0 3 Слову П(1) присвоить значение «0»
3 В (1) = u В (1) 4 Изменить знак вычитаемого на противоположный
4 А (1:5) = 0.1011 В (1:5) = 0.0011 5 Образовать дополнительные коды слов А и В
5 С (1:5) = A (1:5) B (1:5) A (1:5) = 0.1011 B (1:5) = 0.0011 C (1:5) = 0.1110 6 Слову С присвоить значение суммы слов А и В
6 А (1) = 0; В (1) = 0 А (1) В (1) = 07Проверка на совпадение знаковых разрядов слов А и В
7 С (1) = 0; A (1) = 0 С (1) А (1) = 08Проверка на совпадение знаковых разрядов слов А и С
8 UC(1).C (2:5) = 1.1110 9 Проверка особого случая переполнения
9 С (1:5) = 0.11102 = 14 11Образовать прямой код результата
11 Конец
4. А (1:5) = 1.10112 = -11 ; В (1:5) = 0.00112 = 3 Сложение без переполнения; знак операнда А отрицательный, а В положительный
2 П (1) = 0 3 Слову П(1) присвоить значение «0»
3 В (1) = u В (1) 4 Изменить знак вычитаемого на противоположный
4 А (1:5) = 1.0101 В (1:5) = 1.1101 5 Образовать дополнительные коды слов А и В
5 С (1:5) = A (1:5) B (1:5) A (1:5) = 1.0101 B (1:5) = 1.1101 C (1:5) = 11.0010 = 1.0010 6 Слову С присвоить значение суммы слов А и В
6 А (1) = 1; В (1) = 1 А (1) В (1) = 07Проверка на совпадение знаковых разрядов слов А и В
7 С (1) = 1; A (1) = 1 С (1) А (1) = 08Проверка на совпадение знаковых разрядов слов А и С
8 UC(1).C (2:5) = 0.1101 9 Проверка особого случая переполнения
9 С (1:5) = 1.11102 = -14 11Образовать прямой код результата
11 Конец
5. A (1:5) = 1.10112 = -11 ; B (1:5) = 0.01112 = 7 Сложение с отрицательным переполнением; знак операнда А отрицательный, а В положительный
2 П (1) = 0 3 Слову П(1) присвоить значение «0»
3 В (1) = u В (1) 4 Изменить знак вычитаемого на противоположный
4 А (1:5) = 1.0101 В (1:5) = 1.1001 5 Образовать дополнительные коды слов А и В
5 С (1:5) = A (1:5) B (1:5) A (1:5) = 1.0101 B (1:5) = 1.1001 C (1:5) = 10.1110 = 0.1110 6 Слову С присвоить значение суммы слов А и В
6 А (1) = 1; В (1) = 1 А (1) В (1) = 07Проверка на совпадение знаковых разрядов слов А и В
7 С (1) = 0; A (1) = 1 С (1) А (1) = 110Проверка на совпадение знаковых разрядов слов А и С
10 П(1) = 1 11 Слову П(1) присвоить значение «1»
11 Конец
6. А (1:5) = 0.10112 = 11 ; В (1:5) = 1.01112 = -7 Сложение с положительным переполнением; знак операнда А положительный, а В отрицательный
2 П (1) = 0 3 Слову П(1) присвоить значение «0»
3 В (1) = u В (1) 4 Изменить знак вычитаемого на противоположный
4 А (1:5) = 0.1011 В (1:5) = 0.0111 5 Образовать дополнительные коды слов А и В
5 С (1:5) = A (1:5) B (1:5) A (1:5) = 0.1011 B (1:5) = 0.0111 C (1:5) = 1.0010 6 Слову С присвоить значение суммы слов А и В
6 А (1) = 0; В (1) = 0 А (1) В (1) = 07Проверка на совпадение знаковых разрядов слов А и В
7 С (1) = 1; A (1) = 0 С (1) А (1) = 110Проверка на совпадение знаковых разрядов слов А и С
10 П(1) = 1 11 Слову П(1) присвоить значение «1»
11 Конец
7. А (1:5) = 1.01112 = -7 ; В (1:5) = 0.10012 = 9 Особый случай переполнения; знаки операндов А и В отрицательные
2 П (1) = 0 3 Слову П(1) присвоить значение «0»
3 В (1) = u В (1) 4 Изменить знак вычитаемого на противоположный
4 А (1:5) = 1.1001 В (1:5) = 1.0111 5 Образовать дополнительные коды слов А и В
5 С (1:5) = A (1:5) B (1:5) A (1:5) = 1.1001 B (1:5) = 1.0111 C (1:5) = 11.0000 = 1.0000 6 Слову С присвоить значение суммы слов А и В
6 А (1) = 1; В (1) = 1 А (1) В (1) = 07Проверка на совпадение знаковых разрядов слов А и В
7 С (1) = 1; A (1) = 1 С (1) А (1) = 08Проверка на совпадение знаковых разрядов слов А и С
8 UC(1).C (2:5) = 0.0000 10 Проверка особого случая переполнения
10 П(1) = 1 11 Слову П(1) присвоить значение «1»
11 Конец операционный устройство логика алгебраический
Результаты сверены для всех случаев, алгоритм работает верно.
1.2 Функциональная микропрограмма работы ОУ
Алгоритм выполнения операции представлен в виде содержательного графа микропрограммы (Рис. 2).
В таблице 2 приводятся описания слов, с которыми оперирует микропрограмма, представленная ранее (смотри рисунок 2).
Таблица 2. Описание слов в микропрограммах
Слово Назначение Тип Комментарий
А (1:24) Первый операнд IL Значение присваивается вне микропрограммы и используется внутри микропрограммы
В (1:24) Второй операнд IL Значение присваивается вне микропрограммы и используется внутри микропрограммы
С (1:24) Результат операции сложения LO Значение присваивается внутри микропрограммы и используется вне микропрограммы
П(1) Признак переполнения LO Значение присваивается внутри микропрограммы и используется вне микропрограммы
Рис. 2. Содержательный граф микропрограммы
1.3 Определение функции операционного автомата
Каждая функциональная микропрограмма Mg, где g = 1, 2, …, G, определяющая алгоритм выполнения операции fg F, вводит множество слов Sg, микроопераций Yg и логических условий Xg. Множество Sg, Yg, Xg характеризуют функцию ОА частично, позволяя определить средства, достаточные для реализации только одной операции fg.
На основе функциональной микропрограммы работы ОУ составляются таблицы микроопераций и логических условий (таблицы 3 и 4).
Таблица 3. Объединенный список микроопераций
Обозначение Микрооперация
П (1): = 0
B (1): = u B (1)
B (1:24): = B (1).u B (2:24) 1
A (1:24): = А (1).u A (2:24) 1
C (1:24): = A (1:24) B (1:24)
П (1): = 1
C (1:24): = C (1).u C (2:24) 1
Таблица 4. Объединенный список логических условий
Обозначение Логическое условие
B (1)
A (1)
A (1) A B (1)
C (1) A A (1) u C (1). C (2:24)=0
C (1)
1.4 Определение функции управляющего автомата
По отношению к управляющему автомату МКО и ЛУ представляются как элементарные символы, которые автомат интерпретирует в виде управляющих сигналов Y={y1, y2, …, YM} и воспринимает как осведомительные сигналы X={x1, x2, …, XL}.
Таким образом, функция управляющего автомата (УА) - это операторная схема микропрограммы, функциональными операторами которой являются символы y1, y2, …, YM отождествляемые с МКО, а в качестве ЛУ используются булевы переменные x1, x2, …, XL.
На основе функциональной микропрограммы работы ОУ и таблиц микроопераций и логических условий (смотри таблицы 3 и 4) составляется закодированная граф - схема управляющего автомата, представленная на рисунке 3. В данной граф - схеме в операторные и условные вершины вместо микроопераций и логических условий записываются их обозначения.
Функция УА определяется совокупностью закодированного графа микропрограммы, который соответствует содержательной граф - схеме.
На основании закодированного графа на стадии структурного синтеза разрабатываются структурная и функциональная схема УА. Располагая закодированным графом можно синтезировать управляющий автомат, который будет обеспечивать управление операционным автоматом.
Исходной информацией для разработки структурной схемы ОА являются: § описание типов слов, используемых в микропрограмме (таблица 2).
§ список МКО (таблица 3).
§ список ЛУ (таблица 4).
Все слова (переменные), кроме вспомогательных, должны сохранять свое значение неограниченно долго, вплоть до присвоения им нового значения. Такие переменные являются переменными с памятью в отличие от вспомогательных переменных - переменных без памяти. Переменные с памятью соответствуют всем внутренним (L) словам.
Каждой переменной с памятью ставится в соответствие регистр операционного автомата той же разрядности, что и переменная, причем i-й разряд регистра соответствует i-му разряду переменной. Регистру присваивается идентификатор соответствующего ему слова.
Для рассматриваемого варианта задания структурная схема ОА будет содержать четыре регистра - A (1:24), B (1:24), C (1:24) и П(1).
Каждой переменной без памяти ставится в соответствие шина, имеющая разрядность переменной и предназначенная для параллельной передачи слов.
Для каждого регистра определяется множество микроопераций YS и логических условий XS. На основании анализа микроопераций YS и логических условий производится выделение всех полей регистра S. В одно поле включаются те разряды регистра S, которые преобразуются микрооперациями YS одинаково.
В таблице 5 содержатся все данные, необходимые для построения структурной схемы ОА, реализующей операцию.
Таблица 5. Элементы структуры ОА
Регистр МКО ЛУ Поля
A (1:24) YA={YA, y4} XA={x2, x3, x4} A(1), A (2:23), A(24)
B (1:24) YB={YB, y2, y3} XB={x1, x3} B(1), B (2:23), B(24)
C (1:24) YC={y5, y7} XC={x4, x5, x6} C(1), C (2:23), C(24)
П(1) УП={y1, y6} ХП={?} П(1)
Опираясь на таблицу 5, в которой представлены множества микроопераций, логических условий, а также выделены поля слов - операндов, построена структурная схема ОА (Рис. 4).
Выходные цепи регистров A, B, C и П объединены в шину S, с которой поступают сигналы на входные сигналы комбинационных схем, реализующих микрооперации и вычисляющих логические условия. Если ?I - тривиальная булева функция, то логическое условие интерпретируется цепью, выходящей из соответствующего разряда регистра S (например, ЛУ x1). Предполагается, что по шине S передаются как прямые, так и инверсные значения слов, хранимых в регистрах.
Словами, описанными в таблице 2, как входные (I), ставятся в соответствие входы d1 и d2 структурной схемы. Каждый вход соединяется с регистром шиной, исходящей из входа.
Словам, описанным как выходные (O), ставятся в соответствие выходы r структурной схемы.
Управляемые шины отмечаются сигналом ym, инициирующим микрооперацию ym.
Рис. 4. Структурная схема ОА
2.2 Синтез функциональной схемы ОА
Синтез ОА проводится раздельно для каждого разряда и сводится к построению комбинационных схем, реализующих функции возбуждения D триггеров регистров. Для этого необходимо четко знать, какие микрооперации выполняются в блоке, какие логические условия вычисляются в нем и какие поля выделены. Это видно из таблицы 5.
Тогда можно приступать к синтезу комбинационной схемы разряда каждого поля, но так как разряды каждого поля обрабатываются одинаково, то можно синтезировать только один разряд из соответствующего поля.
2.2.1 Синтез регистра A МКО: YA, y4
YA: A (1:24):= d1(1:24) y4: A (1:24):= A(1).UA (2:24) 1
Поля: А(1), А (2:23), А(24).
Синтез поля A(1)
YA: A(1):= d1(1)
Заполняется каноническая таблица 6 для нахождения функции возбуждения триггера.
VD=d1(1).
Таблица 6. Каноническая таблица для определения VD t t 1 t d1(1) A(1) A(1) VD
0 0 0 0
0 1 0 0
1 0 1 1
1 1 1 1 y4: A(1):= A(1)
VD=A(1)
Окончательным результатом данного этапа работы является синтез функциональной схемы, для определения значения функции возбуждения элемента памяти A(1) регистра A, которая синтезируется по следующему выражению:
Функциональная схема поля A(1) представлена на рисунке 5а, а на рисунке 5б представлено ее условное обозначение.
а) б)
Рис. 5. Функциональная схема операционного элемента A(1) регистра А (а); условное изображение операционного элемента А(1) (б)
Синтез поля A (2:23)
YA: A(i):= d1(i), где i = {2; 23}
Синтез аналогичен синтезу поля А(1).
y4: A(i):= u
Заполняется каноническая таблица 7 для нахождения функций возбуждения триггера и функций переноса.
Таблица 7. Каноническая таблица для определения VD и P (i-1) t t 1 t
A(i) P(i) UA(i) A(i) VD P (i-1)
0 0 1 1 1 0
0 1 1 0 0 1
1 0 0 0 0 0
1 1 0 1 1 0
Аналитическое выражение для искомых функций имеет вид:
Окончательным результатом данного этапа работы является синтез функциональной схемы для определения значения функции возбуждения элемента памяти A(i) регистра A и функции переноса P (i-1), которые синтезируются по следующим выражениям:
Функциональная схема поля A(i) представлена на рисунке 6а, а на рисунке 6б представлено ее условное обозначение.
а) б)
Рис. 6. Функциональная схема операционного элемента A(i) регистра А (поле А (2:23)) (а); условное изображение операционного элемента А(i) (б)
Для поля A(2) не нужно вырабатывать функцию переноса. Функциональная схема поля A(2) представлена на рисунке 7а, а на рисунке 7б представлено ее условное обозначение.
а) б)
Рис. 7. Функциональная схема операционного элемента A(2) регистра А (а); условное изображение операционного элемента А(2) (б)
Синтез поля A(24)
YA: A(24):= d1(24)
Синтез аналогичен синтезу поля А(1).
y4: A(24):= A(24)
Заполняется каноническая таблица 8 для нахождения функции возбуждения триггера и функции переноса.
Таблица 8. Каноническая таблица для определения VD и P(23) t t 1 t
A(24) A(24) VD P(23)
0 0 0 1
1 1 1 0
Аналитическое выражение для искомых функций имеет вид:
Окончательным результатом данного этапа работы является синтез функциональной схемы для определения значения функции возбуждения элемента памяти A(24) регистра A и функции переноса P(23), которые синтезируется по следующим выражениям:
Функциональная схема поля A(24) представлена на рисунке 8а, а на рисунке 8б представлено ее условное обозначение.
a) б)
Рис. 8. Функциональная схема операционного элемента A(24) регистра А (а); условное изображение операционного элемента А(24) (б)
2.2.2 Синтез регистра B
МКО: УВ, y2,y3
YB: B (1:24):= d2(1:24) y2: B(1):= UB(1) y3: B (1:24):= B(1).UB (2:24) 1
Поля: B(1), B (2:23), B(24).
Синтез поля B(1)
YB: B(1):= d2(1)
Синтез аналогичен синтезу поля А(1)
VD=d2(1). y2: B(1):= UB(1)
Заполняется каноническая таблица 9 для нахождения функции возбуждения триггера
Таблица 9. Каноническая таблица для определения VD t t 1 t
B(1) B(1) VD
0 1 1
1 0 0
Окончательным результатом данного этапа работы является синтез функциональной схемы для определения значения функции возбуждения элемента памяти B(1) регистра B, которая синтезируется по следующему выражению:
Функциональная схема поля B(1) представлена на рисунке 9а, а на рисунке 9б представлено ее условное обозначение.
а) б)
Рис. 9. Функциональная схема операционного элемента B(1) регистра B (а); условное изображение операционного элемента B(1) (б)
Синтез полей В (2:23) и B(24) производится аналогично синтезу блока А с заменой нескольких аргументов в функциях возбуждения: на ; на ; на .
Условное изображение операционного элемента B (2:23) изображено на рисунке 10, а B(24) на рисунке 11, B(2) на рисунке 12.
Рис. 10. Условное изображение операционного элемента B (2:23)
Рис. 11. Условное изображение операционного элемента B(24)
Рис. 12. Условное изображение элемента B(2)
2.2.3 Синтез регистра С
МКО: y5, y7 y5: C (1:24):= A (1:24) B (1:24) y7: C (1:24):= C(1).UC (2:24) 1
Поля: С(1), C (2:23), C(24)
Синтез поля C(1) y5: C(1):= A(1) B(1) P(1)
Заполняется каноническая таблица 10 для нахождения функции возбуждения триггера.
Таблица 10. Каноническая таблица для определения VD t t 1 t
A(1) B(1) P(1) C(1) VD
0 0 0 0 0
0 0 1 1 1
0 1 0 1 1
0 1 1 0 0
1 0 0 1 1
1 0 1 0 0
1 1 0 0 0
1 1 1 1 1
VD= A(1) B(1) P(1)= y7: С(1)=С(1)
VD=C(1)
Окончательным результатом данного этапа работы является синтез функциональной схемы для определения значения функции возбуждения элемента памяти C(1) регистра C, которая синтезируется по следующему выражению:
Функциональная схема поля C(1) представлена на рисунке 13а, а на рисунке 13б представлено ее условное обозначение. a) б)
Рис. 13. Функциональная схема операционного элемента C(1) регистра C (а); условное изображение операционного элемента C(1) (б)
Синтез поля C (2:23) y5: ,
где i = {2; 23}
Заполняется каноническая таблица 11 для нахождения функций возбуждения триггера и функций переноса.
Таблица 11. Каноническая таблица для определения VD и Р (i-1) t t 1 t
A(i) B(i) P(i) C(i) VD P (i-1)
0 0 0 0 0 0
0 0 1 1 1 0
0 1 0 1 1 0
0 1 1 0 0 1
1 0 0 1 1 0
1 0 1 0 0 1
1 1 0 0 0 1
1 1 1 1 1 1
Функцию переноса найдем с помощью карты Карно:
Аналитическое выражение для искомых функций имеет вид:
y7: C(i):= P(i) u C(i)
Заполняется каноническая таблица 12 для нахождения функций возбуждения триггера и функций переноса.
Таблица 12. Каноническая таблица для определения VD и P (i-1) t t 1 t
C(i) UC(i) P(i) C(i) VD P (i-1)
0 1 0 1 1 0
0 1 1 0 0 1
1 0 0 0 0 0
1 0 1 1 1 0
Окончательным результатом данного этапа работы является синтез функциональной схемы для определения функции возбуждения элемента памяти C(i) и функции переноса P (i-1) регистра C, которые синтезируются по следующим выражениям:
Функциональная схема поля C(i) представлена на рисунке 14а, а на рисунке 14б представлено ее условное обозначение.
а) б)
Рис. 14. Функциональная схема операционного элемента C(i) регистра C (поле C (2:23)) (а); условное изображение операционного элемента C(i) (б)
Синтез поля С(24) y5: C(24):= A(24) B(24)
Заполняется каноническая таблица 13 для нахождения функции возбуждения триггера и функции переноса.
Таблица 13. Каноническая таблица для определения VD и P(23) t t 1 t
A(24) B(24) C(24) VD P(23)
0 0 0 0 0
0 1 1 1 0
1 0 1 1 0
1 1 0 0 1
Аналитическое выражение для искомой функции имеет вид:
y7: C(24):= C(24)
Заполняется каноническая таблица 14 для нахождения функции возбуждения триггера и функции переноса.
Таблица 14. Каноническая таблица для определения VD и P(23) t t 1 t
C(24) C(24) VD P(23)
0 0 0 1
1 1 1 0
Аналитическое выражение для искомой функции имеет вид:
Окончательным результатом данного этапа работы является синтез функциональной схемы для определения значения функции возбуждения, элемента памяти С(24) и функции переноса P(23) регистра С, которые синтезируются по следующим выражениям:
Функциональная схема поля С(24) представлена на рисунке 15а, а на рисунке 15б представлено ее условное обозначение.
а) б)
Рис. 15. Функциональная схема операционного элемента C(24) регистра C (а); условное изображение операционного элемента C(24) (б)
2.2.4 Синтез регистра П
МКО: , ) П(1):= 0
) П(1):= 1
) П(1):=0
VD = 0
) П(1):=1
VD=1
Окончательным результатом данного этапа работы является синтез функциональной схемы для определения значения функции возбуждения элемента памяти П(1) регистра П, которая синтезируется по следующему выражению: .
Функциональная схема поля П(1) представлена на рисунке 16а, а на рисунке 16б представлено ее условное обозначение.
2.3 Синтез функциональной схемы для вычисления логических условий
Вычисление логических условий происходит в операционном автомате.
Таблица 15. Вычисление логических условий x1 { 1, если B(1) 0, иначе x2 { 1, если А(1) 0, иначе x3 { 1, если 0, иначе x4 { 1, если 0, иначе x5 { 1, если u(UC(1) = 0, иначе x6 { 1, если С(1) 0, иначе Функциональная схема логических условий представлена на рисунке 17а, а на рисунке 17б ее условное обозначение.
а) б)
Рис. 17. Схема вычисления значений логических условий (а); условное изображение схемы (б)
Исходной информацией для синтеза УА является объединенная закодированная граф-схема работы УА. Синтез УА осуществляется в два этапа: § получение отмеченной граф - схемы УА.
§ построение графа автомата.
Конечный автомат можно разделить на автомат Мура и Мили. В данном курсовом проекте принято описать УА как автомат Мура. Число внутренних состояний автомата Мура равно 8, откуда количество двоичных разрядов для кодирования внутренних состояний соответственно равно log2 8 = 3. Следовательно, для построения автомата Мура потребуется три триггера. На рисунке 18 представлена разметка внутренних состояний автомата Мура.
Рис. 18. Разметка внутренних состояний автомата Мура
3.1 Структурная схема УА
Для построения структурной схемы УА необходимо произвести кодирование внутренних состояний памяти.
Количество Т - синхронных триггеров, необходимых для построения памяти УА, равно трем (см. выше). Кодировка представлена в таблице 16.
Таблица 16. Кодировка внутренних состояний триггеров
Ai T1 T2 T3 Выход дешифратора
A0 0 0 0 0
A1 0 0 1 1
A2 0 1 0 2
A3 0 1 1 3
A4 1 0 0 4
A5 1 0 1 5
A6 1 1 0 6
A7 1 1 1 7
Кодирование производится путем замены индекса Ai на двоичный код, соответствующий номеру индекса.
Опираясь на таблицу внутренних состояний и закодированную граф-схему управляющего автомата строится граф, задающий работу УА (в данном курсовом проекте автомат Мура).
3.2 Функциональная схема УА
Окончательный результат функций возбуждения элементов памяти. Значениям Ai в уравнениях соответствуют выходы дешифратора.
Для первого триггера:
Минимизируем, используя карту Карно:
На основании полученного выражения строится схема КС1 (Рис. 20) управляющего автомата, которая реализует функцию возбуждения триггера.
Для второго триггера:
На основании полученного выражения строится схема КС2 (Рис. 21) управляющего автомата, которая реализует функцию возбуждения триггера.
Для третьего триггера:
Минимизируем, используя карту Карно:
На основании полученного выражения строится схема КС3 управляющего автомата, которая реализует функцию возбуждения триггера.
Вывод
В результате разработан абстрактный автомат по предложенному алгоритму. При разработке автомата построены структурные и функциональные схемы УА и ОА, построена обобщенная схема автомата.