动态随机存取存储器控制器及其控制方法技术

技术编号:15692563 阅读:131 留言:0更新日期:2017-06-24 06:41
动态随机存取存储器控制器及其控制方法。动态随机存取存储器的再充电(refresh)调度。一指令队列使要发送至一动态随机存取存储器的操作指令在其中排队。一微控制器视该指令队列的内容,在一监控时间单位内交错设立多个第一阶层单堆再充电时间点以及多个第二阶层单堆再充电时间点。

Dynamic random access memory controller and control method thereof

Dynamic random access memory controller and control method thereof. Dynamic random access memory re charging (refresh) scheduling. An instruction queue that queues the operations instructions to be sent to a dynamic random access memory. A microcontroller treats the contents of the instruction queue to interleave a plurality of first classes, a single heap, a recharging time point, and a plurality of second class single heap recharging time points in a monitoring time unit.

【技术实现步骤摘要】
动态随机存取存储器控制器及其控制方法
本申请涉及动态随机存取存储器(DRAM)的再充电(refresh)调度。
技术介绍
动态随机存取存储器(DynamicRandomAccessMemory,DRAM)是一种半导体存储器,是利用电容内存储电荷的多寡来代表一个二进位位(bit)是1还是0。由于电容会有漏电的现象,因此动态随机存取存储器(DRAM)有再充电(refresh)需求,以维护所存储的数据可靠度。
技术实现思路
本申请有关于动态随机存取存储器的再充电(refresh,或称为刷新)调度。根据本申请一种实施方式实现的一种动态随机存取存储器控制器包括一指令队列(commandqueue)以及一微控制器。该指令队列使要发送至一动态随机存取存储器的操作指令在其中排队。该微控制器视该指令队列的内容,在一监控时间单位内多个第一阶层单堆再充电时间点对该动态随机存取存储器的一第一阶层(rank)的多个存储单元堆逐堆进行再充电(per-bankrefreshing)。该微控制器更视该指令队列的内容,在该监控时间单位内多个第二阶层单堆再充电时间点对该动态随机存取存储器的一第二阶层的多个存储单元堆逐堆进行再充电。该等第二阶层单堆再充电时间点与该等第一阶层单堆再充电时间点一对一交错。如此设计使得动态随机存取存储器控制器的运算资源得以不过度集中在再充电上。本申请概念更可实现为动态随机存取存储器控制方法,包括以下步骤:提供一指令队列,使要发送至一动态随机存取存储器的操作指令在其中排队;视该指令队列的内容,在一监控时间单位内多个第一阶层单堆再充电时间点对该动态随机存取存储器的一第一阶层的多个存储单元堆逐堆进行再充电;以及视该指令队列的内容,在该监控时间单位内多个第二阶层单堆再充电时间点对该动态随机存取存储器的一第二阶层的多个存储单元堆逐堆进行再充电。该等第二阶层单堆再充电时间点与该等第一阶层单堆再充电时间点一对一交错。本申请所公开的前述动态随机存取存储器控制器以及控制方法为多个阶层提供阶层交错的逐堆再充电,使得系统资源不会长时间被再充电需求独占。动态随机存取存储器的操作指令因而得以顺畅执行。下文特举实施例,并配合所附图示,详细说明本
技术实现思路
。附图说明图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与中央处理单元(未绘示)集成在同一片上系统(SystemonaChip,SoC)的实施方式中,动态随机存取存储器控制器102实现于该片上系统芯片上;在传统南北桥分立的芯片组108的实施方式中,动态随机存取存储器控制器102,更具体而言,实现于芯片组108的北桥上,但并不意图限定。动态随机存取存储器100的存储单元可由两条通道(channels)读取,每条通道又包括多组存储器模块(MemoryModule,例如DualIn-lineMemoryModule,DIMM),每个存储器模块又包括多组存储器颗粒(chip),连结至同一个片选(ChipSelect,CS)信号的一组存储器颗粒称之为一阶层(rank)。举例而言,如图1所示,一个存储器模块的存储空间划分为阶层rank1以及阶层rank2。同一阶层的存储空间(rank)又可划分为多个存储单元堆(banks)。各存储单元堆(bank)由一组字线以及位线控制。如图所示,阶层rank1的存储空间包括八个存储单元堆bank11…bank18,阶层rank2的存储空间包括八个存储单元堆bank21…bank28。动态随机存取存储器100的再充电可以“阶层(rank)”为单位,也可以“存储单元堆(bank)”为单位。一阶层可被一次性再充电(per-rankrefreshing),也可被逐堆再充电(per-bankrefreshing)。以下标号一次性再充电(per-rankrefreshing)的耗时为tRFCpr,将使得该阶层在时限tRFCpr都被占用无法存取。以下标号单堆再充电(per-bankrefreshing)的耗时为tRFCpb,占用对象本文档来自技高网
...
动态随机存取存储器控制器及其控制方法

【技术保护点】
一种存储器控制器,包括:指令队列,使要发送至动态随机存取存储器的操作指令在其中排队;以及微控制器,其中:该微控制器视该指令队列的内容,在监控时间单位内多个第一阶层单堆再充电时间点对该动态随机存取存储器的第一阶层的多个存储单元堆逐堆进行再充电;该微控制器视该指令队列的内容,在该监控时间单位内多个第二阶层单堆再充电时间点对该动态随机存取存储器的第二阶层的多个存储单元堆逐堆进行再充电;且所述第二阶层单堆再充电时间点与所述第一阶层单堆再充电时间点一对一交错。

【技术特征摘要】
1.一种存储器控制器,包括:指令队列,使要发送至动态随机存取存储器的操作指令在其中排队;以及微控制器,其中:该微控制器视该指令队列的内容,在监控时间单位内多个第一阶层单堆再充电时间点对该动态随机存取存储器的第一阶层的多个存储单元堆逐堆进行再充电;该微控制器视该指令队列的内容,在该监控时间单位内多个第二阶层单堆再充电时间点对该动态随机存取存储器的第二阶层的多个存储单元堆逐堆进行再充电;且所述第二阶层单堆再充电时间点与所述第一阶层单堆再充电时间点一对一交错。2.如权利要求1所述的存储器控制器,其中:所述第一阶层单堆再充电时间点等距相距第一时间间隔。3.如权利要求1所述的存储器控制器,其中:所述第二阶层单堆再充电时间点等距相距第二时间间隔。4.如权利要求1所述的存储器控制器,其中:所述第一阶层单堆再充电时间点中对应该第一阶层的所述存储单元堆中首存储单元堆者为第一首时间点,且该第一首时间点重叠上述监控时间单位的起始点。5.如权利要求4所述的存储器控制器,其中:所述第一阶层单堆再充电时间点中对应该第一阶层的所述存储单元堆中末存储单元堆者为第一末时间点;且该监控时间单位中的上述第一末时间点与下一监控时间单位中的上述第一首时间点相距第一时间间隔,其中所述第一阶层单堆再充电时间点等距相距该第一时间间隔。6.如权利要求4所述的存储器控制器,其中:所述第二阶层单堆再充电时间点中对应该第二阶层的所述存储单元堆中首存储单元堆者为第二首时间点。7.如权利要求6所述的存储器控制器,其中:所述第一阶层单堆再充电时间点中对应该第一阶层的所述存储单元堆中次存储单元堆者为第一次时间点;且上述第一首时间点与第二首时间点的时间间隔等同上述第二首时间点与第一次时间点的时间间隔。8.如权利要求1所述的存储器控制器,其中:该微控制器更以一第一计数器计数对该第一阶层完全再充电的次数;该微控制器计时每逢一第一首时间点,即令该第一计数器减一,其中,所述第一阶层单堆再充电时间点中对应该第一阶层的所述存储单元堆中首存储单元堆者为该第一首时间点;且该微控制器是在该第一计数器为零但有对应于该第一阶层的存取指令等待于该指令队列时,在上述第一阶层单堆再充电时间点对该第一阶层的所述存储单元堆逐堆进行再充电,使该第一阶层未轮到再充电的存储单元堆得以被存取。9.如权利要求8所述的存储器控制器,其中:该微控制器还以第二计数器计数对该第二阶层完全再充电的次数;该微控制器计时每逢第二首时间点,即令该第二计数器减一,其中,所述第二阶层单堆再充电时间点中对应该第二阶层的所述存储单元堆中一首存储单元堆者为该第二首时间点;且该微控制器是在该第二计数器为零但有对应于该第二阶层的存取指令等待于该指令队列时,在上述第二阶层单堆再充电时间点对该第二阶层的所述存储单元堆逐堆进行再充电,使该第二阶层未轮到再充电的存储单元堆得以被存取。10.如权利要求9所述的存储器控制器,其中:该微控制器在该第一计数器的计数尚未达第一上限、且无对应于该第一阶层的存取指令等待于该指令队列时,连续对该第一阶层执行一次性再充电;且该微控制器在该第二计数器的计数尚未达第二上限、且无对应于该第二阶层的存取指令等待于该指令队列时,连续对该第二阶层执行一次性再充电。11.一种动态随机存取存储器控制方...

【专利技术属性】
技术研发人员:陈忱沈鹏
申请(专利权)人:上海兆芯集成电路有限公司
类型:发明
国别省市:上海,31

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

1