我正在试着做一个新的设计。我设计了两个进程,分别是同步和异步。我通常在异步过程中给出重置,首先显示的是代码片段。然而,有人刚刚告诉我这是一个错误。据她所知,我应该在同步过程中给出重置语句。我还检查了第一个的原理图,看到它正确地连接到触发器的复位。
sync_proc : process(clk_i)
begin
if(rising_edge(clk_i)) then
do smt..
end if;
end process sync_proc;async_proc : process(some signals)
begin
if(reset_i = '1') then
reset smt..
else
do smt..
end if;
end process sync_proc;上面是我的代码,下面是她的建议。
sync_proc : process(clk_i)
begin
if(reset_i = '1') then
reset smt..
else(rising_edge(clk_i)) then
do smt..
end if;
end process sync_proc;我想知道,这些状态之间有什么不同吗?如果有,是什么?
发布于 2019-04-26 15:00:10
可以把VHDL语言的process看作是一小部分软件,它模拟了一些硬件。在你的方法中,你有两个小硬件来驱动相同的信号,即短路。使用她(正确的)方法,您可以使用一点硬件(触发器)来驱动一个信号。
https://stackoverflow.com/questions/55861070
复制相似问题