System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 面向芯粒互连接口的协议层与适配器层间接口电路及芯片制造技术_技高网

面向芯粒互连接口的协议层与适配器层间接口电路及芯片制造技术

技术编号:40965674 阅读:3 留言:0更新日期:2024-04-18 20:45
本发明专利技术公开了一种面向芯粒互连接口的协议层与适配器层间接口电路及芯片,包括发送端接口电路和接收端接口电路,发送端接口电路包括信用管理模块、数据微包产生模块、链路管理模块、电源管理模块和多路仲裁器,其中信用管理模块、数据微包产生模块位于协议层,链路管理模块、电源管理模块和多路仲裁器位于适配器层;接收端接口电路包括译码器、信用管理模块、数据微包解析模块、链路管理模块和电源管理模块,其中译码器、链路管理模块和电源管理模块位于适配器层,信用管理模块、数据微包解析模块位于协议层。本发明专利技术旨在促进芯粒互连接口适配器层和物理层的更加彻底的标准化,实现更好兼容性、更强解耦性和更高复用度的协议层与适配器层间接口。

【技术实现步骤摘要】

本专利技术属于芯粒(chiplet)间高速互连接口领域,具体涉及一种面向芯粒互连接口的协议层与适配器层间接口电路及芯片


技术介绍

1、随着算力需求的不断扩大而晶体管工艺逼近物理极限,以往通过增加晶体管数量来提升整个片上系统(system on chip, soc)性能的方式,由于裸芯(die)大小不断扩大,面临掩模版尺寸受限和良率降低等问题。同时,由于工艺提升带来的芯片制造成本和研发成本显著增加,封装内集成多个较小的芯粒成为业界趋势。这种方式可以把采用不同工艺的具有标准互连接口的裸芯(称之为芯粒)封装到一起,芯粒间通过裸芯到裸芯(die todie,d2d)互连接口进行通信,一方面丰富了芯片的设计空间,使得设计人员可以根据需求调整各芯粒采用的工艺,从而降低定制和优化的成本,使得先进工艺高昂的设计成本被均摊;另一方面,由于设计好的芯粒可以方便地在封装内重复使用,既可以降低整个芯片的设计时间,又可以减少芯片研发过程中的nre费用。但在同一封装内集成大量芯粒的前提是芯粒与芯粒之间的互连带宽要足够高以满足整个芯粒间的高速通信,否则无法达到与传统soc相比相当的性能。因此,芯粒间互连技术是芯粒架构大范围应用的关键技术之一。而其中芯粒间互连接口标准的兼容性和高效性,是芯粒间互连技术中的重要组成部分。目前芯片设计行业的重要公司、团体单位纷纷推出芯粒互连接口标准,拟在互连接口生态中占据优势地位。例如行业巨头intel推出的ucie标准、开放组织ocp推出的bow标准,中国计算机互连技术联盟推出的《小芯片接口总线技术要求》团体标准以及中国chiplet产业联盟推出的《芯粒互联接口标准》等。

2、通常来说,芯粒间互连接口被定义成三层,分别是协议层,适配层以及物理层。一般来说,协议层主要负责具体协议流程、虚通道管理和流量控制等,适配层则主要负责检错和纠错、重传、链路和功耗管理。物理层负责信号在链路上传输,通常会根据封装类型、电路实现方式有比较显著的区别。协议层中虚通道管理在发送端主要是将来自不同虚通道的报文(package)汇聚打包,生成适配器层能够识别和传输的基本单位——微包(flit),在接收端将微包解包后分发给对应的虚通道,实现发送端的各虚通道到接收端各虚通道一一对应的报文传输。协议层的流量控制要是为匹配发送端各个虚通道中报文的发送速率与接收方各个虚通道中报文的接收速率,防止接收端报文缓冲区溢出和尽可能提高发送端带宽利用率。适配器层的检错和纠错机制是为了维护数据包在传输过程中的正确性,常用的方式为在数据微包结尾加入crc校验码和ecc校验码等。纠错机制一般将错误分为两种类型,分别是可被检测但不能被纠正的错误与可被检测且可被纠正的错误。对于前者,接收端往往会将数据包直接丢弃。为保证数据完整性,发送端需要将未被接收端接收的微包重传。重传一般采取ack/nak机制,即发送端维护一块微包缓冲区,该缓冲区收到接收端发送的ack报文就将缓冲区中对应的微包清空,收到nak报文就重发对应的微包。适配器层还会有专门的链路管理和功耗管理逻辑,产生链路管理微包(link management flit,lmf)和功耗管理微包(power management flit,pmf),这些管理微包将和来自协议层的数据微包(data flit,df)一起,共享物理链路。lmf主要用于链路初始化、链路状态切换、链路重传信息传递;pmf主要用于功耗状态初始化、功耗状态切换。目前在芯片间互连总线协议,如pcie、cxl协议层中,片间互连接口的层次被分为协议层(protocol layer,pl)、事务层(transactionlayer,tl)、数据链路层(data link layer,dll)和物理层。芯粒互连接口中的协议层包含了芯片互连接口中pl和tl的功能,适配器层对应的是dll。

3、图1为目前传统的芯粒互连接口电路的电路结构图。如图1所示,协议层将来自不同虚通道的协议层报文(protocol layer package,plp)打包为微包格式,并在微包格式中添加报文类型域以区分来自不同虚通道以及不同类型的plp。协议层报文被打包为数据微包(df)之后,在适配器层会通过“信用和管理信息附加逻辑”对微包中为适配器层保留的“信用和管理信息保留域”进行填充,信用信息来自协议层的“信用管理逻辑”,链路和功耗管理信息来自适配器层的“链路管理”和“功耗管理”逻辑。在“信用和管理信息保留域”中填充了信用和管理信息的数据微包(df)将进入多路仲裁器,与来自“链路管理”和“功耗管理”的独立的链路管理微包(lmf)以及功耗管理微包(pmf)进行仲裁。如果有lmf或pmf等待发送,则需要在一个完整的df发送完毕后,停止df的发送,插入lmf或pmf。lmf或者pmf的发送优先级高于df的发送优先级。由于lmf和pmf的发送会占用正常的链路带宽,导致df的发送效率下降。为解决发送效率问题,适配器层通常都会支持将链路管理信息携带于数据微包中进行传送的机制。只要有数据微包在发送方和接收方相互传送,就不需要为这些信息的传送单独产生lmf和pmf微包,而是在发送端将信用和管理信息附加在数据微包中。在接收端,适配器层收到来自物理层的微包后,将根据微包类型解析出“管理微包”(管理flit)和“数据微包”(数据flit)。独立的“管理flit”被送入“链路管理”和“功耗管理”逻辑,用于链路和功耗状态管理。“数据flit”将继续被送入“信用和管理信息提取逻辑”,在该逻辑中将“信用和管理信息保留域”中的“信用信息”和“链路和功耗管理信息”提取出来,前者被送入协议层的“信用管理”逻辑,后者被送入“链路管理”和“功耗管理”逻辑。以上传统方式存在如下问题:需要在数据微包格式中为传送信用以及链路管理信息预留位置,这些预留的位置不能被协议层的报文占用。由于不同的协议对于协议层的报文产生和解析的规则定义不同,因此协议层与适配器层间的微包格式很难统一。特别是不同协议对于微包格式中采用哪些域用于保存信用及管理信息的规定各不相同,适配器层的“信用和管理信息附加逻辑”以及“信用和管理信息提取逻辑”需要根据不同的微包格式定义进行适配才能工作,导致适配器层兼容不同协议的代价显著增加,一旦逻辑固化则不能修改及扩展。而且,这种机制对未来的自定协议中不符合当前微包格式定义的微包及协议进行扩展性时会遇到障碍,降低了自定义协议设计的灵活性以及适配器层的可重用性。

4、传统的芯粒互连接口标准中对于协议层和适配器间接口的微包格式的定义各不相同,对于在数据微包格式中为传送链路管理信息而预留位置的定义也有差异。例如,在ucie协议标准和《小芯片接口总线技术要求》(以下简称《小芯片》)协议标准中对于微包格式的定义中,协议标准都规定了用于链路管理的域,但是这些域在微包格式中的位置定义不同。

5、如图2所示,ucie协议定义的256位微包格式,协议层需要将微包的后20字节(第236到255字节)预留给适配层,协议层预先填充为0,适配器层负责填充新的数据,包括微包头(flithdr)域、数据链路微包(dlp)、保留域(10b reserved本文档来自技高网...

【技术保护点】

1.一种面向芯粒互连接口的协议层与适配器层间接口电路,其特征在于,包括发送端接口电路,所述发送端接口电路包括:

2.根据权利要求1所述的面向芯粒互连接口的协议层与适配器层间接口电路,其特征在于,所述重传控制信息包括在发送端为每一个微包分配一个请求序列号ReqNo,在接收端根据微包是否被正确接收产生应答序列号AckNo或者非应答序列号NAckNo,应答序列号AckNo表示已正确接收标识为请求序列号ReqNo的微包;非应答序列号NAckNo表示已收到标识为请求序列号ReqNo的微包,但是数据校验错误,该微包需要被重传。

3.根据权利要求2所述的面向芯粒互连接口的协议层与适配器层间接口电路,其特征在于,所述功耗管理信息包括PM_ADP_TX和PM_ADP_RX两种类型,PM_ADP_TX类型为适配器层需要发送到对端的电源管理信息,包括请求进入某功耗状态请求信息和返回处于某功耗状态的应答信息;PM_ADP_RX类型为适配器层接收到来自对端的电源管理信息。

4.根据权利要求3所述的面向芯粒互连接口的协议层与适配器层间接口电路,其特征在于,所述协议层与适配器层间接口电路还包括接收端接口电路,所述接收端接口电路包括:

5.根据权利要求4所述的面向芯粒互连接口的协议层与适配器层间接口电路,其特征在于,所述发送端接口电路以及接收端接口电路的协议层与适配层间的数据传输格式包括下述字段域:

6.一种芯片,包括通过芯粒互连接口的多个芯粒,其特征在于,所述芯粒互连接口中包含权利要求1~5中任意一项所述面向芯粒互连接口的协议层与适配器层间接口电路。

7. 根据权利要求6所述的芯片,其特征在于,所述芯粒互连接口为兼容PCIe1.0-4.0协议的芯粒互连接口,所述芯粒互连接口复用了所述面向芯粒互连接口的协议层与适配器层间接口电路的适配器层,且所述适配器层下层连接物理层电路、上层依次连接PCIe1.0-4.0协议的事务层电路PCI TL、PCIe1.0-4.0协议的协议层电路PCI PL以支持PCIe1.0-4.0协议以及兼容PCIe1.0-4.0协议的自定义协议。

8.根据权利要求6所述的芯片,其特征在于,所述芯粒互连接口为兼容PCIe5.0-6.0协议的芯粒互连接口,所述芯粒互连接口复用了所述面向芯粒互连接口的协议层与适配器层间接口电路的适配器层,且所述适配器层下层连接物理层电路、上层连接PCIe5.0-6.0协议的UCIe协议层电路以支持PCIe5.0-6.0协议。

9.根据权利要求6所述的芯片,其特征在于,所述芯粒互连接口为兼容CXL.io协议的芯粒互连接口,所述芯粒互连接口复用了所述面向芯粒互连接口的协议层与适配器层间接口电路的适配器层,且所述适配器层下层连接物理层电路、上层连接CXL.io协议的UCIe协议层电路以支持CXL.io协议。

10.根据权利要求6所述的芯片,其特征在于,所述芯粒互连接口为兼容给定的自定义协议的芯粒互连接口,所述芯粒互连接口复用了所述面向芯粒互连接口的协议层与适配器层间接口电路的适配器层,且所述适配器层下层连接物理层、上层连接给定的自定义协议的自定义协议层电路以支持给定的自定义协议。

...

【技术特征摘要】

1.一种面向芯粒互连接口的协议层与适配器层间接口电路,其特征在于,包括发送端接口电路,所述发送端接口电路包括:

2.根据权利要求1所述的面向芯粒互连接口的协议层与适配器层间接口电路,其特征在于,所述重传控制信息包括在发送端为每一个微包分配一个请求序列号reqno,在接收端根据微包是否被正确接收产生应答序列号ackno或者非应答序列号nackno,应答序列号ackno表示已正确接收标识为请求序列号reqno的微包;非应答序列号nackno表示已收到标识为请求序列号reqno的微包,但是数据校验错误,该微包需要被重传。

3.根据权利要求2所述的面向芯粒互连接口的协议层与适配器层间接口电路,其特征在于,所述功耗管理信息包括pm_adp_tx和pm_adp_rx两种类型,pm_adp_tx类型为适配器层需要发送到对端的电源管理信息,包括请求进入某功耗状态请求信息和返回处于某功耗状态的应答信息;pm_adp_rx类型为适配器层接收到来自对端的电源管理信息。

4.根据权利要求3所述的面向芯粒互连接口的协议层与适配器层间接口电路,其特征在于,所述协议层与适配器层间接口电路还包括接收端接口电路,所述接收端接口电路包括:

5.根据权利要求4所述的面向芯粒互连接口的协议层与适配器层间接口电路,其特征在于,所述发送端接口电路以及接收端接口电路的协议层与适配层间的数据传输格式包括下述字段域:

6.一种芯片,包括通过芯粒互连接口的多个芯粒,其特征在于,所述芯粒互连接口中包含权利要求1~5中任意一项所述面向芯粒互连接口...

【专利技术属性】
技术研发人员:周宏伟何星洋黎梦金孙星语陈志强孙玉波曾坤王永文
申请(专利权)人:中国人民解放军国防科技大学
类型:发明
国别省市:

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

1