【技术实现步骤摘要】
一种支持多协议的动态共享缓冲区
本专利技术涉及超级计算机高速互连网络交换机输入端口的输入缓冲技术,具体涉及一种支持多协议的动态共享缓冲区。
技术介绍
互连网络是超级计算机的关键部件,用于实现超级计算机中的计算节点、输入输出节点、服务节点之间的高速数据传输与交换。交换机是高速互连网络的核心设备,一般采用交叉开关来实现。交换机的内部结构主要包括数据缓冲区和交叉开关,数据缓冲区用于缓存不能及时处理的数据,交叉开关用于在不同的网络端口之间交换数据。交换机常用的数据缓冲方式有:输入缓冲,输出缓冲,输入输出联合缓冲,交叉点缓冲等。由于输入缓冲实现简单,成为交叉开关普遍采用的缓冲方式。随着交换机端口数目的增加,交换机采用多级交换结构,每一个输入端口和每一级交换的输入端口都需要缓冲区缓存报文,导致交换机中缓冲区的数目急剧增加。为了减小缓冲区占用的芯片面积,降低实现缓冲区的存储器带来的功耗开销,交换机中采用动态分配共享缓冲区管理方法,提高缓冲区利用率,减小缓冲区深度。具体做法是,为交换机每个输入端口设置一个缓冲区,由所有虚信道(Vir ...
【技术保护点】
1.一种支持多协议的动态共享缓冲区,包括报文拆分逻辑、控制码组合逻辑、控制DAMQ单元和数据DAMQ单元,其特征在于,所述控制DAMQ单元包括第一数据仲裁器、DAMQ_CTRL
【技术特征摘要】
1.一种支持多协议的动态共享缓冲区,包括报文拆分逻辑、控制码组合逻辑、控制DAMQ单元和数据DAMQ单元,其特征在于,所述控制DAMQ单元包括第一数据仲裁器、DAMQ_CTRL1~DAMQ_CTRLP一共P个控制DAMQ、第二数据仲裁器、第一多路选择器,所述第一数据仲裁器用于将来自控制码组合逻辑的控制码仲裁后输出给DAMQ_CTRL1~DAMQ_CTRLP中的一者,所述第二数据仲裁器用于将来自外部的读请求仲裁后输出给DAMQ_CTRL1~DAMQ_CTRLP中的一者,所述第一多路选择器用于从DAMQ_CTRL1~DAMQ_CTRLP中选择一路输出到数据DAMQ单元;所述控制DAMQ单元包括第二多路选择器、P个空闲地址缓冲区、P个空闲地址管理器和数据缓冲区,第二多路选择器用于从第一~第P空闲地址管理器接收P个端口的空闲地址缓冲区头指针,从报文拆分逻辑接收写数据通道号,然后将写数据通道号所对应第i数据通道的空闲地址缓冲区头指针Headi转换成写缓冲区地址wt_addr,作为报文数据在数据缓冲区的存放地址,然后将写缓冲区地址wt_addr发送到数据缓冲区和控制码组合逻辑;第一~第P空闲地址管理器中的任意第i空闲地址管理器与第i空闲地址缓冲区和第二多路选择器相连;P个空闲地址缓冲区和P个空闲地址管理器中任意第i空闲地址管理器通过头尾指针及第i空闲地址缓冲区把数据缓冲区中第i数据通道的空闲地址串成链表;当外部模块通过第i数据通道向数据缓冲区写数据时,第i空闲地址管理器将第i空闲地址缓冲区的头指针Headi,经过第二多路选择器仲裁后提供给数据缓冲区,作为数据缓冲区存储报文数据的地址;当第i数据通道从数据缓冲区读出一个数据时,该数据在据缓冲区中的地址被返还给第i空闲地址管理器的空闲地址链;第i空闲地址缓冲区与第i空闲地址管理器相连;第i数据通道在数据缓冲区的空闲地址通过地址链表构成虚拟队列,构成第i空闲地址缓冲区,所述数据缓冲区用于存储P个数据通道的报文数据。
2.根据权利要求1所述的支持多协议的动态共享缓冲区,其特征在于,所述报文拆分逻辑与报文输入端口、控制码组合逻辑、第二多路选择器、数据缓冲区相连;所述报文拆分逻辑用于从报文输入端口接收报文,将报文拆分成报文控制信息、报文数据和写数据通道号;然后将报文控制信息输出给控制码组合逻辑,将报文数据输出给数据缓冲区,将写数据通道号输出给第二多路选择器。
3.根据权利要求1所述的支持多协议的动态共享缓冲区,其特征在于,所述控制码组合逻辑与报文拆分逻辑、第二多路选择器、第一数据仲裁器相连;所述控制码组合逻辑用于从报文拆分逻辑接收报文控制信息,从第二多路选择器接收报文数据存储在数据缓冲区中的地址作为写缓冲地址,将报文控制信息和写缓冲地址组合成控制码,并将控制码输出给第一数据仲裁器。
4.根据权利要求1所述的支持多协议的动态共享缓冲区,其特征在于,所述数据缓冲区中存储的P个数据通道的报文数据占用不同的连续地址空间,且任意第i数据通道在数据缓冲区的地址空间范围为:
上式中,port_depi表示第i数据通道在数据缓冲区占用的存储单元数,port_depk表示第k数据通道在数据缓冲区占用的存储单元数,P为数据缓冲区存储报文数据的数据通道数量;将报文数据存放在数据缓冲区中的地址记为写缓冲地址wt_addr,所述数据缓冲区从第二多路选择器接收写缓冲地址wt_addr,从报文拆分逻辑接收报文数据,然后将报文数据缓存在数据缓冲区中写缓冲地址wt_addr所指向的地址;所述数据缓冲区从第一多路选择器中接收对应数据通道控制码中的地址位即读缓冲区地址,通过读缓冲区地址从数据缓冲区中读出报文数据,然后通过报文数据输出端口将报文数据输出。
5.根据权利要求1所述的支持多协议的动态共享缓冲区,其特征在于,所述P个控制DAMQ结构完全相同,且任意控制DAMQ的结构包括VC号识别模块、读写地址管理模块VC0~VCN-1、第一写请求与写地址选择模块、第一读请求与读地址选择模块、第二写请求与写数据选择模块、第二读请求选择模块、第三数据缓冲区、地址缓冲区、空闲地址缓冲区、第二读写地址管理模块、第二VC顶部缓冲区VC0FIFO_TOP~VCN-1FIFO_TOP以及N选1多路选择器;其中:VC号识别模块用于从数据输入端口输入的控制码中提取该控制码的VC号j,生成VCj写请求,发送到VCj读写地址管理模块,0≤j≤N-1,j为整数;读写地址管理模块VC0~VCN-1用于从VC号识别模块接收VCj写请求,生成读空闲地址缓冲区的VCj第二读请求,发送到第二读请求选择模块;VCj读写地址管理模...
【专利技术属性】
技术研发人员:黎渊,陆平静,常俊胜,张建民,孙岩,庞征斌,罗章,徐金波,董德尊,熊泽宇,翦杰,王子聪,
申请(专利权)人:中国人民解放军国防科技大学,
类型:发明
国别省市:湖南;43
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。