控制模块、存储系统及控制方法技术方案

技术编号:34261033 阅读:61 留言:0更新日期:2022-07-24 13:50
提供了一种控制模块、存储系统及控制方法。该控制模块包括:译码单元,用于对第一数据访问请求进行译码,得到译码信息,其中,第一数据访问请求用于对多个存储体进行跨步访问,译码信息包含跨步访问的步长和地址;位移计算单元,用于根据跨步访问的步长和地址,确定跨步访问的地址的位移值,位移值用于将跨步访问的地址中的针对同一存储体的两个地址调整为针对不同存储体的两个地址;访问控制单元,用于根据位移值对多个存储体进行跨步访问。通过设置移位值,可以降低存储体冲突的概率,从而可以提升跨步访问的访问效率。以提升跨步访问的访问效率。以提升跨步访问的访问效率。

Control module, storage system and control method

【技术实现步骤摘要】
控制模块、存储系统及控制方法


[0001]本申请实施例涉及存储
,并且更为具体地,涉及一种控制模块、存储系统及控制方法。

技术介绍

[0002]存储器通常包含可并行访问的多个存储体。针对此类存储器,可以按照一定的步长进行跨步访问。但是,传统的跨步访问方式存在访问效率低的问题。

技术实现思路

[0003]本申请实施例提供一种控制模块、存储系统及控制方法,以提升跨步访问的效率。
[0004]第一方面,提供一种控制模块,用于访问存储器,所述存储器包含可并行访问的多个存储体,所述控制模块包括:译码单元,用于对第一数据访问请求进行译码,得到译码信息,其中,所述第一数据访问请求用于对所述多个存储体进行跨步访问,所述译码信息包含所述跨步访问的步长和地址;位移计算单元,用于根据所述跨步访问的步长和地址,确定所述跨步访问的地址的位移值,所述位移值用于将所述跨步访问的地址中的针对同一存储体的两个地址调整为针对不同存储体的两个地址;访问控制单元,用于根据所述位移值对所述多个存储体进行跨步访问。
[0005]可选地,作为一种可能的实现方式,所述多个存储体包括多行存储单元,所述多行存储单元以G
S
为单位被划分成G
N
个分组,使得每个分组包含G
S
行存储单元,G
S
和G
N
的取值满足:S=G
N
×
G
S
,其中,S表示所述跨步访问的步长,G
S
为M与S的最小公倍数与M的商,M表示所述多个存储体的数量,所述位移值用于指示所述G
N
个分组中的每个分组内的G
S
行存储单元的地址的循环位移值。
[0006]可选地,作为一种可能的实现方式,所述G
N
个分组中的第i个分组内的G
S
行存储单元的地址的循环位移值为i,其中,i为取值从0至G
N

1的整数。
[0007]可选地,作为一种可能的实现方式,所述控制模块还包括:存取选择单元,用于从控制总线接收所述第一数据访问请求,并判断所述第一数据访问请求为读请求或写请求;所述访问控制单元用于在所述第一数据访问请求为写请求的情况下,将数据总线中的数据写入所述存储器;在所述第一数据访问请求为读请求的情况下,向所述数据总线返回从所述存储器中读取的数据。
[0008]第二方面,提供一种存储系统,包括:存储器,包含可并行访问的多个存储体;如第一方面中任一项所述的控制模块,用于对针对所述多个存储体的跨步访问进行控制。
[0009]可选地,作为一种可能的实现方式,所述存储系统还包括:控制总线和数据总线,与所述控制模块相连。
[0010]第三方面,提供一种控制方法,用于访问存储器,所述存储器包含可并行访问的多个存储体,所述控制方法包括:对第一数据访问请求进行译码,得到译码信息,其中,所述第一数据访问请求用于对所述多个存储体进行跨步访问,所述译码信息包含所述跨步访问的
步长和地址;根据所述跨步访问的步长和地址,确定所述跨步访问的地址的位移值,所述位移值用于将所述跨步访问的地址中的针对同一存储体的两个地址调整为针对不同存储体的两个地址;根据所述位移值对所述多个存储体进行跨步访问。
[0011]可选地,作为一种可能的实现方式,所述多个存储体包括多行存储单元,所述多行存储单元以G
S
为单位被划分成G
N
个分组,使得每个分组包含G
S
行存储单元,G
S
和G
N
的取值满足:S=G
N
×
G
S
,其中,S表示所述跨步访问的步长,G
S
为M与S的最小公倍数与M的商,M表示所述多个存储体的数量,所述位移值用于指示所述G
N
个分组中的每个分组内的G
S
行存储单元的地址的循环位移值。
[0012]可选地,作为一种可能的实现方式,所述G
N
个分组中的第i个分组内的G
S
行存储单元的地址的循环位移值为i,其中,i为取值从0至G
N

1的整数。
[0013]可选地,作为一种可能的实现方式,所述控制方法还包括:从控制总线接收所述第一数据访问请求;判断所述第一数据访问请求为读请求或写请求;在所述第一数据访问请求为写请求的情况下,将数据总线中的数据写入所述存储器;以及在所述第一数据访问请求为读请求的情况下,向所述数据总线返回从所述存储器中读取的数据。
[0014]本申请实施例根据跨步访问的步长和地址,确定跨步访问的地址的位移值。该位移值可用于将跨步访问的地址中的针对同一存储体的两个地址调整为针对不同存储体的两个地址,从而可以减少存储体冲突,进而可以提升跨步访问的访问效率。
附图说明
[0015]图1是跨步访问与矩阵转置关系的类比图。
[0016]图2是跨步访问出现存储体冲突的示例图。
[0017]图3是本申请一实施例提供的控制模块的结构示意图。
[0018]图4是本申请实施例提供的地址位移前的存储器结构的示例图。
[0019]图5是本申请实施例提供的地址位移后的存储器结构的示例图。
[0020]图6是本申请另一实施例提供的控制模块的结构示意图。
[0021]图7是本申请一实施例提供的存储系统的结构示意图。
[0022]图8是本申请另一实施例提供的存储系统的结构示意图。
[0023]图9是本申请又一实施例提供的存储系统的结构示意图。
[0024]图10是本申请一实施例提供的控制方法的流程示意图。
[0025]图11是本申请另一实施例提供的控制方法的流程示意图。
具体实施方式
[0026]为了便于理解,先对本申请实施例涉及的一些相关概念进行介绍。
[0027]跨步访问
[0028]跨步访问是对存储器的数据进行等步长的访问。步长也可称为跨步数、跨步长度。本申请实施例提及的存储器可以是具有多个可并行访问的存储体(bank)的存储器。该存储器例如可以是动态随机存取存储器(Dynamic Random Access Memory,DRAM)。
[0029]跨步访问的数据可以由访问的起始数据和步长确定。如果将跨步访问的对象看成一个矩阵,则跨步访问的过程类似于矩阵转置的操作。下面结合图1,以步长为4的跨步访问
为例,对跨步访问与矩阵转置进行类比说明。
[0030]参见图1,对左图的矩阵进行跨步访问,访问目标为取5个数。如果访问的起始数据为1,以步长4向左取数,得到的5个数分别为1、5、9、13、17。类似地,访问的起始数据为2,以步长4向左取数,所得结果为2、6、10、14、18。访问的起始数据为1,以步长4向左读取,所得结果为3、7、11、15、19本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种控制模块,其特征在于,所述控制模块用于访问存储器,所述存储器包含可并行访问的多个存储体,所述控制模块包括:译码单元,用于对第一数据访问请求进行译码,得到译码信息,其中,所述第一数据访问请求用于对所述多个存储体进行跨步访问,所述译码信息包含所述跨步访问的步长和地址;位移计算单元,用于根据所述跨步访问的步长和地址,确定所述跨步访问的地址的位移值,所述位移值用于将所述跨步访问的地址中的针对同一存储体的两个地址调整为针对不同存储体的两个地址;访问控制单元,用于根据所述位移值对所述多个存储体进行跨步访问。2.根据权利要求1所述的控制模块,其特征在于,所述多个存储体包括多行存储单元,所述多行存储单元以G
S
为单位被划分成G
N
个分组,使得每个分组包含G
S
行存储单元,G
S
和G
N
的取值满足:S=G
N
×
G
S
,其中,S表示所述跨步访问的步长,G
S
为M与S的最小公倍数与M的商,M表示所述多个存储体的数量,所述位移值用于指示所述G
N
个分组中的每个分组内的G
S
行存储单元的地址的循环位移值。3.根据权利要求2所述的控制模块,其特征在于,所述G
N
个分组中的第i个分组内的G
S
行存储单元的地址的循环位移值为i,其中,i为取值从0至G
N

1的整数。4.根据权利要求1所述的控制模块,其特征在于,所述控制模块还包括:存取选择单元,用于从控制总线接收所述第一数据访问请求,并判断所述第一数据访问请求为读请求或写请求;所述访问控制单元用于在所述第一数据访问请求为写请求的情况下,将数据总线中的数据写入所述存储器;在所述第一数据访问请求为读请求的情况下,向所述数据总线返回从所述存储器中读取的数据。5.一种存储系统,其特征在于,包括:存储器,包含可并行访问的多个存储体;如权利要求1

...

【专利技术属性】
技术研发人员:杜宏堃吴盼望赵岩
申请(专利权)人:OPPO广东移动通信有限公司
类型:发明
国别省市:

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

1