Guest
Hello ng,
I have a problem with my fsm.
I use a counter to count numbers of the pass through.
here my vhdl code (simple version):
process(i_rst_n,i_clk_fpt)
begin
if (i_rst_n= '0') then
state <= IDLE;
elsif rising_edge(i_clk_fpt) then -- risign edge
state <= nextstate;
end if;
end process;
process(state)
begin
case(state) is
when IDLE =>
cnt <= 0;
nextstate <= COUNT;
when COUNT =>
if (cnt < 8) then
cnt <= cnt +1;
else
cnt <= 0;
end if;
nextstate <= COUNT;
end case;
end process;
Now i get this warning:
Warning: Found 33 combinational loops!
Each loop is reported with an instance in the loop
and nets connected to that instance.
@W: BN134 :"d:\logik\counter\cnt.vhd":37:1:37:4|Found combinational
loop during mapping
1) instance o_count[31:0] work.cnt(behavioral)-o_count[31:0], output
net "o_count[0]" in work.cnt(behavioral)
input nets to instance: .........
I have a problem with my fsm.
I use a counter to count numbers of the pass through.
here my vhdl code (simple version):
process(i_rst_n,i_clk_fpt)
begin
if (i_rst_n= '0') then
state <= IDLE;
elsif rising_edge(i_clk_fpt) then -- risign edge
state <= nextstate;
end if;
end process;
process(state)
begin
case(state) is
when IDLE =>
cnt <= 0;
nextstate <= COUNT;
when COUNT =>
if (cnt < 8) then
cnt <= cnt +1;
else
cnt <= 0;
end if;
nextstate <= COUNT;
end case;
end process;
Now i get this warning:
Warning: Found 33 combinational loops!
Each loop is reported with an instance in the loop
and nets connected to that instance.
@W: BN134 :"d:\logik\counter\cnt.vhd":37:1:37:4|Found combinational
loop during mapping
1) instance o_count[31:0] work.cnt(behavioral)-o_count[31:0], output
net "o_count[0]" in work.cnt(behavioral)
input nets to instance: .........