Скачать .docx  

Курсовая работа: Синтез керуючих автоматів

ВСТУП

Принцип мікропрограмного керування припускає, що цифровий пристрій складається з двох частин: операційний автомат (ОА) і керуючий автомат (КА). ОА виконує найпростіші операції (мікрооперації) типу зсув, алгебраїчне додавання, кон’юнкція, диз’юнкція і т.п. КА формує послідовність керуючих символів в ОА, під впливом яких ОА реалізує більш складні алгоритми. Такі послідовності операцій називаються мікропрограмами та, звичайно, записуються у вигляді граф-схеми алгоритму.

КА розділяються на дві великі групи: автомати з жорсткою логікою та автомати з програмованою логікою. У свою чергу автомати з жорсткою логікою підрозділяються на автомати, виконані за схемою Мілі (КА Мілі) і за схемою Мура (КА Мура), автомати з програмованою логікою – на автомати з примусовою адресацією та з природною адресацією.

В автоматах з жорсткою логікою схема автомата однозначно інтерпретує граф-схему мікропрограми. В автоматах із програмованою логікою граф-схема інтерпретується у вигляді програми, що зберігається в пам’яті автомата.


1. СИНТЕЗ ОПЕРАЦІЙНОГО АВТОМАТА

1.1 Аналіз вхідних даних

Загальна формула для обчислювання результату S має такий вигляд:

Формулі , та згідно з варіантом завдання:

Загальний алгоритм для обчислювання формули S приведений на рисунку 1.1.


Для обчислювання формули S використовується ІМp-модель (IndividualMutualwithParallelpart - IMp).


Рис. 1.1 – Загальний алгоритм для обчислювання формули S

Схему взаємодії операційного та керуючої частин у цифровому просторі зображено на рисунку 1.2.


Рис. 1.2 – Структура цифрового пристрою

Структурна схема ІМp - моделі зображена на рисунку 1.3



Рис. 1.3 – Структура операційного пристрою

Пам’ять автомата складається з регістрів загального призначення R1, ... , Rn .

Локальні шини А1 , А2 , A3 призначені для прийому інформації з пам’яті та передачі її на комбінаційні схеми (КС).

В даному випадку використовуються КС двох типів: одномісні та двомісні.

Рис. 1.4 – Приклад комбінаційних схем

Однак, у даному ОА використовуються лише деякі з них.

1.2 Розробка функціонального алгоритму

Функціональна і структурна організація операційних пристроїв (ОУ) базується на принципі мікро програмного керування, сформульованому в 1951 році М. Уилксом. Відповідно до цього принципу будь-яка машинна операція розділяється на послідовність елементарних дій по обробці інформації – мікро операцій (МО). Порядок проходження мікро операцій визначається спеціальними логічними умовами (ЛУ), що у залежності від значень оброблюваної інформації приймають значення "істина" (1) або "неправда" (0). Алгоритм операцій в ОУ, записаний у термінах мікро операцій і логічних умов, що відбиває порядок проходження мікро операцій у часі, називається мікропрограмою.

Функція УА – це оперативна схема алгоритму, операторами якої є символи

, що ототожнюються з МО, виконуваними ОА, як логічні умови використовуються булеві перемінні . Найбільше часто операторна схема алгоритму представляється у виді граф-схеми алгоритму (ГСА).

Граф-схема алгоритму. Орієнтований зв'язаний граф – граф, що містить одну початкову вершину, одну кінцеву вершину, довільну безліч умовних і операторних вершин.

Будова ІМр автомата дозволяє паралельно виконувати одномісну та двумісну операції, тобто можливо виконувати за одне завантаження автомату завантаження двох операнд. Наприклад, у п’ятій вершині зроблено саме так.

Кожній дії, завантаженню автомата, відповідає Y[і].

Ідентичні дії відповідають однаковим командам, Y[і].

Логічні умови позначаються – XL, однаковим умовам відповідають однакові XL.

Функціональний алгоритм приведений на рисунку 1.5.


Рис. 1.5 – Функціональний алгоритм


1.3 Розробка структурної схеми автомата

1.3.1. Визначення набору регістрів пам’яті:

Rg:{RA,RB,RC,RS1 ,RS2 , RS3 }

1.3.2. Набір комбінаційних схем:

Одномісні: КС1 : {L1 , L2 , L3 , R1 , R2 , R3 }

На шину C повинні поступати всі аргументи одномісних операцій.

Двомісні: КС2: {Sum, Sub}

Припустимо, що операція відіймання виконується наступним чином:

Sub:=B - A, тому від’ємне завжди повинно знаходитись на шині B, а від’ємник на шині А. В іншій двомісній операції Sumпорядок операндів значення не має.

