唠一唠解决FPGA约束中时序不收敛的问题

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

FPGA时序不收敛,会出现很多随机性问题,上板测试大概率各种跑飞,而且不好调试定位原因,所以在上板测试前,先优化时序,再上板。

唠一唠解决FPGA约束中时序不收敛的问题

今天我们就来唠一唠解决时序不收敛的问题,分享一些常用的解决办法和思路。

一、模块运行时钟频率

设计模块前,需明确模块运行的最大时钟频率。

不同时钟频率下,对应的时序约束最大延时是不一样的。

比如100MHz时钟下运行的HDL逻辑,比200MHz时钟下的HDL逻辑,支持的组合逻辑层数多。

根据最大时钟频率,来设计HDL代码的层级,时钟频率越高,插入寄存器要更多,增加流水线级数,减少过长的组合逻辑。

二、HDL代码

1、HDL代码风格

优先参考FPGA开发软件提供的HDL Template,比如Vivado的language template。

2、HDL代码逻辑优化

对于复杂的算法代码逻辑,需要结合FPGA并行计算和最小处理单位为bit的特性,对逻辑代码进行优化实现。

明确变量最大的数据位宽。

逻辑代码中,一些软件逻辑实现起来较复杂,尽量简化,删除掉一些不可能出现的情况。

这部分代码逻辑,可能需要重复迭代几遍实现才行。

三、组合逻辑层数

1、插入寄存器

将计算逻辑分成多个时钟周期实现,这是常用的时序优化方法,可以减少过多的组合逻辑层数,但会增加延时。

这里以一个多路输入求和计算为例增加寄存器后,改为

2、逻辑展平设计

优化代码中优先级译码电路逻辑,主要出现在IF/ELSE结构语句中,这样逻辑结构被展平,路径延迟得以缩短。

IF ELSE结构语句存在明显的优先级,建议尽量用CASE语句来替代。

3、防止变量被优化

HDL综合布线软件会根据实际情况,自动优化代码逻辑,可能存在将多个不同寄存器变量合并成一个寄存器变量的情况。

对于不希望被优化的变量,可以在变量定义前,添加(* keep = "ture" *)

四、高扇出

高扇出问题,原因是一个寄存器驱动后级数超过了本身的驱动能力,导致延迟时间过大,不满足时序。

1、使用max_fanout

在变量定义前,可以添加(* max_fanout = n *),来设置变量的最大扇出数,超过这个扇出数,综合软件会自动复制多份变量。

2、复位信号高扇出

复位信号是常见的高扇出问题,主要解决办法有:

(1)减少复位信号的使用,能使用使能信号控制的,就用使能信号。

(2)对于大型模块,复位信号可以使用BUFG来驱动复位信号,可以增加复位信号的驱动能力

五、资源消耗

FPGA器件的整个工程资源消耗,不管是LUT还是BRAM等资源,建议不超过80%。

一旦资源消耗超过80%,在布线综合时,就出现布线资源不够,导致出现布线拥塞,从而出现了时序不收敛的情况。

布线拥塞也分为全局拥塞和局部拥塞,可能是高扇出信号过多,也可能是局部布线资源不够用,导致时序路径过长。

1、优化代码逻辑,减少资源消耗。

在资源不够用的情况下,建议检查代码是否可优化,设置的RAM大小是否过大等等。

2、使用替代资源实现

在FPGA中实现RAM时,可以根据整个资源的使用情况,考虑使用Distributed RAM、URAM等资源来减少BRAM的消耗。

六、

本文分享了时序收敛的一些方法和思路,希望可以给大家带来一点启发。

猜您喜欢

梅花螺丝批是专门设计用来拧紧或松开梅花形螺丝的工具。独特头部形状使得在使用时能够更好地与螺丝的凹槽吻合,提供更强的抓握力,降低打滑的风险。这种工具应用于电子产品...
2009-12-01 00:00:00

人体感应传感器是常用于智能家居、安防监控等领域的设备,其主要功能是探测人体的存在与移动。了解其参数对于选择合适的传感器非常重要。探测范围是一个关键参数,通常以米...
2014-03-05 00:00:00

您是否曾好奇过电子设备如何测量和显示交流电信号的电压或电流值?这其中就涉及到 RMS 直流转换器的作用。简单来说,RMS 直流转换器就像是一位翻译官,能够将变化...
2024-02-09 00:00:00

电阻器作为最基础且重要的元件,种类繁多,性能各异。TA-I(大毅)合金电阻因其很好的性能和可靠的品质,受到众多电子制造商和设计工程师的青睐。本文将详细介绍TA-...
2015-02-18 19:05:30

方形铜端子是常见的电气连接组件,应用于电力、通信和电子设备中。其规格尺寸通常根据实际需求而定,但方形铜端子的尺寸包括长度、宽度和厚度。常见的尺寸有10mm x ...
2013-10-19 00:00:00


干砂纸是常用的打磨工具,根据不同的特性和用途,干砂纸可以分为多种类型。颗粒大小是区分干砂纸的重要标准。砂纸的颗粒大小通常用数字表示,数字越小,颗粒越粗,适合去除...
2009-08-05 00:00:00


日前,新华社以《我国科研团队在这一领域取得突破》为题,报道了我国科研团队在智能光电成像器件领域取得的新突破。 我国科研团队在智能光电成像器件领域取得突破 不...
2024-11-11 13:47:00

IDC刺破式连接器(牛角/简牛)是应用于电子设备中的连接器,其主要参数包括接触电阻、绝缘电阻、耐压、工作温度范围和传输速率等。接触电阻通常在10毫欧以下,确保信...
2011-03-13 00:00:00