Прикладная теория цифровых автоматов (191-003B)

Посмотреть архив целиком

29



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 СФМО Z10 .... 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 і Z­2:

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).








Случайные файлы

Файл
10940.rtf
143996.rtf
15265-1.rtf
CBRR5480.DOC
5064.rtf