实现表项在物理存储器上动态分配的方法和装置的制作方法

文档序号:6440779阅读:360来源:国知局
专利名称:实现表项在物理存储器上动态分配的方法和装置的制作方法
技术领域
本发明涉及网络通信领域,尤其涉及一种实现表项在物理存储器上动态分配的方法和装置。
背景技术
随着以太网技术的迅猛发展,单颗交换机芯片往往需要支持大量的以太网协议, 以满足日益增长的应用需求。现有的交换机芯片中,通常使用内嵌存储器来存储各种配置, 而随着芯片应用的多元化,芯片内使用的存储器也越来越多。现有交换机芯片的存储器设计方法为芯片设计时考虑到具体应用情况,如为了支持协议1,那么芯片内就要增加存储器1,而在特定应用中,该存储器1需要的最大深度是 1024,那么芯片设计时就只能够将存储器1规格按照IOM深度设计。按照这个设计方法, 芯片设计时会确定每个存储器的大小,一旦芯片生产后,每个存储器的大小与边界是不能修改的。在实际应用中,很多时候存储器并不需要使用到最大的深度,这种情况下虽然满足了功能,但是存储器的使用率很低。存储器数量的增加,势必会增加芯片的面积,进而影响芯片的成本。

发明内容
本发明的目的在于提供一种实现表项在物理存储器上动态分配的方法,其通过寄存器配置的方式,实现将不同表项动态分配到同一个物理存储器的不同物理空间,也可以将多个物理存储器动态组合成连续逻辑空间分配给同一表项。相应于上述方法,本发明的目的还在于提供一种应用上述方法的装置。为实现上述发明目的之一,本发明的一种实现表项在物理存储器上动态分配的方法,包括如下步骤
51、接收表项访问请求并存储于访问请求缓存中;
52、判断当前请求所需访问的目的物理存储器;
53、向所需访问的目的物理存储器对应的存储器接口控制模块发送存储器访问请求;
54、响应所述存储器访问请求并将响应结果发送至对应的访问请求控制单元;
55、从所述访问请求缓存中取出表项访问请求并发送至对应的存储器访问控制单元;
56、访问所需访问的物理存储器,并返回访问结果。作为本发明的进一步改进,所述步骤S2具体为
在表项访问接口控制模块内设置有数据通道使能开关控制寄存器,其中,所述数据通道使能开关控制寄存器每个比特代表一个数据通道,配置为“0”表明关闭对应数据通道,配置为“1”表明使能对应数据通道;
根据当前请求,相应配置数据通道使能开关控制寄存器; 根据配置信息来判断当前应用所需访问的目的物理存储器。
作为本发明的进一步改进,所述步骤S4具体为
存储器接口控制模块内部的访问请求仲裁每次会响应一个存储器访问请求; 将响应的结果发送至对应的表项访问请求控制单元; 作为本发明的进一步改进,所述步骤S5还包括
判断访问请求缓存中是否还有访问请求,若有,则返回步骤S2 ;若否,则继续执行步骤S6。作为本发明的进一步改进,所述步骤S6具体为 表项访问接口控制模块按照顺序依次发送每个访问请求;
作固定的延时,访问请求的结果依次从存储器接口控制模块返回到表项访问接口控制模块;
表项访问接口控制模块在将访问结果进行处理后将表项访问结果发送出去。为实现上述另一发明目的,本发明的一种实现表项在物理存储器上动态分配的装置,包括如下单元
请求接收单元、用于接收表项访问请求并存储于访问请求缓存中; 判断单元、用于判断当前请求所需访问的目的物理存储器;
存储器请求发送单元、用于向所需访问的目的物理存储器对应的存储器接口控制模块发送存储器访问请求;
请求响应单元、用于响应所述存储器访问请求并将响应结果发送至对应的访问请求控制单元;
表项请求发送单元、用于从所述访问请求缓存中取出表项访问请求并发送至对应的存储器访问控制单元;
访问执行单元、用于访问所需访问的物理存储器,并返回访问结果。作为本发明的进一步改进,所述判断单元具体用于
在表项访问接口控制模块内设置有数据通道使能开关控制寄存器,其中,所述数据通道使能开关控制寄存器每个比特代表一个数据通道,配置为“0”表明关闭对应数据通道,配置为“1”表明使能对应数据通道;
根据当前请求,相应配置数据通道使能开关控制寄存器; 根据配置信息来判断当前应用所需访问的目的物理存储器。作为本发明的进一步改进,所述请求响应单元具体用于
存储器接口控制模块内部的访问请求仲裁每次会响应一个存储器访问请求; 将响应的结果发送至对应的表项访问请求控制单元; 作为本发明的进一步改进,所述表项请求发送单元还用于
判断访问请求缓存中是否还有访问请求,若有,则返回判断单元;若否,则继续执行访问执行单元。作为本发明的进一步改进,所述访问执行单元具体用于 表项访问接口控制模块按照顺序依次发送每个访问请求;
作固定的延时,访问请求的结果依次从存储器接口控制模块返回到表项访问接口控制模块;
表项访问接口控制模块在将访问结果进行处理后将表项访问结果发送出去。
与现有技术相比,本发明通过寄存器配置的方式,实现将不同表项动态分配到同一个物理存储器的不同物理空间,其实现方法简单,使用灵活,且极大提高了芯片在不同场景下的适用性。


图1是本发明一实施方式中实现表项在物理存储器上动态分配的方法的工作流程图2是本发明一实施方式中表项在物理存储器上动态管理实现总体结构图3是本发明一实施方式中表项在物理存储器上动态管理具体原理图4是本发明一实施方式中实现表项在物理存储器上动态分配的装置的模块示意图。
具体实施例方式以下将结合附图所示的具体实施方式
对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。请参图1至图3所示,本发明提供一种实现表项在物理存储器上动态分配管理的方法,其实现原理如图2所示,多个物理存储器按照序号进行统一的地址编制(从#0到#n), 表项接口控制单元有数据通道分别连接至期望能够访问的存储器接口控制模块(从#0到 #n),各个存储器接口控制模块与物理存储器有物理连接,它会响应来自各个表项的访问请求,并根据响应的请求去访问物理存储器。结合图1和图3所示,在本发明一具体实施方式
中,一种实现表项在物理存储器上动态分配的方法,包括如下步骤
Si、接收表项访问请求并存储于访问请求缓存中;其中,表项访问接口控制模块会将访问请求存入访问请求缓存,访问请求信息包括访问的地址,访问类型,即读操作还是写操作寸。S2、判断当前请求所需访问的目的物理存储器;在本实施方式中,表项访问接口控制模块内设置有数据通道使能开关控制寄存器,该寄存器每个比特代表一个数据通道,配置为“0”表明关闭对应数据通道,配置为“1”表明使能对应数据通道。还设置有表项在物理存储器的起始地址寄存器,以满足根据应用需要实现表项在物理存储器上的动态分配。 表项访问接口控制模块内的访问请求控制单元会根据上述信息判断出表项访问请求要访问的目的物理存储器,并向对应的存储器接口控制模块发送存储器访问请求。表项0有物理通道分别连接至存储器控制单元0、存储器控制单元1、存储器控制单元2,假设每个物理存储器的深度是1024,表明表项0最多可以配置使用3个物理存储器的空间,也就是表项0最多可分配的深度是3072。假设在应用中只需要表项0深度为2048, 并分配使用物理存储器0,物理存储器2,那么需要在表项0访问接口控制单元内设置对应的数据通道使能开关控制寄存器为3’bl01,设置表项0在物理存储器的起始地址寄存器为 O0如果一个表项0访问请求对应的访问地址是1036,超过了一个物理存储器的深度,也就是需要访问表项0分配的第二个物理存储器,再结合表项0的数据通道使能开关控制寄存器,可以得出表项0分配的第二个物理存储器实际编号是物理存储器2,那么这个访问请求就会向存储器接口控制模块2发送存储器访问请求。S3、向所需访问的目的物理存储器对应的存储器接口控制模块发送存储器访问请求;
S4、响应所述存储器访问请求并将响应结果发送至对应的访问请求控制单元; 本步骤具体为存储器接口控制模块内部的访问请求仲裁每次会响应一个存储器访问请求,并将响应的结果发送至对应的表项访问请求控制单元,表明允许该表项访问物理存储器。S5、从所述访问请求缓存中取出表项访问请求并发送至对应的存储器访问控制单元;
表项访问请求控制单元一旦得到物理存储器允许访问的信息,就从访问请求缓存中取出访问请求信息,并将该信息发送至对应的存储器接口控制单元。该步骤还包括判断访问请求缓存中是否还有访问请求,若有,则返回步骤S2 ;若否,则继续执行步骤S6。S6、访问所需访问的物理存储器,并返回访问结果。存储器接口控制模块内部的访问请求汇聚单元会根据访问请求仲裁结果接收对应表项访问请求信息,生成访问物理存储器的时序请求去访问物理存储器。如果是物理存储器读请求,在经过固定的延时后,读取的数据会从物理存储器返回,存储器接口控制模块的访问结果发送单元会将读结果发送到对应的表项访问接口控制模块。所述步骤S6具体为
表项访问接口控制模块按照顺序依次发送每个访问请求;
作固定的延时,访问请求的结果依次从存储器接口控制模块返回到表项访问接口控制模块;
表项访问接口控制模块在将访问结果进行处理后将表项访问结果发送出去。如图4所示,在本发明一具体实施方式
中,一种实现表项在物理存储器上动态分配的装置,包括如下单元
请求接收单元101、用于接收表项访问请求并存储于访问请求缓存中;其中,表项访问接口控制模块会将访问请求存入访问请求缓存,访问请求信息包括访问的地址,访问类型, 即读操作还是写操作等。判断单元102、用于判断当前请求所需访问的目的物理存储器;在本实施方式中, 表项访问接口控制模块内设置有数据通道使能开关控制寄存器,该寄存器每个比特代表一个数据通道,配置为“0”表明关闭对应数据通道,配置为“1”表明使能对应数据通道。还设置有表项在物理存储器的起始地址寄存器,以满足根据应用需要实现表项在物理存储器上的动态分配。表项访问接口控制模块内的访问请求控制单元会根据上述信息判断出表项访问请求要访问的目的物理存储器,并向对应的存储器接口控制模块发送存储器访问请求。表项0有物理通道分别连接至存储器控制单元0、存储器控制单元1、存储器控制单元2,假设每个物理存储器的深度是1024,表明表项0最多可以配置使用3个物理存储器的空间,也就是表项0最多可分配的深度是3072。假设在应用中只需要表项0深度为2048, 并分配使用物理存储器0,物理存储器2,那么需要在表项0访问接口控制单元内设置对应的数据通道使能开关控制寄存器为3’bl01,设置表项0在物理存储器的起始地址寄存器为 O0如果一个表项0访问请求对应的访问地址是1036,超过了一个物理存储器的深度,也就是需要访问表项0分配的第二个物理存储器,再结合表项0的数据通道使能开关控制寄存器,可以得出表项O分配的第二个物理存储器实际编号是物理存储器2,那么这个访问请求就会向存储器接口控制模块2发送存储器访问请求。存储器请求发送单元103、用于向所需访问的目的物理存储器对应的存储器接口控制模块发送存储器访问请求;
请求响应单元104、用于响应所述存储器访问请求并将响应结果发送至对应的访问请求控制单元;本单元具体用于存储器接口控制模块内部的访问请求仲裁每次会响应一个存储器访问请求,并将响应的结果发送至对应的表项访问请求控制单元,表明允许该表项访问物理存储器。表项请求发送单元105、用于从所述访问请求缓存中取出表项访问请求并发送至对应的存储器访问控制单元;表项访问请求控制单元一旦得到物理存储器允许访问的信息,就从访问请求缓存中取出访问请求信息,并将该信息发送至对应的存储器接口控制单元。该步骤还包括判断访问请求缓存中是否还有访问请求,若有,则返回判断单元102 ;若否,则继续执行访问执行单元106。访问执行单元106、用于访问所需访问的物理存储器,并返回访问结果。存储器接口控制模块内部的访问请求汇聚单元会根据访问请求仲裁结果接收对应表项访问请求信息,生成访问物理存储器的时序请求去访问物理存储器。如果是物理存储器读请求,在经过固定的延时后,读取的数据会从物理存储器返回,存储器接口控制模块的访问结果发送单元会将读结果发送到对应的表项访问接口控制模块。所述访问执行单元106具体用于
表项访问接口控制模块按照顺序依次发送每个访问请求;
作固定的延时,访问请求的结果依次从存储器接口控制模块返回到表项访问接口控制模块;
表项访问接口控制模块在将访问结果进行处理后将表项访问结果发送出去。本发明提供表项在物理存储器上动态分配管理的方法,能根据芯片应用场景的不同,实现将不同表项动态分配到同一个物理存储器的不同物理空间,也可以将多个物理存储器动态组合成连续逻辑空间分配给同一表项,在节省存储器资源,减小芯片面积的同时, 能够大大提高芯片物理存储器的利用率,以有限的存储资源去满足更多的应用需要。其实现方法简单,使用灵活,极大提高了芯片在不同场景下的适用性。为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施方式或者实施方式的某些部分所述的方法。以上所描述的装置实施方式仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施方式方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。本申请可用于众多通用或专用的计算系统环境或配置、或通讯系统环境或设备中。例如个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、 基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、 包括以上任何系统或设备的分布式计算环境等等,以及交换机、路由器、包括以上任何设备的通讯系统环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。
权利要求
1.一种实现表项在物理存储器上动态分配的方法,其特征在于,该方法包括如下步骤51、接收表项访问请求并存储于访问请求缓存中;52、判断当前请求所需访问的目的物理存储器;53、向所需访问的目的物理存储器对应的存储器接口控制模块发送存储器访问请求;54、响应所述存储器访问请求并将响应结果发送至对应的访问请求控制单元;55、从所述访问请求缓存中取出表项访问请求并发送至对应的存储器访问控制单元;56、访问所需访问的物理存储器,并返回访问结果。
2.根据权利要求1所述的方法,其特征在于,所述步骤S2具体为在表项访问接口控制模块内设置有数据通道使能开关控制寄存器,其中,所述数据通道使能开关控制寄存器每个比特代表一个数据通道,配置为“0”表明关闭对应数据通道,配置为“1”表明使能对应数据通道;根据当前请求,相应配置数据通道使能开关控制寄存器; 根据配置信息来判断当前应用所需访问的目的物理存储器。
3.根据权利要求1所述的方法,其特征在于,所述步骤S4具体为 存储器接口控制模块内部的访问请求仲裁每次会响应一个存储器访问请求; 将响应的结果发送至对应的表项访问请求控制单元。
4.根据权利要求1所述的方法,其特征在于,所述步骤S5还包括判断访问请求缓存中是否还有访问请求,若有,则返回步骤S2 ;若否,则继续执行步骤S6。
5.根据权利要求1至4任意一项所述的方法,其特征在于,所述步骤S6具体为 表项访问接口控制模块按照顺序依次发送每个访问请求;作固定的延时,访问请求的结果依次从存储器接口控制模块返回到表项访问接口控制模块;表项访问接口控制模块在将访问结果进行处理后将表项访问结果发送出去。
6.一种实现表项在物理存储器上动态分配的装置,其特征在于,该装置包括如下单元请求接收单元、用于接收表项访问请求并存储于访问请求缓存中; 判断单元、用于判断当前请求所需访问的目的物理存储器;存储器请求发送单元、用于向所需访问的目的物理存储器对应的存储器接口控制模块发送存储器访问请求;请求响应单元、用于响应所述存储器访问请求并将响应结果发送至对应的访问请求控制单元;表项请求发送单元、用于从所述访问请求缓存中取出表项访问请求并发送至对应的存储器访问控制单元;访问执行单元、用于访问所需访问的物理存储器,并返回访问结果。
7.根据权利要求6所述的装置,其特征在于,所述判断单元具体用于在表项访问接口控制模块内设置有数据通道使能开关控制寄存器,其中,所述数据通道使能开关控制寄存器每个比特代表一个数据通道,配置为“0”表明关闭对应数据通道,配置为“1”表明使能对应数据通道;根据当前请求,相应配置数据通道使能开关控制寄存器; 根据配置信息来判断当前应用所需访问的目的物理存储器。
8.根据权利要求6所述的装置,其特征在于,所述请求响应单元具体用于 存储器接口控制模块内部的访问请求仲裁每次会响应一个存储器访问请求; 将响应的结果发送至对应的表项访问请求控制单元。
9.根据权利要求6所述的装置,其特征在于,所述表项请求发送单元还用于 判断访问请求缓存中是否还有访问请求,若有,则返回判断单元;若否,则继续执行访问执行单元。
10.根据权利要求6至9任意一项所述的装置,其特征在于,所述访问执行单元具体用于表项访问接口控制模块按照顺序依次发送每个访问请求;作固定的延时,访问请求的结果依次从存储器接口控制模块返回到表项访问接口控制模块;表项访问接口控制模块在将访问结果进行处理后将表项访问结果发送出去。全文摘要
本发明揭示了一种实现表项在物理存储器上动态分配的方法,包括如下步骤接收表项访问请求并存储于访问请求缓存中;判断当前请求所需访问的目的物理存储器;向所需访问的目的物理存储器对应的存储器接口控制模块发送存储器访问请求;响应所述存储器访问请求并将响应结果发送至对应的访问请求控制单元;从所述访问请求缓存中取出表项访问请求并发送至对应的存储器访问控制单元;访问所需访问的物理存储器,并返回访问结果。本发明通过寄存器配置的方式,实现将不同表项动态分配到同一个物理存储器的不同物理空间,也可以将多个物理存储器动态组合成连续逻辑空间分配给同一表项,其实现方法简单,使用灵活,且极大提高了芯片在不同场景下的适用性。
文档编号G06F12/08GK102521155SQ201110410279
公开日2012年6月27日 申请日期2011年12月12日 优先权日2011年12月12日
发明者廖继平, 耿磊 申请人:盛科网络(苏州)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1