FPGA中实现信号延时的资源消耗

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

在FPGA设计中我们经常会遇到对一个信号进行延时的情况,一般只延时一个或几个CLK时,通常是直接打拍,如果要延时的CLK较多时,我们会选择移位寄存器IP核,而有时为了方便,我们常常会使用下面的方式

FPGA中实现信号延时的资源消耗

前段时间我临时对一个脉冲信号延时8192个CLK就使用了这种写法,当时有意识到可能会消耗较多的资源,但没想到会这么多。

不同方式实现延时的资源消耗对比

还是对一个脉冲信号延时8192个CLK,为了对比不同方式的资源消耗,我新建了一个工程

平台:Cyclone V

软件:Quartus 18.1 standard

对比了三种实现方式

计数8192个时钟,重新产生一个脉冲

移位寄存器IP核(Memory实现)

对该信号打8192拍(寄存器实现)

资源消耗情况如下图所示。

可以看到计数器消耗的资源是最少的,因为相当于只存储一个bit的信息,不像其两种方式把8192个时钟的信息都存储了,这算是取巧的方式,能应用的场合比较少。

打8192拍的方式使用资源最多,用了2032个ALM,ALM是Altera器件的最小逻辑单元,一个ALM包含4个寄存器。因为要打8192拍,所以可以看到这里消耗了8192个寄存器。实际上打拍并没有用到任何的组合逻辑(LUT),但是因为寄存器和LUT是绑定到ALM中的,所以一旦寄存器被消耗,同时LUT也很难应用到其逻辑中。像这里,8192个寄存器需要2048个ALM(图中是2032),这2048个ALM中的LUT就被浪费掉了(我不是很确定,需要进一步研究,但是从资源消耗的情况来看,应当是这样的)。所以这种方式是最不经济的,除非要延时的时钟很少或者是调试代码,否则不建议总是采用这种方式。

移位寄存器IP消耗的资源相对比较适中,只使用了262个ALM,相当于是把ALM配置成了Memory,像是Xilinx器件中的SRL。实现时资源设置的是Auto,如果设置为M10K的话,是下面这样的。可以看到使用一个M10Ks的Block Memory,而ALM就只消耗了14个。实际设计时可根据芯片哪种资源余量更大选择哪种。

从上面的实验可以看到,直接打拍的方式是非常浪费资源的,所以如果要延时的CLK较多,建议采用IP核的方式,在使用IP核方式时根据剩余资源选择合适的资源来实现。而在某些特殊情况,可以考虑采用计数器的方式来实现,这种方式消耗的资源最少,但是如果不是要延时特别多的CLK,则不建议,因为这种方式在时序变化时难以维护。

打拍延时是可以的,但是不要复位,像下面这样写,综合工具可以推断使用Memory来实现。经测试,这种写法与IP核的资源消耗是差不多的(还是会比ip多一点点),这样就可以很方便的实现信号delay了。xilinx的器件也是一样,不要复位。

这里综合后显示的是使用了一个M10K。还可以加上综合属性,强制使用MLAB实现。

如果一个系统里有很多这样没有复位的Memory的话,在复位系统时,需要将复位信号拉的长一点,保证复位过后的信号冲掉Memory中的残留数据,否则系统会有出错的风险。

猜您喜欢

贴片电阻的型号识别主要依靠印在表面的数字编码,常见的有三位数和四位数两种。三位数编码的规则是前两位数字表示有效数字,最后一位数字表示10的n次幂,n为最后一位数...
2024-11-26 11:29:48

2023-02-22 19:49:30

现代电子技术的发展中,半导体材料的选择对设备性能有着很重要的影响。SC70-5作为新型的半导体材料,因其优越的性能和广泛的应用前景,逐渐成为行业内的热门话题。本...
2025-02-21 13:05:16

电流采样电阻作为关键元件,是监测和控制电流的重要配件。台庆(TAI-TECH)作为业界知名的电子元件制造商,其电流采样电阻系列受到推崇。本文将详细介绍台庆(TA...
2017-05-14 08:40:30

对于FPGA系统设计里,寄存器控制通道的设计是系统控制中必不可少的部分。今日且看SpinalHDL中如何优雅地实现寄存器总线读写。Bus Slave Fact...
2022-08-05 09:57:00

起拨器和IC夹在现代电子行业中是重要配件,其应用领域。在手机和计算机等消费电子产品的生产过程中,起拨器用于精确地拆卸和安装各种集成电路(IC),确保组件的稳定性...
2014-07-13 00:00:00

EEPROM(电可擦可编程只读存储器)是非易失性存储器,应用于电子设备中。主要作用是存储数据,即使在断电情况下,数据也能保持不变。EEPROM的特点是可以进行多...
2010-02-18 00:00:00

在物联网的快速发展中,ZigBee模块因其低功耗和高效能而受到关注。市场上的ZigBee模块种类繁多,各自具有不同的特点和应用场景。从功能上看,ZigBee模块...
2008-08-20 00:00:00

我们的生活中,电子设备无处不在,而这些设备的正常运行离不开稳定的电压供应。低压差线性稳压器芯片,作为一种关键的电子元件,是电压守门员的配件,默默地保障着各种电子...
2024-08-03 00:00:00

现代电子设备中,连接器作为不可少的组成部分,承担着数据和电力的传输任务。CONN-80P_23X2.5MM_SM是一款性能很好的连接器,应用于各种电子产品中。本...
2025-04-24 18:31:18