Рис. 1.6 – Структурна схема автомата

1.3.3. Зв'язки між регістрами та локальними шинами

Наша схема має три шини: А та B – двомісні, та шина C – одномісна.

A {RA, RB, RC, RS1 , RS2 ,RS3 }

B {RA, RB, RC, RS1 , RS2 ,RS3 }

C {RA, RB, RC, RS1 , RS2 ,RS3 }

1.3.4. Зворотні зв'язки шин Z1 та Z2 з регістрами пам’яті

Шини, що є результативними:

Z1 – результати одномісних операцій, а Z2 – двомісних операцій.

Z1 {RA, RB, RC, RS1 , RS2 ,RS3 }

Z2 {RA, RB, RC, RS1 , RS2 ,RS3 }

Кожний елемент, котрий діє у схемі може виконуватись тільки при наявності відповідного керуючого сигналу y[n] .

у1 , у2 , у3 – завантаження початкових даних на шини.

у4 –у15 – завантаження даних у регістри пам'яті.

у1 6 –у33 – завантаження з пам'яті на локальні шини А, B, C.

у34 , у39 – завантаження результатів одномісних операцій на шину Z1 .

y40 –у41 – завантаження результатів двомісних операцій на шину Z2 .

Отримані таким чином дані заносимо до таблиці 1.1

Табл. 1.1 –Таблиця мікрооперацій

Мікрооперація A B C Z1 Z2 Result
Y формула регістр y регістр y регістр y форм. y форм. y регістр y
1

RA := <A>

RB := <B>

<B> y2 <A> y1

RA:=Z2

RB:=Z1

y4

y7

2 RC := <C> <C> y3 RC:=Z2 y8
3 RS3 := RA + RB RA y17 RB y21 RA+RB y40 RS3 :=Z2 y14
4 RS2 := RA – RB RB y20 RA y18 RA-RB y41 RS2 :=Z2 y12
5 RS1 := L3 (RS2 ) RS2 y28 L3 (RS2 ) y36 RS1 :=Z1 y11
6 RS1 := RS1 – RS2 RS2 y29 RS1 y27 RS1 -RS2 y41 RS1 :=Z2 y10
7 RS2 := L2 (RA) RA y16 L2 (RA) y35 RS2 :=Z1 y13
8 RS3 := L1 (RB) RB y19 L1 (RB) y34 RS3 :=Z1 y15
9 RS1 := RS2 – RS3 RS3 y32 RS2 y30 RS2 -RS3 y41 RS1 :=Z2 y10
10 RS1 := L2 (RA) RA y16 L2 (RA) y35 RS1 :=Z1 y11
11 RS1 := RS1 – RA RA y17 RS1 y27 RS1 -RA y41 RS1 :=Z2 y10
12 RS1 := R1 (RS1 ) RS1 y25 R1 (RS1 ) y37 RS1 :=Z1 y11
13 RS1 := RS1 – RB RB y20 RS1 y27 RS1 -RB y41 RS1 :=Z2 y10
14 RS3 := RB – RA RA y17 RB y21 RB-RA y41 RS3 :=Z2 y14
15 RS3 := R1 (RB) RB y19 R1 (RB) y37 RS3 :=Z1 y15
16 RS2 := RA – RS3 RS3 y32 RA y18 RA-RS3 y41 RS2 :=Z2 y12
17

RS2 := RA + RB

RS3 := L1 (RC)

RA y17 RB y21 RC y22 L1 (RC) y34 RA+RB y40

RS2 :=Z2

RS3 :=Z1

y12 y15
18 RS2 := RS2 – RS3 RS3 y32 RS2 y30 RS2 -RS3 y41 RS2 :=Z2 y12
19 RS2 := RS2 – RC RC y23 RS2 y30 RS2 -RC y41 RS2 :=Z2 y12
20 RS3 := L1 (RB) RB y19 L1 (RB) y34 RS3 :=Z1 y15
21 RS3 := RA – RS3 RS3 y32 RA y18 RA-RS3 y41 RS3 :=Z2 y14
22 RS2 := L3 (RS3 ) RS3 y31 L3 (RS3 ) y36 RS2 :=Z1 y13
23 RS2 := RS2 – RS3 RS3 y32 RS2 y30 RS2 -RS3 y41 RS2 :=Z2 y12
24 RS2 := R3 (RS2 ) RS2 y28 R3 (RS2 ) y39 RS2 :=Z1 y13
25 RS3 := RC + RB RB y20 RC y24 RB+RC y40 RS3 :=Z2 y14
26 RS3 := L1 (RS3 ) RS3 y31 L1 (RS3 ) y34 RS3 :=Z1 y15
27 RS3 := RS3 + RC RS3 y32 RC y24 RS3 +RC y40 RS3 :=Z2 y14
28

RC := L2 (RB)

RS3 := RA – RB

RB y20 RA y18 RB y19 L2 (RB) y35 RA-RB y41

RC:=Z1

RS3 :=Z2

y9 y14
29 RS3 := RS3 – RC RC y23 RS3 y33 RS3 -RC y41 RS3 :=Z2 y14
30 RS3 := RC – RA RA y17 RC y24 RC-RA y41 RS3 :=Z2 y14
31 RS3 := R2 (RS3 ) RS3 y31 R2 (RS3 ) y38 RS3 :=Z1 y15
32 RS1 := L1 (RS1 ) RS1 y25 L1 (RS1 ) y34 RS1 :=Z1 y11
33 RS1 := RS2 + RS1 RS1 y26 RS2 y30 RS1 +RS2 y40 RS1 :=Z2 y10
34 RS1 := RS2 – RS1 RS1 y26 RS2 y30 RS2 -RS1 y41 RS1 :=Z2 y10
35 RS1 := L2 (RS3 ) RS3 y31 L2 (RS3 ) y35 RS1 :=Z1 y11
36 RS1 := RS2 + RS1 RS1 y26 RS2 y30 RS1 +RS2 y40 RS1 :=Z2 y10

Рис. 1.7 – Структурна граф-схема операційного автомата


2. СИНТЕЗ КЕРУЮЧИХ АВТОМАТІВ З ЖОРСТКОЮ ЛОГІКОЮ

На практиці використовуються дві моделі МПА - автомат Милі й автомат Мура, розходження між якими полягає у функції виходу. В автоматі Милі вихідний сигнал залежить від поточного стану і вхідного сигналу, а в автоматі Мура‑ тільки від стану. Незалежно від типу МПА для їхнього синтезу використовується однакова методика, що включає наступні етапи:

1. Оцінка станів автомата на ГСА.

2. Побудова таблиці переходів.

3. Кодування станів УА.

4. Побудова прямої структурної таблиці.

5. Формування системи булевських функцій (СБФ) для вихідних сигналів і функцій збудження елементів пам'яті

6. Синтез схеми в заданому елементному базисі.

2.1 Методика синтезу автомата Мура

На першому етапі початкова і кінцева вершини відзначаються окремим станом.

Побудова таблиці переходів зводиться, до формувань по відзначеної ГСА таблиці, що містить стовпці: am - вихідний стан; as - стан переходу; X(am , as ) - кон’юнкція вхідних перемінних, визначальний перехід (am , as ) і відповідна функції переходу іj, де Yі відзначений станом am , Y – стан As, Y(am ) - вихідні сигнали; h=1, H - номер переходу.

При кодуванні станів необхідно прагнути до такого кодування, що зменшує кількість функцій збудження, що приймають одиничне значення, і, отже, складність схеми УА.

Для цих цілей рекомендується використовувати алгоритми кодування.

Структурна схема автомата Мура (див. рис. 2.1):

1. Пам'ять – зберігає код стану (Q);

2. Дешифратор (ДС) – виконує перетворення коду в унітарний код, вказує на поточний стан.

На базі вектора станів А схема вихідних сигналів (СФВС) формує вихідні сигнали керуючого автомата y.

Автомат Мура має свою відмінність - вихідний сигнал y залежить не від вхідного Х, а від стану.

Автомат Мура, як і кожний інший автомат складається з двох частин: комбінаційна схема та пам'ять (тригер).

Для синтезу автомата Мура потрібно позначити кожну операторну вершину через a[i] , починаючи з “початок” - і закінчуючи “кінець” - , так як це зроблено на рисунку 2.2.

Записуємо до таблиці 2.2 отримані результати: поточний стан (мітка вершини та номер її значення в двійковій системі вираховування), наступний стан (мітка вершини та номер її значення в двійковій системі вираховування), вхідний сигнал Х, вихідний сигнал Y та функції збудження пам'яті у заданому тригері (згідно варіанта - у тригері RS).


Рис. 2.2 – Граф-схема автомата Мура


Табл. 2.1 – Структура переходів для автомата Мура

п/п

Поточний

стан

Наступний

стан

Вхідний сигнал

Х

Вихідний сигнал

y

S входи тригерів R входи тригерів
Am код As код
1 a0 000000 a1 000001 1 - S6
2 a1 000001 a2 000010 1 у1 у2 y4 y7 S5 R6
3 a2 000010 a3 000011 1 y3 у8 S6

4

a3

000011

a4

a7

a10

000100

000111

001010

X3

nX3 X4

nX3 nX4

у1 4 у17 у2 1 y40

S4

S4

S3

R5 R6

R6

5 a4 000100 a5 000101 1 y12 у1 8 у20 y41 S6
6 a5 000101 a6 000110 1 y11 y28 y36 S5 R6
7 a6 000110 a14 001110 1 y10 y27 y29 y41 S3
8 a7 000111 a8 001000 1 y13 y16 y35 S3 R4 R5 R6
9 a8 001000 a9 001001 1 y15 y19 y34 S6
10 a9 001001 a14 001110 1 y10 y30 y32 y41 S4 S5 R6
11 a10 001010 a11 001011 1 y11 y16 y35 S6
12 a11 001011 a12 001100 1 y10 y17 y27 y41 S4 R5 R6
13 a12 001100 a13 001101 1 y11 y25 y37 S6
14 a13 001101 a14 001110 1 y10 y20 y27 y41 S5 R6

15

a14

001110

a15

a17

a20

001111

010001

010100

X3

nX3 X4

nX3 nX4

y14 y17 y21 y41

S6

S2 S6

S2

R3 R4 R5

R3 R5

16 a15 001111 a16 010000 1 y15 y19 y37 S2 R3 R4 R5 R6
17 a16 010000 a25 011001 1 y12 y18 y32 y41 S3 S6
18 a17 010001 a18 010010 1

y12 y15 y17

y21 y22 y34 y40

S5 R6
19 a18 010010 a19 010011 1 y12 y30 y32 y41 S6
20 a19 010011 a25 011001 1 y12 y23 y30 y41 S3 R5
21 a20 010100 a21 010101 1 y15 y19 y34 S6
22 a21 010101 a22 010110 1 y14 y18 y32 y41 S5 R6
23 a22 010110 a23 010111 1 y13 y31 y36 S6
24 a23 010111 a24 011000 1 y12 y30 y32 y41 S3 R4 R5 R6
25 a24 011000 a25 011001 1 y13 y28 y39 S6

26

a25

011001

a26

a28

a30

011010

011100

011110

X3

nX3 X4

nX3 nX4

y14 y20 y24 y40

S5

S4

S4 S5

R6

R6

R6

27 a26 011010 a27 011011 1 y15 y31 y34 S6

28

a27

011011

a32

a34

a35

100000

100010

100011

X2

nX2 X1

nX2 nX1

y14 y24 y32 y40

S1

S1

S1

R2 R3 R5 R6

R2 R3 R6

R2 R3

29 a28 011100 a29 011101 1

y9 y14 y18

y19 y20 y35 y41

S6

30

a29

011101

a32

a34

a35

100000

100010

100011

X2

nX2 X1

nX2 nX1

y14 y23 y33 y41

S1

S1 S5

S1 S5

R2 R3 R4 R6

R2 R3 R4 R6

R2 R3 R4

31 a30 011110 a31 011111 1 y14 y17 y24 y41 S6

32

a31

011111

a32

a34

a35

X2

nX2 X1

nX2 nX1

y15 y31 y38

S1

S1

S1

R2 R3 R4 R5 R6

R2 R3 R4 R6

R2 R3 R4

33 a32 100000 a33 100001 1 y11 y25 y34 S6
34 a33 100001 a0 000000 1 y10 y26 y30 y40 R1 R6
35 a34 100010 a0 000000 1 y10 y26 y30 y41 R1 R5
36 a35 100011 a36 100100 1 y11 y31 y35 S4 R5 R6
37 a36 100100 a0 000000 1 y10 y26 y30 y40 R1 R4

2.2 Формування схеми автомата Мура

2.2.1 Функції збудження пам'яті та їх синтез у заданий базис:

2.2.2 Синтез дешифратора та його синтез у заданий базис:

Синтез дешифратора для автомата Мура розробляється так само, як і синтез для автомата Мілі(див. далі).

2.2.3 Рівняння вихідних сигналів та їх синтез у заданий базис:


2.3 Методика синтезу автомата Мілі

Структурна схема автомата Мілі (зображена на рис. 2.3) включає ті ж етапи, що і синтез КА Мура. Відрізняється від схеми автомата Мура тим, що вихідні сигнали Y залежать від вхідних Х.

Порядок синтезу автомата Мілі:

1. Позначаємо вхід початкових та кінцевих станів;

2. Позначаємо вихід операторних вершин у паралельних гілках одним станом (див. рис. 2.4). Кожна операторна вершина відзначається окремим станом. Таблиця переходів автомата має наступні стовпці: am , as - вихідний стан і стан переходу.

Х (am,as) - кон’юнкція вхідних перемінних, визначальний перехід (am , as ),

Yh - вихідний сигнал на переході (am , as ).

Для синтезу логічної схеми в заданому базисі необхідно перетворити СБФ за правилами Де-Моргана з урахуванням обмежень елементного базису - числа входів і навантажувальної здатності.


Рис. 2.5 – Граф-схема автомата Мілі


Табл. 2.2 – Структура переходів для автомата Мілі

п/п

Поточний

стан

Наступний

стан

Вхідний сигнал

Х

Вихідний сигнал

y

S входи тригерів R входи тригерів
Am код As код
1 a0 00000 a1 00001 1 у1 у2 y4 y7 S5
2 a1 00001 a2 00010 1 y3 у8 S4 R5
3 a2 00010 a3 00011 1 у1 4 у17 у2 1 y40 S5

4

a3

00011

a4

a6

a8

00100

00110

01000

X3

nX3 X4

nX3 nX4

y12 у1 8 у20 y41

y13 y16 y35

y11 y16 y35

S3

S3

S2

R4 R5

R5

R4 R5

5 a4 00100 a5 00101 1 y11 y28 y36 S5
6 a5 00101 a11 01011 1 y10 y27 y29 y41 S2 S4 R3
7 a6 00110 a7 00111 1 y15 y19 y34 S5
8 a7 00111 a11 01011 1 y10 y30 y32 y41 S2 R3
9 a8 01000 a9 01001 1 y10 y17 y27 y41 S5
10 a9 01001 a10 01010 1 y11 y25 y37 S4 R5
11 a10 01010 a11 01011 1 y10 y20 y27 y41 S5
12 a11 01011 a12 01100 1 y14 y17 y21 y41 S3 R4 R5

13

a12

01100

a13

a14

a16

01101

01110

10000

X3

nX3 X4

nX3 nX4

y15 y19 y37

y12 y15 y17

y21 y22 y34 y40

y15 y19 y34

S5

S4

S1

R2 R3

14 a13 01101 a20 10100 1 y12 y18 y32 y41 S1 R2 R5
15 a14 01110 a15 01111 1 y12 y30 y32 y41 S5
16 a15 01111 a20 10100 1 y12 y23 y30 y41 S1 R2 R4 R5
17 a16 10000 a17 10001 1 y14 y18 y32 y41 S5
18 a17 10001 a18 10010 1 y13 y31 y36 S4 R5
19 a18 10010 a19 10011 1 y12 y30 y32 y41 S5
20 a19 10011 a20 10100 1 y13 y28 y39 S3 R4 R5
21 a20 10100 a21 10101 1 y14 y20 y24 y40 S5

22

a21

10101

a22

a23

a24

10110

10111

11000

X3

nX3 X4

nX3 nX4

y15 y31 y34

y9 y14 y18

y19 y20 y35 y41

y14 y17 y24 y41

S4

S4

S2

R5

R3 R5

23 a22 10110 a25 11001 1 y14 y24 y32 y40 S2 S5 R3 R4
24 a23 10111 a25 11001 1 y14 y23 y33 y41 S2 R3 R4
25 a24 11000 a25 11001 1 y15 y31 y38 S5

26

a25

11001

a26

a0

a27

11010

00000

11011

X2

nX2 X1

nX2 nX1

y11 y25 y34

y10 y26 y30 y41

y11 y31 y35

S4

S4

R5

R1 R2 R5

27 a26 11010 a0 00000 1 y10 y26 y30 y40 R1 R2 R4
28 a27 11011 a0 00000 1 y10 y26 y30 y40 R1 R2 R4 R5

2. 4 Формування схеми автомата Мілі

2.4.1 Функції збудження пам'яті та їх синтез у заданий базис:

2.4.2 Синтез дешифратора та його синтез у заданий базис.

Методика синтезу дешифратора до автомата Мілі:

- таблиця істинності (Карта Карно);

- Карта Карно для одержання мінімізованої функції збудження;

- запис формул функцій збудження;

- побудова схеми.

Оскільки на кожнім наборі вхідних перемінних активний тільки один біт, то Карту Карно можна зобразити одну загальну для усіх вихідних сигналів. При цьому в осередках Карти Карно записуються не одиниці, а імена відповідних функцій.

Табл. 2.3 – Карта Карно до дешифратора автомата Мілі

000 001 011 010 110 111 101 100

00

01

11

10

а0 а1 а3 а2 а6 а7 а5 а4
а8 а9 а11 а10 а14 а15 а13 а12
а24 а25 а27 а26 * * * *
а16 а17 а19 а18 а22 а23 а21 а20

...

...

...

Електрична схема дешифратора зображена на рисунку 2.6.


Рис. 2.6 – Дешифратор. Функціональна схема.

2.4.3 Рівняння вихідних сигналів та їх синтез у заданий базис:


3. Синтез автоматів з програмованою логікою

3.1 Синтез автомата з примусовою адресацією команд

ПЗУ – зберігаємий набір команд, кожна з котрих несе інформацію про набір вихідного сигналу, про поточний такт та адресу мікрокоманд, котрі повинні бути виконані у наступному такті.


Рис. 3.1 - Формат МК


Рис. 3.2 - Структурна схема АПЛ з примусовою адресацією мікрокоманд

Аналіз рисунка 3.2:

- СФВС - дозволяє декодувати інформацію, що утримується в полі Y.

- САХ - являє собою мультиплексор на інформаційні входи якого подаються вхідні сигнали, а на адресні, код з поля Nх при цьому на А0 завжди подається сигнал "0", у такий спосіб формується сигнал Z, що забезпечує передачу на адресний вхід пам'яті А або А0 , або А1 .

Для того щоб сформувати вміст ROM по граф-схемі мікрокоманд необхідно:

- відзначити номера мікрокоманд;

- закодувати вихідні сигнали і сформувати мікрокоманди по заданому форматі;

- сформувати таблицю вмісту ROM.


Рис. 3.3 – Граф-схема автомата з примусовою адресацією команд

Для скорочення довжини слова ROM будемо використовувати принцип максимального кодування вихідних сигналів.


Табл. 3.1 – Максимальне кодування вихідних сигналів

№п/п Макрокоманда Мікрооперації Код
1 Y0 - 000000
2 Y1 y1 y2 y4 y7 000001
3 Y2 y3 y8 000010
4 Y3 y14 y17 y21 y40 000011
5 Y4 y11 y16 y35 000100
6 Y5 y10 y17 y27 y41 000101
7 Y6 y11 y25 y37 000110
8 Y7 y10 y20 y27 y41 000111
9 Y8 y13 y16 y35 001000
10 Y9 y15 y19 y34 001001
11 Y10 y10 y30 y32 y41 001010
12 Y11 y12 y18 y20 y41 001011
13 Y12 y11 y28 y36 001100
14 Y13 y10 y27 y29 y41 001101
15 Y14 y14 y17 y21 y41 001110
16 Y15 y15 y19 y34 001111
17 Y16 y14 y18 y32 y41 010000
18 Y17 y13 y31 y36 010001
19 Y18 y12 y30 y32 y41 010010
20 Y19 y13 y28 y39 010011
21 Y20 y12 y15 y17 y21 y22 y34 y40 010100
22 Y21 y12 y30 y32 y41 010101
23 Y22 y12 y23 y30 y41 010110
24 Y23 y15 y19 y37 010111
25 Y24 y12 y18 y32 y41 011000
26 Y25 y14 y20 y24 y40 011001
27 Y26 y14 y17 y24 y41 011010
28 Y27 y15 y31 y38 011011
29 Y28 y9 y14 y18 y19 y20 y35 y41 011100
30 Y29 y14 y23 y33 y41 011101
31 Y30 y15 y31 y34 011110
32 Y31 y14 y24 y32 y40 011111
33 Y32 y11 y31 y35 100000
34 Y33 y10 y26 y30 y40 y0 100001
35 Y34 y10 y26 y30 y41 y0 100010
36 Y35 y11 y25 y34 100011

Табл. 3.2 – Структура переходів для автомата з примусовою адресацією команд

Адреса

а1 а2 а3 а4 а5 а6

Y

0..5

X

6..8

FA0

9..14

FA1

15..20

Перехід
000000 000001 000 000001 * b0 → b1
000001 000010 000 000010 * b1 → b2
000010 000011 011 000011 001011 b2
000011 000000 100 000100 001000 b3
000100 000100 000 000101 * b4 → b5
000101 000101 000 000110 * b5 → b6
000110 000110 000 000111 * b6 → b7
000111 000111 000 001110 * b7 → b14
001000 001000 000 001001 * b8 → b9
001001 001001 000 001010 * b9 → b10
001010 001010 000 001110 * b10 → b14
001011 001011 000 001100 * b11 → b12
001100 001100 000 001101 * b12 → b13
001101 001101 000 001110 * b13 → b14
001110 001110 011 001111 011000 b14
001111 000000 100 010000 010101 b15
010000 001111 000 010001 * b16 → b17
010001 010000 000 010010 * b17 → b18
010010 010001 000 010011 * b18 → b19
010011 010010 000 010100 * b19 → b20
010100 010011 000 011010 * b20 → b26
010101 010100 000 010110 * b21 → b22
010110 010101 000 010111 * b22 → b23
010111 010110 000 011010 * b23 → b26
011000 010111 000 011001 * b24 → b25
011001 011000 000 011010 * b25 → b26
011010 011001 011 011011 100000 b26
011011 000000 100 011100 011110 b27
011100 011010 000 011101 * b28 → b29
011101 011011 010 100010 100110 b29
011110 011100 000 011111 * b30 → b31
011111 011101 010 100010 100110 b31
100000 011110 000 100001 * b32 → b33
100001 011111 010 100010 100110 b33
100010 000000 001 100011 100101 b34
100011 100000 000 100100 * b35 → b36
100100 100001 000 000000 * b36 → кінець
100101 100010 000 000000 * b3 7 → кінець
100110 100011 000 100111 * b3 8 → b3 9
100111 100001 000 000000 * b3 9 → кінець

Табл. 3.3 – Таблиця кодів станівавтомата з примусовою адресацієюкоманд

№ п/п Стан Код
1 b0 000000
2 b1 000001
3 b2 000010
4 b3 000011
5 b4 000100
6 b5 000101
7 b6 000110
8 b7 000111
9 b8 001000
10 b9 001001
11 b10 001010
12 b11 001011
13 b12 001100
14 b13 001101
15 b14 001110
16 b15 001111
17 b16 010000
18 b17 010001
19 b18 010010
20 b19 010011
21 b20 010100
22 b21 010101
23 b22 010110
24 b23 010111
25 b24 011000
26 b25 011001
27 b26 011010
28 b27 011011
29 b28 011100
30 b29 011101
31 b30 011110
32 b31 011111
33 b32 100000
34 b33 100001
35 b34 100010
36 b35 100011
37 b36 100100
38 b37 100101
39 b38 100110
40 b39 100111

Табл. 3.4 – Таблиця вхіднихсигналівавтомата з примусовоюадресацієюкоманд

№ п/п Вхіднийстан Код
1 Х0 000
2 Х1 001
3 Х2 010
4 Х3 011
5 X4 100

Рівняння вихідних сигналів та їх синтез у заданий базис:



3.2 Синтез автомата з природною адресацією команд

У реальних мікропрограмах часто зустрічаються ситуації, коли маються досить довгі сплетіння операторних вершин. У цьому випадку можлива організація схеми, коли безумовний перехід не задається, а виконується нарощуванням адреси мікрокоманди. Таким чином вдається зменшити довжину мікрокоманди за рахунок формування вихідних сигналів і аналізу вхідних сигналів у різні моменти часу. Для цього в автоматах із природною адресацією використовується два формати мікрокоманд:



- операторна


- умовна

А

ROM

D

С


РГМК
СТ

Х

+1

Рис. 3.4 – Структурна схема автомата з природною адресацією

Аналіз схеми:

У регістрі мікрокоманд зберігатися поточне МК, якщо це операторна МК, то працює схема формування вихідних сигналів і в операційний автомат попадає y.

При цьому схема аналізу Х формує Z, що змушує адресу, що зберігається в лічильнику збільшитися на одиницю.

Якщо в регістрі МК умовна МК, то вихідний сигнал не формується, а схема аналізу Х формує Z, у залежності від значення Z:

якщо Z=1, то до значення лічильника команд додається 1,

якщо Z=0, то в лічильник попадає адреса мікрокоманди з поля b.

Порядок формування змісту ROM такий же як в автоматі з примусовою адресацією мікрокоманд.

Рис. 3.5 – Граф-схема автомата з природною адресацією команд


Табл. 3.5 – Структура переходів для автомата з природною адресацією команд

№ п/п

Адреса b

b1 b2 b3 b4 b5 b6

0 1 . . . 6

Перехід

1 1 ... 3 4 . . . 9
1 000000 0 000001 b0 → b1
2 000001 0 000010 b1 → b2
3 000010 0 000011 b2 → b3
4 000011 1 011 010010 b2
5 000100 0 001011 b4 → b5
6 000101 0 001100 b5 → b6
7 000110 0 001101 b6 → b7
8 000111 0 001110 b7 → b14
9 001000 1 011 011100 b8
10 001001 0 010111 b9 → b10
11 001010 0 011000 b10 → b11
12 001011 0 011001 b11 → b12
13 001100 1 011 100111 b12
14 001101 0 011110 b13 → b14
15 001110 0 011111 b14 → b15
16 001111 1 010 101110 b15
17 010000 0 100011 b16 → b17
18 010001 0 100001 b17 → кінець
19 010010 1 100 010111 b18
20 010011 0 001000 b19 → b20
21 010100 0 001001 b20 → b21
22 010101 0 001010 b21 → b22
23 010110 1 000 000111 b22 → БП b7
24 010111 0 000100 b23 → b24
25 011000 0 000101 b24 → b25
26 011001 0 000110 b25 → b26
27 011010 0 000111 b26 → b27
28 011011 1 000 000111 b27 → БП b7
29 011100 1 100 100001 b28
30 011101 0 010100 b29 → b30
31 011110 0 010101 b30 → b31
32 011111 0 010110 b31 → b32
33 100000 1 000 001011 b32 → БП b11
34 100001 0 001111 b33 → b34
35 100010 0 010000 b34 → b35
36 100011 0 010001 b35 → b36
37 100100 0 010010 b36 → b37
38 100101 0 010011 b37 → b38
39 100110 1 000 001011 b38 → БП b11
40 100111 1 100 101011 b39
41 101000 0 011100 b40 → b41
42 101001 0 011101 b41 → b42
43 101010 1 000 001111 b42 → БП b15
44 101011 0 011010 b43 → b44
45 101100 0 011011 b44 → b45
46 101101 1 000 001111 b45 → БП b15
47 101110 1 001 110000 b46
48 101111 0 100010 b47 → кінець
49 110000 0 100000 b48 → b49
50 100001 0 100001 b49 → кінець

Табл. 3.6 – Таблиця кодів станівавтомата з природною адресацією команд

№ п/п Стан Код
1 b0 000000
2 b1 000001
3 b2 000010
4 b3 000011
5 b4 000100
6 b5 000101
7 b6 000110
8 b7 000111
9 b8 001000
10 b9 001001
11 b10 001010
12 b11 001011
13 b12 001100
14 b13 001101
15 b14 001110
16 b15 001111
17 b16 010000
18 b17 010001
19 b18 010010
20 b19 010011
21 b20 010100
22 b21 010101
23 b22 010110
24 b23 010111
25 b24 011000
26 b25 011001
27 b26 011010
28 b27 011011
29 b28 011100
30 b29 011101
31 b30 011110
32 b31 011111
33 b32 100000
34 b33 100001
35 b34 100010
36 b35 100011
37 b36 100100
38 b37 100101
39 b38 100110
40 b39 100111
41 b40 101000
42 b41 101001
43 b42 101010
44 b43 101011
45 b44 101100
46 b45 101101
47 b46 101110
48 b47 101111
49 b48 110000
50 b49 110001

Табл. 3.7 – Таблиця вхідних сигналівавтомата з природною адресацієюкоманд

№ п/п Вхіднийстан Код
1 Х0 000
2 Х1 001
3 Х2 010
4 Х3 011
5 X4 100

Рівняння вихідних сигналів та їх синтез у заданий базис:



Синтез мультиплексора

Табл. 3.8 – Карта Карно до мультиплексора

00 01 11 10

0

1

x0 x1 x3 x2
x4 * * *


4. ПОРІВНЯЛЬНА ХАРАКТЕРИСТИКА АВТОМАТІВ

4.1 Порівняльна характеристика автоматів з жорсткою логікою

Розрахуємо усі дані по формулам:

N - кількість великих елементів.

Nвх – кількість входів на великі елементи.

n – кількість малих елементів.

nвх - кількість входів на малі елементи.

Nтр – кількість тригерів у схемі

Табл. 4.1 – Таблиця обліку апаратурних витрат автоматів з жорсткою логікою

R схеми Тригер DC
Мура
Мілі

З таблиці 4.1 видно, що R схеми у Мура менше, але входів на DC більше.

Тригерів однакова кількість.

4.2 Порівняльна характеристика автоматів з програмованою логікою

Табл.4.2 Таблиця обліку апаратурних витрат автоматів з програмованою логікою

ПЗУ Регістрлічильник Комбінаційначастина DC
Примусова
Природна

У автомата з природною адресацією МК більш мінімальні апаратні витрати (корпусів), ніж у автомата з примусовою адресацією.

Тригерів однакова кількість. Кількість входів на DC однакова.

Комбінаційна частина у АПЛ з природною адресацією більша,
ніж у примусової.

ВИСНОВОК

операційний керуючий автомат програмований логіка

Виконано курсовий проект з дисципліни „Прикладна теорія цифрових автоматів” на тему „Синтез керуючих автоматів”.

Були синтезовані основні типи автоматів з жорсткою та програмованою логікою. Хоча всі приведені автомати справилися з поставленою задачею і в достатній мірі реалізували схему керуючого автомата, але є деякі позитивні і негативні особливості синтезу кожного з автоматів. Наприклад, автомати з жорсткою логікою мають досить велику комбінаційну частину, але вони не потребують елементів ROM, це робить ці автомати дуже оптимальними за ціною затрат.

Автомати з програмованою логікою виявились досить складними в розрахунках і реалізації, але це повністю компенсувалось універсальністю та гнучкістю програмування, чого не можна було досягнути на автоматах з жорсткою логікою.