CN105706168B - 用于经由数据掩蔽来降低存储器i/o功率的系统、方法和计算机可读介质 - Google Patents
用于经由数据掩蔽来降低存储器i/o功率的系统、方法和计算机可读介质 Download PDFInfo
- Publication number
- CN105706168B CN105706168B CN201480061437.4A CN201480061437A CN105706168B CN 105706168 B CN105706168 B CN 105706168B CN 201480061437 A CN201480061437 A CN 201480061437A CN 105706168 B CN105706168 B CN 105706168B
- Authority
- CN
- China
- Prior art keywords
- data masking
- memory
- data
- pins
- power
- 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.)
- Expired - Fee Related
Links
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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
- G11C7/1009—Data masking during input/output
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/1057—Data output buffers, e.g. comprising level conversion circuits, circuits for adapting load
-
- 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
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3253—Power saving in bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
- G06F7/764—Masking
-
- 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/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
- G11C11/4096—Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
- G11C7/1084—Data input buffers, e.g. comprising level conversion circuits, circuits for adapting load
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dram (AREA)
- Power Sources (AREA)
Abstract
公开了用于降低存储器I/O功率的系统和方法。一个实施例是一种系统,包括片上系统(SoC)、DRAM存储器设备以及数据掩蔽功率降低模块。所述SoC包括存储器控制器。所述DRAM存储器设备经由多个DQ管脚耦合到所述存储器控制器。所述数据掩蔽功率降低模块包括被配置为在数据掩蔽操作期间将所述DQ管脚驱动到功率节省状态的逻辑单元。
Description
背景技术
动态随机存取存储器(DRAM)被用在各种计算设备(例如,个人计算机、膝上型计算机、笔记本计算机、视频游戏控制台、便携式计算设备、移动电话等)中。DRAM是一种类型的易失性存储器,其将数据的每个比特存储在集成电路内的单独的电容器中。电容器可以被充电或放电。采用这两个状态来表示比特的两个值,常规上被称为0和1。因为电容器漏电,所以信息最终渐弱,除非电容器电荷被周期性地得到补充。因为这个更新要求,所以与SRAM和其它静态存储器相反,DRAM被称为动态存储器。
DRAM的优势是其结构的简易(每比特仅需要一个晶体管和一个电容器),这允许DRAM达到非常高的密度。然而,随着DRAM密度和速度要求持续增长,存储器功耗正成为重要的问题。
DRAM内的功率通常被分类为内核存储器阵列功率和非内核功率。内核存储器阵列功率指代用于保持比特单元/阵列中的所有数据并且管理泄露和刷新操作的功率。非内核功率指代用于将所有数据传入和传出存储器设备、感测放大器并且管理外围逻辑单元、复用器、内部总线、缓冲器、输入/输出(I/O)驱动器和接收机的功率。降低非内核功率是重要的问题。
用于降低非内核功率的现有的解决办法典型地涉及减小操作电压、减小负载电容或每当不要求性能时暂时地降低操作频率。然而,这些解决办法未能解决要求很高的带宽密集型使用情况。其它解决办法尝试减小与存储器系统相关联的数据活动因子。数据活动因子k指代在固定时段内存储器访问系统中的0到1的切换或转变的数量。例如,在下面的单个导线上的8节拍序列0、1、0、1、0、1、0、1中,k=0.5。已经针对特定类型的数据(诸如使用图像压缩的显示帧缓冲器)提出了对减小数据活动因子的尝试。这典型地在源(即,显示硬件引擎)处执行。然而,这样的解决办法是非常专用的并且受限于这种类型的显示数据,这种类型的显示数据典型地占总DRAM使用的相对小的百分比。
因此,在本领域中仍然存在对用于节省DRAM存储器系统中的存储器I/O功率的改进的系统和方法的需求。
发明内容
公开了用于降低存储器I/O功率的系统和方法。一个实施例是一种系统,其包括片上系统(SoC)、DRAM存储器设备以及数据掩蔽功率降低模块。所述SoC包括存储器控制器。所述DRAM存储器设备经由多个DQ管脚耦合到所述存储器控制器。所述数据掩蔽功率降低模块包括被配置为在数据掩蔽操作期间将所述DQ管脚驱动到功率节省状态的逻辑单元。
另一个实施例是一种用于降低存储器I/O功率的方法。一种这样的方法包括:确定经由多个DQ管脚耦合到存储器控制器的DRAM存储器设备的类型;基于所述DRAM存储器设备的所述类型来选择多个DQ管脚状态中的一个DQ管脚状态,以用于在数据掩蔽操作期间降低与所述DRAM存储器设备相关联的存储器I/O功率;启用所述数据掩蔽操作;以及在所述数据掩蔽操作期间,将所述DQ管脚驱动到所选择的DQ管脚状态。
附图说明
在附图中,除非另外指示,否则遍及各个视图,相似的附图标记指代相似的部分。对于具有诸如“102A”或“102B”的字母字符标记的附图标记,字母字符标记可以区分出现在同一附图中的两个相似的部分或元素。当旨在使附图标记涵盖在所有附图中具有相同附图标记的所有部分时,可以省略附图标记的字母字符标记。
图1是用于经由数据掩蔽来降低存储器I/O功率的系统的实施例的框图。
图2是示出了默认的数据掩蔽操作的实施例的时序图。
图3是示出了用于在数据掩蔽期间降低存储器I/O功率的保持上一状态的实施例的时序图。
图4是示出了用于在数据掩蔽期间降低存储器I/O功率的保持低状态的实施例的时序图。
图5是示出了用于在数据掩蔽期间降低存储器I/O功率的保持高状态的实施例的时序图。
图6是示出了用于在数据掩蔽期间降低存储器I/O功率的三态状态的实施例的时序图。
图7a-7e示出了用于在数据掩蔽期间驱动DQ管脚的DQ管脚端接方案的各种实施例。
图8是示出了在图1的系统中实现的用于经由数据掩蔽来降低存储器I/O功率的方法的实施例的流程图。
图9是示出了在DDR事务期间实现的数据掩蔽功率降低方法的实施例的时序图。
图10是示出了应用于存储器读取操作的数据掩蔽功率降低方法的实施例的框图。
图11是示出了应用于存储器写入操作的数据掩蔽功率降低方法的实施例的框图。
图12是包括图1的系统的便携式计算机设备的实施例的框图。
具体实施方式
本文使用的词语“示例性”意味着“作为示例、实例或说明”。本文中描述为“示例性”的任何方面不必被解释为优选于其它方面或比其它方面有优势。
在本描述中,术语“应用”还可以包括具有可执行内容(诸如:对象代码、脚本、字节代码、标记语言文件以及补丁)的文件。另外,本文中所引用的“应用”还可以包括本质上不可执行的文件(诸如可能需要被打开的文档或需要被访问的其它数据文件)。
术语“内容”还可以包括具有可执行内容(诸如:对象代码、脚本、字节代码、标记语言文件以及补丁)的文件。另外,本文中所引用的“内容”还可以包括本质上不可执行的文件(诸如可能需要被打开的文档或需要被访问的其它数据文件)。
如在本描述中使用的,术语“组件”、“数据库”、“模块”、“系统”等等旨在指代与计算机相关的实体,要么是硬件、固件、硬件和软件的组合、软件,要么是执行中的软件。例如,组件可以是,但不限于是:在处理器上运行的过程、处理器、对象、可执行文件、执行的线程、程序和/或计算机。通过说明的方式,在计算设备上运行的应用和计算设备二者可以是组件。一个或多个组件可以存在于过程和/或执行的线程中,以及组件可以位于一个计算机中和/或分布在两个或更多个计算机之间。另外,这些组件可以从具有存储在其上的各种数据结构的各种计算机可读介质中执行。组件可以诸如根据具有一个或多个数据分组(例如,来自与本地系统、分布式系统中的另一个组件进行交互,和/或跨诸如互联网的网络通过信号的方式与其它系统进行交互的一个组件的数据)的信号,通过本地和/或远程过程的方式进行通信。
在本描述中,术语“通信设备”、“无线设备”、“无线电话”、“无线通信设备”和“无线手持机”被可互换地使用。随着第三代(“3G”)无线技术和第四代(“4G”)的出现,更大的带宽可用性已经实现了具有更多种类的无线能力的更加便携的计算设备。因此,便携式计算设备可以包括蜂窝电话、寻呼机、PDA、智能电话、导航设备或具有无线连接或链路的手持计算机。
图1示出了用于使用数据掩蔽特征来降低存储器I/O功率的系统100。系统100可以实现在任何计算设备中,包括个人计算机、工作站、服务器、便携式计算设备(PCD)(诸如蜂窝电话、便携式数字助理(PDA)、便携式游戏控制台、掌上型计算机或平板计算机)。如图1的实施例所示,系统100包括片上系统(SoC)102,SoC 102耦合到包括DRAM 104的存储器系统。SoC 102包括各种片上组件,各种片上组件包括向DRAM 104请求存储器资源的一个或多个存储器客户端106。存储器客户端106可以包括一个或多个处理单元(例如,中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器(DSP)、显示处理器等)、视频编码器、或请求到DRAM 104的读取/写入访问的其它客户端。存储器客户端106经由SoC总线110连接到存储器控制器108。存储器控制器108控制经由(一个或多个)SoC物理层设备114去往和来自DRAM104的数据的流动。
如图1所示,存储器控制器108和DRAM 104经由数据总线来进行存储器数据的通信,数据总线包括存储器控制器108和SoC物理层设备114之间的接口116以及SoC物理层设备114和DRAM 104之间的接口120。存储器控制器108被配置为经由(一个或多个)数据掩蔽(DM)信号来选择性地控制数据掩蔽。可以将DM信号经由连接118提供给SoC物理层设备并且经由连接122提供给DRAM 104。如本领域已知的,数据掩蔽是存储器设备(诸如DRAM 104)的内置特征,用于防止数据被重写。如下文更加详细地描述的,系统100增强数据掩蔽特征以降低用于与DRAM 104相关联的读取和/或写入操作的存储器I/O功率。
在数据掩蔽操作的实施例中,对于经由数据(DQ)管脚发送的每字节的存储器数据,可以存在一个DM信号。例如,一个DM管脚可以控制8比特数据(即,8个DQ管脚)的掩蔽。DQ管脚经由接口116和120在双向数据总线中发送和接收数据信号。应当认识到的是,数据总线管脚被标记为和被称为DQ或DQ管脚。典型地,当写入到DRAM 104的数据量少于最小访问长度(MAL)时使用DM。DRAM存储器事务由跨越数据总线的多个节拍组成。节拍数量(“突发长度”)是固定的并且取决于DRAM类型(例如,对于DDR为2个,对于DDR2为4个,对于DDR3为8个等)。节拍数量与数据总线宽度的组合定义MAL。例如,32比特宽的LPDDR2具有16字节的MAL(4节拍x 32比特=128比特=16字节)。
如图1进一步示出的,存储器控制器108包括(一个或多个)数据掩蔽功率降低模块112,其被配置为选择性地使用数据掩蔽特征来降低存储器I/O功率。数据掩蔽功率降低模块112可以减小到DRAM 104的数据输入的数据活动因子k。DRAM内的功率可以被分类为内核存储器阵列功率和非内核功率。如本领域已知的,内核存储器阵列功率指代用于保持内核存储器阵列中的所有数据并且管理泄露和更新操作的功率。非内核功率指代用于将所有数据传入和传出存储器设备、感测放大器并且管理外围逻辑单元、复用器、内部总线、缓冲器、输入/输出(I/O)驱动器和接收机的功率。数据掩蔽功率降低模块112降低I/O存储器功率(P),I/O存储器功率可以被表示为动态功率(D)与静态功率(S)的和。
DRAM 104中的动态或非内核功率可以由公式1来表示:
动态功率=kCV2f*密度,其中:
k=数据活动因子
C=负载电容
V=电压
f=频率或切换速率
密度=以千兆字节为单位的总容量(GB)
公式1
数据活动因子k可以被定义为在固定时段内的0到1的切换或转变的数量。例如,在1比特8节拍序列01010101中,k=0.5。到DRAM存储器系统104的最小访问被称为一个DRAM最小访问长度(MAL)事务。对于32比特并行LPDDR3DRAM总线,MAL=32比特*8节拍=256比特=32字节(8节拍、32比特宽度)。MAL事务可以连续地、紧接地发生。
因为密度和频率需求在增长,所以降低非内核功率要求:减小负载电容,降低电压,逐节拍地最小化针对每个比特的k,或逐MAL地最小化针对每个比特的k。用于降低非内核功率的现有的方法通常涉及降低操作电压、减小负载电容,或每当不要求性能时暂时地减小操作频率(其未能解决要求很高的带宽密集型使用情况)。已经针对特定类型的数据(诸如使用图像压缩的显示帧缓冲器)提出了对减小数据活动因子k的尝试。然而,这典型地在源(例如,显示硬件引擎)处执行。然而,这样的解决办法是非常专用的并且受限于这种类型的显示数据,这种类型的显示数据典型地占总DRAM使用的相对小的百分比。
如下文更加详细地描述的,数据掩蔽功率降低模块112通过减小数据活动因子k和静态功率(通过使用和修改数据掩蔽(DM)特征)来降低存储器I/O功率。在一个实施例中,数据掩蔽功率降低模块112可以通过减小数据掩蔽操作期间DQ管脚端接会消耗功率的时间量来降低静态功率。在另一个实施例中,可以通过选择性地控制数据掩蔽操作来在启用DM信号的同时减小数据总线上的0到1切换的数量,来减小数据活动因子k。
图2是示出了常规的数据掩蔽操作的时序图,系统100可以采用该时序图作为默认状态200。图2示出了同步时钟信号202、用于控制数据掩蔽操作的DM信号204、以及响应于DM信号204的DQ信号206的相对时序。信号202、204和206是针对DDR事务来示出的,DDR事务包括MAL事务的适当数量的节拍(n个节拍)。时钟信号可以包括例如在高状态和低状态之间振荡的电压以同步信号。时钟信号202可以包括具有固定、恒定频率的占空比为50%的方波。在一个实施例中,时钟信号202包括1ns的频率,以及数据突发为0.5ns,尽管应当认识到的是可以按需要改变频率。低状态可以包括例如0伏的电压电平,并且高状态可以包括例如在1.2V-1.5V范围内的电压电平。应当认识到的是,高状态和低状态可以按需要具有替代的电压和范围。DM信号204和DQ信号206使用时钟信号202来进行同步。应当认识到的是,DM信号204和DQ信号206可以在时钟信号202的上升沿或下降沿处(或在双数据速率的情况中为上升沿和下降沿处)变为活动的。DM信号204和DQ信号206可以在适当的电压电平之间摆动。例如,在一个实施例中,DQ信号206可以在零伏的低电压和大约1.2V-1.5V的高电压之间摆动。在差分情况中,DQ信号206可以在大约200mV附近摆动。本领域的普通技术人员将认识到的是,在图2-6和图9中示出的时钟信号202、DM信号204和DQ信号206的电压和时间范围可以按需要改变。
存储器控制器108使用DM信号204来激活和停止数据掩蔽操作。如图2所示,当DM信号204处于低状态208时,数据掩蔽操作是不活动的,并且相应的节拍214被认为是有效的存储器数据。通过将DM信号204改变到高状态212来激活数据掩蔽操作,如由信号转变210所示。在图2中示出的默认状态200中,当DM信号204处于高状态212时,相应的节拍216包括“不在乎”(X)状态。在X状态中,DQ管脚可以继续切换和消耗存储器I/O功率,但是数据可以被DRAM 104忽略。
数据掩蔽功率降低模块112可以被配置为将DQ管脚驱动到减小存储器I/O功耗的多个功率节省状态中的一个功率节省状态,而不是将DQ管脚保持在X状态中(如在默认状态200中)。在一个实施例中,可以基于系统100中的DRAM 104的类型和DRAM 104所采用的DQ管脚端接方案的类型来选择功率节省状态。下文结合图3-7描述了DQ管脚端接方案(图7a-7e)和匹配的功率节省状态的各种示例。
功率节省状态的一个示例是保持上一状态。图3示出了针对保持上一状态300而不是默认状态200(图2)的信号202、204和206的时序图。在保持上一状态300中,在数据掩蔽操作期间保持在转变210之前的DQ管脚上的上一值。如图3所示,如果上一值是高状态,则在DM信号204是活动的同时将DQ管脚保持在高状态304。如果上一值是低状态,则将DQ管脚保持在低状态302。应当认识到的是,保持上一状态300可以减小存储器I/O功耗,这是因为不会存在任何进一步的切换。还将认识到的是,保持上一状态可以被实现用于任何DRAM类型。可能尤其期望将保持上一状态300用于采用未端接DQ管脚(图7a)或差分端接DQ管脚(图7e)的DRAM设备。在图7a中示出的未端接DQ管脚方案包括SoC管脚702和DRAM管脚704,它们没有被端接。如图7e所示,在差分端接DQ管脚的情况中,可以通过连接正极管脚和负极管脚的电阻722来将正极管脚714和718以及负极管脚716和720二者驱动到相同的值(例如,上一正值)。
图4示出了保持低状态400。在保持低状态400中,在DM信号204是活动的同时将DQ管脚驱动到低状态402。保持低状态400可以节省采用接地参考信号的存储器系统(例如,LPDDR4类型DRAM)的静态功率,如图7b所示。参照图7b,在一个实施例中,可以通过电阻706将SoC管脚702和DRAM管脚704之间的连接接地。
图5示出了保持高状态500。在保持高状态500中,将DQ管脚驱动到高状态502。保持高状态500可以节省采用供电参考信号的存储器系统(例如,PCDDR4)的静态功率,如图7c所示。在图7c的实施例中,SoC管脚702和DRAM管脚704之间的连接可以经由电阻708连接到电源。
图6示出了三态600。在三态600中,DQ管脚是三态的或保持悬空的(即,没被驱动)。三态600可以节省其中端接电阻器710和712连接到Vdd和地二者的存储器系统(例如,PCDDR3)的静态功率,如图7d所示。
图8是示出了由系统100实现的用于降低存储器I/O功率的方法800的实施例的流程图800。在框802处,方法800确定经由多个DQ管脚耦合到存储器控制器108的DRAM 104的类型。如上所述,不同类型的DRAM104可以采用不同的DQ管脚端接(图7a-7e)。基于DRAM 104和/或DQ管脚端接的类型,在框802处,可以选择匹配的功率节省状态(即,保持上一状态300、保持低状态400、保持高状态500、三态600)。当激活数据掩蔽操作时(决策框806),可以将DQ管脚驱动到所选择的状态以降低存储器I/O功率,如上所述。
应当认识到的是,数据掩蔽功率降低可以在DDR事务期间的任何时间执行。在上文结合图2-6描述的实施例中,数据掩蔽操作是在DDR事务的结尾执行的。在其它实施例中,数据掩蔽操作可以在DDR事务的开始执行。图9示出了另一个实施例,其中,可以在事务中间的一个或多个节拍内选择性地激活数据掩蔽操作。如图9的示例所示,数据掩蔽操作在DDR事务期间被多次激活(高状态902、904、906和908)。高状态902和908在两个节拍内是活动的,而高状态904和906在单个节拍内是活动的。在DM信号204高状态902、904、906和908期间,将DQ信号206分别驱动到低状态912、916、922和926,以降低存储器I/O功率。当DM信号204处于低状态时,数据掩蔽操作是不活动的,并且相应的节拍910、914、918、920和924被认为是有效的存储器数据。应当认识到的是,在DDR事务期间,可以在任意数量的节拍内将DM信号204启用任意次数,以优化存储器I/O功率降低。
可以在读取操作或写入操作期间应用上述数据掩蔽功率降低方案。图10示出了用于写入操作的系统100的实施例。对于写入操作,SoC物理层设备114可以包括用于每个DQ管脚的线驱动器1004和复用器1006。每个复用器1006具有用于从存储器控制器108接收数据的输入以及连接到I/O逻辑单元1002的用于接收复用器控制信号(MUX CTL)的另一个输入。I/O逻辑单元1002被配置为基于DM信号204和DRAM类型来确定哪个复用器输入传到I/O。
如图10进一步描述的,将从复用器1006的输出作为输入提供给相应的线驱动器1004。每个线驱动器1004还从I/O逻辑单元1002接收三态控制信号。I/O逻辑单元1002基于三态控制信号来控制I/O的三态。例如,如果DRAM类型是LPDDR4,则当DM被断言时,I/O逻辑单元1002可以将I/O驱动到地。单个DDR通道可以具有SoC物理层设备114和适当配置的存储器控制器108的多个实例。
图11示出了用于读取操作的系统100的另一个实施例。读取实现方式类似于写入实现方式,以及线驱动器1004、复用器1006和I/O逻辑单元1002是在DRAM物理层1102处实现的。应当认识到的是,在替代的实施例中,复用器1006和I/O逻辑单元1002可以在系统100的除物理层设备114和1102之外的其它组件中实现。如图11进一步示出的,DRAM 104可以被配置为支持用于读取操作的数据掩蔽操作。DRAM 104可以包括数据掩蔽功率降低模块112(图1),如上所述。
如上所述,系统100可以并入到任何期望的计算系统中。图12示出了系统100并入到示例性的便携式计算设备(PCD)1200中。将易于认识到的是,系统100的某些组件被包括在SoC 322(图12)上,而其它组件(例如,DRAM 104)是耦合到SoC 322的外部组件。SoC 322可以包括多内核CPU 1202。多内核CPU 1202可以包括第零内核410、第一内核412和第N内核414。内核中的一个内核可以包括例如图形处理单元(GPU),以及其它内核中的一个或多个内核包括CPU。
显示器控制器328和触摸屏控制器330可以耦合到CPU 1202。继而,在片上系统322外部的显示器/触摸屏1206可以耦合到显示器控制器328和触摸屏控制器330。
图12还示出了视频编码器334(例如,逐行倒相(PAL)编码器、顺序传送彩色与存储制(SECAM)编码器或国家电视系统委员会(NTSC)编码器)耦合到多内核CPU 1202。此外,视频放大器336耦合到视频编码器334和显示器/触摸屏1206。此外,视频端口338耦合到视频放大器336。如图12所示,通用串行总线(USB)控制器340耦合到多内核CPU 1202。此外,USB端口342耦合到USB控制器340。存储器1204和用户身份模块(SIM)卡346也可以耦合到多内核CPU 1202。存储器1204可以位于SoC322上或耦合到SoC 322(如图1所示)。存储器1204可以包括DRAM存储器系统104(图1),如上所述。
进一步地,如图12所示,数字相机348可以耦合到多内核CPU 1202。在一示例性的方面中,数字相机348是电荷耦合器件(CCD)相机或互补金属氧化物半导体(CMOS)相机。
如图12进一步所示的,立体声音频编解码器(CODEC)350可以耦合到多内核CPU1202。此外,音频放大器352可以耦合到立体声音频CODEC350。在一个示例性的方面中,第一立体声扬声器354和第二立体声扬声器356耦合到音频放大器352。图12示出麦克风放大器358也可以耦合到立体声音频CODEC 350。另外,麦克风360可以耦合到麦克风放大器358。在一特定的方面中,调频(FM)无线电调谐器362可以耦合到立体声音频CODEC 350。此外,FM天线364耦合到FM无线电调谐器362。此外,立体声端口366可以耦合到立体声音频CODEC 350。
图12还示出射频(RF)收发机368可以耦合到多内核CPU 1202。RF开关370可以耦合到RF收发机368和RF天线372。如图12所示,小键盘1208可以耦合到多内核CPU 1202。此外,具有麦克风的单声道耳麦376可以耦合到多内核CPU 1202。此外,振动器设备378可以耦合到多内核CPU1202。
图12还示出电源380可以耦合到片上系统322。在一特定的方面中,电源380是向PCD 1200的需要电力的各个组件提供电力的直流(DC)电源。此外,在一特定的方面中,电源是可再充电的DC电池,或者是从到连接到交流(AC)电源的AC到DC变压器得到的DC电源。
图12还示出PCD 1200还可以包括网卡388,其可以用于接入数据网,例如,局域网、个域网或任何其它网络。网卡388可以是蓝牙网卡、WiFi网卡、个域网(PAN)卡、个域网超低功率技术(PeANUT)网卡、电视/电缆/卫星调谐器、或本领域公知的任何其它网卡。此外,网卡388可以并入到芯片中,即,网卡388可以是芯片中的完全解决方案,以及可以不是单独的网卡388。
如图12中描绘的,触摸屏显示器1206、视频端口338、USB端口342、相机348、第一立体声扬声器354、第二立体声扬声器356、麦克风360、FM天线364、立体声端口366、RF开关370、RF天线372、小键盘1208、单声道耳麦376、振动器378以及电源380是在片上系统322的外部的。
应当认识到的是,本文描述的方法步骤中的一个或多个方法步骤可以作为计算机程序指令(诸如上述模块)存储在存储器中。这些指令可以由任何适当的处理器结合或与相应的模块一起来执行,以执行本文描述的方法。
在本说明书中描述的过程或处理流程中的某些步骤自然地先于其它步骤,以使本发明如所描述的运作。但是,本发明不限于所描述的步骤的次序,如果这样的次序或顺序不改变本发明的功能的话。即,认识到的是,在不脱离本发明的范围和精神的情况下,某些步骤可以在其它步骤之前、之后或与其它步骤并行地(大体同时地)执行。在某些实例中,可以在不脱离本发明的情况下省略或不执行某些步骤。此外,诸如“其后”、“随后”、“接下来”等的词语不旨在限制步骤的次序。这些词语仅用于引导读者浏览示例性的方法的描述。
另外,编程领域的普通技术人员能够基于例如在本说明书中的流程图和相关联的描述,在没有困难的情况下编写计算机代码或识别适当的硬件和/或电路,以实现所公开的发明。
因此,对程序代码指令的特定集合或详细的硬件设备的公开不被认为是获得对如何实现以及使用本发明的足够的理解所必须的。在上文描述中并且结合附图更加详细地解释了所要求保护的计算机实现的过程的发明性功能,所述附图可以说明各个过程流。
在一个或多个示例性的方面中,所描述的功能可以在硬件、软件、固件或其任意组合中实现。如果在软件中实现,则所述功能可以作为一个或多个指令或代码存储在计算机可读介质中或者通过其进行传输。计算机可读介质包括计算机存储介质和通信介质二者,所述通信介质包括促进计算机程序从一个地方传送到另一个地方的任何介质。存储介质可以是可由计算机存取的任何可用的介质。通过举例而非限制性的方式,这样的计算机可读介质可以包括RAM、ROM、EEPROM、NAND闪存、NOR闪存、M-RAM、P-RAM、R-RAM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁存储设备、或者可以用于以指令或数据结构的形式携带或存储期望的程序代码以及可以由计算机来存取的任何其它介质。
此外,任何连接被适当地称为计算机可读介质。例如,如果使用同轴电缆、光纤光缆、双绞线、数字用户线(“DSL”)或无线技术(例如红外、无线和微波)从网站、服务器或其它远程源发送软件,那么同轴电缆、光纤光缆、双绞线、DSL或无线技术(例如红外、无线和微波)包括在介质的定义中。
如本文所使用的,磁盘和光盘包括压缩光盘(“CD”)、激光光盘、光盘、数字多功能光盘(“DVD”)、软盘和蓝光光盘,其中磁盘通常磁性地复制数据,而光盘则利用激光来光学地复制数据。上述的组合也应当包括在计算机可读介质的范围内。
在不脱离本发明的精神和范围的情况下,替代的实施例对于与本发明所属领域的普通技术人员将是显而易见的。因此,尽管详细地说明和描述了所选择的方面,但是将理解的是,如下面的权利要求书所限定的,可以在不脱离本发明的精神和范围的情况下在其中做出各种替代和改变。
Claims (31)
1.一种用于降低存储器I/O功率的方法,所述方法包括:
确定经由多个数据总线DQ管脚耦合到存储器控制器的DRAM存储器设备的DQ管脚端接方案;
基于所述DQ管脚端接方案来选择包括保持上一状态、保持低状态、保持高状态和三态的多个DQ管脚状态中的一个DQ管脚状态,其中,选择的DQ管脚状态可用于在数据掩蔽操作期间降低与所述DRAM存储器设备相关联的存储器I/O功率;
启用所述数据掩蔽操作;以及
在所述数据掩蔽操作期间,将所述DQ管脚驱动到所选择的DQ管脚状态。
2.根据权利要求1所述的方法,其中,所述数据掩蔽操作发生在存储器写入操作期间。
3.根据权利要求1所述的方法,其中,所述数据掩蔽操作发生在存储器读取操作期间。
4.根据权利要求1所述的方法,其中,所述DRAM存储器设备包括双数据速率DDR DRAM存储器设备。
5.根据权利要求4所述的方法,其中,所述数据掩蔽操作发生在DDR事务期间。
6.根据权利要求5所述的方法,其中,在所述DDR事务的单个节拍内启用所述数据掩蔽操作。
7.根据权利要求5所述的方法,其中,在所述DDR事务的开始或结尾中的一者处启用所述数据掩蔽操作。
8.根据权利要求1所述的方法,其中,所述存储器控制器位于耦合到所述DRAM存储器设备的片上系统SoC上。
9.一种用于降低存储器I/O功率的系统,包括:
用于确定经由多个数据总线DQ管脚耦合到存储器控制器的DRAM存储器设备的DQ管脚端接方案的单元;
用于基于所述DQ管脚端接方案来选择包括保持上一状态、保持低状态、保持高状态和三态的多个DQ管脚状态中的一个DQ管脚状态的单元,其中,选择的DQ管脚状态可用于在数据掩蔽操作期间降低与所述DRAM存储器设备相关联的存储器I/O功率;
用于启用所述数据掩蔽操作的单元;以及
用于在所述数据掩蔽操作期间将所述DQ管脚驱动到所选择的DQ管脚状态的单元。
10.根据权利要求9所述的系统,其中,所述数据掩蔽操作发生在存储器写入操作期间。
11.根据权利要求9所述的系统,其中,所述数据掩蔽操作发生在存储器读取操作期间。
12.根据权利要求9所述的系统,其中,所述DRAM存储器设备包括双数据速率DDR DRAM存储器设备。
13.根据权利要求12所述的系统,其中,所述数据掩蔽操作发生在DDR事务期间。
14.根据权利要求13所述的系统,其中,在所述DDR事务的单个节拍内启用所述数据掩蔽操作。
15.根据权利要求13所述的系统,其中,在所述DDR事务的开始或结尾中的一者处启用所述数据掩蔽操作。
16.根据权利要求9所述的系统,其中,所述存储器控制器位于耦合到所述DRAM存储器设备的片上系统SoC上。
17.一种其上具有用于降低存储器I/O功率的计算机程序的计算机可读介质,所述计算机程序可由处理器执行以实现如下操作:
确定经由多个数据总线DQ管脚耦合到存储器控制器的DRAM存储器设备的DQ管脚端接方案;
基于所述DQ管脚端接方案来选择包括保持上一状态、保持低状态、保持高状态和三态的多个DQ管脚状态中的一个DQ管脚状态,其中,选择的DQ管脚状态可用于在数据掩蔽操作期间降低与所述DRAM存储器设备相关联的存储器I/O功率;
启用所述数据掩蔽操作;以及
在所述数据掩蔽操作期间将所述DQ管脚驱动到所选择的DQ管脚状态。
18.根据权利要求17所述的计算机可读介质,其中,所述数据掩蔽操作发生在存储器写入操作期间。
19.根据权利要求17所述的计算机可读介质,其中,所述数据掩蔽操作发生在存储器读取操作期间。
20.根据权利要求17所述的计算机可读介质,其中,所述DRAM存储器设备包括双数据速率DDR DRAM存储器设备。
21.根据权利要求20所述的计算机可读介质,其中,所述数据掩蔽操作发生在DDR事务期间。
22.根据权利要求21所述的计算机可读介质,其中,在所述DDR事务的单个节拍内启用所述数据掩蔽操作。
23.根据权利要求21所述的计算机可读介质,其中,在所述DDR事务的开始或结尾中的一者处启用所述数据掩蔽操作。
24.根据权利要求17所述的计算机可读介质,其中,所述存储器控制器位于耦合到所述DRAM存储器设备的片上系统SoC上。
25.一种用于降低存储器I/O功率的系统,所述系统包括:
片上系统SoC,其包括存储器控制器;
DRAM存储器设备,其经由多个数据总线DQ管脚耦合到所述存储器控制器;以及
数据掩蔽功率降低模块,其包括被配置为执行以下操作的逻辑单元:
确定所述DRAM存储器设备的DQ管脚端接方案;
选择包括保持上一状态、保持低状态、保持高状态和三态的多个功率节省状态中的一个功率节省状态,其中,选择的功率节省状态用于基于所述DQ管脚端接方案来在数据掩蔽操作期间降低与所述
DRAM存储器设备相关联的存储器I/O功率;以及
在数据掩蔽操作期间将所述DQ管脚驱动到选择的功率节省状态。
26.根据权利要求25所述的系统,其中,所述数据掩蔽操作发生在存储器写入操作期间。
27.根据权利要求25所述的系统,其中,所述数据掩蔽操作发生在存储器读取操作期间。
28.根据权利要求25所述的系统,其中,所述DRAM存储器设备包括双数据速率DDR DRAM存储器设备。
29.根据权利要求28所述的系统,其中,所述数据掩蔽操作发生在DDR事务期间。
30.根据权利要求29所述的系统,其中,在所述DDR事务的单个节拍内启用所述数据掩蔽操作。
31.根据权利要求29所述的系统,其中,在所述DDR事务的开始或结尾中的一者处启用所述数据掩蔽操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/079,620 US9383809B2 (en) | 2013-11-13 | 2013-11-13 | System and method for reducing memory I/O power via data masking |
US14/079,620 | 2013-11-13 | ||
PCT/US2014/065356 WO2015073613A1 (en) | 2013-11-13 | 2014-11-13 | System and method for reducing memory i/o power via data masking |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105706168A CN105706168A (zh) | 2016-06-22 |
CN105706168B true CN105706168B (zh) | 2018-07-03 |
Family
ID=52023624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480061437.4A Expired - Fee Related CN105706168B (zh) | 2013-11-13 | 2014-11-13 | 用于经由数据掩蔽来降低存储器i/o功率的系统、方法和计算机可读介质 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9383809B2 (zh) |
EP (1) | EP3069345B1 (zh) |
JP (1) | JP6363191B2 (zh) |
KR (1) | KR20160085779A (zh) |
CN (1) | CN105706168B (zh) |
WO (1) | WO2015073613A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180335828A1 (en) * | 2017-05-19 | 2018-11-22 | Qualcomm Incorporated | Systems and methods for reducing memory power consumption via device-specific customization of ddr interface parameters |
US10332582B2 (en) | 2017-08-02 | 2019-06-25 | Qualcomm Incorporated | Partial refresh technique to save memory refresh power |
JP7197998B2 (ja) * | 2018-05-02 | 2022-12-28 | キヤノン株式会社 | メモリコントローラおよびメモリコントローラで実施される方法 |
US10795830B2 (en) | 2018-07-20 | 2020-10-06 | Qualcomm Incorporated | Write access control for double data rate write-x/datacopy0 commands |
CN109388177B (zh) * | 2018-10-15 | 2021-07-27 | 北京电子工程总体研究所 | 基于多内核dsp的内核间时序同步方法和数据传输方法 |
US11150818B2 (en) * | 2019-09-11 | 2021-10-19 | International Business Machines Corporation | Memory array having power consumption characteristics |
CN115565563A (zh) * | 2021-07-02 | 2023-01-03 | 脸萌有限公司 | 存储电路、芯片、数据处理方法和电子设备 |
US11948625B2 (en) | 2021-09-09 | 2024-04-02 | Winbond Electronics Corporation | Systems on chips, memory circuits, and methods for accessing data in a memory circuit directly using a transistor-level operation signal |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6904506B2 (en) * | 2001-03-28 | 2005-06-07 | Via Technologies, Inc. | Method and motherboard for automatically determining memory type |
CN1983329A (zh) * | 2005-12-15 | 2007-06-20 | 辉达公司 | 用于图形存储器集线器的装置、系统和方法 |
US7359253B2 (en) * | 2004-08-30 | 2008-04-15 | Fujitsu Limited | Semiconductor memory device with input buffer |
CN101673227A (zh) * | 2008-09-11 | 2010-03-17 | 英业达股份有限公司 | 存储器位错误产生装置 |
CN102282619A (zh) * | 2008-11-20 | 2011-12-14 | Ati技术无限责任公司 | 用以在ddr dram写入期间三态控制未使用数据字节的方法、系统及设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009187615A (ja) * | 2008-02-05 | 2009-08-20 | Elpida Memory Inc | 半導体記憶装置 |
US7830726B2 (en) | 2008-09-30 | 2010-11-09 | Seagate Technology Llc | Data storage using read-mask-write operation |
JP2011170942A (ja) | 2010-02-22 | 2011-09-01 | Elpida Memory Inc | 半導体装置 |
JP5398664B2 (ja) | 2010-08-13 | 2014-01-29 | ルネサスエレクトロニクス株式会社 | 半導体メモリ |
JP5876271B2 (ja) * | 2011-11-01 | 2016-03-02 | ルネサスエレクトロニクス株式会社 | メモリ制御装置 |
US8726139B2 (en) | 2011-12-14 | 2014-05-13 | Advanced Micro Devices, Inc. | Unified data masking, data poisoning, and data bus inversion signaling |
-
2013
- 2013-11-13 US US14/079,620 patent/US9383809B2/en active Active
-
2014
- 2014-11-13 EP EP14812032.2A patent/EP3069345B1/en active Active
- 2014-11-13 CN CN201480061437.4A patent/CN105706168B/zh not_active Expired - Fee Related
- 2014-11-13 JP JP2016528851A patent/JP6363191B2/ja not_active Expired - Fee Related
- 2014-11-13 WO PCT/US2014/065356 patent/WO2015073613A1/en active Application Filing
- 2014-11-13 KR KR1020167012780A patent/KR20160085779A/ko not_active Application Discontinuation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6904506B2 (en) * | 2001-03-28 | 2005-06-07 | Via Technologies, Inc. | Method and motherboard for automatically determining memory type |
US7359253B2 (en) * | 2004-08-30 | 2008-04-15 | Fujitsu Limited | Semiconductor memory device with input buffer |
CN1983329A (zh) * | 2005-12-15 | 2007-06-20 | 辉达公司 | 用于图形存储器集线器的装置、系统和方法 |
CN101673227A (zh) * | 2008-09-11 | 2010-03-17 | 英业达股份有限公司 | 存储器位错误产生装置 |
CN102282619A (zh) * | 2008-11-20 | 2011-12-14 | Ati技术无限责任公司 | 用以在ddr dram写入期间三态控制未使用数据字节的方法、系统及设备 |
Also Published As
Publication number | Publication date |
---|---|
KR20160085779A (ko) | 2016-07-18 |
CN105706168A (zh) | 2016-06-22 |
JP2016537720A (ja) | 2016-12-01 |
JP6363191B2 (ja) | 2018-07-25 |
US9383809B2 (en) | 2016-07-05 |
EP3069345B1 (en) | 2020-07-15 |
US20150134989A1 (en) | 2015-05-14 |
WO2015073613A1 (en) | 2015-05-21 |
EP3069345A1 (en) | 2016-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105706168B (zh) | 用于经由数据掩蔽来降低存储器i/o功率的系统、方法和计算机可读介质 | |
CN105452986B (zh) | 用于具有选择性功率或性能优化的内存通道交织的系统和方法 | |
US8098539B2 (en) | Hybrid single and dual channel DDR interface scheme by interleaving address/control signals during dual channel operation | |
US9338642B2 (en) | Method and apparatus for processing application program, and mobile terminal therefor | |
TWI512676B (zh) | 用於顯示子系統之混和顯示圖框緩衝器 | |
CN103809730A (zh) | 一种低功耗可穿戴设备系统 | |
US10862992B2 (en) | Resource cache management method and system and apparatus | |
US20150089112A1 (en) | System and method for conserving memory power using dynamic memory i/o resizing | |
CN109074331A (zh) | 具有系统高速缓存和本地资源管理的功率降低存储器子系统 | |
US9632562B2 (en) | Systems and methods for reducing volatile memory standby power in a portable computing device | |
US20180032307A1 (en) | Power reduction through clock management | |
US20150248741A1 (en) | System and method for providing power-saving static image display refresh in a dram memory system | |
CN107924225A (zh) | 用于动态地调整存储器状态转变定时器的系统和方法 | |
TW201717026A (zh) | 用於逐頁記憶體通道交錯之系統及方法 | |
CN106575273A (zh) | 用于扩展片上系统的存储器的系统和方法 | |
CN103839533A (zh) | 一种移动终端图像的显示方法和移动终端 | |
CN102883122B (zh) | 一种开机电路及开机方法,一种电视 | |
KR102343642B1 (ko) | 데이터 운용 방법 및 전자 장치 | |
CN205050538U (zh) | Led异步控制卡以及led显示系统 | |
KR20140035845A (ko) | 에너지 보존을 갖는 연속적인 데이터 전달 | |
CN108604213A (zh) | 用于个别地配置共享公共命令存取总线的动态随机存取存储器的系统和方法 | |
CN102981792B (zh) | 一种双屏显示的方法、装置及电子产品 | |
CN108287680A (zh) | 音乐播放方法、装置、电子设备及存储介质 | |
CN108885587A (zh) | 具有系统高速缓存和本地资源管理的功率降低存储器子系统 | |
WO2023082860A1 (zh) | 数据处理芯片、模组、终端及电源管理方法 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180703 Termination date: 20201113 |