CN115297060A - 片上网络、数据转发方法和电子设备 - Google Patents
片上网络、数据转发方法和电子设备 Download PDFInfo
- Publication number
- CN115297060A CN115297060A CN202211232763.XA CN202211232763A CN115297060A CN 115297060 A CN115297060 A CN 115297060A CN 202211232763 A CN202211232763 A CN 202211232763A CN 115297060 A CN115297060 A CN 115297060A
- Authority
- CN
- China
- Prior art keywords
- port
- node
- ports
- intermediate node
- flow
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/7825—Globally asynchronous, locally synchronous, e.g. network on chip
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种片上网络、数据转发方法和电子设备,涉及集成电路领域,用于实现NOC流量均衡。片上网络包括:源节点、中间节点和目标节点;源节点,用于根据目标节点的三维绝对坐标和源节点的三维绝对坐标确定中间节点,并向中间节点发送数据和端口信息;其中,端口信息用于指示中间节点中能够向目标节点转发数据的两个端口;中间节点,用于根据两个端口在预设时间内的流量从中选择一个端口,向目标节点转发数据。
Description
技术领域
本申请涉及集成电路领域,尤其涉及一种片上网络(network on chip,NOC)、数据转发方法和电子设备。
背景技术
随着半导体工艺技术的不断发展和进步,出现了三维集成电路,以降低集成电路的功耗并提高器件的集成度,NOC即是一种三维集成电路。
目前在NOC中当数据从源节点经过中间节点向目标节点转发时,中间节点所选择的转发端口的随机性较高,使得各节点流量难以均衡,使得各节点发热也不平衡。
发明内容
本申请实施例提供一种片上网络、数据转发方法和电子设备,用于实现NOC流量均衡。
为达到上述目的,本申请的实施例采用如下技术方案:
第一方面,提供了一种片上网络,包括:源节点、中间节点和目标节点;源节点,用于根据目标节点的三维绝对坐标和源节点的三维绝对坐标确定中间节点,并向中间节点发送数据和端口信息;其中,端口信息用于指示中间节点中能够向目标节点转发数据的两个端口;中间节点,用于根据两个端口在预设时间内的流量从中选择一个端口,向目标节点转发数据。
本申请实施例提供的片上网络,源节点根据目标节点的三维绝对坐标和源节点的三维绝对坐标确定中间节点后,向中间节点发送数据和端口信息,端口信息指示了中间节点中能够向目标节点转发数据的两个端口。中间节点根据这两个端口在预设时间内的流量从中选择一个端口,来向目标节点转发数据,使得中间节点能够均衡这两个端口的流量,从整个片上网络的角度看,实现了片上网络各个节点的流量均衡,进而实现整个片上网络各节点发热均衡。
在一种可能的实施方式中,中间节点具体用于:周期性地根据两个端口在预设时间内的流量从中选择一个端口。
也就是说,通过周期性统计端口在预设时间内的流量,从而选择端口转发数据,实现了各个端口流量的平衡。
在一种可能的实施方式中,两个端口包括第一端口和第二端口,中间节点具体用于:如果在预设时间内第一端口的流量大于第二端口的流量,则选择第二端口,如果在预设时间内第一端口的流量小于第二端口的流量,则选择第一端口,如果在预设时间内第一端口的流量等于第二端口的流量,则任意选择第一端口或第二端口。
也就是说,中间节点的路由器选择流量小的端口来向目标节点转发数据,从而实现流量平衡,进而实现整个片上网络各节点发热均衡。
在一种可能的实施方式中,源节点具体用于:根据目标节点的三维绝对坐标和源节点的三维绝对坐标,确定目标节点在三维相对坐标系中所处于的象限,三维相对坐标系以源节点为坐标原点;根据目标节点在三维相对坐标系中所处于的象限以及象限对应的路由策略,确定第一路由,第一路由指沿着经过源节点的一个坐标轴方向的路由;确定第一路由与目标平面的交点为中间节点,其中,目标平面垂直于第一路由并且经过目标节点。
第二方面,提供了一种数据转发方法,包括:片上网络中的源节点根据片上网络中的目标节点的三维绝对坐标和源节点的三维绝对坐标确定片上网络中的中间节点,并向中间节点发送数据和端口信息;其中,端口信息用于指示中间节点中能够向目标节点转发数据的两个端口;中间节点根据两个端口在预设时间内的流量从中选择一个端口,向目标节点转发数据。
在一种可能的实施方式中,中间节点根据两个端口在预设时间内的流量从中选择一个端口,包括:周期性地根据两个端口在预设时间内的流量从中选择一个端口。
在一种可能的实施方式中,两个端口包括第一端口和第二端口,中间节点根据两个端口在预设时间内的流量从中选择一个端口,包括:如果在预设时间内第一端口的流量大于第二端口的流量,则中间节点选择第二端口,如果在预设时间内第一端口的流量小于第二端口的流量,则中间节点选择第一端口,如果在预设时间内第一端口的流量等于第二端口的流量,则中间节点任意选择第一端口或第二端口。
在一种可能的实施方式中,源节点根据目标节点的三维绝对坐标和源节点的三维绝对坐标确定中间节点,包括:源节点根据目标节点的三维绝对坐标和源节点的三维绝对坐标,确定目标节点在三维相对坐标系中所处于的象限,三维相对坐标系以源节点为坐标原点;源节点根据目标节点在三维相对坐标系中所处于的象限以及象限对应的路由策略,确定第一路由,第一路由指沿着经过源节点的一个坐标轴方向的路由;源节点确定第一路由与目标平面的交点为中间节点,其中,目标平面垂直于第一路由并且经过目标节点。
中间节点指从源节点至目标节点的路由中第一次拐弯处的节点。不同象限可以采用不同的路由策略,以避免产生路由死锁。
第三方面,提供了一种电子设备,包括如第一方面及其任一实施方式所述的片上网络。
第四方面,提供了一种计算机可读存储介质,包括指令,当指令在片上网络上执行时,使得片上网络执行如第二方面及其任一实施方式所述的方法。
第五方面,提供了一种包含指令的计算机程序产品,当指令在上述片上网络上运行时,使得该片上网络执行如第一方面及其任一实施方式所述的方法。
第六方面,提供了一种芯片系统,该芯片系统包括片上网络,用于支持芯片系统实现上述第一方面中所涉及的功能。在一种可能的设计中,该装置还包括接口电路,接口电路可用于从其它装置(例如存储器)接收信号,或者,向其它装置(例如通信接口)发送信号。该芯片系统可以包括芯片,还可以包括其他分立器件。
第二方面至第六方面的技术效果参照第一方面及其任一实施方式的技术效果,在此不再重复。
附图说明
图1为本申请实施例提供的一种片上网络的结构示意图;
图2为本申请实施例提供的一种数据转发方法的流程示意图;
图3为本申请实施例提供的另一种数据转发方法的流程示意图;
图4为本申请实施例提供的一种三维相对坐标系和象限分区的示意图;
图5为本申请实施例提供的一种源节点、中间节点和目标节点的示意图;
图6为本申请实施例提供的再一种数据转发方法的流程示意图;
图7为本申请实施例提供的一种电子设备的结构示意图;
图8为本申请实施例提供的一种芯片系统的结构示意图。
具体实施方式
首先对本申请涉及的一些概念进行描述。
本申请实施例涉及的术语“第一”、“第二”等仅用于区分同一类型特征的目的,不能理解为用于指示相对重要性、数量、顺序等。
本申请实施例涉及的术语“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请实施例涉及的术语“耦合”、“连接”应做广义理解,例如,可以指物理上的直接连接,也可以指通过电子器件实现的间接连接,例如通过电阻、电感、电容或其他电子器件实现的连接。
如图1所示,为一种三维的NOC的结构示意图,该NOC包括多个层11,每个层11包括多个节点12,每个节点12包括本地系统(local system,LS)和路由器(router)。LS用于实现数据处理的功能,例如,LS可以为中央处理器(central processor unit,CPU)、图形处理器(graphics processing unit,GPU)等。路由器用于实现数据转发路由的功能,位于同一层或不同层的节点12的路由器之间通过链路形成网状(mesh)总线,以实现数据在不同节点之间的转发,第一节点中的LS通过第一节点中的路由器以及第二节点中的路由器与第二节点中的LS进行通信。各个节点中的LS都可以实现本申请实施例提供的数据转发方法。
如前文所述的,目前在NOC中当数据从源节点经过中间节点向目标节点转发时,中间节点所选择的转发端口的随机性较高,使得各节点流量难以均衡,使得各节点发热也不平衡。因此本申请提供的数据转发方法,中间节点通过统计在预设时间内各个端口的流量,从中选择端口转发数据,从而实现了片上网络各个节点的流量均衡,进而实现整个片上网络各节点发热均衡。
具体的,如图2所示,本申请实施例提供的数据转发方法包括:
S101、源节点根据目标节点的三维坐标和源节点的三维坐标确定中间节点,并向中间节点发送数据和端口信息。
其中,源节点指NOC中有数据需要发送的节点,即该节点中的LS需要发送数据,由该节点中的路由器选择路由来转发数据。目标节点指NOC中的数据需要到达的节点,数据到达目标节点中的路由器后,传递给该节点中的LS进行处理。中间节点指从源节点至目标节点的路由中第一次拐弯处的节点,也是第一路由与目标平面的交点,具体见后文描述。
具体的,如图3所示,源节点根据目标节点的三维坐标和源节点的三维坐标确定中间节点具体包括步骤S1011-S1013。
S1011、源节点的路由器根据目标节点的三维绝对坐标和源节点的三维绝对坐标,确定目标节点在三维相对坐标系中所处于的象限。
如图1所示,可以以NOC中一个固定位置的节点作为坐标原点,建立三维(X/Y/Z三轴)绝对坐标系,其中,XY平面可以为最下层所在平面,Z轴可以为垂直于层XY平面的轴。目标节点的三维绝对坐标(x2,y2,z2)和源节点的三维绝对坐标(x1,y1,z1)均是指在该三维绝对坐标系中的三维绝对坐标。
如图4所示,在得到目标节点的三维绝对坐标和源节点的三维绝对坐标后,可以以源节点为坐标原点o,建立三维(x/y/z三轴)相对坐标系,其中,xy平面可以为源节点所在层的平面,z轴可以为垂直于源节点所在层的坐标轴。将该三维相对坐标系按照三个坐标轴划分为8个象限的空间区域,具体如表1所示:
表1
此时源节点的路由器可以根据目标节点的三维绝对坐标和源节点的三维绝对坐标,得到目标节点相对于源节点的相对坐标(x2-x1,y2-y1,z2-z1),从而确定目标节点在三维相对坐标系中所处于的象限。示例性的,假设源节点的绝对坐标为(0,0,0),目标节点的绝对坐标为(2,2,2),则目标节点的相对坐标也为(2,2,2),目标节点位于三维相对坐标系中的1区象限。
S1012、源节点根据目标节点在三维相对坐标系中所处于的象限以及该象限对应的路由策略,确定第一路由。
对于这8个象限可以采用不同的路由策略,以避免产生路由死锁,示例性的,如表2所示,本申请实施例提供了不同象限的路由策略,但并不意在限定于此。
表2
可选拐弯指允许数据经过的路由,即允许数据从源节点先经过第一路由到达中间节点,再在中间节点进行拐弯,经过第二路由到达目标节点。
第一路由指沿着经过源节点的一个坐标轴方向的路由。示例性的,以表2为例,如图5所示,对于1区来说,第一路由即为沿+z轴路由;对于2区来说,第一路由即为沿-y轴路由;对于3区来说,第一路由即为沿-x轴路由;对于4区来说,第一路由即为沿-x轴路由;对于5区来说,第一路由即为沿-z轴路由;对于6区来说,第一路由即为沿-y轴路由;对于7区来说,第一路由即为沿-x轴路由;对于8区来说,第一路由即为沿-x轴路由。
第二路由指数据到达中间节点后,在目标平面内的路由。示例性的,如图5所示,对于1区来说,第二路由即为(+x)(+y)平面内的路由;对于2区来说,第二路由即为(+x)(+z)平面内的路由;对于3区来说,第二路由即为(-y)(+z)平面内的路由;对于4区来说,第二路由即为(+y)(+z)平面内的路由;对于5区来说,第二路由即为(+x)(+y)平面内的路由;对于6区来说,第二路由即为(+x)(-z)平面内的路由;对于7区来说,第二路由即为(-y)(-z)平面内的路由;对于8区来说,第二路由即为(+y)(-z)平面内的路由。
示例性的,对于1区象限来说,路由策略为“先+z轴路由后(+x)(+y)平面路由”,可选拐弯有+z+x,+z+y,即表示先经过第一路由(沿+z轴)到达中间节点,在中间节点进行拐弯,在目标平面((+x)(+y)平面)内从中间节点经过第二路由(沿+x轴或沿+y轴,例如按照二维奇偶拐弯路由)到达目标节点。禁止拐变指不允许数据经过的路由。例如,对于1区来说,+x+y,+x+z表示不允许先沿+x轴路由,后在(+y)(+z)平面内沿+y轴+z轴路由。
S1013、源节点的路由器确定第一路由与目标平面的交点为中间节点。
其中,目标平面垂直于第一路由并且经过目标节点。示例性的,如图5所示,对于目标节点的相对坐标为(2,2,2)并且位于1区来说,目标平面为z=2的(+x)(+y)平面,所以得到第一路由与目标平面的交点为中间节点(0,0,2)。
源节点根据不同象限的路由策略确定端口信息。例如,如表2所示,对于目标节点位于1区来说,端口信息指示+x轴和+y轴方向的两个端口。源节点沿第一路径向中间节点发送数据和端口信息,端口信息用于指示中间节点中能够向目标节点转发数据的两个端口。
S102、中间节点的路由器根据(端口信息所指示的)两个端口在预设时间内的流量,从中选择一个端口,向目标节点转发数据。
每个节点的路由器可以包括如下六个方向的端口:+x轴、+y轴、+z轴、-x轴、-y轴、-z轴,每个节点的路由器统计这六个方向的端口的流量。
如图6所示,假设端口信息指示了第一端口和第二端口:如果在预设时间内第一端口的流量大于第二端口的流量,则中间节点的路由器选择第二端口向目标节点转发数据;如果在预设时间内第一端口的流量小于第二端口的流量,则中间节点的路由器选择第一端口向目标节点转发数据;如果在预设时间内第一端口的流量等于第二端口的流量,则中间节点的路由器任意选择第一端口或第二端口向目标节点转发数据。预设时间可以灵活设置,示例性的,预设时间T可以为1分钟。
示例性的,假设数据和端口信息从源节点(0,0,0)经过第一路径到达中间节点(0,0,2),端口信息指示了中间节点的+x轴和+y轴这两个方向的端口。如果在1分钟内+x轴方向的端口的流量大于+y轴方向的端口的流量,则中间节点的路由器选择+y轴方向的端口向目标节点(2,2,2)转发数据;如果在1分钟内+x轴方向的端口的流量小于+y轴方向的端口的流量,则中间节点的路由器选择+x轴方向的端口向目标节点(2,2,2)转发数据;如果在1分钟内+x轴方向的端口的流量等于+y轴方向的端口的流量,则中间节点的路由器任意选择+x轴方向的端口或+y轴方向的端口向目标节点(2,2,2)转发数据。
也就是说,中间节点的路由器选择流量小的端口来向目标节点转发数据,从而实现流量平衡,进而实现整个NOC各节点发热均衡。
需要说明的是,如图6所示,在初始状态下可能第一端口和第二端口均无流量,此时,中间节点的路由器可以默认选择第一端口或第二端口向目标节点转发数据。
进一步地,中间节点的路由器可以周期性地统计六个方向的端口在预设时间内的流量,从而周期性地根据(端口信息所指示的)两个端口在预设时间内的流量从中选择一个端口,向目标节点转发数据。该周期Δt可以灵活设置,示例性的,该周期为10秒。
也就是说,通过周期性统计端口在预设时间内的流量,从而选择端口转发数据,实现了各个端口流量的平衡。
示例性的,假设在t~t+Δt时间段内,中间节点的路由器选择+x轴方向的端口向目标节点转发数据,在t+Δt时刻,中间节点的路由器统计在t+Δt-T~t+Δt时间段内+x轴方向的端口的流量以及+y轴方向的端口的流量,+x轴方向的端口的流量大于+y轴方向的端口的流量,则在t+Δt~t+2Δt时间段内,中间节点的路由器选择+y轴方向的端口向目标节点转发数据。
在t+2Δt时刻,中间节点的路由器统计在t+2Δt-T~t+2Δt时间段内+x轴方向的端口的流量以及+y轴方向的端口的流量,+x轴方向的端口的流量小于+y轴方向的端口的流量,则在t+2Δt~t+3Δt时间段内,中间节点的路由器选择+x轴方向的端口向目标节点转发数据。以此类推。
本申请实施例还提供了一种电子设备,如图7所示,该电子设备70包括前文所述的NOC 701,可选的,还可以包括存储器702。NOC 701用于支持片上网络实现上述方法实施例中的各个步骤,例如图2、图3、图6所示的方法。存储器702用于存储NOC 701所使用数据和指令。
本申请实施例涉及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本申请实施例提供的片上网络、数据转发方法和电子设备,源节点根据目标节点的三维绝对坐标和源节点的三维绝对坐标确定中间节点后,向中间节点发送数据和端口信息,端口信息指示了中间节点中能够向所述目标节点转发所述数据的两个端口。中间节点根据这两个端口在预设时间内的流量从中选择一个端口,来向目标节点转发数据,使得中间节点能够均衡这两个端口的流量,从整个片上网络的角度看,实现了片上网络各个节点的流量均衡,进而实现整个片上网络各节点发热均衡。
如图8所示,本申请实施例还提供一种芯片系统。该芯片系统80包括NOC 801和至少一个接口电路802。NOC 801和至少一个接口电路802可通过线路互联。NOC 801用于支持片上网络实现上述方法实施例中的各个步骤,例如图2、图3、图6所示的方法,至少一个接口电路802可用于从其它装置(例如存储器)接收信号,或者,向其它装置(例如通信接口)发送信号。该芯片系统可以包括芯片,还可以包括其他分立器件。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质包括指令,当指令在上述片上网络上运行时,使得该片上网络执行上述方法实施例中的各个步骤,例如执行图2、图3、图6所示的方法。
本申请实施例还提供一种包括指令的计算机程序产品,当指令在上述片上网络上运行时,使得该片上网络执行上述方法实施例中的各个步骤,例如执行图2、图3、图6所示的方法。
关于芯片系统、计算机可读存储介质、计算机程序产品的技术效果参照前面方法实施例的技术效果。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个设备,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个设备,或者也可以分布到多个设备上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个设备中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个设备中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(Digital Subscriber Line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种片上网络,其特征在于,包括:源节点、中间节点和目标节点;
所述源节点,用于根据所述目标节点的三维绝对坐标和所述源节点的三维绝对坐标确定所述中间节点,并向所述中间节点发送数据和端口信息;其中,所述端口信息用于指示所述中间节点中能够向所述目标节点转发所述数据的两个端口;
所述中间节点,用于根据所述两个端口在预设时间内的流量从中选择一个端口,向所述目标节点转发所述数据。
2.根据权利要求1所述的片上网络,其特征在于,所述中间节点具体用于:
周期性地根据所述两个端口在预设时间内的流量从中选择一个端口。
3.根据权利要求1或2所述的片上网络,其特征在于,所述两个端口包括第一端口和第二端口,所述中间节点具体用于:
如果在预设时间内所述第一端口的流量大于所述第二端口的流量,则选择所述第二端口,如果在预设时间内所述第一端口的流量小于所述第二端口的流量,则选择所述第一端口,如果在预设时间内所述第一端口的流量等于所述第二端口的流量,则任意选择所述第一端口或所述第二端口。
4.根据权利要求1或2所述的片上网络,其特征在于,所述源节点具体用于:
根据所述目标节点的三维绝对坐标和所述源节点的三维绝对坐标,确定所述目标节点在三维相对坐标系中所处于的象限,所述三维相对坐标系以所述源节点为坐标原点;
根据所述目标节点在三维相对坐标系中所处于的象限以及所述象限对应的路由策略,确定第一路由,所述第一路由指沿着经过源节点的一个坐标轴方向的路由;
确定所述第一路由与目标平面的交点为所述中间节点,其中,所述目标平面垂直于所述第一路由并且经过所述目标节点。
5.一种数据转发方法,其特征在于,包括:
片上网络中的源节点根据所述片上网络中的目标节点的三维绝对坐标和所述源节点的三维绝对坐标确定所述片上网络中的中间节点,并向所述中间节点发送数据和端口信息;其中,所述端口信息用于指示所述中间节点中能够向所述目标节点转发所述数据的两个端口;
所述中间节点根据所述两个端口在预设时间内的流量从中选择一个端口,向所述目标节点转发所述数据。
6.根据权利要求5所述的方法,其特征在于,所述中间节点根据所述两个端口在预设时间内的流量从中选择一个端口,包括:
所述中间节点周期性地根据所述两个端口在预设时间内的流量从中选择一个端口。
7.根据权利要求5或6所述的方法,其特征在于,所述两个端口包括第一端口和第二端口,所述中间节点根据所述两个端口在预设时间内的流量从中选择一个端口,包括:
如果在预设时间内所述第一端口的流量大于所述第二端口的流量,则所述中间节点选择所述第二端口,如果在预设时间内所述第一端口的流量小于所述第二端口的流量,则所述中间节点选择所述第一端口,如果在预设时间内所述第一端口的流量等于所述第二端口的流量,则所述中间节点任意选择所述第一端口或所述第二端口。
8.根据权利要求5或6所述的方法,其特征在于,所述源节点根据目标节点的三维绝对坐标和所述源节点的三维绝对坐标确定中间节点,包括:
所述源节点根据所述目标节点的三维绝对坐标和所述源节点的三维绝对坐标,确定所述目标节点在三维相对坐标系中所处于的象限,所述三维相对坐标系以所述源节点为坐标原点;
所述源节点根据所述目标节点在三维相对坐标系中所处于的象限以及所述象限对应的路由策略,确定第一路由,所述第一路由指沿着经过源节点的一个坐标轴方向的路由;
所述源节点确定所述第一路由与目标平面的交点为所述中间节点,其中,所述目标平面垂直于所述第一路由并且经过所述目标节点。
9.一种电子设备,其特征在于,包括如权利要求1-4任一项所述的片上网络。
10.一种计算机可读存储介质,其特征在于,包括指令,当所述指令在片上网络上执行时,使得所述片上网络执行如权利要求5-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211232763.XA CN115297060A (zh) | 2022-10-10 | 2022-10-10 | 片上网络、数据转发方法和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211232763.XA CN115297060A (zh) | 2022-10-10 | 2022-10-10 | 片上网络、数据转发方法和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115297060A true CN115297060A (zh) | 2022-11-04 |
Family
ID=83819430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211232763.XA Pending CN115297060A (zh) | 2022-10-10 | 2022-10-10 | 片上网络、数据转发方法和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115297060A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117811996A (zh) * | 2024-03-01 | 2024-04-02 | 山东云海国创云计算装备产业创新中心有限公司 | 双路径三维超立方网络的路由方法、装置、设备和介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104079480A (zh) * | 2014-05-30 | 2014-10-01 | 中国科学院计算技术研究所 | 一种三维集成电路片上网络的路由方法及其系统 |
CN104092617A (zh) * | 2014-05-30 | 2014-10-08 | 中国科学院计算技术研究所 | 一种三维集成电路片上网络路由方法及其系统 |
CN105451103A (zh) * | 2015-11-02 | 2016-03-30 | 西安电子科技大学 | 基于波长分配的三维光片上网络路由器通信系统及方法 |
CN105959239A (zh) * | 2016-04-22 | 2016-09-21 | 西安电子科技大学 | 三维光片上网络的通信方法 |
WO2017099908A1 (en) * | 2015-12-11 | 2017-06-15 | Intel Corporation | Scalable polylithic on-package integratable apparatus and method |
CN111147381A (zh) * | 2018-11-02 | 2020-05-12 | 华为技术有限公司 | 流量均衡方法和装置 |
US20200213217A1 (en) * | 2018-12-29 | 2020-07-02 | Arteris, Inc. | SYSTEM AND METHOD FOR COMPUTATIONAL TRANSPORT NETWORK-ON-CHIP (NoC) |
-
2022
- 2022-10-10 CN CN202211232763.XA patent/CN115297060A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104079480A (zh) * | 2014-05-30 | 2014-10-01 | 中国科学院计算技术研究所 | 一种三维集成电路片上网络的路由方法及其系统 |
CN104092617A (zh) * | 2014-05-30 | 2014-10-08 | 中国科学院计算技术研究所 | 一种三维集成电路片上网络路由方法及其系统 |
CN105451103A (zh) * | 2015-11-02 | 2016-03-30 | 西安电子科技大学 | 基于波长分配的三维光片上网络路由器通信系统及方法 |
WO2017099908A1 (en) * | 2015-12-11 | 2017-06-15 | Intel Corporation | Scalable polylithic on-package integratable apparatus and method |
CN105959239A (zh) * | 2016-04-22 | 2016-09-21 | 西安电子科技大学 | 三维光片上网络的通信方法 |
CN111147381A (zh) * | 2018-11-02 | 2020-05-12 | 华为技术有限公司 | 流量均衡方法和装置 |
US20200213217A1 (en) * | 2018-12-29 | 2020-07-02 | Arteris, Inc. | SYSTEM AND METHOD FOR COMPUTATIONAL TRANSPORT NETWORK-ON-CHIP (NoC) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117811996A (zh) * | 2024-03-01 | 2024-04-02 | 山东云海国创云计算装备产业创新中心有限公司 | 双路径三维超立方网络的路由方法、装置、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8819611B2 (en) | Asymmetric mesh NoC topologies | |
JP6060316B2 (ja) | NoCを構成するための方法及びシステム並びにコンピュータ可読記憶媒体 | |
US9860197B2 (en) | Automatic buffer sizing for optimal network-on-chip design | |
US9160627B2 (en) | Multiple heterogeneous NoC layers | |
US20140177473A1 (en) | Hierarchical asymmetric mesh with virtual routers | |
JP2010218364A (ja) | 情報処理システム、通信制御装置および方法 | |
US8825986B2 (en) | Switches and a network of switches | |
CN102439910A (zh) | 包括分组成单元的节点的层级结构的网络拓扑 | |
CN111080510B (zh) | 数据处理装置、方法、芯片、处理器、设备及存储介质 | |
WO2022269357A1 (en) | Deadlock-free multipath routing for direct interconnect networks | |
CN115297060A (zh) | 片上网络、数据转发方法和电子设备 | |
US10983910B2 (en) | Bandwidth weighting mechanism based network-on-chip (NoC) configuration | |
US9542317B2 (en) | System and a method for data processing with management of a cache consistency in a network of processors with cache memories | |
CN116915708A (zh) | 路由数据包的方法、处理器及可读存储介质 | |
US10592465B2 (en) | Node controller direct socket group memory access | |
Ahmad et al. | Congestion‐Aware Routing Algorithm for NoC Using Data Packets | |
WO2016112854A1 (zh) | 确定信息的传输路径的方法和节点 | |
Wang et al. | An adaptive partition-based multicast routing scheme for mesh-based networks-on-chip | |
US9762474B2 (en) | Systems and methods for selecting a router to connect a bridge in the network on chip (NoC) | |
US9864728B2 (en) | Automatic generation of physically aware aggregation/distribution networks | |
EP4283479A1 (en) | Interconnection system, data transmission method, and chip | |
US9774498B2 (en) | Hierarchical asymmetric mesh with virtual routers | |
CN110401594A (zh) | 报文转发方法、装置、电子设备及机器可读存储介质 | |
Lei et al. | Vertical-mesh-conscious-dynamic routing algorithm for 3D NoCs | |
MM et al. | Dynamic communication performance of a hierarchical torus network under non-uniform traffic patterns |
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 |