1. ПОБУДОВА
ОБ'ЄДНАНОЇ
ГСА
1.1. Побудова
ГСА
По описах
граф-схем, приведених
в завданні
до курсової
роботи,
побудуємо
ГСА
Г1-Г5
(мал. 1.1-1.5), додавши
початкові і
кінцеві вершини
і замінивши
кожний оператор
Yi операторною
вершиною, а
кожну умову
Xi
- умовною.
1.2. Методика
об'єднання ГСА
У ГСА
Г1-Г5
є однакові
ділянки,
тому побудова
автоматів за
ГСА
Г1-Г5
приведе до
невиправданих
апаратурних
витрат.
Для досягнення
оптимального
результату
скористаємося
методикою
С.І.Баранова,
яка дозволяє
мінімізувати
число операторних
і умовних вершин.
Заздалегідь
помітимо
операторні
вершини в початкових
ГСА,
керуючись
слідуючими
правилами:
1) однакові
вершини Yi
в різних ГСА
відмічаємо
однаковими
мітками
Aj;
2) однакові
вершини Yi
в межах однієї
ГСА
відмічаємо
різними мітками
Aj;
3) у
всіх ГСА
початкову
вершину помітимо
як А0,
а кінцеву - як
Ak.
На
наступному
етапі кожній
ГСА
поставимо у
відповідність
набір змінних
PnО
{P1...Pq},
де q=]log2N[,
N -кількість
ГСА.
Означувальною
для ГСА
Гn
ми будемо називати
кон`юнкцию
Pn=p1eЩ...Щpqn
еО{0,1},
причому p0=щр,
p1=р.
Об'єднана
ГСА
повинна
задовольняти
слідуючим
вимогам:
1) якщо
МК
Ai
входить хоча
б в одну
часткову ГСА,
то вона входить
і в об'єднану
ГСА
Г0,
причому тільки
один
раз;
2) при
підстановці
набору значень
(е1...en),
на якому Pq=1
ГСА
Г0
перетворюється
в ГСА,
рівносильну
частковій ГСА
Гq.
При
об'єднанні ГСА
виконаємо
слідуючі
етапи:
-сформуємо
часткові МСА
М1
- М5,
що відповідні
ГСА
Г1
- Г5;
- сформуємо
об'єднану
МСА
М0;
- сформуємо
системи дужкових
формул переходу
ГСА
Г0;
- сформуємо
об'єднану
ГСА
Г0.
1.3. Об'єднання
часткових ГСА
Часткові
МСА
М1-М5
побудуємо
по ГСА
Г1-Г5
(мал.1.1) відповідно.
Рядки МСА
відмітимо
всіма мітками
Ai,
що входять до
ГСА,
крім
кінцевої Ak.
ПОЧАТОК
A0
1
0 X1 1
2
A1
3
0
4 X2 A2
1
5
A3
6
A4
7
A5
8
A6
9
A7
10
A8
КіНЕЦь
Ak
Мал.1.1.
Часткова граф-схема
алгоритму Г1
ПОЧАТОК A0
1
A1
2
A7
0 3 1
X3
4 5
A9 A6
6 7
A10 A12
8 9
A3 A22
10
A11
КіНЕЦЬ Ak
Мал.1.2.
Часткова граф-схема
алгоритму Г2
ПОЧАТОК A0
1
A11
0 2 1
X1
3 4
A15 A16
6
5
1
X3 A12
0
7 8
A6 A13
КіНЕЦЬ
Аk
Мал.1.3.
Часткова граф-схема
алгоритму Г3
ПОЧАТОК A0
1
0
1
X1
2
A13
3
A9
4
A8
5
1 X2
6 0
A17
7
A6
8
A2
9
A18
КіНЕЦЬ
Ak
Мал.1.4.
Часткова граф-схема
алгоритму Г4
ПОЧАТОК A0
1
A1
2
A6
3
A19
4
0 1
X1
5
0
X2
1
6
A20
7
A17
8
A2
9
A21
КіНЕЦЬ
Ak
Мал.1.5.
Часткова граф-схема
алгортиму Г5
Стовпці
МСА
відмітимо
всіма мітками
Ai,
що входять до
ГСА,
крім
початкової
A0.
На перетині
рядка Ai
і стовпця Aj
запишемо
формулу переходу
fij
від оператора
Ai
до оператора
Aj.
Ця функція
дорівнює 1 для
безумовного
переходу або
кон`юнкції
логічних умов,
відповідних
виходам умовних
вершин, через
які проходить
шлях з
вершини з міткою
Ai
у вершину з
міткою Aj.
За методикою
об'єднання
закодуємо МСА
таким чином:
Таблиця
1.1
Кодування
МСА
-
МСА
|
P1P2P3
|
М1
|
0
0 0 (щp1щp2щp3)
|
М2
|
0
0 1 (щp1щp2p3)
|
М3
|
0
1 0 (щp1p2щp3)
|
М4
|
0
1 1 (щp1p2p3)
|
М5
|
1
0 0 (p1щp2щp3)
|
Часткові
МСА М1-М5
наведені в
табл.1.2-1.6
Таблиця
1.2
Часткова
МСА М1
|
A1
|
A2
|
A3
|
A4
|
A5
|
A6
|
A7
|
A8
|
Ak
|
A0
|
щx1
|
щx1щx2
|
x1x2
|
|
|
|
|
|
|
A1
|
|
1 |
|
|
|
|
|
|
|
A2
|
|
|
|
|
|
1 |
|
|
|
A3
|
|
|
|
1 |
|
|
|
|
|
A4
|
|
|
|
|
1 |
|
|
|
|
A5
|
|
|
|
|
|
1 |
|
|
|
A6
|
|
|
|
|
|
|
1 |
|
|
A7
|
|
|
|
|
|
|
|
1 |
|
A8
|
|
|
|
|
|
|
|
|
1 |
Таблиця
1.3
Часткова
МСА М2
|
A1
|
A3
|
A6
|
A7
|
A9
|
A10
|
A11
|
A12
|
A22
|
Ak
|
A0
|
1 |
|
|
|
|
|
|
|
|
|
A1
|
|
|
|
1 |
|
|
|
|
|
|
A3
|
|
|
|
|
|
|
1 |
|
|
|
A6
|
|
|
|
|
|
|
|
1 |
|
|
A7
|
|
|
x3
|
|
щx3
|
|
|
|
|
|
A9
|
|
|
|
|
|
1 |
|
|
|
|
A10
|
|
1 |
|
|
|
|
|
|
|
|
A11
|
|
|
|
|
|
|
|
|
|
1 |
A12
|
|
|
|
|
|
|
|
|
1 |
|
A22
|
|
|
|
|
|
|
|
|
|
1 |
Таблиця
1.4
Часткова
МСА М3
|
A6
|
A12
|
A13
|
A14
|
A15
|
A16
|
Ak
|
A0
|
|
|
|
1 |
|
|
|
A6
|
|
|
|
|
|
|
1 |
A12
|
|
|
1 |
|
|
|
|
A13
|
|
|
|
|
|
|
1 |
A14
|
|
|
|
|
щx1
|
x1
|
|
A15
|
x3
|
|
|
|
|
|
щx3
|
A16
|
|
1 |
|
|
|
|
|
Таблиця
1.5
Часткова
МСА М4
|
A2
|
A6
|
A8
|
A9
|
A13
|
A17
|
A18
|
Ak
|
A0
|
|
|
щx1
|
|
x1
|
|
|
|
A2
|
|
|
|
|
|
|
1 |
|
A6
|
1 |
|
|
|
|
|
|
|
A8
|
|
|
|
|
|
x2
|
|
щx2
|
A9
|
|
|
1 |
|
|
|
|
|
A13
|
|
|
|
1 |
|
|
|
|
A17
|
|
1 |
|
|
|
|
|
|
A18
|
|
|
|
|
|
|
|
1 |
Таблиця
1.6
Часткова
МСА М5
|
A1
|
A2
|
A6
|
A17
|
A19
|
A20
|
A21
|
Ak
|
A0
|
1 |
|
|
|
|
|
|
|
A1
|
|
|
1 |
|
|
|
|
|
A2
|
|
|
|
|
|
|
1 |
|
A6
|
|
|
|
|
1 |
|
|
|
A17
|
|
1 |
|
|
|
|
|
|
A19
|
|
x1щx2
|
|
|
|
x1x2
|
щx1
|
|
A20
|
|
|
|
1 |
|
|
|
|
A21
|
|
|
|
|
|
|
|
1 |
На наступному
етапі побудуємо
об'єднану
МСА
М0,
в якій рядки
відмічені
всіма мітками
Аi,
крім
Аk,
а стовпці - всіма,
крім
А0.
На перетині
рядка Аi
і стовпця Аj
запишемо
формулу переходу,
яка формується
таким чином:
Fij=P1fij1+...+Pnfijn
(n=1...N). Де fijn-формула
переходу з
вершини Аi
у вершину Аj
для n-ої ГСА.
Наприклад,
формула переходу
А0®А1
буде мати вигляд
F0,1=щx1щp1щp2щp3+
щp1щp2p3+
+p1щp2щp3.
У результаті
ми отримаємо
об'єднану
МСА
М0
(табл.1.7). Ми маємо
можливість
мінімізувати
формули переходу
таким чином:
розглядаючи
ГСА
Г0
як ГСА
Гn,
ми підставляємо
певний набір
Pn=1,
при
цьому змінні
p1..pq
не змінюють
своїх значень
під час проходу
по ГСА.
Таким чином,
якщо
у вершину Аi
перехід завжди
здійснюється
при
незмінному
значенні pq,
то це значення
pq
в рядку Аi
замінимо на
“1", а його інверсію
на “0". Наприклад,
у вершину А3
перехід здійснюється
при
незмінному
значенні щp1
і щp2,
отже в рядку
А3
щp1
і щp2
замінимо на
“1", а p1
і p2
на “0". У результаті
отримаємо
формули F3,4=щp3,
F3,11=p3.
Керуючись
вищенаведеним
методом, отримаємо
мінімізовану
МСА
М0
(табл.1.8).
По таблиці
складемо формули
переходу для
об'єднаної
ГСА
Г0.
Формулою переходу
будемо називати
слідуюче
вираження:
Ai®Fi,1А1+..+Fi,kАk,
де
Fi,j-
відповідна
формула переходу
з
мінімізованої
МСА.
У нашому випадку
отримаємо
слідуючу
систему формул:
A0®щx1щp1щp2щp3A1+щp1щp2p3A1+p1щp2щp3A1+x1щx2щp1щp2щp3A2+x1x2щp1щp2щp3A3+
+щx1щp1p2p3A8+x1щp1p2p3A13+щp1p2щp3A14
A1®щp1щp3A2+p1щp3A6+щp1p3A7
A2®щp1щp2щp3A6+щp1p2p3A18+p1щp2p3A21
A3®щp3A4+p3A11
A4®A5
A5®А6
Таблиця
1.7
Об`єднана МСА
Мo
|
A1
|
A2
|
A3
|
A4
|
A5
|
A6
|
A7
|
A8
|
A9
|
A10
|
A11
|
A12
|
A13
|
A14
|
A15
|
A16
|
A17
|
A18
|
A19
|
A20
|
A21
|
A22
|
Ak
|
A0
|
_
_ _ _
x1p1p2p3+
_
_
+p1p2p3+
_
_
+p1p2p3
|
_
_ _ _
x1x2p1p2p3
|
_
_ _
x1x2p1p2p3
|
|
|
|
|
_
_
x1p1p2p3
|
|
|
|
|
_
x1p1p2p3
|
_
_
p1p2p3
|
|
|
|
|
|
|
|
|
|
A1
|
|
_
_ _
p1p2p3
|
|
|
|
_
_
p1p2p3
|
_
_
p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A2
|
|
|
|
|
|
_
_ _
p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
_
p1p2p3
|
|
|
_
_
p1p2p3
|
|
|
A3
|
|
|
|
_
_ _
p1p2p3
|
|
|
|
|
|
|
_
_
p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
|
A4
|
|
|
|
|
_
_ _
p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A5
|
|
|
|
|
|
_
_ _
p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A6
|
|
_
p1p2p3
|
|
|
|
|
_
_ _
p1p2p3
|
|
|
|
|
_
_
p1p2p3
|
|
|
|
|
|
|
_
_
p1p2p3
|
|
|
|
_
_
p1p2p3
|
A7
|
|
|
|
|
|
_
_
x3p1p2p3
|
|
_
_ _
p1p2p3
|
_
_ _
x3p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A8
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_
x2p1p2p3
|
|
|
|
|
|
_
_ _
p1p2p3+
_
_
+x2p1p2p3
|
A9
|
|
|
|
|
|
|
|
_
p1p2p3
|
|
_
_
p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A10
|
|
|
_
_
p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A11
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_
_
p1p2p3
|
A12
|
|
|
|
|
|
|
|
|
|
|
|
|
_
_
p1p2p3
|
|
|
|
|
|
|
|
|
_
_
p1p2p3
|
|
A13
|
|
|
|
|
|
|
|
|
_
p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_
_
p1p2p3
|
A14
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_
_ _
x1p1p2p3
|
_
_
x1p1p2p3
|
|
|
|
|
|
|
|
A15
|
|
|
|
|
|
_
_
x3p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_
_ _
x3p1p2p3
|
A16
|
|
|
|
|
|
|
|
|
|
|
|
_
_
p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
A17
|
|
_
_
p1p2p3
|
|
|
|
_
p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A18
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_
p1p2p3
|
A19
|
|
_
_ _
x1x2p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_
_
x1x2p1p2p3
|
_
_ _
x1p1p2p3
|
|
|
A20
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_
_
p1p2p3
|
|
|
|
|
|
|
A21
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_
_
p1p2p3
|
A22
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_
_
p1p2p3
|
Таблиця
1.8
Об`єднана
мінімізована
МСА Мo
|
A1
|
A2
|
A3
|
A4
|
A5
|
A6
|
A7
|
A8
|
A9
|
A10
|
A11
|
A12
|
A13
|
A14
|
A15
|
A16
|
A17
|
A18
|
A19
|
A20
|
A21
|
A22
|
Ak
|
A0
|
_
_ _ _
x1p1p2p3+
_
_
+p1p2p3+
_
_
+p1p2p3
|
_
_ _ _
x1x2p1p2p3
|
_
_ _
x1x2p1p2p3
|
|
|
|
|
_
_
x1p1p2p3
|
|
|
|
|
_
x1p1p2p3
|
_
_
p1p2p3
|
|
|
|
|
|
|
|
|
|
A1
|
|
_
_
p1p3
|
|
|
|
_
p1p3
|
_
p1p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A2
|
|
|
|
|
|
_
_ _
p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
_
p1p2p3
|
|
|
_
_
p1p2p3
|
|
|
A3
|
|
|
|
_
p3
|
|
|
|
|
|
|
p3
|
|
|
|
|
|
|
|
|
|
|
|
|
A4
|
|
|
|
|
1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A5
|
|
|
|
|
|
1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A6
|
|
_
p1p2p3
|
|
|
|
|
_
_ _
p1p2p3
|
|
|
|
|
_
_
p1p2p3
|
|
|
|
|
|
|
_
_
p1p2p3
|
|
|
|
_
_
p1p2p3
|
A7
|
|
|
|
|
|
x3p3
|
|
_
p3
|
_
x3p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A8
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x2p2p3
|
|
|
|
|
|
_
_
p2p3+
_
+x2p2p3
|
A9
|
|
|
|
|
|
|
|
p2
|
|
_
p2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A10
|
|
|
1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A11
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1
|
A12
|
|
|
|
|
|
|
|
|
|
|
|
|
_
p2p3
|
|
|
|
|
|
|
|
|
_
p2p3
|
|
A13
|
|
|
|
|
|
|
|
|
p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_
p3
|
A14
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_
x1
|
x1
|
|
|
|
|
|
|
|
A15
|
|
|
|
|
|
x3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_
x3
|
A16
|
|
|
|
|
|
|
|
|
|
|
|
1
|
|
|
|
|
|
|
|
|
|
|
|
A17
|
|
_
_
p1p2p3
|
|
|
|
_
p1p2p3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A18
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1
|
A19
|
|
_
x1x2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x1x2
|
_
x1
|
|
|
A20
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1
|
|
|
|
|
|
|
A21
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1
|
A22
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1
|
A6®щp1p2p3A2+щp1щp2щp3A7+щp1щp2p3A12+p1щp2щp3A19+щp1p2щp3Ak
A7®x3p3A6+щp3A8+щx3p3A9
A8®x2p2p3A17+щp2щp3Ak+щx2p2p3Ak
A9®p2A8+щp2A10
A10®A3
A11®Ak
A12®щp2p3A22+p2щp3A13
A13®p3A9+щp3Ak
A14®щx1A15+x1A16
A15®x3A6+щx3Ak
A16®A12
A17®p1щp2щp3A2+щp1p2p3A6
A18®Ak
A19®x1щx2A2+x1x2A20+щx1A21
A20®A17
A21®Ak
A22®Ak
При
побудові
системи дужкових
формул переходу
необхідно кожну
формулу привести
до вигляду
Аx1+Вщx1,
де А і В -деякі
вирази, а x1
і щx1-логічні
умови переходу.
Формули переходу
для вершин А3,
А4,
А5,
А9,
А10,
А11,
А13,
А14,
А15,
А16,
А18,
А20,
А21,
А22
вже є елементарними
(розкладеними),
а в інших є вирази
виду Аn®xj(А)
+щxjpi(В).
Тут pi
відповідає
чекаючій вершині
(мал.1.6). Подібних
вершин в об'єднаній
ГСА
бути не повинно.
Для їх усунення
скористаємося
слідуючим
правилом: додавання
виразу
[PqАn]
не змінить
формулу, якщо
набір Pq
не використовується
для кодування
ГСА
або вершина
Аn
відсутня в ГСА
з кодом Pq.
Таким чином,
додаючи допоміжні
набори, ми отримаємо
можливість
за допомогою
елементарних
перетворень
звести формули
до необхідного
вигляду.
Наприклад,
формула
A8®x2p2p3A17+щp2щp3Ak+щx2p2p3A
спрощується
таким чином
A8=p3(x2p2A17+щx2p2Ak)+щp3щp2Ak=p3p2(x2A17+щx2Ak)+щp3щp2Ak=
1 Xj 0
Pi 0
1
Мал.1.6
Приклад чекаючої
вершини Pi
=[щp3p2(x2A17+щx2Ak)]+p3p2(x2A17+щx2Ak)+щp3щp2Ak+[p3щp2Ak]=щp2Ak+p2(x2A17+щx2Ak).
Тут вершина
А8 не
зустрічається
у ГСА ,в кодах
яких присутні
комбінації
щp3p2
і
p3щp2.
Нижче наведено
розклад усіх
неелементарних
формул переходу.
A0=p1(щp2щp3A1)+щp1(щx1щp2щp3A1+щp2p3A1+x1щx2щp2щp3A2+x1x2щp2щp3A3+
+щx1p2p3A8+x1p2p3A13+p2щp3A14)=p1(щp2щp3A1)+[p1щp2щp3A1]+
+щp1(p2(щx1p3A8+x1p3A13+щp3A14)+щp2(щx1щp3A1+p3A1+x1щx2щp3A2+
+x1x2щp3A3))=p1(щp2A1)+[p1p2A1]+щp1(p2(p3(щx1A8+x1A13)+щp3A14)+
+щp2(щp3(щx1A1+x1x2A3+x1щx2A2)+p3A1))=
p1A1+щp1(p2(p3(
щx1A8+
+x1A13)+щp3A14)+щp2(щp3(щx1A1+x1(x2A3+щx2A2))+p3A1))
A1=щp1(p3A7+щp3A2)+p1щp3A6+[p1p3A6]=
щp1(p3A7+щp3A2)+p1A6
A2=p1(щp2p3A21)+щp1(щp2щp3A6+p2p3A18)=
p1(щp2p3A21)+[p1щp2p3A21]+
+щp1(щp2щp3A6+[p2щp3A6]+p2p3A18+[p3щp2A18])=p1(щp2A21)+щp1(щp3A6+
+p3A18)=p1(щp2A21)+[p1p2A21]+щp1(щp3A6+p3A18)=p1A21+щp1(щp3A6+
+p3A18)
A6=p1(щp2щp3A19)+[p1щp2p3A19]+щp1(p2p3A2+щp2щp3A7+щp2p3A12+p2щp3Ak)=
=p1щp2A19+[p1p2A19]+щp1(p2(p3A2+щp3Ak)+щp2(щp3A7+p3A12))=p1A19+
+щp1(p2(p3A2+щp3Ak)+щp2(щp3A7+p3A12))
A7=p3(x3A6+щx3A9)+щp3A8
A8=p3(x2p2A17+щx2p2Ak)+щp3щp2Ak=p3p2(x2A17+щx2Ak)+щp3щp2Ak=
=[щp3p2(x2A17+щx2Ak)]+p3p2(x2A17+щx2Ak)+щp3щp2Ak+[p3щp2Ak]=щp2Ak+
+p2(x2A17+щx2Ak)
A12=щp2p3A22+p2щp3A13+[p2p3A22]+[щp2щp3A13]=p3A22+щp3A13
A17=p1щp2щp3A2+[p1щp2p3A2]+щp1p2p3A6+[щp1щp2p3A6]=p1щp2A2+[p1p2A2]+
+щp1p3A6+[щp1щp3A6]=p1A2+щp1A6
A19=x1(щx2A2+x2A20)+щx1A21
Об'єднану
ГСА
Г0
(мал.1.7) побудуємо
відповідно
до формул переходу,
замінюючи кожну
мітку
Аi
відповідною
операторною
вершиною Yt,
а кожний вираз
Xi
і Pj
відповідними
умовними вершинами.
2.СИНТЕЗ
АВТОМАТА З
ПРИМУСОВОЮ
АДРЕСАЦІЄЮ
МІКРОКОМАНД.
2.1. Принцип
роботи
автомата.
При
примусовій
адресації
адреса наступної
мікрокоманди
задається в
полі поточної
мікрокоманди.
Формат МК
в такому випадку
слідуючий
(мал. 2.1.).
1
Y m 1
X l 1
A0
k
1
A1
k
Мал. 2.1
Формат команди
автомата з ПА.
Тут у
полі Y міститься
код, що задає
набір мікрооперацій,
у полі X-код логічної
умови, що перевіряється,
у полях A0
і A1-
адреси переходу
при невиконанні
логічної умови,
що перевіряється
або безумовному
переході і при
істинності
логічної умови
відповідно.
Розрядність
полів визначається
таким чином:
m=]log2T[
Т- число наборів
мікрооперацій,
що використовуються
в ГСА, в нашому
випадку Т=17, m=5
l=]log2
(L+1)[ L-число логічних
умов у ГСА, в
нашому випадку
L=6, l=3
k=]log2
Q[ Q -кількість
мікрокоманд.
Структурна
схема автомата
приведена на
мал. 2.2. Автомат
функціонує
таким чином.
Схема запуску
складається
з RS -тригера і
схеми “&", яка
блокує надходження
синхроімпульсів
на РАМК і РМК.
За сигналом
“Пуск" тригер
встановлюється
в одиницю і
відбувається
запис мікрокоманд
до регістру.
Поле Y надходить
на схему формування
МО і перетворюється
в деякий набір
мікрооперацій.
Поле X надходить
до схеми формування
адреси, яка
формує сигнал
Z2,
якщо перехід
безумовний
(X=0) або ЛУ , що
перевіряється,
дорівнює 0, або
сигнал Z1
у випадку істинності
ЛУ. За сигналом
Z1(Z2)
до адресного
входу ПЗП надходить
значення поля
A1(A0).
За сигналу y0
тригер встановлюється
в нуль і автомат
зупиняє свою
роботу. За сигналом
"Пуск" до РАМК
заноситься
адреса початкової
МК (А=0).
2.2. Перетворення
початкової
ГСА.
Перетворення
буде полягати
в тому, що у всі
операторні
вершини, пов'язані
з кінцевою,
вводиться
сигнал y0,
а між всіма
умовними вершинами,
які пов'язані
з кінцевою,
вводиться
операторна
вершина, що
містить сигнал
y0.
Причому, ця
вершина буде
загальною для
всіх умовних.
З урахуванням
вищесказаного
отримаємо
перетворену
ГСА (мал. 2.3). У
перетвореній
ГСА ми зберігаємо
позначення
Yi,
але при цьому
пам'ятаємо, що
кожна мікрокоманда
Yi
РАМК
Z1
Z2
S T
& ПЗП
“Пуск”
СІ
R РМК
Y X A0
A1
СФМО
Z1 y0
.... yi
СФА до
ОА
Z2
Мал.2.2.
Структурна
схема автомата
з ПА
розбивається
на мікрооперації
yi..yj
згідно з табл.
2.1.
Таблиця
2.1.
Розподіл
МО
по мікрокомандам.
-
МК
|
Мікрооперації
|
МК
|
Мікрооперації
|
Y1
|
y1y2y9y10
|
Y12
|
y5y6y12y17y19
|
Y2
|
y1y5y12y19
|
Y13
|
y4y6y20y21
|
Y3
|
y1y6y11y20
|
Y14
|
y3y11y17y18y22
|
Y5
|
y3y4y13y30
|
Y15
|
y4y5y6y18y19y23
|
Y7
|
y2y6y7y16
|
Y16
|
y12y14y16y24
|
Y8
|
y5y13y15y29
|
Y17
|
y2y13y25
|
Y9
|
y6y17
|
Y18
|
y5
|
Y10
|
y3y4y5y18y19
|
Y20
|
y3y27y28
|
Y11
|
y7y8y17y20
|
|
|
2.3.Формування
вмісту керуючої
пам'яті.
Перший
етап - виділення
мікрокоманд
заданого формату.
В автоматі з
ПА в одному
такті можуть
виконуватися
МО і перевірятися
логічна умова.
Тому мікрокоманда
відповідає
парі ОПЕРАТОРНА
ВЕРШИНА - УМОВНА
ВЕРШИНА. Виходячи
з цього, отримаємо,
що можливими
є пари: ОПЕРАТОРНА
ВЕРШИНА - УМОВНА
ВЕРШИНА, ОПЕРАТОРНА
ВЕРШИНА - БЕЗУМОВНИЙ
ПЕРЕХІД, ПОРОЖНЯ
ОПЕРАТОРНА
- УМОВНА ВЕРШИНА.
При цьому потрібно
враховувати,
що при виборі
пари ОПЕРАТОРНА
ВЕРШИНА - УМОВНА
ВЕРШИНА недопустим
перехід ззовні
в точку між
операторною
і умовною вершинами,
крім ситуації,
коли умовна
вершина входить
до складу іншої
мікрокоманди.
У результаті
ми отримаємо
слідуюче разбиття
на мікрокоманди
(мал. 2.3.). Ми отримали
38 допустимих
МК. Закодуємо
їх в природному
порядку, привласнивши
початковій
МК нульову
адресу (табл.2.2).
Для цього необхідно
q=]log2N[
розрядів, де
N- кількість МК
заданого формату.
У нашому випадку
N=38, q=6.
Таблиця
2.2
Кодування
МК
-
МК
|
А1А2А3А4
А5А6
|
О1
|
0
0 0 0 0 0
|
О2
|
0
0 0 0 0 1
|
......
|
........................
|
О38
|
1
0 0 1 0 1
|
Аналогічним
чином
закодуємо
оператори Yi,
надавши
нульовий код
порожньому
операторному
полю (табл. 2.3).
Таблиця
2.3
Кодування
Y
Yi
|
T2T3T4T5T6
|
Ж
|
00000
|
Y1
|
00001
|
Y2
|
00010
|
Y3
|
00011
|
Y5
|
00100
|
Y7
|
00101
|
Y8
|
00110
|
Y9
|
00111
|
Y10
|
01000
|
Y11
|
01001
|
Y12
|
01010
|
Y13
|
01011
|
Y14
|
01100
|
Y15
|
01101
|
Y16
|
01110
|
Y17
|
01111
|
Y18
|
10000
|
Y20
|
10001
|
Таблиця
2.5
Вміст
керуючої
пам`яті.
№ |
A |
FY |
FX |
FA0
|
FA1
|
Оп. |
A1A2A3A4A5A6
|
T1T2T3T4T5T6
|
T7T8T9
|
T10T11T12T13T14T15
|
T16T17T18T19T20T21
|
1 |
000000 |
000000 |
100 |
000001 |
001100 |
2 |
000001 |
000000 |
101 |
000010 |
011001 |
3 |
000010 |
000000 |
110 |
000011 |
001100 |
4 |
000011 |
000000 |
001 |
001100 |
000100 |
5 |
000100 |
000000 |
010 |
001001 |
000101 |
6 |
000101 |
000110 |
110 |
000111 |
000110 |
7 |
000110 |
101100 |
000 |
000000 |
000000 |
8 |
000111 |
000111 |
000 |
001000 |
000000 |
9 |
001000 |
001001 |
000 |
001110 |
000000 |
10 |
001001 |
001000 |
100 |
001010 |
011000 |
11 |
001010 |
000000 |
110 |
001110 |
001011 |
12 |
001011 |
100111 |
000 |
000000 |
000000 |
13 |
001100 |
000001 |
100 |
001101 |
001110 |
14 |
001101 |
000000 |
110 |
001001 |
010010 |
15 |
001110 |
000100 |
100 |
001111 |
010111 |
16 |
001111 |
000000 |
101 |
010001 |
010000 |
17 |
010000 |
000000 |
110 |
010100 |
010101 |
18 |
010001 |
000000 |
110 |
010010 |
011110 |
19 |
010010 |
000110 |
110 |
011111 |
010011 |
20 |
010011 |
000000 |
011 |
100011 |
001110 |
21 |
010100 |
100000 |
000 |
000000 |
000000 |
22 |
010101 |
000000 |
010 |
001001 |
010110 |
23 |
010110 |
000001 |
000 |
100101 |
000000 |
24 |
010111 |
001010 |
001 |
011000 |
010101 |
25 |
011000 |
101010 |
000 |
000000 |
000000 |
26 |
011001 |
000000 |
110 |
011011 |
011010 |
27 |
011010 |
000000 |
001 |
011111 |
100001 |
28 |
011011 |
001101 |
001 |
011100 |
011101 |
29 |
011100 |
001110 |
011 |
010100 |
001110 |
30 |
011101 |
000101 |
000 |
011110 |
000000 |
31 |
011110 |
001111 |
010 |
100001 |
100000 |
32 |
011111 |
000111 |
101 |
010100 |
100010 |
33 |
100000 |
100011 |
000 |
000000 |
000000 |
34 |
100001 |
010000 |
110 |
010100 |
100011 |
35 |
100010 |
000000 |
010 |
010100 |
100101 |
36 |
100011 |
000001 |
101 |
100100 |
011111 |
37 |
100100 |
001011 |
000 |
000101 |
000000 |
38 |
100101 |
010001 |
100 |
001110 |
001001 |
2.4. Синтез
схеми автомата.
Схема
СФА
являє собою
мультиплексор,
який в залежності
від коду логічної
умови, що перевіряється,
передає на
вихід Z1
значення відповідної
ЛУ.
При
цьому сигнал
Z2
завжди є інверсією
сигналу Z1.
Таким чином,
отримаємо
слідуючі
вирази для Z1
і Z2:
Z1=X1щT7щT8T9+X2щT7T8щT9+X3щT7T8T9+P1T7щT8щT9+P2T7щT8T9+P3T7T8щT9
Z2=щZ1
або, звівши
до заданого
базису (4 АБО-НІ),
отримаємо
Z1=щ
щ(щ
щ(A+B+C+D)+E+F),
де
A=щ
щ(
X1щT7щT8T9)=щ(щX1+T7+T8+щT9)
B=щ
щ(
X2щT7T8щT9)=щ(щX2+T7+щT8+T9)
C=щ
щ(
X3щT7T8T9)=щ(щX3+T7+щT8+щT9)
D=щ
щ(
P1T7щT8щT9)=щ(щP1+щT7+T8+T9)
E=щ
щ(
P2T7щT8T9)=щ(щP2+щT7+T8+щT9)
F=щ
щ(
P3T7T8щT9)=щ(щP3+щT7+щT8+T9)
Інформація,
що надходить
на адресні
входи ПЗП
формується
таким чином:
Ai=A0iZ1+A1iZ2
або, приводячи
до заданого
базису, отримуємо
Ai=щщ(щ(щA0i+щZ1)+щ(щA1i+щZ2)).
Синтезуємо
тепер схему
дешифратора,
що формує сигнали
мікрооперацій
yi.
Поява одиниці,
відповідної
кожному Y, відбувається
при
появі на вході
дешифратора
коду даного
Y, тобто
Yi=T2eЩT3eЩT4еЩT5еЩT6е,
де еО{0,1}
T0=щT,
T1=T.
Або приводячи
до заданого
базису, отримаємо:
Yi=щ(щ
щ(T2щe+T3щe+T4ще+T5ще)+T6ще).
Таким чином,
схема, що формує
сигнал Y з
п`ятирозрядного
коду виглядає
таким чином(мал.
2.4)
T6щe
1 1 1
Yi
T2щe
Мал.
2.4. Схема формування
сигналу Yi.
Враховуючи,
що розряд T2
рівний “1" при
формуванні
тільки двох
сигналів Y18
і Y20,
то схему(мал.
2.4) будемо використовувати
для формування
Y1,
Y20,
для яких співпадають
молодші чотири
розряди та для
Y18,
для якого молодші
чотири розряди
співпадають
з кодом порожньої
операторної
вершини. А для
всіх інших Y
схему можна
спростити
(мал.2.5.).
T6щe
1 Yi
T3щe
Мал.2.5.
Спрощена схема
формування
сигналу Yi.
Згідно
з наведеними
схемами запишемо
формули для
всіх Yi.
Y1=щ
(щ
щ(T2+T3+T4+T5)+щT6)
Y2=
щ(T3+T4+щT5+T6)
Y3=
щ(T3+T4+щT5+щT6)
Y5=
щ(T3+щT4+T5+T6)
Y7=
щ(T3+щT4+T5+щT6)
Y8=
щ(T3+щT4+щT5+T6)
Y9=
щ(T3+щT4+щT5+щT6)
Y10=щ(щT3+T4+T5+T6)
Сигнали
мікрооперацій
yj
отримаємо,
об'єднуючи по
“або" виходи
відповідні
операторам
Yi,
в яких зустрічається
МО
yj.
При
цьому будемо
користуватися
таблицею
Таблиця
2.5.
Розподіл
МО за мікро-
командами
МО
|
номери
МК
|
y1
|
1,2,3
|
y2
|
1,7,17
|
y3
|
5,10,14,20
|
y4
|
5,10,13,15
|
y5
|
2,8,10,12,15,18
|
y6
|
3,7,9,12,13,15
|
y7
|
7,11
|
y8
|
11
|
y9
|
1
|
y10
|
1
|
y11
|
3,14
|
y12
|
2,12,16
|
y13
|
5,8,17
|
y14
|
16
|
y15
|
8
|
y16
|
7,16
|
y17
|
9,11,12,14
|
y18
|
10,14,15
|
y19
|
2,10,12,15
|
y20
|
3,11,13
|
y21
|
13
|
y22
|
14
|
y23
|
15
|
y24
|
16
|
y25
|
17
|
y27
|
20
|
y28
|
20
|
y29
|
8
|
y30
|
5
|
На наступному
етапі синтезуємо
схеми РАМК
і РМК,
використовуючи
щRщS
тригери.
Скористаємося
класичним
методом синтезу
регістрів
і заповнимо
слідуючу
таблицю (табл.
2.6.).
Таблиця
2.6.
Синтез
РАМК та РМК
С
|
Ai
|
Qt
|
Qt+1
|
Ct
|
щR
|
щS
|
0
|
0
|
0
|
0
|
0
|
*
|
*
|
0
|
0
|
1
|
1
|
0
|
*
|
*
|
0
|
1
|
0
|
0
|
0
|
*
|
*
|
0
|
1
|
1
|
1
|
0
|
*
|
*
|
1
|
0
|
0
|
0
|
1
|
*
|
1
|
1
|
0
|
1
|
0
|
1
|
0
|
1
|
1
|
1
|
0
|
1
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
1
|
1
|
*
|
У результаті
отримаємо
слідуючу схему
для базового
елементу РАМК
та РМК (мал.2.6).
Ai
1 S TT Q
СІ C
R
“Reset” R
щQ
Мал.
2.6. Базовий елемент
регістра.
Схема
РАМК
містить
6 таких елементів,
а схема РМК
- 21. При
побудові
схеми сигнали
щT1..щT21
будемо знімати
з інверсних
виходів елементів
регістрів.
Кількість
мікросхем ПЗП
визначимо за
формулою:
NПЗП=]R/3[,
де R - розрядність
мікрокоманди
R=21, NПЗП=7.
Для зберігання
мікропрограми
досить однієї
лінійки ПЗП,
оскільки QПЗП=8,
тобто одна
мікросхема
розрахована
на зберігання
256 трьохбітових
комбінацій,
а в нашому випадку
потрібно тільки
38. При
побудові
схеми будемо
записувати
в РАМК
інверсію адреси,
а до ПЗП
будемо подавати
адресу з інверсних
виходів елементів
регістра,
таким чином,
ми заощадимо
6 елементів-інверторів
у СФА.
З врахуванням
вищесказаного
побудуємо
схему автомата
з примусовою
адресацією
мікрокоманд(мал.
2.7).
3.СИНТЕЗ
АВТОМАТА З
ПРИРОДНОЮ
АДРЕСАЦІЄЮ
МІКРОКОМАНД
3.1. Принцип
роботи автомата.
При
природній
адресації
микрокоманд
існує три формата
МК (мал. 3.1.).
П 1
FY m ОМК
П 1 FX
l
1
FA r УМК1
П 1
Ж l
1
FA r
УМК2
Мал.3.1.
Формати мікрокоманд
автомата з
природною
адресацією..
Тут формат
ОМК відповідає
операторній
вершині, УМК1-умовній,
а УМК2-вершині
безумовного
переходу. При
подачі сигналу
“пуск" лічильник
ЛАМК обнуляється,
і за сигналом
СІ відбувається
запис МК до
регістра. СФМО
формує відповідні
МО при П=1 або
видає на всіх
виходах нулі
при П=0. СФА в
залежності
від П і вмісту
поля FX, формує
сигнали Z1
і Z2.
Сигнал Z1
дозволяє проходження
синхроімпульсів
на лічильний
вхід ЛАМК, а Z2
дозволяє запис
до лічильника
адреси наступної
МК з приходом
синхроімпульсу.
Визначимо
розрядність
полів. l=]log2(L+1)[,
де L-число умовних
вершин. L=6, l=3
m=]log2T[
Т- число наборів
мікрооперацій,
що використовуються
в ГСА, в нашому
випадку Т=17, m=5
r=]log2
Q[, Q - кількість
мікрокоманд.
3.2.Перетворення
початкової
ГСА.
Перетворення
буде полягати
в тому, що до
всіх операторних
вершин, пов'язаних
з кінцевою,
вводиться
сигнал y0,
а між всіма
умовними вершинами,
які пов'язані
з кінцевою,
вводиться
операторна
вершина, що
містить сигнал
y0.
Крім цього, в
ГСА вводяться
спеціальні
вершини безумовного
переходу X0,
відповідні
формату УМК2.
Введення таких
вершин необхідне
для виключення
конфліктів
адресації
мікрокоманд.
У автоматі з
природною
адресацією
(рис3.2.) при
істинності(помилковість)
логічної умови
перехід здійснюється
до вершини з
адресою на
одиницю великим,
а при (помилковість)істинності
ЛУ перехід
відбувається
за адресою,
записаною в
полі FA. У нашому
випадку будемо
додавати одиницю
при істинності
ЛУ або при переході
з операторной
вершини. Якщо
в одній точці
сходиться
декілька переходів
по “1" або з
операторної
вершини, то всі
вершини з яких
здійснювався
перехід, повинні
були б мати
однакову (на
одиницю меншу
) адресу, ніж
наступна команда.
Але це неможливо.
Z1
+1
сі
Z2
А ЛАМК
“Пуск”
1 ПЗП
РМК
FY П FX FA
СФМО
СФА
Z1
y0.....yi к
ОА
Z2
Мал.3.2.
Структурна
схема автомата
з природною
адресацією.
Для виключення
подібних ситуацій
вводять спеціальну
вершину безумовного
перходу (мал.
3.3). Дані вершини
додаємо таким
чином, щоб в
одній точці
сходилася
будь-яка кількість
переходів по
“0" і тільки
один по “1" або
з операторної
вершини. З
врахуванням
вказаних перетворень
отримаємо
перетворену
ГСА (мал. 3.4).
X0
0
1
Мал. 3.3.
Вершина безумовного
переходу.
3.3.Формування
вмісту керуючої
пам'яті.
На перетвореній
ГСА виділимо
мікрокоманди
форматів ОМК,
УМК1, УМК2. У результаті
отримаємо 63
МК. Виконаємо
їх адресацію.
Для цього запишемо
всі природні
послідовності
команд (ланцюжки
вершин, перехід
між якими
здійснюється
по “1" або через
операторну
вершину). У
результаті
отримаємо:
a1=[O1,O5]
a2=[
O2
,O6
,O7
,O36
,O48
,O51
,O55
,O34
,O47
,O49
,O56
,O59
,O12
,O16
,O45]
a3=[
O3
,O9
,O13 ,O18]
a4=[
O4
,O10
,O11]
a5=[
O8
,O14
,O20
,O30
,O32
,O35]
a6=[
O60
,O15
,O21
,O22]
a7=[
O17
,O52
,O57
,O61
,O62]
a8=[
O19
,O28
,O29]
a9=[
O23
,O25
,O27
,O31
,O37
,O44
,O43
,O53
,O54]
a10=[
O24
,O26]
a11=[
O33]
a12=[
O38
,O41
,O42]
a13=[
O39
,O40]
a14=[
O46]
a15=[
O50]
a16=[
O58]
a17=[
O63]
Перерахуємо
в таблиці адресації
(табл. 3.1) підряд
всі послідовності
a1-a17
і закодуємо
їх R-розрядним
кодом. R=]log2N[,
N-кількість
мікрокоманд
(N=63, R=6). Закодуємо
також оператори
Yi,
поставивши
їм у відповідність
п`ятирозрядний
код. Будемо
використовувати
те ж кодування,
що і в автоматі
з ПА.(табл. 2.3., 2.4). У
таблиці 3.2 відобразимо
вміст керуючої
пам'яті, заповнивши
поля FX, FY, FA.
Таблиця
3.1. Таблиця
3.1.
(продовження)
Адресація МК.
-
мк
|
А1А2А3А4А5А6
|
O1
|
000000 |
O5
|
000001 |
O2
|
000010 |
O6
|
000011 |
O7
|
000100 |
O36
|
000101 |
O48
|
000110 |
O51
|
000111 |
O55
|
001000 |
O34
|
001001 |
O47
|
001010 |
O49
|
001011 |
O56
|
001100 |
O59
|
001101 |
O12
|
001110 |
O16
|
001111 |
O45
|
010000 |
O3
|
010001 |
O9
|
010010 |
O13
|
010011 |
O18
|
010100 |
O4
|
010101 |
O10
|
010110 |
O11
|
010111 |
O8
|
011000 |
O14
|
011001 |
O20
|
011010 |
O30
|
011011 |
O32
|
011100 |
O35
|
011101 |
O60
|
011110 |
O15
|
011111 |
O21
|
100000 |
O22
|
100001 |
O17
|
100010 |
O52
|
100011 |
O57
|
100100 |
O61
|
100101 |
O62
|
100110 |
Таблиця 3.2.
Вміст керуючої
пам`яті автомата
з природною
адресацією.
-
МК
|
Адреса
|
П
|
|
FY
|
Формула
переходу
|
|
|
|
FX
|
FA
|
|
|
А1А2А3А4А5А6
|
T1
|
T2T3T4
|
T5T6T7T8T9T10
|
|
O1
|
000000 |
1 |
100 |
000010 |
O1®щP1O2+P1O5
|
O5
|
000001 |
1 |
000 |
010010 |
O5®O9
|
O2
|
000010 |
1 |
101 |
010001 |
O2®щP2O3+P2O6
|
O6
|
000011 |
1 |
110 |
011000 |
O6®щP3O8+P3O7
|
O7
|
000100 |
1 |
001 |
001001 |
O7®щX1O34+X1O36
|
O36
|
000101 |
0 |
010 |
000000 |
O36®O48
|
O48
|
000110 |
1 |
110 |
111110 |
O48®щP3O63+P3O51
|
O51
|
000111 |
0 |
000 |
010000 |
O51®O55
|
O55
|
001000 |
1 |
101 |
011110 |
O55®щP2O60+P2O34
|
O34
|
001001 |
0 |
000 |
111000 |
O34®O47
|
O47
|
001010 |
1 |
101 |
111011 |
O47®щP2O46+P2O49
|
O49
|
001011 |
1 |
010 |
111100 |
O49®щX2O50+X2O56
|
O56
|
001100 |
0 |
010 |
001000 |
O56®O59
|
O59
|
001101 |
1 |
100 |
101100 |
O59®щP1O27+P1O12
|
O12
|
001110 |
0 |
001 |
000000 |
O12®O16
|
O16
|
001111 |
1 |
100 |
110011 |
O16®щP1O24+P1O45
|
O45
|
010000 |
0 |
101 |
010000 |
O45®K
|
O3
|
010001 |
1 |
110 |
010101 |
O3®щP3O4+P3O9
|
O9
|
010010 |
0 |
000 |
001000 |
O9®O13
|
O13
|
010011 |
1 |
100 |
100010 |
O13®щP1O17+P1O18
|
O18
|
010100 |
1 |
000 |
101100 |
O18®щO27
|
O4
|
010101 |
1 |
001 |
010010 |
O4®щX1O9+X1O10
|
O10
|
010110 |
1 |
010 |
001110 |
O10®щX2O12+X2O11
|
O11
|
010111 |
1 |
000 |
011111 |
O11®O15
|
O8
|
011000 |
0 |
001 |
101000 |
O8®O14
|
O14
|
011001 |
1 |
001 |
100111 |
O14®щX1O19+X1O20
|
O20
|
011010 |
0 |
000 |
101000 |
O20®O30
|
O30
|
011011 |
0 |
001 |
111000 |
O30®O32
|
O32
|
011100 |
1 |
110 |
000101 |
O32®щP3O36+P3O35
|
O35
|
011101 |
0 |
100 |
011000 |
O35®K
|
O60
|
011110 |
0 |
001 |
011000 |
O60®щO15
|
O15
|
011111 |
0 |
000 |
110000 |
O15®O21
|
O21
|
100000 |
1 |
110 |
101010 |
O21®щP3O23+P3O22
|
O22
|
100001 |
0 |
101 |
100000 |
O22®K
|
O17
|
100010 |
1 |
110 |
001110 |
O17®щP3O12+P3O52
|
O52
|
100011 |
0 |
000 |
110000 |
O52®O57
|
O57
|
100100 |
1 |
110 |
001001 |
O57®щP3O34+P3O61
|
O61
|
100101 |
1 |
011 |
000111 |
O61®щX3O51+X3O62
|
O62
|
100110 |
1 |
000 |
101100 |
O62®O27
|
O19
|
100111 |
0 |
001 |
110000 |
O19®O28
|
Таблица 3.2.
(продовження)
-
O28
|
101000 |
1 |
011 |
110101 |
O28®щX3O33+X3O29
|
O29
|
101001 |
1 |
000 |
101100 |
O29®O27
|
O23
|
101010 |
0 |
000 |
111000 |
O23®O25
|
O25
|
101011 |
0 |
001 |
001000 |
O25®O27
|
O27
|
101100 |
0 |
000 |
100000 |
O27®O31
|
O31
|
101101 |
1 |
100 |
110110 |
O31®щP1O38+P1O37
|
O37
|
101110 |
0 |
001 |
010000 |
O37®O44
|
O44
|
101111 |
1 |
001 |
010000 |
O44®щX1O45+X1O43
|
O43
|
110000 |
1 |
010 |
001110 |
O43®щX2O12+X2O53
|
O53
|
110001 |
0 |
000 |
001000 |
O53®O54
|
O54
|
110010 |
1 |
000 |
001100 |
O54®O56
|
O24
|
110011 |
1 |
110 |
101100 |
O24®щP3O27+P3O26
|
O26
|
110100 |
0 |
100 |
111000 |
O26®K
|
O33
|
110101 |
0 |
100 |
000000 |
O33®K
|
O38
|
110110 |
1 |
101 |
111001 |
O38®щP2O39+P2O41
|
O41
|
110111 |
1 |
110 |
111101 |
O41®щP3O58+P3O42
|
O42
|
111000 |
1 |
000 |
001110 |
O42®щO12
|
O39
|
111001 |
1 |
110 |
100011 |
O39®щP3O52+P3O40
|
O40
|
111010 |
1 |
000 |
011011 |
O40®O30
|
O46
|
111011 |
0 |
100 |
000000 |
O46®K
|
O50
|
111100 |
0 |
100 |
000000 |
O50®K
|
O58
|
111101 |
0 |
100 |
000000 |
O58®K
|
O63
|
111110 |
0 |
100 |
000000 |
O63®K
|
3.4. Синтез
схеми автомата.
Синтезуємо
схему, що формує
сигнал Z1.
Сигнал Z1
рівний 1, якщо
ознака П=0 або
П=1 і при цьому
логічна умова,
що перевіряється,
істинна. Скористаємося
формулою Z1
для автомата
з ПА, яка в залежності
від коду умови
передає на
вихід Z1
значення відповідного
ЛУ.
Z1=X1щT2щT3T4+X2щT2T3щT4+X3щT2T3T4+P1T2щT3щT4+P2T2щT3T4+P3T2T3щT4
З врахуванням
вищенаведених
вимог запишемо
формули для
сигналів Z1
і Z2
в автоматі з
природною
адресацією.
Z1=щT1+T1(X1щT2щT3T4+X2щT2T3щT4+X3щT2T3T4+P1T2щT3щT4+P2T2щT3T4+P3T2T3щT4)
Z2=щZ1
Або ,
звівши до заданого
базису отримаємо:
Z1=щ
щ(щ(щ(щ
щ(A+B+C+D)+E+F)+щT1)+щT1),
где
A=щ
щ(
X1щT7щT8T9)=щ(щX1+T2+T3+щT4)
B=щ
щ(
X2щT7T8щT9)=щ(щX2+T2+щT3+T4)
C=щ
щ(
X3щT7T8T9)=щ(щX3+T2+щT3+щT4)
D=щ
щ(
P1T7щT8щT9)=щ(щP1+щT2+T3+T4)
E=щ
щ(
P2T7щT8T9)=щ(щP2+щT2+T3+щT4)
F=щ
щ(
P3T7T8щT9)=щ(щP3+щT2+щT3+T4)
Схема
формування
МО подібна СФМО
автомата з ПА,
але поява сигналів
на виходах yi
можлива тільки
при П=0, тобто
коли поточна
мікрокоманда
відповідає
операторній
вершині. Тому
схему формування
Yi
змінимо таким
чином: сигнал
щT1(щП)
кон`юнктивно
об'єднаємо з
кожним сигналом
T3...T7,щT3...щT7
(мал. 3.5). При цьому
відсутність
цих сигналів
приведе до
відсутності
сигналів yi,
бо
комбінація
з усіх нулів
на вході дншифратора
відповідає
порожній операторній
вершині. Виняток
складає сигнал
y0,
для якого
передбачений
окремий розряд,
тому його ми
кон`юнктивно
об'єднаємо з
сигналом щT1(щП)
(мал. 3.6.)
щT3...щT7
T3..T7
1 T3...T7
1 щT3...щT7
T1
T1
Мал.3.5.
Схеми підключення
щП.
щT2
1 y0
T1
Рис.3.6.Схема
формування
y0.
Схема
базового елементу
РМК аналогічна
відповідній
схемі в автоматі
з ПА(мал2.6). У якості
ЛАМК будемо
використовувати
лічильник, що
має слідуючу
функціональну
схему(мал. 3.7.).
Вхід V відповідає
сигналу Z1,
якщо він рівний
1, то ЛАМК збільшує
свій вміст на
1, в протилежному
випадку, на
вихід передається
інформація
з входів A1...Ai.
Синтезуємо
лічильник з
крізним перенесенням.
Для цього складемо
слідуючу
таблицю(табл.3.3).Таблиця
складена для
одного розряду.
A1
CT
A2
A1
A3
A2
A4
A3
A5
A4
A6
A5
A6
V
C
R
Мал.3.7.
Функціональне
зображення
лічильника.
Таблиця.3.3
Синтез
схеми ЛАМК.
V
|
T
|
Ai
|
Qt
|
Qt+1
|
щR
|
щS
|
0
|
0
|
0
|
0
|
0
|
*
|
1
|
0
|
0
|
0
|
1
|
0
|
0
|
1
|
0
|
0
|
1
|
0
|
1
|
1
|
0
|
0
|
0
|
1
|
1
|
1
|
1
|
*
|
0
|
1
|
0
|
0
|
0
|
*
|
1
|
0
|
1
|
0
|
1
|
1
|
1
|
*
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
0
|
1
|
1
|
1
|
1
|
1
|
*
|
1
|
0
|
0
|
0
|
0
|
*
|
1
|
1
|
0
|
0
|
1
|
1
|
1
|
*
|
1
|
0
|
1
|
0
|
0
|
*
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
*
|
1
|
1
|
0
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
1
|
0
|
0
|
1
|
1
|
1
|
1
|
0
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
0
|
0
|
1
|
Схема
РМК містить
10 базових елементів.
При побудові
схеми сигнали
щT1...щT10
будемо знімати
з інверсних
виходів елементів
регістра. Кількість
мікросхем ПЗП
визначимо за
формулою: NПЗП=]R/3[,
де R - розрядність
мікрокоманди
R=10, NПЗП=4
Для зберігання
мікропрограми
досить однієї
лінійки ПЗП,
оскільки QПЗП=8,
тобто одна
мікросхема
розрахована
на зберігання
256 трьохбітових
комбінацій,
а в нашому випадку
потрібно тільки
63. З урахуванням
вищесказаного
побудуємо схему
автомата з
природною
адресацією
мікрокоманд(мал.
3.8).
V
1 1
T0
1 1 1 Q0
S TT C
Ai
1 1 R 1 1
R
C
“Reset”
T1
Q1
щT1
T2
1 Q2
щQ1
щT2
T3
1 Q3
щQ2
........................................................................
Мал.3.8.Схема
ЛАМК (усього
6 елементів,
сигнали V,C,”Reset”,Ai
для всіх, окрім
першого, не
показані).
4.СИНТЕЗ
АВТОМАТА З
КОМБІНОВАНОЮ
АДРЕСАЦІЄЮ
МІКРОКОМАНД.
4.1.Принцип
роботи
автомата.
Автомат
з комбінованою
адресацією
є комбінацією
з
автоматів
з примусовою
і природною
адресацією
. У даному автоматі
адреса наступної
МК
задається в
полі поточної
мікрокоманди,
при
цьому при
невиконанні
ЛУ,
що перевіряється,
або при
безумовному
переході перехід
здійснюється
за заданою
адресою, а при
істинності
- за адресою на
одиницю більшу,
ніж поточна.
Формат команди
автомата з КА
наступний(мал.
4.1).
1 Y
m 1
Х k
1
A
l
Мал.
4.1.Формат команди
автомата з КА.
Тут у полі
Y міститься
код, що задає
набір мікрооперацій,
у полі X-код логічної
умови, що перевіряється,
в полі А - адреса
переходу при
невиконанні
логічної умови
або при безумовному
переході. Розрядність
полів визначається
таким чином:
m=]log2T[
Т- число наборів
мікрооперацій,
що використовуються
в ГСА,
в нашому випадку
Т=17, m=5
k=]log2(L+1)[
L-число логічних
умов в ГСА,
в нашому випадку
L=6, l=3
l=]log2Q[
Q -кількість
мікрокоманд.
Структурна
схема автомата
приведена на
мал. 4.2. Автомат
функціонує
таким чином.
Схема запуску
складається
з RS -тригера і
схеми “&", яка
блокує надходження
синхроімпульсів
на РМК.
За сигналом
“Пуск" тригер
встановлюється
в одиницю і
відбувається
запис мікрокоманди
до регістру.
Поле Y поступає
на схему формування
МО
і перетворюється
в деякий набір
мікрооперацій.
Поле X поступає
на схему формування
адреси, яка
формує сигнал
Z2,
якщо
перехід безумовний
(X=0) або ЛУ,
що перевіряється,дорівнює
нулю або сигнал
Z1
у випадку істинності
ЛУ.
За сигналом
Z2
вміст поля А
надходить до
лічильника,а
з нього - на адресний
вхід ПЗП.
А за сигналом
Z1
на адресний
вхід також
надходить вміст
лічильника
але тепер це
адреса поточної
мікрокоманди,
збільшена на
одиницю. За
сигналом y0
тригер
скидається
в нуль і автомат
зупиняє
свою роботу.
4.2. Перетворення
початкової
ГСА.
Перетворення
будемо виконувати
двома етапами.
На першому -
введемо сигнал
y0
до вершин, пов'язаних
з кінцевою,
якщо
вершина умовна,
то введемо
+1
Z1
СT
Z2
S T
& ПЗП
“Пуск”
СІ
R РМК
Y X A
СФМО
y0
.... yi
Z1
СФА
до
ОА Z2
Мал.4.2.
Структурна
схема автомата
з КА.
додаткову
операторну
вершину з сигналом
y0.
Крім
того, введемо
додаткові
вершини безумовного
переходу, виходячи
з тих же міркувань,
що і для автомата
з природною
адресацією.
Будемо, однак,
мати на увазі,
що для автомата
з КА
перехід з
операторної
вершини прирівнюється
до безумовного,
тому в одній
точці може
сходитися
будь-яка кількість
безумовних
переходів або
переходів з
операторних
вершин і тільки
один
по істинності
ЛУ,
що перевіряється.
На другому
етапі виділимо
мікрокоманди
заданого формату,
користуючись
тими ж правилами,
що і для автомата
з ПА. З врахуванням
вищесказаного
отримаємо
перетворену
ГСА
(мал. 4.3).
4.3.Формування
вмісту керуючої
пам'яті.
При
формуванні
вмісту керуючої
пам'яті скористаємося
тим же кодуванням
наборів мікрооперацій
і ЛУ,
що і для автоматів
з ПА і природною
адресацією
(табл.
2.3, 2.4). Для адресації
мікрокоманд
випишемо їх
природні
послідовності
так само, як і
для автомата
з природною
адресацією,
враховуючи,
що природним
вважається
тільки перехід
по істинності
ЛУ.
a1=[O1,O14]
a2=[
O2
,O19
,O18
,O46
,O6
,O42
,O43
,O44
,O9
,O38
]
a3=[
O3
,O15
,O17 ]
a4=[
O4
,O5
,O7,O8]
a5=[
O10
]
a6=[
O11
,O13]
a7=[
O12]
a8=[
O16,O29,O30,O25,O37,O35,O36]
a9=[
O20
,O22
]
a10=[
O21,O23]
a11=[
O26,O32,O33]
a12=[
O27
,O24
,O45]
a13=[
O34]
a14=[
O39]
a15=[
O40]
a16=[
O41]
a17=[
O28]
a18=[O31]
Перерахуємо
в таблиці адресації
(табл. 4.1) підряд
всі послідовності
a1-a18
і закодуємо
їх R-розрядним
кодом. R=]log2N[,
N-кількість
мікрокоманд(N=46,
R=6). Закодуємо
також оператори
Yi,
поставивши
їм у відповідність
п`ятирозрядний
код. У таблиці
4.2 відобразимо
вміст керуючої
пам'яті, заповнивши
поля FX, FY, FA.
Таблиця
4.1.
Адресація
МК.
-
мк
|
А1А2А3А4А5А6
|
O1
|
000000 |
O14
|
000001 |
O2
|
000010 |
O19
|
000011 |
O18
|
000100 |
O46
|
000101 |
O6
|
000110 |
O42
|
000111 |
O43
|
001000 |
O44
|
001001 |
O9
|
001010 |
O38
|
001011 |
O3
|
001100 |
O15
|
001101 |
O17
|
001110 |
O4
|
001111 |
O5
|
010000 |
O7
|
010001 |
O8
|
010010 |
O10
|
010011 |
O11
|
010100 |
O13
|
010101 |
O12
|
010110 |
O16
|
010111 |
O29
|
011000 |
O30
|
011001 |
O25
|
011010 |
O37
|
011011 |
O35
|
011100 |
O36
|
011101 |
O20
|
011110 |
O22
|
011111 |
O21
|
100000 |
O23
|
100001 |
O26
|
100010 |
O32
|
100011 |
O33
|
100100 |
O27
|
100101 |
O24
|
100110 |
O45
|
100111 |
O34
|
101000 |
O39
|
101001 |
O40
|
101010 |
O41
|
101011 |
O28
|
101100 |
O31
|
101101 |
Таблиця
4.2
Вміст керуючої
пам`яті.
-
№ |
A
|
FY
|
FX
|
FA
|
Оп.
|
A1A2A3A4A5А6
|
T1T2T3T4T5T6
|
T7T8T9
|
T10T11T12T13T14T15
|
O1
|
000000
|
000000
|
100
|
000010
|
O14
|
000001
|
000000
|
000
|
001101
|
O2
|
000010
|
000000
|
101
|
001100
|
O19
|
000011
|
000000
|
110
|
011110
|
O18
|
000100
|
000000
|
001
|
000111
|
O46
|
000101
|
010000
|
110
|
101101
|
O6
|
000110
|
000010
|
101
|
101100
|
O42
|
000111
|
000111
|
101
|
101010
|
O43
|
001000
|
000000
|
010
|
101011
|
O44
|
001001
|
010001
|
100
|
011010
|
O9
|
001010
|
001000
|
100
|
010100
|
O38
|
001011
|
101010
|
000
|
000000
|
O3
|
001100
|
000000
|
110
|
001111
|
O15
|
001101
|
000001
|
100
|
010111
|
O17
|
001110
|
000000
|
000
|
011010
|
O4
|
001111
|
000000
|
001
|
001101
|
O5
|
010000
|
000000
|
010
|
001010
|
O7
|
010001
|
000110
|
110
|
010011
|
O8
|
010010
|
101100
|
000
|
000000
|
O10
|
010011
|
000111
|
000
|
010110
|
O11
|
010100
|
000000
|
110
|
011010
|
O13
|
010101
|
100111
|
000
|
000000
|
O12
|
010110
|
001001
|
000
|
011010
|
O16
|
010111
|
000000
|
110
|
001010
|
O29
|
011000
|
000110
|
110
|
000111
|
O30
|
011001
|
000000
|
011
|
000110
|
O25
|
011010
|
000100
|
100
|
100010
|
O37
|
011011
|
001010
|
001
|
001011
|
O35
|
011100
|
000000
|
010
|
001010
|
O36
|
011101
|
000001
|
000
|
001001
|
O20
|
011110
|
001101
|
001
|
100000
|
O22
|
011111
|
000101
|
000
|
100110
|
O21
|
100000
|
001110
|
011
|
101001
|
O23
|
100001
|
000000
|
000
|
011010
|
O26
|
100010
|
000000
|
101
|
100101
|
O32
|
100011
|
000000
|
110
|
101000
|
O33
|
100100
|
000000
|
000
|
001010
|
O27
|
100101
|
000000
|
110
|
011000
|
O24
|
100110
|
001111
|
110
|
000101
|
O45
|
100111
|
100011
|
000
|
000000
|
O34
|
101000
|
100000
|
000
|
000000
|
Таблиця 4.2.
(продовження)
-
O39
|
101001
|
100000
|
000
|
000000
|
O40
|
101010
|
100000
|
000
|
000000
|
O41
|
101011
|
100000
|
000
|
000000
|
O28
|
101100
|
001011
|
000
|
010001
|
O31
|
101101
|
100000
|
000
|
000000
|
4.4.Синтез
схеми автомата.
При
синтезі схеми
скористаємося
вже розробленими
вузлами для
автоматів з
ПА і природною
адресацією.
СФА
автомата з КА
аналогічна
СФА
автомата з
природною
адресацією.
Схеми СФМО,
РМК
аналогічні
відповідним
вузлам автомата
з ПА (розд.2.4), а
схема ЛАМК
запозичена
з
автомата з
природною
адресацією
(розд.3.4). Відмінність
полягає лише
в тому, що для
РМК
буде потрібно
15 базових елементів.
Враховуючи
вищесказане,
побудуємо
схему автомата
з комбінованою
адресацією
мікрокоманд(мал.
4.4).
5. ПОРІВНЯЛЬНА
ХАРАКТЕРИСТИКА
АВТОМАТІВ.
5.1. Підрахунок
апаратурних
витрат.
Визначимо
апаратурні
витрати
на кожний з
автоматів.
Оскільки синтез
лічильника
не був обов'язковим,
то при
визначенні
апаратурних
витрат
будемо вважати
його єдиним
вузлом.
1. У автоматі
з примусовою
адресацією
схема СФА
містить
28 логічних
елементів, СФМО
- 57 ЛЕ,
вузол запуску
і схема “&" - 4 ЛЕ
і, крім
того, необхідно
6 елементів-інверторів
для отримання
сигналів
щX1...щX3,щP1...щP3
Також
потрібно 27 елементів
для РАМК
і РМК.
Таким чином,
сумарне число
ЛЕ
дорівнює 122. Для
побудови
РАМК
і РМК
також буде
потрібно 27 тригерів.
Кількість ПЗП-
7.
2. У автоматі
з природною
адресацією
схема СФА
містить
12 логічних
елементів, СФМО
- 68 ЛЕ,
вузол скидання
- 2 ЛЕ
і, крім
того, необхідно
6 елементів-інверторів
для отримання
сигналівщX1...щX3,щP1...щP3
і 10 елементів
для РМК.
Таким чином,
сумарне число
ЛЕ
дорівнює 98. Для
побудови
РМК
також буде
потрібно 10 тригерів.
Кількість ПЗП-
4. Схема також
містить
один
лічильник.
3. У автоматі
з комбінованою
адресацією
схема СФА
містить
10 логічних
елементів, СФМО
- 57 ЛЕ,
вузол запуску
і схема “&" - 4 ЛЕ
і, крім
того, необхідно
6 елементів-інверторів
для отримання
сигналів
щX1...щX3,щP1...щP3
і 15 елементів
для РМК.
Таким чином,
сумарне число
ЛЕ
дорівнює 92. Для
побудови
РМК
також буде
потрібно 15 тригерів.
Кількість ПЗУ-
5. Схема також
містить
один
лічильник.
Складемо
зведену таблицю
витрат
на синтезовані
автомати.(табл.
5.1.)
Таблиця
5.1.
Апаратурні
витрати
для синтезованих
автоматів.
-
Тип
автомата
|
Логічні
елементи
|
Тригери
|
ПЗП
|
Лічильники
|
ПА
|
122
|
27
|
7
|
0
|
ПрА
|
98
|
10
|
4
|
1
|
КА
|
92
|
15
|
5
|
1
|
5.2. Визначення
автомата з
мінімальними
апаратурними
витратами.
Заповнимо
таблицю, де для
кожного автомата
знаком “+" відмітимо
мінімальні
витрати
на даний тип
елементів, а
знаком “-"
-немінімальні
(табл. 5.2.).
Таблиця
5.2.
Тип
автомата
|
Логічні
елементи
|
Тригери
|
ПЗП
|
Лічильники
|
ПА
|
-
|
-
|
-
|
+
|
ПрА
|
-
|
+
|
+
|
-
|
КА
|
+
|
-
|
-
|
-
|
Як видно
з
таблиці 5.2., автомат
з природною
адресацією
виграє по двом
параметрам:
по кількості
тригерів
і ПЗП.
Для
підтвердження
правильності
вибору автомата
застосуємо
також оцінку
за Квайном (за
сумарною кількістю
входів елементів).
Будемо вважати
кількість
входів у
ЛЕ
- 4, у
тригера
- 4, у
ПЗП
-9 і у
лічильника
- 9. З врахуванням
вищенаведених
значень, для
автомата з ПА
показник оцінки
складе - 659, для
автомата з ПрА
- 477, для автомата
з КА-
482.
Як видно
з
приведених
оцінок, автомат
з примусовою
адресацією
далеко не
оптимальний,
а автомати з
природною і
комбінованою
адресацією
по витратах
практично
однакові, але
все ж автомат
з ПрА має деяку
перевагу перед
автоматом з
КА.
Таким чином,
результатом
проектування
буде схема
автомата з
природною
адресацією
мікрокоманд.
|