一种布线资源优化的分割方法技术

技术编号:39737117 阅读:8 留言:0更新日期:2023-12-17 23:39
本发明专利技术公开了一种布线资源优化的分割方法,涉及电子设计自动化技术领域,解决了现有技术中仅考虑

【技术实现步骤摘要】
一种布线资源优化的分割方法


[0001]本专利技术涉及电子设计自动化
,尤其涉及一种布线资源优化的分割方法


技术介绍

[0002]随着用户设计规模的不断增大,对用户设计的逻辑雅正不得不采用多
FPGA
的系统,这时就需要用户把用户设计成制定数量的不同部分,每部分被分配至不同的
FPGA
中运行

[0003]当前的现有技术,已经不能满足与切割到
FPGA
级的程度,
FPGA
内部逻辑块常常因为位置不合理,造成逻辑资源使用不均衡,从而导致效率不高;大量布线资源的浪费,在一些场景下造成严重拥堵或者耗尽布线资源,导致布线失败

因而,现有的技术趋势是在对用户设计进行
FPGA
级的分割后,再进行一次更小颗粒的分割,即
Die
级的分割

一颗
FPGA
中通常由几颗成一定拓扑结构的
Die
组成

[0004]现有
Die
级的分割流程沿用了
FPGA
级的分割思想:在进行
FPGA
级的分割后得到了每颗
FPGA
中所分到的用户子逻辑;将用户子逻辑再进行
Die
级分割,分成不同的部分,每个部分被称为一个
Partition
,分割数量等于一颗
FPGA

Die
的总数,其中
Partition

Partition
之间的分割代价取决于两个
Partition
之间通信的绝对信号数量

[0005]现有
Die
级的分割流程没有考虑
FPGA
内部各个
Die
之间的拓扑关系,即现有
Die
级的分割流程将每个
Die
视为等同,进而使用
Partition

Partition
之间的绝对信号数量作为切割代价

上述切割代价没有考虑组网因素的限制,会导致其数值不准,不能与在组网中的
Partition
之间的实际切割代价很好地吻合,从而导致切割效果降低;另外,更重要的一点,现有
Die
级的分割流程为了
FPGA
并行处理,只关注一颗
FPGA
内部的用户设计分割,即各个
FPGA
中进行的
Die
级分割彼此完全独立

但是应该注意到,各个
FPGA
中的用户子设计之间是有信号通信的,即各
FPGA
之间有信号连接,且
FPGA
之间具有特定的连接关系,如果只考虑
FPGA
内部的逻辑分割会使得逻辑块上的信号需要经由更长的路径才能到达其他
FPGA
中,造成传输延时增大


技术实现思路

[0006]本专利技术通过提供一种布线资源优化的分割方法,有效解决了现有技术中仅考虑
FPGA
中的通信情况,没有考虑多个
FPGA
之间的通信情况,传输延时较大的问题,进而实现了在满足设计需求的基础上,减少了通信代价,提高了通信效率

[0007]第一方面,本专利技术实施例提供了一种布线资源优化的分割方法,该方法包括:
[0008]获取包括多个逻辑单元的总逻辑模块,并将所述总逻辑模块抽象为逻辑拓扑结构图;
[0009]根据约束条件对所述逻辑拓扑结构图进行聚类,得到聚类后的多个聚类组,其中所述约束条件包括:以所述逻辑拓扑结构图中各个节点连接的紧密程度为约束条件,以及以固定分配位置的节点为约束条件;
[0010]分别计算所述多个聚类组的优先分配指数,并根据优先分配指数将所述聚类组分配至
FPGA
中;
[0011]分别计算
FPGA
中所有所述聚类组中每两个节点之间通过不同的通信路径得到的通信代价,并根据所述通信代价调整所述通信路径,以对布线资源进行优化

[0012]结合第一方面,在一种可能的实现方式中,所述将所述总逻辑模块抽象为逻辑拓扑结构图,包括:
[0013]将所述逻辑单元抽象为所述逻辑拓扑结构图中的节点,并将所述节点之间的通信信号抽象为所述节点之间的连线,以将所述总逻辑模块抽象为逻辑拓扑结构图

