多FPGA系统间的自动布线方法、仿真方法技术方案

技术编号:38402151 阅读:20 留言:0更新日期:2023-08-07 11:13
本发明专利技术公开了一种多FPGA系统间的自动布线方法、仿真方法。其中多FPGA系统间的自动布线方法,包括:获取电路设计分割后的信号信息以及硬件信息,所述硬件信息包括可用的FPGA、FPGA之间的物理连线以及类型,各分时复用通道在不同分时复用比率下的真实延时;基于硬件信息构建待布线的布线图,使得每一个FPGA为布线图中的一个点,FPGA之间的每一条物理连线为布线图中的一条边;根据信号信息依次对每个信号进行布线;并且布线时以真实延时作为各条边的代价,采用最短路径算法进行布线时,寻找最小的代价的路径作为各信号的最短路径。本发明专利技术可以有效降低系统延时,提高系统运行频率。提高系统运行频率。提高系统运行频率。

【技术实现步骤摘要】
多FPGA系统间的自动布线方法、仿真方法


[0001]本专利技术涉及FPGA硬件仿真器的布线的
,尤其涉及一种多FPGA系统间的自动布线方法。

技术介绍

[0002]随着芯片设计规模的提升,单纯使用纯软件仿真工具,受限于验证机制和性能瓶颈,使得芯片开发与验证周期大大延长,基于多FPGA系统的硬件仿真加速器借助了FPGA强大的硬件模拟能力,可以在较短的时间内在FPGA系统上模拟完整的用户设计电路,并在真实电路中运行,极大地缩短了芯片验证周期,助力用户加速芯片设计迭代,因此受到业界的青睐。
[0003]在用户设计电路到达一定规模后,由于单颗FPGA上的资源有限,为了能够容纳更大的芯片设计,一定要用到多颗FPGA芯片,此时用户设计电路就不得不被分割到不同的FPGA上,原有设计中大量的信号也会被切断,原有模块内部信号通过不同FPGA之间的端口进行通信,这些信号在各FPGA之间的路径延时会极大地影响整个系统的运行频率,且由于信号数量巨大,各FPGA之间的互联资源亦有限,用户可使用的硬件资源也可能不同,如何灵活地为这些信号进行布线以达到更好的系统运行频率成为了一个值得关注的问题。

技术实现思路

[0004]为了解决现有技术中布线方案对于系统延时的降低效果相对不佳的技术问题,本专利技术提出了一种多FPGA系统间的自动布线方法、仿真方法。
[0005]本专利技术的多FPGA系统间的自动布线方法,包括:
[0006]步骤1,获取电路设计分割后的信号信息以及硬件信息,所述硬件信息包括可用的FPGA、FPGA之间的物理连线以及物理连线的类型,各分时复用通道在不同分时复用比率下的真实延时;
[0007]步骤2,基于硬件信息构建待布线的布线图,使得每一个FPGA为布线图中的一个点,FPGA之间的每一条物理连线为布线图中的一条边;
[0008]步骤3,根据信号信息依次对每个信号进行布线;并且布线时以真实延时作为各条边的代价,采用最短路径算法进行布线时,寻找最小的代价的路径作为各信号的最短路径。
[0009]进一步,所述各条边的代价采用以下方法得到:
[0010]计算分时复用通道的分时复用比率;
[0011]根据所计算的分时复用比率,从分时复用比率与真实延时的对应关系中找到分时复用比率对应的真实延时。
[0012]进一步,所述分时复用比率采用公式计算得到,n
i
为对应的分时复用通道承载的信号数量,c
i
为对应的分时复用通道所有物理线束的数量,ceil为向上取整函数,g为对应物理线束分时复用间隔系数。
[0013]进一步,信号信息包括信号列表,以及列表中的每一个信号方向对应的起点FPGA和终点FPGA。
[0014]进一步,所述信号列表中的信号按照重要性从高到低排序。
[0015]进一步,在布线的过程中,所述布线图中的边每次被布线后,判断该边的是否满载,若满载则记录该边为满载状态,之后的信号在采用最短路径算法进行布线时避开满载状态的边进行布线。
[0016]进一步,当被布线的边的当前TDM通道中承载的信号数量等于该TDM通道中物理线束数量*该TDM通道对应的最大Ratio值时,判断该被布线的边满载。
[0017]进一步,当所有信号均通过步骤3被初始布线后,再执行迭代步骤4依次对各信号进行再次布线,当所有信号一轮迭代完成以后,继续执行迭代步骤4,直至达到迭代次数;
[0018]所述步骤4包括:
[0019]步骤4.1,针对当前迭代的信号,清理前一次的布线结果,更新受清理影响的边的满载状态以及真实延时;
[0020]步骤4.2,根据最短路径算法重新进行布线;
[0021]步骤4.3,比较该信号最新的布线路径和前一次的布线路径对系统延时的影响,若系统延时增大,则该信号继续使用前一次的布线路径,否则,该信号使用最新的布线路径。
[0022]本专利技术提出的基于多FPGA系统的仿真方法,包括上述技术方案所述的多FPGA系统间的自动布线方法。
[0023]本专利技术采用了真实延时来作为边的代价,因而可以在使用最短路径算法时有效降低系统延时、提高系统运行频率。本专利技术进一步考虑了满载概念,在采用最短路径算法时避开满载状态的分时复用通道,可以有效降低系统延时。更进一步,本专利技术可以适配不同的硬件规模,硬件拓扑结构可以随意更换。
附图说明
[0024]下面结合实施例和附图对本专利技术进行详细说明,其中:
[0025]图1是本专利技术的主要流程图;
[0026]图2是本专利技术一个具体实施例的布线图通道延时示意图;
[0027]图3是本专利技术一个具体实施例的分时复用通道承载信号数量示意图;
[0028]图4是本专利技术一个具体实施例的更换路径后分时复用通道承载信号数量的示意图;
[0029]图5是本专利技术一个具体实施例存在满载通道的布线示意图。
具体实施方式
[0030]为了使本专利技术所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。
[0031]由此,本说明书中所指出的一个特征将用于说明本专利技术的一个实施方式的其中一个特征,而不是暗示本专利技术的每个实施方式必须具有所说明的特征。此外,应当注意的是本说明书描述了许多特征。尽管某些特征可以组合在一起以示出可能的系统设计,但是这些
特征也可用于其他的未明确说明的组合。由此,除非另有说明,所说明的组合并非旨在限制。
[0032]本专利技术的多FPGA系统间的自动布线方法最主要的目的在于降低系统延时,提高系统运行频率。如图1所示,对于如何降低系统延时,该多FPGA系统间的自动布线方法采用了以下的主要步骤。
[0033]步骤1,获取电路设计(即用户设计电路)分割后的信号信息以及硬件信息。
[0034]在一个实施例中,信号信息包括信号列表,以及信号列表中的每一个信号方向对应的起点FPGA和终点FPGA,信号的起点FPGA和终点FPGA未必直接连接,需要进行布线,可能直接连接,也可能经过其他的FPGA,本专利技术的自动布线的目的就是要在多FPGA系统中的各个FPGA之间找到适合每一个信号方向对应的起点FPGA到终点FPGA的布线路径,信号的布线路径确定以后,信号将沿着布线路径传递。
[0035]在其他实施例中,信号信息当中的信号也可以不以列表的形式记录,也可以以其他的方式记录,也能够达到本专利技术的目的。
[0036]步骤1中所获取的硬件信息包括:可用的FPGA、FPGA之间的物理连线以及物理连线的类型,各分时复用通道在不同分时复用比率下的真实延时。
[0037]FPGA之间的物理连线的类型具有很多种,包括但不限于LVDS(Low

Voltage Differential Signaling,低电压差分信号线)、XCVR(Transcei本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种多FPGA系统间的自动布线方法,其特征在于,包括:步骤1,获取电路设计分割后的信号信息以及硬件信息,所述硬件信息包括可用的FPGA、FPGA之间的物理连线以及物理连线的类型,各分时复用通道在不同分时复用比率下的真实延时;步骤2,基于硬件信息构建待布线的布线图,使得每一个FPGA为布线图中的一个点,FPGA之间的每一条分时复用通道为布线图中的一条边;步骤3,根据信号信息依次对每个信号进行布线;并且布线时以真实延时作为各条边的代价,采用最短路径算法进行布线时,寻找最小的代价的路径作为各信号的最短路径。2.如权利要求1所述的多FPGA系统间的自动布线方法,其特征在于,所述各条边的代价采用以下方法得到:计算分时复用通道的分时复用比率;根据所计算的分时复用比率,从分时复用比率与真实延时的对应关系中找到分时复用比率对应的真实延时。3.如权利要求2所述的多FPGA系统间的自动布线方法,其特征在于,所述分时复用比率采用公式计算得到,n
i
为对应的分时复用通道承载的信号数量,c
i
为对应的分时复用通道所有物理线束的数量,ceil为向上取整函数,g为对应物理线束分时复用间隔系数。4.如权利要求1所述的多FPGA系统间的自动布线方法,其特征在于,所述信号信息包括信号列表,以及列表中的每一个信号方向对应的起点FPGA和终点FPGA。5.如权利要...

【专利技术属性】
技术研发人员:周立兵张鸣孙亚强
申请(专利权)人:深圳国微晶锐技术有限公司
类型:发明
国别省市:

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

1