Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Проектирование дискретных устройств автоматики

..pdf
Скачиваний:
4
Добавлен:
12.11.2023
Размер:
8.51 Mб
Скачать

Реш ение. Выявим совместимые внутренние состояния без предварительного выявления и объединения эквивалентных и псевдоэквивалентных состояний. Для этого построим треугольную таблицу (см. табл. 4.10).

По табл. 4.10 получаем следующие группы совместимых внутренних со­ стояний:

1

2

3

4

5

6

7

8

910

11

12

13

14

15

16

17

2,13 — 4,15 — 6,16 — 8,17 —— — 12,14 — — — — —

Таким образом, максимальными группами совместимых внутренних состоя­ ний являются: 1 = 1; 2=2, 13; 3 = 3; 4=4, 15; 5=5; 6=6, 16; 7=7; 8=8, 17;

9=9; 10=10; 11= 11; 12=12, 14. Группывсе непересекающиеся, апоэтому таблицу покрытий строить нет необходимости. Следовательно, получаем мини­ мальный автомат с 12 внутренними состояниями (табл. 4.11).

 

 

 

 

 

Т а б л и ц а

4.11

 

* 1*2

 

 

 

 

 

 

 

 

 

 

 

0

0

1 0

11

0

1

2 1г2г3г4г6

1

 

2

(1)

(1)

 

0 0 0 0 0

2

3

 

(2)

(3)

(2)

 

1

0

0

0

0

3

(3)

 

4

12

 

1

0

0

0

0

4

5

 

(4)

(5)

(4)

0

1 0

0

0

5

(5)

 

6

2

 

0

1 0

0

0

6

7

 

(6)

(7)

(6)

0

0

1 0

0

7

(7)

8

4

 

0

0

1 0

0

8

9

 

(8)

(9)

(8)

0

0

0

1

0

9

(9)

10

6

 

0

0

0

1

0

10

11

 

(Ю)

О»)

 

0 0

0 0 1

И

(И)

12

8

 

0 0

0 0 1

12

1

 

(12)

 

(12)

0

0

0

0

0

4.2.Формирование микрокоманд микропрограммного автомата

Вразд. 3.4 было отмечено сходств© матричной схемы алгорит­ ма и матрицы переходов, причем сходство отмечалось при усло­ вии сопоставления с каждым оператором MCA отдельного вну­ треннего состояния автомата. Поэтому MCA можно рассматривать как язык задания автомата при условии, что оператор сопостав­ ляется с выходом автомата, соответствующим не полному, а вну­ треннему состоянию автомата (т. е. автомату Мура [1, 3]). При такой автоматной интерпретации матричной схемы алгоритма за­

дача минимизации числа внутренних состояний автомата состоит в объединении совместимых внутренних состояний автомата, име­ ющих непротиворечивые состояния выходов, т. е. непротиворечи­ вые операторы.

Из сказанного вытекает, как следствие, то, что если условия работы микропрограммного автомата (MA) заданы не MCA, а ЛСА, то для минимизации числа внутренних состояний MA необ­ ходимо иметь метод, обеспечивающий непосредственно по ЛСА допустимое объединение операторов в группы, с каждой из ко­ торых могло бы сопоставиться внутреннее состояние MA. Такой ме­ тод получил название метода формирования микрокоманд [2 , 3]. При этом, когда говорят о MA, обычно члены ЛСА (операторы и

ЛУ) называют микрооперациями (операторы — внешние, ЛУ — внутренние микрооперации), а внутренние состояния MA — ми­ крокомандами [2, 3]. Упорядоченная совокупность микрокоманд, обеспечивающая реализацию автоматом заданных условий рабо­ ты, называется микропрограммой [2, 3]. Таким образом, миними­ зация числа внутренних состояний MA — это такое объединение микроопераций в группы (т. е. в микрокоманды), при котором образуется минимальное число микрокоманд.

Рассмотрим метод формирования микрокоманды, включающей максимально допустимое число одновременно выполняемых микро­ операций. Объединение нескольких микроопераций в одну микро­ команду дает возможность'сократить общее число микрокоманд в микропрограмме, что приводит к уменьшению числа внутрен­ них состояний MA, а значит и к уменьшению сложности послед­ него. Прежде чем изложить способ формирования микрокоманд, введем несколько определений.

Говорят, что логическое условие р,- входит в распределение сдвигов оператора Aj, если последний может изменить значение Ри или оно может независимо измениться при выполнении данно­ го оператора. Например, pi в ЛСА (3.9) проверяет значение но­

мера

входа

(не

превысило

ли значение i числа имеющихся вхо­

дов,

т. е. i

^ n ) ,

а оператор

Fi после прибавления к i единицы

может изменить значение ЛУ ри В частности, если перед выполне­

нием оператора F,- значение i=n,

а поэтому pi = l, то после реали­

зации

оператора Fi значение pi

изменится, т. е. pi = 0 , так как

i> n .

Поэтому ЛУ pi входит в распределение сдвигов операто­

ра Fu

Выявив,_таким образом, все те ЛУ (например, р,-,, р,-2, ..., pj{,

l ^ n , где п — число всех ЛУ в ЛСА), значения которых могут измениться после выполнения оператора Aj, получим распределе­ ние сдвигов для оператора Aj, которое запишем в виде

A-i = {Pi» Pi...... p/J.

Определив распределения сдвигов для каждого оператора ЛСА* получим распределение сдвигов для всех операторов ЛСА (пол­ ное распределение сдвигов). Из распределений сдвигов для опе­ раторов выделяют универсальное распределение, когда 1 = п, т. е. Aji, р2, ...» Рп}> и пустое распределение сдвигов, когда опера­ тор Aj не изменяет значения ни одного из п ЛУ, т. е. Aj—{—}. Более подробно о распределении сдвигов можно найти в [3].

Два члена ЛСА лгг*и Xj являются противоречивыми, если: 1 ) они не могут быть выполнены одновременно;

2) Xi — логическое условие, a xj — оператор, причем Л У х г- входит в распределение сдвигов оператора Xj.

Член Xi, который может быть выполнен непосредственно перед членом xjy называется предшественником xj, а соответственно член Xj последователем члена х%. Очевидно, у любого члена ЛСА

может быть

несколько предшественников, у оператора может

быть только

один последователь, а у логического условия — два

последователя, за счет чего при выполнении ЛСА образуются раз­ ветвления. Группа членов ЛСА образует ветвь, если каждый (t—(—1 )-й член этой ветви является последователем i-ro члена. Один и тот же член ЛСА может входить в несколько различных ветвей.

Группу членов ЛСА назовем совместимой, если в каждой вет­ ви, образуемой членами этой группы, не содержится противоречи­ вых членов. Совместимую группу членов ЛСА назовем максималь­ ной, если добавление в нее любого другого члена ЛСА превраща­ ет ее в несовместимую. Каждая совместимая группа, в том числе и максимальная, может интерпретироваться как отдельная микро­ команда. Такая микрокоманда может состоять из набора как внутренних (логических условий), так и внешних (операторов) микроопераций, но при определенном наборе значений логических условий одновременно выполняются микрооперации, входящие лишь в одну ветвь микрокоманды.

Для получения совместимой группы МХ( (микрокоманды),т.е.

группы, первым членом которой является х,- выписывается член Xi ЛСА. Если у Xi имеется один последователь (т. е. Xi — опера­ тор), то этот последователь приписывается справа от Xi. При на­ личии двух последователей образуется разветвление и каждый из них выписывается справа от х,- на отдельной ветви. Этот процесс повторяется для всех вновь приписанных членов группы в каждой ветви.

Ветвь группы МХ[ обрывается, если в нее вошел последний

оператор ЛСА, либо если в нее должен быть включен член ЛСА, который является противоречивым с одним членом этой ветви, ли­ бо если после Xj необходимо выписать xi, который уже вошел в другую ветвь группы МХ{. В последнек случае необходимо указать

стрелку от Xj к X/. Формирование группы заканчивается после то­ го, как обрываются все ее ветви. Если в первую группу вошли не все члены ЛСА, образуется вторая группа, начиная с наимень­ шего по порядку члена ЛСА, не вошедшего в предыдущую груп­ пу. Так процесс повторяется до тех пор, пока каждый член ЛСА не войдет хотя бы в одну группу.

Следует заметить, что если последователь Xi последнего члена ветви этой группы не был включен хотя бы в одну группу (например, из-за того, что Xi является противоречивым с одним из членов ветви), то обязательно должна быть группа МХ(. Кро­

ме того, отметим, что если имеется группа (микрокоманда) МХ(,

то в остальных группах все ветви, в которые входит член х,, мо­ гут быть оборваны на предшественнике этого члена х,-.

Процесс формирования микрокоманд рассмотрим на следую­ щих примерах.

Пример 4.7. Пусть задана ЛСА (3.9). Исходя из содержательного раосмотрения операторов этой ЛСА (см. пример 3.6), выявим операторы, которые мож­ но выполнить одновременно. Информацию о возможности одновременного вы­ полнения операторов (т. е. непротиворечивых операторов) представим в тре­

угольной таблице (табл. 4.12), аналогичной той, которая использовалась при минимизации числа внутренних состояний автомата (см., например, табл. 4.11).

Несмотря на то, что в ЛСА (3.9) не указаны в явном виде операторы на­ чала А0 и конца Ah, при формировании микрокоманд они должны учитывать­

ся.

При этом предполагается, что А* переводит автомат в исходное состояние,

а

поэтому

считается,

что

он

всегда

совместим с

А0. Вместе

с тем операторы

А0

и Ah

не должны

быть совместимы ни с одним другим оператором

ЛСА.

 

Из табл. 4.12 видно, что кроме операторов А0 и Ah совместимыми яв­

ляются также пары

операторов Fi и Fji А\ и А2; А\ и А3. Распределения

сдви­

гов выявим также

из содержательного рассмотрения операторов и ЛУ

ЛСА

(3.8). При этом для

 

операторов А0 и

Ah всегда берется универсальное распре­

деление сдвигов:

 

 

 

 

 

 

 

 

AQ

{Pi. Р21 Рз, РаI

Рь) \

Ah {plt p2l /?3, р4, ръ}

;

 

 

Fi — {Pu Р2 , Рз>> Fj— {P*. Ра, Ръ) ;

Аг— {ръ} ;

А2 — { — } ;

А3 — {р3].

 

 

Как видно, для оператора А2 получено пустое распределение сдвигов.

 

ра

Для примера рассмотрим

составление распределения сдвигов для операто­

Ai, при этом выясним,

что

он не может изменить значения

следующих

Л У:

1) р1, поскольку он не меняет значения /; 2) р2, так как возможность изменения определяется только типом измерительного прибора, подключенного к i-й вер­

тикали,

а оператор A i не

меняет значения

t; 3)

р3,

так как поступление

вы­

зова

от

него не зависит,

а

номера i

он не

меняет;

4) р4,

поскольку

значение

j изменяется только оператором Fj.

 

 

 

 

 

 

 

Таким образом, в распределение сдвигов для оператора Ai логические ус­

ловия

pi, p2t рг и р\

не входят.

Оно будет

содержать

только

одно

ЛУ

р5, так как после реализации оператора Ai объект, подключенный к /-й гори­ зонтали, станет занятым и рь сменит свое значение с «1» на «О».

Образуем максимальные совместимые группы членов ЛСА (3.8). Для этого

возьмем оператор

А0 и припишем справа его последователь A 0- + [ F i ] . Так как

Fi не

совместим

с

А0 (см. табл. 4.12), то ветвь обрывается на предыдущем

члене

(т. е. А0),

а

оператор Fi указывается в квадратных скобках. Поскольку

у Ао имеется только

один последователь, группа Ма0 состоит

из одного опе­

ратора

А0, т. е.

A4ао= {AQ

[/’*»]}.

входят в дан­

Условимся,

что

члены,

указанные в квадратных скобках, не

ную группу, а являются начальными членами других групп. Образуем осталь­ ные максимальные совместимые группы, при этом стрелка со знаком «+» по­ сле pi означает, что р*= 1, а со знаком «—» рг= 0:

/

J M I I '

[F,]}

+ --

/\[Fj]

\[F i]

M Fj {F j -*■ [p4]}.

84

F,

X

 

 

 

 

A i

X

 

 

 

 

 

F)

X

!

 

 

 

A 2

X

X ii

 

 

 

 

V

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1i

 

 

 

 

A i

X X x 3!

 

A 3 X X

V

 

 

 

A 2

X X (X.

i1

 

A i

X

 

 

 

 

 

V

 

V V V

 

 

A 9

X X i X EV X

 

A 6 X X

V V V

 

Ah

V

X X X X X

A3 X

V V

X

V V

 

i40

F l

F )

A 2

A 3

A 7

X

X

V

X

V

V

 

 

 

 

 

 

 

A 0 A\ i42 A3

 

* 1

 

 

 

 

 

 

 

A i

Ab A ,

 

Как было ранее отмечено, операторы А0 и Ah объединяются в одну микро­

команду, т. е.

 

 

 

 

 

 

 

 

 

 

МАо.лк =

(

аЛ)

- МЧ ^

] > .

 

 

 

 

 

 

 

