CN112416852B - 环形互连结构路由确定方法及装置 - Google Patents

环形互连结构路由确定方法及装置 Download PDF

Info

Publication number
CN112416852B
CN112416852B CN202011424761.1A CN202011424761A CN112416852B CN 112416852 B CN112416852 B CN 112416852B CN 202011424761 A CN202011424761 A CN 202011424761A CN 112416852 B CN112416852 B CN 112416852B
Authority
CN
China
Prior art keywords
chip
current
chips
item
routing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011424761.1A
Other languages
English (en)
Other versions
CN112416852A (zh
Inventor
杜潘洋
陈玉龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Haiguang Information Technology Co Ltd
Original Assignee
Haiguang Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Haiguang Information Technology Co Ltd filed Critical Haiguang Information Technology Co Ltd
Priority to CN202011424761.1A priority Critical patent/CN112416852B/zh
Publication of CN112416852A publication Critical patent/CN112416852A/zh
Application granted granted Critical
Publication of CN112416852B publication Critical patent/CN112416852B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明提供一种环形互连结构路由确定方法,包括:获取当前芯片在主板上的逻辑节点号;将路由表中的当前芯片跳转至对应芯片的路由项设置为不小于主板支持的最大芯片数量的数值;分别沿所述环形互连结构的第一方向和第二方向依次计算所述多个芯片与当前芯片的跳转距离;当所述跳转距离小于当前路由项时,将所述跳转距离确定为当前芯片跳转至对应芯片的路由项。本发明不需要预先确定整个环形互连结构的芯片总数即可有效计算芯片间的路由路径。

Description

环形互连结构路由确定方法及装置
技术领域
本发明涉及计算机通信技术领域,尤其涉及一种环形互连结构路由确定方法及装置。
背景技术
多芯片环形互连可以是多个单芯片封装(SCM)的互连,也可以是1个或多个同构的多芯片封装(MCM)的互连,甚至可以是1个或多个异构的多芯片封装(SIP)的互连。通常情况下,在环形互连结构下,任意两个CPU之间都存在2条路由路径,为了提高通信效率,需要分别计算这2条路径的长度,并选择较短的一条。
在现有技术中的路由确定方法中,需要预先确定芯片数量作为路由确定过程中的参数,对于无法预先确定整个环形互连结构的芯片总数的情况,难以确定其路由路径。
发明内容
本发明提供的环形互连结构路由确定方法及装置,不需要预先确定整个环形互连结构的芯片总数即可有效计算芯片间的路由路径。
本发明提供一种环形互连结构路由确定方法,包括:
获取当前芯片在主板上的逻辑节点号;
将路由表中的当前芯片跳转至对应芯片的路由项设置为不小于主板支持的最大芯片数量的数值;
分别沿所述环形互连结构的第一方向和第二方向依次计算所述多个芯片与当前芯片的跳转距离;
当所述跳转距离小于当前路由项时,将所述跳转距离确定为当前芯片跳转至对应芯片的路由项。
可选地,在沿所述环形互连结构的第一方向计算当前芯片与所述多个芯片的跳转距离过程中,当所述跳转距离不小于当前路由项时,开始沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离。
可选地,在沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离过程中,当所述跳转距离不小于当前路由项时,确定当前路由表为当前芯片的路由表。
可选地,将路由表中的当前芯片跳转至对应芯片的路由项设置为不小于主板支持的最大芯片数量的数值之后还包括:将当前芯片跳转至本地的路由项设置为0。
可选地,获取当前芯片在主板上的逻辑节点号包括:
依据当前芯片对应的当前处理器序号、处理器包含的芯片数量以及当前芯片在当前处理器中的序号,确定当前芯片的逻辑节点号。
可选地,确定当前芯片的逻辑节点号包括:
将处理器序号小于当前处理器序号的处理器数量与处理器包含的芯片数量相乘,得到第一数量;
将所述第一数量与当前芯片在当前处理器中的序号相加,得到当前芯片的逻辑节点号。
可选地,沿所述环形互连结构的第一方向依次计算所述多个芯片与当前芯片的跳转距离;当所述跳转距离小于当前路由项时,将所述跳转距离的正值更新为当前芯片跳转至对应芯片的路由项;
沿所述环形互连结构的第二方向依次计算所述多个芯片与当前芯片的跳转距离;当所述跳转距离小于当前路由项时,将所述跳转距离的负值更新为当前芯片跳转至对应芯片的路由项。
可选地,所述方法还包括:依据路由表中小于所述主板支持的最大芯片数量的路由项,确定所述环形互连结构的芯片数量。
可选地,所述多芯片环形互连结构包括:一个以上的处理器中包含的至少两个芯片形成的环形互连结构。
可选地,所述一个以上的处理器包括单芯片封装处理器、同构多芯片封装处理器或者异构多芯片封装处理器中的一种或多种。
第二方面,本发明还提供一种环形互连结构路由确定装置,包括:
节点号获取模块,用于获取当前芯片在主板上的逻辑节点号;
初始化模块,用于将路由表中的当前芯片跳转至对应芯片的路由项设置为不小于主板支持的最大芯片数量的数值;
计算模块,用于分别沿所述环形互连结构的第一方向和第二方向依次计算所述多个芯片与当前芯片的跳转距离;
更新模块,用于当所述跳转距离小于当前路由项时,将所述跳转距离确定为当前芯片跳转至对应芯片的路由项。
可选地,所述计算模块包括:
方向更换单元:用于在沿所述环形互连结构的第一方向计算当前芯片与所述多个芯片的跳转距离过程中,当所述跳转距离不小于当前路由项时,开始沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离。
可选地,所述计算模块还包括:
路由表确定单元,用于在沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离过程中,当所述跳转距离不小于当前路由项时,确定当前路由表为当前芯片的路由表。
本发明提供的环形互连结构路由确定方法在单个芯片无法预先确定整个互连结构中芯片数目的场景下,通过在环形互连结构上依次进行第一方向和第二方向的路由项更新,可以有效地计算芯片之间的路由路径。由于在初始状态下路由项设置为不小于主板支持的最大芯片数量,并且将跳转距离小于当前路由项作为更新条件,从而,在沿第一方向进行路由项确定的过程中,能够在当前芯片对每个芯片的路由项更新一次之后及时停止。而在沿第二方向进行路由项确定的过程中,仍然采用跳转距离小于当前路由项作为更新条件能够使当前芯片对每个芯片的路由项都能够更新为最短路径。
附图说明
图1为本发明一实施例环形互连结构路由确定方法的流程图;
图2为本发明另一实施例两个同构多芯片封装处理器构成的环形互连结构示意图;
图3为本发明另一实施例两个单芯片封装处理器构成的环形互连结构示意图;
图4为本发明另一实施例两个异构多芯片封装处理器构成的环形互连结构示意图;
图5为本发明另一实施例环形互连结构路由确定方法的具体操作流程图;
图6为本发明另一实施例环形互连结构路由确定装置的示意图;
图7为本发明另一实施例环形互连结构路由确定装置的计算模块的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种环形互连结构路由确定方法,如图1所示,包括:
步骤100,获取当前芯片在主板上的逻辑节点号;
在一些实施例中,在获取当前芯片在主板上的逻辑节点号时,可以依据主板的引线获取,例如,依据主板上的引线获取当前芯片所在的处理器时第几个处理器,每个处理器芯片内有多少个芯片,以及当前芯片是所在的处理器的第几个芯片,从而,确定当前芯片的逻辑节点号。
步骤200,将路由表中的当前芯片跳转至对应芯片的路由项设置为不小于主板支持的最大芯片数量的数值;
在一些实施例中,在当前芯片与其他芯片之间的跳转距离,不可能超过主板支持的最大芯片数量,因此,在路由表开始更新之前,采用本步骤的设置方式,能够在后续的更新过程中将当前芯片与所有芯片之间的路由项进行更新。
步骤300,分别沿所述环形互连结构的第一方向和第二方向依次计算所述多个芯片与当前芯片的跳转距离;
在一些实施例中,对于环形互连结构中的任意一个芯片来说,其方向仅有两个,并且,该两个方向是相反的。例如,如图2所示,对于其中的任意一个芯片和其他芯片之间的路由路径来说,仅有沿加号方向路由和沿减号方向路由两种,因此,可以采用沿加号方向的路由路径为第一方向,沿减号方向的路由路径为第二方向,也可以采用沿减号方向的路由路径为第一方向,沿加号方向的路由路径为第二方向。
步骤400,当所述跳转距离小于当前路由项时,将所述跳转距离确定为当前芯片跳转至对应芯片的路由项。
在一些实施例中,由于在沿第一方向计算多个芯片与当前芯片的跳转距离时,当前芯片跳转至对应芯片的路由项为不小于主板支持的最大芯片数量的数值;因此,在沿第一方向计算多个芯片与当前芯片的跳转距离时,会更新当前芯片与所有芯片之间的路由项。在沿第二方向计算多个芯片与当前芯片的跳转距离时,当前芯片跳转至对应芯片的当前路由项为当前芯片沿第一方向的路由的路由项;因此,在沿第二方向计算多个芯片与当前芯片的跳转距离时,实际上仅计算一半数量的芯片与当前芯片之间的路由项。
本实施例提供的环形互连结构路由确定方法在单个芯片无法预先确定整个互连结构中芯片数目的场景下,通过在环形互连结构上依次进行第一方向和第二方向的路由项更新,可以有效地计算芯片之间的路由路径。由于在初始状态下路由项设置为不小于主板支持的最大芯片数量,并且将跳转距离小于当前路由项作为更新条件,从而,在沿第一方向进行路由项确定的过程中,能够在当前芯片对每个芯片的路由项更新一次之后及时停止。而在沿第二方向进行路由项确定的过程中,仍然采用跳转距离小于当前路由项作为更新条件能够使当前芯片对每个芯片的路由项都能够更新为最短路径。
作为一种可选的实施方式,在沿所述环形互连结构的第一方向计算当前芯片与所述多个芯片的跳转距离过程中,当所述跳转距离不小于当前路由项时,开始沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离。在一些实施例中,沿所述环形互连结构的第一方向计算当前芯片与所述多个芯片的跳转距离的过程结束后,开始执行沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离的过程,为了使沿第一方向和沿第二方向的计算过程顺利衔接,在本实施方式中,以当所述跳转距离不小于当前路由项时作为沿第二方向的计算过程开始的触发条件。
作为一种可选的实施方式,在沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离过程中,当所述跳转距离不小于当前路由项时,确定当前路由表为当前芯片的路由表。在一些实施例中,当沿第二方向计算当前芯片与所述多个芯片的跳转距离过程中,此时的路由项是由大到小排列的,因此,当所述跳转距离不小于当前路由项时,可以确定当前芯片与所有的芯片之间的路由项都为最短的路由项,因此,此时可以将当前路由表作为当前芯片的路由表进行保存。
作为一种可选的实施方式,将路由表中的当前芯片跳转至对应芯片的路由项设置为不小于主板支持的最大芯片数量的数值之后还包括:将当前芯片跳转至本地的路由项设置为0。在一些实施例中,采用本步骤的设置方式可以省去后续的跳转距离计算过程中对于当前芯片跳转到本地的计算步骤,从而,能够加快计算速度。
作为一种可选的实施方式,获取当前芯片在主板上的逻辑节点号包括:
依据当前芯片对应的当前处理器序号、处理器包含的芯片数量以及当前芯片在当前处理器中的序号,确定当前芯片的逻辑节点号。作为一种优选的实施方式,确定当前芯片的逻辑节点号包括:将处理器序号小于当前处理器序号的处理器数量与处理器包含的芯片数量相乘,得到第一数量;将所述第一数量与当前芯片在当前处理器中的序号相加,得到当前芯片的逻辑节点号。在一些实施例中,逻辑节点号实际上是指当前芯片对应主板上可安装芯片的位置的序列号。例如,在主板上提供了四个可安装处理器的插槽,每个插槽能够安装一个同构多芯片封装的处理器,每个处理器包含4个芯片;此时,主板上可安装芯片的位置共有16个,当当前芯片在第三个插槽的第二个位置时,当前芯片对应主板上可安装芯片的位置序列号为10,也即,当前芯片的逻辑节点号为10。
作为一种可选的实施方式,沿所述环形互连结构的第一方向依次计算所述多个芯片与当前芯片的跳转距离;当所述跳转距离小于当前路由项时,将所述跳转距离的正值更新为当前芯片跳转至对应芯片的路由项;
沿所述环形互连结构的第二方向依次计算所述多个芯片与当前芯片的跳转距离;当所述跳转距离小于当前路由项时,将所述跳转距离的负值更新为当前芯片跳转至对应芯片的路由项。
在一些实施例中,采用本实施方式的技术方案,路由项不仅能够表明当前芯片跳转至对应芯片的距离,还能够指明该距离是沿何种方向的路由路径计算的。因此,本实施方式中的技术方案能够更加清晰的表明路由路径的信息。
在一些实施例中,所述方法还包括:依据路由表中小于所述主板支持的最大芯片数量的路由项,确定所述环形互连结构的芯片数量。由于在前述各实施方式中,沿第一方向对路由项的计算和确定过程是对所有的芯片进行计算的,而沿第二方向对路由项的计算过程是为了确定最短的路由路径,因此,经过更新的路由项即为当前芯片能够跳转的所有芯片对应的路由项,因此,依据经过更新的路由项数量即可确定环形互连结构的芯片数量。
作为一种可选的实施方式,所述多芯片环形互连结构包括:一个以上的处理器中包含的至少两个芯片形成的环形互连结构。作为一种优选的实施方式所述一个以上的处理器包括单芯片封装处理器、同构多芯片封装处理器或者异构多芯片封装处理器中的一种或多种。
在一些实施例中,环形互连结构可以为多个同构多芯片封装的处理器中的芯片组成的环形互连结构,如图2所示,当然,也可以为一个同构多芯片封装的处理器中的芯片组成的环形互连结构。或者,环形互连结构可以为多个单芯片封装的处理器中的芯片组成的环形互连结构,如图3所示。或者,环形互连结构可以为多个异构多芯片封装的处理器中的芯片组成的环形互连结构,如图4所示,当然,也可以为一个异构多芯片封装的处理器中的芯片组成的环形互连结构。当然,也可以采用一个或多个单芯片封装处理器与一个或多个同构多芯片封装的处理器或者一个或多个异构多芯片封装的处理器中的芯片组成的环形互连结构;还可以采用一个或多个同构多芯片封装的处理器与一个或多个异构多芯片封装的处理器中的芯片组成的环形互连结构。
如图5所示,为图2所示的环形互连结构的具体的路由确定过程,具体如下:
1)每个芯片通过主板上的引线得到一个处理器内的芯片数目c以及自己是第i个处理器的第j个芯片,计算后得到自己的逻辑节点号:CHIP_NUM=c*i+j;在该步骤中,本领域技术人员应当理解,处理器的编号通常从0开始,因此,CHIP_NUM=c*i+j;如果芯片的逻辑节点编号为从1开始时,CHIP_NUM=c*(i-1)+j。
2)根据互连支持的最大芯片数目N,记n=N-1,初始化整个路由表RoutingTable[0…n]为N(也可以是任意绝对值大于N的值)。
以主板支持的最大的互连数为16,当前芯片为芯片2为例,得到如下的路由表:
索引 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
路由项 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16
3)初始化到芯片本地的路由项为0,即初始化RoutingTable[CHIP_NUM]=0;此时,路由表如下:
4)开始逆时针计算,迭代更新路由表。
a)初始化Hop为1,标识逆时针计算远端芯片的路径长度;
b)如果Hop小于等于N,则执行后续操作;否则结束逆时针计算,转到步骤5;
c)从芯片的逆时针接口跨越Hop个连接访问远端芯片,获取其逻辑节点号,保存为REMOTE_CHIP_NUM;
d)读取路由表中远端芯片的路由项RoutingTable[REMOTE_CHIP_NUM],并与Hop进行比较;
e)如果Hop小于旧的路由项,则更新路由项的值为Hop;否则标识已经构成环路,结束逆时针计算,转到步骤5;
f)Hop的值加1,转到步骤b;
上述步骤执行完毕后,路由表如下:
索引 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
路由项 6 7 0 1 2 3 4 5 16 16 16 16 16 16 16 16
5)开始顺时针计算,迭代更新路由表。
a)初始化Hop为1,标识顺时针计算远端芯片的路径长度;
b)如果Hop小于等于N,则执行后续操作;否则结束顺时针计算,转到步骤6;
c)从芯片的顺时针接口跨越Hop个连接访问远端芯片,获取其逻辑节点号,保存为REMOTE_CHIP_NUM;
d)读取路由表中远端芯片的路由项RoutingTable[REMOTE_CHIP_NUM],并与Hop进行比较;
e)如果Hop小于旧的路由项,则更新路由项的值为-Hop;否则标识已经到达整个环路的中间节点,结束顺时针计算,转到步骤6;
上述步骤执行完毕后,路由表如下:
索引 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
路由项 -2 -1 0 1 2 3 4 -3 16 16 16 16 16 16 16 16
6)路由项计算结束。
本发明实施例还提供一种环形互连结构路由确定装置,如图6所示,包括:
节点号获取模块610,用于获取当前芯片在主板上的逻辑节点号;
在一些实施例中,在获取当前芯片在主板上的逻辑节点号时,可以依据主板的引线获取,例如,依据主板上的引线获取当前芯片所在的处理器时第几个处理器,每个处理器芯片内有多少个芯片,以及当前芯片是所在的处理器的第几个芯片,从而,确定当前芯片的逻辑节点号。
初始化模块620,用于将路由表中的当前芯片跳转至对应芯片的路由项设置为不小于主板支持的最大芯片数量的数值;
在一些实施例中,在当前芯片与其他芯片之间的跳转距离,不可能超过主板支持的最大芯片数量,因此,在路由表开始更新之前,采用本步骤的设置方式,能够在后续的更新过程中将当前芯片与所有芯片之间的路由项进行更新。
计算模块630,用于分别沿所述环形互连结构的第一方向和第二方向依次计算所述多个芯片与当前芯片的跳转距离;
在一些实施例中,对于环形互连结构中的任意一个芯片来说,其方向仅有两个,并且,该两个方向是相反的。例如,如图2所示,对于其中的任意一个芯片和其他芯片之间的路由路径来说,仅有沿加号方向路由和沿减号方向路由两种,因此,可以采用沿加号方向的路由路径为第一方向,沿减号方向的路由路径为第二方向,也可以采用沿减号方向的路由路径为第一方向,沿加号方向的路由路径为第二方向。
更新模块640,用于当所述跳转距离小于当前路由项时,将所述跳转距离确定为当前芯片跳转至对应芯片的路由项。
在一些实施例中,由于在沿第一方向计算多个芯片与当前芯片的跳转距离时,当前芯片跳转至对应芯片的路由项为不小于主板支持的最大芯片数量的数值;因此,在沿第一方向计算多个芯片与当前芯片的跳转距离时,会更新当前芯片与所有芯片之间的路由项。在沿第二方向计算多个芯片与当前芯片的跳转距离时,当前芯片跳转至对应芯片的当前路由项为当前芯片沿第一方向的路由的路由项;因此,在沿第二方向计算多个芯片与当前芯片的跳转距离时,实际上仅计算一半数量的芯片与当前芯片之间的路由项。
本实施例提供的环形互连结构路由确定方法在单个芯片无法预先确定整个互连结构中芯片数目的场景下,通过在环形互连结构上依次进行第一方向和第二方向的路由项更新,可以有效地计算芯片之间的路由路径。由于在初始状态下路由项设置为不小于主板支持的最大芯片数量,并且将跳转距离小于当前路由项作为更新条件,从而,在沿第一方向进行路由项确定的过程中,能够在当前芯片对每个芯片的路由项更新一次之后及时停止。而在沿第二方向进行路由项确定的过程中,仍然采用跳转距离小于当前路由项作为更新条件能够使当前芯片对每个芯片的路由项都能够更新为最短路径。
作为一种可选的实施方式,所述计算模块630包括:
方向更换单元631,用于在沿所述环形互连结构的第一方向计算当前芯片与所述多个芯片的跳转距离过程中,当所述跳转距离不小于当前路由项时,开始沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离。在一些实施例中,沿所述环形互连结构的第一方向计算当前芯片与所述多个芯片的跳转距离的过程结束后,开始执行沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离的过程,为了使沿第一方向和沿第二方向的计算过程顺利衔接,在本实施方式中,以当所述跳转距离不小于当前路由项时作为沿第二方向的计算过程开始的触发条件。
作为一种可选的实施方式,所述计算模块630还包括
路由表确定单元632,用于在沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离过程中,当所述跳转距离不小于当前路由项时,确定当前路由表为当前芯片的路由表。在一些实施例中,当沿第二方向计算当前芯片与所述多个芯片的跳转距离过程中,此时的路由项是由大到小排列的,因此,当所述跳转距离不小于当前路由项时,可以确定当前芯片与所有的芯片之间的路由项都为最短的路由项,因此,此时可以将当前路由表作为当前芯片的路由表进行保存。
本领域普通技术人员可以理解实现上述方法实施例中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (12)

1.一种环形互连结构路由确定方法,其特征在于,应用于多个芯片的环形互连,所述方法包括:
获取多个芯片中的当前芯片在主板上的逻辑节点号;
将路由表中的当前芯片跳转至多个芯片中的对应芯片的路由项设置为不小于主板支持的最大芯片数量的数值,并将当前芯片在主板上的逻辑节点号对应的路由项记录为0;
依次沿所述环形互连结构的第一方向和第二方向依次计算所述多个芯片与当前芯片的跳转距离,并获取对应芯片在主板上的逻辑节点号;
当沿第一方向和第二方向计算的所述跳转距离中的任一个小于当前路由项时,将所述跳转距离确定为当前芯片跳转至对应芯片的路由项,并采用所述对应芯片在主板上的逻辑节点号作为所述路由项的索引。
2.根据权利要求1所述环形互连结构路由确定方法,其特征在于,在沿所述环形互连结构的第一方向计算当前芯片与所述多个芯片的跳转距离过程中,当所述跳转距离不小于当前路由项时,开始沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离。
3.根据权利要求2所述的环形互连结构路由确定方法,其特征在于,在沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离过程中,当所述跳转距离不小于当前路由项时,确定当前路由表为当前芯片的路由表。
4.根据权利要求1所述的环形互连结构路由确定方法,其特征在于,获取多个芯片中的当前芯片在主板上的逻辑节点号包括:
依据当前芯片对应的当前处理器序号、处理器包含的芯片数量以及当前芯片在当前处理器中的序号,确定当前芯片的逻辑节点号。
5.根据权利要求1所述的环形互连结构路由确定方法,其特征在于,确定当前芯片的逻辑节点号包括:
将处理器序号小于当前处理器序号的处理器数量与处理器包含的芯片数量相乘,得到第一数量;
将所述第一数量与当前芯片在当前处理器中的序号相加,得到当前芯片的逻辑节点号。
6.根据权利要求1所述的环形互连结构路由确定方法,其特征在于,依次沿所述环形互连结构的第一方向和第二方向依次计算所述多个芯片与当前芯片的跳转距离,包括:
沿所述环形互连结构的第一方向依次计算所述多个芯片与当前芯片的跳转距离;当所述跳转距离小于当前路由项时,将所述跳转距离的正值更新为当前芯片跳转至对应芯片的路由项;
沿所述环形互连结构的第二方向依次计算所述多个芯片与当前芯片的跳转距离;当所述跳转距离小于当前路由项时,将所述跳转距离的负值更新为当前芯片跳转至对应芯片的路由项。
7.根据权利要求1所述的环形互连结构路由确定方法,其特征在于,所述方法还包括:依据路由表中小于所述主板支持的最大芯片数量的路由项,确定所述环形互连结构的芯片数量。
8.根据权利要求1所述的环形互连结构路由确定方法,其特征在于,所述环形互连结构包括:一个以上的处理器中包含的至少两个芯片形成的环形互连结构。
9.根据权利要求8所述的环形互连结构路由确定方法,其特征在于,所述一个以上的处理器包括单芯片封装处理器、同构多芯片封装处理器或者异构多芯片封装处理器中的一种或多种。
10.一种环形互连结构路由确定装置,其特征在于,应用于多个芯片的环形互连,所述装置包括:
节点号获取模块,用于获取多个芯片中的当前芯片在主板上的逻辑节点号;
初始化模块,用于将路由表中的当前芯片跳转至多个芯片中的对应芯片的路由项设置为不小于主板支持的最大芯片数量的数值,并将当前芯片在主板上的逻辑节点号对应的路由项记录为0;
计算模块,用于依次沿所述环形互连结构的第一方向和第二方向依次计算所述多个芯片与当前芯片的跳转距离,并获取对应芯片在主板上的逻辑节点号;
确定模块,用于当沿第一方向和第二方向计算的所述跳转距离中的任一个小于当前路由项时,将所述跳转距离确定为当前芯片跳转至对应芯片的路由项,并采用所述对应芯片在主板上的逻辑节点号作为所述路由项的索引。
11.根据权利要求10所述的环形互连结构路由确定装置,其特征在于,所述计算模块包括:
方向更换单元:用于在沿所述环形互连结构的第一方向计算当前芯片与所述多个芯片的跳转距离过程中,当所述跳转距离不小于当前路由项时,开始沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离。
12.根据权利要求11所述的环形互连结构路由确定方法,其特征在于,所述计算模块还包括:
路由表确定单元,用于在沿所述环形互连结构的第二方向计算当前芯片与所述多个芯片的跳转距离过程中,当所述跳转距离不小于当前路由项时,确定当前路由表为当前芯片的路由表。
CN202011424761.1A 2020-12-08 2020-12-08 环形互连结构路由确定方法及装置 Active CN112416852B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011424761.1A CN112416852B (zh) 2020-12-08 2020-12-08 环形互连结构路由确定方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011424761.1A CN112416852B (zh) 2020-12-08 2020-12-08 环形互连结构路由确定方法及装置

Publications (2)

Publication Number Publication Date
CN112416852A CN112416852A (zh) 2021-02-26
CN112416852B true CN112416852B (zh) 2023-11-21

Family

ID=74776013

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011424761.1A Active CN112416852B (zh) 2020-12-08 2020-12-08 环形互连结构路由确定方法及装置

Country Status (1)

Country Link
CN (1) CN112416852B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116501691B (zh) * 2023-06-27 2023-09-22 北京燧原智能科技有限公司 互联系统的自动化布局方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0669584A2 (en) * 1994-02-24 1995-08-30 Tandem Computers Incorporated Massively parallel multiprocessor system with fault-tolerant interprocessor network
US6453406B1 (en) * 1990-10-17 2002-09-17 Compaq Computer Corporation Multiprocessor system with fiber optic bus interconnect for interprocessor communications
CN102780628A (zh) * 2012-07-31 2012-11-14 中国人民解放军国防科学技术大学 面向多核微处理器的片上互连网络路由方法
CN104303174A (zh) * 2012-06-25 2015-01-21 英特尔公司 通过处理器间互连来隧道传输平台管理消息
CN104718537A (zh) * 2012-10-18 2015-06-17 高通股份有限公司 基于处理器的混合环形总线互连件

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030206527A1 (en) * 1995-10-02 2003-11-06 Telefonaktiebolaget Lm Ericsson Transmitting data between multiple computer processors
US7786757B2 (en) * 2008-03-21 2010-08-31 Agate Logic, Inc. Integrated circuits with hybrid planer hierarchical architecture and methods for interconnecting their resources
JP5920105B2 (ja) * 2012-08-16 2016-05-18 富士通株式会社 演算処理装置および演算処理装置の制御方法
US8885510B2 (en) * 2012-10-09 2014-11-11 Netspeed Systems Heterogeneous channel capacities in an interconnect
WO2015066366A1 (en) * 2013-10-30 2015-05-07 Huawei Technologies Co., Ltd. Network topology of hierarchical ring with gray code and binary code
US9529774B2 (en) * 2013-10-30 2016-12-27 Futurewei Technologies, Inc. Network topology of hierarchical ring with gray coding shortcuts
US11056452B2 (en) * 2017-10-26 2021-07-06 Intel Corporation Interface bus for inter-die communication in a multi-chip package over high density interconnects

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453406B1 (en) * 1990-10-17 2002-09-17 Compaq Computer Corporation Multiprocessor system with fiber optic bus interconnect for interprocessor communications
EP0669584A2 (en) * 1994-02-24 1995-08-30 Tandem Computers Incorporated Massively parallel multiprocessor system with fault-tolerant interprocessor network
CN104303174A (zh) * 2012-06-25 2015-01-21 英特尔公司 通过处理器间互连来隧道传输平台管理消息
CN102780628A (zh) * 2012-07-31 2012-11-14 中国人民解放军国防科学技术大学 面向多核微处理器的片上互连网络路由方法
CN104718537A (zh) * 2012-10-18 2015-06-17 高通股份有限公司 基于处理器的混合环形总线互连件

Also Published As

Publication number Publication date
CN112416852A (zh) 2021-02-26

Similar Documents

Publication Publication Date Title
US5349536A (en) Method for optimally placing components of a VLSI circuit
US8601409B1 (en) Compression method and system for use with multi-patterning
US8930869B2 (en) Method, program, and apparatus for aiding wiring design
US6694502B2 (en) Data structure for fine-grid multi-level VLSI routing and method for storing the data structure in a computer readable medium
CN112416852B (zh) 环形互连结构路由确定方法及装置
CN115829017B (zh) 一种基于芯粒的数据处理的方法、装置、介质及设备
CN112613266A (zh) 一种片上网络拓扑结构、路由路径确定方法、装置及电子设备
US8769244B2 (en) SIMD parallel computer system, SIMD parallel computing method, and control program
CN105809389A (zh) 一种bom树的生成方法及装置
US20060112366A1 (en) Method and system for optimized automated IC package pin routing
US8898606B1 (en) Layout pattern correction for integrated circuits
US10719982B2 (en) Surface extrction method, apparatus, and non-transitory computer readable storage medium thereof
CN114695220A (zh) 晶圆的传输方法、装置及半导体工艺设备
CN110032407B (zh) 提升cpu并行性能的方法及装置和电子设备
Kubo et al. Global routing by iterative improvements for two-layer ball grid array packages
US7676781B1 (en) Method and mechanism for implementing a minimum spanning tree
CN113743044B (zh) 时序路径修正方法、装置、介质及芯片结构
JP2007241516A (ja) 施設検索プログラム
CN109753533A (zh) 一种多源关系型数据库客户端开发方法及装置
US7725869B1 (en) Method and apparatus for modeling multiple instances of an electronic circuit using an imperative programming language description
US7017139B2 (en) Triangular assignment of pins used for diagonal interconnections between diagonal chips in a multi-chip module
CN115563050A (zh) 众核计算芯片及数据访问方法
CN111950228A (zh) 布线方法、装置、设备及存储介质
US7401203B2 (en) Method for wiring allocation and switch configuration in a multiprocessor environment
CN114115804B (zh) 一种乘法器转换方法、系统、设备以及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant