一种基于分段确认的互连裸芯包传输方法技术

技术编号:36885005 阅读:38 留言:0更新日期:2023-03-15 21:28
本发明专利技术公开了一种基于分段确认的互连裸芯包传输方法,将路径长、延迟高的完整请求应答流程进行拆分,在多个关键的端到端数据交付环节分别完成请求和应答,从而让主机的请求更早获得应答,并从该事务中脱离以进行本地的相关操作或是发起下一事务,即在上一事务实际完成前网络接口与NoD就可以开始处理并路由转发下一事务,进而降低了请求延迟,提升了处理效率。本方法还设置了硬件的重传机制,网络接口会将发出的完整请求包暂存在重传缓冲区中,在某些分段确认失败的场景下会将缓存的请求包再次发出,而无需主机进行重传,提高了互连裸芯的容错能力。芯的容错能力。芯的容错能力。

【技术实现步骤摘要】
一种基于分段确认的互连裸芯包传输方法


[0001]本专利技术涉及裸芯级网络领域,具体涉及一种基于分段确认的互连裸芯包传输方法。

技术介绍

[0002]在单片专用集成电路中,所有组件都是在一个硅片上用同一种工艺设计和制造的。随着工艺尺寸的缩小,开发单片专用集成电路的成本和开发周期变得极高。在此情况下,多裸芯(Die)集成是未来开发高性能芯片的必然选择,即将多个功能各异且已通过验证、未被封装的芯片组件互联组装起来,并封装为同一管壳中的芯片整体,形成多芯片模组(Multi

Chip Module,MCM),这些组成MCM的裸芯被称为芯粒(Chiplet),在同一个封装内的每个芯粒可以采用不同工艺、来自不同厂商,因此极大缩短和降低了开发周期和难度。
[0003]然而,随着芯片中处理器(Processor)和其他功能单元数量的爆炸式增长,为了充分发挥每个功能单元的作用,构建一个片上片间一体化的高性能网络,实现多个功能单元和多个芯粒之间的高效通信也尤为重要。在过去的20多年里,片上网络(Network

on

Chip,NoC)技术取得了充分的研究和长足发展,尤其是在构建大型复杂系统时,片上网络替代传统总线式互连结构成为了不可或缺的系统部件。而在可扩展互连裸芯上采用的类似于NoC的互连结构被称为裸芯级网络(Network

on

Die,NoD)。NoD继承了NoC的高带宽和高可扩展性,可用于作为多裸芯的互连结构,也可通过扩展级联形成封装级网络(Network

on

Package,NoP),实现更大规模的芯粒互连。
[0004]在基于互连裸芯的多裸芯集成微系统中,一次完整事务(如一次基本写事务或基本读事务)从源节点的主机发出请求开始,经过网络接口(Network Interface,简记为NI)接收该请求完成本地协议到NoD包传输协议的转换,以请求包的形式通过NoD路由转发至目的节点,目的节点的网络接口接收请求包并完成NoD包传输协议到本地协议的转换,向目的节点的设备发起相应的读/写请求,待对应的读写操作完成后,目的节点的设备返回应答,再由网络接口接收并进行本地协议与NoD包传输协议的转换,以应答包的形式通过NoD路由转发至源节点,源节点的网络接口接收应答包并完成NoD包协议到本地协议的转换,至此主机接收到应答。
[0005]可见,由于互连裸芯面向的是异构裸芯的互连,是通过NoD这一互连结构以及基于数据包的传输方式来实现不同协议的封装与转换,不同节点的两个裸芯若在通过NoD进行通信时将涉及数次协议转换与端到端的数据交付,这导致一次完整通信的请求与应答之间存在着相当的延迟。

技术实现思路

[0006]针对现有技术中的上述不足,本专利技术提供的一种基于分段确认的互连裸芯包传输方法解决了现有裸芯级网络通信延迟高的问题。
[0007]为了达到上述专利技术目的,本专利技术采用的技术方案为:
[0008]提供一种基于分段确认的互连裸芯包传输方法,其包括以下步骤:
[0009]S1、获取主机进行的请求类型,若为写请求信息,进入步骤S2;若为读请求信息,进入步骤S5;
[0010]S2、进行写请求第一次分段确认:
[0011]S2

1、通过主机以本地协议向主机节点的网络接口NI1发起包含事务ID在内的写请求信息,完成对主机节点的网络接口NI1相关寄存器的配置与写数据交付;
[0012]S2

2、通过主机节点的网络接口NI1在接收到完整的请求信息后以本地协议向主机返回应答;
[0013]S3、进行写请求第二次分段确认:
[0014]S3

1、通过主机节点的网络接口NI1根据配置的写请求信息封装写请求数据包,将写请求数据包缓存在重传缓冲区,并通过NoD路由将写请求数据包向目的节点转发;
[0015]S3

2、通过目的节点的网络接口NI2对接收的写请求数据包进行解析与校验,若校验通过则返回一个写应答数据包并进入步骤S3

3;否则不做处理;
[0016]S3

3、从发出写请求数据包开始计时,判断主机节点的网络接口NI1在第一最大等待时间内是否收到写应答数据包,若是则通过主机节点的网络接口NI1向主机发出包含事务ID的写完成通知,释放重传缓冲区中对应事务ID数据包占用的存储空间,进入步骤S4;否则进入步骤S3

4;
[0017]S3

4、判断是否达到重传次数阈值,若是则向主机发送写失败通知;否则通过主机节点的网络接口NI1将重传缓冲区中的写请求包通过NoD路由向目的节点转发,并返回步骤S3

2;
[0018]S4、进行写请求第三次分段确认:通过目的节点的网络接口NI2依据校验过的写请求信息向目的节点发起写操作,在目的节点控制器完成数据写入后返回写操作应答,完成写请求;
[0019]S5、进行读请求第一次分段确认:
[0020]S5

1、通过主机以本地协议向主机节点的网络接口NI1发起包含事务ID在内的读请求信息,完成对主机节点的网络接口NI1相关寄存器的配置;
[0021]S5

2、通过主机节点的网络接口NI1在接收到完整的读请求信息后以本地协议向主机返回应答;
[0022]S6、进行读请求第二次分段确认:
[0023]S6

1、通过主机节点的网络接口NI1根据配置的读请求信息封装读请求数据包,将读请求数据包缓存在重传缓冲区,并通过NoD路由将读请求数据包转发到目的节点;
[0024]S6

2、通过目的节点的网络接口NI2对接收的读请求数据包进行解析与校验,若校验通过则返回一个读应答数据包;
[0025]S6

3、从发出读请求数据包开始计时,判断主机节点的网络接口NI1在第二最大等待时间内是否接收到读应答数据包,若是则通过主机节点的网络接口NI1向主机发出读完成通知,释放重传缓冲区中对应事务ID数据包占用的存储空间,进入步骤S7;否则进入步骤S6

4;
[0026]S6

4、判断是否达到重传次数阈值,若是则向主机发送读失败通知;否则通过主机节点的网络接口NI1将重传缓冲区中的读请求包通过NoD路由向目的节点转发,并返回步骤
S6

2;
[0027]S7、进行读请求第三次分段确认:
[0028]S7

1、通过目的节点控制器完成数据读操作得到读响应数据,并将读相应数据发送至目的节点的网络接口NI2;
[0029]S7

2、通过目的节点的网络接口NI2把读响应数据封装为读本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于分段确认的互连裸芯包传输方法,其特征在于,包括以下步骤:S1、获取主机进行的请求类型,若为写请求信息,进入步骤S2;若为读请求信息,进入步骤S5;S2、进行写请求第一次分段确认:S2

1、通过主机以本地协议向主机节点的网络接口NI1发起包含事务ID在内的写请求信息,完成对主机节点的网络接口NI1相关寄存器的配置与写数据交付;S2

2、通过主机节点的网络接口NI1在接收到完整的请求信息后以本地协议向主机返回应答;S3、进行写请求第二次分段确认:S3

1、通过主机节点的网络接口NI1根据配置的写请求信息封装写请求数据包,将写请求数据包缓存在重传缓冲区,并通过NoD路由将写请求数据包向目的节点转发;S3

2、通过目的节点的网络接口NI2对接收的写请求数据包进行解析与校验,若校验通过则返回一个写应答数据包并进入步骤S3

3;否则不做处理;S3

3、从发出写请求数据包开始计时,判断主机节点的网络接口NI1在第一最大等待时间内是否收到写应答数据包,若是则通过主机节点的网络接口NI1向主机发出包含事务ID的写完成通知,释放重传缓冲区中对应事务ID数据包占用的存储空间,进入步骤S4;否则进入步骤S3

4;S3

4、判断是否达到重传次数阈值,若是则向主机发送写失败通知;否则通过主机节点的网络接口NI1将重传缓冲区中的写请求包通过NoD路由向目的节点转发,并返回步骤S3

2;S4、进行写请求第三次分段确认:通过目的节点的网络接口NI2依据校验过的写请求信息向目的节点发起写操作,在目的节点控制器完成数据写入后返回写操作应答,完成写请求;S5、进行读请求第一次分段确认:S5

1、通过主机以本地协议向主机节点的网络接口NI1发起包含事务ID在内的读请求信息,完成对主机节点的网络接口NI1相关寄存器的配置;S5

2、通过主机节点的网络接口NI1在接收到完整的读...

【专利技术属性】
技术研发人员:黄乐天魏敬和刘国柱陈颖芃何甜周颖鞠虎
申请(专利权)人:中国电子科技集团公司第五十八研究所
类型:发明
国别省市:

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

1