CN105760309B - 用于节能的统一存储器组织 - Google Patents
用于节能的统一存储器组织 Download PDFInfo
- Publication number
- CN105760309B CN105760309B CN201510809750.8A CN201510809750A CN105760309B CN 105760309 B CN105760309 B CN 105760309B CN 201510809750 A CN201510809750 A CN 201510809750A CN 105760309 B CN105760309 B CN 105760309B
- Authority
- CN
- China
- Prior art keywords
- memory
- memory cell
- graph data
- low power
- power state
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
-
- 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
-
- 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
-
- 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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/363—Graphics controllers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2330/00—Aspects of power supply; Aspects of display protection and defect management
- G09G2330/02—Details of power systems and of start or stop of display operation
- G09G2330/021—Power management, e.g. power saving
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2360/00—Aspects of the architecture of display systems
- G09G2360/12—Frame memory handling
- G09G2360/125—Frame memory handling using unified memory architecture [UMA]
-
- 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)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Power Engineering (AREA)
- Dram (AREA)
- Power Sources (AREA)
- Image Input (AREA)
- Memory System (AREA)
Abstract
在一个存储器系统中定位一个图形存储器块,以便最小化这块图形存储器占用的存储器装置的数量和/或存储器装置中存储体的数量,从而最大化甚至未被这决图形存储器的一部分所占用的存储器装置的数量和/或存储器装置中存储体的数量,并且因而最大化可以被置为低功率状态的存储器装置的数量和/或存储器装置中存储体的数量,而不会引起此图形存储器块变得不能访问而损害读出图形数据,从而支持在一个显示装置上刷新一幅图像。
Description
本申请是申请日为2004年12月22日、申请号为200480038850.5、发明名称为“用于节能的统一存储器组织”的申请的分案申请。
背景技术
诸如计算机系统的电子系统不断被设计来满足两个有时候不一致的目标,这些目标是降低成本和降低能耗。这些目标是由对这种装置不断增长的使用多样性而驱动的,包括对便携性增长的使用需求,以及希望通过减低成本使得这些装置能够被更多的终端用户使用。对于便携性不断增长的需求已经要求这种电子系统更小、更轻并且在用光诸如电池的便携式能源前能够运行更长时间。对于降低成本的需求已经要求这种电子系统由更少数量的更高集成度的部件制造,从而减少部件采购及装配成本。
首先,通过寻求减少构成存储器系统的存储器装置的数量的方法来减少这种电子系统中存储器系统的物理尺寸似乎是一种实现上述两个目标的方式。减少存储器装置的数量是一种减少所述存储器系统整体能耗的方法,并且可以产生一种物理尺寸更小的存储器系统。一种实现这种存储器装置数量减少的方法是利用一种统一存储器架构(UMA),其中电子系统的图形控制器和处理器共享相同的存储器装置,从而使得所述相同的存储器系统同时作为图形存储器和系统存储器。根据图形和处理能力,以及给定电子系统的存储器需求,实现UMA确实能够将给定电子系统中存储器装置的整体数量减半,导致相当程度的能源、重量以及空间减少。
在当今绝大部分电子系统中,系统和图形存储器都趋向于用动态随机访问存储器(DRAM)装置制造,正如本领域技术人员所熟知的,DRAM装置在每个用于存储数据的存储器单元上以规则的间隔执行刷新操作来保持那些数据。在使用DRAM存储器装置的存储器系统的正常工作过程中,刷新操作与正常的读/写操作以规则的间隔交错进行。为了保存能量,当今许多DRAM存储器提供了一种称为“自刷新”模式的低功率模式,其中关闭了到DRAM存储器装置的总线和接口的电源,并且DRAM存储器装置仅仅消耗足够的能量来在内部执行刷新操作并保持数据。当关闭到DRAM存储器装置的总线和接口的电源,不能执行正常的读/写操作。换言之,在自刷新模式中,数据被保持,但是不能访问。
许多当今的电子系统实现了一种低功率模式,其中作为系统存储器装置的DRAM存储器装置被置为自刷新模式,而作为图形存储器装置的DRAM存储器装置继续正常工作来满足如下需求:在图形控制器的驱动下支持刷新显示器装置上提供的图像。正如那些熟悉图形系统的人将容易认识到的,用在当今电子系统中的绝大多数显示器装置类型需要以规则的间隔将图像数据重传到显示器装置来刷新显示器从而在所述显示器上保持图像。这种规则的图象重传需要以规则的间隔从图形存储器读出图像数据,并且因此,如果想要在电子系统的显示器上保持一幅图像,不能关闭图形存储器的总线和接口。
在当今使用完全独立的总线、接口和存储器装置来作为系统和图形存储器的电子系统中,很容易关闭系统存储器而让图形存储器不受干扰。然而,当实现了UMA,使得一个统一存储器系统的相同存储器装置同时提供系统和图形存储器功能,当试图关闭系统存储器而让图形存储器不受干扰时就会出现问题。
附图说明
参看以下详细说明,本发明的目标、特征以及优点将对本领域的技术人员变得显而易见,其中:
图1是一个实施例的框图,所述实施例使用一个计算机系统并且详述了存储器映射。
图2a和2b描述了使用存储器映射的实施例。
图3a和3b是使用计算机系统的实施例的框图。
图4是另外一个使用计算机系统的实施例的框图。
图5是另外一个实施例的框图,所述实施例使用一个计算机系统并且详述了存储器映射。
图6描述了另外一个使用存储器映射的实施例。
图7是又一个使用计算机系统的实施例的框图。
图8是再一个使用计算机系统的实施例的框图。
图9是又一个实施例的框图,所述实施例使用一个计算机系统并且详述了存储器映射。
图10是分配了图形存储器的实施例的流程图。
图11a和11b一起是实施例的流程图,其中分配额外的图形存储器并且控制了能量状态。
具体实施方式
在下面的描述中,出于解释的目的,为了对本发明的实施例提供彻底的理解,阐明了许多细节。然而,本领域的技术人员能够明白:并不需要这些特定的细节来实践本发明,正如后面所申明的。
本发明的实施例考虑在使用UMA的电子系统中支持限制存储器装置的数量和/或限制作为图形存储器装置的一个或多个存储器装置的部分的尺寸。更具体地,本发明考虑限制不能被置为低功率状态的存储器装置的数量和/或不能被置为低功率状态的一个或多个存储器装置的部分的尺寸,至少达到这样的电子系统中对于作为系统存储器装置的存储器装置和/或存储器装置的一些部分的可能的程度。虽然下面的讨论集中在DRAM装置上,本领域技术人员将能够理解下文所主张的本发明可以被实施以支持提供某种形式的低功率状态的任何类型的存储器装置。本领域技术人员还能理解:虽然下面的讨论集中在存储器单元在存储体中被组织成行和列的二维阵列的存储器装置,存储器单元还能够以许多种方法中的任何一种进行组织,包括多于两维的阵列,具有不同形式的交错存储,内容可寻址,等等。另外,虽然下面讨论的至少一部分集中在计算机系统中的存储器上,本领域技术人员将能够理解下文所主张的本发明可以结合其它电子系统被实施。
图1是一个使用计算机系统的实施例的框图。计算机系统100至少部分地由处理器110,图形控制器120,存储器控制器130以及存储器140构成。存储器控制器130被耦合到处理器110和图形控制器120,并且向处理器110和图形控制器120提供了对于存储器140的访问,存储器控制器130也被耦合到存储器140。图形控制器120进而被耦合到监视器122,并且向监视器122提供从存储器140获取的图像数据,由监视器122进行显示。处理器110,存储器控制器130以及存储器140构成了计算机系统100的一种内核,能够支持处理器110执行机器可读的指令和在存储器140中存储数据,包括指令。在各种实施例中,处理器110可以是任何类型的处理器,包括能够执行至少一部分众所周知并广泛使用的“x86”指令集,并且在另外的实施例中,可以有不止一个处理器。
在不同的实施例中,存储器140可以由任何DRAM类型的一个或多个存储器装置构成,包括快速页面模式(FPM),可扩展的数据输出(EDO),单数据率(SDR)或双数据率(DDR)形式的同步动态RAM(SDRAM),应用RAMBUSTM接口的各种技术的RAM,等。存储器控制器130为存储器140提供了一种适当的接口,而与DRAM类型无关。在有些实施例中,存储器140可以是可移除模块,诸如单内联存储器模块(SIMM),双内联存储器模块(DIMM),单列直插式引脚封装(SIPP)等,是以其上安装了一个或多个存储器IC(集成电路)的诸如小电路板的衬底形式来实现的。在其它实施例中,存储器140可以由直接安装在同一块较大的电路板上的一个或多个存储器IC构成,在该块电路板上还安装了一个或多个处理器110,图形控制器120和/或存储器控制器130。
存储器映射144,其起始和结束地址从000到zzz,描绘了各种可能的实施例中存储器140内存储器空间分配的一种可能的例子。如所描绘的,存储器140内被分配为系统存储器的存储器空间部分被分割成系统存储器141a(从地址000到地址xxx)和系统存储器141b(从地址yyy到地址zzz),围绕着图形存储器142,它是存储器140内被分配为图形存储器的存储器空间部分(丛地址xxx到地址yyy)。在各种可能的实施例中,可以由一个处理器(或许是处理器110)执行代码来将存储器140分配为系统和/或图形存储器部分,所述代码可以是诸如位于电路板上非易失性存储器装置内的处理器能够访问的固件,或诸如从某种形式的介质(诸如硬盘的盘片)加载的操作系统。不论存储器140内的空间被分配的机制,所有用于图形存储器的空间被分配为单个连续的块,即图形存储器142,并在存储器映射144内被映射,以使得存储器映射144内只有一对起始和结束地址(即地址xxx和地址yyy),从而试图使得图形存储器142占用尽可能少的存储器IC和/或一个或多个存储器IC内尽可能少的存储体。正如本领域技术人员将认识到的,分配图形存储器142占用尽可能少的存储器IC和/或一个或多个存储器IC内尽可能少的存储体并不需要图形存储器142被分配在如图所示的系统存储器之间的部分,图形存储器142可以被分配在存储器映射144的任何一端(即图形存储器142可以从地址000开始或在地址zzz结束)。
在用单个具有多个存储体的存储器IC实现存储器140的实施例中,其中存储器单元被组织成二维阵列,图形存储器142被分配占用尽可能少的存储器单元存储体。当计算机系统100进入低功率状态的时,引起构成存储器140的单个存储器IC内仅仅由系统存储器141a和141b的部分或全部占用的存储体进入低功率状态,诸如自刷新模式,而即使由图形存储器142部分占用的存储体不被置为低功率状态,从而维护至少执行读取操作的能力,来读取图形存储器142的部分以刷新在显示器122上显示的图像。
在用多个存储器IC实现存储器140的实施例中,图形存储器142可以被分配占用尽可能少的存储器IC,并且当计算机系统100进入低功率状态时,引起构成存储器140的仅仅由系统存储器141a或141b的部分或全部占用的存储器IC进入低功率状态,而即使由图形存储器142部分占用的存储器IC未被置为低功率状态。在这种实施例的某些变种中,即使由图形存储器142部分占用的那些存储器IC能够使得其中仅仅由系统存储器141a或141b占用的存储体置为低功率状态,而即使由图形存储器142部分占用的任何存储体不被置为低功率状态。
在存储器140要么用单个存储器IC实现要么用多个存储器IC实现的实施例中,处理器110可以执行一个机器可读的指令序列,引起处理器110首先询问或检查存储器140来确定构成存储器140的存储器装置数量和类型的确切配置信息,以及在这些存储器装置的每一个中存储器单元存储体的内部组织。在执行这些指令时,可以引起处理器110来分析收集到的配置数据以及有关需要被分配为图形存储器142的存储器140的数量信息,来获得存储器映射144的一个版本,所述版本使得图形存储器142占用尽可能少的存储器装置和/或一个或多个存储器装置内尽可能少的存储器单元存储体,从而使得尽可能多的存储器装置和/或存储器装置的存储体将仅仅由一个或多个系统存储器块占用(诸如系统存储器141a和141b),从而使得这些存储器装置和/或存储器装置的存储体有可能被置为低功率状态。
备选地,可以使用一种更简单的缺省算法,该算法令图形存储器142总是被分配在从地址000开始或在地址zzz结束的单个块中(即总是令图形存储器142“紧靠”存储器映射144的一端或另一端)。这种更简单的算法可能涉及也可能不要求询问或检查存储器140来确定构成存储器140的存储器装置的数量和/或配置。这种更简单的算法基于一种假设:将图形存储器142全部分配在位于存储器映射144一端或另一端的单个块中通常将缺省地引起图形存储器142占用尽可能少的存储器装置和/或存储器单元存储体。这种更简单的算法在下面的情况中还被认为是合乎需要的:已经知道构成存储器140的所有可用的存储器装置和/或构成存储器140的每个存储器装置内的所有存储体都有类似的尺寸和/或配置,因而通过将图形存储器142设置于任何一个存储器装置内(或平行的存储器装置组)相对于任何其它的方案而言不能获得明显的优势。
图2a和2b是使用存储器装置的实施例的框图。在图2a和2b中,存储器装置240被描绘为由8个存储器单元存储体构成,即从存储体245a到245h,虽然本领技术人员可以容易地认识到存储器装置240可以由不同数量的存储器单元存储体构成。在各种实施例中,存储体245a-245h中的每一个由存储器单元行和列构成的二维阵列构成,并且每个存储体都可以独立的寻址。
存储器映射244被叠放在存储体245a-h的块描绘之上来说明图2a中的系统存储器241和图形存储器242以及图2b中的系统存储器241a-b和图形存储器242是如何被分配到由存储体245a-h的存储器单元提供的存储区中。具体地,在图2a中,系统存储器241占用了存储体245b的部分和存储体245c-h的全部,而图形存储器242占用了存储体245a的全部和存储体245b的仅仅一部分。另外具体地,在图2b中,被分配为系统存储器的存储器装置240的部分被分割成系统存储器241a和241b,系统存储器241a占用存储体245a-d的全部和存储体245e的仅仅一部分,系统存储器241b占用存储体245f的仅仅一部分和存储体245g-h的全部,而图形存储器242占用存储体245e和245f的仅仅一部分。提供图2a和2b来说明存储器装置240的部分作为系统和图形存储器的特定映射的两个不同的例子。然而,正如本领域技术人员容易认识到的,这些系统和图形存储器组合的存储分配的特定映射仅仅是例子,系统和图形存储器组合的许多其它的映射是可能的。图2a和2b的要点在于:图形存储器242被分配为单个连续的存储块并且这个单个连续的存储块被映射的位置占用了尽可能少的存储体,所述尽可能少的存储体是只有两个容纳图形存储器242的存储体,如图所示,所述图形存储器太大而不能安放在仅仅一个存储体中,从而最小化由图形存储器242占用的存储体的数量(或者存储器装置的数量),从而试图最大化不包含图形存储器242的即使一部分的存储体和/或存储器装置的数量,因而最大化可以被置为低功率状态的存储体和/或存储器装置的数量。
在具有类似图2a的存储器映射244的存储器映射的有些实施例中,当存储器装置240被置为低功率状态时,存储体245c-h被置为低功率状态,诸如自刷新模式,而存储体245a-b未被置为低功率状态。允许存储体245a和245b继续正常工作,使得包含在存储体245a和245b中的图形数据能够以规则的定时基础被读出,以便支持呈现在显示器装置(未显示)上的图像的刷新。以这种方式,可以将具有存储器装置240的电子系统的功率降低到允许在显示装置上连续呈现图像的限度。
类似地,在具有类似于图2b的存储器映射244的存储器映射的有些实施例中,当存储器装置240被置为低功率状态时,存储体245a-d和245g-h被置为低功率状态,而存储体245e-f未被置为低功率状态。允许存储体245e和245f继续正常工作,使得包含在存储体245e和245f中的图形数据能够以规则的定时基础被读出,以便支持呈现在显示器装置上的图像(未显示)的刷新。
图3a和3b是使用存储器系统的实施例的简化框图。在图3a和3b中,存储器系统300至少部分地由存储器控制器330和通过存储器总线335耦合在一起的存储器装置340a-c构成。存储器系统设计领域的技术人员将容易认识到图3a和3b描绘了相对简单的存储器系统的例子,并且替代实施例也是可行的,其中可以在不背离后面所申明的本发明的精神和范围的情况下减少、放大或改变确切的部件安排和配置。例如,虽然存储器系统300被描绘为具有通过单个存储器总线耦合的三个存储器装置340a-c,本领域技术人员能够容易认识到其它可能的实施例中存储器系统300可以由耦合不同数量的存储器装置的多个总线构成。
存储器控制器330控制由存储器装置340a-c执行的功能,作为至少向处理器310和图形控制器320提供对存储器装置340a-c访问的一部分,上述二者被耦合到存储控制器330。具体地,处理器310和/或图形控制器320向存储器控制器330发布命令以便在一个或多个存储器装置340a-c中存储数据,并且从一个或多个存储器装置340a-c中检索存储的数据。存储器控制器330接收这些命令并且以一种与存储器总线335兼容的定时和协议格式将它们转发给存储器装置340a-c。实际上,存储器控制器330响应来自处理器310和/或图形控制器320的读写命令,协调对存储器装置340a-c中存储器单元的访问。
存储器总线335可以由各种独立的地址、控制和/或数据信号线构成,用于传输地址、命令和/或数据,要么在独立的导线上传输,要么以一种复用的方式在按时间顺序发生的不同相位中在共享的导线上传输。备选地,或许结合这种独立的信号线,地址、命令和/或数据可以被编码以各种方式进行传输和/或以分组进行传输。存储器总线335还可以传输地址、命令和/或数据奇偶校验信号,和/或检错纠错(ECC)信号。正如本领域技术人员将容易认识到的,许多形式的定时、信令和协议可以在存储器总线335上进行传输。可以配置构成存储器总线335各种可能的实施例的各种信号线的确切数量和特征,以使其能够与许多可能的存储器接口中的任何一种进行互操作,包括当今广泛使用的或新接口和/或存储器装置类型,包括可能的FPM(快速页面模式)存储器装置,EDO(扩展数据输出),双端口VRAM(视频随机存取存储器),视窗RAM,SDR(单数据率),DDR(双数据率),RAMBUSTM DRAM,等。在各种信号线上的活动由一个时钟信号协调的实施例中(如同在同步存储器总线的情形中),一个或多个信号线,也许是控制信号线之中的信号线,可用于在每个存储器总线335上传输时钟信号。
存储器装置340a-c中的每一个由一个或多个存储器IC构成,其中有一个或多个存储体的存储器单元被组织成阵列。在有些实施例中,存储器装置340a-c中的每一个可以由单个集成电路构成,而在其它实施例中,存储器装置340a-c中的每一个可以由多个集成电路构成。在各种可能的实施例中,存储器装置340a-c中的每一个可以由SIMM(单内联存储器模块)、SIPP(单列直插式引脚封装)、DIMM(双内联存储器模块),或许多其它形式中的任何一种实现,如本领域技术人员将认识到的。在这种实施例中,正如本领域技术人员将认识到的,存储器装置340a-c中的一个或多个可以由多个存储器IC的集合构成,所述多个存储器IC的集合能够以一种方式并行工作,其中该集合中所有的存储器IC接收相同的地址和命令,但是被分别耦合到整个数据总线宽度的不同子集(例如当数据总线为64比特宽时,比特数据从0到63,一个存储器装置被耦合到数据比特0-3,另外一个耦合到数据比特4-7,等等)。
在图3a中,系统存储器341b和341c分别占有存储器装置340b和340c的全部,而存储器装置340a被分配给系统存储器341a和图形存储器342。在图3b中,系统存储器341b和341c分别占用存储器装置340b和340c的全部,而存储器装置340a被分配给系统存储器341a1和341a2,以及图形存储器342。提供图3a和3b来说明存储器装置340a-c的部分到系统和图形存储器的特定映射的两个不同的例子。然而,正如本领域技术人员将容易认识到的,这些系统和图形存储器组合的存储分配的特定映射仅仅是例子,并且系统和图形存储器组合的其它映射是可能的。图3a和3b的要点在于:在存储器装置340a由多个存储体构成的实施例中,图形存储器342被分配为单个连续的存储块并且这个单个连续的存储块被映射的位置占用了尽可能少的存储体。使被图形存储器342的即使一部分占用的存储器装置(诸如存储器装置340a-c)的数量和/或存储器装置(诸如存储器装置340a)中的存储体数量最小化,有助于使没有包含图形存储器342的即使一部分的存储体和/或存储器装置的数量最大化,从而使可以被置为低功率状态的存储体和/或存储器装置的数量最大化,而不会损害对图形存储器342的访问,以便为了刷新图形数据的显示的目的而读出图形数据。
在有些具有类似于图3a所示的系统与图形存储器分配的实施例中,当存储器系统300被置为低功率状态时,存储器装置340b和340c被置为低功率状态,诸如自刷新模式,而存储器装置340a中只有由系统存储器341a占用的部分被置为低功率状态,条件是给定实施例中的存储器装置340a支持存储器装置340a中的一部分存储器单元被置为低功率状态而存储器装置340a中的另一部分存储器单元不被置为低功率状态。在具有由存储器装置340a提供的这种支持所带来的好处的这种实施例中,存储器装置340a的被置为和未被置为低功率状态的部分可以根据存储器装置340a中的存储器单元存储体的数量以及哪些存储体仅仅由系统存储器341a独占来进行定义。备选地,在其中的存储器装置340a要么全部被置为低功率状态要么全部不置为低功率状态的实施例中,可能只有存储器装置340b和340c被置为低功率状态,而存储器装置340a不被置为低功率状态。允许存储器装置340a的至少一部分正常工作,而不是置为低功率状态,允许包含在图形存储器342中的图形数据能够基于规则的定时进行读取,以支持刷新耦合到图形控制器320的显示器装置(未显示)上呈现的图像。
类似地,在有些具有类似于图3b的系统和图形存储器分配的实施例中,当系统存储器300被置为低功率状态时,存储器装置340b和340c被置为低功率状态,诸如自刷新模式,而存储器装置340a中只有由系统存储器341a1和341a2占用的部分被置为低功率状态,条件是给定实施例中的存储器装置340a支持存储器装置340a中的仅仅一部分存储器单元被置为低功率状态而存储器装置340a中的其它部分存储器单元不被置为低功率状态。备选地,在存储器装置340a要么全部被置为低功率状态要么全部不置为低功率状态的实施例中,只有存储器装置340b和340c被置为低功率状态,而存储器装置340a不被置为低功率状态。
图4是应用存储器系统的实施例的简化框图。存储器系统400至少部分地由存储器控制器430、通过存储器总线435ac耦合到存储器控制器430的存储器装置440a和440c、以及通过存储器总线435bd耦合到存储器控制器430的存储器装置440b和440d组成。本领域的存储器系统设计技术人员将容易认识到图4仅仅描绘了一个存储器系统的例子,并且备选实施例是可能的,其中部件的确切的安排以及配置可以被减少、增加或修改,而不背离如下文所申明的本发明的精神和范围。
存储器控制器430控制由存储器装置440a-d执行的功能,作为至少向处理器410和图形控制器420提供对于存储器装置440a-d的访问的部分,所述处理器410和图形控制器420都被耦合到存储器控制器430。特别地,处理器410和/或图形控制器420向存储器控制器430发布命令以便在一个或多个存储器装置440a-d中存储数据,以及从一个或多个存储器装置440a-d中检索存储的数据。存储器控制器430接收这些命令并将它们以一种具有与存储器总线435ac以及435bd相兼容的定时与协议的格式转发给存储器装置440a-c。实际上,作为对来自处理器410和/或图形控制器420的读写命令的响应,存储器430协调对存储器装置440a-d内的存储器单元的访问。
在各种实施例中,存储器控制器430可以被设计和/或配置来以如下方式同时使用存储器总线435ac和435bd:通过2∶1的交错形式来交错存储数据,从而提高存储和/或检索数据的读和/或写操作可以被执行的速度,正如本领域技术人员所熟悉的。这种交错存储可以被认为用于存储器系统441a-d特别有用,允许处理器410更快地访问存储器装置440a-d内的机器可读指令和/或数据。在有些实施例中,正如将被详细讨论的,可以认为为了减少能耗而不向图形控制器420提供这种交错存储带来的好处是有利的,并且图形数据可以仅仅被存储在图形存储器442a中,而让系统存储器441b占用存储器装置440b的全部。然而,在其它实施例中,也可以向图形控制器420提供这种交错存储的好处,并且图形数据可以跨越图形存储器442a和442b进行交错存储。然而,正如本领域技术人员将能理解的,虽然图形数据被物理分割成图形存储器442a和442b中两个独立的块,但是以一种几乎与单个连续块相同的方式访问和控制这两个块,因而有机会利用图形数据被存储在单个连续块中所提供的优点,以一种类似于本文其它部分关于其它实施例所讨论的方式,为了节省能量而限制被图形数据占用的存储器装置和/或存储器装置中存储器单元存储体的数量,并且将针对存储器系统400更加全面地进行讨论。
存储器总线435ac和434bd可以由各种独立的地址、控制和/或数据信号线构成,用于传输地址、命令和/或数据,要么在独立的导线上传输,要么以一种复用的方式在按时间顺序发生的不同相位中在共享的导线上传输。备选地,或许结合这种独立的信号线,地址、命令和/或数据可以被编码以各种方式进行传输和/或以分组进行传输。存储器总线435ac和435bd还可以传输地址、命令和/或数据奇偶校验信号,和/或检错纠错(ECC)信号。正如本领域技术人员将容易认识到的,许多形式的定时、信令和协议可以在存储器总线435ac和435bd上进行传输。可以配置构成存储器总线435ac和435bd各种可能的实施例的各种信号线的确切数量和特征,以使其能够与许多可能的存储器接口中的任何一种进行互操作。每个存储器装置440a-d由一个或多个存储器IC构成,其中有一个或多个存储器的存储器单元被组织成阵列。每个存储器装置440a-d可以由单个集成电路或多个集成电路构成。
在有些具有系统和图形存储器分配的实施例中,其中图形数据分别占用存储器装置440a和440b作为图形存储器442a和442b,当存储器系统400被置为低功率状态时,存储器装置440c和440d整个被置为低功率状态,诸如自刷新模式,而存储器装置440a和440b只有由系统存储器441a和441b分别占用的部分被置为低功率状态,条件是给定实施例中的存储器装置440a和440b支持存储器装置440a和440b中的一部分存储器单元被置为低功率状态而存储器装置440a和440b中的另一部分存储器单元不被置为低功率状态。在具有由存储器装置440a和440b提供的这种支持所带来的好处的这种实施例中,存储器装置440a和440b的被置为和未被置为低功率状态的部分可以根据存储器装置440a和440b中的存储器单元存储体的数量以及哪些存储体完全由系统存储器441a和441b占据来进行定义。备选地,在存储器装置440a和440b要么全部被置为低功率状态要么全部不置为低功率状态的实施例中,可能只有存储器装置440c和440d被置为低功率状态,而存储器装置440a和440b不被置为低功率状态。允许分别具有图形存储器442a和442b的存储器装置440a和440b的至少一部分继续正常工作,而不是被置为低功率状态,使得分别包含在图形存储器442a和442b中的图形数据能够基于规则的定时进行读取,以支持刷新耦合到图形控制器420的显示器装置(未显示)上呈现的图像。
类似地,在有些具有系统和图形存储器分配的实施例中,其中图形数据仅仅占用存储器装置440a作为图形存储器442a,当存储器系统400被置为低功率状态时,存储器装置440b-d被置为低功率状态,诸如自刷新模式,而存储器装置440a只有由系统存储器441a占用的一部分被置为低功率状态,条件是给定实施例中的存储器装置440a支持存储器装置440a中的一部分存储器单元被置为低功率状态而存储器装置440a中的其它部分存储器单元不被置为低功率状态。备选地,在存储器装置440a要么全部被置为低功率状态,要么全部不置为低功率状态的实施例中,可能只有存储器装置440b-d被置为低功率状态,而存储器装置440a不被置为低功率状态。不论存储器装置440a的部分是否被置为低功率状态,将存储器装置440b和440d二者置为低功率状态,也为将存储器总线435bd置为低功率状态提供了机会,为存储器系统400进一步提供了能耗减少。
图5是应用计算机系统的实施例的另一个框图。以一种与图1的计算机系统100不同的方式,计算机系统500至少部分地由处理器510、图形控制器520、存储器控制器530以及存储器540构成。存储器控制器530被耦合到处理器510和图形控制器520,并且向处理器510和图形控制器520提供对于存储器540的访问,存储器控制器530也被耦合到存储器540。图形控制器520进而被耦合到监视器522,并且向监视器522提供从存储器540获取的图像数据,以供监视器522显示。在各种实施例中,处理器510可以是多种类型的处理器中的任何一种,并且可以有不止一个处理器。在各种实施例中,存储器540可以由一个或多个任何存储器技术的存储器装置构成,并且存储器控制器530为存储器540提供了一种适当的接口,而与存储器类型无关。
存储器映射544,起始和结束地址从000到zzz,描绘了可以应用到各种可能的实施例的存储器540内存储器空间分配的一种可能的例子。如所描绘的,存储器540内被分配为系统存储器的存储器空间部分被分割成系统存储器541a(从地址000到地址xxx)和系统存储器541b(从地址yyy到地址zzz),围绕着图形存储器542a,图形存储器542a是存储器540内被分配为图形存储器的存储器空间部分(从地址xxx到地址yyy)。在各种可能的实施例中,可以由一个处理器(或许是处理器510)执行代码来将存储器540分配为系统和/或图形存储器部分,所述代码可以是诸如位于电路板上非易失性存储器装置内的处理器能够访问的固件,或诸如为了使计算机系统500在操作系统的控制之下正常工作而准备的从某种形式的介质加载的操作系统。不论存储器540内的空间被分配的机制,图形存储器542a以一种类似于图1的图形存储器142的方式被分配为单个连续的块并在存储器映射544内被映射,以使得在存储器映射544内只有一对起始和结束地址(即地址xxx和地址yyy),从而试图使得图形存储器542a占用尽可能少的存储器IC和/或在一个或多个存储器IC内占用尽可能少的存储体。因此,将图形存储器542a分配为单个块减少了不能被置为低功率状态的一个或多个存储器装置中存储体的数量和/或存储器装置的数量,而且仍然允许图形数据以规则的间隔被读取来维持监视器522上的图像。
然而,与图1的存储器映射144不同,存储器映射544还描绘了一种在地址aaa到bbb动态分配的图形数据块,即图形存储器542b。图形存储器542b以一种“按需”的基础在系统存储器诸如系统存储器541b内被动态地分配,以便支持图形控制器520执行复杂的图形任务,所述复杂的图形任务不只是简单地在监视器522上维持一幅图像,而是诸如纹理映射,运动视频解压缩,多维建模,等。图形存储器542b的尺寸可以根据图形操作的需求而被放大或缩小,或者当不再需要时被彻底删除。在各种实施例中,可以由操作系统中的存储器管理代码来执行这种图形存储器542b的动态分配,所述存储器管理代码被用于执行各种维护任务以支持处理器510使用系统存储器541a和541b。在各种实施例中,根据计算机系统500被计算机系统500的用户用来执行的任务,可能出现分配图形存储器542b的需要,也可能不出现。举例而言,计算机系统500的用户将要使用计算机系统500来玩一个视频游戏,那么可能需要支持动画视频的显示和/或呈现的三维图象,需要比已经分配给图形存储器542a多的图形存储空间,并且在这样一个例子中,图形存储器542b可以被动态地分配以解决这种额外的需求,至少直到计算机系统500的该用户停止玩该游戏。
在有些实施例中,可以在安装软件的控制下执行系统存储器541a和541b以及图形存储器542a在存储器映射544内的分配,所述安装软件也许由处理器510在计算机系统500正常工作之前执行。这种安装软件允许计算机系统500的用户指定用户希望给图形存储器542a分配多少存储器540,也许为了确保图形存储器542a足够大,以提供帧缓冲功能来在监视器522上维持图像。这种安装软件还能够以某种非易失性存储器(未显示)的方式存储如下有关数据:系统存储器541a和541b以及图形存储器542a的大小和/或地址,这些数据以后可以被操作系统或在计算机系统500的正常工作期间执行的其它软件获取。
在各种实施例中,可以通过安装软件来决定选择构成存储器540的一个存储器装置中哪些存储体和/或哪些存储器装置将被允许进入低功率状态以使图像仍然被呈现在监视器552上,所述安装软件也许由处理器510在计算机系统500正常工作之前执行。这种安装软件可以从计算机系统500的用户所指定的有关存储器映射544内图形存储器542a的大小和/或尺寸的设置中导出这种存储体和/或存储器装置的选择。这种安装软件还能够以某种非易失性存储器的形式存储有关这些选择的数据,这些数据以后可以被操作系统或在计算机系统500的正常工作期间执行的其它软件获取。
在有些实施例中,操作系统软件管理图形存储器542b的动态分配,作为对指示系统存储器541a和541b以及图形存储器542a的大小和/或地址的数据,以及指示图形控制器520正在执行的图形操作的变化的需求的响应,使得在计算机系统500的正常工作期间,有时需要比分配给图形存储器542a的存储空间更多的图形存储空间。这种关于系统存储器541a和541b以及图形存储器542a的大小和/或地址的数据可以由安装软件提供给操作系统软件,也许通过存储在非易失性存储器中的值,或通过作为操作系统一部分的安装工具更加直接地从计算机系统500的用户处获得,获得的时机是:当操作系统正在被安装到计算机系统500上时,当操作系统伴随着计算机系统500被启动或初始化而被初始化时,和/或当计算机系统500在操作系统的控制之下正常工作期间。
在各种实施例中,电源管理软件,也许被集成在操作系统软件中,可以获取通过其它软件所做的关于如下选择的数据:当计算机系统500被置为低功率状态,构成存储器540的存储器装置中的哪些存储体和/或哪些存储器装置可以被置为低功率状态,而仍然可以维护监视器522上的图像。在各种实施例中,这种电源管理软件可以询问存储器控制器530和/或计算机系统500的其它部件来获得所需的有关存储器装置中的哪些存储体和/或哪些存储器装置可以被置为低功率状态的信息。备选地,这种电源管理软件可以不获取或获得这些有关这种选择的数据,而是可以简单地向计算机系统500的一个或多个部件(也许包括存储器控制器130)发出信号来将计算机系统500置为低功率状态,该状态仍然允许在监视器522上维持一幅图像,而依赖这些也许已被安装软件配置的一个或多个部件来避免将在监视器522上维持一幅图像所需的存储器装置的存储体和/或存储器装置设置为低功率状态。
虽然在图5中描绘了动态分配的图形存储器即图形存储器542b是单个块,本领域技术人员将容易认识到:出于各种目的而动态分配存储器可能导致多个较小的存储器块被分配给一个特定功能,以一种使得这些较小的块被散布到存储器中所有可用位置的方式进行分配,而不是诸如图形存储器542b的单个连续块。因此,在各种实施例中,图形存储器542b可以仅仅是多个动态分配的图形存储器块中的其中一块。
在各种实施例中,进入在监视器522上仍然可以维持一幅图像的低功率状态,导致分配给图形存储器542a的存储器的存储体和/或存储器装置不被置为低功率状态,而其它存储器的存储体和/或存储器装置被置为低功率状态,其结果是分配给图形存储器542b和/或其它动态分配的图形存储器块的存储器的存储体和/或存储器装置也被置为低功率状态。这可以基于如下假设:计算机系统500被置为低功率状态是由于计算机系统500的用户在预定的一段时间没有使用,并且因此,不需要执行超过在监视器522上维持一幅图像以外的图形操作。结果,诸如呈现三维图像和/或播放运动视频的图形操作可以被停止,使得监视器522上属于这些操作的图像简单地被“冻结”为计算机系统500进入低功率状态时的状态。然而,在其它实施例中,当已经动态分配一块图形存储空间诸如图形存储器542b时,实际上可以禁止进入在监视器522上维持一幅图像的低功率状态。这种禁止可以基于如下假设而进行:如果计算机系统500的用户选择使用计算机系统500执行需要图形操作的任务,所述图形操作需要的图形存储空间比图形存储器542a中可用的更多,那么应该假设计算机系统500正被该用户完全使用(或许,忽略没有检测到来自用户的输入)并且不应该置为可能影响正在执行的图形操作的低功率状态。
图6是一个应用存储器装置的实施例的框图。存储器装置640被描绘为由16个存储器单元的存储体构成,即存储体645a到645p,虽然本领域技术人员将容易认识到存储器装置640可以由任意数量的存储器单元的存储体构成。在各种实施例中,存储体645a-p中的每个由至少一个存储器单元的行和列的二维阵列构成,并且每个存储体可单独地寻址。
以一种与图2a和2b的存储器映射244不同的方式,图6中的存储器映射644被叠加在存储体645a-p的块描述之上,从而来示例系统存储器641和图形存储器642a是如何在存储体545a-h之中分配的。特别地,包含供处理器(未显示)使用的数据的系统存储器641占用了存储体645c的仅仅部分和存储体645d-p的全部,而包含供图形装置(也未显示)使用的数据的图形存储器642a占用了存储体645a-b的全部和存储体645c的仅仅部分。然而,正如本领域技术人员将容易认识到的,这些系统和图形存储器组合的存储分配的特定映射仅仅是例子,并且系统和图形存储器组合的许多其它的映射是可能的。图形存储器642a被分配为单个连续块并且被放置在存储器映射644内以占用存储器装置640的尽可能少的存储体。
除了图形存储器642a,可以“按需地”在系统存储器641内动态地分配额外的图形存储器块,即图形存储器642b和642c,来满足超出图形存储器642a所提供的图形存储空间的量的需求。这里描绘的系统存储器641内的图形存储器642b和642c可以被描述为时间上的一个“快照”,因为在给定时间无论在系统存储器641内什么地方有可用的空间,使用动态分配来提供额外的图形存储器,然后当不再需要时将其删除。虽然描绘了两个特定的动态分配的图形存储器块,本领域技术人员能够容易认识到动态分配可以产生散布在整个系统存储器641内的多个相对较小的图形存储器块。
在有些实施例中,当存储器装置640是其一部分的计算机系统或其它电子装置被置为低功率状态时,仅仅由系统存储器641占用的存储器的存储体(即存储体645d到645p)被置为低功率状态,而即使由图形存储器642a部分占用的存储器的存储体不被置为低功率状态,以便确保图形数据仍然能被访问,所述图形数据必须能够可供访问以便被以规则的间隔从存储器装置640中读出,从而在显示器装置(未显示)上维持一幅图像。由于存储体645d到645p被置为低功率状态,在系统存储器641内动态分配的图形存储器642b和642c与系统存储器641的其它内容一样变得不能访问。在这种实施例中,可以做这样一个假设:需要动态分配超出由图形存储器642a所提供的图形存储空间的图形功能是“额外的”图形功能,为了降低能量消耗,这些额外的图形功能应能被临时地停止而不出现不期望的结果,或者出现被视为可被接受的不期望的结果。事实上,情况可能是这样的:某些图形功能被指定为应该接受这种停止,并且因此,是只在系统存储器641内动态分配图形存储空间的那些图形功能,而其它被认为不应接受这种停止的图形功能被提供了图形存储器642a中图形存储空间。
假设在这种实施例中,某些图形功能停止的效果可以具有如下结果:例如引起运动视频的重放或三维物体的呈现在视觉上被冻结,则哪些图形功能被认为能够接受这种停止可能因不同的电子装置(存储器装置640是所述电子装置的一部分)而不同。在这种实施例的有些变种中,情况可能如下:这种电子装置的用户可能被提供了一个机会来选择哪些图形功能将被动态分配的图形存储器所支持,这将使得这些图形功能经受这种停止。在这种实施例的其它变种中,情况可能如下:这种电子装置的用户可能被提供了一个机会来增加图形存储器642a的大小(因而引起系统存储器641相应的减少),以作为一种确保更多的图形功能被图形存储器642a提供的图形存储空间所支持的方式,并作为一种避免那些用户认为不期望停止的图形功能停止的方式。
在有些实施例中,可能会完全排除进入低功率状态,或至少排除将存储器装置640置为低功率状态,而为了避免停止任何图形功能,在系统存储器641中动态地分配一个或多个图形存储器块(诸如图形存储器642b和642c)。在这种实施例中,可以做如下假设:当存储器装置640是其一部分的计算机或其它电子装置的用户使用的图形功能要求动态分配超出图形存储器642a所提供的图形存储空间时,这个用户将不希望图形功能因低功率状态的开启而中断,在所述低功率状态中,为减小能耗致使动态分配的图形存储器变得不能访问。事实上,可以配置这样一个计算机或电子装置来忽略在预定时间内没有来自键盘、鼠标、触摸屏和/或其它输入装置的活动,上述预定时间内活动的缺失被作为没使用这个计算机或电子装置的指示。在这种实施例的有些变种中,向这样一个计算机或其它电子装置的用户提供了一个机会来指定哪种形式的图形活动不应该因进入低功率状态而中断。
图7是使用存储器系统的实施例的简化框图。存储器系统700至少部分地由存储器控制器730和通过存储器总线735耦合在一起的存储器装置740a-c构成。存储器系统设计领域的技术人员将容易认识到图7描绘了一个相对简单的存储器系统的例子,并且备选实施例是可能的,其中在不背离后面所申明的本发明的精神和范围的情况下,部件的确切安排和配置可以被减少、增加或改变。存储器控制器730控制由存储器装置740a-c执行的功能,作为至少向处理器710和图形控制器720提供对于存储器装置740a-c的访问的部分,所述处理器710和图形控制器720都被耦合到存储器控制器730。特别地,处理器710和/或图形控制器720向存储器控制器730发布命令来在一个或多个存储器装置740a-c中存储数据,以及从一个或多个存储器装置740a-c中获取存储的数据。存储器控制器730接收这些命令并将它们以一种具有与存储器总线735相兼容的定时与协议的格式转发给存储器装置740a-c。
存储器装置740a-c的每个由一个或多个存储器IC构成,其中有一个或多个存储体的存储单元被组织成阵列。在各种可能的实施例中,存储器装置740a-c的每个可以由SIMM(单内联存储器模块)、SIPP(单列直插式引脚封装)、DIMM(双内联存储器模块),或许多其它形式中的任何一种实现,如本领域技术人员将认识到的。在这种实施例中,正如本领域技术人员将认识到的,存储器装置740a-c中的一个或多个可以由多个存储器IC的集合构成,所述多个存储器IC的集合能够以一种方式并行(即“并列地”)工作,其中该集合中所有的存储器IC接收相同的地址和命令,但是被分别耦合到整个数据总线宽度的不同子集。
系统存储器741b和741c分别占用存储器装置740b和740c的全部,而存储器装置740a被分配用于系统存储器741a和741b以及图形存储器742a。虽然图7中描绘了这种特定的映射,本领域技术人员将容易认识到系统和图形存储器组合的其它映射是可能的。要点在于:图形存储器742a被分配为单个连续的存储块并且这个单个存储块被映射的位置占用了尽可能少的存储器装置(以及在存储器装置740a由多个存储体构成的实施例中,尽可能少的存储器存储体)。图7中还描绘了动态分配的存储器块,即图形存储器742b和742c,以支持需要的图形存储空间比图形存储器742a内可用的图形存储空间更多的图形功能。最小化即使被图形存储器742a部分占用的存储器装置的数量(诸如存储器装置740a-c)和/或一个存储器装置(诸如存储器装置740a)中存储体的数量,有助于最大化不包含即使一部分图形存储器742a的存储体和/或存储器装置的数量,因而最大化可以被置为低功率状态的存储体和/或存储器装置的数量,而不损害访问图形存储器742a,从而读取图形数据用于刷新图形数据的显示。
在有些实施例中,当存储器系统700被置为低功率状态时,存储器装置740b和740c被置为低功率状态,诸如自刷新模式,而存储器装置740a只有由系统存储器741a和741b占用的部分被置为低功率状态,条件是给定实施例中的存储器装置740a支持存储器装置740a中的一部分存储器单元被置为低功率状态而存储器装置740a中的另一部分存储器单元不被置为低功率状态。在具有由存储器装置740a提供的这种支持所带来的好处的这种实施例中,存储器装置740a的被置为和不被置为低功率状态的部分可以根据存储器装置740a中的存储器单元存储体的数量以及哪些存储体仅仅由图形存储器742a占据、哪些存储体仅仅由系统存储器741a1和741a2独占而进行定义。备选地,在要么存储器装置740a的全部被置为低功率状态,要么全部不置为低功率状态的实施例中,可能只有存储器装置740b和740c被置为低功率状态,而存储器装置740a不被置为低功率状态。
在这种实施例中,至少允许存储器装置740a中具有图形存储器742a的那部分继续正常工作,而不是被置为低功率状态,使得能够基于规则的定时读取包含在图形存储器742a中的图形数据,以支持刷新耦合到图形控制器720的显示器装置(未显示)上呈现的图像。然而,将存储器装置740b和740c置为低功率状态使得分别在系统存储器741b和741c中分配的图形存储器742b和742c无法访问,导致由图形存储器742b和742c支持的任何图形功能被中断,可能引起正在显示器装置上显示的图形的运动或变化的部分被冻结。
在其它实施例中,图形存储器742b和742c分别在系统存储器741b和741c中的动态分配导致阻止将系统存储器700置为低功率状态,直到这种作为图形存储器的动态分配的存储器块不存在。
图8是使用存储器系统的实施例的简化框图。系统存储器800至少部分地由存储器控制器830、通过存储器总线835ac耦合到存储器控制器830的存储器装置840a和840c、以及通过存储器总线835bd耦合到存储器控制器830的存储器装置840b和840d组成。存储器系统设计领域的技术人员将容易认识到图8仅仅描绘了存储器系统的一个例子,并且备选实施例是可能的,其中在不背离后面所申明的本发明的精神和范围的情况下,部件的确切安排和配置可以被减少、增加或改变。存储器控制器830控制由存储器装置840a-d执行的功能,作为至少向处理器810和图形控制器820提供对于存储器装置840a-d的访问的部分,所述处理器810和图形控制器820都被耦合到存储器控制器830。特别地,处理器810和/或图形控制器820向存储器控制器830发布命令来在一个或多个存储器装置840a-d中存储数据,以及从一个或多个存储器装置840a-d中获取存储的数据。存储器控制器830接收这些命令并将它们以一种具有与存储器总线835ac和835bd相兼容的定时与协议的格式转发给存储器装置840a-d。
系统存储器841b到841d分别占用存储器装置840b到840d的全部,而存储器装置840a被分配用于系统存储器841a以及图形存储器842a。虽然图8中描绘了这种特定的映射,本领域技术人员将容易认识到系统和图形存储器组合的许多其它映射是可能的。要点在于:图形存储器842a被分配为单个连续的存储块并且这个单个连续的存储块被映射的位置占用了尽可能少的存储器装置(以及在存储器装置840a由多个存储体存储单元构成的实施例中,尽可能少的存储器存储体)。图8中还描绘了动态分配的存储器块,即图形存储器842d,其用以支持所需的图形存储空间比图形存储器842a内可用的图形存储空间更多的图形功能。
在各种实施例中,存储器控制器830可以被设计和/或配置来以这样一种方式同时使用存储器总线835ac和835bd:以2∶1的交错形式对数据进行交错存储来提高存取数据的读写操作可以被执行的速度,正如本领域技术人员所熟悉的。这种交错存储可以被认为对于存储器系统841a-d特别有用,允许处理器810更快地访问存储器装置840a-d内的机器可读指令和/或数据。在有些实施例中,正如将被详细讨论的,可以认为为了减少能耗不向图形控制器820提供这种交错存储带来的好处是有利的,并且图形数据可以仅仅被存储在图形存储器842a中,而让系统存储器841b占用存储器装置840b的全部。
在有些实施例中,当存储器系统800被置为低功率状态时,存储器装置840b到840d被置为低功率状态,诸如自刷新模式,而存储器装置840a只有由系统存储器841a占用的部分被置为低功率状态,条件是给定实施例中的存储器装置840a支持存储器装置840a中的一部分存储器单元被置为低功率状态而存储器装置840a中的另一部分存储器单元不被置为低功率状态。在具有由存储器装置840a提供的这种支持所带来的好处的这种实施例中,存储器装置840a的被置为和不被置为低功率状态的部分可以根据存储器装置840a中的存储器单元存储体的数量以及哪些存储体仅仅由系统存储器841a独占进行定义。备选地,在要么存储器装置840a的全部被置为低功率状态,要么全部不置为低功率状态的实施例中,可能只有存储器装置840b到840d被置为低功率状态,而存储器装置840a不被置为低功率状态。无论存储器装置840a的一部分是否被置为低功率状态,将存储器装置840b和840d置为低功率状态也提供了将存储器总线835bd置为低功率状态的机会,进而提供了存储器系统800中能耗的进一步减少。
至少允许存储器装置840a中具有图形存储器842a的那部分继续正常工作,而不是被置为低功率状态,使得能够基于规则的定时读取包含在图形存储器842a中的图形数据,以支持刷新耦合到图形控制器820的显示器装置(未显示)上呈现的图像。然而,将存储器装置840b到840d置为低功率状态使得在系统存储器841d中分配的图形存储器842d无法访问,导致由图形存储器842d支持的任何图形功能被中断,可能引起正在耦合到图形控制器820的显示器装置上显示的图形的运动或变化的部分被冻结。
在其它实施例中,图形存储器842d在系统存储器841d中的动态分配导致阻止将系统存储器800置为低功率状态,直到这种作为图形存储器的动态分配的存储器块不存在。
图9是使用计算机系统的一个实施例的简化框图。计算机系统900至少部分地由处理器910、系统逻辑950以及存储器装置940a-d构成。系统逻辑950被耦合到处理器910并且执行各种功能来支持处理器910,包括使用系统逻辑950内的存储器控制器930向处理器910提供对存储器装置940a-d的访问,系统逻辑950也通过存储器总线935ac和935bd被耦合到存储器装置940a-d。处理器910、系统逻辑950以及存储器装置940a-d构成了计算机系统900的一种内核,所述计算机系统900能够支持处理器910执行机器可读的指令以及支持在存储器装置940a-d中存储数据和指令。耦合到监视器922的图形控制器920也被耦合到系统逻辑950,并且与处理器910相类似,它也依赖于存储器控制器930以及存储器总线935ac和935bd向图形控制器920提供对于存储器装置940a-d的访问以便存储图形数据。
在有些实施例中,系统逻辑950被耦合到处理器910并向处理器910提供对于存储装置960的访问,通过存储装置960可以访问存储介质961携带的数据和/或指令。存储介质961可以是各种类型和技术中任意一种,正如本领域技术人员能够理解的,包括CD或DVDROM,磁盘或光盘,磁光盘,磁带,半导体存储器,纸张或其它材料上的字符或打孔,等等。在有些实施例中,非易失性存储器装置970被耦合到系统逻辑950(或计算机系统900的其它部分)并向当计算机系统900要么被“重启”要么被初始化(例如,当计算机系统900被“接通电源”或“加电”)时执行的初始指令系列提供存储,用来执行准备计算机系统900正常使用所需的任务。在这种实施例的有些变种中,当计算机系统900初始化或重启,处理器910访问非易失性存储器装置970来获取要被执行的指令,来准备存储器控制器930正常地向处理器910和/或图形控制器920提供对于存储器装置940a-d的访问。可以执行这些获取的相同的指令来准备系统逻辑950的正常使用,以提供对于存储装置960以及可以由存储装置960使用的任何形式的存储介质961的访问。
在有些实施例中,存储介质961携带机器可以访问的指令,所述指令可以由处理器910执行来引起处理器910执行对存储器装置940a-d的一个或多个测试,以确定存储器装置940a-d的各种特征,包括每个存储器装置940a-d中存储器存储体的数量和/或配置,以及任何一个存储器装置940a-d是否能被部分地置为低功率状态,其中只有这种存储器装置的一部分被置为低功率状态,而相同存储器装置的不同部分继续正常工作。根据计算机系统900的给定实施例是否仅仅由至少存储器装置940a以及存储器总线935ac构成,或者计算机系统900的给定实施例由至少存储器装置940a和940b以及存储器总线935ac和935bd构成,可以利用至少系统存储器的交错存储。
在利用系统存储器交错存储的实施例中,可以由存储器控制器930访问和控制存储器装置940a和940b的任何部分,来实现系统存储器的交错存储,并且通过执行机器可读的指令引起处理器910配置存储器控制器930来支持交错存储。此外,在这种实施例中,可以跨存储器装置940a和940b来交错存储图形数据,使得每个存储器装置940a和940b的一部分是系统存储器而每个存储器装置940a和940b的另外部分是图形存储器。当计算机系统900进入维持在监视器922上显示的图像的低功率状态时,存储器装置940c和940d(如果在给定的实施例中存在)被置为低功率状态。如果存储器装置940a和940b支持将其部分存储器单元置为低功率状态,则存储器装置940a和940b的一部分也可以被置为低功率状态,并且否则,允许存储器装置940a和940b正常工作。然而,在系统存储器被交错存储而图形存储器未被交错存储的实施例情形中,那么当图形存储器占用了至少一部分存储器装置940a时,计算机系统900进入低功率状态将引起存储器装置940c和940d(如果存在)进入低功率状态,以及存储器装置940b,还可能有存储器总线935bd进入低功率状态。除非存储器装置940a支持只将其部分存储器单元置为低功率状态,存储器装置940a才被置为低功率状态,否则,允许存储器装置940a正常工作。
在未使用系统存储器交错存储的实施例中,例如,当不存在存储器装置940b和940d以及存储器总线935bd时,那么图形数据可以以一种与前面所讨论的一致的方式,被完全存储在存储器装置940a中的单个块中。当计算机系统900进入维持在监视器922上显示的图像的低功率状态时,存储器装置940c(如果在给定实施例中存在)被置为低功率状态。如果存储器装置940a支持只将其部分存储器单元置为低功率状态,存储器装置940a的部分也可被置为低功率状态,否则,允许存储器装置940a正常工作。
图10是分配图形存储器的实施例的一个流程图。在1010,加电或重启了一个电子装置(也许通过按下一个重启按钮“重启”或由软件触发)。在1020分析了可用存储器装置的数量和尺寸等,以及每个存储器装置的存储体数量。在有些实施例中,这可能需要询问和/或测试存储器装置来确定存在多少存储器装置,每个存储器装置中有多少个存储器单元,每个存储器装置中有多少个存储器存储体和/或每个存储器装置是否支持选择性地将部分存储器存储体置于低功率状态,等。为了清楚起见,应当注意一个存储器装置可能由组装在一起的多个存储器IC构成,并以这样一种方式并行工作:所有这些并行的IC接收相同的地址和命令,但被耦合到整个数据总线宽度的不同子集——本质上,一组并排装配的几乎相同的存储器IC一起动作,如同这个集合是单个较宽的存储器IC。在1030,确定了准备电子装置的正常工作所需要分配的图形存储器的数量。在有些实施例中,这需要该电子装置的用户通过某种形式的安装软件直接地指定图形存储器的数量,而在其它实施例中,可以从用户提供的关于当可用的存储器的至少一部分被置为低功率状态时哪些图形功能不能被中断的偏好推导出该数量。在1040,确定是否有能够包含所有图形存储器的单个存储器装置,因为将图形存储器完全包含在多个存储器装置中的一个存储器装置,允许当该电子装置被置为低功率状态时除了包含图形存储器的那个存储器装置以外的所有存储器装置被置为低功率状态。备选地,在1040所问的问题可以是是否有单个存储器装置作为包含全部图形存储器的理想选择。如果没有足够大(或期望足够大)的存储器装置来包含图形存储器,那么在1042,在可用的存储器装置中分配可用的空间,使得利用尽可能少的存储器装置来包含图形存储器,在用于所述电子装置正常工作的软件(诸如操作系统软件)在1062开始执行之前。然而,如果有单个足够大(或期望足够大)的存储器装置来包含所有图形存储器,那么在1050,确定是否那些大存储器装置的其中之一支持只将存储器装置的一部分(诸如该存储器装置内存储体的一个子集)置为低功率状态。如果所述存储器装置提供这种支持,那么在1052选择可能的最小部分(诸如最小存储体数量)用于包含图形存储器,在用于正常工作的软件在1062开始执行之前。然而,如果存储器装置不提供这种支持,那么在1060,能够包含全部图形存储器的那些存储器装置中最小的一个就被选择来包含图形存储器,在用于正常工作的软件在1062开始执行之前。
无论是否有能够包含全部图形存储器的单个存储器装置,选择哪些存储器装置用来包含图形存储器需要一种更简单的备选算法,其中图形存储器被定位在一个连续地址空间的高端或低端,存储器装置被映射进所述连续地址空间。如果已知全部存储器装置(如果有多个存储器装置)和/或每个装置中全部存储器存储体基本上都是相同尺寸和/或配置,使得将图形存储器的部分或全部定位在任何一个存储器装置和/或存储体中比定位在其它任何存储器装置和/或存储体中没有明显的优势,那么这种备选的更简单的算法可以被认为是期望的。
图11a和11b一起是实施例的流程图,其中可以动态地分配额外的图形存储器块和/或可以选择性地将存储器装置置为低功率状态。从图11a开始,在1110确定是否需要动态分配额外的图形存储器块,并且如果需要,在1112动态地分配额外的图形存储器块。无论是否需要动态地分配额外的图形存储器块,在1120确定了是否需要释放先前动态分配的额外图形存储器块,并且如果需要,在1122释放该动态分配的额外图形存储器块。无论是否需要释放动态分配的额外图形存储器块,在1130确定是否满足触发进入低功率状态的条件,并且如果不满足,再次在1110确定是否需要动态地分配一块额外的图形存储器。
然而,现在参考图11b,如果在1130满足触发进入低功率状态的条件,那么在1140确定是否支持存在的一个或多个动态分配的额外图形存储器块进入低功率状态(使得一个或多个存储器装置可以被置为低功率状态)。如果不,那么在1142确定是否存在这种动态分配的额外图形存储器块,并且如果存在,那么再次在1110确定是否需要分配另一块这种图形存储器。然而,如果支持这种额外的图形存储器块进入低功率状态,或者如果不支持这种额外的图形存储器块进入低功率状态,但是当前都没有分配,那么在1150,所有不包含未被动态分配的图形存储器(即“主”图形存储器)的存储器装置(如果有的话)被置为低功率状态。在1160,确定包含至少一部分主图形存储器的存储器装置是否支持被部分地置为低功率状态,例如那些存储器装置是否支持将其部分存储器存储体置为低功率状态。如果那些存储器装置提供这种支持,那么在1162,那些存储器装置中不包含主图形存储器的部分被置为低功率状态,例如那些不包含至少一部分主图形存储器的存储器存储体被置为低功率状态,而让包含至少一部分主图形存储器的存储体不置为低功率状态,使得它们仍然可以访问以获取(以及显示)图形数据。无论是否支持仅仅将这种存储器装置的一部分置为低功率状态,在1170,确定是否满足触发退出低功率状态的条件,并且如果不满足,那么在1170重新测试该条件。然而,如果满足触发退出低功率状态的条件,那么在1180,被置为低功率状态的存储器装置(以及存储器装置的部分)被退出低功率状态,并且再次在1110确定是否需要动态地分配一块额外的图形存储器。
已经结合各种可能的实施例描述了本发明。很明显对于本领域技术人员,根据前面的描述,许多备选方案、修改、变种及使用将变得很显然。本领域技术人员将能够理解本发明可以被实践来支持各种类型的具有各种可能的存储器装置的电子系统,其中为了防止数据丢失,存储器单元重复地需要某种类型的“刷新”或其它规则的维护活动。此外,本领域技术人员应当理解虽然描绘了多个存储器装置的实施例已经描绘了“底板类型”存储器总线的使用,其中借助多条公共信号线将多个存储器装置和一个存储器控制器耦合在一起,其它使用一系列点到点存储器总线的实施例也是可能的。本领域技术人员还应该理解可以实践本发明来支持除了计算机系统以外的电子系统,诸如音频/视频娱乐装置,车辆内的控制装置,电子电路控制的家电,等。
Claims (26)
1.一种使用存储器系统的方法,包括:
访问存储器系统内的地址位置,以在连续块中存储图形数据;
请求在所述存储器系统内的所述连续块中的所述地址位置内存储所述图形数据;以及
请求所述存储器系统内未被所述图形数据的任何部分占用的第一部分的存储器单元进入低功率状态,在低功率状态中所述第一部分中的所述存储器单元变得不能访问,而避免请求所述存储器系统内存储所述图形数据的第二部分的存储器单元进入低功率状态,使得所述第二部分中的所述存储器单元保持能够访问以接收或提供图形数据,其中使用一对起始和结束地址来分配所述图形数据。
2.根据权利要求1的方法,其中,所述第一部分的存储器单元和所述第二部分的存储器单元在一个或多个存储器装置内。
3.根据权利要求1的方法,其中,所述第一部分的存储器单元和所述第二部分的存储器单元的每一个都包括存储器单元的存储体,在所述存储体中所述存储器单元被组织成行和列的二维阵列,并且每个存储体在一个存储器装置内。
4.根据权利要求1的方法,其中,所述第一部分的存储器单元存储非图形数据。
5.根据权利要求1的方法,其中,请求存储所述图形数据包括使用DDR存储器接口。
6.一种存储器系统控制器,包括:
用于指定存储器系统内的地址位置以在连续块中存储图形数据的装置;
用于请求在所述存储器系统内的所述连续块中的所述地址位置内存储所述图形数据的装置;以及
用于执行以下操作的装置:请求所述存储器系统内未被所述图形数据的任何部分占用的第一部分的存储器单元进入低功率状态,在低功率状态中所述第一部分中的所述存储器单元变得不能访问,而避免请求所述存储器系统内存储所述图形数据的第二部分的存储器单元进入低功率状态,使得所述第二部分中的所述存储器单元保持能够访问以接收或提供图形数据,其中使用一对起始和结束地址来分配所述图形数据。
7.根据权利要求6的控制器,其中,所述第一部分的存储器单元和所述第二部分的存储器单元在一个或多个存储器装置内。
8.根据权利要求6的控制器,其中,所述第一部分的存储器单元和所述第二部分的存储器单元的每一个都包括存储器单元的存储体,并且每个存储体在一个存储器装置内。
9.根据权利要求6的控制器,其中,所述第一部分的存储器单元存储非图形数据。
10.根据权利要求6的控制器,其中,到所述存储器系统中的存储使用DDR存储器接口。
11.一种存储器系统(300),包括:
存储器控制器(330);以及
多个存储器装置(340),
其中,所述存储器控制器配置成:
访问所述存储器系统内的地址位置,以在连续块中存储图形数据;
请求在所述存储器系统内的所述连续块中的所述地址位置内存储所述图形数据;以及
请求所述存储器系统内未被所述图形数据的任何部分占用的第一部分的存储器单元进入低功率状态,在低功率状态中所述第一部分中的所述存储器单元变得不能访问,而避免请求所述存储器系统内存储所述图形数据的第二部分的存储器单元进入低功率状态,使得所述第二部分中的所述存储器单元保持能够访问以接收或提供图形数据,其中使用一对起始和结束地址来分配所述图形数据。
12.根据权利要求11的存储器系统,其中,所述第一部分的存储器单元和所述第二部分的存储器单元在所述多个存储器装置中的一个或多个存储器装置内。
13.根据权利要求11的存储器系统,其中,所述第一部分的存储器单元和所述第二部分的存储器单元的每一个都包括存储器单元的存储体,并且每个存储体在所述多个存储器装置其中之一内。
14.根据权利要求11的存储器系统,其中,所述第一部分的存储器单元存储非图形数据。
15.根据权利要求11的存储器系统,其中,到所述存储器系统中的存储使用DDR存储器接口。
16.一种计算机系统(100),包括:
处理器(110);
图形控制器(120);
存储器控制器(130);以及
多个存储器装置(140),
其中,所述存储器控制器访问所述存储器装置内的地址位置并请求在所述存储器装置内的连续块中的所述地址位置内存储图形数据;
其中,所述存储器控制器还请求所述存储器装置内未被所述图形数据的任何部分占用的第一部分的存储器单元进入低功率状态,在所述低功率状态中所述第一部分中的所述存储器单元变得不能由所述处理器访问,而避免请求所述存储器装置内存储所述图形数据的第二部分的存储器单元进入低功率状态,使得所述第二部分中的所述存储器单元保持能够访问以从所述图形控制器接收图形数据或向所述图形控制器提供图形数据,其中使用一对起始和结束地址来分配所述图形数据。
17.根据权利要求16的计算机系统,其中,所述第一部分的存储器单元和所述第二部分的存储器单元在所述多个存储器装置中的一个或多个存储器装置内。
18.根据权利要求16的计算机系统,其中,所述第一部分的存储器单元和所述第二部分的存储器单元的每一个都包括存储器单元的存储体,并且每个存储体在所述多个存储器装置其中之一内。
19.根据权利要求16的计算机系统,其中,所述第一部分的存储器单元存储非图形数据。
20.根据权利要求16的计算机系统,其中,到所述存储器装置中的存储使用DDR存储器接口。
21.一种使用存储器系统的设备,包括:
用于访问存储器系统内的地址位置以在连续块中存储图形数据的部件;
用于请求在所述存储器系统内的所述连续块中的所述地址位置内存储所述图形数据的部件;以及
用于请求所述存储器系统内未被所述图形数据的任何部分占用的第一部分的存储器单元进入低功率状态的部件,在低功率状态中所述第一部分中的所述存储器单元变得不能访问,而避免请求所述存储器系统内存储所述图形数据的第二部分的存储器单元进入低功率状态,使得所述第二部分中的所述存储器单元保持能够访问以接收或提供图形数据,其中使用一对起始和结束地址来分配所述图形数据。
22.根据权利要求21的设备,其中,所述第一部分的存储器单元和所述第二部分的存储器单元在一个或多个存储器装置内。
23.根据权利要求21的设备,其中,所述第一部分的存储器单元和所述第二部分的存储器单元的每一个都包括存储器单元的存储体,并且每个存储体在一个存储器装置内。
24.根据权利要求21的设备,其中,所述第一部分的存储器单元存储非图形数据。
25.根据权利要求21的设备,其中,请求存储所述图形数据包括使用DDR存储器接口。
26.一种计算机可读介质,其上存储有指令,所述指令在执行时使得计算机执行权利要求1-5中任一项所述的方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/745824 | 2003-12-24 | ||
US10/745,824 US7081897B2 (en) | 2003-12-24 | 2003-12-24 | Unified memory organization for power savings |
CN2004800388505A CN1926519B (zh) | 2003-12-24 | 2004-12-22 | 用于节能的统一存储器组织 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004800388505A Division CN1926519B (zh) | 2003-12-24 | 2004-12-22 | 用于节能的统一存储器组织 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105760309A CN105760309A (zh) | 2016-07-13 |
CN105760309B true CN105760309B (zh) | 2019-09-17 |
Family
ID=34700588
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004800388505A Expired - Fee Related CN1926519B (zh) | 2003-12-24 | 2004-12-22 | 用于节能的统一存储器组织 |
CN201510809750.8A Active CN105760309B (zh) | 2003-12-24 | 2004-12-22 | 用于节能的统一存储器组织 |
CN201110134209.3A Active CN102207906B (zh) | 2003-12-24 | 2004-12-22 | 用于节能的统一存储器组织 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004800388505A Expired - Fee Related CN1926519B (zh) | 2003-12-24 | 2004-12-22 | 用于节能的统一存储器组织 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110134209.3A Active CN102207906B (zh) | 2003-12-24 | 2004-12-22 | 用于节能的统一存储器组织 |
Country Status (7)
Country | Link |
---|---|
US (1) | US7081897B2 (zh) |
EP (1) | EP1697848A2 (zh) |
JP (1) | JP4598002B2 (zh) |
KR (1) | KR100860650B1 (zh) |
CN (3) | CN1926519B (zh) |
TW (1) | TWI281610B (zh) |
WO (1) | WO2005064478A2 (zh) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7366819B2 (en) * | 2004-02-11 | 2008-04-29 | Infineon Technologies Ag | Fast unaligned cache access system and method |
US7788461B2 (en) * | 2004-04-15 | 2010-08-31 | International Business Machines Corporation | System and method for reclaiming allocated memory to reduce power in a data processing system |
JP4683384B2 (ja) * | 2004-09-22 | 2011-05-18 | 株式会社ソニー・コンピュータエンタテインメント | メモリ制御方法、グラフィックプロセッサおよび情報処理装置 |
US9384818B2 (en) * | 2005-04-21 | 2016-07-05 | Violin Memory | Memory power management |
US7565479B2 (en) * | 2005-08-04 | 2009-07-21 | Rambus Inc. | Memory with refresh cycle donation to accommodate low-retention-storage rows |
US7750912B2 (en) * | 2005-11-23 | 2010-07-06 | Advanced Micro Devices, Inc. | Integrating display controller into low power processor |
WO2007075134A2 (en) * | 2005-12-27 | 2007-07-05 | Imsys Technologies Ab | Method and system for cost-efficient, high-resolution graphics/image display system |
US20070156947A1 (en) * | 2005-12-29 | 2007-07-05 | Intel Corporation | Address translation scheme based on bank address bits for a multi-processor, single channel memory system |
US7793059B2 (en) | 2006-01-18 | 2010-09-07 | Apple Inc. | Interleaving policies for flash memory |
US20080055322A1 (en) * | 2006-08-31 | 2008-03-06 | Ryan Thomas E | Method and apparatus for optimizing data flow in a graphics co-processor |
US20080100636A1 (en) * | 2006-10-31 | 2008-05-01 | Jiin Lai | Systems and Methods for Low-Power Computer Operation |
US20080133848A1 (en) * | 2006-12-01 | 2008-06-05 | Patel Mukesh K | Embedded Memory And Multi-Media Accelerator And Method Of Operating Same |
US8102401B2 (en) * | 2007-04-25 | 2012-01-24 | Atmel Corporation | Display controller operating mode using multiple data buffers |
US8392669B1 (en) | 2008-03-24 | 2013-03-05 | Nvidia Corporation | Systems and methods for coalescing memory accesses of parallel threads |
US8086806B2 (en) * | 2008-03-24 | 2011-12-27 | Nvidia Corporation | Systems and methods for coalescing memory accesses of parallel threads |
US9865233B2 (en) * | 2008-12-30 | 2018-01-09 | Intel Corporation | Hybrid graphics display power management |
US8529346B1 (en) * | 2008-12-30 | 2013-09-10 | Lucasfilm Entertainment Company Ltd. | Allocating and managing software assets |
US8692836B2 (en) * | 2009-10-08 | 2014-04-08 | Ocz Technology Group, Inc. | Computer system and processing method utilizing graphics processing unit with ECC and non-ECC memory switching capability |
US8799553B2 (en) * | 2010-04-13 | 2014-08-05 | Apple Inc. | Memory controller mapping on-the-fly |
JP2012059152A (ja) | 2010-09-10 | 2012-03-22 | Internatl Business Mach Corp <Ibm> | データ処理を行うシステムおよびメモリを割り当てる方法 |
US20120079313A1 (en) * | 2010-09-24 | 2012-03-29 | Honeywell International Inc. | Distributed memory array supporting random access and file storage operations |
KR20130039628A (ko) * | 2011-10-12 | 2013-04-22 | 삼성전자주식회사 | 디스플레이 장치 및 디스플레이 장치의 제어 방법 |
WO2013081597A1 (en) * | 2011-11-30 | 2013-06-06 | Intel Corporation | Power saving method and apparatus for first in first out (fifo) memories |
US9311228B2 (en) | 2012-04-04 | 2016-04-12 | International Business Machines Corporation | Power reduction in server memory system |
US20130321467A1 (en) * | 2012-06-01 | 2013-12-05 | Microsoft Corporation | Using snapshots to represent slow applications |
JP2014016782A (ja) * | 2012-07-09 | 2014-01-30 | Toshiba Corp | 情報処理装置およびプログラム |
US9086882B2 (en) * | 2012-08-07 | 2015-07-21 | International Business Machines Corporation | DRAM energy use optimization using application information |
US9274839B2 (en) * | 2012-09-27 | 2016-03-01 | Intel Corporation | Techniques for dynamic physical memory partitioning |
US20140351546A1 (en) * | 2013-05-24 | 2014-11-27 | Ati Technologies Ulc | Method and apparatus for mapping a physical memory having a plurality of memory regions |
US9612648B2 (en) * | 2013-08-08 | 2017-04-04 | Qualcomm Incorporated | System and method for memory channel interleaving with selective power or performance optimization |
JP6231899B2 (ja) | 2014-02-06 | 2017-11-15 | ルネサスエレクトロニクス株式会社 | 半導体装置、プロセッサシステム、及びその制御方法 |
GB2526598B (en) * | 2014-05-29 | 2018-11-28 | Imagination Tech Ltd | Allocation of primitives to primitive blocks |
US9612651B2 (en) * | 2014-10-27 | 2017-04-04 | Futurewei Technologies, Inc. | Access based resources driven low power control and management for multi-core system on a chip |
CN107068110A (zh) * | 2017-04-24 | 2017-08-18 | 惠科股份有限公司 | 一种显示装置及其控制电路、方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5579493A (en) * | 1993-12-13 | 1996-11-26 | Hitachi, Ltd. | System with loop buffer and repeat control circuit having stack for storing control information |
CN1155341A (zh) * | 1994-06-03 | 1997-07-23 | 英特尔公司 | 基于快速存储器的主存储器 |
US6321321B1 (en) * | 1999-06-21 | 2001-11-20 | Vlsi Technology, Inc. | Set-associative cache-management method with parallel and single-set sequential reads |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR960706657A (ko) * | 1993-11-30 | 1996-12-09 | 토마스 씨. 토코스 | 공유 메모리 시스템에서의 병행 동작을 가능하게 하고 최대화하는 방법 및 장치(method and apparatus for providing and maximizing concurrent operations in a shared memory system) |
US5560022A (en) * | 1994-07-19 | 1996-09-24 | Intel Corporation | Power management coordinator system and interface |
US5928365A (en) | 1995-11-30 | 1999-07-27 | Kabushiki Kaisha Toshiba | Computer system using software controlled power management method with respect to the main memory according to a program's main memory utilization states |
US5740454A (en) * | 1995-12-20 | 1998-04-14 | Compaq Computer Corporation | Circuit for setting computer system bus signals to predetermined states in low power mode |
US5793385A (en) * | 1996-06-12 | 1998-08-11 | Chips And Technologies, Inc. | Address translator for a shared memory computing system |
JPH11161778A (ja) * | 1997-11-26 | 1999-06-18 | Ricoh Co Ltd | デジタル画像処理システム |
US5835435A (en) * | 1997-12-02 | 1998-11-10 | Intel Corporation | Method and apparatus for dynamically placing portions of a memory in a reduced power consumtion state |
US6192446B1 (en) * | 1998-09-03 | 2001-02-20 | Micron Technology, Inc. | Memory device with command buffer |
US6469703B1 (en) | 1999-07-02 | 2002-10-22 | Ati International Srl | System of accessing data in a graphics system and method thereof |
JP2001101067A (ja) * | 1999-10-04 | 2001-04-13 | Nec Corp | セルフ・リフレッシュ制御装置及びプログラムを記憶した記憶媒体 |
US6600493B1 (en) * | 1999-12-29 | 2003-07-29 | Intel Corporation | Allocating memory based on memory device organization |
US6864896B2 (en) * | 2001-05-15 | 2005-03-08 | Rambus Inc. | Scalable unified memory architecture |
JP2003018428A (ja) * | 2001-07-03 | 2003-01-17 | Matsushita Electric Ind Co Ltd | 画像処理装置、画像処理方法及びこの方法を実施するためのプログラムを記憶した記録媒体 |
US6742097B2 (en) | 2001-07-30 | 2004-05-25 | Rambus Inc. | Consolidation of allocated memory to reduce power consumption |
JP2003122335A (ja) * | 2001-10-17 | 2003-04-25 | Casio Comput Co Ltd | 表示制御装置 |
EP1408510A3 (en) * | 2002-05-17 | 2005-05-18 | Matsushita Electric Industrial Co., Ltd. | Memory control apparatus, method and program |
US7336283B2 (en) * | 2002-10-24 | 2008-02-26 | Hewlett-Packard Development Company, L.P. | Efficient hardware A-buffer using three-dimensional allocation of fragment memory |
US7007183B2 (en) * | 2002-12-09 | 2006-02-28 | International Business Machines Corporation | Power conservation by turning off power supply to unallocated resources in partitioned data processing systems |
-
2003
- 2003-12-24 US US10/745,824 patent/US7081897B2/en not_active Expired - Lifetime
-
2004
- 2004-12-22 CN CN2004800388505A patent/CN1926519B/zh not_active Expired - Fee Related
- 2004-12-22 CN CN201510809750.8A patent/CN105760309B/zh active Active
- 2004-12-22 WO PCT/US2004/043668 patent/WO2005064478A2/en not_active Application Discontinuation
- 2004-12-22 KR KR1020067012805A patent/KR100860650B1/ko active IP Right Grant
- 2004-12-22 JP JP2006547481A patent/JP4598002B2/ja active Active
- 2004-12-22 CN CN201110134209.3A patent/CN102207906B/zh active Active
- 2004-12-22 EP EP04815683A patent/EP1697848A2/en not_active Withdrawn
- 2004-12-23 TW TW093140272A patent/TWI281610B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5579493A (en) * | 1993-12-13 | 1996-11-26 | Hitachi, Ltd. | System with loop buffer and repeat control circuit having stack for storing control information |
CN1155341A (zh) * | 1994-06-03 | 1997-07-23 | 英特尔公司 | 基于快速存储器的主存储器 |
US6321321B1 (en) * | 1999-06-21 | 2001-11-20 | Vlsi Technology, Inc. | Set-associative cache-management method with parallel and single-set sequential reads |
Also Published As
Publication number | Publication date |
---|---|
US7081897B2 (en) | 2006-07-25 |
CN1926519A (zh) | 2007-03-07 |
US20050140685A1 (en) | 2005-06-30 |
CN102207906B (zh) | 2017-05-24 |
JP4598002B2 (ja) | 2010-12-15 |
KR20060108731A (ko) | 2006-10-18 |
CN105760309A (zh) | 2016-07-13 |
TW200528986A (en) | 2005-09-01 |
KR100860650B1 (ko) | 2008-09-26 |
CN102207906A (zh) | 2011-10-05 |
JP2007515733A (ja) | 2007-06-14 |
WO2005064478A2 (en) | 2005-07-14 |
CN1926519B (zh) | 2011-07-06 |
EP1697848A2 (en) | 2006-09-06 |
TWI281610B (en) | 2007-05-21 |
WO2005064478A3 (en) | 2005-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105760309B (zh) | 用于节能的统一存储器组织 | |
US9899074B2 (en) | Fine granularity refresh | |
CN103988183B (zh) | 2级存储器分级结构中的存储器侧高速缓存的动态部分断电 | |
US7821864B2 (en) | Power management of memory via wake/sleep cycles | |
US9881657B2 (en) | Computer system and method of memory management | |
US7590021B2 (en) | System and method to reduce dynamic RAM power consumption via the use of valid data indicators | |
US7603512B2 (en) | Dynamic memory refresh controller, memory system including the same and method of controlling refresh of dynamic memory | |
CN103810126B (zh) | 混合dram存储器及降低该dram存储器刷新时功耗的方法 | |
JP7357169B2 (ja) | Dramのリフレッシュ管理 | |
EP3529703A1 (en) | Software mode register access for platform margining and debug | |
JP6000708B2 (ja) | メモリ制御装置および方法 | |
CN108351850A (zh) | 对存储器设备中的非易失性存储器和易失性存储器进行同时存取的技术 | |
JP2000021162A (ja) | 揮発性メモリおよびエンベッデッド・ダイナミック・ランダム・アクセス・メモリ | |
KR20170055206A (ko) | 세이프 어드레스 매핑을 이용한 메모리 셀 액세스 제어 방법 | |
JP7506272B2 (ja) | メモリコントローラ電力状態 | |
CN109992528A (zh) | 从较快存储器级操作较高优先级用户的多级系统存储器配置 | |
JP2001142722A (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |