vhdl分频时的问题

来源:百度知道 编辑:UC知道 时间:2024/07/07 17:52:39
if(clk' event and clk='1') then

if (count1=9) then
count1<=0;
else count1<=count1+1;

if (count1<4)then
outclk1<='1';
else outclk1<='0';

end if;
end if;
end if;
end process;
请问上面这段代码中, 判断count1是否小于4时count1的值是否是count1加1以后的值?我看有些教材上写的是 信号赋值要直到进程完成后,信号值才会改变,而变量赋值时是立刻改变的.
此程序中 count1是 信号

看看仿真就知道了
应该是以后的,就是先出现9,然后才变成0。

应该是count1而不是加1以后的值,不过我仿真了一下发现outclk1在第一个上升沿跳变到1以后就一直保持1不动,我也奇怪,等我弄明白了告诉你啊,我也是刚学不久,我qq243073232,欢迎交流