一种基于距离关系的连接信号分组方法技术

技术编号:39251919 阅读:7 留言:0更新日期:2023-10-30 12:03
本发明专利技术公开了一种基于距离关系的连接信号分组方法,包括:根据连接信号的负载节点所处FPGA的不同对连接信号进行选择性拆分,以将负载节点处于同一FPGA的连接信号拆分在一起;计算拆分在一起的连接信号两两之间的距离;对连接信号进行随机分组,获得当前所有分组中连接信号的距离总和;不断交换不同分组之间的连接信号,使得交换后所有分组中连接信号的距离总和不断减小。本发明专利技术对信号进行选择性拆分,可以节省FPGA之间的cable的使用,节省了cable资源;使得同一分组信号所消耗的FPGA内die crossing处的布线资源更少,降低了布线难度,提高了布线资源的使用效率。提高了布线资源的使用效率。提高了布线资源的使用效率。

【技术实现步骤摘要】
一种基于距离关系的连接信号分组方法


[0001]本专利技术属于集成电路
,具体涉及一种基于距离关系的连接信号分组方法。

技术介绍

[0002]现在用户设计电路的规模往往需要多颗FPGA(Field Programmable Gate Array,现场可编程门阵列)才能容纳,因此用户设计电路必须由一个整体分割成多个子部分才能完成原型验证,各个子部分之间需要经过FPGA之间的物理线缆(cable)进行通信,在FPGA之间通信的信号叫做连接信号,只在FPGA内部通信的信号叫做内部信号。每颗FPGA内部可以进一步细化为几个SLR(Super Logic Region),也就是说FPGA是由若干个SLR成一定拓扑形状组合而成(线性结构较为常见),而FPGA之间的物理cable则具体体现为两颗FPGA的某些SLR之间发生的连接。
[0003]连接信号表示一对FPGA之间的通信信号,也就是在如FPGA1中的用户设计子部分的电路模块与FPGA2中用户设计子部分的电路模块之间的通信信号。由于FPGA之间的cable数量非常有限,FPGA之间的连接信号数量往往大于cable的数量,因此连接信号需要按照一定的比例进行分组,每组共享一根cable,组内信号采用时分复用依次通过cable,这个比例叫做分组比例。分组比例由用户时钟频率要求来决定。
[0004]连接信号只有一个驱动节点(发送节点),但可以有多个负载节点(接收节点),如图1所示,连接信号的相关电路模块被一个灰色圆圈包围,代表其中的电路模块S、A、B、C之间有信号线,其中S是信号驱动节点,A、B、C是信号负载节点。
[0005]现有技术的连接信号分组过程为先将连接信号进行完全拆分,即将原本为同一连接信号连接的负载节点和驱动节点,按照负载节点的数量分成不同的连接信号,拆分后的每个信号只有一个驱动节点和一个负载节点,如图2所示,即原来一根连接信号包括一个驱动节点和三个负载节点,拆分后变为三根。然后对所有拆分处理后的连接信号,按照分组比例采用近似方法进行组合。
[0006]这种拆分方法的缺点是:(1)将多负载节点的信号进行完全拆分成每个信号只包括一个驱动节点和一个负载节点,虽然不影响电路原有逻辑,但可能会造成cable资源的浪费,如图3中左图,完全拆分后需要传递3个信号,将增加了cable的负荷。实质上,当一个连接信号的部分负载节点所处相同FPGA时,这部分的连接信号可以共享一根net(电路连线),如图3中右图所示,负载节点A,B位于FPGA2中,负载节点C位于FPGA3中,则连接信号只需要拆成两部分即可,一部分信号在到达FPGA2后再分出一根信号线连接电路模块B,信号在FPGA之间的传递速度远低于在FPGA内部,同时又节省了稀缺的cable资源。
[0007](2)现有技术方案按照分组比例,对驱动节点和负载节点两侧距离最小的连接信号利用近似方法进行信号组合,当前的算法从驱动节点所处在边缘的连接信号开始,逐步寻找加入两端(驱动节点和负载节点)距离总和最小的连接信号,直至到达分组比例,即所分每组中连接信号的最大容量。这种方法在分组比例大于2时会逐渐失去运行效率的优势,
原因在于当分组比例等于2时,一个连接信号只需要寻找另一个距离总和最小的连接信号即可,如果是分组比例大于等于3,则需要大于等于3个信号彼此驱动节点和负载节点距离总和最小,那么当前种子信号就需要在剩余信号中遍历、选出另外两个信号的所有组合情况。这样做消耗大量时间,当分组比例逐渐增大,效率问题变得越来越严重,最终成为整体处理流程的时间瓶颈,不能再被接受。
[0008](3)另外,一个连接信号可能存在多个负载节点,且负载节点既可以存在于驱动节点所在的发射端FPGA上,也可能同时存在于接收端FPGA,如图4所示。那么在计算连接信号彼此之间的距离时,现有方法以简单的点与点之间最短路径的形式进行距离计算,这样的距离结果不够准确,会比实际值偏大,造成分组不准确,最后导致FPGA内部布线资源的更多浪费。

技术实现思路

[0009]为了解决现有技术中存在的上述问题,本专利技术提供了一种基于距离关系的连接信号分组方法。本专利技术要解决的技术问题通过以下技术方案实现:
[0010]本专利技术提供了一种基于距离关系的连接信号分组方法,包括:
[0011]S1:根据连接信号的负载节点所处FPGA的不同对连接信号进行选择性拆分,以将负载节点处于同一FPGA的连接信号拆分在一起;
[0012]S2:计算经步骤S1拆分在一起的连接信号两两之间的距离;
[0013]S3:对拆分在一起的连接信号进行随机分组,并获得当前所有分组中连接信号的距离总和;
[0014]S4:不断交换不同分组之间的连接信号,使得交换后所有分组中连接信号的距离总和减小直至达到指定的迭代次数或者总距离低于指定的距离总和值。
[0015]在本专利技术的一个实施例中,所述S1包括:
[0016]根据连接信号驱动节点所处的FPGA位置对连接信号的方向进行分类,确定连接信号的驱动节点和每个负载节点所处的位置;随后根据连接信号负载节点所处FPGA是否相同,对连接信号进行选择性拆分,即对于负载节点所处相同FPGA的连接信号不拆分,对负载节点所处不同FPGA的连接信号进行拆分,使得拆分在一起的连接信号包括驱动节点位于同一发射端FPGA,负载节点全部位于同一接收端FPGA上的连接信号,还包括驱动节点位于同一发射端FPGA,负载节点部分位于同一接收端FPGA上,部分位于当前发射端FPGA上的连接信号。
[0017]在本专利技术的一个实施例中,当两个连接信号的驱动节点均位于同一发射端FPGA,负载节点均位于同一接收端FPGA时,两个连接信号之间的距离等于连接信号的驱动节点之间的距离加上两个连接信号的两个最近负载节点之间的距离。
[0018]在本专利技术的一个实施例中,当两个连接信号的驱动节点均位于同一发射端FPGA,所述两个连接信号的中的至少一个连接信号的负载节点不仅位于接收端FPGA,还位于当前发射端FPGA时,两个连接信号之间的距离等于发射端FPGA上不同连接信号的驱动节点和/或负载节点之间的最近距离加上接收端FPGA上不同连接信号的负载节点之间的最近距离。
[0019]在本专利技术的一个实施例中,当两个连接信号的驱动节点均位于同一发射端FPGA,所述两个连接信号的中的至少一个连接信号的负载节点不仅位于接收端FPGA,还位于当前
发射端FPGA时,将发射端FPGA中同一连接信号的驱动节点和负载节点划分为同一区域,将接收端FPGA中同一连接信号的驱动节点和负载节点划分为同一区域,两个连接信号之间的距离等于发射端FPGA中不同区域之间的距离与接收端FPGA中不同区域之和。
[0020]在本专利技术的一个实施例中,所述S3包括:
[0021]S3.1:创建一个长度为n的数组A,数组的序号表示连接信号的编号,数组中每个位置的数字表示当前连接信号的分组序号,其中,n为待分组的连接信号的数量;
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于距离关系的连接信号分组方法,其特征在于,包括:S1:根据连接信号的负载节点所处FPGA的不同对连接信号进行选择性拆分,以将负载节点处于同一FPGA的连接信号拆分在一起;S2:计算经步骤S1拆分在一起的连接信号两两之间的距离;S3:对拆分在一起的连接信号进行随机分组,并获得当前所有分组中连接信号的距离总和;S4:不断交换不同分组之间的连接信号,使得交换后所有分组中连接信号的距离总和减小直至达到指定的迭代次数或者总距离低于指定的距离总和值。2.根据权利要求1所述的基于距离关系的连接信号分组方法,其特征在于,所述S1包括:根据连接信号驱动节点所处的FPGA位置对连接信号的方向进行分类,确定连接信号的驱动节点和每个负载节点所处的位置;随后根据连接信号负载节点所处FPGA是否相同,对连接信号进行选择性拆分,即对于负载节点所处相同FPGA的连接信号不拆分,对负载节点所处不同FPGA的连接信号进行拆分,使得拆分在一起的连接信号包括驱动节点位于同一发射端FPGA,负载节点全部位于同一接收端FPGA上的连接信号,还包括驱动节点位于同一发射端FPGA,负载节点部分位于同一接收端FPGA上,部分位于当前发射端FPGA上的连接信号。3.根据权利要求1所述的基于距离关系的连接信号分组方法,其特征在于,当两个连接信号的驱动节点均位于同一发射端FPGA,负载节点均位于同一接收端FPGA时,两个连接信号之间的距离等于连接信号的驱动节点之间的距离加上两个连接信号的两个最近负载节点之间的距离。4.根据权利要求1所述的基于距离关系的连接信号分组方法,其特征在于,当两个连接信号的驱动节点均位于同一发射端FPGA,所述两个连接信号的中的至少一个连接信号的负载节点不仅位于接收端FPGA,还位于当前发射端FPGA时,两个连接信号之间的距离等于发射端FPGA上不同连接信号的驱动节点和/或负载节点之间的最近距离加上接收端FPGA上不同连接信号的负载节点之间的最近距离。5.根据权利要求1所述的基于距离关系的连接信号分组方法,其特征在于,当两个连接信号的驱动节点均位于同一发射端FPGA,所述两个连接信号的中的至少一个连接信号的负载节点不仅位于接收端FPGA,还位于当前发射端FPGA时,将发射端FPGA中同一连接信号的驱动节点和负载节点划分为同一区域,将接收端FPGA中同一连接信号的驱动节点和负载节点划分为同一区域,两个连接信号之间的距离等于发射端FPGA中不同区域之间的距离与接收端FPGA中不同区域之和。6.根据权利要求1所述的基于距离关系的连接信号分组方法,其特征在于,所述S3包括:S3.1:创建一个长度为n的数组A,数组的序号表示连接信号的编号,数组中每个位置的数字表示当前连接信号的分组序号,其中,n为待分组的连接信号的数量;S3.2:对数组A进行初始化,对数组A中的每个连接信号随机分...

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

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

1