如何判断VHDL的输出何时达到最终值?
首先,我想声明这是我正在参加的一次实践考试。我知道答案是:cout=4ns,S=7ns。只是想找点解释。提前谢谢 对于下图所示的全加器的VHDL实现,输出cout和S何时会稳定在其最终值(考虑具有最坏情况输入的最坏情况时序路径)如何判断VHDL的输出何时达到最终值?,vhdl,Vhdl,首先,我想声明这是我正在参加的一次实践考试。我知道答案是:cout=4ns,S=7ns。只是想找点解释。提前谢谢 对于下图所示的全加器的VHDL实现,输出cout和S何时会稳定在其最终值(考虑具有最坏情况输入的最坏情况时序路径) 全加器的体系结构并发行为 信号t1、t2、t3、t4、t5:std_逻辑; 开始 t1您基本上只需跟踪依赖项,并通过逻辑将每个路由的依赖项相加。通常,从输出追溯到所需的输入是最容易的。例如: cout <= not(t1 or t2) and t4) after
全加器的体系结构并发行为
信号t1、t2、t3、t4、t5:std_逻辑;
开始
t1您基本上只需跟踪依赖项,并通过逻辑将每个路由的依赖项相加。通常,从输出追溯到所需的输入是最容易的。例如:
cout <= not(t1 or t2) and t4) after 2 ns;
啊,谢谢一群人,很有帮助。所以在第一个例子中,t1和t2延迟没有被考虑,因为它们发生在1ns,而t4是2ns时最长的延迟?谢谢,我想重复一下,但我不能。但我很感激。
cout <= not(t1 or t2) and t4) after 2 ns;
total = 2 + max_delay(B, t3, t5)
total = 2 + delay(t5);
total = 2 + 2 + max_delay(t3, B)
total = 2 + 2 + delay(t3)
total = 2 + 2 + 2 + max_delay(t1, t2, A, cin)
total = 2 + 2 + 2 + delay(t1) (or delay(t2) -- they're the same).
total = 2 + 2 + 2 + 1