CN114564423A - 基于镜像存储的dram访问系统 - Google Patents
基于镜像存储的dram访问系统 Download PDFInfo
- Publication number
- CN114564423A CN114564423A CN202210209950.XA CN202210209950A CN114564423A CN 114564423 A CN114564423 A CN 114564423A CN 202210209950 A CN202210209950 A CN 202210209950A CN 114564423 A CN114564423 A CN 114564423A
- Authority
- CN
- China
- Prior art keywords
- dram
- refresh
- module
- refreshing
- identification
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
- G06F13/1636—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement using refresh
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dram (AREA)
Abstract
本发明涉及一种基于镜像存储的DRAM访问系统,包括镜像控制模块和N个DRAM模块,镜像控制模块一端与N个DRAM模块相连接,另一端与访问总线连接;当其中一个DRAM模块处于刷新周期时,其他N‑1个DRAM模块中存在至少一个DRAM模块不处于刷新周期。镜像控制模块用于通过访问总线获取读取信号,从当前不处于刷新周期的DRAM模块中选择一个DRAM模块读取目标数据,发送给访问总线;还用于通过访问总线获取写入信号,将待写入数据并行写入当前不处于刷新周期的DRAM模块,若存在当前处于刷新周期的DRAM模块,则缓存待写入数据,待当前处于刷新周期的DRAM模块完成当前刷新操作后,再将待写入数据写入该DRAM模块。本发明规避了刷新时间对DRAM访问的影响,提高了DRAM的访问效率。
Description
技术领域
本发明涉及芯片技术领域,尤其涉及一种基于镜像存储的DRAM访问系统。
背景技术
DRAM(Dynamic Random Access Memory),即动态随机存取存储器,最为常见的系统内存。DRAM只能将数据保持很短的时间。为了保持数据,DRAM使用电容存储,所以必须隔一段时间刷新(refresh)一次,如果存储单元没有被刷新,存储的信息就会丢失,关机就会丢失数据。由于DRAM刷新时间的影响,当外部主控访问DRAM时,如遇到DRAM刷新周期,则只能等待当前刷新周期结束才能执行期望的读写操作,降低了DRAM读写访问的效率。由此可知,如何规避刷新时间对DRAM访问的影响,提高DRAM的访问效率成为亟待解决的技术问题。
发明内容
本发明目的在于,提供一种基于镜像存储的DRAM访问系统,规避了刷新时间对DRAM访问的影响,提高了DRAM的访问效率。
根据本发明一方面,提供了一种基于镜像存储的DRAM访问系统,包括镜像控制模块和N个DRAM模块,N为大于等于2的正整数,所述镜像控制模块一端与所述N个DRAM模块相连接,另一端与预设的访问总线连接;当其中一个DRAM模块处于刷新周期时,其他N-1个DRAM模块中存在至少一个DRAM模块不处于刷新周期;
所述镜像控制模块用于通过所述访问总线获取读取信号,从当前不处于刷新周期的DRAM模块中选择一个DRAM模块读取目标数据,发送给所述访问总线;
所述镜像控制模块还用于通过所述访问总线获取写入信号,将待写入数据并行写入当前不处于刷新周期的DRAM模块,若存在当前处于刷新周期的DRAM模块,则缓存所述待写入数据,待当前处于刷新周期的DRAM模块完成当前刷新操作后,再将所述待写入数据写入该DRAM模块。
本发明与现有技术相比具有明显的优点和有益效果。借由上述技术方案,本发明提供的一种基于镜像存储的DRAM访问系统可达到相当的技术进步性及实用性,并具有产业上的广泛利用价值,其至少具有下列优点:
本发明规避了刷新时间对DRAM访问的影响,提高了DRAM的访问效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
附图说明
图1为本发明实施例提供的基于镜像存储的DRAM访问系统示意图。
具体实施方式
为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种基于镜像存储的DRAM访问系统的具体实施方式及其功效,详细说明如后。
本发明实施例提供了一种基于镜像存储的DRAM访问系统,如图1所示,包括镜像控制模块和N个DRAM模块,N为大于等于2的正整数,所述镜像控制模块一端与所述N个DRAM模块相连接,需要说明的是,所述镜像控制模块分别与每一DRAM模块相连接。另一端与预设的访问总线连接,访问总线另一端可以连接预设的待测设备的内部存储接口或外部存储接口,实现待测设备对DRAM的读写操作。当其中一个DRAM模块处于刷新周期时,其他N-1个DRAM模块中存在至少一个DRAM模块不处于刷新周期,这样便使得访问总线在任何时刻访问DRAM,均不会受到DRAM刷新周期的影响,提高了DRAM的访问效率。
所述镜像控制模块用于通过所述访问总线获取读取信号,从当前不处于刷新周期的DRAM模块中选择一个DRAM模块读取目标数据,发送给所述访问总线。
所述镜像控制模块还用于通过所述访问总线获取写入信号,将待写入数据并行写入当前不处于刷新周期的DRAM模块,若存在当前处于刷新周期的DRAM模块,则缓存所述待写入数据,待当前处于刷新周期的DRAM模块完成当前刷新操作后,再将所述待写入数据写入该DRAM模块。这样便使得每一DRAM模块最终均能存储所有待存储数据,且能实现访问总线在任意时刻均能访问到目标数数据,不会受到任何一个DRAM刷新的影响。
作为一种实施例,所述镜像控制模块包括循环计数器、N个缓冲存储器和N个刷新标识寄存器,每一DRAM模块对应一个缓冲存储器和刷新标识寄存器。所述循环计数器用于在DRAM的每一刷新间隔内控制每个DRAM模块的更新时刻,使得其中一个DRAM模块处于刷新周期时,其他N-1个DRAM模块中存在至少一个DRAM模块不处于刷新周期。需要说明的是,本发明所述系统中的DRAM模块为相同的模块,对应的DRAM也均相同,每个DRAM具有相同的刷新间隔,即每个DRAM均为间隔预设的时间刷新一次,且刷新周期均相同,且本领域技术人员可知,刷新间隔远大于刷新周期,刷新间隔通常在微秒数量级,刷新周期在纳秒数量级,DRAM的具体刷新周期和刷新间隔的大小根据DRAM具体设备而定。
所述缓冲存储器用于在需要写入待存储数据时,且对应的DRAM模块处于刷新周期时,缓存所述待存储数据,缓冲存储器具体设置为cache,且以FIFO(先入先出队列)的形式缓存数据。
作为一种实施例,缓冲存储器的存储空间大于等于H:
H=T/(1/f),
其中,T为每一DRAM的刷新周期,f为所述访问总线的工作频率。需要说明的是,H值是DRAM刷新过程中,可能需要缓冲的数据最大值,因此设置大于该值的缓冲存储器的存储空间,可以避免cache溢出。
所述刷新标识寄存器用于存储对应DRAM模块的刷新状态标识,基于所述刷新状态标识确定对应DRAM模块是否处于刷新状态,例如采用“1”表示刷新标识,采用“0”表示非刷新标识。
作为一种实施例,所述循环计数器的计数值设置为0-M,循环周期为DRAM的刷新间隔,每轮计数中,当达到第i计数值时,启动第n个DRAM模块的刷新操作,n的取值范围为1到N,0≤i<M,其中:
n=1时,i=0;
n>1时,i=n*[(M+1)/N]。
由于刷新间隔远大于刷新周期,N值也不可能过大,因为过大会造成资源浪费,N通常会在个位数,优选的,N取值为2,但可以理解的是,也可根据具体应用需求改变N的取值,例如可以为3或4等。由此可知,通过将刷新间隔均匀切分为N份,每份的时间也必然远大于刷新周期,因此,这样设置便能做到每一DRAM模块在刷新时,其他N-1个DRAM模块都没处在刷新状态。当然,可以理解的是,基于刷新间隔均分仅为一种实施例,也可以不均分,只要能满足当其中一个DRAM模块处于刷新周期时,其他N-1个DRAM模块中存在至少一个DRAM模块不处于刷新周期即可。
基于上述基于刷新间隔均分设置每一DRAM模块刷新时刻的实施例,当所述镜像控制模块获取读取信号时,遍历所有刷新标识寄存器,若当前存在一个刷新标识,假设该刷新标识对应第n个DRAM模块,则将第n’个DRAM模块确定为标读取DRAM模块:
若n=1,则n’=N;
若n>1,则n’=n-1。
也即,当在读取过程中遇到一个DRAM模块在刷新时,始终以距离自身下一刷新时刻最远的DRAM模块读取数据,则不会产生数据读取和DRAM的冲突。
作为另外一种实施例,在目标数据读取过程中,所述镜像控制模块用于遍历所有刷新标识寄存器,将刷新标识寄存器中当前标识为非刷新标识的DRAM模块确定为候选DRAM模块,从所述候选DRAM模块中随机选择一个DRAM模块作为目标读取DRAM模块,若在所述目标数据读取过程中,到达目标读取DRAM模块刷新操作对应的计数值,则待当前读取目标数据操作执行完毕后,再向所述目标读取DRAM模块发送刷新开启信号,需要说明的是,由于刷新周期和读取数据时间均远小于刷新间隔,因此,当在所述目标数据读取过程中,到达目标读取DRAM模块刷新操作对应的计数值,也即遇到读取数据操作和刷新操作冲突时,可以暂缓更新,待当前读取目标数据操作执行完毕后,再向所述目标读取DRAM模块发送刷新开启信号,执行本轮刷新操作,且不会对后续操作造成影响。
作为一种实施例,所述DRAM模块包括DRAM控制单元和DRAM,所述DRAM控制单元一端通过数据访问总线和刷新指示信号线与所述镜像控制模块相连接,另一端与DRAM连接。
作为一种实施例,所述数据访问总线与所述循环计数器和缓冲存储器相连接,所述刷新指示信号线与所述刷新标识寄存器相连接,
当循环计数器达到第i计数值时,向对应的第n个DRAM模块的DRAM控制单元发送刷新开启信号;
所述DRAM控制单元启动对应的DRAM的刷新操作,通过所述刷新指示信号线向所述刷新标识寄存器发送刷新指示信号,将所述刷新标识寄存器中的刷新状态标识更新为刷新标识,当本轮刷新完毕后,通过所述刷新指示信号线向所述刷新标识寄存器发送刷新结束信号,将所述刷新标识寄存器中的刷新状态标识更新为非刷新标识。
基于本发明所述系统在一种应用场景中,可以通过多个DDR(双倍速率同步动态随机存储器,是一种DRAM器件)来模拟一个静态随机存取存储器(Static Random-AccessMemory,简称SRAM),由于DDR成本较SRAM低,因此,可以节约成本。由于SRAM无需刷新,DDR需要刷新,因此,现有技术中,必须要满足访问固定周期大于DDR刷新周期,而采用本发明所述系统,采用多个DDR镜像设置,消除DDR刷新周期对访问请求的影响,无需满足固定周期大于DDR刷新周期,可以选择更高效的DDR来模拟SRAM,可以将模拟SRAM的性能提升十倍以上。
本发明实施例所述系统规避了刷新时间对DRAM访问的影响,提高了DRAM的访问效率。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (9)
1.一种基于镜像存储的DRAM访问系统,其特征在于,
包括镜像控制模块和N个DRAM模块,N为大于等于2的正整数,所述镜像控制模块一端与所述N个DRAM模块相连接,另一端与预设的访问总线连接;当其中一个DRAM模块处于刷新周期时,其他N-1个DRAM模块中存在至少一个DRAM模块不处于刷新周期;
所述镜像控制模块用于通过所述访问总线获取读取信号,从当前不处于刷新周期的DRAM模块中选择一个DRAM模块读取目标数据,发送给所述访问总线;
所述镜像控制模块还用于通过所述访问总线获取写入信号,将待写入数据并行写入当前不处于刷新周期的DRAM模块,若存在当前处于刷新周期的DRAM模块,则缓存所述待写入数据,待当前处于刷新周期的DRAM模块完成当前刷新操作后,再将所述待写入数据写入该DRAM模块。
2.根据权利要求1所述系统,其特征在于,
所述镜像控制模块包括循环计数器、N个缓冲存储器和N个刷新标识寄存器,每一DRAM模块对应一个缓冲存储器和刷新标识寄存器;
所述循环计数器用于在DRAM的每一刷新间隔内控制每个DRAM模块的更新时刻,使得其中一个DRAM模块处于刷新周期时,其他N-1个DRAM模块中存在至少一个DRAM模块不处于刷新周期;
所述缓冲存储器用于在需要写入待存储数据时,且对应的DRAM模块处于刷新周期时,缓存所述待存储数据;
所述刷新标识寄存器用于存储对应DRAM模块的刷新状态标识,基于所述刷新状态标识确定对应DRAM模块是否处于刷新状态。
3.根据权利要求2所述系统,其特征在于,
所述循环计数器的计数值设置为0-M,循环周期为DRAM的刷新间隔,每轮计数中,当达到第i计数值时,启动第n个DRAM模块的刷新操作,n的取值范围为1到N,0≤i<M,其中:
n=1时,i=0;
n>1时,i=n*[(M+1)/N]。
4.根据权利要求3所述系统,其特征在于,
当所述镜像控制模块获取读取信号时,遍历所有刷新标识寄存器,若当前存在一个刷新标识,假设该刷新标识对应第n个DRAM模块,则将第n’个DRAM模块确定为标读取DRAM模块:
若n=1,则n’=N;
若n>1,则n’=n-1。
5.根据权利要求3所述系统,其特征在于,
缓冲存储器的存储空间大于等于H:
H=T/(1/f),
其中,T为每一DRAM的刷新周期,f为所述访问总线的工作频率。
6.根据权利要求1-3中任意一项所述系统,其特征在于,
在目标数据读取过程中,所述镜像控制模块用于遍历所有刷新标识寄存器,将刷新标识寄存器中当前标识为非刷新标识的DRAM模块确定为候选DRAM模块,从所述候选DRAM模块中随机选择一个DRAM模块作为目标读取DRAM模块,若在所述目标数据读取过程中,到达目标读取DRAM模块刷新操作对应的计数值,则待当前读取目标数据操作执行完毕后,再向所述目标读取DRAM模块发送刷新开启信号。
7.根据权利要求2所述系统,其特征在于,
所述DRAM模块包括DRAM控制单元和DRAM,所述DRAM控制单元一端通过数据访问总线和刷新指示信号线与所述镜像控制模块相连接,另一端与DRAM连接。
8.根据权利要求7所述系统,其特征在于,
所述数据访问总线与所述循环计数器和缓冲存储器相连接,所述刷新指示信号线与所述刷新标识寄存器相连接,
当循环计数器达到第i计数值时,向对应的第n个DRAM模块的DRAM控制单元发送刷新开启信号;
所述DRAM控制单元启动对应的DRAM的刷新操作,通过所述刷新指示信号线向所述刷新标识寄存器发送刷新指示信号,将所述刷新标识寄存器中的刷新状态标识更新为刷新标识,当本轮刷新完毕后,通过所述刷新指示信号线向所述刷新标识寄存器发送刷新结束信号,将所述刷新标识寄存器中的刷新状态标识更新为非刷新标识。
9.根据权利要求1所述系统,其特征在于,
N的取值为2。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210209950.XA CN114564423A (zh) | 2022-03-04 | 2022-03-04 | 基于镜像存储的dram访问系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210209950.XA CN114564423A (zh) | 2022-03-04 | 2022-03-04 | 基于镜像存储的dram访问系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114564423A true CN114564423A (zh) | 2022-05-31 |
Family
ID=81717023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210209950.XA Pending CN114564423A (zh) | 2022-03-04 | 2022-03-04 | 基于镜像存储的dram访问系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114564423A (zh) |
-
2022
- 2022-03-04 CN CN202210209950.XA patent/CN114564423A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101554294B1 (ko) | 추론적 프리챠지의 검출 | |
JP4742116B2 (ja) | アウトオブオーダdramシーケンサ | |
US6697909B1 (en) | Method and apparatus for performing data access and refresh operations in different sub-arrays of a DRAM cache memory | |
KR100667384B1 (ko) | 공유 리소스(shared resource)로 접근의 우선순위화 제어기 장치 및 그 방법 | |
KR100679362B1 (ko) | 메모리 요청 재정렬에 의해 버스 이용도를 향상시키는메모리 제어기 | |
US5487049A (en) | Page-in, burst-out FIFO | |
CN106856098B (zh) | 一种用于DRAM或eDRAM刷新的装置及其方法 | |
US7263020B2 (en) | Memory device capable of refreshing data using buffer and refresh method thereof | |
KR101527308B1 (ko) | 메모리 인터페이스 | |
CN110858188A (zh) | 具有分布式信箱结构的多处理器系统及其沟通方法 | |
CN110520929A (zh) | 内存刷新技术及计算机系统 | |
CN113641603A (zh) | 一种基于axi协议的ddr仲裁与调度方法及系统 | |
US20060119604A1 (en) | Method and apparatus for accelerating the display of horizontal lines | |
JP3444154B2 (ja) | メモリアクセス制御回路 | |
CN112612596B (zh) | 命令调度方法、装置、设备和存储介质 | |
CN1524270A (zh) | Dram及dram的刷新方法 | |
CN114564423A (zh) | 基于镜像存储的dram访问系统 | |
US7167947B2 (en) | Memory post-write page closing apparatus and method | |
CN101002272A (zh) | 动态随机存取存储器内的数据寻址 | |
JPH0628246A (ja) | 記憶装置 | |
JP2020170315A (ja) | アクセス管理装置 | |
US12026107B2 (en) | Mitigating interference between commands for different access requests in LPDDR4 memory system | |
US20200331485A1 (en) | Command control system, vehicle, command control method and non-transitory computer-readable medium | |
CN112965816B (zh) | 内存管理技术及计算机系统 | |
JPS63114000A (ja) | ダイナミツク・ランダム・アクセス・メモリの制御方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |