Файл: Баранов, С. И. Синтез микропрограммных автоматов.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 23.10.2024

Просмотров: 101

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Пусть имеются ГСА Г х, . . . , Гч, . . . , r Q, в каждой из которых операторы не повторяются, но среди различных граф-схем могут встречаться одинаковые операторы. Требуется построить объединен­ ную ГСА, которая равносильна каждой из ГСА Гч при тех условиях, когда должна выполняться эта ГСА r q (q = 1, . . . , Q).

Параллельно будем рассматривать пример объединения трех графсхем Г х, Г.,, Г3, изображенных на рис. 7-17. Решение задачи объеди­ нения разбивается на ряд этапов.

1.

Для

каждой ГСА f q строится соответствующая ей MCA N

(q =

1, . . . , Q). В нашем примере это MCA М х, М „ М 3, приведенные

в табл. 7-19,

7-20, 7-21.

 

2.

Каждая

MCA

M q

кодируется

вектором

(eqll . . . ,

eqn, . . .

eqN), где eqn f

(0,

1], N

>

]

log2Q

[; ] а

[, как и ранее, означает наи­

меньшее целое число, большее а или равное ему,

если а — целое.

 

Закодируем MCA М х, М 2, М 3

следующими кодами:

 

 

 

 

 

Мі —(00);

М 2 — (11);

М3 —(01).

 

 

3.

Каждой

MCA M q ставится

в соответствие конъюнкция Р =

=

p[ql ■• • Рп" • •

Pn” >_ где

К . -

■■■■ V )

т код МСА м г

Р°п =

~

Рп’

Рп = Рп'

 

~ Р\Р2'

^2 ~~' Р\ 7*2’ ^3

Р\?2-

 

 

4. Строится объединенная MCA М, строки и столбцы которой от­ мечены всеми операторами, входящими в объединение множеств опера-

168


Уо

V i

Yо

^3

У4

Уъ

у 0

^0

Уі

Уо

^3

^4

^7

^8

У і

Y„

A'l

X<2

>'і

Y о

*7*1

Хо

Таблица 7-19

MCA M i

y 3

У-а

Г к

*1*3

*1*3*0

л'з

А'з-Ѵе

хз

х 3х

*4*3

MCA M.

Уз

*7*1*5

Л'5

*5

*4

ѵ л

Л'зЛГб

*3*0

*4*3

 

 

*4

 

 

1

 

 

Таблица 7-20

Уі

^8

І'к

аѴѴ1'Ѵ5

*ѵ7

 

*5

 

 

Л'б

 

 

1

1

169

 

 

 

 

 

 

Таблица 7-21

 

 

 

 

M C A М3

 

 

 

 

 

Г4

У ,

у 8

У*

у 7

Ук

 

Го

* 1

 

 

* 1 * 5

* 1 * 5

 

 

Г .

 

X .,

 

 

 

 

 

 

 

 

 

 

 

 

У ,

 

 

 

* 5

Л*5

 

 

Г з

 

 

 

хь

Л*5

 

 

 

 

 

 

 

 

 

Г4

 

 

* 4

 

 

 

 

У 7

 

 

 

 

 

1

торов MCA M x,

. . . , Mq1. Элементы atj MCA M

равны \ /

((a,;-)9 Pq),

где (a,y)

— элемент MCA /И^,

стоящий

 

q=\

 

на пересечении строки Yi и

столбца

Yj.

 

 

 

 

 

 

Объединенная MCA АТ, построенная по MCA М г, М 2, M s, приве­ дена в табл. 7-22.

Поскольку конъюнкция Pq (q = 1...........Q) равна единице все время, пока MCA М «работает» как MCA M q, ни один оператор не ме­ няет значений переменных p lt . . . , pN (относительно этих перемен­ ных имеем пустое распределение сдвигов), в связи с чем MCA М можно упростить. Так, переход к оператору У5 (столбец У5 в табл. 7-22) про­

исходит всегда при р, = р, = 0 (<р^_ = PjP2), поэтому в строке У5

можно переменные р г и р 2 заменить на р х = р 2 = 0. Точно так же

в строку

Ув подставим значения р х = р 2 =

0, в строку У7

— значе­

ние р 2 =

1, в строку У8 — значения Рі = р 2 = 1, в результате чего

получим

проминимизированную с учетом

распределения

сдвигов

MCA М'

(табл. 7-23).

 

 

Для перехода от MCA AT к объединенной ГСА Г необходимо раз­ бить MCA М' на подматрицы и воспользоваться методом построения минимальной ГСА, изложенным в § 7-1, или попытаться найти (путем перебора) близкую к минимальной систему скобочных формул пере­ хода для каждой из подматриц. В обоих случаях следует учесть не­ определенности двух типов, которые возникают при объединении ча­ стных ГСА:

1 Среди строк, как и выше, пет оператора Ук, а среди столбцов—опера­ тора Y n.

170


У а

У і

У 2

y 4

П

'Y e

Y 7

y 8

Таблица 7-22

О б ъ е д и н е н н а я M C A М

У і

I

V 'a

1

K 3

у *

Г

n

У *

\

У і

\

Y *

1

у к

Р і Ргх х

 

 

 

 

_ P l P 2 x lx 3

 

 

 

 

 

 

 

 

 

 

 

 

 

РіР2^іх зх а

 

P l P2X lX 3%Q

 

 

Р і Р 2 х 1Х 1Х Ъ

 

Р х Р з х і

 

 

P i P :ix ix i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рі Р г х іх іх ъ

 

 

 

Р і Р 2Х 1Х 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P x Pxx X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

РіР'2Х 1Х Ъ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P l P 2 x 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Pi P2X 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Pl P 2 X 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P l PiX 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Р у Ргх зх й

 

P l P 2x‘ 3x G

 

 

Р 2Р 2 Ч

 

 

 

 

 

 

 

 

 

РхРз-Ч

 

 

 

Р х Р з Ч

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Р \ Ріх Ь

 

 

 

 

 

 

 

 

 

 

 

 

 

 

_ РхРзх з

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Р х Р 2х Зх В

 

P l P i x 3x 0

 

 

Р і Р ^ Ъ

 

 

 

 

 

 

 

 

 

Р х Р з Ч

 

 

 

Ъ х р г ч

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Р і Р і Х Ь

 

 

 

 

 

 

 

 

 

 

 

 

 

P x P2X Xx 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Pl P 2 x i

 

 

 

Р і Р г х іх з

 

 

 

 

 

 

 

 

 

 

Pl P 2 x i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Р х Р 2х І

 

 

 

 

 

 

 

 

 

 

 

!

 

 

Р х Р 2

 

 

 

 

 

 

 

 

 

 

 

 

 

Р 1 Р 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Р х Р 2

 

 

1

 

1

 

 

1

 

 

1

 

 

Р 1Р 2


N

К»

Ко

Уі

К2

Уз

у ,

к 5

К0

К7

MCA M', минимизированная с учетом распределения сдвигов

Уі

1 к 2

У0

У4

Уз

Ув 1 k7

Р і Р ц Х1_

Рі Р 2 х ТХ 1 P l P l x l

P i P 2 x 2

P l P 2 X 2

P l P 2 X 2

P :P;Xj Л '-j

 

 

P i P ' i X j - V j ,

P l p 2 X l X 3X G

P ] P 2X 7X l X 3

PiPi^V s

Р і Р г х і х ь

 

P l P 2X 1X -i

 

 

P i P i x 3

 

 

P l P 2 x 3x 3

P l P 2 X3X B

P_lP2X 5

Р \ Р г х ь

P l P l X ö

 

P l P l x b

 

 

_ P l P 2 x 3

 

Р і Р г - Ч

P l P 2 x 3x 0

P l P 2 X 3X G

P l P l x 3

Р і Р г Ч

 

P l P 2 x 6

 

 

P l P i x i x 3

 

 

P i P 2 x 4

 

Р і Р г х 4х з

P l P z x 4

 

 

Таблица 7-23

Уз Ук

P l P 2 X l

хі

1

P i

P i

К8

1


1. Если число Q объединяемых ГСА меньше 2 Ы , т. е. не все наборы значений переменных р 4, . . . , pN используются для кодирования MCA М г, . . . . M Q, все формулы перехода (или отмеченные покрытия формул перехода) не определены на тех наборах значений переменных

p L, . . . ,

pN,

*4,

. . . ,

xL, которые покрываются кубами (esl .

. . esN

X . . . х),

где

(esl

. . . esN) — неиспользуемый набор

значений

пере­

менных

р, .

. . ,

рдг.

В рассматриваемом примере

не используется

набор р ±, р а = (10), т. е. все формулы перехода не определены на кубе

(10* . . • -ѵ).

Y t не

встречается

в каких-то MCA M q

2.

Если

оператор

(q =

1, . .

. , Q), то

формула

перехода для

Y t (отмеченное покры­

тие Yj) не определена на тех наборах значений переменных, которые

покрываются

кубом

(eql . .

. eqN х . . . х),

где

(eql . . . eqN) — код

MCA M q. В нашем примере

Y r> не встречается в М» и М 3, а потому

формула перехода для Е6

не

определена

на кубах

(11* . . . *) и

(01* . . . *). Точно так же формула перехода для

Y e не определена

на кубах (И* . . . *) и (01*

. . . *), для К7 — на

кубе

(00* . . . *) и

для Е8 — на кубах (00* . . . *)

и (01* . . . *).

 

 

Подматрицы, полученные в результате разбиения MCA-М', приве­

дены в табл. 7-24, 7-25, 7-26, 7-27.

 

 

 

Если для подматриц М\,

/И2, Л43 н ЛГ4 построить соответствующие

подграфы Г1,

Г2, Г3

и Г 1, то после объединения одинаковых исходя­

щих и входящих операторных вершин в одну вершину придем к объе­ диненной ГСА Г, изображенной на рис. 7-18. Эта ГСА построена с по­ мощью программ для ЦВМ М-220, реализующих алгоритмы из § 7-1. К тому же результату можно было бы прийти, если выписать из под­ матриц формулы перехода, доопределить их на неиспользуемых на­ борах значений переменных, после чего проминимизировать и при­ вести к системе скобочных формул. К сожалению, алгоритма подобных преобразований формул перехода, гарантирующего получение реше­ ния, близкого к минимальному, нет. Особые трудности возникают в не­ полностью определенных формулах перехода, и требуется значитель­ ный опыт и многократные попытки для получения хорошего решения. Например, чтобы прийти к той же граф-схеме, которая была получена с помощью методов § 7-1, необходимо доопределить формулы перехода с помощью выражений, заключенных в квадратные скобки, и преобра­ зовать их в систему скобочных формул следующим образом:

у 0 -> (РіРз*і V РіРз*7*Л/ РіРз*і V [Pi/WCi]) Yi V

V (№*1*3 V PlPA*3*e V PlP2*7*l*5 V РіРзхіхъV

V \РіРзхіхзх 7 V РіРгх іхзх вх ~У) E4V ІРіРзх іхзхе V [РіР-гх іхзхвх ~}) У 5 V

V (РіРв*7*1*6 V ~PlPlXlXb) Y 7 V (PlP3*7 V [РіРз*7І) ^S =

= Pi (x7Y 8 V x~(-И (Рг (хъУ 7 V хьУ -i) V Рг (хз (хс,Уa V *6_Ел) V хзУ 4)) V

V хіУ і)) V pi (xi (Рг (хьУ 7 V *пЕ4) V J2 (хз (хбУ 5 V y ^ j )

173