[发明专利]一读一写存储器、多读多写存储器及其读写方法在审
申请号: | 201410733974.0 | 申请日: | 2014-12-05 |
公开(公告)号: | CN104484129A | 公开(公告)日: | 2015-04-01 |
发明(设计)人: | 许俊;夏杰;段光生 | 申请(专利权)人: | 盛科网络(苏州)有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 苏州慧通知识产权代理事务所(普通合伙) 32239 | 代理人: | 安纪平 |
地址: | 215021 江苏省苏州市工业园区*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一读一写 存储器 多读多写 及其 读写 方法 | ||
技术领域
本发明涉及交换机内存储器的技术领域,尤其是涉及一种一读一写存储器及其读写方法,以及拓展到的多读多写存储器及其实现方法。
背景技术
目前实现高性能交换机内部大容量的一读一写存储器(1R1W存储器,支持同时读操作和写操作),如实现数据包缓冲区(packet buffer),主要有两种办法:一种方法是将多个小容量的1R1W存储器拼接起来,这样功能上可以实现1R1W存储器,但实现后的存储器面积较大,尤其会导致功耗高,时序难收敛;以实现一个16384D540W的1R1W存储器为例,由于1R1W存储器的最大容量有限,共需要15块16384D36W的1R1W存储器级联起来才能实现一块16384D540W的存储器,这么多个1R1W存储器的功耗很大,时序也很难收敛。
另一种方法是采用两块大容量的一读或一写存储器(1RW存储器,不支持同时读操作和写操作),再加上少量的控制逻辑来实现。同样实现16384D540W的1R1W存储器,需要两块16384D540W的大容量1RW存储器,加上控制逻辑控制读写操作,使得读和写操作分别在不同的1RW存储器,从而实现基于1RW存储器的1R1W存储器,这种1R1W存储器只采用两块大容量高密度的1RW存储器,可以获得较好的功耗,时序也比较好收敛,但在存储器的面积上还可以做进一步地优化。
发明内容
本发明的目的在于克服现有技术的缺陷,提供一种一读一写存储器、多读多写存储器及其读写方法,基于(1+N)个1/N目标深度的一读或一写存储器实现一读一写存储器,基于(1+N)个1/N目标深度的一读一写存储器实现多读多写存储器,以减小芯片面积,降低芯片功耗,从而降低芯片成本,提高芯片竞争力。
为实现上述目的,本发明提出如下技术方案:一种一读一写存储器,所述一读一写存储器的目标深度为x,x为大于0的整数,其特征在于:包括(1+N)个一读或一写存储器、状态存储单元和控制逻辑,N为大于等于2的偶数,并且满足目标深度除以N为整数,每个所述一读或一写存储器的深度为所述目标深度x的1/N,(N+1)个所述1RW存储器具有x*(N+1)/N个地址,其中x个地址存的是有效数据,x/N个地址存储的是无效数据,且所述x/N个地址分布在(N+1)个所述1RW存储器中,所述状态存储单元用于记录并更新每个读地址或者写地址对应的数据存储状态,所述控制逻辑用于控制所述一读一写存储器的读写操作。
优选地,所述状态存储单元用小于等于[(N+1)*(log2N取整+1)]个比特来记录每个读地址或者写地址对应的数据存储状态。
优选地,所述状态存储单元的存储深度与每个所述一读或一写存储器的存储深度相同。
本发明的另一目的还在于提供一种一读一写存储器的读写方法,包括以下步骤:
S1,所述控制逻辑从所述状态存储单元中读出读地址和写地址对应的数据存储状态;
S2,根据读到的所述数据存储状态判断到对应的所述一读或一写存储器中读取数据,并找出可写的所述一读或一写存储器写入数据。
优选地,若读数据操作和写数据操作同时,且所述读地址和写地址对应的数据在同一块所述一读或一写存储器中,则将数据写入除读数据操作对应的一读或一写存储器之外的一读或一写存储器中。
优选地,在步骤S2中,若所述读地址和写地址对应的数据在同一块所述一读或一写存储器中,则选择存有无效数据的所述一读或一写存储器写入数据,并同时更新所述状态存储单元中写地址对应的数据存储状态;若所述读地址和写地址对应的数据不在同一块所述一读或一写存储器中,则直接将数据写入到所述写地址对应的一读或一写存储器中。
本发明基于(1+N)个1/N目标深度的一读或一写存储器,再加上一定的控制逻辑电路和状态存储单元实现目标容量的一读一写存储器。
本发明还可以基于1R1W存储器实现nRmW多读多写存储器,实现的nRmW存储器的目标深度为x,则需要n个1RmW存储单元和一状态存储单元,每个1RmW存储单元具有(N+m-1)个一读一写存储器,即总共需要n*(N+m-1)个1R1W存储器,其中x,n,N,m,均为大于0的整数,每个一读一写存储器的深度和状态存储单元的深度均为目标深度x的1/N;状态存储单元需要支持同时(m+n)个读操作和m个写操作,用于记录并更新每个多读多写存储器nRmW的每个读地址或者写地址对应的数据存储状态。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于盛科网络(苏州)有限公司,未经盛科网络(苏州)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410733974.0/2.html,转载请声明来源钻瓜专利网。