CN103576833B - 存储器控制器的训练、功率门控和动态频率改变 - Google Patents
存储器控制器的训练、功率门控和动态频率改变 Download PDFInfo
- Publication number
- CN103576833B CN103576833B CN201310326245.9A CN201310326245A CN103576833B CN 103576833 B CN103576833 B CN 103576833B CN 201310326245 A CN201310326245 A CN 201310326245A CN 103576833 B CN103576833 B CN 103576833B
- Authority
- CN
- China
- Prior art keywords
- state
- context
- transformation
- frequency
- memory controller
- 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
- 230000008859 change Effects 0.000 title claims abstract description 30
- 238000012549 training Methods 0.000 title abstract description 6
- 230000009466 transformation Effects 0.000 claims abstract description 64
- 238000000034 method Methods 0.000 claims abstract description 55
- 238000003860 storage Methods 0.000 claims description 17
- 230000003068 static effect Effects 0.000 claims description 11
- 238000012546 transfer Methods 0.000 claims description 6
- 230000002618 waking effect Effects 0.000 claims description 2
- 238000011534 incubation Methods 0.000 description 21
- 238000011084 recovery Methods 0.000 description 12
- 238000007726 management method Methods 0.000 description 10
- 238000004321 preservation Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 6
- 230000007704 transition Effects 0.000 description 6
- 238000012163 sequencing technique Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000001066 destructive effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000000151 deposition Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000008672 reprogramming Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3275—Power saving in memory, e.g. RAM, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4418—Suspend and resume; Hibernate and awake
-
- 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
-
- 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
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Power Sources (AREA)
Abstract
公开了存储器控制器的训练、功率门控和动态频率改变。一种用于管理存储器控制器的方法包括从多个低功率状态选择一个低功率状态。该方法还包括到低功率的转变并且假如唤醒事件还没有被接收到,则在该转变完成时进入低功率状态。一种装置包括配置成选择用于转变的功率状态的控制器、配置成运行用于通过总线连接到存储器的存储器控制器的功率状态之间转变的步骤的状态机、配置成存储至少一个上下文的存储器、配置成存储至少一个上下文的存储器以及配置成在所述状态机引擎的方向将所述至少一个上下文流传输到所述存储器控制器的上下文引擎。流传输包括将上下文数据的N个部分以流形式传输到所述存储器控制器中的N个寄存器。上下文包括对应于为用于转变的所选状态的多个校准。
Description
技术领域
本公开一般涉及存储器和存储器控制器的领域,并且更具体地涉及存储器控制器的动态功率门控和频率改变。
背景技术
计算机系统持续发展,其处理速度更快、数据处理能力更强,并且存储容量逐渐增加。计算机的尺寸也已逐步减小。在膝上型计算机、笔记本计算机、笔记本型计算机和手持计算机市场中,该尺寸减小是最为明显的。当希望不断地减小膝上型计算机、笔记本型计算机和手持计算机的尺寸和重量的同时,制造商也已逐步减小板上电池的尺寸和重量。因为在膝上型计算机、笔记本型计算机、手持计算机中电池寿命是如此重要的考虑因素,所以采用功率管理方法来延长电池寿命。
传统的计算机系统可以使用多个用来减少系统功率的节省功率部件,例如图形用户界面、处理器和存储器控制器的功率节省方法,所述功率节省方法例如可以包括其频率降低,时钟门控、功率门控、低功率DRAM状态、低功率I/O模式和模拟电路的禁用,例如锁相环(PLL)或延迟锁定环(DLL)。这些低功率部件的调整的插接和拔出允许将低功率系统状态用于节省功率。
然而,基于功率模式进入和退出延迟,系统组件(例如微处理器和存储器控制器)的任何水平的功率门控和频率降低是受时间限制的。换言之,尽管深度功率节省可以通过功率门控和/或频率降低来实现,但如果所述功率门控的进入和退出时间超过定时限制,则不允许这种功率门控和频率降低。当存储器控制器状态改变时,可保存存储器控制器状态,将存储器控制器断电,随后将存储器控制器通电并恢复其状态,并且这样产生的延迟必须对任何代理请求的存储器访问是透明的。换言之,可能无法到达最深的功率门控和功率节省状态,因为所产生的定时延迟过大。
发明内容
本发明的实施方案提供一种管理计算机系统功率节省状态和它们所需的进入和退出延迟中固有的挑战的解决方案。在根据本发明的一个实施方案的方法中,公开了一种有效状态转变的方法。可以使用集中的排序机制来达到有效状态转变,所述排序机制感知到实时系统延迟容限,可以控制整个芯片中的分布,并且通过适用于各可选择功率状态(低功率状态和有源状态)的预先计算并校准的功率状态“上下文”的本地存储来完成。
在根据本公开的一个实施方案的方法中,公开了一种管理存储器控制器的方法。该方法包括从多个可用的低功率状态选择进入第一低功率状态,从初始状态转变到所述第一低功率状态,以及提供还没有被接收的唤醒事件,当到所述第一低功率状态的转变完全时,进入所述第一低功率状态。可用的低功率状态是低于用于转变的时间阈值的低功率状态。
在根据本公开的另一实施方案的方法中,公开了一种管理存储器控制器的方法。该方法包括选择用于进入存储器控制器的第一频率,退出第一状态,从第二频率转变到第一频率,并且在完成到第一频率的转变时再次进入第一状态。第一状态包括有源状态和多个低功耗状态之一。
在根据本发明的一个实施方案的装置中,公开了功率管理装置。功率管理装置包括控制器模块,状态机引擎、存储、上下文引擎、存储器控制器和存储器。控制器模块被配置成选择功率状态用于转变。将状态机引擎配置成执行通过总线连接到存储器的存储器控制器的功率状态之间的转变的步骤。将存储器配置成存储至少一个上下文。上下文引擎被配置到在状态机方向上的流,将所述至少一个上下文配置到到存储器控制器。该流传输包括传递上下文数据的N个部分到存储器控制器中的N个寄存器。至少一个上下文包括对应于选择用于转变的状态的多个校准。
附图说明
根据下面的详细描述结合附图将更好地理解本发明,在附图中相同的参考符号表示相同元件,并且其中:
图1示出了根据本发明的实施方案的功率管理设备的示例性简化的方框图。
图2示出了根据本发明的实施方案的多个功率状态和频率组合的上下文的示例性配置。
图3示出了根据本发明的实施方案用于进入和退出存储器控制器的功率状态的示例性状态图。
图4示出了示例性时间阈值,说明定时阈值的特定功率状态转变的根据本发明实施例。
图5示出了示例性流程图,该示例性流程图示出了根据本发明的实施方案的方法的步骤;以及
图6示出了示例性流程图,该示例性流程图示出了根据本发明的实施方案的方法的步骤。
具体实施方式
现在将详细参考本发明的某些实施方案,在所附的结构和式中阐明了本发明的实例。尽管将结合所列举的实施方案来描述本发明,但应理解,它们并不意图将本发明限制于那些实施方案。相反,本发明意图覆盖所有的备选方案、修改和等效物,它们可以被包括在如由权利要求界定的本发明的范围内。而且,在本发明的实施方案的以下详述中,设定了很多特定详情以便提供本发明的充分理解。但是,本领域普通技术人员将认识到,无需这些详情也可实施本发明。在其它实例中,尚未详细描述众所周知的方法、程序、元件和电路,以便不会不必要地模糊本发明的实施方案的各方面。示出本发明的实施方案的附图的半示意性的且未按比例,尤其是,某些尺寸为了清楚的说明而在附图中放大示出。类似地,尽管为了便于描述的图中的视图显示类似方向,但图中的这种描述大部分是任意的。通常,本发明可以任何方向操作。
符号和术语。
列出了下文详细描述的某些部分的程序、步骤、逻辑块、处理和对计算机存储器内数据位的操作的其它符号表征。这些描述和表征是数据处理领域的技术人员用来最有效地传达他们工作的实质给本领域其他技术人员的方法。在此,通常认为程序、计算机执行步骤、逻辑块、处理等是导致期望的结果的步骤或指令的前后一致的序列。所述步骤是需要物理量的物理操作的步骤。通常,尽管并非必要,这些量采取电或磁信号能够被存储、传输、组合、比较和以其它方式操纵在计算机系统中。已经证明,有时方便的,主要出于通用的使用,来指代这些信号为比特、值、元素、符号、字符、术语、数字等。
应当理解,承载,然而,所有这些以及类似的术语要与适当的物理量相关联并且仅仅是应用于这些量的方便的标签。除非特别说明,否则如以下讨论,应该理解,本发明中所讨论,利用术语例如“处理”或“访问”或“执行”或“存储”或“显示”等,指的是计算机系统的动作和处理,或类似的电子计算设备。该数据处理并转变表示为物理(电子)量在计算机系统的寄存器和存储器和其它计算机可读介质为类似地表示为物理量的其它数据在计算机系统存储器或寄存器或其它这种信息存储、传输或显示装置。在一个部件出现在几个实施例,使用相同的附图标记表示相同的部件,该部件是所示的原始的实施例。
本发明的实施方案提供一种管理计算机系统功率节省状态和它们所需的进入和退出延迟中固有的挑战的解决方案。本发明的各种实施例可以提供一种有效管理和/或转变到有源状态和低功率状态之间转变,以及几个不同的频率。可以使用集中的排序机制来达到有效状态转变,所述排序机制感知到实时系统延迟容限,可以控制整个芯片中的分布,并且通过适用于各可选择功率状态(低功率状态和有源状态)的预先计算并校准的功率状态“上下文”的本地存储来完成。
排序存储器控制器低功率和频率改变:
在一个实施例所示,表1中,存储器控制器(MC)提供以下选项的状态可以在不工作期间省电。如图所示在表1的示例,#MC 0状态可以是有源状态的计算机系统可以自由地访问动态随机存取存储器(DRAM)装置。如上所述,存储器控制器可以运行在不同的频率取决于系统的性能要求。较低频率操作经常是更加功率有效。本文所描述的机制促进了快速和安全存储器的频率转变。
存储控制器也可以进入节能状态的时间段内不活动。DRAM中非#MC 0不可用状态(例如有源状态),以使该时间的存储器子系统可以保持在非#MC 0状态是有限的。所花费的时间返回到#MC 0状态和最差情况等待时间被限制为在系统的公差。在一个实施例中,表用于确定最坏情况的延迟时间,每个功率状态和功率状态的等待时间超过该阈值将不会被选择。选项和选择的组合具有更高的功率节省的费用可以在更长的退出延迟时间。本文所描述的机制需要最小化等待时间进入低功率状态(例如,MC 1,MC 2,MC 3,MC4)流出,并使它们与#MC 0状态。通过最小化这种延迟的机会最大化,该方案在存储器子系统在非#MC 0状态(例如,增加的时间可能花费在节能状态)。
表1
图1示出了示例性计算机系统100(例如,片上系统(SOC)),包括系统功率管理单元(SPMU)102、至少一个存储器控制器112、存储控制器PLL 114、存储器控制器输入/输出(MCIO)116,和至少一个DRAM模块118。如图1所示,在一个实施方案中,系统功率管理单元102包括微控制器104、微编码引擎106、片上存储器108(例如,片上SRAM)和上下文保存/恢复引擎110。在一个实施方案中,SOC100包括多个存储器控制器112、多个存储器控制器输入/输出116和多个DRAM模块118。如图1进一步所示,在一个实施方案中,DRAM模块118可能是片外的且通过接口总线120与存储器控制器输入/输出116互连。在一个示例性实施方案中,接口总线120是能够在读/写操作中流数据的寄存器总线。
在一个示例性实施方案中,微编码引擎106和上下文保存/恢复引擎110可运行直接存储器存取(DMA)可编程的逻辑。在一个实施方案中,微编码引擎106和上下文保存/恢复引擎110在引导启动时由固件配置。
为了降低功率未门控潜伏期和频率变化潜伏期(其可以从DRAM模块118减少空白期),存储器接口总线120可以在引导时间时被训练用于不同的频率值。例如,存储器接口总线120可以被训练用于初始示例性频率MF0,且在训练结束时,存储器控制器112的上下文可以存储在片上存储器108中。类似地,存储器接口总线120也可以被训练用于另一个示例性频率MF1,且相应的上下文也存储在片上存储器108中。因此,对于存储器控制器112,可以有N个上下文集用于N个不同频率。换言之,每个功率状态(例如,MC 0-MCn)将具有对应的上下文集用于每个可能的频率,从而可以存在总共n*N上下文集。如上所述,当功率管理执行例如微控制器104决定改变MC频率,上下文保存/恢复引擎110可以恢复以前存储的上下文(对应于所需频率)且切换到新频率。类似地,如上所述,当存储器控制器112已为功率门控(从低功率状态返回)时,上下文保存/恢复引擎110可以恢复存储器控制器上下文(从片上存储器108)(该存储器控制器上下文在功率门控之前从先前的上下文保存),并且也恢复相同的时钟频率。
在一个实施方案中,存储器控制器112当前配置和校准当存储器控制器112为功率门控时可被保存成上下文,然后当存储器控制器重新接通(例如,功率未门控)时可从所保存的上下文恢复。多个上下文可以在片上存储器108中组织并且使用上下文保存/恢复引擎110进行保存和/或恢复。在一个实施方案中,上下文可以堆叠成使得所述上下文保存/恢复引擎110可指向上下文的开始点,并且知道所需的新状态(例如,MC 0、MC1等),可以根据上下文保存和恢复将所需上下文流传输出。如果重新引导,则所有上下文可以流传输出。如本文所讨论,所需的每个频率改变的堆叠部分可以被保存,而动态部分在运行时间期间更新。在一个示例性实施方案中,每个上下文可以存储在片上存储器108中。在一个实施方案中,至少一个上下文存储在片上存储器108中且任何剩余的上下文存储在DRAM模块118中。
在一个实施方案中,如图2所示,为了减小存储器控制器保存/恢复潜伏期,上下文可被分成三组上下文数据:通过训练预先计算的静态上下文数据,在启动时间时被配置的伪静态上下文数据,和通过存储器控制器112动态产生的动态上下文。在启动时间时,存储器控制器输入/输出116和接口总线120可以被训练用于所关注的所有DRAM频率,以及所有所需状态(例如,MC0-MC4),而静态上下文存储在片上存储器108中。在一个实施方案中,伪静态上下文可以包括性能监视计数器。虽然这种计数器确实改变,但是在一个实施方案中,更新计数器可能不需要通过功率循环存活。在一个实施方案中,片上存储器108将有足够的存储容量用于至少一个上下文数据集(例如,静态、伪静态和动态上下文数据),该存储容量被要求用于恢复存储器子系统。在一个实施方案中,其它上下文集可以存储在DRAM118中和/或在片上存储器108中。
如图2所示,上下文可被组织成使得在上下文保存操作期间,只有动态内容(例如,由硬件(例如,性能监控计数器)动态改变的上下文数据)被上下文保存/恢复引擎110保存。在一个示例性实施方案中,上下文数据可以被组织成公共上下文(对于所有存储器控制器)和单独(每个存储器控制器)上下文。在恢复操作期间,上下文保存/恢复引擎110恢复公共上下文数据,通过将公共上下文数据流传播到存储器控制器112以及将单独上下文数据流传输到每个单独的存储器控制器112。
在一个示例性实施方案中,操作系统可以具有影响存储器控制器的配置。存储控制器具有无法控制什么需要改变操作系统在运行时间或存储于存储器控制器,并且这些变化必须保持(在动态上下文)在功率循环。例如,操作系统可以具有放置在需要保存的特定状态(例如,错误条件、请求等等)下的存储器控制器112。这些示例性的变化也不会改变,直到操作系统要求它们改变。
如图1和3中所示,存储器控制器状态之间的定序可以通过硬件状态机和位于系统功率管理单元(SPMU)102中的微编码引擎106定序器来实现。在一个实施方案中,因为状态开关操作的潜伏期敏感性质,示例性定序不是通过在通用处理器上运行的固件或内核软件来实现。在微控制器104实现存储器控制器状态之前,微控制器104可以执行几个动作,来准备用于微编码引擎106的状态以及使所有必需的计时器和控制器程序化。
在一个示例性实施方案中,一系列动作可以通过微控制器104来实现。微控制器104可以与系统协商,以确定可被所有设备容许的最大潜伏期。微控制器还可以选择目标低功率状态且由此选择任何相应的参数,以及状态序列数据领域(如果对于该目标状态是必需的话)。微控制器104也可确保任何静态状态数据(例如,SRAM重新修复或静态控制寄存器)被预先保存在片上存储器108中。这些步骤可确保任何上下文保存程序是短的。该步骤还确保用于上下文恢复的所有必要状态上下文存在。一旦微控制器104已实现MC状态,则SPMU 102中的硬件状态机能够启动微编码引擎106以进入低功率状态,不管存储子系统是否空闲以及所有系统客户是否表明它们当前占满。
在一个实施方案中,为了减少上下文保存和恢复的传输时间,可使用寄存器总线,其能够将“寄存器-写入”或“寄存器-读取”流传输到每个存储器控制器112,而不是单独寻址数据的每个部分。寄存器总线还可用于将寄存器-写入流传播到所有存储器控制器112,由此将公共上下文数据恢复到所有的存储器控制器112。在一个示例性实施方案中,寄存器总线也可以从寄存器流读取数据,用于保存存储器控制器112的上下文数据。换言之,上下文数据从寄存器中以流形式被读取,用于快速保存上下文数据。
在一个示例性实施方案中,总线接收N个不同的数据块并且所述N个数据块被存储在第一N寄存器中,例如,该数据被流传输进。常规的寄存器总线对于流传输数据不好,由于常规总线需需要确定数据将被放入哪个寄存器。换言之,示例性总线不是从单个寄存器读取或写入单个寄存器,而是从多个寄存器读取和写入多个寄存器。
如上所述,在一个实施方案中,微编码引擎106是特异性定序频率变化以及定序至低功率状态(例如,MC1-MC4)的进入和从低功率状态的退出的硬件引擎。如图3所示,有一系列步骤在保存和恢复步骤之间执行,并且由微编码引擎106来执行。
定序存储器控制器低功率变化:
图3的状态图示出了用于在MC状态之间定序的示例性方法,如由SPMU 102中的硬件状态机以及微编码引擎106来显示。在图3中,箭头指示存储器控制器112决定从MC0进入MCn,但不会直接进入那里。如图3中所示,在中间状态期间将执行转变,并且如果将唤醒事件发生,则终止至状态MCn状态的转变。如本文详细讨论,首先执行非破坏性步骤(保存上下文数据vs断电等)。在一个示例性实施方案中,转变的早期阶段对于操作系统是透明的而不是破坏性的。例如,如果当低功率状态转变在进行中时唤醒事件由存储器控制器112接收,则将终止该转变,只要破坏性步骤尚未进行。换言之,如果当唤醒事件发生时已经达到非可回收点,则系统仍然必须全程完成功率循环,从保存上下文数据至断电,以及在重新供电后恢复回到有源状态(例如,MC0)。在这种条件下,系统必须能够耐受进入潜伏期和退出潜伏期。
图3中的示例性状态图包括:MC0 302、MCn进入状态304、MCn状态306和MCn退出状态308,其中n表示所选择的用于进入的低功率状态(例如,MC1-MC4)。也如图3所示,示出下列示例性状态转换:转变320、转变322、转变324、转变326、转变328和转变330。当微控制器104选择用于进入的MC低功率状态(例如,MC1-MC4)并且状态机转变到MCn进入状态304时,转变320时启动。当存储器控制器112在至低功率状态的当前转变中已达到非可回收阶段之前接收唤醒事件时,启动转变322。如图3中所示,状态机将转变回到MC0状态302,而仅有少量退出潜伏期,这取决于在唤醒事件被接收之前进入程序的程度。
如图3中所示,在转变324中,存储器控制器112在至所选低功率状态的当前转变中已达到非可回收阶段之后已接收唤醒事件。因此,在转变324中,存储器控制器112将完成进入所选择的低功率状态,然后立即转换到退出状态MCn 308用于从当前MCn MC 0并返回到低功率状态或有源状态302。如上所述,当在唤醒事件期间断言MCn条目状态304,程序将跳转到适当的出口点的序列和反向序列,或在退出过程会很快下降到任何不必要的程度,这取决于排放步骤转变到低功率状态。
在过渡326,MS进入状态转变已经完成,并且状态机进入状态MCn 306。在MCn状态306,存储器控制器112工作在所选择的低功率状态(例如,MC 1-MC 4)。在过渡328,一个来自唤醒事件已被接收且微编码引擎106执行转变到中间状态,MCn出口308。在过渡330,MC-MCn状态退出的退出状态308完成,并且状态机返回到#MC0状态302。
在一个示例性实施例中,程序返回状态MCn从306到#MC 0状态302开始的时候,硬件可以“唤醒”信号断言事件。在一个实施例中,唤醒事件信号将被断言时任何如下发生:系统客户机已经表明它需要访问DRAM模块118、CPU计时器唤醒来自源(例如中断或一个提前通知),并且当微控制器104,由于任何原因,决定禁止状态MC(MC1-MC 4所示,表1)。
在一个实施例中,唤醒事件信号将被断言时任何如下发生:系统客户机已经表明它需要访问DRAM模块118、CPU计时器唤醒来自源(例如中断或一个提前通知),并且当微控制器104,由于任何原因,决定禁止状态MC(MC 1-MC 4所示,表1)。在一个实施例,如果唤醒事件期间产生的输入序列,该序列将转移到适当的出口点的序列和反向序列,或在退出当前过程可以快速地下降到任何不必要的排放步骤。时序图402的图4示出了示例性的最坏情况,其中最大量的进入和退出等待时间最长的等待时间为从低功率状态转变是必需的。换言之,时序图404表示最大所需要的时间进入低功率状态(等待时间项),最大电流所需要的时间退出低功率状态(退出延迟),导致最坏情况的等待时间t1到t2。换言之,时序图404表示最大所需要的时间进入低功率状态(等待时间项),最大电流所需要的时间退出低功率状态(退出延迟),导致最坏情况的等待时间t1到t2。
如本文所述,这种最坏情况下通常不应发生唤醒事件,如开始处接收的输入将导致输入和退出的终止过渡的快速转变。时序图410的图4示出一种典型情况,部分进入和退出等待时间受到延迟,必须在接收到唤醒事件在T5之前存储器控制器112回到工作状态和DRAM模块118是可访问的。所示时序图404的图4,线406相交时序图404和代表非可回收阶段或阈值。线408相交的时序图404表示当转变当前项中的一个点的唤醒事件被接收。如线408在线路406,在时序图404,剩余部分的入口和出口可以中止序列转变到活动状态(#MC 0状态)立即开始。所示时序图404的图4,退出延迟需要退出延迟可以小于最坏情况示于图4的范围,取决于输入的序列完成后,现在必须反转以返回到活动状态。也参见图5,当唤醒事件发生,然后到达非可回收阶段,剩余的进入和退出等待时间减少所得序列中断的出口的序列不需要被执行。在一个实施例中,T3-T4才退出延迟,因为条目被中止。
在一个示例性实施例中,当一部分的多个步骤的转变完成,这些步骤可包括退出延迟处理而进行(例如,调节或改变它们所需的工作状态)。一些步骤是比其它的更长的时间来恢复。例如,当PLL被关闭,则将花费一些时间后再次向上旋转。在一个示例性实施例中,可以有多个唤醒事件和多个判定事件,其中最重要的事件被功率门控,其中上下文的寄存器是不可恢复的丢失和最重要的事件。
在另一个实施例,其它类型的事件也可以被恢复,如断电MCIO116。时序图410的图4示出一种典型情况,部分进入和退出等待时间受到延迟,必须在接收到唤醒事件在T5之前存储器控制器112回到工作状态和DRAM模块118是可访问的。参见图4,线406也相交时序图410和表示未回收阶段或阈值。所示时序图404的图4,线406相交时序图404和代表非可回收阶段或阈值。
在时间T5,线412,超过阈值点,线406的一部分,进入和退出等待时间必须承受等待时间(T5-T6)。表2示出了示例性的步骤顺序改变存储子系统#MC 0状态(例如活动状态)-MCn(例如一种低功率状态,MC 1-MC 4)。在一个示例性实施例中,第一步的表2进行SPMU102,而其余的步骤执行的微编码引擎106。在一个实施例中,PLL和/或DLL关闭存储器控制器在步骤9可被认为是不可回收的事件,并且将使任何电流进入过渡阶段或非可回收超过阈值电平。在一个示例性实施例中,单个存储器控制器112就进入低功率状态。
表2
表3示出了用于将储存器子系统状态MCn(如低功率状态MC2-MC4)改变到MC0(有源状态)的示例步骤顺序。在一个示例实施方案中,表3的第一步由SPMU 102执行,而其余步骤可由微编码引擎106执行。在一个示例实施方案中,单一储存器控制器112从低功率状态返回到有源状态。在另一个实施方案中,多个储存器控制器112从低功率状态返回到有源状态。
表3
步骤1:如果(sleep_event)调用MCn进入MCE顺序。 |
步骤2:阻止所有请求源,并获取所有必要的资源。 |
步骤3:等一小段时间来阻止信号传送。 |
步骤4:告诉MC一旦所有其余请求被处理后,即自刷新状态。 |
步骤5:等待MC确认其已进入自刷新状态。 |
步骤6:使MEMIO干线断电。 |
步骤7:保存MC状态上下文。 |
步骤8:将MC时钟切换至旁路时钟源。 |
步骤2:关掉MC PLL/DLL。 |
步骤10:钳位信号来准备功率选通 |
步骤11:断言重置所有的MC。 |
步骤12:钳位MC时钟。 |
步骤13:启动MC功率选通。 |
步骤14:释放任何为本顺序所获取的 |
排序存储器控制器低功率和频率改变:
如上所述,除了选择从多个低功率状态、不活动的周期期间,频率低于当前频率可被选择。在一个实施例中,微控制器104可以确定一个适当的频率变化(例如,到较低频率),并且使得在准备所需的任何电压变化的频率改变。如本文所讨论的频率变化,所述命令存储器控制器可被实现为硬件状态机和微编码引擎106的SPMU 102。类似于测序,测序的状态变化的频率变化可以通过硬件、固件、而不是由于等待时间敏感的操作特性(频率变化)。
在一个示例性实施例中,使用微编码引擎106、存储器频率(MF),类似于状态机的状态变化的状态机,MC,示于图3,可用于改变存储器的频率。在一个实施例中,存储器控制器的上下文(对应于目的地存储频率)是恢复上下文保存/恢复引擎110中的一系列步骤的原始频率改变到新的目标频率。在一个实施例中,表4示出了示例性的步骤顺序改变存储到子系统的频率从MF0MF1(其中MF1>MF0频率)。在一个实施例,单个存储器子系统的频率被改变。在一个实施例,单个存储器子系统的频率被改变。
表4
步骤1:程序电压相应。 |
步骤2:MC禁止状态的转变。 |
步骤3:告诉所有系统存储器客户端以注满其缓冲器。 |
步骤4:MC-MCE呼叫频率改变序列。 |
步骤5:等待客户机以表示它们准备好用于MC长的时间。 |
步骤3:等待一小段时间块中传送信号。 |
步骤5等待。MC,以确认它已经进入自刷新状态。 |
步骤12:启用时钟交叉。 |
步骤9:切换到旁路时钟。 |
步骤12:启用时钟交叉。 |
步骤11:暂停、重新锁定PLL/DLL初始化和重新编程。 |
步骤12:加载新MCX寄存器设置在MC寄存器总线。 |
步骤13:加载到寄存器寄存器总线上设置新的小分子量MC。 |
步骤12:启用时钟交叉。 |
步骤5等待。MC PLL/DLL锁定。 |
步骤16:MC-告诉水平块切换到VCO。 |
步骤12:启用时钟交叉。 |
步骤19:告诉#MC 0MC1和退出自刷新状态。 |
步骤19:MC重新启用状态的转变是合适的。 |
在一个示例性实施方案中,当唤醒事件发生时,在频率转变期间,频率转变可被完成而没有过高的潜伏期。在一个示例性实施方案中,转移到更快的频率需要的潜伏期在阈值之下,使得在需求减少的周期期间可以使用较低频率并然后在需求增加周期期间改变到较高频率。换句话说,从第一频率转移到第二频率需要的潜伏期足够低,使得改变频率所需的时间量可由等待DRAM模块118访问的子系统忍受。在一个实施方案中,步骤1-4可由SPMU固件执行,而剩余的步骤5-19可由微编码引擎106执行。
在一个示例性实施方案中,存储器可以在第一选定频率或第二选定频率运行。第一选定频率将具有第一选定频率专用的、保存在其相应的上下文中的参数,而第二选定频率将具有第二选定频率专用的、保存在其相应的上下文中的其它参数。在另一实施方案中,多个不同频率可是可用的。
如本文所讨论的,虽然参数将被保存在相应的静态上下文中,虽然在某一频率运行存储器控制器,但是任何周期性重新校准或保存的统计结果将被保存具有相应上下文的动态部分,使得该统计结果和重新校准可在下一个恢复期间使用。
在一个示例性实施方案中,频率改变可比低功率状态转变更动态。在低功率状态转变中,该系统必须断电,但是在频率改变中,系统不需要在深度休眠状态中。在一个示例性实施方案中,频率改变可在10个微秒内实施。由频率转变引起的潜伏期还导致存储器控制器112和DRAM模块118的空白期。然而,如本文所述,遭遇频率转变的潜伏期可耐受高达预定阈值。
在一个示例性实施方案中,如本文所述,如果频率转变潜伏期足够短,则系统可在较低频率开始并然后根据需要快速升高到较高频率。由于短暂的频率转变潜伏期和多个可能的频率选择,频率选择中的精细度是可能的。在一个实施方案中,表格被采用以确定有关每个频率转变的最坏情况潜伏期,并且超过潜伏期阈值的那些频率转变将不会被选中。
在另一个示例性实施方案中,频率转变可与MCn状态变化结合。在一个示例性实施方案中,表格可被采用以确定有关每个功率状态的最坏情况潜伏期,并且超过潜伏期阈值的那些功率状态将不会被选中。在一个示例性实施方案中,表格可被采用以确定有关每个功率状态和有关每个频率转变的最坏情况潜伏期,并且超过潜伏期阈值的那些状态和频率转变不会被选中。
图5示出用于存储器控制器的功率状态之间转变的示例性方法的步骤。在图5的步骤502中,存储器控制器低功率状态(例如,MC1-MC4)被选择。如本文所讨论的,多个低功率状态的一个可被选择。同样如表1中所示的,每个低功率状态可将存储器控制器112带入更深的功率保护状态。在图5的步骤504中,到存储器控制器低功率状态的转变开始。在图5的步骤506中,如果已经接收到唤醒事件,则方法继续到图5的步骤512。如果没有接收到唤醒事件,则方法继续到图5的步骤508并且到所选择的低功率状态的转变继续直到完成。在一个示例性实施方案中,在到所选择的低功率状态的转变期间,步骤506中的唤醒事件的监视可继续。
如图5中所示的,在步骤508中,在完成转变阶段之后,存储器控制器112现在处于所选择的低功率状态中。如本文所讨论的,在任何低功率状态期间,存储器控制器112不能与存储器(例如,DRAM存储器)通信。
在图5的步骤510中,唤醒事件被接收。在一个示例性实施方案中,唤醒事件可由系统功率管理单元102接收。如本文所讨论的,唤醒事件可包括到DRAM模块118的通信请求以及到DRAM模块118的其它部件请求访问。
在图5的步骤512中,开始到从当前低功率状态到退出的转变。如本文所述,此种退出将使存储器控制器112返回到有源状态并恢复存储器控制器112和DRAM模块118之间的通信。在图5的步骤514中,从低功率状态的转变完成并且用于存储器控制器112的有源状态(例如,MC0)恢复。
图6示出用于当唤醒事件已被接收时系统功率管理单元102当前从先前状态转变到低功率状态时存储器控制器112的功率状态之间转变的示例性方法的步骤。在图6的步骤602中,唤醒事件已被接收,而至低功率状态的转变仍在进行。
在图6的步骤604中,到低功率状态的当前转变的程度被确定。如果当前转变的程度在阈值之下,则方法继续到步骤606并且当前转变终止并且从到有源状态的转变退出。如果当前转变的程度在阈值上,则方法继续到步骤610并且到低功率状态的转变完成以降低功率。
在当前转变的程度在阈值之下时,如在步骤604中确定的,该方法继续到步骤606。在图6的步骤606中,(到低功率状态的)当前转变终止(例如,不再继续)。在一个示例性实施方案中,如本文所讨论的,终止该转变将停止当前低功率转变的步骤。在从当前低功率状态转变退出后,该方法继续到步骤608。在图6的步骤608中,开始到有源状态的转变。在一个实施方案中,当转变到有源状态时,所述转变包括在到低功率状态的转变期间复位被改变、断电等的所有参数和硬件设置。换言之,沿完成的到低功率状态的转变越远,则完成到有源状态的转变将花费更长时间。
在当前转变的程度高于阈值时,如在步骤604中确定的,该方法继续到步骤610。在图6的步骤610中,(到低功率状态的)当前转变完成。一旦低功率转变完成,方法继续到步骤612。在图6的步骤612中,该方法将存储器控制器112从当前低功率状态设置转变为有源状态。
虽然本文已经公开了某些优选实施方案和方法,但是根据上述公开,对于本领域的那些技术人员明显的是,此类实施方案和方法的变更和修改不会偏离本发明的精神和范围的本发明。希望的是本发明应该仅限于所附权利要求和适用法律的规则和原理所要求的范围。
Claims (22)
1.一种用于管理存储器控制器的方法,所述方法包括:
从多个可用的低功率状态选择进入第一低功率状态,其中可用的低功率状态是用于转变的时间处于时间阈值之下的低功率状态;
从初始状态转变到所述第一低功率状态;
假如唤醒事件还没有被接收到,当到所述第一低功率状态的转变完成时,进入所述第一低功率状态。
2.根据权利要求1所述的方法,其中对于所述多个可用的低功率状态中的每个,存储器和所述存储器控制器之间互连被切断,使所述存储器不可用。
3.根据权利要求1所述的方法,其还包括:
在进入所述第一低功率状态之后,接收唤醒事件;
开始从所述第一低功率状态到有源状态的转变;以及
假如从所述第一低功率状态到所述有源状态的转变完成,则进入所述有源状态。
4.根据权利要求1所述的方法,其还包括:
当在到所述第一低功率状态的所述转变的期间已经接收到唤醒事件时,开始到有源状态的转变,其中假如到所述第一低功率状态的所述转变所需时间在阈值之下,则所述开始到所述有源状态的转变终止到所述第一低功率状态的转变,否则,在所述开始到所述有源状态的转变之前,完全转变到所述第一低功率状态;以及
当到所述有源状态的转变完成时,进入所述有源状态。
5.根据权利要求1所述的方法,其中到新状态的转变包括:
从多个上下文选择一个上下文,其中所选择的上下文对应于所述新状态,其中所述多个上下文中的每个上下文对应于多个状态中的一个状态,其中所述新状态选自多个状态,其中每个上下文定义所述多个状态的相应状态的参数,并且其中新状态包括低功率状态和有源状态中的一个;以及
使所选择的上下文流传输到存储器控制器,用于将所述存储器控制器设置为相应的新状态,其中流传输包括将上下文数据的N个部分以流形式传输到所述存储器控制器中的N个寄存器。
6.根据权利要求5所述的方法,其中上下文包括静态部分、伪静态部分和动态部分中的至少一个。
7.根据权利要求6所述的方法,其中到新状态的转变还包括在开始到所述新状态的转变之前将有关当前状态的上下文的动态部分从存储器控制器流传输到用于存储的存储器,并且其中流传输包括将动态上下文数据的N个部分以流形式从所述存储器控制器中的N个寄存器传输到所述存储器。
8.根据权利要求1所述的方法,其中上下文包括有关相应的有源状态和低功率状态中的一个和来自多个频率的相应频率的上下文信息,其中上下文存储在用于每个状态和频率组合的存储器中。
9.一种用于管理存储器控制器的方法,所述方法包括:
选择进入选自多个可用的频率的所述存储器控制器的第一频率,其中可用的频率是用于转变的时间处于时间阈值之下的频率;
退出第一状态,其中所述第一状态包括有源状态中的一个和多个低功率状态中的一个;
从第二频率转变到所述第一频率;以及
当到所述第一频率的转变完成时,重新进入所述第一状态。
10.根据权利要求9所述的方法,其中:
选择进入所述存储器控制器的第一频率之前还包括:
选择用于进入的第一状态,所述第一状态包括有源状态中的一个和多个低功率状态中的一个;
从第二状态转变到所述第一状态;以及
当到所述第一频率的转变完成时,重新进入所述第一状态包括,假如在所述第一状态不同于有源状态时唤醒事件还没有接收到,当到所述第一状态的转变和到所述第一频率的转变完成时,则进入所述第一状态,其中对于所述多个低功率状态中的每个,存储器和所述存储器控制器之间互连被切断,使所述存储器不可用。
11.根据权利要求9所述的方法,其中到第一频率的转变包括:
从多个上下文选择一个上下文,其中所选择的上下文对应于所述第一频率,其中所述多个上下文中的每个上下文对应于多个频率中的一个频率,其中所述第一频率选自所述多个频率,其中每个上下文定义所述多个频率的相应频率的参数;以及
使所选择的上下文流传输到存储器控制器,用于将所述存储器控制器设置为相应的不同频率,其中流传输包括将上下文数据的N个部分以流形式传输到所述存储器控制器中的N个寄存器。
12.根据权利要求11所述的方法,其中上下文包括静态部分、伪静态部分和动态部分中的至少一个。
13.根据权利要求12所述的方法,其中到第一频率的转变还包括在开始到所述第一频率的转变之前将有关当前频率的上下文的动态部分从存储器控制器流传输到用于存储的存储器,并且其中流传输包括将动态上下文数据的N个部分以流形式从所述存储器控制器中的N个寄存器传输到所述存储器。
14.一种功率管理装置,其包括:
控制器模块,其被配置成选择用于转变的功率状态;
状态机引擎,其被配置成运行用于通过总线连接到存储器的存储器控制器的功率状态之间转变的步骤;
存储器,其被配置成存储至少一个上下文;以及
上下文引擎,其被配置成在在所述状态机引擎的方向将所述至少一个上下文流传输到所述存储器控制器,其中流传输包括将上下文数据的N个部分以流形式传输到所述存储器控制器中的N个寄存器,且其中所述至少一个上下文包括对应于为用于转变的所选状态的多个校准。
15.根据权利要求14所述的功率管理装置,其中所述功率状态包括有源状态和至少一个低功率状态,并且其中对于所述至少一个低功率状态中的每个,所述存储器和所述存储器控制器之间的总线被切断,使所述存储器不可用。
16.根据权利要求14所述的功率管理装置,其中每个上下文包括静态部分、伪静态部分和动态部分中的至少一个。
17.根据权利要求14所述的功率管理装置,其中每个上下文对应于频率。
18.根据权利要求14所述的功率管理装置,其中所述状态机引擎和所述控制器模块进一步被配置成将所述存储器控制器从初始状态转变到所选的低功率状态,并且其中所述状态机引擎和所述控制器模块进一步被配置成当唤醒事件被接收到时终止到所选的低功率状态的转变。
19.根据权利要求14所述的功率管理装置,其中所述状态机引擎进一步被配置成当唤醒事件发生时将所述存储器控制器从低功率状态转变到有源状态。
20.根据权利要求14所述的功率管理装置,其中所述状态机引擎和所述控制器模块进一步被配置成当唤醒事件发生时终止到低功率状态的当前转变并开始到有源状态的转变,否则假如到所述低功率状态的所述当前转变所需时间在阈值之下,则在开始到所述有源状态的转变之前,将完成到所述低功率状态的所述当前转变。
21.根据权利要求14所述的功率管理装置,其中每个上下文对应于特定状态和频率组合,并且其中每个上下文定义用于每个特定状态和频率组合的参数。
22.根据权利要求14所述的功率管理装置,其中所述上下文引擎还可操作来在所述状态机引擎开始到新状态的转变之前将有关当前状态的上下文的动态部分从所述存储器控制器流传输到所述存储器,并且其中流传输包括将动态上下文数据的N个部分以流形式从所述存储器中的N个寄存器传输到所述存储器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/561,884 US9104421B2 (en) | 2012-07-30 | 2012-07-30 | Training, power-gating, and dynamic frequency changing of a memory controller |
US13/561884 | 2012-07-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103576833A CN103576833A (zh) | 2014-02-12 |
CN103576833B true CN103576833B (zh) | 2016-12-28 |
Family
ID=49912422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310326245.9A Active CN103576833B (zh) | 2012-07-30 | 2013-07-30 | 存储器控制器的训练、功率门控和动态频率改变 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9104421B2 (zh) |
CN (1) | CN103576833B (zh) |
DE (1) | DE102013214907B4 (zh) |
TW (1) | TWI527051B (zh) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9395799B2 (en) | 2012-08-09 | 2016-07-19 | Nvidia Corporation | Power management techniques for USB interfaces |
US9323315B2 (en) | 2012-08-15 | 2016-04-26 | Nvidia Corporation | Method and system for automatic clock-gating of a clock grid at a clock source |
US9317096B2 (en) * | 2012-12-18 | 2016-04-19 | Advanced Micro Devices, Inc. | Performance aware idle power management |
US9939883B2 (en) | 2012-12-27 | 2018-04-10 | Nvidia Corporation | Supply-voltage control for device power management |
JP6210753B2 (ja) * | 2013-06-24 | 2017-10-11 | キヤノン株式会社 | 情報処理装置 |
US9602083B2 (en) | 2013-07-03 | 2017-03-21 | Nvidia Corporation | Clock generation circuit that tracks critical path across process, voltage and temperature variation |
US9766649B2 (en) | 2013-07-22 | 2017-09-19 | Nvidia Corporation | Closed loop dynamic voltage and frequency scaling |
US9569385B2 (en) | 2013-09-09 | 2017-02-14 | Nvidia Corporation | Memory transaction ordering |
US10466763B2 (en) | 2013-12-02 | 2019-11-05 | Nvidia Corporation | Dynamic voltage-frequency scaling to limit power transients |
US9396032B2 (en) * | 2014-03-27 | 2016-07-19 | Intel Corporation | Priority based context preemption |
US10055370B2 (en) | 2014-07-09 | 2018-08-21 | Advanced Micro Devices, Inc. | Method and apparatis for processor standby |
US20160091957A1 (en) * | 2014-09-26 | 2016-03-31 | Suketu R. Partiwala | Power management for memory accesses in a system-on-chip |
US9690364B2 (en) * | 2015-09-04 | 2017-06-27 | Qualcomm Incorporated | Systems and methods for dynamically adjusting memory state transition timers |
US10877688B2 (en) * | 2016-08-01 | 2020-12-29 | Apple Inc. | System for managing memory devices |
US10185378B2 (en) | 2016-10-03 | 2019-01-22 | Microsoft Technology Licensing, Llc | Prioritized sequencing of device inrush current |
US10338655B2 (en) | 2017-04-11 | 2019-07-02 | Qualcomm Incorporated | Advanced fall through mechanism for low power sequencers |
KR102530347B1 (ko) | 2018-01-08 | 2023-05-08 | 삼성전자주식회사 | 반도체 장치 및 반도체 시스템 |
TWI676879B (zh) * | 2018-05-11 | 2019-11-11 | 瑞昱半導體股份有限公司 | 時脈管理電路及時脈管理方法 |
US10936046B2 (en) * | 2018-06-11 | 2021-03-02 | Silicon Motion, Inc. | Method for performing power saving control in a memory device, associated memory device and memory controller thereof, and associated electronic device |
US11079945B2 (en) * | 2018-09-20 | 2021-08-03 | Ati Technologies Ulc | Dynamic configuration of memory timing parameters |
US11226752B2 (en) * | 2019-03-05 | 2022-01-18 | Apple Inc. | Filtering memory calibration |
US11176986B2 (en) | 2019-12-30 | 2021-11-16 | Advanced Micro Devices, Inc. | Memory context restore, reduction of boot time of a system on a chip by reducing double data rate memory training |
US11579876B2 (en) * | 2020-08-05 | 2023-02-14 | Advanced Micro Devices, Inc. | Reducing save restore latency for power control based on write signals |
CN112363869B (zh) * | 2020-11-19 | 2022-03-01 | 中国核动力研究设计院 | 基于三状态变量有限状态机的核dcs回溯方法及系统 |
US20220121263A1 (en) * | 2021-12-23 | 2022-04-21 | Intel Corporation | Fast self-refresh exit power state |
US20240329838A1 (en) * | 2023-03-31 | 2024-10-03 | Advanced Micro Devices, Inc. | Memory training enhancements |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101231585A (zh) * | 2007-01-26 | 2008-07-30 | 辉达公司 | 用于并行线程计算的虚拟结构和指令集 |
CN101371247A (zh) * | 2005-12-19 | 2009-02-18 | 辉达公司 | 用于图形处理器的并行阵列结构 |
US7627730B1 (en) * | 2006-05-02 | 2009-12-01 | Sun Microsystems, Inc. | System and method for optimizing a memory controller |
CN101620725A (zh) * | 2008-07-03 | 2010-01-06 | 辉达公司 | 混合多重采样/超采样抗锯齿 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5586332A (en) * | 1993-03-24 | 1996-12-17 | Intel Corporation | Power management for low power processors through the use of auto clock-throttling |
GB0516457D0 (en) * | 2005-08-10 | 2005-09-14 | Symbian Software Ltd | Reversible power transitions in a computing device |
US8041968B2 (en) * | 2007-01-04 | 2011-10-18 | Apple Inc. | Power management for driving display with baseband portion when application portion is in low power mode |
US8055871B1 (en) | 2007-02-27 | 2011-11-08 | Nvidia Corporation | Low latency synchronous memory performance switching using update control |
US8656198B2 (en) * | 2010-04-26 | 2014-02-18 | Advanced Micro Devices | Method and apparatus for memory power management |
US8438410B2 (en) | 2010-06-23 | 2013-05-07 | Intel Corporation | Memory power management via dynamic memory operation states |
US8327172B2 (en) | 2010-06-23 | 2012-12-04 | Intel Corporation | Adaptive memory frequency scaling |
-
2012
- 2012-07-30 US US13/561,884 patent/US9104421B2/en active Active
-
2013
- 2013-07-30 CN CN201310326245.9A patent/CN103576833B/zh active Active
- 2013-07-30 TW TW102127241A patent/TWI527051B/zh not_active IP Right Cessation
- 2013-07-30 DE DE102013214907.7A patent/DE102013214907B4/de active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101371247A (zh) * | 2005-12-19 | 2009-02-18 | 辉达公司 | 用于图形处理器的并行阵列结构 |
US7627730B1 (en) * | 2006-05-02 | 2009-12-01 | Sun Microsystems, Inc. | System and method for optimizing a memory controller |
CN101231585A (zh) * | 2007-01-26 | 2008-07-30 | 辉达公司 | 用于并行线程计算的虚拟结构和指令集 |
CN101620725A (zh) * | 2008-07-03 | 2010-01-06 | 辉达公司 | 混合多重采样/超采样抗锯齿 |
Also Published As
Publication number | Publication date |
---|---|
US9104421B2 (en) | 2015-08-11 |
DE102013214907A1 (de) | 2014-01-30 |
CN103576833A (zh) | 2014-02-12 |
DE102013214907B4 (de) | 2016-12-22 |
TW201428760A (zh) | 2014-07-16 |
US20140032947A1 (en) | 2014-01-30 |
TWI527051B (zh) | 2016-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103576833B (zh) | 存储器控制器的训练、功率门控和动态频率改变 | |
US10585448B2 (en) | Low power autonomous peripheral management | |
CN103163940B (zh) | 片上系统时钟控制方法、片上系统及包括其的半导体系统 | |
CN103842934B (zh) | 用于降低功耗的装置和方法 | |
US8443216B2 (en) | Hardware automatic performance state transitions in system on processor sleep and wake events | |
US8850236B2 (en) | Power gating of cores by an SoC | |
US7392414B2 (en) | Method, system, and apparatus for improving multi-core processor performance | |
US8127153B2 (en) | Memory power profiling | |
DE102020120019A1 (de) | Proaktive di/dt-spannungs-dachabfall-abschwächung | |
US9128703B1 (en) | Processor that transitions to an idle mode when no task is scheduled to execute and further enters a quiescent doze mode or a wait mode depending on the value of a reference counter | |
CN101573677A (zh) | 用于数据处理系统中的功率管理的方法和系统 | |
EP2491561A1 (en) | Memory having internal processors and methods of controlling memory access | |
JP2012150815A (ja) | 複数の回路における性能パラメータの整合 | |
CN103914415A (zh) | 调整输入/输出接口 | |
US5784627A (en) | Integrated timer for power management and watchdog functions | |
Kahng et al. | TAP: token-based adaptive power gating | |
US8904223B2 (en) | Communication between domains of a processor operating on different clock signals | |
US20210397379A1 (en) | Norflash sharing | |
US8103888B2 (en) | Method and apparatus for power savings in a multi-threaded processor using a symbol gated with a clock signal | |
US20220342439A1 (en) | Clock management circuit and multi-core system including the same | |
US20170185320A1 (en) | Delayed read indication | |
CN102012881B (zh) | 基于总线监控器的系统芯片总线优先级动态配置装置 | |
JP6535749B2 (ja) | 入出力動作特性に基づくシステムオンチップアイドル電力状態制御のシステムと方法 | |
US10289492B2 (en) | System for data retention and method of operating system | |
US20070234098A1 (en) | Self-timed clock-controlled wait states |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |