Синтез микропрограммного управляющего автомата с жесткой логикой

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

- -Inc Inc D1D4Sa20010a3 a30011 0011x4 ~x4y1, y4, y5, y6 y1, y6Inc Inca30011a4 a4 a90100 0100 1001~x2x5 ~x2~x5 x2y2, y3 - -Inc Inc D1D4Sa40100a5 a50101 0101x4 ~x4y4, y5, y6, y7 y6, y7Inc Inca50101a0 a6 a60000 0110 0110x6 ~x6x7 ~x6~x7y10 y3 -R Inc Inca60110a701111y8Inca70111a6 a6 a8 a80110 0110 1000 1000~x8x7 ~x8~x7 x8x9 x8~x9y3 - - y9D2D3S D2D3S Inc Inca81000a9 a91001 1001x10 ~x10y5, y6,y11 -Inc Inca91001a0 a90000 1001x11 ~x11y12 -R -

Inc= a0 x1 v a1~x2x1 v a2 v a3~x2v a4v a5~x6v a6 v a7 x8v a8= a1x2v a3x2 v a7~x8

R= a5x6 v a9x11= a1x2v a3x2= a7~x8= a7~x8= a1x2v a3x2

y0=a0x1=a0x1 v a2=a1~x2x1x3 v a3~x2x5=a1~x2x1x3 v a3~x2x5 v a5~x6x7 v a7~x8x7=a2x4 v a4x4=a2x4 v a4x4 v a8x10= a2 v a4 v a8x10=a4=a6=a7x8~x9=a5x6=a8x1012=a9x11

 

После выделения общих частей в логических уравнениях и упрощений получаем окончательные выражения для построения функциональной схемы управляющего автомата

 

Inc= y0 v k v a2 v d v a4v t v a6 v m v a8= f v g

R= y10 v y12=f=g= g= f

=a0x1=y0 v a2=kx3 v dx5=y2 v p=x4(a2 v a4)=y4 v y11= a2 v y5=a4=a6=m~x9=a5x6=a8x10=a9x11

= a1~x2x1= x2(a1va3)= a7~x8= a3~x2= a5~x6= a7 x8= x7(t v g)

 

Цена комбинационной схемы по Квайну для автомата Мили на счетчике С =71.

 

 

9. Кодирование состояний для модели Мура

 

.1 Кодирование состояний для модели Мура на D-триггерах

 

В таблице 5 представлена прямая структурная таблица переходов и выходов для автомата Мура. Так как каждому состоянию автомата Мура соответствует свой набор выходных сигналов, то столбец выходных сигналов в таблице 5 помещен следом за столбцом исходных состояний автомата. Проанализируем вариант синтеза автомата Мура на 4 D-триггерах.

При кодировании состояний автомата, в качестве элементов памяти которого выбраны D-триггеры, следует стремиться использовать коды с меньшим числом "1" в кодовом слове. Для кодирования 16 состояний (b0, b1, ... , b15) необходимо 4 элемента памяти и из множества 4-разрядных двоичных слов надо выбрать код каждого состояния, ориентируясь на граф и таблицу переходов: чем чаще в какое-либо состояние происходят переходы из других состояний, то есть чем чаще оно встречается в столбце bs таблицы, тем меньше в коде этого состояния следует иметь "1".

Наибольшее количество переходов в состояние b15, b14, b11, b4, b5, b7. Закодируем K(b15)=0000, а оставшимся из них - кодами с одной "1": K(b14) = 0001, К(b11) = 0010, К(b4) = 0100, К(b5) = 1000. Для кодирования других состояний будем использовать слова с большим количеством "1" в кодовом слове, стараясь, насколько возможно, использовать соседние с bs коды для состояний, находящихся в одном столбце таблицы 5.

Далее коды состояний заносим в соответствующие столбцы прямой таблицы переходов (таблица 5) и по известному правилу формируем логические выражения для функций возбуждения.

микропрограммный автомат алгоритм умножение число

 

Таблица 6. Прямая структурная таблица переходов и выходов автомата Мура.

Исходное состояние bmВыходные сигналыКод bmСостояние перехода bsКод bsВходной сигналФункции возбуждения триггеровb0-0110b11111x1D1D2D3D4b1y0y11111b2 b3 b4 b5 b14 b151101 0111 0100 1000 0001 0000~x2x1 ~x2x1x3 ~x2x1~x3x4 ~x2x1~x3~x4 x2~x11 x2x11D1D2D4 D2D3D4 D2 D1 D4 -b2-1101b2 b3 b4 b51101 0111 0100 1000~x1 x1x3 x1~x3x4 x1~x3~x4D1D2D4 D2D3D4 D2 D1b3y2y30111b4 b50100 1000x4 ~x4D2 D1b4y1y4y5y60100b6 b7 b8 b14 b150101 1100 1010 0001 0000~x2x5 ~x2~x5x4 ~x2~x5~x4 x2~x11 x2x11D2D4 D1D2 D1D3 D4 -b5y1y61000b6 b7 b8 b14 b150101 1100 1010 0001 0000~x2x5 ~x2~x5x4 ~x2~x5~x4 x2~x11 x2x11D2D4 D1D2 D1D3 D4 -b6y2y30101b7 b81100 1010x4 ~x4D1D2 D1D3b7y4y5y6y71100b9 b10 b111110 1001 0010x6 ~x6x7 ~x6~x7D1D2D3 D1D4 D3b8y6y71010b9 b10 b111110 1001 0010x6 ~x6x7 ~x6~x7D1D2D3 D1D4 D3b9y101110b001101D2D3b10Y31001b1100101D3b11Y80010b10 b11 b12 b13 b14 b151001 0010 1011 0011 0001 0000~x8x7 ~x8~x7 x8~x9 x8x9x10 x8x9~x10~x11 x8x9~x10x11D1D4 D3 D1D3D4 D3D4 D4 -b12Y91011b13 b14 b150011 0001 0000x10 ~x10~x11 ~x10x11D3D4 D4 -b13y5y6y110011b14 b150001 0000~x11 x11D4 -b14-0001b14 b150001 0000~x11 x11D4 -b15y120000b001101D2D3

