经过分析:
process(clk,q2,q3)
begin
if q2='1' then
q1<="00000";
elsif clk'event and clk='1' then
if q1="10100" then
;
else
q1<=not q1;
end if;
end if;
end process;
上面程序中的Q1="10100" 永远也满足不了,所以你的问题就解决不了!