FPGA时序约束一如何查看具体错误的时序路径

时间:2025-09-17  作者:Diven  阅读:0

1、时序错误的影响

FPGA时序约束一如何查看具体错误的时序路径

一个设计的时序报告中,design run 时序有红色,裕量(slack)为负数时,表示时序约束出现违例,虽然个别违例不代表你的工程就有致命的问题,但是这是一个风险(时序报告是按照工艺、电压以及温度的上下限给出的结果)。当违例数较多,也就意味着设计在实际环境中出现问题的概率也会越大。

时间裕量包括建立时间裕量和保持时间裕量(setup slack和hold slack)。从字面上理解,所谓“裕量”即富余的、多出的。什么意思呢?即保持最低要求的建立时间或保持时间所多出的时间,那么“裕量”越多,意味着时序约束越宽松。

2、如何查看具体错误的时序路径

上述错误的时序,双击可以看到详细的时钟路径和数据路径,右键可以看到具体代码中的原理图。个人比较喜欢先查看原理图可以很直观的看到到底是哪一块的代码错了。

在调试的过程中发现,基本上时序错误都是代码的错误,比如没有跨时钟操作(跨时钟需要打两拍,跨时钟一些信号前后初始化不一致);数据路径过长(主要是针对位宽较大的数据,路径又长。解决办法是在该路径上添加寄存器)。出现时序错误,先从代码逻辑上找问题,代码逻辑排查完了,在考虑时序怎么约束。

3、clock  interaction

时序错误还可以通过下图查看,以前特别爱用里面的指令  set false  path  和 set  clock  groups。自从意识到大部分的时序错误都是逻辑错误导致以后,基本没用到这两句话。有一次盲目的使用set false  path 指令,没有对 set false  path 的用法有深刻理解,  导致代码逻辑不正常后,就更不会轻易用这些优化指令了。

扩展:

1)set_false_path

设置伪路径后,不再对特殊路径进行时序分析。特殊路径如测试逻辑、添加同步电路后的跨时钟域路径等。在两个时钟域之间应该相互设置为set_false:(注意:只是不对特殊路径进行时序分析,而不是只要出现错误就能用这句话)

set_false_path -from [get_clocks clk_a] -to [get_clocks clk_b]

set_false_path -from [get_clocks clk_b] -to [get_clocks clk_a]

2)set_clock_groups :添加完以后事这样的

set_clock_groups -asynchronous -group clk_a -group clk_b  clk_a和clk_b是异步时钟

设置异步时钟

编辑:黄飞

b

猜您喜欢


圆珠笔是我们日常生活中常见的书写工具,但你知道之间有哪些区别吗?圆珠笔的笔尖材料不同,常见的有铜、钢和塑料。铜制笔尖书写流畅,耐用性强;而塑料笔尖则轻便,更适合...
2022-08-03 00:00:00

交流接触器是电气控制设备,主要用于远程控制电动机和其电气设备的开关。通过电磁铁的作用,将电流信号转换为机械动作,从而实现对电路的通断控制。交流接触器应用于工业自...
2020-11-18 00:00:00

ZigBee模块是基于ZigBee协议的无线通信模块,应用于物联网、智能家居和工业自动化等领域。具备低功耗、低成本和高可靠性等优点,适合需要长时间运行的设备。Z...
2011-06-30 00:00:00

贴片电阻在电子电路中扮演着至关重要的角色,选择合适的封装尺寸对于电路设计和性能至关重要。本指南提供最新的贴片电阻常用封装尺寸信息,帮助您快速找到合适的元件。常见...
2025-04-14 15:03:25

2017-02-18 00:00:00

2013-11-26 11:36:30

可变电容是电子设备中重要的部件。的作用很大,影响了很多设备的性能。本文将详细探讨可变电容的几个主要作用。调谐频率可变电容可以调节频率。通过改变电容值,设备可以接...
2025-03-25 16:01:39

近期,意法半导发布了新型人体存在和移动检测芯片:STHS34PF80,它是一款带有微加工热敏晶体管(TMOS)的高集成度、超低功耗的红外(IR)传感器,可取代传...
2023-07-30 09:47:00

膨胀螺栓是应用于建筑和装修领域的重要紧固件,其参数直接影响到安装的安全性和可靠性。膨胀螺栓的直径和长度是关键参数,通常根据具体的应用需求来选择。常见的直径范围从...
2009-08-25 00:00:00