Введение в теорию автоматов

Синтез структурного автомата

Показывать лекцию целиком

5.1 Структурный автомат

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

Структурное проектирование представляет собой процесс перехода от указанных выше форм задания к его функциональной схеме.

Итак, абстрактный автомат на входе имеет некоторую последовательность входных сигналов, в зависимости от которых переходит из одного состояния в другое, выдавая некоторую последовательность выходных сигналов (рис.5.1).

(рис 5.1)

В структурном автомате учитывается структура входных и выходных сигналов, то есть их конкретное представление в виде двоичных векторов. Состояния автомата так же кодируются двоичными векторами.

Рассмотрим совмещенный автомат (рис.5.2). Каждое состояние $$a_m$$ абстрактного автомата кодируется двоичным вектором:

$$a_m=(e_{m1}, e_{m2}, e_{m3} , \dots , e_{mR}), где\ e_{mi} ={0, 1}$$,

$$R>=]Log2M[, скобки ] и [ показывают,\ что\ берется\ наибольшее\ целое$$ ;

$$М$$ - число состояний абстрактного автомата;

$$R$$ - число элементов памяти.

(рис 5.2)

Входной и выходные сигналы представляются также двоичными векторами:

  • $$z_f=(e_{f1}, e_{f2}, e_{f3} , \dots , e_{fL}), где\ e_{fi} ={0, 1}$$, $$L>=]Log2F[ $$, $$F$$ - число входных сигналов абстрактного автомата, $$L$$ - число входов структурного автомата ;
  • $$w_g=(e_{g1}, e_{g2}, \dots , e_{gN}), где\ e_{gi} ={0, 1}$$, $$N>=]Log2G[ , F$$ - число выходных сигналов 1 типа, $$N$$ -число выходов 1 типа структурного автомата ;
  • $$u_h=(e_{f1}, e_{f2}, e_{f3} , \dots , e_{fD}), где\ e_{fi}={0, 1}$$, $$D>=]Log_2H[ , H$$ - число выходных сигналов 2 типа, $$D$$ - число выходов 2 типа структурного автомата
  • 5.2 Канонический метод структурного синтеза автоматов

    Схема структурного $$С$$ -автомата при каноническом методе синтеза представляется, состоящей из трех частей: двух комбинационных схем и памяти автомата (рис.5.3). Комбинационная схема 1 предназначена для формирования функций возбуждения $$r,$$ поступающих на входы элементов памяти, и выходных сигналов 1 типа $$Y_n$$, зависящих от входных сигналов $$x_l$$ и сигналов с выходов элементов памяти $$R$$.

    (рис 5.3)

    Комбинационная схема 2 предназначена для формирования выходных сигналов 2 типа $$r_h$$ как функций с выходов элементов памяти $$R$$.

    Так как в автомате Мили сигналы 2 типа отсутствуют, то, соответственно в структурной схеме отсутствует комбинационная схема 2. Схема структурного автомата Мили показана на рис.5.4.

    (рис 5.4)

    В автомате Мура сигналы 1 типа отсутствуют, следовательно, в структурной схеме в комбинационной схеме 1 отсутствуют выходные сигналы 1 типа $$Y_n$$. Схема структурного автомата Мура показана на рис.5.5.

    (рис 5.5)

    Таким образом для того, чтобы синтезировать структурный автомат, необходимо синтезировать две комбинационные схемы по системе канонических уравнений. Система канонических уравнений для $$С$$ -автомата выглядит следующим образом:

  • $$\phi_1= \phi_1(\tau_1, \tau_2, \dots, \tau_R, x_1, x_2, \dots, x_L)$$ ;
  • $$\phi_2= \phi_2(\tau_1, \tau_2, \dots, \tau_R, x_1, x_2, \dots, x_L) $$ ;
  • . . .
  • $$\phi_R= \phi_R(\tau_1, \tau_2, \dots, \tau_R, x_1, x_2, \dots, x_L); $$
  • $$y_1= y_1(\tau_1, \tau_2, \dots, \tau_R, x_1, x_2, \dots, x_L); $$
  • $$y_2= y_2(\tau_1, \tau_2, \dots, \tau_R, x_1, x_2, \dots, x_L); $$
  • . . .
  • $$y_R= y_R(\tau_1, \tau_2, \dots, \tau_R, x_1, x_2, \dots, x_L); $$
  • $$r_1= r_1(\tau_1, \tau_2, \dots, \tau_R); $$
  • $$r_2= r_2(\tau_1, \tau_2, \dots, \tau_R);$$
  • . . .
  • $$r_R= r_R(\tau_1, \tau_2, \dots, \tau_R);$$
  • 5.4.Этапы синтеза

  • Находим количество элементов памяти $$R>=]Log2M[$$, ( $$М$$ - число состояний абстрактного автомата) и кодируем состояния абстрактного автомата (табл.5.1).
    am\ $$\tau_1 \tau_2 \dots \tau_R$$ $$\tau_1 \tau_2 \dots \tau_R$$
    a1
    a2
    aM
  • Кодируем входные и выходные сигналы, то есть
  • находим количество входов структурного автомата $$L>=]Log2F[$$, ( $$F$$ - число входных сигналов абстрактного автомата);
  • количество выходов 1 типа $$N>=]Log2G[$$ ; ( $$G$$ - число выходных сигналов 1 типа);
  • количество выходов 2 типа $$D>=]Log2H[$$, ( $$H$$ - число выходных сигналов 2 типа) и кодируем входные (табл.5.2) и выходные сигналы (табл.5.3) и (табл.5.4) абстрактного автомата.
    z f / x 1 xL x1x2…x1
    z
    z
    z
    wf/y 1y2…yN y 1y2…yN
    w1
    w2
    wG
    uh/r 1 r2…rD r 1 r2…rD
    u1
    u2
    uH
  • Структурный автомат представляем обобщенной схемой (рис 5.6(рис 5.6)
  • Составляем закодированную таблицу выходов автомата и по ней записываем уравнения выходов.
  • $$y_1= y_1(\tau_1, \tau_2, \dots, \tau_R, x_1, x_2, \dots, x_L)$$ ;
  • $$y_2= y_2(\tau_1, \tau_2, \dots, \tau_R, x_1, x_2, \dots, x_L)$$ ;
  • . . .
  • $$y_R= y_R(\tau_1, \tau_2, \dots, \tau_R, x_1, x_2, \dots, x_L)$$ ;
  • $$r_1= r_1(\tau_1, \tau_2, \dots, \tau_R)$$ ;
  • $$r_2= r_2(\tau_1, \tau_2, \dots, \tau_R)$$ ;
  • . . .
  • $$r_R= r_R(\tau_1, \tau_2, \dots, \tau_R)$$ ;
  • . . .
  • Составляем закодированную таблицу переходов автомата и по ней записываем уравнения для функций возбуждения, используя таблицы переходов соответсвующих элементов памяти.
  • $$\varphi_1= \varphi_1(\tau_1, \tau_2, \dots, \tau_R, x_1, x_2, \dots, x_L)$$ ;
  • $$\varphi_2= \varphi_2(\tau_1, \tau_2, \dots, \tau_R, x_1, x_2, \dots, x_L)$$ ;
  • . . .
  • $$\varphi_R= \varphi_R(\tau_1, \tau_2, \dots, \tau_R, x_1, x_2, \dots, x_L)$$ ;
  • Уравнения функций возбуждения и выходов минимизируются (по картам Карно, например) и по ним строится схема в заданном функционально - логическом базисе ({И, ИЛИ, НЕ}, {И-НЕ}, {ИЛИ-НЕ}).
  • Вернуться к учебному плану