有人可以详细说明“RTL模拟比delta周期模拟更快但不能在所有情况下使用”吗? 我不知道什么是Delta循环模拟
答案 0 :(得分:3)
在Verilog模拟中,delta-cycles是模拟器用来计算下一个值的周期。
进入组合部分时,模拟器将使用许多增量周期来解决答案所需的依赖关系。如果你有一个没有用触发器分解的组合循环,模拟器可能会不断重复尝试解决依赖关系的循环,这是不可能的,因为循环。如果你得到的模拟只是挂起,这通常是原因。
非阻塞分配(<=
)利用delta-cycles,通过解析右侧值(可能有很多delta-cycle),然后delta delta循环将这些分配给左侧。
a<=b;
b<=a;
在上面的简单情况中,b和a被复制到临时位置(想想next_a next_b)。然后,将delta周期a分配给next_a,将b分配给next_b。
还有其他ZERO-Time结构不使用常用于测试平台的delta周期进行建模。我没有这些经验,希望另一个答案可以描述使用。