所以我理解,如果我们在时钟进程中分配信号或输出,即分配在下降沿发生,或者换句话说在进程暂停时发生,但为什么在模拟信号或输出期间在上升期间分配时钟的边缘? 作为一个例子,我有以下代码:
if(rising_edge(clk)) then
if(one_second_counter = "10111110101111000001111111")
one_second_counter <= (others=> '0');
else
one_second_counter <= one_second_counter + 1; --
end if;
答案 0 :(得分:0)
所以我理解,如果我们在一个时钟进程中分配一个信号或输出,那么赋值发生在下降沿,或者换句话说,当进程暂停时...
这是不正确的。当满足过程的灵敏度条件时,就会发生分配。在您的示例中,这是rising_edge(clk)
- 时钟的上升沿。