存储器执行写操作的方法以及存储器技术

技术编号:25230510 阅读:56 留言:0更新日期:2020-08-11 23:17
本申请提供了一种存储器执行写操作的方法以及存储器,所述存储器包括控制器以及第一bank,所述第一bank包括第一bank单元,所述第一bank单元包含多个存储单元,所述控制器用于接收读请求,所述读请求携带待读取的第一报文片段的存储地址;所述控制器用于根据所述存储地址,确定存储所述第一报文片段的存储单元;所述控制器用于从所述存储单元中读取所述第一报文片段,以提高存储器中存储空间的利用率。

【技术实现步骤摘要】
存储器执行写操作的方法以及存储器
本申请涉及信息
,并且更具体地,涉及存储器执行写操作的方法以及存储器。
技术介绍
网络设备(例如路由器)可以接收报文并对报文进行转发。网络设备接收到报文后,对报文进行转发前,可以对报文进行缓存。报文缓存技术可以提高网络设备的出端口的带宽的利用率。基于上述报文缓存技术,网络设备可以将接收到的报文缓存在网络设备的报文缓存器(packetbuffer,PB)中。目前,报文缓存器包括多个bank,每个bank包括多个容量相等的bank单元(bankcell)用于为报文提供存储空间。当报文缓存器接收到报文后,会基于bank单元的容量对报文进行分段处理,以得到多个报文片段,并将报文片段分别存储到一个bank单元中,每个bank单元仅存储一个报文片段。然而,报文的尺寸通常不是bank单元的容量的整数倍,也就是说,将报文按照bank单元的容量,进行分段处理得到的多个报文片段中,最后一个生成的报文片段的尺寸通常远远小于bank单元的容量,导致bank单元中的存储空间被浪费,降低了存储空间的利用率。例如,一个报文的尺寸为129字节(byte,B),bank中bank单元的容量都为128B,按照bank单元的容量对报文进行分段处理,可以得到两个报文片段,第一个报文片段的尺寸为128B,第二个报文片段的尺寸为1B。将两个报文片段分别存储至两个bank单元,对于存储第二个报文片段的bank单元而言,会有127B的存储空间被浪费。
技术实现思路
本申请提供一种向存储器中写报文的方法以及存储器,以提高存储器中存储空间的利用率。第一方面,提供一种存储器,所述存储器包括控制器以及第一bank,所述第一bank包括第一bank单元,所述第一bank单元包含多个存储单元,所述控制器用于接收写请求,所述写请求用于请求写入第一报文片段;所述控制器用于从所述第一bank单元的多个存储单元中选择第一存储单元;所述控制器用于将所述第一报文片段写入所述选择的所述第一存储单元,所述第一存储单元的容量大于或者等于所述第一报文片段的尺寸。在本申请实施例中,通过将一个bank单元划分为多个存储单元以存储报文片段,有利于提高存储空间的利用率,避免了现有技术中每个bank单元仅存储一个报文单元,当报文单元的尺寸较小时,导致bank单元浪费的存储空间较大。在一种可能的实现方式中,所述第一bank包括多个子bank,每个子bank包括至少一个存储单元,所述多个子bank分别包括所述第一bank单元包含的多个存储单元,所述多个子bank与所述第一bank单元包含的多个存储单元一一对应;所述控制器用于从所述第一bank单元的多个存储单元中选择第一存储单元包括:所述控制器用于从所述多个子bank中选择第一子bank;以及从选择的所述第一子bank包含的至少一个存储单元中选择所述第一存储单元。在本申请实施例中,以子bank与bank单元的形式划分出多个存储单元,有利于快速定位到存储单元。在一种可能的实现方式中,所述控制器包含多个空闲地址池控制器FAPC,所述多个FAPC与所述多个子bank一一对应,每个FAPC记录对应的子bank中处于空闲状态的存储单元的地址;所述控制器用于从选择的所述第一子bank包含的至少一个存储单元中选择所述第一存储单元包括:所述控制器用于从所述多个FAPC中的第一FAPC记录的存储单元的地址中,选择所述第一存储单元的地址,所述第一FAPC对应所述第一子bank。在本申请实施例中,通过每个子bank对应的FAPC管理处于空闲状态的存储单元,以便于有多个报文片段需要存储时,可以并行地为报文片段分配存储单元,有利于减少存储报文的时延。在一种可能的实现方式中,所述第一报文片段是第一报文中的片段,所述第一报文还包括第二报文片段,所述存储器包括第二存储单元;所述控制器还用于将所述第二报文片段写入所述第二存储单元,所述控制器记录指示所述第一存储单元存储的报文片段和所述第二存储单元存储的报文片段是一个报文中相邻的报文片段的信息。在本申请实施例中,通过信息关联第一存储单元与第二存储单元,指示第一存储单元存储的报文片段和所述第二存储单元存储的报文片段是一个报文中相邻的报文片段,并将信息存储在控制器中,以便于控制器可以根据该信息还原报文。可选地,所述信息还指示在所述报文中所述第一存储单元存储的报文片段位于所述第二存储单元存储的报文片段之前。在本申请实施例中,通过第一存储单元与第二存储单元指示第一存储单元中的报文片段与第二存储单元中的报文片段在报文中的先后顺序,有利于控制器根据该顺序将报文片段还原为报文。在一种可能的实现方式中,所述信息以数组表示,所述数组中的第x个元素在所述数组中的元素编号对应所述第一存储单元,所述第x个元素的值指示所述第二存储单元,x为正整数。在本申请实施例中,通过数组的方式关联第一存储单元存储的报文片段与第二存储单元存储的报文片段,有利于简化记录上述信息的方式。第二方面,提供了一种存储器,所述存储器包括控制器以及第一bank,所述第一bank包括第一bank单元,所述第一bank单元包含多个存储单元,所述控制器用于接收读请求,所述读请求携带待读取的第一报文片段的存储地址;所述控制器用于根据所述存储地址,确定存储所述第一报文片段的存储单元;所述控制器用于从所述存储单元中读取所述第一报文片段。在本申请实施例中,通过将一个bank单元划分为多个存储单元以存储报文片段,有利于提高存储空间的利用率,避免了现有技术中每个bank单元仅存储一个报文单元,当报文单元的尺寸较小时,导致bank单元浪费的存储空间较大。在一种可能的实现方式中,所述第一bank包括多个子bank,每个子bank包括至少一个存储单元,所述多个子bank分别包括所述第一bank单元包含的多个存储单元,所述多个子bank与所述第一bank单元包含的多个存储单元一一对应;所述bank的控制器用于根据所述存储地址,确定存储所述第一报文片段的存储单元,包括:所述控制器用于根据所述存储地址,从所述多个子bank中选择第一子bank;以及根据所述存储地址,从所述第一子bank包含的至少一个存储单元中选择所述第一存储单元。在本申请实施例中,以子bank与bank单元的形式划分出多个存储单元,有利于快速定位到存储单元。在一种可能的实现方式中,所述控制器包含多个空闲地址池控制器FAPC,所述多个FAPC与所述多个子bank一一对应,每个FAPC记录对应的子bank中处于空闲状态的存储单元的地址。在本申请实施例中,通过每个子bank对应的FAPC管理处于空闲状态的存储单元,以便于有多个报文片段需要存储时,可以并行地为报文片段分配存储单元,有利于减少存储报文的时延。在一种可能的实现方式中,所述第一报文片段是第一报文单元中的片段,所述第一报文单元还包括第二报文片段,所述控制器获取指示所述第一存储单元存储的报文片段和所述第二存储单元存储的报文本文档来自技高网...

【技术保护点】
1.一种存储器,其特征在于,所述存储器包括控制器以及第一bank,所述第一bank包括第一bank单元,所述第一bank单元包含多个存储单元,/n所述控制器用于接收写请求,所述写请求用于请求写入第一报文片段;/n所述控制器用于从所述第一bank单元的多个存储单元中选择第一存储单元;/n所述控制器用于将所述第一报文片段写入所述选择的所述第一存储单元,所述第一存储单元的容量大于或者等于所述第一报文片段的尺寸。/n

【技术特征摘要】
1.一种存储器,其特征在于,所述存储器包括控制器以及第一bank,所述第一bank包括第一bank单元,所述第一bank单元包含多个存储单元,
所述控制器用于接收写请求,所述写请求用于请求写入第一报文片段;
所述控制器用于从所述第一bank单元的多个存储单元中选择第一存储单元;
所述控制器用于将所述第一报文片段写入所述选择的所述第一存储单元,所述第一存储单元的容量大于或者等于所述第一报文片段的尺寸。


2.如权利要求1所述的存储器,其特征在于,所述第一bank包括多个子bank,每个子bank包括至少一个存储单元,所述多个子bank分别包括所述第一bank单元包含的多个存储单元,所述多个子bank与所述第一bank单元包含的多个存储单元一一对应;
所述控制器用于从所述第一bank单元的多个存储单元中选择第一存储单元包括:
所述控制器用于从所述多个子bank中选择第一子bank;以及
从选择的所述第一子bank包含的至少一个存储单元中选择所述第一存储单元。


3.如权利要求2所述的存储器,其特征在于,所述控制器包含多个空闲地址池控制器FAPC,所述多个FAPC与所述多个子bank一一对应,每个FAPC记录对应的子bank中处于空闲状态的存储单元的地址;
所述控制器用于从选择的所述第一子bank包含的至少一个存储单元中选择所述第一存储单元包括:
所述控制器用于从所述多个FAPC中的第一FAPC记录的存储单元的地址中,选择所述第一存储单元的地址,所述第一FAPC对应所述第一子bank。


4.如权利要求2或3所述的存储器,其特征在于,所述第一报文片段是第一报文中的片段,所述第一报文还包括第二报文片段,所述存储器包括第二存储单元;
所述控制器还用于将所述第二报文片段写入所述第二存储单元,所述控制器记录指示所述第一存储单元存储的报文片段和所述第二存储单元存储的报文片段是一个报文中相邻的报文片段的信息。


5.如权利要求4所述的存储器,其特征在于,所述信息以数组表示,所述数组中的第x个元素在所述数组中的元素编号对应所述第一存储单元,所述第x个元素的值指示所述第二存储单元,x为正整数。<...

【专利技术属性】
技术研发人员:赵岩李楠
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1