- •1 Разработка алгоритма выполнения операции автоматом
- •2 Разработка гса и функциональной схемы операционной части автомата
- •2.1 Выбор длины разрядной сетки функциональных узлов операционного автомата
- •2.2 Содержательный граф автомата
- •2.3 Список микроопераций и логических условий
- •3 Разработка логической схемы управляющей части автомата
- •3.1 Составление таблицы переходов-выходов
- •3.3Построение функций возбуждения входов элементарных автоматов и логической схемы автомата.
- •Заключение
- •Список использованной литературы
2 Разработка гса и функциональной схемы операционной части автомата
2.1 Выбор длины разрядной сетки функциональных узлов операционного автомата
В соответствии с заданием разрядность мантисс операндов nм = 16 (нулевой разряд и первый - знаковый, 2-15 разряды отведены под значение числа); разрядность порядков nп = 6 ( нулевой - знаковый, 1-6 разряды отведены под значение числа).
Описание типов слов представлено в таблице 1
Таблица 1 – Описание типов слов
Тип |
Слово |
Пояснение |
I |
РгМа(0:15) |
мантисса числа А |
I |
РгМв(0:15) |
мантисса числа B |
I |
РгРа(0:5) |
порядок числа А |
I |
РгРв(0:5) |
порядок числа В |
LO |
СММ(0:15) |
Мантисса произведения |
LO |
СМП(0:5) |
Порядок произведения |
O |
φ1 |
флаг «переполнение» |
O |
φ2 |
флаг «машинный нуль» |
2.2 Содержательный граф автомата
Содержательный граф автомата показан в приложении А, соответствующая ГСА представлена в приложении Б, граф автомата Мура в приложении В, функциональная схема в приложении Г.
2.3 Список микроопераций и логических условий
Список микроопераций и логических условий представлены в таблице 2.
Таблица 2 - Список микроопераций и логических условий
Обозна-чение |
Микрооперация |
Обзна-чение |
Логическое условие |
у1 |
СМП:=0 |
х1 |
PгMB(15) |
у2 |
СММ:=0 |
х2 |
Сч=0 |
у3 |
[РгМа]:=[Ма]мд |
х3 |
PгMB(0) |
у4 |
[РгМв]:=[Мв]мд |
х4 |
СММ(2) |
у5 |
Сч:=1410 |
х5 |
СММ(0)СММ(1) |
у6 |
РгРа:=[Ра]д |
х6 |
СМП(0) СМП(1) |
у7 |
РгРв:=[Рв]д |
|
|
у8 |
φ1:=0 |
|
|
у9 |
φ2:=0 |
|
|
у10 |
[СММ]:=[СММ]+[PгMA] |
|
|
у11 |
PгMB(1:15):=R1(СММ(15).PгMB(1:15)) |
|
|
у12 |
[СММ]:=R1([СММ]) |
|
|
у13 |
Сч:=Сч-1 |
|
|
у14 |
[СММ]:=[СММ]+ ┐[PгMA] + 1 |
|
|
у15 |
[СМП]:=[PгPA]+[PгPB] |
|
|
y16 |
СММ:=L1(СММ).РгВ(1)) |
|
|
y17 |
PгMB:=L1(PгMB) |
|
|
у18 |
СМП:=СМП+1.11111 |
|
|
у19 |
φ1:=1 |
|
|
у20 |
φ2:=1 |
|
|
3 Разработка логической схемы управляющей части автомата
3.1 Составление таблицы переходов-выходов
Таблица 3 - Таблицы переходов-выходов
Исходное состояние |
Входной набор |
Выходной набор |
Следующее состояние |
а1 |
В |
У1-У9 |
а2 |
а2 |
Х1 |
У10 |
а3 |
а2 |
|
У11-У13 |
а4 |
а3 |
– |
У11-У13 |
а4 |
а4 |
|
У11-У13 |
а4 |
а4 |
Х1 |
У10 |
а3 |
а4 |
Х2х3 |
У14 |
а5 |
а4 |
Х2 |
У15 |
а6 |
а5 |
– |
У15 |
а6 |
а6 |
|
У16-У18 |
а7 |
а6 |
Х4 |
- |
а1 |
а6 |
Х4х6 |
У20 |
а1 |
а7 |
х5 |
У19 |
а1 |
а7 |
х6 |
У20 |
а1 |
а7 |
|
- |
а1 |
3.2 Кодирование состояний автомата.
При кодировании можно воспользоваться эмпирическим алгоритмом кодирования, позволяющим уменьшить число переключаемых триггеров на каждом переходе автомата, что, в свою очередь, должно уменьшить сложность его схемной реализации. Закодируем граф автомата Мили. Составим матрицу переходов, соответствующую связям в автомате.
Пусть состояние а6 кодируется набором 000, а а7 – 001.
Так как в подматрице М3 не имеют кодовых комбинаций состояния а1, а2 то будем выбирать код состояния а1 исходя из минимальной сложности связей с состоянием а6(000) и а7(001). Сложность связей оценим весовой функцией, представляющей собой сумму расстояний по Хэммингу между кодовыми комбинациями, имеющими связь в графе. Соседними и еще не использованными являются следующие наборы: а6(000) – 010, 100, к а7(001) – 101, 011.
W010=|010-000|+|010-001|=1+2=3
W100=|100-000|+|100-001|=1+2=3
W101=|101-000|+|101-001|=2+1=3
W011=|011-000|+|011-001|=2+1=3
Пусть состоянию а1 соответствует набор 010.
|
|
Нахождение состояния а3 из условия соседства состояний а2 и а3. Соседними к а2(011) является набор 111. Пусть а3 соответствует набор 111.
|
|
Так как в подматрице М5 не имеют кодовых комбинаций состояния а4, а5 то будем выбирать код состояния а4 исходя из минимальной сложности связей с состоянием а2(011), а3(111) и а6(000). Сложность связей оценим весовой функцией, представляющей собой сумму расстояний по Хэммингу между кодовыми комбинациями, имеющими связь в графе. Соседними и еще не использованными являются следующие наборы: а3(111) – 101, 110, к а6(000) – 100.
W101=|101-011|+|101-111|+|101-000|=2+1+2=5
W110=|110-011|+|110-111|+|110-000|=2+1+2=5
W100=|100-011|+|100-111|+|100-000|=3+2+1=6
Пусть состоянию а4 соответствует набор 101.
|
Так как в подматрице М6 не имеет кодовую комбинацию состояние а5 то будем выбирать код состояния а5 исходя из минимальной сложности связей с состоянием а4(101) и а6(000). Единственной такой комбинацией является 100.
Таблица 4 - Кодировочная таблица
а1 |
а2 |
а3 |
а4 |
а5 |
а6 |
а7 |
010 |
011 |
111 |
101 |
100 |
000 |
001 |
Сложность связей оценим весовой функцией, представляющей собой сумму расстояний по Хэммингу между кодовыми комбинациями, имеющими связь в графе
Wзакод=|010-011|+|011-111|+|011+101|+|111-101|+|101-101|+|101-100|+ +|101-000|+|100-000|+|000-001|+|000-010|+|001-001|+|001-010|=1+1+2+1+0+1+2+1+ +1+1+0+2=13
Wнатур=|000-001|+|001-010|+|001-011|+|010-011|+|011-011|+|011-100|+ +|011-101|+|100-101|+|101-110|+|101-000|+|110-110|+|110-000|=1+2+1+1+0+3+2+1+ +2+2+0+2=17
13<17, следовательно, эмпирический алгоритм кодирования уменьшает сложность автомата.