T
Tim Doyle
Guest
I am looking to determine if the following VHDL process block creates
a race condition for clk33_div, given that it is a signal that is
being updated seemingly at same time it is being evaluated if I
understand VHDL constructs.
Any thoughts or guidelines would be greatly appreciated.
Regards,
Tim Doyle
Here is the code:
CLOCK_DIV: process (clk33, resetn)
begin
if resetn = '0' then
clk33_div <= (others =>'0');
clock_out <= '0';
elsif clk33'event and clk33 = '1' then
if clk33_div = "11000" then
clk33_div <= (others => '0');
clock_out <= not(clock_out);
else
clk33_div <= clk33_div + '1';
clock_out <= clock_out;
end if;
end if;
end process;
a race condition for clk33_div, given that it is a signal that is
being updated seemingly at same time it is being evaluated if I
understand VHDL constructs.
Any thoughts or guidelines would be greatly appreciated.
Regards,
Tim Doyle
Here is the code:
CLOCK_DIV: process (clk33, resetn)
begin
if resetn = '0' then
clk33_div <= (others =>'0');
clock_out <= '0';
elsif clk33'event and clk33 = '1' then
if clk33_div = "11000" then
clk33_div <= (others => '0');
clock_out <= not(clock_out);
else
clk33_div <= clk33_div + '1';
clock_out <= clock_out;
end if;
end if;
end process;