CN104850501A - 一种ddr存储器访存地址映射方法及访存地址映射单元 - Google Patents

一种ddr存储器访存地址映射方法及访存地址映射单元 Download PDF

Info

Publication number
CN104850501A
CN104850501A CN201510212177.2A CN201510212177A CN104850501A CN 104850501 A CN104850501 A CN 104850501A CN 201510212177 A CN201510212177 A CN 201510212177A CN 104850501 A CN104850501 A CN 104850501A
Authority
CN
China
Prior art keywords
address mapping
access
memory access
address
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510212177.2A
Other languages
English (en)
Other versions
CN104850501B (zh
Inventor
陈胜刚
曾思
付兴飞
刘胜
陈海燕
彭元喜
陈虎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN201510212177.2A priority Critical patent/CN104850501B/zh
Publication of CN104850501A publication Critical patent/CN104850501A/zh
Application granted granted Critical
Publication of CN104850501B publication Critical patent/CN104850501B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开一种DDR存储器访存地址映射方法以及访存地址映射单元,该访存地址映射方法步骤包括:1)根据不同主机对DDR存储器的访问模式设置对应的地址映射规则;2)DDR存储器接入主机的访问请求后,根据主机所需的访问模式选择出对应的地址映射规则并输出:3)接入待映射访存地址并按步骤2)输出的地址映射规则执行映射;该访存地址映射单元包括映射规则设置模块、映射模式选择模块以及访存地址映射模块。本发明能够根据不同主机的访存特性进行访存地址映射,使得具有不同访存特征的主机均能够通过合适的地址映射方式实现高效的存储器访问,具有结构简单、访存地址映射灵活且高效的优点。

Description

一种DDR存储器访存地址映射方法及访存地址映射单元
技术领域
本发明涉及DDR(Double Data Rate)存储器访存技术领域,尤其涉及一种DDR存储器访存地址映射方法及访存地址映射单元。
背景技术
DDR存储器是一种采用时钟双沿工作的高速存储器,DDR的标称速率已经从DDR的133Mbps发展到今天的DDR3-2133Mbps,更高速率的DDR4也已经开始进入工业应用。DDR存储器与SRAM(静态随机访问存储器,Static Random Access Memory)存储器所采用的CMOS工艺不同,DDR存储器采用DRAM动态电路工艺,多采用电容进行储值。因此,读写DDR存储器之前必须先对数据线进行预充电,然后执行读操作;且由于读是一种破坏性读出,读后必须写回;同时,漏流的存在使得DDR必须保持定期刷新(读出放大后再写回)。虽然读写过程相对繁琐,但相对SRAM来讲,DRAM占用面积小,可集成度高,访问速率快,因此作为内存被广泛使用。
为了便于拔插使用,DDR存储器通常组织成多个体(Bank),每个体是由多个行(Row)和多个列(Column)组成的矩阵,通过Rank地址、行地址、列地址以及体地址以寻址存储单元。DDR存储器芯片(DDR Chip)通常是通过特定的板级电路封装成DIMM(模组)的形式使用,每个DIMM上通常包含多个DDR Chip,多个DDR Chip通常又分别组织成一个或者多个Rank,每个Rank对应一个片选信号CS#,片选信号CS#通常是由Rank地址译码得到。一个典型4-Rank的DDR3DIMM的存储体组织结构如图1所示,整个存储体是由4个或者8个体(Bank)组成,每一行又称为一页面(Page),DDR3DIMM就是通过Rank地址(CS#)、行地址(RA)、列地址(CA)以及体地址(BA)来寻址存储单元,每个单元存储的数据比特数就是当前DDR3存储体的位宽;DDR3Chip的位宽有4/8/16比特三种,而DIMM的位宽则更宽,一般常见的有32、64比特等。
对DDR存储器进行访问时,若需要切换访问的Page,则首先必须关闭当前Page,然后才能打开要访问的Page,而打开Page和关闭Page时,不可对当前Bank进行其他操作且费时较长,这也正是DDR访问效率低的主要原因。例如,对于DDR3控制器,首先通过CS#、BA、RA定位到要访问的Page,然后通过列地址CA定位要访问的存储单元,每一个Bank都包含一个行缓冲(Row Buffer),要访问的Page必须处于行缓冲中,其中在正常读写模式下,DIMM的每一个Bank同时只能有一个Page被访问;执行访问之前,DDR控制器必须首先通过Activate命令激活(打开)访问位置所在的Bank中对应的Page,即告诉DDR3存储器将该Page的数据放到行缓冲中,然后通过带列地址CA的读写命令(Read/Write)去访问行缓冲中的目标位置。由于DDR存储器采用突发访问,任何一次访问时,根据访问列地址可以确定8个或者4个存储单元,若需要切换到当前Bank的其他P age进行访问,则控制器必须首先通过Precharge命令控制DIMM将行缓冲中的数据写回到存储器中(即关闭当前Page),然后才能打开要访问的Page。
为了解决上述问题以提高DDR存储器的访问效率,一种方法是尽量重复使用打开的Page以减少Page的切换次数,然而,以DDR3存储器为例,一个64比特的DIMM的Page容量一般为8KB或者16KB,应用程序总是不能连续重复使用高达一个Page的数据量;另一种是采用命令调度或者虚拟打开页方式,然而命令调度非常复杂,而且由于调度窗口有限,在多种访存属性并存情况下效率非常低,虚拟打开页也需要较大的缓冲,并且由于访存规则的变化会引起虚拟打开页的频繁失效,因此从效率、开销以及对多种访存规则的同时支持角度来看,这类方法都不够理想。
还有一种方法是通过在Bank体之间进行地址映射的方法,由于DDR存储器一个Bank的Activate命令可以与其他Bank进行访问的时候提前执行,因而当命中另外一个Bank的新请求到来的时候,所需要访问的Page已经处于打开状态,可以降低DDR存储器切换Page带来的开销。目前这类方法均只能支持单一的映射方式,例如单一的高位交叉方式或单一的低位交叉方式,不能满足应用程序的多样化的访问需求,因而在实际情况中还存在页面失效的问题。特别是在多核DSP中,多个DSP核、不同的外设都是DDR存储器的主机,通常会同时访问DDR存储器,并且具备不同访问属性需求。比如DSP Core的访问是对某地址区域A的跳跃式访问,而DSP外设的数据导入导出的访问则是对另外一片地址B的顺序访问;DSPCore0执行FFT算法需要列访问,而DSP Core1执行图像算法,需要进行块处理,且两个DSPCore访问数据的大小和方式均有所不同。在这种情况下,单一固定的地址映射方式已无法实现“减少Page切换、且切换Page的时候切换Bank”,因而无法优化DDR的访存方式、提高DDR的访问效率。
如图2所示为采用高位交叉的地址映射方式,采用这种方式不可避免的要遭遇到页面失效的问题;如图3所示为采用低位交叉的地址映射方式,其在切换Page的时候同时切换Bank,可以隐藏不同Bank体之间页面关闭和激活的开销,但是,这种映射方式仅能提供单一的地址映射数据的存放方式,当存在多样化应用程序的访问需求时往往会遭遇失效。
发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种结构简单、访存地址映射灵活且高效的DDR存储器访存地址映射方法及访存地址映射单元,能够根据不同主机的访存特性进行访存地址映射,使得具有不同访存特征的主机均能够通过合适的地址映射方式实现高效的存储器访问。
为解决上述技术问题,本发明提出的技术方案为:
一种DDR存储器访存地址映射方法,步骤包括:
1)映射规则设置:根据不同主机对DDR存储器的访问模式设置对应的地址映射规则;
2)映射模式选择:DDR存储器接入一个主机发送的访问请求后,根据当前主机所需的访问模式从所述步骤1)设置得到的地址映射规则中选择出对应的地址映射规则作为当前地址映射规则输出:
3)访存地址映射:接入待映射访存地址并按当前地址映射规则执行映射。
作为本发明DDR存储器访存地址映射方法的进一步改进,所述步骤3)的具体步骤为:
3.1)将当前地址映射规则进行译码,转换得到控制交叉开关矩阵的开关控制信号;
3.2)所述交叉开关矩阵接入待映射访存地址,并在所述开关控制信号的控制下将所述待映射访存地址按当前地址映射规则执行映射。
作为本发明DDR存储器访存地址映射方法的进一步改进:所述步骤1)还包括为设置得到的各地址映射规则分别分配一个用于选择匹配的的模式标识信号的步骤。
作为本发明DDR存储器访存地址映射方法的进一步改进,所述步骤2)的具体步骤为:
2.1)DDR存储器接入一个主机的访问请求后,获取当前主机发送的用于指定所需访问模式的模式选择信号;
2.2)将获取得到的所述模式选择信号与所述步骤1)得到的各地址映射规则的模式标识信号进行匹配,若匹配成功,输出对应的地址映射规则作为当前地址映射规则。
作为本发明DDR存储器访存地址映射方法的进一步改进,所述步骤3)后还包括模式切换判定步骤,具体步骤为:当DDR存储器接入下一个主机发送的访问请求时,判断下一个主机所需的访问模式否与上一个主机所需的访问模式相同,若不相同,则判定需要切换访问模式,重新根据下一个主机所需的访问模式从所述步骤1)设置得到的各地址映射规则中选择出对应地址映射规则作为当前地址映射规则,返回执行步骤3);否则,判定不需要切换访问模式,保持当前地址映射规则不变,返回执行步骤3)。
一种DDR存储器访存地址映射单元,包括:
映射规则设置模块,用于根据不同主机对DDR存储器的访问模式设置对应的地址映射规则;
映射模式选择模块,用于DDR存储器接入一个主机的访问请求后,根据当前主机所需的访问模式从所述映射规则设置模块设置得到的地址映射规则中选择出对应的地址映射规则作为当前地址映射规则;
访存地址映射模块,用于接入待映射访存地址并按当前地址映射规则执行映射。
作为本发明DDR存储器访存地址映射单元的进一步改进:所述访存地址映射模块包括模式译码单元以及交叉开关矩阵,所述模式译码单元的输出端连接所述交叉开关矩阵的控制端;所述模式译码单元将当前地址映射规则进行译码,转换得到控制所述交叉开关矩阵的开关控制信号;所述交叉开关矩阵接入待映射访存地址,并在所述开关控制信号的控制下按当前地址映射规则执行映射。
作为本发明DDR存储器访存地址映射单元的进一步改进,所述映射规则设置模块还包括用于为设置得到的每种地址映射规则分别分配一个用于选择匹配的模式标识信号的模式标识分配单元。
作为本发明DDR存储器访存地址映射单元的进一步改进,所述映射模式选择模块包括:
模式标识信号获取单元,DDR存储器接入一个主机的访问请求后,获取当前主机发送的用于指定所需访问模式的模式选择信号;
模式控制输出单元,将获取得到的所述模式选择信号与从所述映射规则设置模块得到的各地址映射规则的模式标识信号进行匹配,若匹配成功,输出对应的地址映射规则作为当前地址映射规则。
作为本发明DDR存储器访存地址映射单元的进一步改进,还包括模式切换判断模块,所述模式切换判断模块用于当DDR存储器接入下一个主机发送的访问请求时,判断下一个主机所需的访问模式否与上一个主机所需的访问模式相同,若不相同,则判定需要切换访问模式,重新根据下一个主机所需的访问模式从所述映射规则设置模块设置得到的各地址映射规则中选择出对应地址映射规则作为当前地址映射规则输出,返回执行访存映射模块;否则,判定不需要切换访问模式,保持当前地址映射规则不变,返回执行访存映射模块。
与现有技术相比,本发明的优点在于:
1)本发明根据不同主机的访问模式设置对应的地址映射规则,再根据访问时主机所需的访问模式选择出对应的地址映射规则来执行映射,访问地址映射的方式灵活、高效,能够根据不同主机的访存特性进行不同的访存地址映射,使得各种具备不同访存特征的主机均能够利用合适的地址映射规则来隐藏Page切换引起的开销,特别适用于多主机共享存储的系统中以实现各主机的高效访问;
2)本发明中各个主机根据访问模式对应不同的地址映射规则,能够支持多种访存模式隔离的DDR存储器访存地址映射以及访存优化,通过控制不同地址映射规则的选择控制应用层地址与访问DDR存储器的实地址之间的转换方式,所需的硬件开销小、所能够实现的映射功能灵活,可以将不同模式的访问隔离在DDR存储器的不同BANK组之间,并且在组内实现访存的速度的优化;
3)本发明根据各主机的访问模式选择对应的地址映射规则,可以充分利用应用程序的访存特性,减少了DDR存储器访问页缺失开销,同时极大的提高了实际存储带宽;
4)本发明进一步通过交叉开关矩阵执行访存地址的映射,通过将地址映射规则译码转换为对应的控制交叉开关矩阵的开关控制信号,由开关控制信号控制交叉开关矩阵完成对应的映射,映射过程简单且灵活,通过交叉开关控制能够方便的执行不同映射规则的切换,从而高效的完成多样化应用程层地址到访问DDR存储器实地址的映射。
5)本发明进一步的通过为地址映射规则分配对应的模式标识信号,使得主机通过设置与模式标识信号匹配的模式选择信号即可为主机指定所需的访问模式,从而将用户应用程序的访存特征反映到地址分配上,免除用户再次编排存储器访问顺序和数据存放地址。
附图说明
图1是典型的DDR3存储器的结构原理示意图。
图2是传统的采用高位交叉地址映射方法的原理示意图。
图3是传统的采用低位交叉地址映射方法的原理示意图。
图4是本实施例DDR存储器访存地址映射方法的实现流程示意图。
图5是本实施例中实现多主机的访存地址映射的原理流程示意图。
图6是本实施例DDR存储器访存地址映射方法采用的具体结构示意图。
图7是应用本发明DDR存储器访存地址映射方法在具体实施例中的映射原理示意图。
图8是在具体实施例中采用两种地址映射规则执行映射的结果示意图。
具体实施方式
以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。
如图4所示,本实施例DDR存储器访存地址映射方法,步骤包括:
1)映射规则设置:根据不同主机对DDR存储器的访问模式设置对应的地址映射规则,地址映射规则即为将访存地址映射为访问DDR存储器的实地址的变换方式;
2)映射模式选择:DDR存储器接入一个主机发送的访问请求后,根据当前主机所需的访问模式从步骤1)设置得到的地址映射规则中选择出对应的地址映射规则作为当前地址映射规则输出:
3)访存地址映射:接入待映射访存地址并按当前地址映射规则执行映射。
本实施例为不同主机的不同访问需求设置不同的地址映射规则,各主机发出访问请求时,由主机所需的访问需求选择出对应的地址映射规则来执行映射,访问地址映射的方式灵活,同时映射过程中不需要复杂的规则配置过程,且不增加关键电路的延时,使得能够高效的完成映射过程。对于多主机共享存储的系统,采用上述方法能够根据不同主机的访存特性进行不同的访存地址映射,使得各种具备不同访存特征的主机均能够利用合适的地址映射规则来隐藏Page切换引起的开销,有效提高了各主机访问DDR存储器的效率。
本实施例中,所接收的访问请求来自应用层访存请求,应用层访存请求中的应用层地址为待映射的访存地址,应用层地址即为应用层看到的存储器线性地址,其位宽一般大于Rank地址、列地址、行地址以及体地址的总和。首先根据访问DDR存储器的不同主机的访存模式(或访存规则),设置对应不同访存模式的地址映射规则,即将应用层地址转换为访问DDR存储器的实地址的变换方式,地址映射规则具体可根据需求进行设定。根据设置的地址映射规则即可设置对应的地址模式向量,通过每个地址模式向量记录一种应用层地址到访问DDR存储器的实地址的地址映射规则。
本实施例访问DDR存储器的实地址是输出给DDR协议转换器使用的分体地址,也即为底层协议控制器的访存地址,包括Rank地址、列地址、行地址以及体地址,其中Rank地址通常用CS#信号来表示,通常最大4bit;其他三个地址的位宽分别表示为c比特、r比特和b比特。地址模式向量的个数由系统具备的访问模式(访问规则)个数决定,一般不会大于16;每个地址模式向量存储在一个模式寄存器中,模式寄存器总共包含(r+b+c)个域,每个域的比特数目为(表示大于等于x的最小整数)。
本实施例中,步骤1)还包括为设置得到的各地址映射规则分别分配一个用于选择匹配的模式标识信号的步骤。系统复位后,通过系统硬件默认为每个地址映射规则绑定分配一个选择子作为模式标识信号,一种地址映射规则与一个选择子唯一绑定。选择子分配完成后,所有的访存主机(比如可以访问DDR存储器的外设、DSPcore等)发出的访存请求都将附带选择子作为请求内容之一,每个主机所附带的选择子可在访存前通过具有修改权限的应用程序进行更改。
本实施例中,步骤2)的具体步骤为:
2.1)DDR存储器接入一个主机的访问请求后,获取当前主机发送的用于指定所需访问模式的模式选择信号;
2.2)将获取得到的模式选择信号与步骤1)得到的各地址映射规则的模式标识信号进行匹配,若匹配成功,输出对应的地址映射规则作为当前地址映射规则。
本实施例通过选择子标识各地址映射向量,同时以相应的选择子作为主机指定所需访问模式的模式选择信号,即主机发送访存请求时附带与所需访问模式对应的地址映射规则的选择子,在接收到主机发送的访存请求后,通过获取其中的选择子即可快速、准确的从各地址映射规则中匹配选择出对应的地址映射规则。
本实施例中,步骤3)的具体步骤为:
3.1)将当前地址映射规则进行译码,转换得到控制交叉开关矩阵的开关控制信号;
3.2)交叉开关矩阵接入待映射访存地址,并在开关控制信号的控制下将待映射访存地址按当前地址映射规则执行映射。
本实施例在应用程序访问DDR存储器的请求中由系统硬件自动带上选择子,根据选择子从多种地址映射规则中选出对应的地址映射规则,经过译码后产生开关控制信号,以控制交叉开关矩阵完成当前请求的应用层地址转换为访问DDR存储器的实地址。底层DDR协议控制器根据映射得到的访问DDR存储器的实地址完成访存操作,能够根据不同需求完成用户既定的DDR存储器访存优化。
本实施例中,步骤3)后还包括模式切换判定步骤,具体步骤为:当DDR存储器接入下一个主机发送的访问请求时,判断下一个主机所需的访问模式否与上一个主机所需的访问模式相同,若不相同,则判定需要切换访问模式,重新根据下一个主机所需的访问模式从步骤1)设置得到的各地址映射规则中选择出对应地址映射规则作为当前地址映射规则输出,返回执行步骤3);否则,判定不需要切换访问模式,保持当前地址映射规则不变,返回执行步骤3)。
如图5所示,本实施例中当存在多个主机需要访问DDR存储器时,首先在初始化时,配置各主机所需的访存模式所对应的地址映射规则,并根据地址映射规则设置得到对应的地址映射向量,为地址映射向量分配选择子;接收到主机发送的访存请求后,根据当前主机发送的访存请求中选择子选择出对应的地址映射向量,根据选择出的地址映射向量执行映射;当接收到下一个主机发送的访存请求时,判断是否需要切换模式,若需要,重新选择对应的地址映射向量执行映射,若不需要,则按当前的地址映射向量执行映射。采用上述方法,各主机均能够根据不同访存特性以设置完成所需的DDR存储器访存优化。
如图6所示,本实施例DDR存储器访存地址映射方法所采用的具体结构,包括依次连接的模式向量组、译码单元以及交叉开关矩阵,模式向量组中通过模式寄存器R0~Rn存储有n个地址模式向量,每一个地址模式向量记录了一种地址映射规则。应用层地址来自应用层访存请求,接入至交叉开关矩阵的信号输入端;选择子为应用层访存请求的一部分,用于选择对应的地址模式向量;根据访存请求中的选择子从模式向量组中选择出对应的地址模式向量后,经过译码逻辑进行译码,转换为开关控制矩阵输出至交叉开关矩阵的控制端,交叉开关矩阵输出端输出映射得到的访问DDR存储器的实地址,包括Rank地址/列地址/行地址/体地址,其中Rank地址用CS#信号来表示,列地址/行地址/体地址的位宽分别为为c比特、r比特和b比特。通过交叉开关矩阵执行访存地址的映射,能够方便的执行不同映射规则的切换,从而高效的完成多样化应用程层地址到访问DDR存储器实地址的映射。
如图7所示,应用本发明DDR存储器访存地址映射方法将应用层地址abcd映射到访存DDR存储器的实地址dcab的映射时,为便于说明,地址模式向量具体设置为4个,行地址r=2,体地址b=2,选择子为0,即需要选择0号地址模式向量,且地址映射的单位为一个page,那么应用层地址的低c比特通过直接通路直接附加在访存DDR存储器的实地址的末尾作为列地址,0号地址模式向量的值经过译码生成开关控制矩阵,由开关控制矩阵作为开关控制信号控制交叉开关的开关,完成地址映射。
如图8所示在一个大小为8KB的Page中执行访存地址映射时,在图8的上半部分(图8(a))示出了应用程序需要访问的数据的逻辑位置(A、B、C、D),从图中可知,在访存的过程中,每访问4KB就会面临一次Page切换引起的等待;在图8的下半部分示出了采用两种地址映射规则执行映射后的结果,通过两种不同的地址映射规则映射将逻辑位置进行重新定位。其中左部分附图(图8(b)是将逻辑位置重新定位到了一个Bank中的后续位置中,位置A、B、C、D的数据分别被放置到位置A1、B1、C1、D1,那么这样每访问8KB数据才会面临一次Page的切换,极大地减少了切换的次数;右部分附图(图8(c))是通过将逻辑位置重新定位到多个Bank中的位置,位置A、B、C、D的数据分别被放置到位置A2、B2、C2、D2,那么每访问4KB数据将会面临一次Page的切换,但是由于切换Page的时候同时也切换了Bank,打开和关闭Page的时间将能够隐藏在4KB的数据访问中,从而提高访存效率。由图8可知,不同地址映射方式具有不同的优势,采用本发明DDR存储器访存地址映射方法,可根据实际程序的实际需求设置地址映射规则(如图8中两种映射方式),从而执行相应规则的映射,因而可根据不同主机的访存特性设置合适的地址映射规则,使得各主机均能够通过隐藏切换Page的开销,从而实现高效的DDR存储器访问。
本实施例还提供一种DDR存储器访存地址映射单元,包括:
映射规则设置模块,用于根据不同主机对DDR存储器的访问模式设置对应的地址映射规则;
映射模式选择模块,用于DDR存储器接入一个主机的访问请求后,根据当前主机所需的访问模式从映射规则设置模块设置得到的各地址映射规则中选择出对应的地址映射规则作为当前地址映射规则输出;
访存地址映射模块,用于接入待映射访存地址并按当前地址映射规则执行映射。
本实施例中,访存地址映射模块包括模式译码单元以及交叉开关矩阵,模式译码单元的输出端连接交叉开关矩阵的控制端;模式译码单元将当前地址映射规则进行译码,转换得到控制交叉开关矩阵的开关控制信号;交叉开关矩阵接入待映射访存地址,并在开关控制信号的控制下按当前地址映射规则执行映射。
本实施例中,映射规则设置模块还包括用于为设置得到的每种地址映射规则分别分配一个用于选择匹配的模式标识信号的模式标识分配单元。
本实施例中,映射模式选择模块包括:
模式标识信号获取单元,DDR存储器接入一个主机的访问请求后,获取当前主机发送的用于指定所需访问模式的模式选择信号;
模式控制输出单元,将获取得到的模式选择信号与从映射规则设置模块得到的各地址映射规则的模式标识信号进行匹配,若匹配成功,输出对应的地址映射规则作为当前地址映射规则。
本实施例中,还包括模式切换判断模块,模式切换判断模块用于当DDR存储器接入下一个主机发送的访问请求时,判断下一个主机所需的访问模式否与上一个主机所需的访问模式相同,若不相同,则判定需要切换访问模式,重新根据下一个主机所需的访问模式从步骤1)设置得到的各地址映射规则中选择出对应地址映射规则作为当前地址映射规则输出,返回执行访存映射模块;否则,判定不需要切换访问模式,保持当前地址映射规则不变,返回执行访存映射模块。
上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。

Claims (10)

1.一种DDR存储器访存地址映射方法,其特征在于,步骤包括:
1)映射规则设置:根据不同主机对DDR存储器的访问模式设置对应的地址映射规则;
2)映射模式选择:DDR存储器接入一个主机发送的访问请求后,根据当前主机所需的访问模式从所述步骤1)设置得到的各地址映射规则中选择出对应的地址映射规则作为当前地址映射规则输出:
3)访存地址映射:接入待映射访存地址并按当前地址映射规则执行映射。
2.根据权利要求1所述的DDR存储器访存地址映射方法,其特征在于,所述步骤3)的具体步骤为:
3.1)将当前地址映射规则进行译码,转换得到控制交叉开关矩阵的开关控制信号;
3.2)所述交叉开关矩阵接入待映射访存地址,并在所述开关控制信号的控制下将所述待映射访存地址按当前地址映射规则执行映射。
3.根据权利要求2所述的DDR存储器访存地址映射方法,其特征在于,所述步骤1)还包括为设置得到的各地址映射规则分别分配一个用于选择匹配的的模式标识信号的步骤。
4.根据权利要求3所述的DDR存储器访存地址映射方法,其特征在于,所述步骤2)的具体步骤为:
2.1)DDR存储器接入一个主机的访问请求后,获取当前主机发送的用于指定所需访问模式的模式选择信号;
2.2)将获取得到的所述模式选择信号与所述步骤1)得到的各地址映射规则的模式标识信号进行匹配,若匹配成功,输出对应的地址映射规则作为当前地址映射规则。
5.根据权利要求1~4中任意一项所述的DDR存储器访存地址映射方法,其特征在于,所述步骤3)后还包括模式切换判定步骤,具体步骤为:当DDR存储器接入下一个主机发送的访问请求时,判断下一个主机所需的访问模式否与上一个主机所需的访问模式相同,若不相同,则判定需要切换访问模式,重新根据下一个主机所需的访问模式从所述步骤1)设置得到的各地址映射规则中选择出对应地址映射规则作为当前地址映射规则输出,返回执行步骤3);否则,判定不需要切换访问模式,保持当前地址映射规则不变,返回执行步骤3)。
6.一种DDR存储器访存地址映射单元,其特征在于,包括:
映射规则设置模块,用于根据不同主机对DDR存储器的访问模式设置对应的地址映射规则;
映射模式选择模块,用于DDR存储器接入一个主机的访问请求后,根据当前主机所需的访问模式从所述映射规则设置模块设置得到的各地址映射规则中选择出对应的地址映射规则作为当前地址映射规则输出;
访存地址映射模块,用于接入待映射访存地址并按当前地址映射规则执行映射。
7.根据权利要求6所述的DDR存储器访存地址映射单元,其特征在于:所述访存地址映射模块包括模式译码单元以及交叉开关矩阵,所述模式译码单元的输出端连接所述交叉开关矩阵的控制端;所述模式译码单元将当前地址映射规则进行译码,转换得到控制所述交叉开关矩阵的开关控制信号;所述交叉开关矩阵接入待映射访存地址,并在所述开关控制信号的控制下按当前地址映射规则执行映射。
8.根据权利要求7所述的DDR存储器访存地址映射单元,其特征在于:所述映射规则设置模块还包括用于为设置得到的每种地址映射规则分配一个用于选择匹配的模式标识信号的模式标识分配单元。
9.根据权利要求8所述的DDR存储器访存地址映射单元,其特征在于,所述映射模式选择模块包括:
模式标识信号获取单元,DDR存储器接入一个主机的访问请求后,获取当前主机发送的用于指定所需访问模式的模式选择信号;
模式控制输出单元,将获取得到的所述模式选择信号与从所述映射规则设置模块得到的各地址映射规则的模式标识信号进行匹配,若匹配成功,输出对应的地址映射规则作为当前地址映射规则。
10.根据权利要求6~9中任意一项所述的DDR存储器访存地址映射单元,其特征在于,还包括模式切换判断模块,所述模式切换判断模块用于当DDR存储器接入下一个主机发送的访问请求时,判断下一个主机所需的访问模式否与上一个主机所需的访问模式相同,若不相同,则判定需要切换访问模式,重新根据下一个主机所需的访问模式从所述映射规则设置模块设置得到的各地址映射规则中选择出对应地址映射规则作为当前地址映射规则输出,返回执行访存映射模块;否则,判定不需要切换访问模式,保持当前地址映射规则不变,返回执行访存映射模块。
CN201510212177.2A 2015-04-29 2015-04-29 一种ddr存储器访存地址映射方法及访存地址映射单元 Active CN104850501B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510212177.2A CN104850501B (zh) 2015-04-29 2015-04-29 一种ddr存储器访存地址映射方法及访存地址映射单元

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510212177.2A CN104850501B (zh) 2015-04-29 2015-04-29 一种ddr存储器访存地址映射方法及访存地址映射单元

Publications (2)

Publication Number Publication Date
CN104850501A true CN104850501A (zh) 2015-08-19
CN104850501B CN104850501B (zh) 2018-04-20

Family

ID=53850154

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510212177.2A Active CN104850501B (zh) 2015-04-29 2015-04-29 一种ddr存储器访存地址映射方法及访存地址映射单元

Country Status (1)

Country Link
CN (1) CN104850501B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106557280A (zh) * 2016-10-31 2017-04-05 北京华为数字技术有限公司 数据存储方法、存储阵列及主机服务器
CN108959105A (zh) * 2017-05-17 2018-12-07 深圳市中兴微电子技术有限公司 一种实现地址映射的方法及装置
CN110688328A (zh) * 2019-09-27 2020-01-14 山东华芯半导体有限公司 一种axi总线分主机映射集的可配置重映射实现方法
CN111158600A (zh) * 2019-12-30 2020-05-15 中国人民解放军国防科技大学 一种提升高带宽存储器(hbm)访问效率的装置和方法
CN111338983A (zh) * 2020-02-18 2020-06-26 东南大学 一种高速数据缓存结构及方法
CN111858396A (zh) * 2020-07-27 2020-10-30 福州大学 一种存储器自适应地址映射方法及系统
CN112286844A (zh) * 2020-10-30 2021-01-29 烽火通信科技股份有限公司 一种可适配业务地址映射的ddr4控制方法及装置
CN112463665A (zh) * 2020-10-30 2021-03-09 中国船舶重工集团公司第七0九研究所 一种用于多通道显存交织模式的切换方法及装置
CN113655966A (zh) * 2021-08-23 2021-11-16 海飞科(南京)信息技术有限公司 供并行计算用的交叉存储器伪随机映射方法
CN115374022A (zh) * 2022-10-27 2022-11-22 北京象帝先计算技术有限公司 内存访问方法、装置、系统及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102053816A (zh) * 2010-11-25 2011-05-11 中国人民解放军国防科学技术大学 具有开关矩阵存储器的数据混洗单元及其混洗方法
US8484411B1 (en) * 2007-12-31 2013-07-09 Synopsys Inc. System and method for improving access efficiency to a dynamic random access memory
CN103198856A (zh) * 2013-03-22 2013-07-10 烽火通信科技股份有限公司 一种ddr控制器及请求调度方法
CN104407985A (zh) * 2014-12-15 2015-03-11 泰斗微电子科技有限公司 存储器地址映射方法及存储器地址映射系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8484411B1 (en) * 2007-12-31 2013-07-09 Synopsys Inc. System and method for improving access efficiency to a dynamic random access memory
CN102053816A (zh) * 2010-11-25 2011-05-11 中国人民解放军国防科学技术大学 具有开关矩阵存储器的数据混洗单元及其混洗方法
CN103198856A (zh) * 2013-03-22 2013-07-10 烽火通信科技股份有限公司 一种ddr控制器及请求调度方法
CN104407985A (zh) * 2014-12-15 2015-03-11 泰斗微电子科技有限公司 存储器地址映射方法及存储器地址映射系统

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106557280B (zh) * 2016-10-31 2019-10-15 北京华为数字技术有限公司 数据存储方法、存储阵列及主机服务器
CN106557280A (zh) * 2016-10-31 2017-04-05 北京华为数字技术有限公司 数据存储方法、存储阵列及主机服务器
CN108959105A (zh) * 2017-05-17 2018-12-07 深圳市中兴微电子技术有限公司 一种实现地址映射的方法及装置
CN108959105B (zh) * 2017-05-17 2023-12-22 深圳市中兴微电子技术有限公司 一种实现地址映射的方法及装置
CN110688328B (zh) * 2019-09-27 2023-03-14 山东华芯半导体有限公司 一种axi总线分主机映射集的可配置重映射实现方法
CN110688328A (zh) * 2019-09-27 2020-01-14 山东华芯半导体有限公司 一种axi总线分主机映射集的可配置重映射实现方法
CN111158600A (zh) * 2019-12-30 2020-05-15 中国人民解放军国防科技大学 一种提升高带宽存储器(hbm)访问效率的装置和方法
CN111158600B (zh) * 2019-12-30 2023-10-27 中国人民解放军国防科技大学 一种提升高带宽存储器(hbm)访问效率的装置和方法
CN111338983A (zh) * 2020-02-18 2020-06-26 东南大学 一种高速数据缓存结构及方法
CN111338983B (zh) * 2020-02-18 2024-03-12 东南大学 一种高速数据缓存结构及方法
CN111858396A (zh) * 2020-07-27 2020-10-30 福州大学 一种存储器自适应地址映射方法及系统
CN111858396B (zh) * 2020-07-27 2023-07-28 福州大学 一种存储器自适应地址映射方法及系统
CN112463665A (zh) * 2020-10-30 2021-03-09 中国船舶重工集团公司第七0九研究所 一种用于多通道显存交织模式的切换方法及装置
CN112463665B (zh) * 2020-10-30 2022-07-26 中国船舶重工集团公司第七0九研究所 一种用于多通道显存交织模式的切换方法及装置
CN112286844A (zh) * 2020-10-30 2021-01-29 烽火通信科技股份有限公司 一种可适配业务地址映射的ddr4控制方法及装置
CN113655966A (zh) * 2021-08-23 2021-11-16 海飞科(南京)信息技术有限公司 供并行计算用的交叉存储器伪随机映射方法
CN115374022B (zh) * 2022-10-27 2023-02-07 北京象帝先计算技术有限公司 内存访问方法、装置、系统及电子设备
CN115374022A (zh) * 2022-10-27 2022-11-22 北京象帝先计算技术有限公司 内存访问方法、装置、系统及电子设备

Also Published As

Publication number Publication date
CN104850501B (zh) 2018-04-20

Similar Documents

Publication Publication Date Title
CN104850501A (zh) 一种ddr存储器访存地址映射方法及访存地址映射单元
CN105702277B (zh) 存储器系统和存储器控制器
US9666255B2 (en) Access methods and circuits for memory devices having multiple banks
JP7181863B2 (ja) データ処理システム、データプロセッサ及び方法
JP5231642B2 (ja) メモリモジュール内の独立制御式仮想メモリ装置
EP1474747B1 (en) Address space, bus system, memory controller and device system
US10037150B2 (en) Memory controller with virtual controller mode
CN102681946B (zh) 内存访问方法和装置
JP5289569B2 (ja) 標準メモリモジュールとピン互換性のあるメモリモジュール内における独立制御可能且つ再構成可能な仮想メモリデバイス
US20130329491A1 (en) Hybrid Memory Module
CN103810126B (zh) 混合dram存储器及降低该dram存储器刷新时功耗的方法
CN109147838A (zh) 半导体存储装置
CN102347075A (zh) 半导体器件
CN102880552B (zh) 面向多核多线程处理器的混合地址映射方法
US20030191912A1 (en) Integrated memory having a memory cell array containing a plurality of memory banks, and circuit configuration having an integrated memory
CN107025181A (zh) 存取存储器单元的方法、分配存储器请求的方法、系统及存储器控制器
CN111916120B (zh) 带宽提升的堆叠存储器
US11449441B2 (en) Multi-ported nonvolatile memory device with bank allocation and related systems and methods
US6650586B1 (en) Circuit and system for DRAM refresh with scoreboard methodology
WO2018068061A1 (en) Ddr controller for thyristor memory cell arrays
CN106293491B (zh) 写请求的处理方法和内存控制器
CN107799141A (zh) 存储器结构
US7778103B2 (en) Semiconductor memory device for independently selecting mode of memory bank and method of controlling thereof
US6542958B1 (en) Software control of DRAM refresh to reduce power consumption in a data processing system
CN110046111A (zh) 融合式存储器件及其方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant