На главную

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


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

ВСТУП

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

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

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


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

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

 

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

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

             

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


Для обчислювання формули S використовується ІМp-модель (Individual Mutual with Parallel part - 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 – завантаження даних  у регістри пам'яті.

у16–у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

у14 у17 у21 y40

S4

S4

S3

R5 R6

R6

5

a4

000100

a5

000101 1

y12 у18 у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

у14 у17 у21 y40

S5

4

a3

00011

a4

a6

a8

00100

00110

01000

X3

nX3 X4

nX3 nX4

y12 у18 у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 *

b37 → кінець

100110 100011 000 100111 *

b38 → b39

100111 100001 000 000000 *

b39 → кінець


Табл. 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

 

С

 



РГМК

 

СТ

 
            

Трапеция: С&#13;&#10;А&#13;&#10;Х&#13;&#10;

Х

 

                                              

+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тр – кількість тригерів у схемі

Подпись: Для Мура:&#13;&#10;N =                  N вх =&#13;&#10;n =                   n вх =&#13;&#10;R схеми =N тр =&#13;&#10; =&#13;&#10;N вх=               n вх=&#13;&#10;Подпись: Для Мілі:&#13;&#10;N =              N вх =&#13;&#10;n =               n вх =&#13;&#10;R схеми =N тр =&#13;&#10; =&#13;&#10;N вх=           n вх=&#13;&#10;&#13;&#10;

 

 

 

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

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

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

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


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

 

                        

Подпись: Для природньої адресації:&#13;&#10;Nслів=              Nбіт=&#13;&#10;t=                       Q=&#13;&#10;Nкорпусів=&#13;&#10;Rg=N=               DC=&#13;&#10;Подпись: Для примусової адресації:&#13;&#10;Nслів=               Nбіт=&#13;&#10;t=                        Q=&#13;&#10;Nкорпусів=&#13;&#10;Rg=N=               DC=&#13;&#10;

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

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

 

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

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

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


ВИСНОВОК

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

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

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

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


© 2010