Таким образом, получено шесть микрокоманд, т. е. шесть внутренних со­

стояний MA.

 

 

 

 

 

 

 

 

 

 

 

Пример 4.8. Пусть задана ЛСА

(4.1), в которой различные вхождения од­

ного и того же ЛУ пронумерованы различными верхними индексами:

 

îl=tl P i t*.P.îMi р \

Î2 А 3шîs 42 A 2isp 4 î1 A i p t t4 p \

î4’p8 î4 A , A i шî1 i4 i45 о î1.

 

 

 

 

 

 

 

 

 

 

 

 

(4.1>

(

Исходя из анализа операторов ЛСА (4.1), рассмотренный в [2], выявлены опе­ раторы, которые можно реализовать одновременно. Информацию о возмож­ ности одновременного выполнения операторов представим в виде табл. 4.13.

Из рассмотрения функций, выполняемых операторами и ЛУ ЛСА (4.1), вы­ явлены такие распределения сдвигов:

А0 — {pi, р2 , Рз> Pi, Рь, Pt) ; A l — (Pi> ;

A2 — {PI );

А3— {р1Рг,Ра, р в}; A i — l P i ) ; A 3 — { —

} ;

A* — {p 3. Рь) ! A 7{p„ p 6, p t ) .

 

Образуем максимальные совместимые группы членов ЛСА (4.1):

A Q-*-[PI ]» М а 0 — Mo- *"[Pii) î

м

+

Рг

 

 

 

 

 

 

 

 

/

\[А 2 ]

f

_

h

MPi = Pi

+ а

;

MAi = I

 

1

 

 

 

 

Р4

 

 

 

 

 

MPil

J

 

 

 

 

f

J [ ^ 4] '

 

 

/ \ 4 6->-[p1]

 

 

 

M A i =

At -*-pt

 

 

 

 

 

 

N1^ 5

iPi]

M A> =

A a- y р 4

MAt = {A e -*-l A 7]} ;

MA) =

{A 7 - у [ p i ] } .

 

V

\[Pi]

>

 

 

 

В

группе

MA 4 можно было бы продолжить

составление группы после Аз,

