Sorry, the thread title is "clock question" (and i know that the code is useless, is only for undestanding vhdl..)
Why this code is compiled succesfully:
and if i change " if (clock50 ='1')" into " if (clock50'event and clock50 ='1')" the compiler report "could'nt implement registers for assignemnets on this clock edge"?
They aren't two identical examples? (the sensitivity list has only clock50 so the clock50 rising edge event is captured...).
Why this code is compiled succesfully:
Code:
entity yt is
port (clock50 : IN std_logic;
clko : OUT std_ulogic
);
end yt;
architecture dataflow of yt is
signal clk : std_logic;
begin
process (clock50)
begin
if (clock50 ='1') THEN
clk <= '1';
else
clk <= '0';
end if;
end process;
clko <= clk;
end dataflow;
and if i change " if (clock50 ='1')" into " if (clock50'event and clock50 ='1')" the compiler report "could'nt implement registers for assignemnets on this clock edge"?
They aren't two identical examples? (the sensitivity list has only clock50 so the clock50 rising edge event is captured...).
Last edited: