Языки описания аппаратуры, методические указания по лабораторным работам, страница 20

library IEEE;

use IEEE.STD_LOGIC_1164.all;

entity cu is

        port(

              x : in STD_LOGIC;

              clk : in STD_LOGIC;

              rst : in STD_LOGIC;

              y : out STD_LOGIC

            );

end cu;

--}} End of automatically maintained section

architecture cu of cu is

type TState is (S1,S2,S3,S4);

signal State:TState;

begin

       -- enter your statements here --

       process(clk,rst) is

       begin

             if rst='0' then State<=S1;

             elsif rising_edge(clk) then

               case state is

                      when s1=>State<=s4;

                      when s2=>State<=S3;

                      when s3=>if x='1' then State<=S1;

                                        else State<=s2;

                                    end if;

                      when s4=>if x='1' then State<=S1;

                                        else State<=s2;

                                    end if;

               end case;

             end if;

       end process;

       y<='1' when State=S2 or State=S3 else '0';

end cu;

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

Задание 3. Построение структурной модели управляющего автомата на базе синтезированного триггера.

Шаг 1. Построение обратной структурной таблицы переходов и заполнение столбцов таблицы в соответствии с информацией из графа переходов.

E

Sr

K(Sr)

Ds

K(Ds)

X

Y

J2

K2

J1

K1

e1

S3

S1

X=1

-

e2

S4

X=1

e3

S3

S2

X=0

Y=1

e4

S4

X=0

e5

S2

S3

-

Y=1

e6

S1

S4

-

-