D1= b0 x1 v b1~x2x1 v b1~x2x1~x3~x4 v b2~x1 v b2 x1~x3~x4 v b3~x4 v b4~x2~x5 v b5~x2~x5 v b6 v b7x6 v b7~x6x7 v b8x6 v b8~x6x7 v b11~x8x7 v b11 x8~x9

 

D2= b0 x1 v b1~x2x1 v b1~x2x1x3 v b1~x2x1~x3x4 v b2~x1 v b2 x1~x3x4 v b3 x4 v b4~x2x5

v b4~x2~x5x4 v b5~x2x5 v b5~x2~x5x4 v b6 x4 v b7 x6 v b8 x6 v b9 v b15

 

D3= b0 x1 v b1~x2x1x3 v b2 x1x3 v b4~x2~x5~x4 v b5~x2~x5~x4 v b6~x4 v b7 x6 v b8 x6

v b8~x6~x7 v b9 v b10 v b11~x8~x7 v b11 x8~x9 v b11 x8x9x10 v b12 x10 v b15

 

D4= b0 x1 v b1~x2x1 v b1~x2x1x3 v b1 x2~x11 v b2~x1 v b2 x1x3 v b4~x2x5 v b4 x2~x11 v b5~x2x5 v b5 x2~x11 v b7~x6x7 v b8~x6x7 v b11~x8x7 v b11 x8~x9 v b11 x8x9x10 v b11x8x9~x10~x11 v b12 x10 v b12~x10~x11 v b13~x11v b14~x11

 

Так как для автомата Мура функции выходов не зависят от входных сигналов, то в соответствии со вторым столбцом таблицы 6 запишем логические выражения для управляющих сигналов.

y0=b1= b1 v b4 v b5= b3 v b6= b3 v b6 v b10= b4 v b7= b4 v b7 v b13= b4 v b5 v b7 v b8 v b13= b7 v b8=b11=b12=b911=b13

y12=b12

 

Даже после выделения общих частей в логических уравнениях и упрощений получаем очень сложные выражения для построения функциональной схемы управляющего автомата, так что цена комбинационной схемы по Квайну для автомата Мура будет намного больше, чем для автомата Мили.

 

.2 Кодирование состояний для модели Мура на RS-триггерах

 

01). Кодируем первые два состояния : К(0) = 0000

1 К(1) = 0001

2 2) Выбираем следующее незакодированное состояние u = 2

3 1 2

4 2 2

5 M= 2 3

14 2 4

15 2 5

2 Составляем список уже закодированных соседних состояний

3 B = {1}

4Список всех соседних кодов для них

5D= {1001,0101,0011}

4Выбираем код с минимальной функцией W

5W=1K(2) = 0011

6 3) u = 3

7 1 3

8 M= 2 3

14 3 4

15 3 5

6 B = {1,2}, D = {1001,0101,0010,1011,0111}

7W = 3K(3) = 0010

8 4) u = 4

14 1 4

15 2 4

7 3 4

8 M= 4 6

9 4 7

10 4 8

11 4 14

9 4 15

10 B = {1, 2, 3} D = {1001, 0101, 1011, 0111, 1010, 0110}

11W = 5K(4) = 0111

0 5) u = 5

11 1 5

10 2 5

11 3 5

12 M= 5 6

13 5 7

14 5 8

15 5 14

13 5 15

14 B = {1,2,3} D = {1001,0101,1011,1010,0110}

15 W = 5 K(5) = 1011

14 6) u = 6

15 4 6

15 M= 5 6

0 6 7

8

B = {4,5} D = {1111,1001,1010,0101,0110}

W = 2 K(6) = 1111

) u = 7

7

7

M= 6 7

9

10

11

B = {4,5,6} D ={0101,0110,1001,1010,1110,1101}

W = 5K(7) = 1101

) u = 8

8

8

M= 6 8

9

10

11

B = {4,5,6} D = {0101,0110,1001,1010,1110}

W = 5K(8) = 1110

) u = 9

9

M= 8 9

0

B = {7,8,0} D = {1100,0101,1001,0110,1010,1000,0100}

W = 4K(9) = 1100

) u = 10

10

M= 8 10

11

10

B = {7, 8} D = {0101,1001,0110,1010}

W = 4K(10) = 0101

) u = 11

11

11

11

10

M= 11 11

12

13

14

15

B = {7,8,10} D = {1001,0110,1010,0100}

W = 6K(11) = 0100

) u =12