привод один выход с двумя входами VHDL - PullRequest
0 голосов
/ 02 мая 2018

Я начинаю с VHDL. Мой код довольно прост, я включаю / выключаю светодиоды с помощью процесса, который берет передний фронт clk и считает циклы часов в переменной "t":

entity leds_vhdl is
    Port ( clk : in  STD_LOGIC;
           led1 : out  STD_LOGIC;
           led2: out  STD_LOGIC;
           change : in STD_LOGIC);
   end leds_vhdl;

architecture Behavioral of leds_vhdl is

constant t1s : integer := 50000000;

begin
process (clk)
variable t : integer := 0;
begin
    if (rising_edge(clk)) then
        t := t + 1;
        if (t > 5*t1s) then 
            t := 0;
        if (t <= 3*t1s) then
                led1 <= '0';
                led2 <= '0';
        elsif (t > 3*t1s and t <= 5*t1s) then
                led1 <= '1';
                led2 <= '1';
        end if;
end if;
end process;
end Behavioral;

Теперь я хочу изменить светодиоды, когда «меняются» разные состояния входа. Например, если «изменение» равно «1», как я могу изменить светодиод? (led1 = '1', led2 = '0' например). ¿Можно было бы сделать в том же процессе, или лучше сделать еще один ?. Я пытался, но у меня было так много проблем в фазе синтеза.

Большое спасибо.

...