так как pi не входит в распределения сдвигов операторов Л4 и Аз. Однако здесь выписывание этой группы прерывается, так как уже имеется группа МРу

Таким образом, в данном примере получено восемь групп, а следовательно, восемь микрокоманд, причем для каждого после­ дователя последних членов любой ветви этих микрокоманд име­ ется микрокоманда, в которой он будет первым членом. Посколь­ ку все члены ЛСА (4.1) выписаны в этих восьми группах, полу­ ченная система микрокоманд является полной.

4.3.Кодирование внутренних состояний автомата

Втом случае, когда автомат задается первоначальной табли­ цей включений, при выборе минимального (или близкого к мини­

мальному) числа элементов памяти одновременно производится включение ЭП в тех или иных тактах, т. е. осуществляется со­ поставление с каждым тактом того или иного набора состояний ЭП. Иначе говоря, при включении ЭП в явном виде с внутрен­ ним состоянием автомата сопоставляется определенный набор со­ стояний ЭП.

Если автомат задается таблицей переходов или ЛСА, то пос­ ле минимизации числа внутренних состояний автомата (или сфор­ мирования микрокоманд) внутренним состояниям (или микроко­ мандам) по-прежнему не приписываются состояния ЭП. Это объ­ ясняется тем, что на данном этапе нет необходимости рассмат­ ривать каждое внутреннее состояние как определенный набор со­ стояний ЭП. Достаточно иметь только номер внутреннего состоя­ ния без указания состояний ЭП в этом состоянии. Для построе­ ния же структурной схемы автомата, т. е. построения цепей вклю­ чения ЭП и выходных цепей, необходимо знать набор состояний ЭП, который сопоставляется с тем или иным внутренним состоя­ нием. При этом оказывается, что в зависимости от того, как бу-

дут приписаны эти наборы состояний ЭП каждому из внутренних состояний автомата, могут в значительной степени измениться сложность структуры автомата, его устойчивость в работе и т. п.

Процесс приписывания каждому внутреннему состоянию набо­ ра состояний ЭП в теории автоматов носит название кодирования внутренних состояний автомата. Вообще говоря, такие наборы значений двоичных переменных надо приписать не только внут­ ренним состояниям автомата, но и каждому состоянию его входа- и выхода. Однако во многих практических случаях состояния вхо­ да и выхода оказываются уже закодированными, так как они яв­ ляются соответственно выходными и входными состояниями дру­ гих блоков и устройств.

Пусть с каждым внутренним состоянием сопоставлен набор состояний ЭП, т. е. кодовая комбинация. Если такое сопоставле­ ние осуществляется произвольным образом, то может оказаться,, что четырем внутренним состояниям автомата приписаны кодо­ вые комбинации 000, ОН, 010 и 001 (рис. 4.4,а). Пусть, кроме то­ го, по условию работы автомат при появлении на его входе со­ стояния pi должен перейти из своего внутреннего состояния, ко­

торому приписана кодовая

комбинация 0 0 0 , во внутреннее состо­

яние 011.

(Этот переход на

рис. 4.4,а показан сплошной линией с

указанием

состояния входа

pi, вызывающим этот переход.) При

этом условиями работы не предусматривается переход автомата из внутреннего состояния 0 0 0 в остальные два внутренние состо­ яния, которым приписаны кодовые комбинации 0 0 1 и 0 1 0 .

 

Рис. 4.4

Таким образом, при

переходе от состояния 000 к состоянию-

0 1 1 в автомате должны

одновременно сработать второй и третий

ЭП. Однако из-за разброса времени срабатывания ЭП (в качест­ ве ЭП могут быть использованы электромагнитные реле, тригге­ ры и другие двухстабильные элементы) может сработать вначале второй или третий ЭП. Из-за этого автомат попадает в одно из двух непредусмотренных в данном переходе внутренних состоя­ ний, которым приписаны кодовые комбинации 0 1 0 и 0 0 1 соответ­ ственно (на рис. 4.4,а указанные переходы обозначены штрихо­ выми линиями). Аналогичное явление может произойти и при от­ пускании ЭП.

Говорят, в автомате, в котором внутренние состояния закоди­ рованы так, что в заданных условиями работы переходах найдет­ ся хотя бы один переход, при котором требуется одновременно сработать (отпустить) двум и более ЭП, имеются состязания эле­ ментов памяти. Среди состязаний ЭП различают критические и некритические.

К критическим относятся такие состязания, которые могут ис­ казить алгоритм функционирования автомата, т. е. его функции переходов и выходов. Например, если в рассмотренном выше при­

мере

автомат из

состояний 0 0 1 и 0 1 0 при состоянии входа pt ни­

куда

не должен

переходить (рис. 4.4,6), то из-за состязаний ЭП

он может не перейти в состояние 0 1 1 , что предусмотрено условия­ ми его работы. Это есть пример критических состязаний ЭП, из-за которых искажается функция переходов автомата.

К критическим относятся также и такие состязания ЭП, кото­ рые искажают функцию выходов. Например, из рис. 4.4,в видно, что функция переходов автомата не искажается. Действительно, даже если автомат из-за состязаний ЭП перейдет в состояние 0 0 1 или 0 1 0 , то при том же состоянии входа он из этих состояний датем перейдет в заданное условиями работы состояние 011. Од­

нако если с внутренними состояниями 0 0 0

и 0 1 1

сопоставлено

значение

выходного сигнала 2 = 1, а с внутренними

состояниями

0 1 0 и 0 0 1

— значение выходного сигнала 2 = 0 , то, например, при

переходе

автомата

0 0 0 ->-0 1 0 - > 0 1 1 возникает

кратковременное

из­

менение значения

выходного сигнала с 2 = 1

на 2 = 0 , которого

не

было бы при непосредственном переходе автомата 000->-011. Сос­ тязания ЭП, вызывающие такое искажение функции выходов ав­ томата, также называются критическими.

К некритическим относятся состязания ЭП, которые не приво­ дят к искажениям ни функции переходов, ни функции вы­ ходов. Например, если бы на рис. 4.4,в с внутренними состоя­

ниями 0 0 1

и

0 1 0 было

сопоставлено

состояние

выхода

2 = 1

или 2 = ~ ,

то

имеющиеся

в автомате

состязания

были бы

не­

критическими.

 

 

 

 

 

Легко понять, что состязания вообще не возникнут в том ав­ томате, в котором при переходе из одного внутреннего состояния

вдругое изменяет свое состояние только один ЭП.

Втеории автоматов [3] разработаны методы кодирования внутренних состояний, которые позволяют так приписывать кодо­ вые комбинации внутренним состояниям, что в автомате на всех заданных условиями работы переходах не возникают критические состязания ЭП. Не имея возможности подробно осветить в дан­

ном пособии все современные методы кодирования внутренних со­ стояний автомата, рассмотрим на примере один из них, который является наиболее простым для понимания этого процесса, но ко­ торый, к сожалению, пригоден лишь для автоматов с небольшим числом внутренних состояний. Метод кодирования внутренних со­ стояний на основе разбиений изложен в [ 1, 3].

« 8

Пример 4.9. Пусть задан автомат (счетчик импульсов) таблицей переходов (табл. 4Л4). Требуется закодировать его внутренние состояния.

 

 

 

 

 

 

Т а б л и ц а 4.14

 

Pi

Р2

 

*1L

Z2

Кодовые комбинации

Hi

2

 

0

0

0

0

На

3

(2)

 

1

о

о

1

На

(3)

4

 

1

1

1

1

н4

1

(4)

]1

0

1

1

0

Для этого вначале составим диаграмму его возможных переходов при со­ стояниях входа pi и р2 (рис. 4.5). Затем возьмем развертку я-мерного единич­ ного куба, указывающую связь его вершин с ребрами. Например, на рис. 4.6 изображена развертка трехмерного куба.

