CN106875970B - 动态随机存取存储器控制器及其控制方法 - Google Patents
动态随机存取存储器控制器及其控制方法 Download PDFInfo
- Publication number
- CN106875970B CN106875970B CN201710083485.9A CN201710083485A CN106875970B CN 106875970 B CN106875970 B CN 106875970B CN 201710083485 A CN201710083485 A CN 201710083485A CN 106875970 B CN106875970 B CN 106875970B
- Authority
- CN
- China
- Prior art keywords
- level
- time
- time point
- recharge
- recharging
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Dram (AREA)
- Charge And Discharge Circuits For Batteries Or The Like (AREA)
Abstract
动态随机存取存储器控制器及其控制方法。动态随机存取存储器的再充电(refresh)调度。一指令队列使要发送至一动态随机存取存储器的操作指令在其中排队。一微控制器视该指令队列的内容,在一监控时间单位内交错设立多个第一阶层单堆再充电时间点以及多个第二阶层单堆再充电时间点。
Description
技术领域
本申请涉及动态随机存取存储器(DRAM)的再充电(refresh)调度。
背景技术
动态随机存取存储器(Dynamic Random Access Memory,DRAM)是一种半导体存储器,是利用电容内存储电荷的多寡来代表一个二进位位(bit)是1还是0。由于电容会有漏电的现象,因此动态随机存取存储器(DRAM)有再充电(refresh)需求,以维护所存储的数据可靠度。
发明内容
本申请有关于动态随机存取存储器的再充电(refresh,或称为刷新)调度。
根据本申请一种实施方式实现的一种动态随机存取存储器控制器包括一指令队列(command queue)以及一微控制器。该指令队列使要发送至一动态随机存取存储器的操作指令在其中排队。该微控制器视该指令队列的内容,在一监控时间单位内多个第一阶层单堆再充电时间点对该动态随机存取存储器的一第一阶层(rank)的多个存储单元堆逐堆进行再充电(per-bank refreshing)。该微控制器更视该指令队列的内容,在该监控时间单位内多个第二阶层单堆再充电时间点对该动态随机存取存储器的一第二阶层的多个存储单元堆逐堆进行再充电。该等第二阶层单堆再充电时间点与该等第一阶层单堆再充电时间点一对一交错。如此设计使得动态随机存取存储器控制器的运算资源得以不过度集中在再充电上。
本申请概念更可实现为动态随机存取存储器控制方法,包括以下步骤:提供一指令队列,使要发送至一动态随机存取存储器的操作指令在其中排队;视该指令队列的内容,在一监控时间单位内多个第一阶层单堆再充电时间点对该动态随机存取存储器的一第一阶层的多个存储单元堆逐堆进行再充电;以及视该指令队列的内容,在该监控时间单位内多个第二阶层单堆再充电时间点对该动态随机存取存储器的一第二阶层的多个存储单元堆逐堆进行再充电。该等第二阶层单堆再充电时间点与该等第一阶层单堆再充电时间点一对一交错。
本申请所公开的前述动态随机存取存储器控制器以及控制方法为多个阶层提供阶层交错的逐堆再充电,使得系统资源不会长时间被再充电需求独占。动态随机存取存储器的操作指令因而得以顺畅执行。
下文特举实施例,并配合所附图示,详细说明本发明内容。
附图说明
图1为方块图,根据本申请一种实施方式图解一动态随机存取存储器100以及相关的动态随机存取存储器控制器102;
图2为时序图,根据本申请一种实施方式划分一个监控时间单位tREFI;
图3A、3B为流程图,图解微控制器106所实施的阶层rank1的再充电指令调度,每监控时间单位tREFI实施一次;以及
图4A、4B为流程图,图解微控制器106所实施的阶层rank1存取指令调度。
【符号说明】
100~动态随机存取存储器;
102~动态随机存取存储器控制器;
104~指令队列; 106~微控制器;
108~芯片组;
bank11…bank18、bank21…bank28~存储器单元堆;
rank1、rank2~阶层(存储空间);
t11…t18、t21…t28~第一、第二阶层单堆再充电时间点;
T1_1、T1_2、T2_1、T2_2~时间点;
tREFI~监控时间单位; tRFCpr~时限;
S302~步骤,计数器Cnt1减1;
S304~步骤,有对应于阶层rank1的存取指令等待于指令队列?
S306~步骤,计数器Cnt1>=8?
S308~步骤,此轮监控时间单位tREFI不再对阶层rank1做再充电;
S310~步骤,对阶层rank1一次性再充电(计数器Cnt1加1);
S312~步骤,计时tRFCpr;
S314~步骤,有对应于阶层rank1的存取指令等待于指令队列?
S316~步骤,计数器Cnt1>=8?
S318~步骤,对阶层rank1一次性再充电(计数器Cnt1加1);
S320~此轮监控时间单位tREFI不再对阶层rank1做再充电;
S322~计数器Cnt1>=1?
S324~步骤,对阶层rank1的多个存储单元堆bank11~bank18逐堆再充电(计数器Cnt1加1);
S402~步骤,阶层rank1一次性再充电送出?
S404~步骤,已满足时限tRFCpr?
S406~步骤,调降该指令队列中对应于阶层rank1的存取指令的优先权;
S408~步骤,恢复该指令队列中对应于阶层rank1的存取指令的优先权;
S410~步骤,监控阶层rank1的存储单元堆bank11~bank18个别的再充电请求;
S412~步骤,调升该指令队列中对应于阶层rank1除存储单元堆bank1i外的其他存储单元堆的存取指令的优先权;
S414~步骤,已满足时限tRFCpb?
S416~步骤,调降该指令队列中对应于存储单元堆bank1i的存取指令的优先权;
S418~步骤,恢复该指令队列中对应于阶层rank1的存取指令的优先权。
具体实施方式
以下叙述列举本发明的多种实施例。以下叙述介绍本发明的基本概念,且并非意图限制本发明内容。实际发明范围应依照权利要求书界定。
图1为方块图,根据本申请一种实施方式图解一动态随机存取存储器100以及相关的动态随机存取存储器控制器102。动态随机存取存储器控制器102包括一指令队列104以及一微控制器106。指令队列104使要发送至该动态随机存取存储器102的操作指令在其中排队。在微控制器106的运作下,动态随机存取存储器100将以最佳化方式再充电,避免阻碍该指令队列104中操作指令的执行。微控制器106可包括运算电路以及运算程序代码。图1实施例是将动态随机存取存储器控制器102实现在芯片组108,值得注意的是,在芯片组108与中央处理单元(未绘示)集成在同一片上系统(System on a Chip,SoC)的实施方式中,动态随机存取存储器控制器102实现于该片上系统芯片上;在传统南北桥分立的芯片组108的实施方式中,动态随机存取存储器控制器102,更具体而言,实现于芯片组108的北桥上,但并不意图限定。
动态随机存取存储器100的存储单元可由两条通道(channels)读取,每条通道又包括多组存储器模块(Memory Module,例如Dual In-line Memory Module,DIMM),每个存储器模块又包括多组存储器颗粒(chip),连结至同一个片选(Chip Select,CS)信号的一组存储器颗粒称之为一阶层(rank)。举例而言,如图1所示,一个存储器模块的存储空间划分为阶层rank1以及阶层rank2。同一阶层的存储空间(rank)又可划分为多个存储单元堆(banks)。各存储单元堆(bank)由一组字线以及位线控制。如图所示,阶层rank1的存储空间包括八个存储单元堆bank11…bank18,阶层rank2的存储空间包括八个存储单元堆bank21…bank28。
动态随机存取存储器100的再充电可以“阶层(rank)”为单位,也可以“存储单元堆(bank)”为单位。一阶层可被一次性再充电(per-rank refreshing),也可被逐堆再充电(per-bank refreshing)。以下标号一次性再充电(per-rank refreshing)的耗时为tRFCpr,将使得该阶层在时限tRFCpr都被占用无法存取。以下标号单堆再充电(per-bankrefreshing)的耗时为tRFCpb,占用对象是单个存储单元堆(bank)。时限tRFCpr通常远长于时限tRFCpb。一种实施方式中,时限tRFCpr长达210ns,而时限tRFCpb仅90ns。动态随机存取存储器100的再充电是依监控时间单位(以下标号tREFI)调度。一阶层的完全再充电(可能采一次性再充电per-rank refreshing或是一系列的逐堆再充电per-bank refreshing)通常被设计成每个监控时间单位tREFI中发生一回。但在本发明中,一次性再充电(per-rankrefreshing)可集中反复发生后、在后续数个监控时间单位tREFI省略:例如,一阶层甚至可在一监控时间单位tREFI反复一次性再充电达8回,而后续8个监控时间单位tREFI则不发生再充电。在本发明中,一次性再充电(per-rank refreshing)更可被推迟,至后续监控时间单位tREFI集中反复发生:例如,一阶层甚至可在前8个监控时间单位tREFI均不发生再充电,而在最后一监控时间单位tREFI反复一次性再充电8回。一种实施方式中,监控时间单位tREFI长达7.8us或者3.9us,远长于上述时限tRFCpr及时限tRFCpb。
图2为时序图,根据本申请一种实施方式划分一个监控时间单位tREFI。如图所示,各监控时间单位tREFI可提供第一阶层单堆再充电时间点t11…t18以及第二阶层单堆再充电时间点t21…t28,彼此一对一交错─即顺序为t11→t21→t12→t22→t13→t23→t14→t24→t15→t25→t16→t26→t17→t27→t18→t28。第一阶层单堆再充电时间点t11…t18对应阶层rank1的存储单元堆bank11…bank18。第二阶层单堆再充电时间点t21…t28对应阶层rank2的存储单元堆bank21…bank28。微控制器106可根据指令队列104的内容,在一监控时间单位tREFI内的该等第一阶层单堆再充电时间点t11…t18对存储单元堆bank11…bank18逐堆进行再充电,以实现完全再充电该阶层rank1。微控制器106可根据指令队列104的内容,在一监控时间单位tREFI内的该等第二阶层单堆再充电时间点t21…t28对存储单元堆bank21…bank28逐堆进行再充电,以实现完全再充电该阶层rank2。以上所述概念是以阶层穿插方式而分配监控时间单位tREFI给所有存储单元堆。同样概念也可施行于4阶层、甚至未来更多阶层的存储器架构上。
此外,该等第一阶层单堆再充电时间点t11…t18可如图等距相距(相距一第一时间间隔),甚至该等第二阶层单堆再充电时间点t21…t28也可如图等距相距(相距一第二时间间隔)。第一阶层单堆再充电时间点t11可如图重叠监控时间单位tREFI的起始点。第一阶层单堆再充电时间点t18可与下一监控时间单位中的第一阶层单堆再充电时间点t11同样相距该第一时间间隔。第二阶层单堆再充电时间点t28可与下一监控时间单位中的第二阶层单堆再充电时间点t21同样相距该第二时间间隔。图例中,第一时间间隔等同第二时间间隔。第一阶层单堆再充电时间点t11与第二阶层单堆再充电时间点t21的时间间隔可等同上述第二阶层单堆再充电时间点t21与第一阶层单堆再充电时间点t12的时间间隔。此段所述概念是均时划分监控时间单位tREFI给所有存储单元堆。同样概念也可施行于4阶层、甚至未来更多阶层的存储器架构上。
至于对阶层一次性再充电(per-rank refreshing)的操作,一种实施方式是于某一监控时间单位tREFI内对应的阶层rank1或者rank2闲置(在一实施例中,“闲置”即是在该指令队列104中无对应于阶层rank1或者rank2的存取指令待处理)的区间,以闲置的运算资源反复进行,使后续数个监控时间单位(如,Nx(tREFI))无须耗费资源在该阶层的再充电。如图2所示,阶层rank1的一次性再充电可发生在时间点T1_1、满足时限时tRFCpr后的时间点T1_2…以下类推。另有一种实施方式是令一监控时间单位tREFI内的一次性再充电(per-rank refreshing)起始处对齐逐堆再充电(per-bank refreshing)起始处。如图2所示,阶层rank2的一次性再充电可起始发生在时间点T2_1、更在满足时限时tRFCpr后再发生在时间点T2_2…以下类推。时间点T2_1对齐第二阶层单堆再充电时间点t21。
以下方便说明,专对阶层rank1讨论再充电调度的细项。
图3A、3B为流程图,图解微控制器106所实施的阶层rank1的再充电指令调度,每监控时间单位tREFI实施一次。微控制器106以一计数器(以下标号Cnt1)计数对阶层rank1进行再充电(无论采一次性再充电per-rank refreshing或是采多次逐堆再充电per-bankrefreshing以实现对阶层rank1完全再充电)的次数。步骤S302在每回合监控时间单位tREFI之始,将计数器Cnt1递减1。步骤S304判断有无对应于阶层rank1的存取指令等待于该指令队列104。阶层rank1无存取指令等待于该指令队列104时,步骤S306更检查计数器Cnt1的计数是否达一上限(此例设定为8,等同阶层rank1的存储单元堆bank11…bank18的数量)。若计数器Cnt1的计数未达8,步骤S310对阶层rank1执行一次性再充电(per-rankcharging),计数器Cnt1随之递增1。步骤S312计时达时限tRFCpr,确认一次性再充电(per-rank charging)单次实施完毕后,可以步骤S314以及步骤S316确认指令队列104以及计数器Cnt1的状况。倘若还是无对应于阶层rank1的存取指令等待于该指令队列104、且该计数器Cnt1的计数还是未达8,则步骤S318再次对阶层rank1执行一次性再充电(per-rankcharging),计数器Cnt1随之递增1。如此根据指令队列104以及计数器Cnt1的状况而进行的阶层rank1一次性再充电(per-rank charging)会连续地重复施行直至步骤S316判断出计数器Cnt1的计数达8。根据步骤S320,此回合监控时间单位tREFI将不再对阶层rank1进行再充电。步骤S308也是同样的设计概念。
若步骤S304判定有对应于该阶层rank1的存取指令等待于该指令队列104,步骤S322会检查计数器Cnt1是否为0,以判断此回合监控时间单位tREFI是否急迫需要再充电。若计数器Cnt1大于零,此回合监控时间单位tREFI非急迫需要再充电,流程进入步骤S312提供缓冲时间(此例为时限tRFCpr,也可为其他时间长度)以执行该指令队列104中对应于该阶层rank1的存取指令。如此一来,指令队列104中对应于该阶层rank1的存取指令优先于该阶层rank1的再充电。待步骤S314确认已无对应于阶层rank1的存取指令等待于该指令队列104,闲置的运算资源同样可用于重复施行阶层rank1的一次性再充电(per-rankcharging),直至步骤S316判断出计数器Cnt1的计数达8。
若步骤S322判断计数器Cnt1为0,此回合监控时间单位tREFI急迫需要再充电,步骤S324对该阶层rank1的多个存储单元堆bank11~bank18逐堆再充电(per-bankrefreshing)以实现对阶层rank1完全再充电,计数器Cnt1随阶层rank1的完全再充电递增1。如此一来,未轮到再充电的存储单元堆得以被存取。阶层rank1等待于该指令队列104的存取指令不会被过度延滞。在一实施方式中,步骤S322可依照图2所示第一阶层单堆再充电时间点t11…t18对该阶层rank1的多个存储单元堆bank11~bank18逐堆再充电(per-bankrefreshing)。
图3A、3B可施行于动态随机存取存储器的其他阶层上。例如,微控制器106可为阶层rank2提供另一计数器(标号为Cnt2)进行图3A、3B程序。计数器Cnt2可在图2所示的第二阶层单堆再充电时间点t21减一,以维护之。
图4A、4B为流程图,图解微控制器106所实施的阶层rank1存取指令调度。图4A、4B基于图3A、3B的再充电调度而设计,每监控时间单位tREFI实施一次。步骤S402在每回合监控时间单位tREFI之始检查阶层rank1一次性再充电(per-rank charging)请求的发送状况。该回合监控时间单位tREFI有作阶层rank1的一次性再充电(per-rank charging)时,步骤S404检查是否满足时限tRFCpr。若是一次性再充电(per-rank charging)反复施行的例子,则步骤S404所检查的会是时限tRFCpr的倍数。未达时限时,为了避免阶层rank1存取指令抢到运算资源、却因阶层rank1再充电而拖延,微控制器106以步骤S406调降该指令队列104中对应于该阶层rank1的存取指令的优先权。如此一来,非存取该阶层rank1的指令可优先使用运算资源且不被延滞。阶层的一次性再充电(per-rank charging)结束、步骤S404判断时限满足时,微控制器106执行步骤S408,恢复该指令队列104中对应于该阶层rank1的存取指令的优先权。
若步骤S402判定该回合监控时间单位tREFI不对阶层rank1做一次性再充电(per-rank charging),步骤S410监控阶层rank1的存储单元堆bank11~bank18个别的再充电请求(per-bank refreshing)。对于单一存储单元堆bank1i的再充电,步骤S412调升该指令队列104中对应于该阶层rank1除该单一存储单元堆bank1i外的其他存储单元堆的存取指令的优先权。步骤S414检查是否满足时限tRFCpb。未达时限tRFCpb时,为了避免存储单元堆bank1i存取指令无谓抢到运算资源,微控制器106以步骤S416调降该指令队列104中对应于该存储单元堆bank1i的存取指令的优先权。如此一来,非存取该存储单元堆bank1i的指令可优先使用运算资源且不被延滞。单一存储单元堆bank1i的再充电结束、步骤S414判断时限tRFCpb满足时,微控制器106执行步骤S418,恢复该指令队列104中对应于该阶层rank1的所有存储单元堆(无论之前对应的存取指令的优先权被调升或调降的存储单元堆)的存取指令的优先权。步骤S410对存储单元堆bank11~bank18个别的再充电请求监控及时(例如,达时间点t18,或达监控时间单位tREFI),则流程结束。
本申请更公开动态随机存取存储器控制方法。任何依循以上概念施作于一动态随机存取存储器上的控制方法,皆属于本申请所欲保护范围。本申请所公开的前述动态随机存取存储器控制器以及控制方法根据阶层rank1或者rank2的闲置状况,来动态调度对阶层rank1或者rank2的再充电操作,具体而言,在某一监控时间单位tREFI内对应的阶层闲置的区间,连续反复对该阶层进行一次性再充电操作,而不必固定地每隔一监控时间单位才进行一次性再充电操作,使后续数个监控时间单位(如,Nx(tREFI))无须耗费资源在该阶层的再充电,从而提高对应于该阶层的存取指令的执行效率。本发明另一方面是在对某一阶层的某一存储单元堆进行再充电操作时,动态调整对应于该阶层各个存储单元堆所对应存取指令的优先级,使得未轮到再充电的存储单元堆对应的存取指令得以被执行,使得该阶层等待于该指令队列的存取指令不会被过度延滞。
动态随机存取存储器更有其他变形。除了支持逐堆再充电(per-bankrefreshing)的LPDDR3以及LPDDR4规格,也有不支持逐堆再充电、仅采一次性再充电(per-rank refreshing)的DDR3以及DDR4。关于DDR3以及DDR4规格,步骤S324所执行的操作是对阶层rank1作一次性再充电,掌握优先于该阶层rank1的存取指令、对该阶层rank1再充电的原则,即在此种情形下,尽管有该阶层rank1的存取指令待处理,在计数器Cnt1为0时,对该阶层rank1的再充电需求更为迫切,优先级更高。此外,DDR3以及DDR4无关图4B的单堆再充电监控。
虽然本发明已以优选实施例公开如上,然其并非用以限定本发明,本领域技术人员在不脱离本发明的精神和范围内,当可做些许更动与润饰,因此本发明的保护范围当视所附权利要求书界定范围为准。
Claims (20)
1.一种存储器控制器,包括:
指令队列,使要发送至动态随机存取存储器的操作指令在其中排队;以及
微控制器,
其中:
该微控制器视该指令队列的内容,对该动态随机存取存储器的第一阶层执行一次性再充电或对该第一阶层的多个存储单元堆逐堆进行再充电以便完成该第一阶层的完全再充电,其中所述对该第一阶层的多个存储单元堆逐堆进行再充电包括在监控时间单位内多个第一阶层单堆再充电时间点对该动态随机存取存储器的第一阶层的多个存储单元堆逐堆进行再充电;
该微控制器视该指令队列的内容,对该动态随机存取存储器的第二阶层执行一次性再充电或对该第二阶层的多个存储单元堆逐堆进行再充电以便完成该第二阶层的完全再充电,其中所述对该第二阶层的多个存储单元堆逐堆进行再充电包括在该监控时间单位内多个第二阶层单堆再充电时间点对该动态随机存取存储器的第二阶层的多个存储单元堆逐堆进行再充电;且
所述第二阶层单堆再充电时间点与所述第一阶层单堆再充电时间点一对一交错。
2.如权利要求1所述的存储器控制器,其中:
所述第一阶层单堆再充电时间点等距相距第一时间间隔。
3.如权利要求1所述的存储器控制器,其中:
所述第二阶层单堆再充电时间点等距相距第二时间间隔。
4.如权利要求1所述的存储器控制器,其中:
所述第一阶层单堆再充电时间点中对应该第一阶层的所述存储单元堆中首存储单元堆者为第一首时间点,且该第一首时间点重叠上述监控时间单位的起始点。
5.如权利要求4所述的存储器控制器,其中:
所述第一阶层单堆再充电时间点中对应该第一阶层的所述存储单元堆中末存储单元堆者为第一末时间点;且
该监控时间单位中的上述第一末时间点与下一监控时间单位中的上述第一首时间点相距第一时间间隔,
其中所述第一阶层单堆再充电时间点等距相距该第一时间间隔。
6.如权利要求4所述的存储器控制器,其中:
所述第二阶层单堆再充电时间点中对应该第二阶层的所述存储单元堆中首存储单元堆者为第二首时间点。
7.如权利要求6所述的存储器控制器,其中:
所述第一阶层单堆再充电时间点中对应该第一阶层的所述存储单元堆中次存储单元堆者为第一次时间点;且
上述第一首时间点与第二首时间点的时间间隔等同上述第二首时间点与第一次时间点的时间间隔。
8.如权利要求1所述的存储器控制器,其中:
该微控制器更以一第一计数器计数对该第一阶层完全再充电的次数;
该微控制器计时每逢一第一首时间点,即令该第一计数器减一,其中,所述第一阶层单堆再充电时间点中对应该第一阶层的所述存储单元堆中首存储单元堆者为该第一首时间点;且
该微控制器是在该第一计数器为零但有对应于该第一阶层的存取指令等待于该指令队列时,在上述第一阶层单堆再充电时间点对该第一阶层的所述存储单元堆逐堆进行再充电,使该第一阶层未轮到再充电的存储单元堆得以被存取。
9.如权利要求8所述的存储器控制器,其中:
该微控制器还以第二计数器计数对该第二阶层完全再充电的次数;
该微控制器计时每逢第二首时间点,即令该第二计数器减一,其中,所述第二阶层单堆再充电时间点中对应该第二阶层的所述存储单元堆中一首存储单元堆者为该第二首时间点;且
该微控制器是在该第二计数器为零但有对应于该第二阶层的存取指令等待于该指令队列时,在上述第二阶层单堆再充电时间点对该第二阶层的所述存储单元堆逐堆进行再充电,使该第二阶层未轮到再充电的存储单元堆得以被存取。
10.如权利要求9所述的存储器控制器,其中:
该微控制器在该第一计数器的计数尚未达第一上限、且无对应于该第一阶层的存取指令等待于该指令队列时,连续对该第一阶层执行一次性再充电;且
该微控制器在该第二计数器的计数尚未达第二上限、且无对应于该第二阶层的存取指令等待于该指令队列时,连续对该第二阶层执行一次性再充电。
11.一种动态随机存取存储器控制方法,包括:
提供指令队列,使要发送至动态随机存取存储器的操作指令在其中排队;
视该指令队列的内容,对该动态随机存取存储器的第一阶层执行一次性再充电或对该第一阶层的多个存储单元堆逐堆进行再充电以便完成该第一阶层的完全再充电,其中所述对该第一阶层的多个存储单元堆逐堆进行再充电包括在监控时间单位内多个第一阶层单堆再充电时间点对该动态随机存取存储器的第一阶层的多个存储单元堆逐堆进行再充电;以及
视该指令队列的内容,对该动态随机存取存储器的第二阶层执行一次性再充电或对该第二阶层的多个存储单元堆逐堆进行再充电以便完成该第二阶层的完全再充电,其中所述对该第二阶层的多个存储单元堆逐堆进行再充电包括在该监控时间单位内多个第二阶层单堆再充电时间点对该动态随机存取存储器的第二阶层的多个存储单元堆逐堆进行再充电,
其中,所述第二阶层单堆再充电时间点与所述第一阶层单堆再充电时间点一对一交错。
12.如权利要求11所述的动态随机存取存储器控制方法,其中:
所述第一阶层单堆再充电时间点等距相距第一时间间隔。
13.如权利要求11所述的动态随机存取存储器控制方法,其中:
所述第二阶层单堆再充电时间点等距相距第二时间间隔。
14.如权利要求11所述的动态随机存取存储器控制方法,其中:
所述第一阶层单堆再充电时间点中对应该第一阶层的所述存储单元堆中首存储单元堆者为第一首时间点,且该第一首时间点重叠上述监控时间单位的起始点。
15.如权利要求14所述的动态随机存取存储器控制方法,其中:
所述第一阶层单堆再充电时间点中对应该第一阶层的所述存储单元堆中末存储单元堆者为第一末时间点;且
该监控时间单位中的上述第一末时间点与下一监控时间单位中的上述第一首时间点相距第一时间间隔,
其中所述第一阶层单堆再充电时间点等距相距该第一时间间隔。
16.如权利要求14所述的动态随机存取存储器控制方法,其中:
所述第二阶层单堆再充电时间点中对应该第二阶层的所述存储单元堆中首存储单元堆者为第二首时间点。
17.如权利要求16所述的动态随机存取存储器控制方法,其中:
所述第一阶层单堆再充电时间点中对应该第一阶层的所述存储单元堆中一次存储单元堆者为第一次时间点;且
上述第一首时间点与第二首时间点的时间间隔等同上述第二首时间点与第一次时间点的时间间隔。
18.如权利要求11所述的动态随机存取存储器控制方法,还包括:
以一第一计数器计数对该第一阶层完全再充电的次数;
计时每逢一第一首时间点,即令该第一计数器减一,其中,所述第一阶层单堆再充电时间点中对应该第一阶层的所述存储单元堆中首存储单元堆者为该第一首时间点;且
在该第一计数器为零但有对应于该第一阶层的存取指令等待于该指令队列时,在上述第一阶层单堆再充电时间点对该第一阶层的所述存储单元堆逐堆进行再充电,使该第一阶层未轮到再充电的存储单元堆得以被存取。
19.如权利要求18所述的动态随机存取存储器控制方法,还包括:
以第二计数器计数对该第二阶层完全再充电的次数;
计时每逢一第二首时间点,即令该第二计数器减一,其中,所述第二阶层单堆再充电时间点中对应该第二阶层的所述存储单元堆中一首存储单元堆者为该第二首时间点;且
在该第二计数器为零但有对应于该第二阶层的存取指令等待于该指令队列时,在上述第二阶层单堆再充电时间点对该第二阶层的所述存储单元堆逐堆进行再充电,使该第二阶层未轮到再充电的存储单元堆得以被存取。
20.如权利要求19所述的动态随机存取存储器控制方法,还包括:
在该第一计数器的计数尚未达第一上限、且无对应于该第一阶层的存取指令等待于该指令队列时,连续对该第一阶层执行一次性再充电;且
在该第二计数器的计数尚未达第二上限、且无对应于该第二阶层的存取指令等待于该指令队列时,连续对该第二阶层执行一次性再充电。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710083485.9A CN106875970B (zh) | 2017-02-16 | 2017-02-16 | 动态随机存取存储器控制器及其控制方法 |
TW106140707A TWI685840B (zh) | 2017-02-16 | 2017-11-23 | 動態隨機存取記憶體控制器以及動態隨機存取記憶體控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710083485.9A CN106875970B (zh) | 2017-02-16 | 2017-02-16 | 动态随机存取存储器控制器及其控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106875970A CN106875970A (zh) | 2017-06-20 |
CN106875970B true CN106875970B (zh) | 2021-06-01 |
Family
ID=59166904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710083485.9A Active CN106875970B (zh) | 2017-02-16 | 2017-02-16 | 动态随机存取存储器控制器及其控制方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106875970B (zh) |
TW (1) | TWI685840B (zh) |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6529433B2 (en) * | 2001-04-03 | 2003-03-04 | Hynix Semiconductor, Inc. | Refresh mechanism in dynamic memories |
US20050108460A1 (en) * | 2003-11-14 | 2005-05-19 | Intel Corporation | Partial bank DRAM refresh |
JP4912718B2 (ja) * | 2006-03-30 | 2012-04-11 | 富士通セミコンダクター株式会社 | ダイナミック型半導体メモリ |
JP5612244B2 (ja) * | 2007-10-30 | 2014-10-22 | ピーエスフォー ルクスコ エスエイアールエルPS4 Luxco S.a.r.l. | 半導体装置及びリフレッシュ方法 |
WO2010085405A1 (en) * | 2009-01-22 | 2010-07-29 | Rambus Inc. | Maintenance operations in a dram |
TW201039345A (en) * | 2009-04-23 | 2010-11-01 | Ibm | Refresh controller and refresh controlling method for embedded DRAM |
US8484410B2 (en) * | 2010-04-12 | 2013-07-09 | Intel Corporation | Method to stagger self refreshes |
KR20130084369A (ko) * | 2012-01-17 | 2013-07-25 | 삼성전자주식회사 | 메모리 장치, 이의 동작 방법, 및 상기 메모리 장치를 포함하는 장치 |
US9117542B2 (en) * | 2013-09-27 | 2015-08-25 | Intel Corporation | Directed per bank refresh command |
CN103559142B (zh) * | 2013-11-05 | 2017-03-08 | 中国科学院声学研究所 | 动态随机访问存储器的刷新方法 |
US9728245B2 (en) * | 2015-02-28 | 2017-08-08 | Intel Corporation | Precharging and refreshing banks in memory device with bank group architecture |
-
2017
- 2017-02-16 CN CN201710083485.9A patent/CN106875970B/zh active Active
- 2017-11-23 TW TW106140707A patent/TWI685840B/zh active
Also Published As
Publication number | Publication date |
---|---|
TWI685840B (zh) | 2020-02-21 |
CN106875970A (zh) | 2017-06-20 |
TW201832235A (zh) | 2018-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3005128B1 (en) | Separate memory controllers to access data in memory | |
US20170249104A1 (en) | Memory controller and request scheduling method using the same | |
CN106875971B (zh) | 动态随机存取存储器控制器及其控制方法 | |
US9411757B2 (en) | Memory interface | |
CN110546707B (zh) | 内存刷新技术及计算机系统 | |
CN110520929B (zh) | 内存刷新方法、装置及计算机系统 | |
US10535393B1 (en) | Configuring dynamic random access memory refreshes for systems having multiple ranks of memory | |
CN111506264B (zh) | 支持灵活分块存取的虚拟多通道sdram访问方法 | |
CN112382321B (zh) | 动态随机存取存储器的刷新方法及内存控制器、电子装置 | |
US10318187B2 (en) | Memory controller and memory system including the same | |
US10838884B1 (en) | Memory access quality-of-service reallocation | |
WO2017092282A1 (zh) | 一种用于DRAM或eDRAM刷新的装置及其方法 | |
CN110556139B (zh) | 用以控制存储器的电路及相关的方法 | |
CN106875970B (zh) | 动态随机存取存储器控制器及其控制方法 | |
US20200333980A1 (en) | Data processing system and operating method thereof | |
CN111158585B (zh) | 一种内存控制器刷新优化方法、装置、设备和存储介质 | |
CN112259141B (zh) | 动态随机存取存储器的刷新方法及内存控制器、电子装置 | |
TW202333060A (zh) | 用於在動態隨機存取記憶體記憶體控制器中高效更新管理之訊務感知可適性預充電排程器 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: Room 301, 2537 Jinke Road, Zhangjiang High Tech Park, Pudong New Area, Shanghai 201203 Patentee after: Shanghai Zhaoxin Semiconductor Co.,Ltd. Address before: Room 301, 2537 Jinke Road, Zhangjiang hi tech park, Shanghai 201203 Patentee before: VIA ALLIANCE SEMICONDUCTOR Co.,Ltd. |
|
CP03 | Change of name, title or address |