System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及电子设计自动化,尤其涉及一种信号与管脚匹配的方法。
技术介绍
1、在原型验证系统中,用户的电路设计会被分割至各个fpga中,fpga中的子电路需要相互通信,即有信号需要在fpga之间进行传递。管脚是分布在fpga不同位置上的信号连接器,fpga之间传递信号需要经由fpga上的某个管脚(pin)发出,经过线簇(cable)的传递到另一个fpga的pin上。cable由一组线(wires)组成,比如一个cable包含32个wires,每个wire的两端各连接一个pin。
2、在现有技术中,cable选择的pin是按照pin的编号选择的,也就是说,一个cable选择连接两边的哪些pin是按照pin的编号依次进行的,这种选择方法可能导致一个cable中在一边fpga的pin的分布位置较为分散,举个极端的例子,可能选择的pin分布在fpga的四个角落里,这样的cable连接一来会要求更长的cable来满足大范围的连接(物理长度更长的cable会增加信号延时),二来通过该cable的信号将会跨越更远的距离才能到达pin,也就是增加了信号传输的延时,同时信号在fpga内传输时,也耗费了更多的fpga内的布线资源。另外,现有技术没有精细化地根据信号与pin的物理位置,控制每个信号与pin的最佳匹配,不能最大程度地在降低信号传输延时。
技术实现思路
1、本专利技术通过提供一种信号与管脚的匹配方法和装置,解决了现有技术中没有精细的根据信号与管脚的物理位置,控制每个信号的管脚的
2、第一方面,本专利技术提供了一种信号与管脚的匹配方法,该方法包括:
3、采用多线程分别对第一fpga和第二fpga中的pin进行组合,分别得到第一fpga的管脚组集合和第二fpga的管脚组集合;其中,所述管脚组包含一个或者多个管脚,所述管脚组中的多个管脚之间利用同一根线簇中的同一个连接线进行连接;
4、分别根据所述第一fpga的管脚组集合和所述第二fpga的管脚组集合中任意两个所述管脚组的合并代价,对所述管脚组进行合并,得到第一合并集合和第二合并集合;
5、分别确定所述第一合并集合和第二合并集合中每个管脚组的中心点坐标,得到第一中心点坐标集合和第二中心点坐标集合;
6、确定分别以所述第二中心点坐标集合为基准和以所述第一中心点坐标集合为基准的最近中心点和最远中心点,并将所述最近中心点对应的所述管脚组和所述最远中心点对应的所述管脚组保存至连接关系集合中;
7、计算所述关系集合中的一组连接关系的所述最近中心点和最远中心点之间的直线距离,保存所述直线距离至距离集合中,并在所述第一合并集合和第二合并集合中对应删除所述最远中心点和所述最近中心点,直至所述第一合并集合和第二合并集合为空集合;
8、确定所述距离值集合中的最大值为所述连接线的长度,利用所述连接线以及所述连接关系集合对信号进行传输。
9、结合第一方面,在一种可能的实现方式中,所述对所述管脚组进行合并,得到第一合并集合和第二合并集合,具体包括:
10、对所述第一fpga的管脚组集合和第二fpga的管脚组集合中的所述合并代价进行排序;
11、根据合并代价从小到大的排序规则,依次对每个所述管脚组进行合并,得到所述第一合并集合和所述第二合并集合。
12、结合第一方面,在一种可能的实现方式中,所述管脚组合并的约束条件为:
13、当所述管脚组中的管脚数量为x时,不再进行管脚组合并;其中x的具体计算公式表示为:
14、
15、其中:n表示为一个fpga的管脚数量;k表示为线簇的数量。
16、结合第一方面,在一种可能的实现方式中,所述合并代价具体为所述管脚组中管脚之间的最小距离。
17、结合第一方面,在一种可能的实现方式中,所述分别确定所述第一合并集合和第二合并集合中每个管脚组的中心点坐标,具体包括:
18、获取所述每个管脚组中所有的管脚的横坐标值和纵坐标值;
19、分别计算所述横坐标值和所述纵坐标值的平均值,确定横坐标平均值以及纵坐标平均值;
20、确定所述中心点的横坐标值为所述横坐标平均值,所述中心点的纵坐标值为所述纵坐标平均值。
21、结合第一方面,在一种可能的实现方式中,在确定最近中心点和最远中心点之前,还包括:
22、将所述第一中心点坐标集合和所述第二中心点坐标集合中的已匹配的所述管脚进行删除。
23、结合第一方面,在一种可能的实现方式中,所述确定分别以所述第二中心点坐标集合为基准和以所述第一中心点坐标集合为基准的最近中心点和最远中心点,具体包括:
24、根据所述第二中心点坐标集合与所述第一中心点坐标集合中的中心点之间的直线距离,确定最短直线距离对应的所述第二中心点坐标集合的中心点作为最近中心点;
25、确定所述第一中心点坐标集合中与所述最近中心点直线距离最长的所述中心点为所述最远中心点;
26、根据所述第一中心点坐标集合与所述第二中心点坐标集合中的中心点之间的直线距离,确定最短直线距离对应的所述第一中心点坐标集合的中心点作为最近中心点;
27、确定所述第二中心点坐标集合中与所述最近中心点直线距离最长的所述中心点为所述最远中心点。
28、结合第一方面,在一种可能的实现方式中,所述在所述第一合并集合和第二合并集合中对应删除所述最远中心点和所述最近中心点,具体包括:
29、当以所述第二中心点坐标集合为基准时,删除所述第一中心点坐标集合中的所述最远中心点,以及删除所述第二中心点坐标集合中的所述最近中心点;
30、当以所述第一中心点坐标集合为基准时,删除所述第一中心点坐标集合中的所述最近中心点,以及删除所述第二中心点坐标集合中的所述最远中心点。
31、结合第一方面,在一种可能的实现方式中,所述利用所述连接线以及所述连接关系集合对信号进行传输,具体包括:
32、计算所述信号的驱动节点在所述第一fpga中与所述第一fpga的管脚组集合中任意一个管脚组的多个第一距离,计算所述信号的驱动节点在所述第二fpga中与所述第二fpga的管脚组集合中任意一个管脚组的多个第二距离;
33、根据所述连接关系集合中的连接关系,计算所述信号的多个距离之和,所述距离之和为所述第一距离与第二距离之和;
34、确定所述多个距离之和中的最小值,以及所述最小值对应的连接关系,根据所述连接关系对所述信号进行传输。
35、第二方面,本专利技术提供了一种信号与管脚的匹配装置,该装置包括:
36、管脚组获取模块,用于采用多线程分别对第一fpga和第二fpga中的本文档来自技高网...
【技术保护点】
1.一种信号与管脚的匹配方法,其特征在于,包括:
2.根据权利要求1所述的信号与管脚的匹配方法,其特征在于,所述对所述管脚组进行合并,得到第一合并集合和第二合并集合,具体包括:
3.根据权利要求1所述的信号与管脚的匹配方法,其特征在于,所述管脚组合并的约束条件为:
4.根据权利要求1所述的信号与管脚的匹配方法,其特征在于,所述合并代价具体为所述管脚组中管脚之间的最小距离。
5.根据权利要求1所述的信号与管脚的匹配方法,其特征在于,所述分别确定所述第一合并集合和第二合并集合中每个管脚组的中心点坐标,具体包括:
6.根据权利要求1所述的信号与管脚的匹配方法,其特征在于,在确定最近中心点和最远中心点之前,还包括:
7.根据权利要求1所述的信号与管脚的匹配方法,其特征在于,所述确定分别以所述第二中心点坐标集合为基准和以所述第一中心点坐标集合为基准的最近中心点和最远中心点,具体包括:
8.根据权利要求1所述的信号与管脚的匹配方法,其特征在于,所述在所述第一合并集合和第二合并集合中对应删除所述最远中心点和所述
9.根据权利要求1所述的信号与管脚的匹配方法,其特征在于,所述利用所述连接线以及所述连接关系集合对信号进行传输,具体包括:
10.一种信号与管脚的匹配装置,其特征在于,包括:
...【技术特征摘要】
1.一种信号与管脚的匹配方法,其特征在于,包括:
2.根据权利要求1所述的信号与管脚的匹配方法,其特征在于,所述对所述管脚组进行合并,得到第一合并集合和第二合并集合,具体包括:
3.根据权利要求1所述的信号与管脚的匹配方法,其特征在于,所述管脚组合并的约束条件为:
4.根据权利要求1所述的信号与管脚的匹配方法,其特征在于,所述合并代价具体为所述管脚组中管脚之间的最小距离。
5.根据权利要求1所述的信号与管脚的匹配方法,其特征在于,所述分别确定所述第一合并集合和第二合并集合中每个管脚组的中心点坐标,具体包括:
6.根据权利要求1所述的信号与管脚...
【专利技术属性】
技术研发人员:周思远,邵中尉,张吉锋,
申请(专利权)人:上海思尔芯技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。