Рис. 4.5 Рис. 4.6

С вершинами развертки я-мерного единичного куба сопоставлены наборы значений двоичных переменных, соответствующих значениям я координат каж­ дой вершины единичного куба, одна из вершин которого совмещена с началом системы я координат, а его я ребер совпадаю^ по направлению с соответству­

ющими я

координатами.

Очевидно, в такой развертке соседним

вершинам

(т. е. вершинам,

непосредственно связанным

ребром) приписаны соседние

кодо­

вые комбинации

(т. е. кодовые

комбинации,

отличающиеся значением в

одном

разряде).

было отмечено

ранее,

в автомате

не будет критических

состязаний,

Как

если при его переходах будет изменяться только один ЭП. Тогда легко понять, что если совместить каждую из диаграмм переходов автомата (см. рис. 4.5) с разверткой я-мерного единичного куба (см. рис. 4.6), то тогда в автомате не будет критических состязаний. При этом надо стремиться использовать куб с наименьшим числом я. Тогда кодирование автомата будет осуществляться с ми­ нимальным числом ЭП.

Рис. 4.7

Рис. 4.8

В нашем случае можно использовать развертку двумерного куба (рис. 4.7). 'Совмещая диаграмму переходов автомата при рг (см. рис. 4.5,а) с разверткой рис. 4.7, получаем рис. 4.8,a, a диаграмму переходов при pi (см. рис. 4.5,6) с той же разверткой рис. 4.7, получаем рис. 4.8,6. При этом очевидно, что с од­ ними и теми же внутренними состояниями автомата в диаграммах переходов

 

 

 

 

при различных состояниях входа должны сопостав­

Т а б л и ц а

4.15

ляться одни и те же вершины развертки /г-мерного

куба.

 

 

 

 

 

Кодовые

В табл. 4.14 (последняя колонка) указаны вы­

Микрокоманды

бранные выше кодовые комбинации (состояния ЭП).

комбинации

Заметим, что в некоторых случаях такое

 

 

 

 

мА,

0

0

0

совмещение для п, равного минимальному

числу ЭП, невозможно. Тогда берут куб с

 

1

0

0

большим /г, причем для любого автомата

MAi

1

1

0

такое п всегда найдется.

МА,

1

1

1

В микропрограммном автомате, который

относится к синхронным автоматам, состя­

 

0

1

1

 

зания ЭП устраняются использованием так

МА,

 

 

 

0

1

0

называемой «двойной памяти», когда ис­

МА,

1

0

1

пользуются два регистра микрокоманд. В

МА,

0

0

1

связи с этим микрокомандам, представляю­

 

 

 

 

щим собой внутренние состояния MA, мож­

но приписывать кодовые комбинации, т. е. набор состояний ЭП, вообще говоря, произвольно. Например, мик­ рокомандам, полученным в примере 4.8, припишем кодовые ком­ бинации ЭП так, как показано в табл. 4.15.

Контрольные вопросы

1.Какие автоматы являются эквивалентными?

2.Могут ли эквивалентные недоопределенные автоматы иметь различное число внутренних состояний?

3.Какие члены ЛСА являются противоречивыми?

4. Какие существуют методы устранения критических состязаний ЭП и ДУ?

Г л а в а 5.

СТРУКТУРНЫЙ СИНТЕЗ ДИСКРЕТНОГО УСТРОЙСТВА

5.1. Таблица состояний элементов памяти

Таблица состояний элементов памяти, которую иногда называ­ ют структурной таблицей переходов, составляется по минимизиро­ ванной таблице переходов, где каждой строке таблицы задано определенное состояние элементов памяти ЭП.

Таблица состояний элементов памяти, которую в дальнейшем будем называть таблицей ЭП, содержит число столбцов, равное числу состояний входов, и число строк, равное числу внутренних состояний автомата. Единица в клетке матрицы свидетельствует

Соседние файлы в папке книги