问题描述
您可以按如下方式在指定块中设置模块路径延迟(在这种情况下,DFF 中的 clock
到 q
延迟):
specify
specparam tPLHc = 4:6:9,tPHLc = 5:8:11;
(clock *> q) = (tPLHc,tPHLc);
endspecify
换句话说,q
上 0->1 转换的最小延迟是 4 个时间单位,依此类推。然而,这仅给出了 q
上新的有效输出的延迟,并没有指定前一个 q
输出在时钟沿后保持多长时间(或新 {{ 1}} 是有效的)。例如,假设 q
在时钟上升沿后的 2 个时间单位内保持有效,并在 4 个时间单位后采用新值。
解决方法
该信息内置于下一阶段的建立/保持要求中。意识到最小/最大延迟是斜率上的统计阈值,而真实的输出斜率取决于输入斜率。这些斜率取决于电阻/电容网络,如果没有模拟分析,您通常无法获得。因此,保持时间必须足够悲观,以便为您提供实际的更糟情况。