CN117135133B - 一种Chiplet芯片内的网络互连方法 - Google Patents
一种Chiplet芯片内的网络互连方法 Download PDFInfo
- Publication number
- CN117135133B CN117135133B CN202311361121.4A CN202311361121A CN117135133B CN 117135133 B CN117135133 B CN 117135133B CN 202311361121 A CN202311361121 A CN 202311361121A CN 117135133 B CN117135133 B CN 117135133B
- Authority
- CN
- China
- Prior art keywords
- chiplet
- network
- management module
- data
- network interconnection
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 230000005540 biological transmission Effects 0.000 claims abstract description 42
- 230000002776 aggregation Effects 0.000 claims abstract description 27
- 238000004220 aggregation Methods 0.000 claims abstract description 27
- 238000012546 transfer Methods 0.000 claims abstract description 16
- 230000007246 mechanism Effects 0.000 claims abstract description 4
- 230000006870 function Effects 0.000 claims description 34
- 238000004891 communication Methods 0.000 claims description 22
- 238000005457 optimization Methods 0.000 claims description 20
- 238000003860 storage Methods 0.000 claims description 18
- 230000009467 reduction Effects 0.000 claims description 14
- 230000035945 sensitivity Effects 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 11
- 238000012544 monitoring process Methods 0.000 claims description 4
- 238000012216 screening Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 230000002068 genetic effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229940073619 encare Drugs 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010429 evolutionary process Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/109—Integrated on microchip, e.g. switch-on-chip
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/112—Switch control, e.g. arbitration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/113—Arrangements for redundant switching, e.g. using parallel planes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/15—Interconnection of switching modules
- H04L49/1515—Non-blocking multistage, e.g. Clos
- H04L49/1523—Parallel switch fabric planes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种Chiplet芯片内的网络互连方法,属于集成电路技术领域,方法包括:当网络互连管理模块监测到出现超时Chiplet,开启延迟触发机制并进入调度模式,获取当前需要向超时Chiplet发送的所有数据包,通知所有相关的发送Chiplet将数据包发送至被确定的中转Chiplet;在收到网络互连管理模块的数据聚合度和网络编码的冗余度的参数指示后,中转Chiplet根据指示对小数据包进行网络编码,将网络编码后的数据包发送给超时Chiplet。本发明提高了Chiplet芯片内网络互连数据传输的效率和可靠性,优化了芯片系统的性能。
Description
技术领域
本发明属于集成电路技术领域,尤其涉及一种Chiplet芯片内的网络互连方法。
背景技术
随着半导体技术的快速发展,单块芯片的集成度和处理能力已经达到了极限。为了进一步提升芯片的性能和功能,芯片设计者开始采用Chiplet(芯片片段)的设计方法。Chiplet是一种新型的芯片设计和制造方式,它将不同功能的芯片片段(例如处理器核心、内存、输入输出接口等)集成在一块基板上,通过高速互连网络进行数据和信号的传输。
在Chiplet芯片的设计和应用中,网络互连是一个关键的技术问题。由于Chiplet之间的互连网络复杂,数据的传输和调度需要高效和可靠。传统的芯片内网络互连方法主要包括总线、交叉开关、网络-on-Chip(NoC)等。然而,这些方法在处理大规模、高速的数据传输时,可能会面临延迟、带宽利用率低、能耗高等问题。
为了解决这些问题,研究者提出了各种优化网络互连的方法。然而,这些方法往往需要复杂的计算和调度,且难以同时满足高效率、高可靠性和低能耗的需求。另外在实际应用中,由于各种原因,例如处理速度慢、接口拥堵等,某些Chiplet可能无法及时处理接收到的数据,导致数据的延迟和丢失,影响整个芯片系统的性能和稳定性。
因此,如何有效地处理超时Chiplet,优化网络互连的效率和可靠性,是当前Chiplet芯片设计和应用中亟待解决的技术问题。
发明内容
针对上述现有技术中存在的缺陷,本发明提供一种Chiplet芯片内的网络互连方法,所述方法包括以下步骤:
当网络互连管理模块监测到出现超时Chiplet,所述网络互连管理模块开启延迟触发机制,进入调度模式;
所述网络互连管理模块获取当前发送Chiplet需要向超时Chiplet发送的所有数据包;
所述网络互连管理模块筛选出小于预设大小阈值的数据包;
所述网络互连管理模块对筛选的所有所述数据包进行评分;
根据所述数据包的评分和预设的评分阈值,网络互连管理模块确定将数据包分发到对应的中转Chiplet中,其中每个数据包根据其评分被分配到一个指定的中转Chiplet;
确定分配的中转Chiplet后,网络互连管理模块通知所有相关的发送Chiplet,将这些数据包发送至被确定的中转Chiplet;
以及,网络互连管理模块会根据评分区间确定数据聚合度,以及确定网络编码的冗余度;
在收到网络互连管理模块的数据聚合度和网络编码的冗余度的参数指示后,中转Chiplet根据指示的数据聚合度和网络编码的冗余度对接收的发送Chiplet的小数据包进行网络编码;中转Chiplet将网络编码后的数据包发送给超时Chiplet。
其中,中转Chiplet进行网络编码时选择异或XOR运算作为从发送Chiplet接收的多个数据包的编码操作。
其中,网络互连管理模块负责监测和管理Chiplet之间的数据传输;
网络互连管理模块持续监测所有Chiplet的数据传输状态,通过在每个Chiplet和管理模块之间建立一个反馈循环来实现;
在这个反馈循环中,每个Chiplet都会定期向管理模块发送其当前的数据包传输状态,所述数据包传输状态中包括每个数据包的元信息;
所述数据包的元信息包括来源Chiplet、目标Chiplet、数据包的大小;
网络互连管理模块根据所有数据包的源信息来确定每个Chiplet是否为超时Chiplet。
其中,网络互连管理模块根据所有数据包的源信息来确定每个Chiplet是否为超时Chiplet,包括定义:
P:Chiplet已经处理的数据包集合;
K:所有等待发送或正在发送的数据包集合;
m_i:包含所述目标Chiplet的第i个待发送数据包的大小;
对于每一个目标Chiplet,将包含所述目标Chiplet的第i个待发送数据包的大小m_i叠加,得到待处理数据总量sum(m_i);
将每一个Chiplet对应的信息里找到已经处理的数据包,叠加各个数据包的数据包大小获得该Chiplet已处理数据总量processed_data;
对于每一个Chiplet,确定其为超时Chiplet包括,结合待处理和已处理的数据总量,得到sum_weighted:
,其中w是权重;
如果sum_weighted超过了一个预设的阈值,网络互连管理模块就判断对应的Chiplet是超时Chiplet。
其中,网络互连管理模块根据网络的整体状态来决定是否需要进入调度模式,包括:
网络互连管理模块检测到网络中存在超时Chiplet决定进入调度模式;
在调度模式中,网络互连管理模块会选择与超时Chiplet的布线距离短且剩余存储资源和通信资源足够的Chiplet作为中转Chiplet;
当超时Chiplet的等待数据包传输完毕时,网络互连管理模块决定退出调度模式,恢复正常的数据传输模式。
其中,在确定了超时的Chiplet后,网络互连管理模块需要对所有向该超时Chiplet等待发送的数据包进行筛选,对小于阈值的等待发送的数据包进行评分,以评估所述数据包的优先处理程度,包括使用如下公式计算每个小于阈值的等待发送的数据包的评分score:
,
其中,
LS是延迟敏感性,设定为[0,1],值越大表示越敏感;
PL是业务优先级,设定为[0,1],值越大表示优先级越高;
WT_norm是归一化的数据包等待时间;
PS_norm是归一化的数据包大小;
a,b,c,d是可调整的参数,分别表示延迟敏感性、业务优先级、归一化的数据包等待时间和归一化的数据包大小在计算评分时的权重;
k是控制函数的斜率的参数;
x0是控制函数的中心点的参数。
其中,网络互连管理模块选择与超时Chiplet的布线距离短且剩余存储资源和通信资源足够的Chiplet作为中转Chiplet,包括以下过程:
对Chiplet进行筛选,确定出剩余存储资源和剩余通信资源满足两个参数均大于设定阈值条件的Chiplet作为中转Chiplet,所述Chiplet不能是超时chiple。
其中,计算所有Chiplet的评分Chiplet_score,设定评分公式如下:
,
其中,Storage是Chiplet的剩余存储资源,Communication是Chiplet的剩余通信资源,Distance是Chiplet与超时Chiplet的布线距离,a、b和c是可调整的参数,表示存储资源、通信资源和布线距离在计算评分时的权重;
选择评分最高的三个Chiplet作为中转Chiplet。
其中,如果score<0.25,选择评分最低的Chiplet作为中转Chiplet;
如果0.25<=score<0.75,选择评分在第二的Chiplet作为中转Chiplet;
如果score>=0.75,选择评分最高的Chiplet作为中转Chiplet。
其中,确定了中转Chiplet后,网络互连管理模块需要通知所有相关的发送Chiplet将数据包发送至被确定的中转Chiplet,包括以下过程:
网络互连管理模块确定与各个发送Chiplet建立通信,网络互连管理模块将中转Chiplet的信息以及数据包的信息打包成一个指令,然后发送给各个发送Chiplet;
指令包括中转Chiplet的标识符用于唯一标识中转Chiplet的信息;
数据包的标识符用来唯一标识数据包的信息;
所述发送Chiplet收到网络互连管理模块的指令后,需要解析指令,获取中转Chiplet的标识符以及数据包的标识符;
发送Chiplet根据指令中的信息,将数据包发送至中转Chiplet;
当发送Chiplet内有多个对超时Chiplet等待发送的数据包时,所述指令中还可以包含对所述多个数据包的调度顺序,所述调度顺序按照优先发送score高的数据包的规则进行调度。
其中,所述至少一个中转Chiplet使用的网络编码的冗余度对应为最大化的优化函数的对应冗余度结果,所述优化函数的目标函数所有中转Chiplet的网络编码参数以及可靠性增益和延迟减益之差。
其中,网络互连管理模块确定网络编码的冗余度,确定网络编码冗余度的过程需要优化一个目标函数,所述目标函数考虑了所有中转Chiplet的网络编码参数以及可靠性增益和延迟减益之差,包括:
假设确定有N个中转Chiplet,第i个Chiplet表示为Chiplet_i,每个中转Chiplet_i的网络编码参数记为p_i,可靠性增益记为R_i,延迟减益记为D_i;
所述优化过程的目标是找到一组网络编码参数{p_1,p_2,...,p_N},使得目标函数F最大,其中F为所有中转Chiplet的可靠性增益和延迟减益之差的总和;
目标函数可表示为:F=Σ[i=1toN](R_i-D_i);
为了找到每个中转Chiplet的网络编码冗余度,需要最大化所述目标函数,即:
Maximize F=Σ[i=1toN](R_i-D_i);
此外,所述优化过程需要满足以下限制条件:
0<=p_i<=1,i=1,2,...,N;
R_i>=R_min,i=1,2,...,N;
D_i<=D_max,i=1,2,...,N;
其中,R_min和D_max分别为设定的最小的可靠性增益和最大的延迟减益。
本发明通过网络互连管理模块对数据包进行筛选、评分和分发,以及对中转Chiplet进行编码和调度,实现了对超时Chiplet的有效处理,减少超时Chiplet对整个系统性能的影响,提高数据传输的效率和可靠性。此外本发明通过网络编码冗余度的优化方法,可以进一步提高数据传输的效率和可靠性。以及通过优化每个中转Chiplet的网络编码参数,可以最大化每个中转Chiplet的可靠性增益和延迟减益之差,从而提高整个系统的性能。
附图说明
通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
图1是示出根据本发明实施例的一种Chiplet芯片内的网络互连方法的流程图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述……,但这些……不应限于这些术语。这些术语仅用来将……区分开。例如,在不脱离本发明实施例范围的情况下,第一……也可以被称为第二……,类似地,第二……也可以被称为第一……。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者装置中还存在另外的相同要素。
在复杂的芯片系统中,不同的Chiplet可能会有不同的处理速度和响应时间。当某个Chiplet无法及时处理接收到的数据时会影响整个芯片系统的性能和稳定性。此外,由于芯片内的网络互连的复杂性,如何有效地调度和管理数据的传输,以优化系统的性能和可靠性,也是一个重要的技术问题。
基于上述问题,本发明在Chiplet芯片系统设立网络互连管理模块,所述网络互连管理模块模块负责监控和管理所有Chiplet之间的数据传输,处理延迟和等待时间过长的情况。
本发明根据其角色和状态,将Chiplet芯片内的Chiplet分为三类:
(1)等待超时的Chiplet(以下称为“超时Chiplet”),所述超时Chiplet被监测到需要接收大量数据,导致向其发送数据的Chiplet等待时间过长;
(2)需要向超时Chiplet发送数据的所有Chiplet(以下称为“发送Chiplet”);
(3)至少一个其他的Chiplet,用于接收发送Chiplet的小数据包,进行网络编码,然后将编码后的数据发送给超时Chiplet(以下称为“中转Chiplet”)。
如图1所示,本发明公开了一种Chiplet芯片内的网络互连方法,所述方法包括以下步骤:
当网络互连管理模块监测到出现超时Chiplet,所述网络互连管理模块开启延迟触发机制,进入调度模式。
所述网络互连管理模块获取当前发送Chiplet需要向超时Chiplet发送的所有数据包。
所述网络互连管理模块筛选出小于预设大小阈值的数据包。
所述网络互连管理模块对筛选的所有所述数据包进行评分。
根据所述数据包的评分和预设的评分阈值,网络互连管理模块确定将数据包分发到对应的中转Chiplet中。其中,每个数据包根据其评分被分配到一个指定的中转Chiplet。
确定分配的中转Chiplet后,网络互连管理模块通知所有相关的发送Chiplet,将这些数据包发送至被确定的中转Chiplet。
以及,网络互连管理模块会根据评分区间确定数据聚合度,以及确定网络编码的冗余度;
在收到网络互连管理模块的数据聚合度和网络编码的冗余度的参数指示后,中转Chiplet根据指示的数据聚合度和网络编码的冗余度对接收的发送Chiplet的小数据包进行网络编码。然后,中转Chiplet将网络编码后的数据包发送给超时Chiplet。
可选地,所述至少一个中转Chiplet使用的网络编码的冗余度对应为最大化的优化函数的对应冗余度结果,所述优化函数的目标函数所有中转Chiplet的网络编码参数以及可靠性增益和延迟减益之差。
本发明通过网络互连管理模块对数据包进行筛选、评分和分发,以及对中转Chiplet进行编码和调度,实现了对超时Chiplet的有效处理,减少超时Chiplet对整个系统性能的影响,提高数据传输的效率和可靠性。此外本发明通过网络编码冗余度的优化方法,可以进一步提高数据传输的效率和可靠性。以及通过优化每个中转Chiplet的网络编码参数,可以最大化每个中转Chiplet的可靠性增益和延迟减益之差,从而提高整个系统的性能。
在传统的网络中,信息包(或数据包)被视为不可分割的整体,而在网络编码中,信息包可以被编码和组合,从而可以通过多个路径并行发送,提高网络的吞吐量和可靠性。此外,网络编码是在网络的节点对收到的数据包进行某种编码操作(如异或操作),然后将编码后的数据包发送出去。这样,即使某些数据包在传输过程中丢失,接收端也可以通过解码收到的其他数据包来还原丢失的数据包。
在某一时刻,发送Chiplet需要向超时Chiplet发送一组数据包。在没有网络编码的情况下,如果某些数据包在传输过程中丢失,发送Chiplet需要重新发送这些数据包,这会增加网络的负载和延迟。而且,由于超时Chiplet的等待时间过长,可能会导致其他Chiplet向其发送数据时出现等待时间过长的情况,使用网络编码,发送Chiplet可以通过中转Chiplet将这组数据包进行编码,生成编码数据包,然后发送给超时Chiplet。
在超时Chiplet端,即使某些数据包在传输过程中丢失,也可以通过解码收到的其他数据包来还原丢失的数据包,从而提高数据传输的可靠性。
设有三个源节点S1、S2和S3,它们需要向目标节点T发送数据包P1、P2和P3,所述三个数据包较小,如果不使用网络编码,那么S1、S2和S3需要分别将P1、P2和P3发送给T,总共需要三个时间单位。但如果使用网络编码,那么在一个中间节点M,可以将P1、P2和P3编码为一个新的数据包P,中间节点M接收到数据包P1、P2和P3后,进行网络编码。网络编码就是对这些数据包进行某种线性组合。例如选择异或(XOR)运算作为编码操作,生成新的数据包P:P=P1XORP2XORP3。然后将P发送给T,由于三个数据包P1、P2和P3较小,编码组合后的数据包的发送仍然只需要一个时间单元。在T接收到P后,可以通过解码恢复出P1、P2和P3。因此,在超时Chiplet端,通过使用网络编码,可以在相同的网络条件下,提高数据传输的效率。可见,由于使用组合数据包发送,所以可以减少超时Chiplet的等待时间,提高整个系统的效率。
在某一实施例中,本发明的网络互连管理模块负责监测和管理Chiplet之间的数据传输。网络互连管理模块需要持续监测所有Chiplet的数据传输状态,通过在每个Chiplet和管理模块之间建立一个反馈循环来实现。在这个反馈循环中,每个Chiplet都会定期向管理模块发送其当前的数据包传输状态(等待发送的数据包,正在发送的数据包,已经接收到的数据包),所述数据包传输状态中包括每个数据包的元信息。所述数据包的元信息包括来源Chiplet、目标Chiplet、数据包的大小。管理模块可以通过读取这些元信息来获取数据包的信息。网络互连管理模块根据所有数据包的源信息来确定每个Chiplet是否为超时Chiplet。
网络互连管理模块根据网络的整体状态来决定是否需要进入调度模式。网络互连管理模块检测到网络中存在超时Chiplet决定进入调度模式。在调度模式中,网络互连管理模块会选择与超时Chiplet的布线距离短且剩余存储资源和通信资源足够的Chiplet作为中转Chiplet。
当超时Chiplet的等待数据包传输完毕时,网络互连管理模块决定退出调度模式,恢复正常的数据传输模式。
在某一实施例中,网络互连管理模块根据所有数据包的源信息来确定每个Chiplet是否为超时Chiplet,包括定义:
P:Chiplet已经处理的数据包集合;
K:所有等待发送或正在发送的数据包集合;
m_i:包含所述目标Chiplet的第i个待发送数据包的大小;
对于每一个目标Chiplet,将包含所述目标Chiplet的第i个待发送数据包的大小m_i叠加,得到待处理数据总量sum(m_i);
将每一个Chiplet对应的信息里找到已经处理的数据包,叠加各个数据包的数据包大小获得该Chiplet已处理数据总量processed_data;
对于每一个Chiplet,确定其为超时Chiplet包括,结合待处理和已处理的数据总量,得到sum_weighted:
,其中w是权重,可以根据实际需求进行设置。
如果sum_weighted超过了一个预设的阈值,网络互连管理模块就判断对应的Chiplet是超时的。该公式的含义是如果待接收的数据包数量很大,且已接收的数据包为正表明该目标Chiplet处于接收正常且在当前周期接收数据被占用的情况,因此,如果sum_weighted超过了一个预设的阈值,网络互连管理模块就判断这个Chiplet是超时的。
在某一实施例中,在确定了超时的Chiplet后,网络互连管理模块需要对所有向该超时Chiplet等待发送的数据包进行筛选,对小于阈值的等待发送的数据包进行评分,以评估所述数据包的优先处理程度,包括获取每个小于阈值的等待发送的数据包的如下参数并进行相应处理:
延迟敏感性LS:延迟敏感性LS可以由业务来设定,表示对延迟的敏感度,范围可以设定为[0,1],值越大表示越敏感。
业务优先级PL:延迟敏感性LS可以由业务来设定,表示业务的优先级,范围可以设定为[0,1],值越大表示优先级越高。
数据包等待时间WT:延迟敏感性LS由网络互连管理模块来计算,表示数据包在队列中等待的时间。通过WT_norm=WT/max_WT的方式来进行归一化,其中max_WT是当前所有数据包等待时间的最大值。
数据包大小PS:数据包大小PS表示数据包的大小,通过PS_norm=1-PS/max_PS的方式来进行归一化,其中max_PS是当前所有数据包大小的最大值。假设较小数据包的优先发送比大数据包优先发送更有利于减少超时Chiplet存储资源利用的压力,因此数据包大小越小,归一化后的值越大。
最后,使用如下公式计算每个小于阈值的等待发送的数据包的评分score:
,
其中,
LS是延迟敏感性,设定为[0,1],值越大表示越敏感。
PL是业务优先级,设定为[0,1],值越大表示优先级越高。
WT_norm是归一化的数据包等待时间,表示归一化的所述数据包在队列中等待的时间。
PS_norm是归一化的数据包大小,假设小的数据包应该优先发送,数据包大小越小,归一化后的值越大。
a,b,c,d是可调整的参数,可以根据实际需求进行调整,它们分别表示延迟敏感性、业务优先级、归一化的数据包等待时间和归一化的数据包大小在计算评分时的权重。
k是控制函数的斜率的参数,可以根据实际需求进行调整。
x0是控制函数的中心点的参数,即score=0.5时的的值。是一个线性组合,表示了延迟敏感性、业务优先级、归一化的数据包等待时间和归一化的数据包大小的综合影响。x0可以被视为是一个阈值,当线性组合的值超过x0时,评分会大于0.5,否则,评分会小于0.5。
在某一实施例中,设定三个评分区间,区间可以根据score的值确定,例如,可以设定score<0.25,0.25<=score<0.75和score>=0.75为三个区间。
在某一实施例中,网络互连管理模块会选择与超时Chiplet的布线距离短且剩余存储资源和通信资源足够的Chiplet作为中转Chiplet,包括以下过程:
对Chiplet进行筛选,确定出剩余存储资源和剩余通信资源满足条件(均大于设定阈值)的Chiplet,所述Chiplet不能是超时chiple。
计算所有Chiplet的评分,评分可以根据Chiplet的剩余存储资源和通信资源以及与超时Chiplet的布线距离计算得出。设定一个评分公式如下:
,
其中,Storage是Chiplet的剩余存储资源,Communication是Chiplet的剩余通信资源,Distance是Chiplet与超时Chiplet的布线距离,a、b和c是可调整的参数,表示存储资源、通信资源和布线距离在计算评分时的权重。
选择评分最高的三个Chiplet作为中转Chiplet。
然后,根据数据包的评分选择中转Chiplet,假设评分较高的数据包更加重要,因此应该优先发送,而评分较低的数据包可以稍微等待一下,因此可以选择资源较少的Chiplet作为中转。可选地,如果score<0.25,选择评分最低的Chiplet作为中转Chiplet;如果0.25<=score<0.75,选择评分在第二的Chiplet作为中转Chiplet;如果score>=0.75,选择评分最高的Chiplet作为中转Chiplet。
在某一实施例中,确定了中转Chiplet后,网络互连管理模块需要通知所有相关的发送Chiplet将数据包发送至被确定的中转Chiplet。包括以下过程:
网络互连管理模块确定与各个发送Chiplet建立通信,网络互连管理模块将中转Chiplet的信息以及数据包的信息打包成一个指令,然后发送给各个发送Chiplet。指令包括以下信息:
中转Chiplet的标识符用于唯一标识中转Chiplet的信息,可以是Chiplet的地址、编号或者其他唯一标识符。
数据包的标识符用来唯一标识数据包的信息,可以是数据包的序列号、时间戳或者其他唯一标识符。
所述发送Chiplet收到网络互连管理模块的指令后,需要解析指令,获取中转Chiplet的标识符以及数据包的标识符。之后,发送Chiplet根据指令中的信息,将数据包发送至中转Chiplet。可选地,当发送Chiplet内有多个对超时Chiplet等待发送的数据包时,所述指令中还可以包含对所述多个数据包的调度顺序,所述调度顺序按照优先发送score高的数据包的规则进行调度。
在某一实施例中,网络互连管理模块为每个中转Chiplet设置一个定时器,并设置数据聚合度。定时器的设定时间可以根据具体的网络状况和需求进行调整。
中转Chiplet从所有相关的发送Chiplet收集数据包。这些数据包被存储在Chiplet的缓存中,等待被发送。
根据设定的数据聚合度,中转Chiplet将收集到的数据包进行聚合。如果数据聚合度高,那么每个聚合组的数据包数量多;如果数据聚合度低,那么每个聚合组的数据包数量少。
中转Chiplet检查是否满足发送触发的条件,包括以下两个条件:
条件1,当中转Chiplet的缓存中的聚合数据包数量达到设定的数据聚合度时,触发发送操作。
条件2,当定时器到达设定的时间时,无论数据包是否达到设定的聚合度,也触发发送操作。
一旦满足任一触发条件,中转Chiplet就将聚合后的数据包发送出去。发送完毕后,重新计时并继续收集下一批数据包。
在某一实施例中,网络互连管理模块会根据评分区间确定数据聚合度,包括如下过程:
首先设置两个阈值,T1=0.25和T2=0.75。这两个阈值将评分区间分为三部分。
根据评分确定数据聚合度:
如果score<T1,那么数据聚合度设定为高。这意味着在一个会话中发送的数据包数量多(例如,每个会话发送为12个数据包)。因为评分低说明数据包的重要性较低,对延迟的要求也较低,因此可以提高数据聚合度来提高网络的吞吐量。
如果T1<=score<T2,那么数据聚合度设定为中。这意味着在一个会话中发送的数据包数量适中(例如,每个会话发送8个数据包)。因为评分适中,数据包的重要性和对延迟的要求也适中,因此数据聚合度也设定为适中。
如果score>=T2,那么数据聚合度设定为低。这意味着在一个会话中发送的数据包数量少(例如,每个会话发送4个数据包)。因为评分高说明数据包的重要性高,对延迟的要求也高,因此需要降低数据聚合度,以减少传输延迟。
本发明根据数据包的评分确定数据聚合度,以平衡网络的吞吐量和传输延迟。
在某一实施例中,网络互连管理模块确定网络编码的冗余度,确定网络编码冗余度的过程需要优化一个目标函数,所述目标函数考虑了所有中转Chiplet的网络编码参数以及可靠性增益和延迟减益之差:
假设确定有N个中转Chiplet,第i个Chiplet表示为Chiplet_i,每个中转Chiplet_i的网络编码参数记为p_i,可靠性增益记为R_i,延迟减益记为D_i。所述优化过程的目标是找到一组网络编码参数{p_1,p_2,...,p_N},使得目标函数F最大,其中F为所有中转Chiplet的可靠性增益和延迟减益之差的总和。
目标函数可表示为:F=Σ[i=1toN](R_i-D_i)。
为了找到每个中转Chiplet的网络编码冗余度,需要最大化所述目标函数,即:
Maximize F=Σ[i=1toN](R_i-D_i)。
此外,所述优化过程需要满足以下限制条件:
0<=p_i<=1,i=1,2,...,N;
R_i>=R_min,i=1,2,...,N;
D_i<=D_max,i=1,2,...,N。
其中,R_min和D_max分别为设定的最小的可靠性增益和最大的延迟减益。
这是一个约束优化问题,旨在最大化目标函数F,同时满足一组约束条件。这类问题可以使用各种优化方法和算法来解决,其中一些常用的方法包括梯度上升法、拉格朗日乘数法、遗传算法等。例如当使用遗传算法求解时,通过模拟自然界的进化过程(包括遗传、突变、选择和交叉等),可以搜索到一组网络编码参数{p_1,p_2,...,p_N}的最优解,使得最大化目标函数F。
在某一实施例中,在数据传输过程中,可能会发生包丢失、错误传输等问题。通过增加冗余编码包提高数据恢复的成功率,在网络编码中,每个编码包都是原始数据包的一个线性组合。冗余编码包也是如此,它们增加了接收端可以使用的线性组合的数量。因此,即使丢失一些编码包,只要接收端收到的编码包数量足够,并且这些编码包提供了独立的线性组合,接收端仍然可以通过解码算法恢复出原始数据。增加冗余编码包就像在发送数据时添加了一层保险。即使在数据传输过程中遇到问题,仍然有可能恢复出原始数据。
然而,增加冗余编码包也会带来一些挑战,例如增加了网络的负载和可能增加数据传输的延迟。因此,在实际应用中需要找到一个平衡点,既能提高数据传输的可靠性,又不会过度增加网络负载和延迟。因此需要通过优化过程找到一个最优的网络编码参数集{p_1,p_2,...,p_N},使得目标函数F最大,即最大化所有中转Chiplet的可靠性增益和延迟减益之差。
在网络编码中,参数{p_1,p_2,...,p_N}可以被看作是控制每个中转Chiplet_i在编码时使用的冗余度。具体来说,每个p_i表示中转Chiplet_i在一次编码操作中应当使用的原始数据包数量来生成一个冗余编码包。
每N个原始数据包会生成一个冗余编码包,根据p_i确定M,由于p_i表示的是每个中转Chiplet_i在一次编码操作中应当使用的原始数据包数量来生成一个冗余编码包,因此p_i与M的关系可以直接表示为:M=1/p_i
M是一个实数,但在实际操作中,通常会取N的向下取整值,例如,假设p_i=0.5,那么M=1/0.5=2,这意味着每两个原始数据包会生成一个冗余编码包。同样地,如果p_i=0.3,那么M=1/0.3=3.33,在实际操作中,可能会选择每三个原始数据包生成一个冗余编码包。这样的操作会持续进行,直到原始数据包用完。
在某一实施例中,对于每个中转Chiplet_i的可靠性增益R_i,假设每个中转Chiplet_i的编码速度为e_i,解码速度为d_i,存入内存的速度为s_i,从内存中读取的速度为r_i。这些速度是单位时间内能处理的数据量。
定义t_dec、t_store、t_read和t_enc分别为解码、存储、读取和编码的由于增加冗余数据包而产生变化的时间长度,假设所述时间是与冗余数据占比大小成正比的,即、。
对于每个中转Chiplet_i的可靠性增益R_i,根据如下公式来拟合R_i:
,
其中,
R_i:每个中转Chiplet_i的可靠性增益。
:控制参数,用于调整非线性的程度。当/>的值较大时,R_i的值会对冗余数据占比大小p_i和各个速度d_i、s_i、r_i和e_i的小变化非常敏感。
、/>、/>、/>:权重系数,用于控制解码、存储、读取和编码的由于增加冗余数据包而产生变化的时间长度对R_i的影响程度。例如,如果/>较大,那么解码时间t_dec对R_i的影响就会比较大。
p_i:冗余数据占比大小。
d_i:Chiplet_i的解码速度,表示单位时间内能解码的数据量。
s_i:Chiplet_i存入内存的速度,表示单位时间内能存入内存的数据量。
r_i:Chiplet_i从内存中读取的速度,表示单位时间内能从内存中读取的数据量。
e_i:Chiplet_i的编码速度,表示单位时间内能编码的数据量。
在某一实施例中,对于每个中转Chiplet_i的延迟减益记为D_i。假设每个中转Chiplet_i的编码速度为e_i,解码速度为d_i,存入内存的速度为s_i,从内存中读取的速度为r_i,这些速度是单位时间内能处理的数据量。
对于每个中转Chiplet_i的延迟减益D_i。根据如下公式来拟合D_i:
,
D_i=(D_i_f-D_i_min)/(D_i_max-D_i_min)
其中,
D_i:用于衡量每个中转Chiplet_i的延迟减益。D_i越大,表示Chiplet_i的处理延迟越长,延迟减益越大。
D_i_f:未归一化的每个中转Chiplet_i的延迟减益。
D_i_min:D_i_f中的最小值。
D_i_max:D_i_f中的最大值。
:控制参数,用于调整D_i的值。当/>的值较大时,D_i的值就会较大。
、/>、/>、/>:权重系数,用于控制解码、存储、读取和编码的由于冗余数据占比大小p_i而产生变化的时间长度对D_i的影响程度。例如,如果/>较大,那么解码时间对D_i的影响就会比较大。
p_i:冗余数据占比大小。
d_i:Chiplet_i的解码速度,表示单位时间内能解码的数据量。
s_i:Chiplet_i存入内存的速度,表示单位时间内能存入内存的数据量。
r_i:Chiplet_i从内存中读取的速度,表示单位时间内能从内存中读取的数据量。
e_i:Chiplet_i的编码速度,表示单位时间内能编码的数据量。
在某一实施例中,基于历史数据来确定这些权重系数的值。包括基于机器学习模型如线性回归或逻辑回归。具体地,将D_i或R_i作为目标变量,将p_i/d_i、p_i/s_i、p_i/r_i和p_i/e_i作为特征,然后使用这些数据来训练一个模型,所述模型的参数即对应的权重系数(、/>、/>、/>或/>、/>、/>、/>的组合)。
在某一实施例中,对于d_i、s_i、r_i、e_i,可以通过读取第i个Chiplet即Chiplet_i的相关资料查找对应的参数,如果厂商资料中没有这些参数,可以通过测试获取这些参数。
对于解码速度(d_i),以通过运行一些解码任务并测量完成这些任务所需的时间来确定。对于存储速度(s_i),可以通过运行一些将数据写入内存的任务并测量完成这些任务所需的时间来确定。对于读取速度(r_i),可以通过运行一些从内存读取数据的任务并测量完成这些任务所需的时间来确定。对于编码速度(e_i),可以通过运行一些编码任务并测量完成这些任务所需的时间来确定。
本发明通过网络互连管理模块对数据包进行筛选、评分和分发,以及对中转Chiplet进行编码和调度,实现了对超时Chiplet的有效处理,减少超时Chiplet对整个系统性能的影响,提高数据传输的效率和可靠性。此外本发明通过网络编码冗余度的优化方法,可以进一步提高数据传输的效率和可靠性。以及通过优化每个中转Chiplet的网络编码参数,可以最大化每个中转Chiplet的可靠性增益和延迟减益之差,从而提高整个系统的性能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
以上介绍了本发明的较佳实施方式,旨在使得本发明的精神更加清楚和便于理解,并不是为了限制本发明,凡在本发明的精神和原则之内,所做的修改、替换、改进,均应包含在本发明所附的权利要求概括的保护范围之内。
Claims (8)
1.一种Chiplet芯片内的网络互连方法,所述方法包括以下步骤:
当网络互连管理模块监测到出现超时Chiplet,所述网络互连管理模块开启延迟触发机制,进入调度模式;
所述网络互连管理模块获取当前发送Chiplet需要向超时Chiplet发送的所有数据包;
所述网络互连管理模块筛选出小于预设大小阈值的数据包;
所述网络互连管理模块对筛选的所有所述数据包进行评分;
根据所述数据包的评分和预设的评分阈值,网络互连管理模块确定将数据包分发到对应的中转Chiplet中,其中每个数据包根据其评分被分配到一个指定的中转Chiplet;
确定分配的中转Chiplet后,网络互连管理模块通知所有相关的发送Chiplet,将这些数据包发送至被确定的中转Chiplet;
以及,网络互连管理模块会根据评分区间确定数据聚合度,以及确定网络编码的冗余度;
在收到网络互连管理模块的数据聚合度和网络编码的冗余度的参数指示后,中转Chiplet根据指示的数据聚合度和网络编码的冗余度对接收的发送Chiplet的小数据包进行网络编码;中转Chiplet将网络编码后的数据包发送给超时Chiplet;
其中,在确定了超时的Chiplet后,网络互连管理模块需要对所有向该超时Chiplet等待发送的数据包进行筛选,对小于阈值的等待发送的数据包进行评分,以评估所述数据包的优先处理程度,包括使用如下公式计算每个小于阈值的等待发送的数据包的评分score:
,
其中,
LS是延迟敏感性,设定为[0,1],值越大表示越敏感;
PL是业务优先级,设定为[0,1],值越大表示优先级越高;
WT_norm是归一化的数据包等待时间;
PS_norm是归一化的数据包大小;
所述score计算公式中的a,b,c,d是可调整的参数,分别表示延迟敏感性、业务优先级、归一化的数据包等待时间和归一化的数据包大小在计算评分时的权重;
k是控制函数的斜率的参数;
x0是控制函数的中心点的参数;
其中,网络互连管理模块选择与超时Chiplet的布线距离短且剩余存储资源和通信资源足够的Chiplet作为中转Chiplet,包括以下过程:
对Chiplet进行筛选,确定出剩余存储资源和剩余通信资源满足两个参数均大于设定阈值条件的Chiplet作为中转Chiplet,所述Chiplet不能是超时Chiplet;
其中,计算所有Chiplet的评分Chiplet_score,设定评分公式如下:
,
其中,Storage是Chiplet的剩余存储资源,Communication是Chiplet的剩余通信资源,Distance是Chiplet与超时Chiplet的布线距离,所述Chiplet_score计算公式中的a、b和c是可调整的参数,表示存储资源、通信资源和布线距离在计算评分时的权重;
选择评分最高的三个Chiplet作为中转Chiplet;
其中,如果score<0.25,选择评分最低的Chiplet作为中转Chiplet;
如果0.25<=score<0.75,选择评分在第二的Chiplet作为中转Chiplet;
如果score>=0.75,选择评分最高的Chiplet作为中转Chiplet。
2.如权利要求1所述的一种Chiplet芯片内的网络互连方法,其特征在于,
中转Chiplet进行网络编码时选择异或XOR运算作为从发送Chiplet接收的多个数据包的编码操作。
3.如权利要求1所述的一种Chiplet芯片内的网络互连方法,其特征在于,
网络互连管理模块负责监测和管理Chiplet之间的数据传输;
网络互连管理模块持续监测所有Chiplet的数据传输状态,通过在每个Chiplet和所述网络互连管理模块之间建立一个反馈循环来实现;
在这个反馈循环中,每个Chiplet都会定期向所述网络互连管理模块发送其当前的数据包传输状态,所述数据包传输状态中包括每个数据包的元信息;
所述数据包的元信息包括来源Chiplet、目标Chiplet、数据包的大小;
网络互连管理模块根据所有数据包的元信息来确定每个Chiplet是否为超时Chiplet。
4.如权利要求3所述的一种Chiplet芯片内的网络互连方法,其特征在于,网络互连管理模块根据所有数据包的元信息来确定每个Chiplet是否为超时Chiplet,包括定义:
P:Chiplet已经处理的数据包集合;
K:所有等待发送或正在发送的数据包集合;
m_i:包含所述目标Chiplet的第i个待发送数据包的大小;
对于每一个目标Chiplet,将包含所述目标Chiplet的第i个待发送数据包的大小m_i叠加,得到待处理数据总量sum(m_i);
将每一个Chiplet对应的信息里找到已经处理的数据包,叠加各个数据包的数据包大小获得该Chiplet已处理数据总量processed_data;
对于每一个Chiplet,确定其为超时Chiplet包括,结合待处理和已处理的数据总量,得到sum_weighted:
,其中w是权重;
如果sum_weighted超过了一个预设的阈值,网络互连管理模块就判断对应的Chiplet是超时Chiplet。
5.如权利要求1所述的一种Chiplet芯片内的网络互连方法,其特征在于,网络互连管理模块根据网络的整体状态来决定是否需要进入调度模式,包括:
网络互连管理模块检测到网络中存在超时Chiplet决定进入调度模式;
在调度模式中,网络互连管理模块会选择与超时Chiplet的布线距离短且剩余存储资源和通信资源足够的Chiplet作为中转Chiplet;
当超时Chiplet的等待数据包传输完毕时,网络互连管理模块决定退出调度模式,恢复正常的数据传输模式。
6.如权利要求1所述的一种Chiplet芯片内的网络互连方法,其特征在于,确定了中转Chiplet后,网络互连管理模块需要通知所有相关的发送Chiplet将数据包发送至被确定的中转Chiplet,包括以下过程:
网络互连管理模块确定与各个发送Chiplet建立通信,网络互连管理模块将中转Chiplet的信息以及数据包的信息打包成一个指令,然后发送给各个发送Chiplet;
指令包括中转Chiplet的标识符,其用于唯一标识中转Chiplet的信息;
数据包的标识符用来唯一标识数据包的信息;
所述发送Chiplet收到网络互连管理模块的指令后,需要解析指令,获取中转Chiplet的标识符以及数据包的标识符;
发送Chiplet根据指令中的信息,将数据包发送至中转Chiplet;
当发送Chiplet内有多个对超时Chiplet等待发送的数据包时,所述指令中还可以包含对所述多个数据包的调度顺序,所述调度顺序按照优先发送score高的数据包的规则进行调度。
7.如权利要求1所述的一种Chiplet芯片内的网络互连方法,其特征在于,
至少一个所述中转Chiplet使用的网络编码的冗余度对应为最大化的优化函数的对应冗余度结果,所述优化函数的目标函数考虑所有中转Chiplet的网络编码参数以及可靠性增益和延迟减益之差。
8.如权利要求7所述的一种Chiplet芯片内的网络互连方法,其特征在于,网络互连管理模块确定网络编码的冗余度,确定网络编码冗余度的过程需要优化一个目标函数,所述目标函数考虑了所有中转Chiplet的网络编码参数以及可靠性增益和延迟减益之差,包括:
假设确定有N个中转Chiplet,第i个Chiplet表示为Chiplet_i,每个中转Chiplet_i的网络编码参数记为p_i,可靠性增益记为R_i,延迟减益记为D_i;
优化过程的目标是找到一组网络编码参数{p_1,p_2,...,p_N},使得目标函数F最大,其中F为所有中转Chiplet的可靠性增益和延迟减益之差的总和;
目标函数可表示为:F=Σ[i=1toN](R_i-D_i);
为了找到每个中转Chiplet的网络编码冗余度,需要最大化所述目标函数,即:
Maximize F=Σ[i=1toN](R_i-D_i);
此外,所述优化过程需要满足以下限制条件:
0<=p_i<=1,i=1,2,...,N;
R_i>=R_min,i=1,2,...,N;
D_i<=D_max,i=1,2,...,N;
其中,R_min和D_max分别为设定的最小的可靠性增益和最大的延迟减益。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311361121.4A CN117135133B (zh) | 2023-10-20 | 2023-10-20 | 一种Chiplet芯片内的网络互连方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311361121.4A CN117135133B (zh) | 2023-10-20 | 2023-10-20 | 一种Chiplet芯片内的网络互连方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117135133A CN117135133A (zh) | 2023-11-28 |
CN117135133B true CN117135133B (zh) | 2023-12-29 |
Family
ID=88858420
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311361121.4A Active CN117135133B (zh) | 2023-10-20 | 2023-10-20 | 一种Chiplet芯片内的网络互连方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117135133B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115576894A (zh) * | 2022-10-27 | 2023-01-06 | 无锡先进技术研究院 | 一种基于PCIE标准接口互连的chiplet芯粒及接口复用方法 |
KR20230038082A (ko) * | 2021-09-10 | 2023-03-17 | 에스케이하이닉스 주식회사 | 칩렛 기반의 스토리지 아키텍쳐 |
CN116303191A (zh) * | 2023-05-15 | 2023-06-23 | 芯耀辉科技有限公司 | 一种晶片到晶片接口互联的方法、设备及介质 |
-
2023
- 2023-10-20 CN CN202311361121.4A patent/CN117135133B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230038082A (ko) * | 2021-09-10 | 2023-03-17 | 에스케이하이닉스 주식회사 | 칩렛 기반의 스토리지 아키텍쳐 |
CN115576894A (zh) * | 2022-10-27 | 2023-01-06 | 无锡先进技术研究院 | 一种基于PCIE标准接口互连的chiplet芯粒及接口复用方法 |
CN116303191A (zh) * | 2023-05-15 | 2023-06-23 | 芯耀辉科技有限公司 | 一种晶片到晶片接口互联的方法、设备及介质 |
Non-Patent Citations (1)
Title |
---|
一种晶上互连网络中负载均衡容错路由算法;王明楠等;《信息工程大学学报》;第第23卷卷(第第6期期);第697-704页 * |
Also Published As
Publication number | Publication date |
---|---|
CN117135133A (zh) | 2023-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210042578A1 (en) | Feature engineering orchestration method and apparatus | |
CN110505112B (zh) | 一种网络性能监测方法、装置和存储介质 | |
CN101297204A (zh) | 基于类的带宽划分 | |
WO2018233425A1 (zh) | 网络拥塞的处理方法、装置及系统 | |
US10965613B2 (en) | Multi-pipe bandwidth control in hosted systems | |
CN110851277A (zh) | 一种增强现实场景下基于边云协同的任务调度策略 | |
CN115794407A (zh) | 计算资源分配方法、装置、电子设备及非易失性存储介质 | |
CN116782185B (zh) | 一种车载无线短距离通信的资源调度方法及装置 | |
US20080306888A1 (en) | Stochastic control optimization for sender-based flow control in a distributed stateful messaging system | |
CN113438155B (zh) | 虚拟多链路的智能可靠的udp传输方法、装置和设备 | |
CN117135133B (zh) | 一种Chiplet芯片内的网络互连方法 | |
CN114448896A (zh) | 一种网络优化方法和装置 | |
US11108666B2 (en) | Latency prediction and network message microtiming | |
JPH07168790A (ja) | 情報処理装置 | |
CN113746763A (zh) | 一种数据处理的方法、装置和设备 | |
CN113438271B (zh) | 存储器、物联网数据传输管理方法、装置和设备 | |
JP2005064970A (ja) | 配信レート制御方法及びシステム | |
US20080285580A1 (en) | Router apparatus | |
JPH0962624A (ja) | オンライントランザクションの処理方法および処理システム | |
CN109831342A (zh) | 一种基于分布式系统的故障恢复方法 | |
KR101496058B1 (ko) | 회선 활용도 기반 네트워크 코딩 방식 결정 방법 및 장치 | |
JP4995304B2 (ja) | パケット転送装置の制御方法及び制御装置 | |
CN117939572B (zh) | 电力物联网终端接入方法 | |
CN117792991B (zh) | 一种路由器链路自动切换方法及多链路由器 | |
CN117112039B (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 |