存储器控制器与存储器之间的自刷新定时器同步的制作方法

文档序号:14650590发布日期:2018-06-08 21:42阅读:192来源:国知局
存储器控制器与存储器之间的自刷新定时器同步的制作方法

相关申请的交叉引用

本申请要求2016年8月24日提交的美国申请No.15/246,371的优先权,其要求2015年10月1日提交的美国临时申请No.62/236,008的权益,其通过引用被纳入于此。

技术领域

本申请涉及存储器,并且尤其涉及存储器控制器与对应的存储器之间的自刷新定时器同步。

背景

动态随机存取存储器(DRAM)相对廉价,因为每个存储器单元仅需要存取晶体管和电容器。相反,静态随机存取存储器(SRAM)每存储器单元需要至少六个晶体管,并且因此更昂贵。DRAM因此是许多电子设备(诸如智能手机)中的大容量存储的首选存储器。尽管DRAM显著地更便宜,但是每个存储器单元使用的相对较小的电容器会随时间泄漏电荷,因此有必要周期性地刷新其内容。在DRAM的刷新循环中,存储器单元的内容被读出以便可以恰适地对存储器单元的电容器充电。DRAM根据其刷新调度来有规律地刷新是关键的,否则它可能会丢失其存储器内容。

根据需要的刷新区间的刷新操作的实施可由充当主处理器与对应DRAM之间的接口的存储器控制器来执行。在常规的桌面应用和相关应用中,存储器控制器通常被包含在与接受DRAM集成电路的存储器槽相关联的单独的集成电路中。这种自立存储器控制器可以在正常操作期间独立于主处理器而保持被供电。但在诸如智能电话之类的现代移动设备应用中,存储器控制器与主处理器一起被集成到片上系统(SoC)内。减小SoC的功耗是智能电话设计中的主目标,因为消费者不想要持续地对其设备充电。因此,移动设备SoC实现其中存储器控制器被完全地或部分地下电的睡眠模式是常规的。但是用于SoC的相关联的DRAM集成电路必须在睡眠模式期间保持被供电,以便其可以保持其存储器内容。因此,移动设备和相关设备中的DRAM的刷新调度在活跃操作模式期间由存储器控制器控制并且在空闲或睡眠操作模式期间由DRAM自身控制。为了在两种类型的刷新调度管理之间进行区分,存储器控制器管理的刷新调度可被标记为操作的“刷新模式”,而DRAM控制的刷新调度可被标记为操作的“自刷新模式”。

尽管移动设备中刷新调度的该拆分控制允许SoC通过进入睡眠模式来节省功率,但是它与刷新循环的不必要触发相关联。例如,在操作的刷新模式期间,DRAM不跟踪刷新调度定时,因为该刷新调度定时是由存储器控制器管理的。在恢复操作的自刷新模式之际,DRAM因此触发刷新操作。但是在切换到操作的自刷新模式之前,存储器控制器可能刚刚触发了刷新操作,使得在转换到自刷新模式之际由DRAM自动触发刷新操作是不必要的。类似地,存储器控制器在恢复操作的刷新模式和终止自刷新模式时触发刷新操作。取决于DRAM中最后的刷新循环的定时,在转换到刷新模式之际由存储器控制器自动触发刷新操作也可能是不必要的。这些不必要的刷新循环不必要地消耗功率。另外,由于DRAM不可用于读和写访问直至完成刷新循环,所以它们增大了存储器等待时间。增大的等待时间和功耗这一问题在现代SoC中加重,这些SoC被设计成更频繁地进入睡眠模式以最小化功耗。

相应地,本领域中,在其中存储器控制器和存储器自身两者可以控制刷新调度的系统中存在对改进的刷新调度的需要。

概述

为了提供改进的刷新调度,提供了一种存储器控制器,该存储器控制器被配置成:在进入睡眠操作模式之前,向其对应的DRAM通知最新近的存储器控制器触发的刷新循环是何时由该存储器控制器触发的。给定该信息,则DRAM可以在该存储器控制器处于睡眠操作模式时相应地调度自刷新循环。因此阻止DRAM触发自刷新循环,直至自从该最新近的存储器控制器触发的刷新循环的触发以来的刷新区间期满。

类似地,DRAM被配置成:在该存储器控制器从睡眠操作模式转换到活跃操作模式之际,向该存储器控制器通知最新近的自刷新循环是何时由该DRAM触发的。该存储器控制器随后可在活跃操作模式期间相应地调度后续的存储器控制器触发的刷新循环。因此阻止该存储器控制器触发刷新循环,直至自从该最新近的自刷新循环的触发以来的自刷新区间期满。

除了向DRAM提供关于最后刷新循环何时被触发的信息之外,该存储器控制器还可向该DRAM提供关于该DRAM的温度的信息。该DRAM可随后响应于温度测量而将从该存储器控制器传送至该DRAM的刷新循环的剩余部分减小。

附图简述

图1解说了根据本公开的一方面的在进入操作的自刷新模式期间的存储器控制器和DRAM。

图2解说了根据本公开的一方面的在退出操作的自刷新模式期间的存储器控制器和DRAM。

图3A是根据本公开的一方面的用于从DRAM的存储器控制器控制的刷新模式转换到DRAM的自刷新模式的操作方法的流程图。

图3B是根据本公开的一方面的用于从DRAM的自刷新模式转换到DRAM的存储器控制器控制的刷新模式的操作方法的流程图。

图4解说了根据本公开的一方面的包括图1和图2的存储器控制器和DRAM的设备。

本公开的各实施例及其优势通过参考以下详细描述而被最好地理解。应当领会,相同参考标记被用来标识在一个或多个附图中所解说的相同元件。

详细描述

现在转到附图,图1中示出了在进入操作的自刷新模式(其中MC 100进入睡眠操作模式,同时DRAM 105管理其刷新循环)期间的SoC存储器控制器(MC)100和DRAM集成电路105。在一实施例中,MC 100包括话务空闲定时器110,其对从最后访问(读或写操作)在DRAM 105上被执行时起的空闲时段进行计时。如果该空闲时段不超过空闲阈值,则MC 100继续在操作的刷新模式中操作,其中MC 100控制DRAM 105中的刷新循环的调度。为此,MC 100包括刷新定时器115,其对从DRAM 105的最后存储器控制器触发的刷新循环以来的延迟进行计时。如果该延迟等于DRAM 105的刷新区间,则刷新定时器115向命令调度器125断言刷新命令(cmd)120。作为响应,命令调度器125命令DRAM 105中的命令解码器130来触发刷新电路135以执行刷新循环。以此方式,刷新定时器115在操作的刷新模式期间以由刷新区间确定的速率来周期性地触发DRAM 105中的刷新循环。

如果话务空闲定时器110超时从而指示由于缺乏活动而已经超过空闲阈值,则话务空闲定时器110可向命令调度器125断言自刷新命令(cmd)150。进而,命令调度器125命令命令解码器130以命令DRAM 105进入操作的自刷新模式。同时,话务空闲定时器110断言自刷新命令150,它还触发刷新定时器115以写入DRAM 105中的模式寄存器140,以便向DRAM 105通知何时发生最后存储器控制器触发的刷新循环。该通信可通过刷新定时器115将自最后(最新近)的存储器控制器触发的刷新循环以来期满的时间或当前刷新区间中剩余的时间写入模式寄存器140中来执行。替换地,刷新定时器115可以使自最新近的存储器控制器触发的刷新循环以来的当前刷新区间的剩余部分(若存在)数字化。例如,刷新定时器115可以使用三比特数字化,使得它可以以1/8的增量来估计当前刷新区间的剩余部分。替换地,刷新定时器115可以使用四比特数字化(1/16的增量)或更低阶或更高阶的数字化。以下讨论将不失一般性地假定刷新定时器115将经数字化的当前刷新区间的剩余部分写入模式寄存器140中,因为这需要相对较少的比特并且因此是带宽高效的。

DRAM 105随后可以通过将来自模式寄存器140的经数字化估计的当前刷新区间的剩余部分加载到自刷新定时器145中来进入操作的自刷新模式。例如,如果刷新定时器115已经指示当前刷新区间存在1/8剩余,则自刷新定时器145可在触发DRAM刷新电路135中的初始DRAM触发的自刷新循环之前,倒计数到刷新区间的刚刚1/8。在触发该初始自刷新循环之后,自刷新定时器145随后将从完整刷新区间倒计数以供触发后续自刷新循环。随后,DRAM 105将管理其自刷新循环,直至SoC存储器控制器100恢复正常操作并且退出睡眠模式。

刷新定时器115还可以向DRAM 105通知用于刷新区间的当前温度乘数。DRAM存储器单元中电容器的泄漏随着温度增大。因此,无论在存储器控制器触发的刷新循环中还是在由DRAM控制的自刷新循环中,随着温度增大而减小刷新区间可以是有利的。与当前刷新区间的剩余部分一样,刷新区间中的这种减少也可使用一定数目的比特来数字化并且由经数字化的温度乘数来表示。例如,假设温度乘数被数字化成3比特数字。在室温下,经数字化的温度乘数可等于1,因为指示刷新区间的没有减小。随着温度的增大,经数字化的温度乘数可能会从1逐渐减小。因此,刷新定时器115也可以将数字化温度乘数写入模式寄存器140或DRAM 105中的另一寄存器(未解说)中,类似于由存储器控制器100将刷新循环剩余部分写入模式寄存器140。

在响应于SoC存储器控制器100退出睡眠模式以恢复正常(活跃)操作而从操作的自刷新模式转换到刷新模式时,自刷新定时器145可以将经数字化的当前刷新区间的剩余部分(若有)写入模式寄存器140(或另一合适的寄存器)中,如图2中示出的。随后,刷新定时器115可以读取模式寄存器140的内容,使得它在转换到刷新模式之际,从用于初始刷新循环的刷新区间的剩余部分倒计数。在刷新定时器115根据如通过从模式寄存器140读取而通知的任何剩余部分来触发初始刷新循环之后,刷新定时器115将随后使用整个刷新区间来倒计数,以供任何后续的存储器控制器触发的刷新循环直至到操作的自刷新模式的另一转换。注意,自刷新定时器145还可将当前经数字化的温度乘数写入模式寄存器140或另一类似的寄存器中。刷新定时器115随后将结合来自模式寄存器140的剩余刷新区间部分一起使用该乘数。例如,假设模式寄存器140指示最后的DRAM触发的刷新循环在刷新区间的1/2之前发生。如果DRAM 105由于升高的DRAM温度而指示温度乘数为1/2,则刷新定时器115随后将不从默认(室温)刷新区间的1/2倒计数,而是由于来自升高的温度的减小而从默认刷新区间的1/4倒计数。

图3A是诸如关于图1讨论的操作的刷新模式到自刷新模式的流程图。该方法包括动作300,该动作300在存储器控制器在当前刷新循环中仍然具有用于DRAM的剩余部分时将存储器控制器从活跃操作模式转换到睡眠操作模式。将图2的存储器控制器100从活跃操作模式转换到睡眠操作模式是动作300的示例。该方法进一步包括动作305,该动作305在转换到睡眠操作模式之前将当前刷新循环中的剩余部分从存储器控制器传达至DRAM。通过刷新定时器115写入模式寄存器140从而标识当前刷新循环的剩余部分是动作305的示例。最后,该方法包括动作310,该动作310响应于DRAM中对当前刷新循环中的剩余部分的倒计数而触发DRAM中的自刷新循环。自刷新定时器145中的倒计数和由刷新电路135进行的自刷新循环的后续触发是动作310的示例。

图3B是示出用于从操作的刷新模式进入操作的自刷新模式的方法的流程图。该方法包括将存储器控制器从睡眠操作模式转换到活跃操作模式的动作315。将图2中的存储器控制器100从睡眠操作模式转换到活跃操作模式是动作315的示例。该方法还包括动作320,该动作320在存储器控制器处从动态随机存取存储器(DRAM)接收对自DRAM的最新近的DRAM触发的自刷新以来的自刷新区间的剩余部分的指示。由刷新定时器115读取模式寄存器140是动作320的示例。此外,该方法包括在存储器控制器中,对自刷新区间的剩余部分倒计数的动作325。由刷新定时器115对如从模式寄存器140检索到的自刷新区间的剩余部分倒计数是动作325的示例。最后,该方法包括动作330,该动作330响应于对自刷新区间的剩余部分的倒计数而从存储器控制器触发DRAM中的刷新循环。由命令调度器125触发DRAM 105中的刷新循环是动作330的示例。

如图4中示出的,存储器控制器100可被纳入设备400内的片上系统(SoC)405内。设备400可包括蜂窝电话、智能电话、个人数字助理、平板计算机、膝上型计算机、数码相机、手持式游戏设备、或其他合适设备。SoC 405内的存储器控制器100在系统总线415上与DRAM 105通信。SoC还在系统总线415上与诸如传感器之类的外围设备410通信。显示器控制器425也耦合至系统总线415。显示器控制器425进而耦合至驱动显示器435的视频处理器430。SoC 405还可包括在DRAM 105中或附近的温度传感器440以监视DRAM 105的温度。

结合本公开所描述的方法或算法的步骤可直接在硬件中、在由处理器执行的软件模块中、或在这两者的组合中体现。如果在软件中实现,则各功能可被存储在计算机可读介质上的一条或更多条指令或代码上。示例性计算机可读介质被耦合到处理器,以使得处理器能从/向该计算机可读介质读取/写入信息。替换地,计算机可读介质可以被整合到处理器。

如本领域普通技术人员至此将领会的并取决于手头的具体应用,可以在本公开的设备的材料、装置、配置和使用方法上做出许多修改、替换和变动而不会脱离本公开的范围。有鉴于此,本公开的范围不应当被限定于本文所解说和描述的特定实施例(因为其仅是作为本公开的一些示例),而应当与所附权利要求及其功能等同方案完全相当。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1