【发布时间】:2025-12-04 05:10:02
【问题描述】:
如何在时钟信号的上升沿设置位并在时钟信号的下降沿重置该位? 我想知道我怎样才能做到这一点。根据我想在上升沿设置并在下降沿重置的条件。这就像在输出端获得时钟脉冲一样。
我实现了两个不同的时钟脉冲,但我遇到了这样的故障。
我的代码是这样的
process(clk)
begin
if rising_edge(clk) then
d0 <= new_data;
end if;
end process;
process(clk)
begin
if falling_edge(clk) then
d1 <= new_data;
end if;
end process;
out <= d0 when clk = '1' else d1;
【问题讨论】:
-
冷你发布你的代码?看起来您在 3 号信号上有多个驱动程序。
-
见我添加了代码部分。您对多个驱动程序的看法是正确的,我现在更正了
-
好的,我有一个解决方法。我没有使用 d0 和 d1 作为信号,而是将它们定义为共享变量并且故障消失了。
标签: vhdl