一种FPGADie级系统的布线优化方法

文档序号:37768900发布日期:2024-04-25 10:55阅读:12来源:国知局
一种FPGA Die级系统的布线优化方法

本发明适用于集成电路,尤其涉及一种fpga die级系统的布线优化方法。


背景技术:

1、在大规模集成电路原型验证过程中,常需要将设计电路分割到多颗fpga中,并进一步对网络进行die级别细粒度的分割,然后在die级别上进行信号布线,其中每个die上的电路逻辑已固定,使用不同节点表示各个电路逻辑,如图1所示。在die之间的布线中,使用sll(super long line)连接同一fpga内的die,在不同fpga之间使用物理连线(wire)进行连接。布线的目标是使所有网络的最大延迟最小化,其中每个网络由一个源节点和多个负载节点组成。

2、为了满足fpga之间物理连线数量的限制,需要使用时分复用(tdm)的方式,在一条wire上经过多个信号,但要求同一个wire中的时分复用信号必须具有相同的传递方向。每条wire上经过的信号数量由tdm ratio表示,tdm ratio是基数为4的整数倍,同时也反映了该wire上信号的延迟。具体的tdm delay通过公式delay=a+b*ratio计算,其中a为1、b为2。

3、die级布线的目标是在满足跨越die的信号数量小于或等于限定值的条件下,使所有网络的最大布线权重值(routing weight,rw)最小化。每个网络的routing weight由公式f(net)=max(∑(tc*delay))计算,其中tc是时序系数,对于同一fpga内的die之间的tc值,取1,对于不同fpga之间的tc值,取0.5。路径path指驱动节点到负载节点的路由路径,delay表示驱动节点到每个负载节点之间路由路径的延迟值。

4、因此,针对fpga die级系统布线问题,一个能够在满足约束条件的情况下,最小化最大routing weight的die级系统布线算法具有重要意义,能够节约设计开发成本。


技术实现思路

1、本发明提出了一种fpga die级系统的布线优化方法,旨在节约设计开发fpga die级系统布线的成本。

2、所述布线优化方法包括以下步骤:

3、s1、获取系统数据信息,所述系统数据信息包括fpga信息、位置信息、die信息、网络信息;将所述网络信息中的节点类型网络转换为die类型网络;

4、s2、根据所述系统数据信息通过a*算法进行布线,得到初始布线结果;

5、s3、根据所述初始布线结果通过第一预设方法进行二次布线,得到二次布线结果;对所述二次布线结果中的物理连线的网络通过时分复用方法进行平均分配并计算,得到对应的初始目标值,所述初始目标值包括多个网络的布线权重值,所述布线权重值用于反映布线的延时和线长;

6、s4、通过基于网络的第一时分复用重分配方法对所述初始目标值进行分配优化,得到分配结果;

7、s5、通过基于路径的第二时分复用重分配方法对所述分配结果中的每一网络进行优化处理,得到最终分配结果;

8、s6、对所述最终分配结果是否满足预设条件进行检验,若是,则将所述最终分配结果作为最终布线结果输出。

9、优选的,通过路径评估函数进行布线,所述路径评估函数满足以下关系式:

10、f(n)=g(n)+h(n)

11、其中,g(n)表示从起始节点到当前节点的实际代价,h(n)表示从当前节点到目标节点的预测代价;

12、优选的,所述第一预设方法为:

13、根据所述初始布线结果进行两次布线,一次根据原始网络顺序进行布线,得到第一布线结果,另一次根据负载节点数从少到多进行布线,得到第二布线结果;

14、所述二次布线结果包括所述第一布线结果和所述第二布线结果。

15、优选的,步骤s3中,对所述二次布线结果中的物理连线的网络通过时分复用方法进行平均分配并计算包括以下子步骤:

16、s31、当通过一条所述物理连线的网络数达到4时,对所述物理连线的条数进行扩展,直至所有的时分复用的比率都达到4;

17、s32、将所述物理连线经过的网络数逐步增加至8,并对所述物理连线的条数进行扩展,直至所有的时分复用的比率达到8;

18、s33、判断所有的网络是否都完成分配,若是,计算所有网络的布线权重值,得到所述初始目标值;若否,则返回步骤s31。

19、优选的,步骤s4中,包括以下子步骤:

20、s41、所有的网络按照对应的布线权重值由小到大进行排序,并将每一网络映射至网络排序表中;

21、s42、将所述网络排序表中的网络分成预设段数,定义压缩点,根据所述压缩点的范围对每一网络对应的时分复用比率进行压缩处理或放大处理,处理后进行平均分配,得到所述分配结果。

22、优选的,步骤s5中,包括以下子步骤:

23、s51、根据每一网络对应的布线权重值大小,从大到小排列网络中的每一条路径,对每一路径对应的物理连线比率进行放缩处理;

24、s52、判断所述物理连线的数量是否能够满足放缩后的所述物理连线比率大小,若是,则进行步骤s53;若否,则继续放大所述物理连线比率;

25、s53、将每一网络分配到每一时分复用中,得到最终分配结果。

26、优选的,所述预设条件为:

27、对于单个网络中存在负载节点在同一个die中的情况,检测到达负载节点的路径是否相同;若是,则进行下一步;

28、对于每个需要经过所述物理连线的网络,检测所述最终分配结果中有没有进行分配,若有分配,则将所述最终分配结果作为最终布线结果输出。

29、与现有技术相比,本发明通过获取系统数据信息,系统数据信息包括fpga信息、位置信息、die信息、网络信息;将网络信息中的节点类型网络转换为die类型网络;根据系统数据信息通过a*算法进行布线,得到初始布线结果;根据初始布线结果通过第一预设方法进行二次布线,得到二次布线结果;对二次布线结果中的物理连线的网络通过时分复用方法进行平均分配并计算,得到对应的初始目标值,初始目标值包括多个网络的布线权重值,布线权重值用于反映布线的延时和线长;通过基于网络的第一时分复用重分配方法对初始目标值进行分配优化,得到分配结果;通过基于路径的第二时分复用重分配方法对所述分配结果中的每一网络进行优化处理,得到最终分配结果;对最终分配结果是否满足预设条件进行检验,若是,则将最终分配结果作为最终布线结果输出。这样本发明满足fpga die级系统布线的高效率和高性能需求,节约设计开发成本。



技术特征:

1.一种fpga die级系统的布线优化方法,其特征在于,所述布线优化方法包括以下步骤:

2.如权利要求1所述的fpga die级系统的布线优化方法,其特征在于,步骤s2中,通过路径评估函数进行布线,所述路径评估函数满足以下关系式:

3.如权利要求1所述的fpga die级系统的布线优化方法,其特征在于,步骤s3中,所述第一预设方法为:

4.如权利要求1所述的fpga die级系统的布线优化方法,其特征在于,步骤s3中,对所述二次布线结果中的物理连线的网络通过时分复用方法进行平均分配并计算包括以下子步骤:

5.如权利要求4所述的fpga die级系统的布线优化方法,其特征在于,步骤s4中,包括以下子步骤:

6.如权利要求1所述的fpga die级系统的布线优化方法,其特征在于,步骤s5中,包括以下子步骤:

7.如权利要求1所述的fpga die级系统的布线优化方法,其特征在于,步骤s6中,所述预设条件为:


技术总结
本发明适用于集成电路技术领域,尤其涉及一种FPGA Die级系统的布线优化方法。本发明通过获取系统数据信息;根据系统数据信息通过A*算法进行布线,得到初始布线结果;根据初始布线结果通过第一预设方法进行二次布线,得到二次布线结果;对二次布线结果中的物理连线的网络通过时分复用方法进行平均分配并计算;通过基于网络的第一时分复用重分配方法对初始目标值进行分配优化;通过基于路径的第二时分复用重分配方法对分配结果中的每一网络进行优化处理;对最终分配结果是否满足预设条件进行检验。这样本发明满足FPGA Die级系统布线的高效率和高性能需求,节约设计开发成本。

技术研发人员:张浩,卓嘉华,刘强,朱威青
受保护的技术使用者:广东工业大学
技术研发日:
技术公布日:2024/4/24
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1