Ремонт принтеров, сканнеров, факсов и остальной офисной техники


назад Оглавление вперед




[10]

Таблица 3.5

Внутреннее состояние

Автомата

1

Внутреннее состояние

1

2

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

P1

ХлХг 0 0

(1),0

Состояние Pi

XiX.i 0 0 (1), 0

P2

ХлХг

входа Рг XtXt 1 О

2,0

(2). 0

P3

xtxt

Таблица 3.0

Ps XXs 1 1

Таблица 3.7

XiX2; г

1(1),0 2,0

2(2),0 3, 1

3(3),!

Таблица 3.8

XiXt; г О О

О 0 1 0 1 1

1(1),0 2,0

2(2),0 3, 1

34, 1 (3),!

4(4), 1

Таблица 3.9 1 1

(1),0

1,0

2,0

(2),0 4, 1 (4).!

3, 1

(3),!

10 11

1 0

1 1


Пример 3.5. Необходимо построить первоначальную таблицу переходов для реверсивного счетчика на пять импульсов (рис. 3.10). Реверсивный счетчик имеет два входа х\ и Хг и пять выходов Zi-25, единичное значение каждого из которых соответствует положению реверсивного счетчика, т. е. числу сосчитанных импульсов. При поступлении сигнала на вход xi в счетчике добавляется единица, а на вход xs-вычитается единица. При положении счетчика в нулевом (исходномЛ состоянии ни на одном из пяти его выходов сигнала нет. При одновременном появлении сигналов на входах Xi ил-z счетчик, очевидно,

своего состояния не меняет.

Решение. Вначале составим первоначальную таблицу переходов только для одной последовательности входных сигналов, когда на вход Xi последовательно поступают пять импульсов (табл. 3.14). Заметим, чта эта последовательность аналогична последовательности, представленной в таблице включений, изображенной на рис. 3.6 (за исключением того, что в нашем случае указаны внутренние состояния и имеется не один, а пять выходов). При этом будем сопоставлять состояния выходов с внутренними состояниями автомата.

Теперь рассмотрим другие возможные последовательности значений входных сигналов. Пусть после поступления сигнала на вход х\ поступит сигнал на вход Хч. Тогда, очевидно, счетчик должен перейти в предыдущее состояние (табл. 3.15). Например, после двух импульсов, поступивших на вход хл, пусть появится импульс на входе хч. Тогда автомат (т. е. реверсивный счетчик) должен перейти из устойчивого состояния (5) в неустойчивое состояние 13, а затем в устойчивое состояние (13) во вновь введенном внутреннем состоянии я». С внутренним состоянием к» сопоставлено состояние выхода Zi==l, указывающее на то, что в счетчике после вычитания единицы осталась еще одна единица. После исчезновения сигнала на входе х-г автомат должен перейти в неустойчивое состояние 3 в столбце 00.

Таблица 3.14

Таблица 3.15

00

10

11

01

г12гЗг4г5

1

"О)

2

0 0 0 0 0

2

3

(2)

10 0 0 0

3

(3)

4

1 0 0 0 0

4

5

(4)

0 10 0 0

5

(5)

6

0 10 0 0

6

7

(6) 8

0 0 10 0

7

(7)

0 0 10 0

8

9

(8)

0 0 0 1 0

9

(9)

10

0 0 0 1 0

10

11

(10)

0 0 0 0 1

11

(И)

12

0 0 0 0 1

12

1

(12)

0 0 0 0 0

оо

1

2

3

4

5

6

7

8

9

Ю

П

12

13

(1) 3

<?

(5) 7

(7) 9

(9) 11

(И) 1

3

10 11 01

г1г2гЗг425

2

(2) 4

(4) 6

(6) 8

(8) 10 (10) 12

(12)

13

(13)

00 000

10 000 10 000 01000 01000 00 100 00 100 00 010 00 010 00 001 00 001 00 000 10 000 ,

Легко заметить, что из этого неустойчивого состояния автомат должен перейти в устойчивое, находящееся в такой строке таблицы, с которой сопоставлено то же состояние выхода Zi=l, что и со строкой »<is. Таким устойчивым состоянием будет (3) во внутреннем состоянии Кз. Поэтому в столбце 00 и строке Xi3 указано неустойчивое состояние 3. Аналогичным образом можно определить переходы после появления сигнала на входе Хц и для других состояний счетчика. В результате получим табл.

3.16.

В табл. 3.16 указаны также переходы при одновременном появлении сигналов на двух входах х\ и хл. При этом, поскольку состояние счетчика не меняется, новые внутренние состояния не вводятся. Таким образом, табл. 3.16 уже не является первоначальной таблицей переходов, так как в ее строках имеются по два устойчивых состояния, хотя объединение внутренних состояний произведено неявно непосредственно на этапе составления таблицы переходов.

Вместо таблиц переходов можно использовать матрицы переходов [1,3]. Например, вместо таблицы переходов

(3.8)

в примере 3.1 (см. табл. 3.9) можно составить матрицу переходов

00 10

01

глг,гл-„

1

(1)

2

(1)

(1)

00000

2

3

(2)

10000

3

(3)

4

(3)

14

10000

4

5

(4)

01000

5

(5)

6

(5)

13

01000

6

7

(6)

00100

7

(7)

8

(7)

15

00100

8

9

(8)

00010

9

(9)

10

(9)

16

00010

Таблица 3.16


лДля наглядности элементы этой матрицы, соответствующие устойчивым состояниям автомата, указаны в квадратных скобках.

Как таблицы, так и матрицы переходов удобно использовать при большом числе последовательностей «вход - выход». Если же чисел последовательностей немного, а автомат является сильно недоопределенным, то в таблице или матрице переходов многие клетки остаются незаполненными. Поэтому в таких случаях данные языки являются неэффективными с точки зрения экономности записи условий работы автомата. Особенно неэффективны таблицы и матрицы переходов для описания условий работы микропрограммного автомата, где обычно имеется большое число входов, а сам автомат является сильно недоопределенным.

3.3. Задание условий работы микропрограммного автомата

Условия работы микропрограммного автомата, как и любого другого конечного автомата, могут быть заданы в виде таблицы переходов. Однако более удобной формой задания условий работы МА является язык логических схем алгоритмов (ЛСА), который в наибольшей степени учитывает особенности алгоритма функционирования автомата [31.

При использовании ЛСА предполагается, что каждый его оператор Л,, реализуется в соответствующем ОФБ„ а проверка логического условия р, осуществляется в ЛФБ„ тогда как ЛСА описывает последовательность воздействий МА на такие ФБ. При этом выполнение оператора Л, означает, что на выходе гд МА должен быть сигнал, включающий в работу ОФБ,-. Выполнение в ЛСА условия р, соответствует сигналу на выходе z-p, а результат проверки условия pj в ЛФБ, -воспринимается МА как состояние его внутреннего входа pj.

Условия работы неавтоматных микропрограммных автоматов с L состояниями внешних выходов могут быть описаны в виде L логических схем алгоритмов, обычно называемых частными. Рассмотрим следующий простейший пример.

Пример 3.6. Пусть задай коммутатор с п вертикалями и т горизонталями (рис. 3.11). К каждой вертикали может подключаться измерительный прибор. а к каждой горизонтали-объект, подлежащий измерению. Прибор позволяет измерять только один из параметров. Электрическое соединение его с объектом осуществляется с помощью коммутатора. При этом могут оыть два режима работы ДУ, управляющего таким коммутатором. При первом режиме после освобождения какого-либо измерительного прибора и его проверки в ДУ подается сигнал вызова о возможности подключения данного прибора к объекту. При этом возможны три случая: к объекту подключен другой измерительный прибор;

другой измерительный прибор не подключен, но данный прибор не может измерять параметр объекта;

объект свободен и прибор может измерять парамегр объекта.

При подключении измерительного прибора (что возможно лишь в третьем случае) в прибор посылается сигнал «Готово», по которому он начинает процесс измерения. В том случае, когда пет объектов, к которым можно подключать прибор, последнему посылается сигнал «Занято». По этому сигналу прибор переходит в состояние ожидания и возобновляет ПОПЫТКУ подключения через время

1 I 71

Рис. 3.11

Таким образом, при первом режиме работы ДУ инициаторами вызовов являются измерительные приборы; объекты пассивны. Второй режим работы ДУ соответствует случаю, когда инициаторами вызова являются объекты, а измерительные приборы пассивны. При этом соблюдаются аналогичные первому режиму условия подключения объекта к измерительному прибору.

Введем следующие операторы и логические условия:

f{ - прибавить к i единицу (параметр i указывает номер входа);

л-прибавить к / единицу (параметр j указывает номер выхода);

Ai- включить точку соединения на пересечении 1-го входа и !-to вы

Аг-послать сигнал «Ответ» источнику вызова (прибору или объекту);

Лз-передать источнику вызова сигнал «Занято»;

Ah (точка) -оператор конца, который выполняет также следующую функцию: он приравнивает параметры i и ; нулю, т. е. после его выполнения »-и, 1-0; 1 1, если кга; pl- I 0, если i>n;

л ( 1, если возможно измерение; •2- I 0, если измерение невозможно;

f 1, если на t-ю вертикаль поступил вызов; ps~ \ 0, если на i-ю вертикаль вызов не поступил;

{ 1, если !<гп; р4- I 0, если j>m;

f 1, если свободен объект, подключенный к ;-й горизонтали;

т.

11(11)12(11)1700001

12(12)00000

133--(13)10000

141--(14)00000

155--(15)01000 lo7--(16)00100 179--(17)00010



[стр.Начало] [стр.1] [стр.2] [стр.3] [стр.4] [стр.5] [стр.6] [стр.7] [стр.8] [стр.9] [стр.10] [стр.11] [стр.12] [стр.13] [стр.14] [стр.15] [стр.16] [стр.17] [стр.18] [стр.19] [стр.20] [стр.21] [стр.22] [стр.23] [стр.24] [стр.25] [стр.26] [стр.27] [стр.28] [стр.29] [стр.30] [стр.31] [стр.32] [стр.33] [стр.34] [стр.35] [стр.36]