一种对加法器进行时序分析的方法及装置制造方法及图纸

技术编号:37399621 阅读:21 留言:0更新日期:2023-04-30 09:27
本发明专利技术提供了一种对加法器进行时序分析的方法及装置,通过将有加法器属性的逻辑单元Cell都单独提取出来重新封装成加法器箱子,从而使加法器逻辑单元独立出来,并且发现,加法器在时序分析时,其时序计算只与信号所输入的端口以及输出端口有关,因此预先计算出每个输入端口到各输出端口的延时并保存,在以后的时序分析中,对于加法器,只需要提取保存的时序延时即可,由于在一个FPGA中,有很多的加法器,通过本发明专利技术的方法,可以节省大量的延时计算时间,提高了时序分析的速度。提高了时序分析的速度。提高了时序分析的速度。

【技术实现步骤摘要】
一种对加法器进行时序分析的方法及装置


[0001]本专利技术属于FPGA领域,尤其是涉及一种对加法器进行时序分析的方法及装置。

技术介绍

[0002]加法器是FPGA内部最基本的运算模块,使用加法器可以实现减法、乘法、除法等算数运算逻辑,现在的FPGA芯片通常会采用超前进位加法器,以减少多位加法器的进位延时,由于超前进位加法器,进位不是逐级传递的,而是提前跨越多级提前计算出来的,因此以往的时序分析方法不能满足针对进位链的时序分析。

技术实现思路