[0014]结合第一方面,在一种可能的实现方式中,所述根据约束条件对所述逻辑拓扑结构图进行聚类,得到聚类后的多个聚类组,具体包括:
[0015]计算所述逻辑拓扑结构图中各个节点之间的连接紧密度;
[0016]当各个节点之间所述连接紧密度大于或者等于阈值时,将各个节点划分至同一个聚类组,得到多个所述聚类组;
[0017]判断每一个所述聚类组是否满足所述聚类组包括一个或者零个所述固定分配位置的节点的条件,得到判断结果;
[0018]若所述判断结果为是,则输出多个所述聚类组;
[0019]若所述判断结果为否,则重新对所述逻辑拓扑结构图进行聚类

[0020]结合第一方面,在一种可能的实现方式中,所述优先分配指数具体计算公式为:
[0021][0022]其中,
Sum_R
表示所有未分配至
FPGA
中的聚类组;
Sum_S
表示聚类后所述逻辑拓扑结构图中所有连线的权重之和;
a
表示可配参数,
a∈[0,1],
R
i
表示所有未分配至
FPGA
中的聚类组的资源总量;
S
i
表示所有未分配至
FPGA
中的聚类组相互通信的信号的总数量

[0023]结合第一方面,在一种可能的实现方式中,所述根据优先分配指数将所述聚类组分配至
FPGA
中,具体包括:
[0024]将所述固定分配位置的节点所在的所述聚类组分配至
FPGA
中;
[0025]计算不包括所述固定分配位置的节点的所述聚类组的所述优先分配指数;
[0026]将所述优先分配指数按照降序进行排序,并按照排序顺序将不包括所述固定分配位置的节点的所述聚类组分配至
FPGA


[0027]结合第一方面,在一种可能的实现方式中,所述分别计算
FPGA
中所有所述聚类组中每两个节点之间通过不同的通信路径得到的通信代价,具体包括:
[0028]分别计算两个节点之间的第一通信代价以及第二通信代价,所述第一通信代价为一个
FPGA
内部通信代价,所述第二通信代价为本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种布线资源优化的分割方法,其特征在于,包括:获取包括多个逻辑单元的总逻辑模块,并将所述总逻辑模块抽象为逻辑拓扑结构图;根据约束条件对所述逻辑拓扑结构图进行聚类,得到聚类后的多个聚类组,其中所述约束条件包括:以所述逻辑拓扑结构图中各个节点连接的紧密程度为约束条件,以及以固定分配位置的节点为约束条件;分别计算所述多个聚类组的优先分配指数,并根据优先分配指数将所述聚类组分配至
FPGA
中;分别计算
FPGA
中所有所述聚类组中每两个节点之间通过不同的通信路径得到的通信代价,并根据所述通信代价调整所述通信路径,以对布线资源进行优化
。2.
根据权利要求1所述的方法,其特征在于,所述将所述总逻辑模块抽象为逻辑拓扑结构图,包括:将所述逻辑单元抽象为所述逻辑拓扑结构图中的节点,并将所述节点之间的通信信号抽象为所述节点之间的连线,以将所述总逻辑模块抽象为逻辑拓扑结构图
。3.
根据权利要求1所述的方法,其特征在于,所述根据约束条件对所述逻辑拓扑结构图进行聚类,得到聚类后的多个聚类组,具体包括:计算所述逻辑拓扑结构图中各个节点之间的连接紧密度;当各个节点之间所述连接紧密度大于或者等于阈值时,将各个节点划分至同一个聚类组,得到多个所述聚类组;判断每一个所述聚类组是否满足所述聚类组包括一个或者零个所述固定分配位置的节点的条件,得到判断结果;若所述判断结果为是,则输出多个所述聚类组;若所述判断结果为否,则重新对所述逻辑拓扑结构图进行聚类
。4.
根据权利要求1所述的方法,其特征在于,所述优先分配指数具体计算公式为:其中,
Sum_R
表示所有未分配至
FPGA
中的聚类组;
Sum_S
表示聚类后所述逻辑拓扑结构图中所有连线的权重之和;
a
表示可配参数,
a∈[0,1]

R
i
表示所有未分配至
FPGA
中的聚类组的资源总量;
S
i
表示所有未分配至
FPGA
中的聚类组相互通信的信号的总数量
。5.
根据权利要求1所述的方法,其特征在于,所述根据优先分配指数将所述聚类组分配至
FPGA
中,具体包括:将所述固定分配位置的节点所在的所述聚类组分配至
FPGA<...

【专利技术属性】
技术研发人员:邵中尉张吉锋周思远
申请(专利权)人:上海思尔芯技术股份有限公司
类型:发明
国别省市:

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

1