【发布时间】:2018-08-17 09:00:11
【问题描述】:
所以我有一个足够简单的时钟进程,将一个std_logic_vector 的值分配给另一个。
capture_proc: process(clk)
begin
if rising_edge(clk) then
captured_data <= sdram_din;
end if;
end process;
我的问题是在clk 的上升沿,放入captured_data 的值可以被同一上升沿上的其他进程读取。
我对顺序代码中的信号分配的理解是,在模拟中它实际上发生在下一个时钟周期之后的下一个触发之前。这不是我的情况,如下所示。
在下面的模拟中,我在下降沿将sdram_din 的值强制为 0x0000,并在下一个上升沿进行值分配。为什么值会立即出现,但不会在一个周期后出现?
所有代码都可以看到here。
【问题讨论】:
标签: vhdl