[0003]本专利技术所要解决的技术问题是怎样对所有种类的加法器进行时序分析,提出了一种对加法器进行时序分析的方法及装置。
[0004]为解决上述技术问题,本专利技术所采用的技术方案是:一种对加法器进行时序分析的方法,包括以下步骤:步骤1:遍历现有的时序资源,将所有具有加法器属性的逻辑单元提取出来,并将具有相同加法器属性的逻辑单元按照加法器功能重新封装成不同功能的加法器实体,每个加法器实体包括一个或多个封装箱,所述封装箱中封装有规定数量的逻辑单元;步骤2:封装后保存各逻辑单元在各封装箱中的位置和逻辑单元的标识;步骤3:将加法器实体看成一个黑盒子,该黑盒子有若干个输入端口和若干个输出端口,输入端口为信号进入加法器实体中某一逻辑单元输入的端口,输出端口为信号从加法器实体中逻辑单元输出的端口,预先计算信号从每个输入端口到各输出端口的延时并保存;步骤4:时序分析时,当时序路径节点为加法器实体时,则提取预先保存的从输入端口到输出端口的延时作为加法器实体节点的延时
[0005]进一步地,步骤3中预先计算信号从每个输入端口到各输出端口的延时的方法是:根据输入端口和输出端口各自所在的逻辑单元位置,判断输入端口和输出端口是否位于封装箱的一个半区,若是,则计算从输入端口到输出端口所经过的几个逻辑单元的延时加上输出端口的延时;若不是,则计算输入端口所在封装箱半区的延时,再将从输入端口到输出端口所经过的其他几个封装箱的半区的延时累加,再加上输出端口的延时得到从输入端口到输出端口的延时。
[0006]进一步地,步骤1中重新封装时采用尾对齐的装箱策略,所述尾对齐的装箱策略是指,对具有相同加法器属性的逻辑单元按照加法器功能封装成不同功能的加法器实体时,根据加法器实体所包含的封装箱个数,使逻辑单元从最后一个封装箱的最后一个位置开始装箱。
[0007]本专利技术还提供了一种对加法器进行时序分析装置,包括以下模块:重新封装模块:用于遍历现有的时序资源,将所有具有加法器属性的逻辑单元提
取出来,并将具有相同加法器属性的逻辑单元按照加法器功能封装成不同功能的加法器实体,每个加法器实体包括一个或多个封装箱,所述封装箱中封装有规定数量的逻辑单元;位置保存模块:用于封装后保存各逻辑单元在各封装箱中的位置和逻辑单元的标识;延时预先计算模块:用于将加法器实体看成一个黑盒子,该黑盒子有若干个输入端口和若干个输出端口,输入端口为信号进入加法器实体中某一逻辑单元输入的端口,输出端口为信号从加法器实体中逻辑单元输出的端口,预先计算信号从每个输入端口到各输出端口的延时并保存;时序分析模块:用于当时序路径节点为加法器实体时,则提取预先保存的从输入端口到输出端口的延时作为加法器实体节点的延时。
[0008]进一步地,预先计算信号从每个输入端口到各输出端口的延时的方法是:根据输入端口和输出端口各自所在的逻辑单元位置,判断输入端口和输出端口是否位于封装箱的一个半区,若是,则计算从输入端口到输出端口所经过的几个逻辑单元的延时加上输出端口的延时;若不是,则计算输入端口所在封装箱半区的延时,再将从输入端口到输出端口所经过的其他几个封装箱的半区的延时累加,再加上输出端口的延时得到从输入端口到输出端口的延时。
[0009]进一步地,所述重新封装模块在重新封装时,采用尾对齐的装箱策略,所述尾对齐的装箱策略是指,对具有相同加法器属性的逻辑单元按照加法器功能封装成不同功能的加法器实体时,根据加法器实体所包含的封装箱个数,使逻辑单元从最后一个封装箱的最后一个位置开始装箱。采用上述技术方案,本专利技术具有如下有益效果:本专利技术提供的一种对加法器进行时序分析的方法及装置,通过将有加法器属性的逻辑单元Cell都单独提取出来重新封装成一个个加法器箱子,从而使加法器逻辑单元独立出来,并且发现,加法器在时序分析时,其时序计算只与信号所输入的端口以及输出端口,以及输入和输出端口中间跨越逻辑单元的长度有关,与半区内有多少个逻辑单元无关,也不关心输出端口在半区的哪个逻辑单元上,因此预先计算出加法器实体中每个输入端口到各输出端口的延时并保存,在以后的时序分析中,对于加法器实体,只需要提取保存的时序延时即可,由于在一个FPGA中,有很多不同功能的加法器实体,通过本专利技术的方法,可以节省大量的延时计算时间,提高了时序分析的速度。
附图说明
[0010]图1为本专利技术系统流程图;图2为加法器延时计算示意图;图3为将加法器看作一个黑盒子后输入输出端口示意图;图4为装箱时头对齐示意图;图5为尾对齐示意图;图6为原有时序分析图;图7为本专利技术方法时序分析图。
具体实施方式
[0011]下面将结合附图对本专利技术的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0012]图1示出了本专利技术一种对加法器进行时序分析的方法的具体实施例,包括以下步骤:步骤1:遍历现有的时序资源,将所有具有加法器属性的逻辑单元提取出来,并将具有相同加法器属性的逻辑单元按照加法器功能重新封装成不同功能的加法器实体,每个加法器实体包括一个或多个封装箱,所述封装箱中封装有规定数量的逻辑单元。将所有具有相同加法器属性的逻辑单元提取出来封装成加法器实体,封装后便于进行时序延时计算。
[0013]加法器的时序分析比较特殊,普通的时序分析是针对原子级别的模块逐级传递,而进位链是针对整个进位链模块,时序延时不是逐级传递,而是根据加法器实体中各封装箱的半区统一计时。
[0014]一个完整的进位链加法器实体是由一个或多个封装箱CLB组成。对于封装箱CLB可以分为上半区和下半区,每一个半区最多5个逻辑单元模块。加法器实体结构是由一个或多个封装箱组成,一个封装箱箱子最多可以有10个逻辑单元,每个逻辑单元模块都有datain(数据输入端口)、dataout(数据输出端口),cout(进位输出),cin(进位输入)组成。
[0015]步骤2:封装后保存各逻辑单元在加法器箱子中的位置和逻辑单元标识。由于加法器延时的计算是根据逻辑单元在封装箱中半区的位置进行计算的,因此需要保存各逻辑单元在封装箱中的位置。通过逻辑单元标识可以找到逻辑单元在原有箱子中的模块,从而找到该逻辑单元的信号输入输出关系,新的加法器实体只是改变了逻辑单元的装箱位置,并不改变逻辑单元的信号输入输出关系,因此在新的加法器实体中继续延用该逻辑单元的信号输本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种对加法器进行时序分析的方法,其特征在于,包括以下步骤:步骤1:遍历现有的时序资源,将所有具有加法器属性的逻辑单元提取出来,并将具有相同加法器属性的逻辑单元按照加法器功能重新封装成不同功能的加法器实体,每个加法器实体包括一个或多个封装箱,所述封装箱中封装有规定数量的逻辑单元;步骤2:封装后保存各逻辑单元在各封装箱中的位置和逻辑单元的标识;步骤3:将加法器实体看成一个黑盒子,该黑盒子有若干个输入端口和若干个输出端口,输入端口为信号进入加法器实体中某一逻辑单元输入的端口,输出端口为信号从加法器实体中逻辑单元输出的端口,预先计算信号从每个输入端口到各输出端口的延时并保存;步骤4:时序分析时,当时序路径节点为加法器实体时,则提取预先保存的从输入端口到输出端口的延时作为加法器实体节点的延时。2.根据权利要求1所述的方法,其特征在于,步骤3中预先计算信号从每个输入端口到各输出端口的延时的方法是:根据输入端口和输出端口各自所在的逻辑单元位置,判断输入端口和输出端口是否位于封装箱的一个半区,若是,则计算从输入端口到输出端口所经过的几个逻辑单元的延时加上输出端口的延时;若不是,则计算输入端口所在封装箱半区的延时,再将从输入端口到输出端口所经过的其他几个封装箱的半区的延时累加,再加上输出端口的延时得到从输入端口到输出端口的延时。3.根据权利要求2所述的方法,其特征在于,步骤1中重新封装时采用尾对齐的装箱策略,所述尾对齐的装箱策略是指,对具有相同加法器属性的逻辑单元按照加法器功能封装成不同功能的加法器实体时,根据加法器实体所包含的封装箱个数,使逻辑单元从最后一个封装箱的最后一个位置开始装箱。4.一种对加法器进行时序分析...

【专利技术属性】
技术研发人员:曲志明吴明杰刘洋
申请(专利权)人:中科亿海微电子科技苏州有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1