Во многих управляющих системах в алгоритме могут быть выделены линейные последовательности операторов. На рис. 72 приведен пример такого алгоритма.
Обозначив каждую последовательность операторов A i, A j, A k одним обобщенным оператором S l, получим граф-схему алгоритма рис. 73. Расшифровка объединенной символом S l последовательности операторов A i, A j, A k приведена в табл. 29.
Рис. 73. Граф-схема алгоритма управления
От граф-схемы рис. 73 перейдем к графу автомата (рис. 74) с таблицей переходов (табл. 30), расшифровка условий переходов β для которой приведена в табл. 30.
Таблица 29
S1 | S2 | S3 | S4 | S5 | S6 | |
A i | A1 | A2 | A14 | A15 | A7 | A10 |
A j | A3 | A5 | A4 | A8 | A11 | |
A k | A13 | A6 | A9 | A12 |
На рис. 75 приведена блок-схема такого автомата, имеющего реализацию в виде последовательности блоков:
1 – схема синхронизации; 2 – регистр а(t) и β; 3 – комбинационная схема реализации переходов S(t)→ S(t + 1); 4 – регистр S(t + 1).
Это тот же автомат Мура, но с числом переменных на входе F2 меньшим, чем для автомата, непосредственно реализуемого по схеме алгоритма рис. 72 без предлагаемого объединения операторов по схеме рис. 73. Отличительной особенностью автомата с объединенными операторами является реализация блока выходных переменных A i, A j, A k в виде специфического дешифратора, формирующего одновременно три кода A i, A j, A k по одному значению S(t + 1) в соответствии с табл. 29.
|
|
Затем в течении периода T следования импульсов τ и блок синхронизации 1 должен выдавать три сигнала τ 1, τ 2, τ 3 для последовательного независимого считывания кодов A i, A j, A k с регистра 7 через блок схем «ИЛИ» 8 на регистр 9, код которого А S и будет являться управляющей командой для операционного устройства 5 для данного состояния S(t) и соответствующих этому периоду T значений логических условий β (табл. 30).
Рис. 74. Граф переходов автомата
Таблица 30
β | ||||||||||||
Такой вид декомпозиции автомата управления с объединением операторов позволяет существенно упростить основной автомат Мура (блоки 1, 2, 3, 4). Действительно, даже для рассматриваемого сравнительно простого алгоритма разница в классической и предлагаемой реализации существенна.
Рис. 75. Блок-схема автомата |
Таблица 31
|
Для автомата Мура по алгоритму рис. 72 получим:
– число состояний а(t) – 17;
– число логических условий – 3;
– конкатенация кодов а(t) и α составит 8 бит;
|
|
– число разрядов выходного кода а(t + 1) составит 4 бита.
Для предлагаемой конструкции
– число состояний S(t) – 8;
– число логических условий – 3;
– конкатенация кодов а(t) и α составит 6 бит;
– число разрядов выходного кода S(t + 1) – 3 бита.
Сложность автомата Мура зависит главным образом от числа комбинаций в конкатенации а(t) и α. Для этого примера получим
Число комбинаций на входе снизилось на 2 разряда, т.е. в 4 раза.
В классической реализации для данного примера схема F2 реализуется при 8 переменных на входе и 4 на выходе, а в схеме рис. 75 – для 6 переменных на входе при 3 на выходе. В общем случае такая реализация эффективна только для таких алгоритмов, где это упрощение существенно, т.е. затраты на классический автомат будут больше.