CN108694019A - 存储器中的操作的选择性噪声容许模式 - Google Patents

存储器中的操作的选择性噪声容许模式 Download PDF

Info

Publication number
CN108694019A
CN108694019A CN201810213457.9A CN201810213457A CN108694019A CN 108694019 A CN108694019 A CN 108694019A CN 201810213457 A CN201810213457 A CN 201810213457A CN 108694019 A CN108694019 A CN 108694019A
Authority
CN
China
Prior art keywords
memory
noise
live load
level
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.)
Pending
Application number
CN201810213457.9A
Other languages
English (en)
Inventor
D·J·库里安
A·富
D·迪瓦卡尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN108694019A publication Critical patent/CN108694019A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3225Monitoring of peripheral devices of memory devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Neurology (AREA)
  • Power Engineering (AREA)
  • Power Sources (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

在一个实施例中,与通过许多现有设备实现的相比,采用根据本说明书的一个方面的存储器操作的选择性噪声容许模式的系统可以降低存储器操作功率消耗的级别。在一个实施例中,每个噪声容许模式具有相关联的存储器的输入功率电平。例如,在一个实施例中,对于被处理的工作负荷的数据中的噪声的容许程度越大,存储器输入功率降低得越多,并且功率消耗最终降低得越多。描述了其它方面和优点。

Description

存储器中的操作的选择性噪声容许模式
技术领域
本说明书的特定实施例总体上涉及存储器资源的管理。
背景技术
能够频繁地存储大量数据的非易失性存储器具有例如与易失性、较小容量的存储器相比而言较慢的输入/输出速度的缺点。相反,与较大容量的非易失性存储器相比,可以更快进行操作的较小的、易失性存储器在每位基础上存储数据可能具有更大的成本。然而,存储在易失性存储器中的数据在失去电力或系统重置的事件中可能丢失。因此,只要存储在易失性存储器中的数据要被维持,则典型地持续向易失性存储器供应电力。
一种类型的易失性存储器是动态随机存取存储器(DRAM),其中存储在存储器中的数据典型地在周期性的刷新操作中“被刷新”。另一种类型的易失性存储器是静态随机存取存储器(SRAM),其能够维持数据而无需刷新操作,但是尽管如此典型地需要持续供应电力来维持存储在SRAM存储器中的数据。因此,易失性存储器的功率消耗通常是要关注的问题,不仅在具有有限电源的移动应用中,而且在其中存储器消耗大量电力的静止系统中。
附图说明
在附图的图中,本公开的实施例通过示例的方式而非通过限制的方式示出,在附图中,同样的附图标记指代类似的元素。
图1描绘了示出采用根据本说明书的存储器操作的选择性噪声容许模式的系统的一个实施例的高级别框图。
图2a-2b和图3a-3b描绘了图2的存储器的数据存储的各种分层级别。
图4描绘了采用根据本说明书的存储器操作的选择性噪声容许模式的存储器接口的实施例。
图5是描绘根据本说明书的存储器操作的选择性噪声容许模式和相关联的存储器输入功率电平的示例的数据结构。
图6描绘了采用根据本说明书的存储器操作的选择性噪声容许模式的数据传送逻辑的实施例。
图7是描绘根据本说明书的与各种工作负荷处理层相关联的存储器操作的选择性噪声容许模式的示例的数据结构。
图8描绘了采用根据本说明书的具有相关联的存储器输入功率电平的存储器操作的选择性噪声容许模式的存储器的实施例。
图9描绘了根据本说明书的与动态地改变存储器操作的选择性噪声容许模式相关联地动态地改变存储器输入功率电平的示例。
图10描绘了采用根据本说明书的具有存储器操作的选择性噪声容许模式的多个存储器存储体(bank)的存储器的实施例,存储器操作的选择性噪声容许模式具有相关联的存储器输入功率电平。
图11描绘了采用根据本说明书的具有存储器操作的选择性噪声容许模式的多个存储器存储体的存储器的另一实施例,存储器操作的选择性噪声容许模式具有相关联的存储器输入功率电平。
图12描绘了具有存储在图11的实施例的不同存储器存储体中的部分的工作负荷处理数据的字。
图13是描绘根据本说明书的与用于各种工作负荷处理层的各种存储器存储体相关联的存储器操作的选择性噪声容许模式的另一示例的数据结构。
图14描绘了采用根据本说明书的存储器操作的选择性噪声容许模式的系统的操作的一个实施例。
具体实施方式
在下面的说明书中,对同样的组件给予相同的附图标记,无论这些组件是否在不同的实施例中示出。为了以清楚且简洁的方式示出本公开的一个或多个实施例,附图不一定按比例绘制,并且可以以略微示意性的形式示出某些特征。关于一个实施例描述或示出的特征可以以相同的方式或以类似的方式用于一个或多个其它实施例中,或者与其它实施例的特征相结合地使用或替代其它实施例的特征来使用。
与通过许多现有设备所实现的相比,采用根据本说明书的一个方面的存储器操作的选择性噪声容许模式的系统可以降低存储器操作功率消耗的级别。在一个实施例中,每个噪声容许模式具有相关联的到存储器的输入功率电平。例如,在一个实施例中,对处理的工作负荷的数据中的噪声的容许程度越大,存储器输入功率降低得越多,并且功率消耗最终降低得越多。
采用根据本说明书的存储器操作的选择性噪声容许模式的系统可以与对于被处理的数据中的噪声具有各种容许级别的各种不同的处理工作负荷相结合地使用。例如,基于深度学习的算法和神经网络常见地用于若干机器学习应用领域,包括特征图识别、音频/视频识别、视频概括等。这些工作负荷当前运行于范围从例如中央处理单元(CPU)到图形处理单元(GPU)的各种硬件平台上。
为了降低功率消耗并且提高性能,所耗费的每瓦特的性能越来越成为机器学习应用领域中的重要区分指标。例如,已经提出各种定制硬件加速器以用于实现功率消耗的降低、提高性能、或者这两者。其它方法涉及用于对由处理工作负荷处理的数据进行压缩的各种压缩技术。
应认识到,在机器学习中采用的一些算法能够容许被处理的数据中的一定程度的“噪声”。如本文所使用的,术语“噪声”是指被处理的数据中的错误。该错误可能出现在如最初获得的数据中。例如,不恰当地校准的传感器或传感器自身的缺陷可能在由算法进行处理之前在所采集的原始数据中引入错误。
一种利用噪声容许的方法利用数据的量化来减少表示特定数据点的位的数量。例如,对数据的像素或音频波形的段进行表示的数据点在大小方面可以例如从具有相对大的位数的数据字减少到具有八位的较小的字,以改进性能、或降低功率消耗、或这两者。
在本文中应认识到,基于深度学习的算法和具有多层处理的其它算法往往从一个处理层到另一处理层展现出不同级别的噪声免疫或噪声容许。例如,与例如趋向于更抽象或更复杂的上部处理层或后续处理层相比,初始处理层往往趋向于更容许被处理的数据中的噪声。因此,处理层越抽象或复杂,层趋向于越不容许被处理的数据中的噪声。因此,利用数据的量化的基于深度学习的算法可以具有各种数据量化模式和数据格式,使得对数据中的噪声具有更高容许度的初始层可以具有提高的数据量化,从而与用于具有更低的噪声容许程度的后续层的数据的大小相比,在更大程度上减小数据的大小。因此,可变的数据精度可以用于算法的不同的处理层。应认识到,这样的可变精度可能由于硬件、软件或这两者的复杂度提高而施加显著的负担。
在本说明书的一个方面,在本文中应认识到,数据中的噪声或错误还可能由于具有多个处理层的算法的数据存储而引入。例如,数据中的位错误可能由不正确地运行的位单元而引起。为了减少或消除这种位错误,可以由存储器的制造商规定存储器的最小输入电压,以尝试确保存储器的尽可能多的位单元的正确操作。
根据本说明书的存储器操作的选择性噪声容许模式的一个方面包括根据存储器操作的选定的噪声容许模式以可选存储器输入功率模式来控制存储器的多级电源。因此,可以根据所执行的工作负荷处理层的噪声容许级别来从多个存储器输入功率模式中选择存储器输入功率模式。
本文在选择存储器的输入功率电平方面描述了各种实施例。应认识到,可以使用各种不同的电气参数来选择输入功率,该电气参数在改变时进而影响存储器的功率消耗级别。例如,在本文中选择存储器的输入电压电平在该术语在本文中使用时被视为选择输入功率电平,因为输入电压电平影响存储器的功率消耗。作为另一示例,在本文中选择存储器的输入电流电平在该术语在本文中使用时被视为选择输入功率电平,因为输入电流电平影响存储器的功率消耗。应认识到,可以取决于特定的应用使用各种不同的技术来选择输入功率电平。
在本说明书的另一方面中,根据本说明书的存储器操作的选择性噪声容许模式的各种参数可以是可编程的。例如,可以通过设置寄存器或其它数据结构以存储表示一个或多个可编程输入功率电平的值来对特定的存储器输入功率电平进行编程。作为另一示例,可以以类似的方式对与各种工作负荷处理层相关联的噪声容许级别和存储器输入功率电平进行编程。
可以在制造采用存储器操作的选择性噪声容许模式的存储器控制器或其它设备时对根据本说明书的存储器操作的选择性噪声容许模式的各种参数进行编程。另外,在一些实施例中,可以向系统用户和在系统上运行的应用提供例如在系统处于使用中时实时地对根据本说明书的存储器操作的选择性噪声容许模式的一个或多个参数(例如,上面描述的那些)进行编程的能力。
根据本说明书的存储器操作的选择性噪声容许模式可以单独采用或与例如其它技术(例如,具有各种数据量化模式和数据格式的数据量化)相结合。因此,对于数据中的噪声具有较高容许度的初始层可以具有与提高的数据量化相结合的操作的选定噪声容许模式,以改进性能、降低功率消耗、或这两者。
所描述的技术的实现方式可以包括硬件、方法或过程、或计算机可访问介质上的计算机软件。因此,实施例包括记录在一个或多个计算机存储设备上的对应计算机系统、装置以及计算机程序,每个对应计算机系统、装置以及计算机程序被配置为执行方法的动作。
采用根据本说明书的存储器操作的选择性噪声容许模式的存储器接口在本文中结合数据扇区、扇区构成的块、块构成的区域以及区域构成的存储体进行描述。然而,应认识到,根据本说明书的存储器接口可以应用于数据的其它单元和子单元,例如,卷、磁道、段、文件、字节等。
具有根据本说明书的存储器操作的选择性噪声容许模式的存储器接口在一个实施例中可以用于一个或多个计算机的系统,该计算机被配置为借助于使在操作时使得或引起系统执行动作的软件、固件、硬件或其组合安装在系统上来执行存储器操作的选择性噪声容许模式的特定操作或动作。一个或多个计算机程序可以被配置为借助于包括当由数据处理装置执行时使得装置执行动作的指令来执行选择性存储器输入功率模式授权实施的特定操作或动作。
其它实施例包括记录在一个或多个计算机存储设备上的对应计算机系统、装置以及计算机程序,每个对应计算机系统、装置以及计算机程序被配置为执行方法的动作。所描述的技术的实现方式可以包括硬件、方法或过程、或计算机可访问介质上的计算机软件。
因此,本文描述的操作由被配置为利用极少的系统操作者干预或无系统操作者干预自动地或基本上自动地执行操作(除了指示为手动执行的情况,例如,用户选择)的逻辑来执行。因此,如本文所使用的,术语“自动”包括完全自动,即,操作在没有人类干预(例如,图形用户选择界面的用户输入)的情况下由一个或多个硬件或软件控制的机器执行。如本文所使用的,术语“自动”还包括主要自动,即,大部分操作(例如,大于50%)在没有人类干预(例如,图形用户选择界面的用户输入)的情况下由一个或多个硬件或软件控制的机器执行,并且操作的其余部分(例如,不到50%)手动地执行,即,手动操作在利用人类干预(例如,图形用户选择界面的用户输入)来引导操作的执行的情况下由一个或多个硬件或软件控制的机器执行。
在本说明书中描述的很多功能元件已经被标记为“逻辑”,以便于更特别地强调其实现独立性。例如,逻辑元件可以实现为包括定制的极大规模集成(VLSI)电路或门阵列、现成的半导体(例如,逻辑芯片、晶体管)或其它分立组件的硬件电路。逻辑元件还可以在诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑器件等的可编程硬件设备中实现。
逻辑元件还可以在软件中实现,以用于由各种类型的处理器执行。包括可执行代码的逻辑元件可以例如包括计算机指令的一个或多个物理或逻辑块,其可以例如组织为对象、程序、或函数。尽管如此,所识别的逻辑元件的可执行文件无需物理地位于一起,而是可以包括存储在不同位置的全异的指令,这些指令当在逻辑上接合在一起时包括逻辑元件并且实现针对逻辑元件的所陈述的目的。
事实上,用于逻辑元件的可执行代码可以是单个指令或许多指令,并且甚至可以分布在若干不同的代码段上,分布在不同的程序之中,分布在不同的处理器之中,以及跨若干存储器设备分布。类似地,操作数据可以在本文中在逻辑元件内进行识别和说明,并且可以任何合适的形式体现以及组织成任何合适类型的数据结构。操作数据可以作为单个数据集被收集,或者可以分布在不同的位置上,包括分布在不同的存储设备上。
图1是示出根据本公开的实施例实现的计算系统的选定方面的高级别框图。系统10可以表示多个电子或其它计算设备中的任一个,其可以包括存储器设备。这样的电子设备可以包括云存储系统和其它计算设备,例如,主机、服务器、个人计算机、工作站、电话设备、网络装置、虚拟化设备、存储控制器、便携式或移动设备(例如,膝上型计算机、上网本、平板计算机、个人数字助理(PDA)、便携式媒体播放器、便携式游戏设备、数字相机、移动电话、智能电话、功能电话等)或者组件(例如,片上系统、处理器、桥接器、存储器控制器、存储器等)。系统10可以由电池、可再生电源(例如,太阳能板)、无线充电供电,或者通过使用AC插座来供电。
在替代实施例中,系统10可以包括更多元件、更少元件、和/或不同的元件。此外,虽然系统10可以描绘为包括单独的元件,但是应认识到这样的元件可以集成到一个平台上,例如,片上系统(SoC)。在所示出的示例中,系统10包括中央处理单元或微处理器20、存储器控制器30、存储器40、卸载数据传送引擎44以及外围组件50,外围组件50可以包括例如视频控制器、输入设备、输出设备、存储装置、网络适配器或接口、电源(包括电池、可再生电源(例如,光伏板)、无线充电、或到AC插座的耦合件)等。
微处理器20包括高速缓存25,其可以是存储指令和数据的存储器层级的一部分,并且存储器40也可以是存储器层级的一部分。微处理器20还包括逻辑27,其可以包括一个或多个核心,并且可以包括例如系统代理。例如核心典型地包含在执行指令中所涉及的处理器的组件,例如,算术逻辑单元(ALU)、浮点单元(FPU)、和/或各种级别的高速缓存(例如,L1和L2高速缓存)。系统代理可以包括各种控制器,例如,串行或并行数据路径控制器、各种级别的高速缓存(例如,L3高速缓存)、监听代理管线、管芯上存储器控制器、和/或其它逻辑。
可以通过存储器控制器(或芯片组)30来促进微处理器20与存储器40之间的通信,存储器控制器(或芯片组)30还可以促进与外围组件50进行通信。例如,存储器控制器30可以与诸如微处理器20、卸载引擎44、存储器40中的存储器、或外围组件50中的组件之类的组件位于管芯上,或者可以是分离的。
作为存储设备的外围组件50可以是例如非易失性存储装置,例如,固态驱动器(SSD)、包括独立磁盘冗余阵列(RAID)的磁盘驱动器、光盘驱动器、磁带驱动器、闪速存储器等。存储装置可以包括内部存储设备或附接的或网络可访问的存储装置。微处理器20被配置为将数据写入存储器40并且从存储器40读取数据。存储装置中的程序被加载到存储器中并且由处理器执行。卸载数据传送引擎44促进存储器到存储器数据传送,其绕过微处理器以减轻这样的传送在微处理器20上的负荷。如下文更详细解释的,具有根据本说明书的存储器操作的选择性噪声容许模式的存储器接口的一个实施例可以提供适合于特定应用的合适的功率降低级别。
网络控制器或适配器实现与诸如以太网、光纤信道仲裁环路等网络的通信。此外,在某些实施例中,架构可以包括被配置为将由存储器中的数据表示的信息显示在显示监视器上的视频控制器,其中视频控制器可以体现在视频卡上或者集成到安装在母板或其它基板上的集成电路组件上。输入设备用于将用户输入提供给处理器,并且可以包括键盘、鼠标、触笔、麦克风、触敏显示屏、输入引脚、插座、或本领域已知的任何其它激活或输入机制。输出设备能够显现从处理器或诸如显示监视器、打印机、存储装置、输出引脚、插座等其它组件发送的信息。网络适配器可以体现在诸如外围组件互连(PCI)卡、PCI-快速、或一些其它I/O卡的网卡上,或者体现在安装在母板或其它基板上的集成电路组件上。例如,外围组件50还可以包括RF接收器/发射器,例如在移动电话实施例中。可以在系统中提供的外围组件50的附加示例包括音频设备和输送温度更新以用于存储在存储器中的温度传感器。
系统10的组件中的一个或多个组件可以取决于特定的应用而省略。例如,网络路由器可能缺少例如视频控制器。
包括高速缓存25、存储器40、系统10、存储器控制器30以及外围组件50的图1的设备中的任何一个或多个设备可以包括采用根据本说明书的具有存储器操作的选择性噪声容许模式的存储器接口的存储器,包括诸如DRAM或SRAM存储器的随机存取存储器。采用存储器接口的存储器还可以体现为能够以持久方式(即使到存储器的电力中断)存储数据的任何类型的数据存储装置,例如但不限于字节可寻址的原位写入非易失性存储器、铁电晶体管随机存取存储器(FeTRAM)、基于纳米线的非易失性存储器、磁阻随机存取存储器(MRAM)、自旋移矩(STT)-MRAM、相变存储器(PCM)、存储类存储器(SCM)、通用存储器、Ge2Sb2Te5、可编程金属化单元(PMC)、电阻存储器(RRAM)、RESET(非晶质)单元、SET(晶体)单元、PCME、奥氏存储器、铁电存储器(也称为聚合物存储器和聚(N-乙烯基咔唑))、铁磁存储器(也称为自旋电子、SPRAM(自旋移矩RAM)、STRAM(自旋隧道RAM)、磁存储器、磁随机存取存储器(MRAM)以及半导体-氧化物-氮化物-氧化物半导体(SONOS,也称为介电存储器)。根据本文描述的实施例的这种类型的存储器可以用于独立的存储器电路或逻辑阵列,或者可以嵌入微处理器和/或数字信号处理器(DSP)中。另外,应注意,虽然本文在说明性的示例中主要参考用于基于微处理器系统的存储器类型对系统和过程进行了描述,但是应认识到,考虑到本文的公开内容,本公开的某些方面、架构以及原理同样适用于在其它类型的逻辑设备中使用的其它类型的存储器。
存储器40和外围组件50的存储设备中的一个或多个可以具有单元的行和列(例如,位单元)的矩形或正交阵列,其中每个位单元被配置为存储位状态。位单元的阵列可以在逻辑上细分为区域54构成的阵列52(图2a)。取决于存储器的大小,位单元阵列可以具有数十、数百、数千或更多的此类区域54。区域54可以在逻辑上细分为块70构成的阵列60(图2b)。取决于存储器的大小,块构成的阵列可以具有数十、数百、数千或更多的此类块70。在一个实施例中,存储器40或外围组件50的存储设备可以包括诸如闪速存储器的非易失性存储器,例如其中每个块70表示存储器的可以一次擦除的最小子单元。
每个块70进而可以细分为扇区74构成的阵列(图3a)。取决于存储器的大小,扇区74构成的块70可以具有单个扇区或者数十、数百、数千或更多的此类扇区74。每个扇区74进而可以细分为存储器位置80构成的阵列(图3b)。取决于存储器的大小,存储器位置80构成的扇区74可以具有数十、数百、数千或更多的此类存储器位置80。扇区的一个具体示例的大小为足以存储512字节的数据。每个存储器位置包括存储位、字节、字或其它数据子单元的一个或多个位单元,这取决于特定的应用。虽然结合以一个或多个扇区构成的块来存储数据对根据本说明书的存储器接口进行了描述,但是应认识到,可以取决于特定的应用而使用诸如页、磁道、段、文件、卷、磁盘、驱动器等其它数据存储单元。
图4是示出根据本说明书的实现存储器接口100的计算系统的另一实施例的选定方面的高级别框图。在该实施例中,计算系统包括多个数据传送逻辑元件DTL1、DTL2…DTLn(其中n是大于1的任何正整数),其中的每个数据传送逻辑元件可以包括中央处理单元、卸载数据传送引擎、或其它本地或远程数据传送逻辑。例如,诸如数据传送逻辑DTL1的每个数据传送逻辑被配置为生成存储器事务请求(例如,读取命令或写入命令)和地址(例如,要发生存储器事务的系统存储器地址)并且通过适当的并行或串行总线或其它数据路径102a、102b…102n将其发送到接口100的存储器110。
存储器接口100提供多个数据传送逻辑元件DTL1、DTL2…DTLn之间的接口以及一个或多个易失性存储器的接口。例如,易失性存储器是需要电力来维持介质存储的数据的状态的存储介质。相反,非易失性存储器是不需要电力来维持介质存储的数据的状态的存储介质。然而,易失性存储器和非易失性存储器两者往往需要输入功率来执行诸如读取命令或写入命令的存储器事务请求,以分别从存储器读取数据并且向存储器写入数据。
在所示出的实施例中,存储器110可以表示SRAM型易失性存储器。然而,应认识到,根据本说明书的存储器操作的选择性噪声容许模式可以与诸如使用硫属化物相变材料(例如,硫属化物玻璃)的固态存储器设备、三维(3D)交叉点存储器、或包含忆阻器技术的存储器之类的各种主机设备、存储设备以及其它存储器设备一起使用。应认识到,取决于特定的应用,其它类型的存储器可以受益于具有根据本说明书的存储器操作的选择性噪声容许模式的存储器接口。
接口100的存储器控制器30被配置为对到存储器110和来自存储器110的输入操作和输出操作进行控制,存储器110包括位单元的阵列。因此,存储器控制器30被配置为响应于来自数据传送逻辑元件DTL1、DTL2…DTLn的存储器事务请求和系统地址而在存储器110的根据接收到的系统地址的存储器地址处执行存储器事务,例如,读取操作或写入操作。
存储器控制器30通过适当的并行或串行总线或其它数据路径118耦合到存储器110。例如,数据路径118可以是其中根据适当的事务协议来发送存储器事务请求、存储器地址、错误消息以及其它数据的总线。路径118还可以包括来自多级电源174的功率输出信号。应认识到,数据路径102a、102b…102n、118的硬件方面和传输协议可以取决于特定的应用而变化。
存储器控制器30包括选择性噪声容许存储器控制逻辑120,其被配置为提供根据本说明书的存储器操作的选择性存储器模式。每个存储器模式使如存储器110所表示的存储器根据对于由数据传送逻辑元件处理的工作负荷的数据的噪声容许级别来进行操作,该数据传送逻辑元件向存储器发出存储器事务请求以用于读取存储器中的数据以及将数据存储在存储器中的目的。随着对于由数据传送逻辑元件处理的工作负荷的数据的噪声容许级别改变,存储器110的存储器模式可以相应地改变。因此,在一个实施例中,选择性噪声容许存储器控制逻辑120包括噪声容许模式选择逻辑122,其被配置为根据对于由数据传送逻辑元件处理的工作负荷的数据的特定噪声容许级别来选择存储器的特定噪声容许模式,该数据传送逻辑元件向存储器发出存储器事务请求以用于读取存储器中的数据或将数据存储在存储器中的目的。
在一个实施例中,选择性噪声容许存储器控制逻辑120(图4)还包括命令逻辑134,其被配置为接收来自处理器的命令,例如,数据传送逻辑DTL1、DTL2…DTLn中的一个。因此,噪声容许模式选择逻辑122还被配置为响应于由命令逻辑134接收的命令而选择存储器模式。在一个实施例中,由命令逻辑134接收的命令可以包括标识选定的存储器模式的参数。图5是表示为描绘根据本说明书的各种存储器模式的示例的图表的数据结构,包括例如高噪声容许存储器模式、中噪声容许存储器模式以及低噪声容许存储器模式。虽然图5的图表描绘了存储器模式的三个示例,但是应认识到,采用根据本说明书的存储器操作的选择性噪声容许模式的系统可以取决于特定的应用而采用更少或更多的存储器模式。
因此,噪声容许模式选择逻辑122可以被配置为选择这样的噪声容许存储器模式:其如通过伴随由命令逻辑134接收的命令的存储器模式参数进行标识。在一些实施例中,标识选定的噪声容许模式的存储器模式参数可以存储在命令逻辑134的合适的数据结构138中。
图6示出了诸如数据传送逻辑DTL1的处理器的一个实施例,例如其包括命令逻辑150,该命令逻辑150被配置为向诸如存储器控制器30(图4)的存储器控制器发出包括标识选定的噪声容许模式的存储器模式参数的命令。接收方存储器控制器30的命令逻辑134对命令进行解码,并且接收方存储器控制器30的噪声容许模式选择逻辑122根据接收到并进行解码的命令中的标识选定的噪声容许模式的存储器模式参数来选择由存储器控制器30控制的存储器的噪声容许模式。
在该实施例中,数据传送逻辑DTL1还包括存储器事务逻辑156,其被配置为向存储器发出读取事务和写入事务。如下文更详细解释的,接收存储器模式标识命令的存储器控制器的存储器以选定的噪声容许模式进行操作,根据对于被处理的工作负荷的数据的噪声容许级别以选定的噪声容许模式来对被处理的工作负荷的数据进行读取、写入或存储。
在该实施例中,通过数据传送逻辑DTL1的噪声容许选择逻辑158(图6)来选择存储数据的存储器的噪声容许模式,噪声容许选择逻辑158被配置为例如根据对于由诸如数据传送逻辑DTL1的数据传送逻辑元件处理的工作负荷的数据的噪声容许级别来选择噪声容许模式。对于被处理的工作负荷的数据的噪声容许级别可以由噪声容许级别检测逻辑160进行检测。因此,噪声容许模式选择逻辑158根据由噪声容许级别检测逻辑160检测到的、对于例如由诸如数据传送逻辑DTL1的数据传送逻辑元件处理的工作负荷的数据的噪声容许级别来选择噪声容许模式。
例如,基于深度学习的算法经常用于诸如地图识别、音频/视频识别、视频概括等机器学习领域。这些算法的处理往往在这样的层中执行:其中一层的输出向更高的层提供输入。图7示出了具有以下三个处理层的处理算法的示例:工作负荷处理层1、工作负荷处理层2以及工作负荷处理层3。算法可以经常容许被处理的数据中的一定程度的“噪声”。如先前提及的,如本文使用的术语“噪声”,“噪声”是指被处理的数据中的错误。
在本文中应认识到,基于深度学习的算法和具有多层处理的其它算法往往从层到层展现出不同级别的噪声免疫或噪声容许。例如,与例如趋向于更抽象或复杂的上部处理层(例如,工作负荷处理层3)相比,初始处理层(例如,工作负荷处理层1(图7))例如趋向于更容许被处理的数据中的噪声。因此,处理层越抽象或复杂,越不容许由特定层处理的数据中的噪声。
例如,算法可以具有对表示例如陆块的海岸线的地图数据进行处理的初始层(例如,工作负荷处理层1)。通过插入两个相对靠近的数据点,可以计算出中间数据点的值的期望范围。如果中间数据点在期望范围之外,则中间数据点可以作为“噪声”被丢弃以改进初始处理层的结果。以此方式,初始层具有相对高的噪声容许程度。相反,对例如陆块区域数据进行处理的较高处理级别可以对于被处理的数据中的噪声具有更小的容许程度。
因此,在一个示例中,噪声容许级别检测逻辑160(图6)可以通过识别作为处理器的工作负荷被处理的算法的特定层来检测被处理的工作负荷的噪声容许级别。例如,如果被处理的层由噪声容许级别检测逻辑160(图6)检测为初始层(例如,工作负荷处理层1),则与该层相关联的噪声容许级别(例如,高噪声容许度)例如可以通过数据结构162的可编程查找表或其它数据结构来识别,数据结构162例如由图7的图表表示。作为响应,噪声容许模式选择逻辑158选择与所识别的噪声容许级别兼容的噪声容许模式(例如,高噪声容许存储器模式(图5)),并且命令逻辑150向存储器控制器30发出控制存储由检测到的层处理的数据的存储器在适当时将存储器的噪声容许模式切换为选定的噪声容许模式的命令。
在所示出的实施例中,描述了查找表或其它可编程数据结构以用于使算法的各种处理层与相关联的噪声容许级别相关。应认识到,可以采用其它技术来识别与所执行的处理层相关联的噪声容许级别。还应认识到,可以采用其它技术来根据对于由数据传送逻辑元件处理的工作负荷的数据的特定噪声容许级别来选择存储器的特定噪声容许模式,该数据传送逻辑元件向存储器发出存储器事务请求以用于读取存储器中的数据以及将数据存储在存储器中的目的。
在图6的实施例中,命令逻辑150、噪声容许模式选择逻辑158以及噪声容许级别检测逻辑160例如利用诸如数据传送逻辑DTL1的与处理器相关联的合适的软件、硬件或其组合来实现。应认识到,命令逻辑150、噪声容许模式选择逻辑158以及噪声容许级别检测逻辑160中的一个或多个的软件、硬件或其它组件中的一个或多个可以整体地或部分地位于采用根据本说明书的操作的选择性噪声容许模式的计算机的其它元件中。例如,命令逻辑150、噪声容许模式选择逻辑158以及噪声容许级别检测逻辑160中的一个或多个的软件、硬件或其它组件中的一个或多个可以整体地或部分地位于存储器控制器30及其相关联的软件(例如,存储器控制器30的驱动程序)中。
在本说明书的另一方面中,存储器的输入电压基于当前的工作负荷噪声免疫度或容许度(即,对于由将数据存储在存储器中以及从存储器读取数据的处理器执行的当前层的数据的噪声容许度或免疫度)来动态地缩放。在一个实施例中,存储器的输入功率的这种动态缩放能够动态地降低存储器消耗的功率以及降低主动泄漏。
在图4的实施例中,存储器控制器30的选择性噪声容许存储器控制逻辑120包括存储器输入功率模式选择逻辑170,其被配置为选择其中每个输入功率电平模式具有由多级电源174提供的相关联的可编程输入功率电平(图5)的输入功率电平模式。如上面指出的,当前执行工作负荷的层的数据处理器的噪声容许级别检测逻辑160(图6)检测被处理的工作负荷层的噪声容许级别。作为响应,噪声容许模式选择逻辑158选择与所识别的噪声容许级别兼容的噪声容许模式,并且命令逻辑150向存储器控制器30发出控制存储由检测到的层处理的数据的存储器在适当时将存储器的噪声容许模式切换为选定的噪声容许模式的命令。
因此,接收命令的存储器控制器的噪声容许模式选择逻辑122(图4)响应于由命令逻辑134接收的命令而根据检测到的被处理的工作负荷层的噪声容许级别来选择存储器模式。响应于由噪声容许模式选择逻辑122选择的存储器模式,存储器输入功率模式选择逻辑170选择具有相关联的存储器输入功率电平的输入功率模式。如图8所示,多级电源174包括例如调节器184(例如,低压差(LDO)调节器),其可以是直流(DC)线性电压调节器。LDO调节器在功率轨输入处接收功率,并且根据由存储器输入功率模式选择逻辑170提供的控制信号(“控制”)来以可选的、可编程的功率电平向多存储体存储器110(图4)的存储器存储体(在该示例中为存储体0)输出功率(图8的实施例中的指定的“可选存储器输入功率电平”)。以此方式,根据本说明书的一个方面的计算机系统具有被配置为根据被处理的工作负荷的噪声容许级别来选择存储器的输入功率电平的逻辑。
如先前提及的,图5是表示为描绘根据本说明书的以下各种噪声容许存储器模式的示例的图表的数据结构:包括例如高噪声容许存储器模式、中噪声容许存储器模式以及低噪声容许存储器模式。如图5的示例所示,每个噪声容许存储器模式具有相关联的输入功率电平。在该示例中,对于工作负荷的数据的噪声容许程度越大,存储器的输入功率可以降低得越多,以降低功率消耗。应认识到,在其它实施例中,噪声容许度与存储器的输入功率之间的关系可以取决于特定的应用而变化。
图9描绘了例如存储器(例如,图8的存储体0)的输入功率电平随着对于被处理的工作负荷的存储在存储体0中的数据的噪声容许度改变而动态地改变的示例。因此,在该示例中,如果对于被处理的工作负荷(例如,图7的工作负荷处理层1)的存储在存储体0中的数据的噪声容许度初始地处于高容许级别,则可以选择如图5和图9所示的具有相关联的存储体0的低输入功率电平的高噪声容许存储器模式。如果处理层改变而使得对于被处理的工作负荷的存储在存储体0中的数据的噪声容许度从高容许级别变成中容许级别(例如,图7的工作负荷处理层2的中噪声容许级别),则可以选择如图5和图9所示的具有相关联的存储体0(图8)的中输入功率电平的中噪声容许存储器模式。因此,存储体0(图8)的输入功率可以从高噪声容许存储器模式的低输入功率电平动态地升高到中噪声容许存储器模式的中输入功率电平。类似地,如果处理层再次改变而使得对于被处理的工作负荷的存储在存储体0(图8)中的数据的噪声容许度从中容许级别变成低容许级别(例如,图7的工作负荷处理层3的低噪声容许级别),则可以选择如图5和图9所示的具有相关联的存储体0的高输入功率电平的低噪声容许存储器模式。因此,存储体0(图8)的输入功率可以从中噪声容许存储器模式的中输入功率电平动态地升高到低噪声容许存储器模式的高输入功率电平。
以此方式,可以基于对于被处理的当前工作负荷的数据的噪声容许级别来动态地微调存储器存储体或存储器存储体的阵列的输入电压。作为结果,可以降低功率消耗以及主动泄漏。此外,在移动应用中,可以提高电池寿命。
应认识到,存储器输入功率的降低可能将一些位错误引入当前工作负荷的数据中。然而,在许多应用中,不期望这些错误将显著地影响程序结果,尤其是在对于数据中的噪声具有高或相对高的容许度的应用中。例如,表示特征图的输入数据典型地具有强空间相关级别,这赋予其自身相对高的噪声容许级别。
随着被处理的总体算法前进到可能对于数据中的噪声具有较低容许度或者可能以其它方式要求较高的存储器输入功率电平的后续层,存储器输入功率可以被上调至这些工作负荷所要求的电平。相信取决于应用,存储器输入功率电平的10%的降低可以节省动态功率和泄漏方面的20%降低的量级,代价是可容许的存储器错误。此外,取决于特定的应用,根据本说明书的选择性存储器输入功率技术对算法处理软件可以是透明的,并且无需依赖于数据格式转换。
出于提供示例的目的,图9描绘了存储器模式以及相关联的存储器输入功率电平的特定序列。然而,应认识到,噪声容许存储器模式以及相关联的存储器输入功率电平的变化可以以各种不同的序列动态地出现,这取决于特定的应用。因此,存储器输入功率电平可以例如直接地或通过中功率电平从高电平动态地变成低电平,并且反之亦然。
图10描绘了采用根据本说明书的一个方面的选择性存储器输入功率的计算机系统的存储器的多存储体实施例。在该实施例中,存储器110(图4)包括存储器的三个存储体:存储体1、存储体2以及存储体3,每个存储体存储对于存储在存储体中的数据的噪声具有相关联的容许级别的工作负荷层的数据。因此,提供给每个存储体(存储体1、存储体2以及存储体3)的存储器输入功率电平是对于存储在存储体中以用于相关联的工作负荷层的数据的噪声的相关联的容许级别的函数。
因此,在该示例中,从存储体1读取并且存储在存储体1中的数据例如由诸如图7的工作负荷处理层1的工作负荷处理层进行处理。因此,对于被处理的存储在存储体0中的工作负荷处理层1的数据的噪声容许度被确定为处于高噪声容许级别,如图7所示。在该示例中,工作负荷处理层1的输入数据是像素数据,如由图10中指示为“像素块1”的像素数据的块表示的。此外,存储在存储器存储体1中的像素数据具有强空间相关性,这赋予其自身相对高的噪声容许级别。因此,输入像素数据可以表示例如地图特征,或例如视频文件的视频数据。因此,对于存储器存储体1可以选择高噪声容许存储器模式,其中选定的存储器模式具有针对存储体1的相关联的低输入功率电平(指示为“低输入功率电平”),如图5和图10所示。
存储在存储器存储体1中的输入数据由工作负荷处理层1进行处理,如图10中标记为“高噪声容许工作负荷处理层1”的箭头表示的;并且作为输出数据输出并存储在存储器存储体2中,由图10中指示为“像素块2”的像素数据的块表示。由工作负荷处理层1处理并存储在存储器存储体2中的输出像素数据具有某种程度上较弱的空间相关性,这赋予其自身中噪声容许级别。因此,对于存储器存储体1可以选择中噪声容许存储器模式,其中选定的存储器模式具有针对存储器存储体2的相关联的中输入功率电平(指示为“中输入功率电平”),如图5和图10所示。
如由像素块2表示的存储在存储器存储体2中的数据由工作负荷处理层2进行处理,如图10中标记为“中噪声容许工作负荷处理层2”的箭头表示的,并且作为输出数据输出并存储在存储器存储体2中,由图10中指示为“像素块3”的像素数据的块表示。如同像素块2的像素数据一样,像素块3的像素数据与存储在存储器存储体1中的像素块1的像素数据相比具有某种程度上较弱的空间相关性,并且因此同样赋予其自身中噪声容许级别。因此,存储器存储体2的先前选定的中噪声容许存储器模式是适当的。如上文指出的,选定的中噪声容许存储器模式具有针对存储器存储体2的相关联的中输入功率电平(指示为“中输入功率电平”),如图5和图10所示。
用于工作负荷处理层3的如由像素块4表示的存储在存储器存储体2中的数据由工作负荷处理层3进行处理,如图10中标记为“低噪声容许工作负荷处理层3”的箭头表示的,并且作为输出数据输出并存储在存储器存储体3中,由图10中指示为“像素块5”的像素数据的块表示。由工作负荷处理层3处理并且存储在存储器存储体3中的输出像素数据与存储在存储器存储体2中的像素块2、块3以及块4的像素数据相比具有更弱的空间相关性,并且因此同样赋予其自身低噪声容许级别。因此,可以选择用于存储器存储体3的低噪声容许存储器模式,其具有针对存储器存储体3的相关联的高输入功率电平(指示为“高输入功率电平”),如图5和图10所示。
在一个实施例中,对于存储在存储器存储体(存储体1、存储体2以及存储体3)中的数据的噪声容许级别可以相对恒定,使得分别提供给存储器存储体(存储体1、存储体2以及存储体3)的存储器输入功率电平(低输入功率电平、中输入功率电平以及高输入功率电平)也可以保持相对恒定。在其它实施例中,如果一个或多个存储体的噪声容许级别变化,则存储体的存储器输入功率电平可以根据对于存储在特定存储体中的数据的变化的噪声容许级别而动态地变化。
出于提供示例的目的,图10描绘了存储器存储体的阵列的存储器模式和相关联的存储器输入功率电平的特别布置。然而,应认识到,噪声容许存储器模式和相关联的存储器输入功率电平可以以各种不同的级别和序列来布置,这取决于特定的应用。
图11描绘了采用根据本说明书的一个方面的选择性存储器输入功率的计算机系统的存储器的另一多存储体实施例。在该实施例中,存储器110(图4)包括存储器的两个存储体:存储体3A和存储体3B,每个存储体存储对于存储在存储体中的数据中的噪声具有相关联的容许级别的工作负荷层的数据字的一部分。图12示出了具有第一部分(表示为子单元1)和第二部分(表示为子单元0)的数据字的示例,在该示例中第一部分包括字的最高有效位,在该示例中第二部分包括字的最低有效位。字的最高有效位的子单元1存储在存储器存储体3A中,并且字的最低有效位的子单元0存储在存储器存储体3B中。
提供给每个存储体(存储体3A、存储体3B)的存储器输入功率电平是对于存储在存储体3A和存储体3B中的被处理的工作负荷层(例如,图10的工作负荷处理层3)的数据中的噪声的相关联的容许级别的函数。因此,在一个实施例中,图10的存储体3可以在图11的实施例中实现为两个存储体,存储体3A用于对于存储在存储器中的数据中的噪声具有相关联的低容许级别的工作负荷处理层3的数据字中的最高有效位的子单元1。另外,提供给每个存储体(存储体3A、存储体3B)的存储器输入功率电平也分别是存储在存储体(存储体3A和存储体3B)中的字部分的位的有效性的函数。
因此,在该示例中,从存储体3A和存储体3B读取并且存储在其中的数据例如由诸如图7、图10的工作负荷处理层3的工作负荷处理层进行处理。因此,对于被处理的工作负荷处理层3的存储在存储器中的数据的噪声容许度被确定为处于如图7所示的低噪声容许级别。因此,可以选择存储器存储体3A的低噪声容许存储器模式,其具有针对存储器存储体3A的相关联的高输入功率电平(从电压调节器LDO3A指示为“高输入功率电平”),如图11和图13所示,因为存储器存储体3A包含了被存储以用于工作负荷处理层3的数据字的最高有效位。因为存储器存储体3B存储有被存储以用于工作负荷处理层3的数据字的最低有效位,所以可以针对存储器存储体3B选择更容许噪声的存储器模式,如输入到存储器存储体3B的中输入功率电平(来自电压调节器LDO3B的“中输入功率电平”)所指示的,如图11和图13所示。因此,应认识到,与存储器存储体3A的存储器输入功率电平相比,存储器存储体3B的存储器输入功率的降低可能将一些位错误引入存储在存储器存储体3B中的当前工作负荷的数据中。然而,在很多应用中,不期望这些错误将显著地影响程序结果,尤其是在对于数据的最低有效位中的噪声具有高或相对高的容许度的应用中。
以类似的方式,存储用于图10的工作负荷处理层2的数据的存储器存储体2可以拆分成两个或更多个存储体,其用于被存储以用于图10的工作负荷处理层2的数据字的最高有效位和最低有效位。如表示为图13的图表的数据结构中指示的,存储数据字的最高有效位的存储器存储体可以在中噪声容许存储器模式下操作,如上文结合图10所描述的,并且存储用于工作负荷处理层2的数据字的最低有效位的存储器存储体可以在具有诸如高噪声容许度的更大噪声容许程度的存储器模式下操作,如图13的图表中指示的。
在图13的示例中,存储工作负荷处理层1的字的最高有效位和最低有效位的存储器部分具有选定的共同噪声容许级别,即,例如高噪声容许级别。在这样的实例中,取决于特定的应用,可以利用用于存储数据字的单个存储器存储体。
在图11的实施例中,多级电源174包括如由LDO调节器(LDO3A、LDO3B)表示的多个调节器,以响应于来自存储器输入功率模式选择逻辑170(图4)的适当控制信号而向各种存储器存储体提供多个可选的输入功率电平。以此方式,根据本说明书的一个方面的计算机系统具有被配置为根据被处理的工作负荷或多个工作负荷的噪声容许级别或多个噪声容许级别来选择一个或多个存储器设备的多个输入功率电平的逻辑。
图14描绘了采用根据本说明书的作为噪声容许级别的函数的选择性存储器输入功率的计算机系统的操作的一个实施例。在一个操作中,选择初始的存储器输入功率电平(框208)。因此,如上文结合图10所示的,例如可以分别针对存储器存储体1、存储体2以及存储体3选择低输入功率电平、中功率电平以及高输入功率电平。这样的初始存储器输入功率电平可以选择为例如默认值,或者可以结合所执行或待执行的工作负荷处理层根据初始检测到的对于存储在存储器存储体中的数据的噪声容许级别来进行选择。
例如,如上文结合图4的实施例描述的,存储器输入功率模式选择逻辑170选择其中每个输入功率电平模式具有由多级电源174提供的相关联的输入功率电平的输入功率电平模式,如图5的示例中所描绘的。在一个示例中,当前执行工作负荷的层的数据处理器的噪声容许级别检测逻辑160(图6)对被处理的工作负荷层的噪声容许级别进行检测。作为响应,噪声容许模式选择逻辑158选择与所识别的噪声容许级别兼容的噪声容许模式,并且命令逻辑150向存储器控制器30发出控制存储由检测到的层处理的数据的存储器在适当时将存储器的噪声容许模式切换为选定的噪声容许模式的命令。
因此,接收到命令的存储器控制器的噪声容许模式选择逻辑122(图4)响应于命令逻辑134接收到的命令而根据检测到的被处理的工作负荷层的噪声容许级别来选择存储器模式。响应于由噪声容许模式选择逻辑122选择的存储器模式,存储器输入功率模式选择逻辑170选择具有相关联的存储器的输入功率电平的输入功率模式。多级电源例如根据由存储器输入功率模式选择逻辑170提供的控制信号(“控制”),以可选功率电平将功率(在图8的实施例中表示为“可选存储器输入功率电平”)输出到诸如存储体1的存储器存储体。以此方式,根据本说明书的一个方面的计算机系统可以根据被处理的工作负荷的噪声容许级别来选择存储器的输入功率电平。
如图5的示例所示,每个噪声容许存储器模式具有相关联的输入功率电平。在该示例中,对于工作负荷的数据的噪声容许程度越大,存储器的输入功率可以降低得越多,以降低功率消耗。
关于对于工作负荷处理层的数据的噪声容许级别是否已经改变做出确定(图14,框224)。如果是,则选择适当的存储器输入功率电平(框230)。
如先前提及的,图9描绘了诸如图10的存储体1的存储器的输入功率电平随着对于被处理的工作负荷的存储在存储体1中的数据的噪声容许度改变而动态地改变的示例。因此,在该示例中,如果对于被处理的工作负荷(例如,图7的工作负荷处理层1)的存储在存储体1中的数据的噪声容许度初始处于高容许级别,则可以选择具有相关联的存储体1的低输入功率电平的高噪声容许存储器模式,如图5、图9以及图10所示。如果对于被处理的工作负荷的存储在存储体1中的数据的噪声容许度从高容许级别变为中容许级别(例如,图7的工作负荷处理层2的中噪声容许级别),则可以选择具有相关联的存储体1(图10)的中输入功率电平的中噪声容许存储器模式,如图5和图9所示。因此,存储体1(图10)的输入功率可以从高噪声容许存储器模式的低输入功率电平动态地升高到中噪声容许存储器模式的中输入功率电平。类似地,如果对于被处理的工作负荷的存储在存储体1(图10)中的数据的噪声容许度从中容许级别变为低容许级别(例如,图7的工作负荷处理层3的低噪声容许级别),则可以选择具有相关联的存储体1的高输入功率电平的低噪声容许存储器模式,如图5和图9所示。因此,存储体1(图10)的输入功率可以从中噪声容许存储器模式的中输入功率电平动态地升高到低噪声容许存储器模式的高输入功率电平。
以此方式,可以基于对于被处理的当前工作负荷的数据的噪声容许级别来动态地微调存储器存储体或存储器存储体的阵列的输入电压。作为结果,可以降低功率消耗以及主动泄漏。此外,在移动应用中,可以提高电池寿命。
应认识到,存储器输入功率的降低可能将一些位错误引入当前工作负荷的数据中。然而,如上文所阐述的,在许多应用中,不期望这些错误将显著地影响程序结果,尤其是在对于数据中的噪声具有高或相对高的容许度的应用中。例如,表示特征图的输入数据典型地具有强空间相关性,这赋予其自身相对高的噪声容许级别。
上文论证了随着被处理的总体算法前进到可能对于数据中的噪声具有较低容许度或者可能以其它方式要求较高的存储器输入功率电平的后续层,存储器输入功率可以被上调至这些工作负荷所要求的电平。此外,取决于的特定应用,根据本说明书的选择性存储器输入功率技术对算法处理软件可以是透明的,并且无需依赖于数据格式转换。
应认识到,图中所描绘的操作可以由具有存储器操作的选择性噪声容许模式的存储器接口逻辑利用除了图中所描绘的之外的架构并且采用其它类型的逻辑组件来执行。本文所讨论的包括图中描绘的逻辑元件的逻辑组件可以被配置为使用适当的硬件、软件或固件、或其各种组合来执行所描述的操作。例如,软件可以以固件、程序、驱动程序以及其它指令集的形式,并且硬件可以以诸如微处理器的通用逻辑设备或诸如存储器控制器、DMA控制器或引擎或ASIC设备的专用逻辑设备的形式。
用于采用根据本说明书的存储器操作的选择性噪声容许模式的设备的硬件、软件或固件可以物理地或逻辑地位于包括存储器自身、诸如存储器控制器的控制器、DMA控制器、微处理器等的系统的任何组件中。因此,在一个实施例中,图中所描绘的存储器接口逻辑元件中的一个或多个可以利用存储器控制器的硬件、存储器控制器的固件以及软件(例如,存储器控制器的相关联的驱动程序软件)中的一个或多个来实现。在另一实施例中,图中所描绘的存储器接口逻辑元件中的一个或多个可以例如利用诸如中央处理器单元的控制器硬件、或其它控制器、用于控制器硬件的固件以及用于控制器硬件的软件(例如,由诸如中央处理单元的控制器硬件执行的程序和驱动程序)中的一个或多个来实现。在另一实施例中,图中所描绘的存储器接口逻辑元件中的一个或多个可以例如利用用于卸载数据传送引擎和中央处理单元两者的硬件、固件或软件来实现。
应认识到,采用根据本说明书的存储器操作的选择性噪声容许模式的设备可以取决于特定的应用而能够降低功率消耗。取决于特定的应用,可以实现其它方面。
示例
下面的示例涉及另外的实施例。
示例1是一种与存储器一起使用的装置,包括:
存储器控制器,其具有被配置为根据工作负荷的噪声容许级别来选择存储器的输入功率电平的输入功率模式选择逻辑,其中,工作负荷包括具有第一噪声容许级别的第一工作负荷以及具有第二噪声容许级别的第二工作负荷,存储器控制器还具有被配置为向存储器提供选定的功率电平的多级电源。
在示例2中,示例1-9的主题(不包括本示例)可以可选地包括,其中,第二工作负荷的第二噪声容许级别比第一工作负荷的第一噪声容许级别低,并且其中,与第二工作负荷相关联的输入到存储器的功率电平比与第一工作负荷相关联的输入到存储器的功率电平高。
在示例3中,示例1-9的主题(不包括本示例)可以可选地包括,其中,输入功率模式选择逻辑被配置为,根据工作负荷从具有第一噪声容许级别的第一工作负荷到具有比第一噪声容许级别低的第二噪声容许级别的第二工作负荷的改变,动态地升高输入到存储器的功率。
在示例4中,示例1-9的主题(不包括本示例)可以可选地包括,其中,第一工作负荷是深度学习神经网络的第一层,并且第二工作负荷是深度学习神经网络的第二、后续层。
在示例5中,示例1-9的主题(不包括本示例)可以可选地包括,其中,深度学习神经网络的第一层被配置为对具有第一空间相关级别的数据进行处理,并且深度学习神经网络的第二层被配置为对具有第二空间相关级别的数据进行处理,第二空间相关级别比第一空间相关级别的数据的空间相关级别弱。
在示例6中,示例1-9的主题(不包括本示例)可以可选地包括,其中,存储器包括第一存储体和第二存储体,并且其中,存储器控制器被配置为将具有数据位的第一子单元和第二子单元的数据单元存储在存储器中,包括将位的第一子单元存储在存储器的第一存储体中,以及将位的第二子单元存储在存储器的第二存储体中,其中,第一子单元的位比第二子单元的位更有效。
在示例7中,示例1-9的主题(不包括本示例)可以可选地包括,其中,存储器控制器的多级电源被配置为以选定电平将输入功率提供给存储器的第一存储体和第二存储体,其中,输入功率模式选择逻辑被配置为将存储器的第一存储体的输入功率电平选择为处于比存储器的第二存储体的选定输入功率电平高的功率电平。
在示例8中,示例1-9的主题(不包括本示例)可以可选地包括,其中,存储器控制器还被配置为,根据工作负荷从具有第一噪声容许级别的第一工作负荷到具有比第一噪声容许级别低的第二噪声容许级别的第二工作负荷的改变,动态地升高输入到存储器的第一存储体和第二存储体中的至少一个的功率。
在示例9中,示例1-9的主题(不包括本示例)可以可选地包括一种系统,所述系统包括处理器、存储器、所述存储器控制器以及以下中的至少一个:
与处理器通信地耦合的显示器,与中央处理单元通信地耦合的网络接口,以及耦合以向系统提供电力的电池。
示例10是一种方法,包括:
以第一功率电平向存储器输入功率,
使用处理器和存储器,对具有第一噪声容许级别的第一工作负荷进行处理,
使用处理器和存储器,对具有与第一噪声容许级别不同的第二噪声容许级别的第二工作负荷进行处理,以及
根据被处理的工作负荷的噪声容许级别,以与第一功率电平不同的第二功率电平向存储器输入功率。
在示例11中,示例10-17的主题(不包括本示例)可以可选地包括,其中,第二工作负荷的第二噪声容许级别比第一工作负荷的第一噪声容许级别低,并且其中,在第二工作负荷被处理时输入到存储器的功率的第二功率电平比在第一工作负荷被处理时输入到存储器的功率的第一功率电平高。
在示例12中,示例10-17的主题(不包括本示例)可以可选地包括,根据将由处理器和存储器处理的工作负荷从具有第一噪声容许级别的第一工作负荷改变为具有比第一噪声容许级别低的第二噪声容许级别的第二工作负荷,将输入到存储器的功率从第一功率电平动态地升高到第二电平。
在示例13中,示例10-17的主题(不包括本示例)可以可选地包括,其中,第一工作负荷是深度学习神经网络的第一层,并且第二工作负荷是深度学习神经网络的第二、后续层。
在示例14中,示例10-17的主题(不包括本示例)可以可选地包括,其中,深度学习神经网络的第一层对具有第一空间相关级别的数据进行处理,并且深度学习神经网络的第二层对具有第二空间相关级别的数据进行处理,第二空间相关级别比第一空间相关级别的数据的空间相关级别弱。
在示例15中,示例10-17的主题(不包括本示例)可以可选地包括,将数据单元存储在存储器中,其中,存储包括将位的第一子单元存储在存储器的第一存储体中,以及将位的第二子单元存储在存储器的第二存储体中,其中,第一子单元的位比第二子单元的位更有效。
在示例16中,示例10-17的主题(不包括本示例)可以可选地包括,向存储器的第一存储体和第二存储体输入功率,其中,功率以比输入到存储器的第二存储体的功率高的功率电平被输入到存储器的第一存储体。
在示例17中,示例10-17的主题(不包括本示例)可以可选地包括,根据由处理器和存储处理的工作负荷从具有第一噪声容许级别的第一工作负荷改变为具有比第一噪声容许级别低的第二噪声容许级别的第二工作负荷,动态地升高输入到存储器的第一存储体和第二存储体中的至少一个的功率。
示例18是一种装置,包括用于执行如任一前述权利要求所要求保护的方法的模块。
示例19是一种系统,包括:
处理器,其被配置为对具有噪声容许级别的工作负荷进行处理,
存储器,以及
控制器,其被配置为根据工作负荷的噪声容许级别来选择存储器的输入功率电平,其中,工作负荷包括具有第一噪声容许级别的第一工作负荷以及具有第二噪声容许级别的第二工作负荷。
在示例20中,示例19-26的主题(不包括本示例)可以可选地包括,其中,第二工作负荷的第二噪声容许级别比第一工作负荷的第一噪声容许级别低,并且其中,与第二工作负荷相关联的输入到存储器的功率电平比与被处理的第一工作负荷相关联的输入到存储器的功率电平高。
在示例21中,示例19-26的主题(不包括本示例)可以可选地包括,其中,控制器被配置为,根据处理器和存储器的工作负荷从具有第一噪声容许级别的第一工作负荷改变为具有比第一噪声容许级别低的第二噪声容许级别的第二工作负荷,动态地升高输入到存储器的功率。
在示例22中,示例19-26的主题(不包括本示例)可以可选地包括,其中,第一工作负荷是深度学习神经网络的第一层,并且第二工作负荷是深度学习神经网络的第二、后续层。
在示例23中,示例19-26的主题(不包括本示例)可以可选地包括,其中,深度学习神经网络的第一层被配置为对具有第一空间相关级别的数据进行处理,并且深度学习神经网络的第二层被配置为对具有第二空间相关级别的数据进行处理,第二空间相关级别比第一空间相关级别的数据的空间相关级别弱。
在示例24中,示例19-26的主题(不包括本示例)可以可选地包括,其中,存储器包括第一存储体和第二存储体,并且控制器还被配置为将具有数据位的第一子单元和第二子单元的数据单元存储在存储器中,包括将位的第一子单元存储在存储器的第一存储体中,以及将位的第二子单元存储在存储器的第二存储体中,其中,第一子单元的位比第二子单元的位更有效。
在示例25中,示例19-26的主题(不包括本示例)可以可选地包括,其中,控制器被配置为向存储器的第一存储体和第二存储体提供输入功率,其中,功率以比输入到存储器的第二存储体的功率高的功率电平被输入到存储器的第一存储体。
在示例26中,示例19-26的主题(不包括本示例)可以可选地包括,其中,控制器还被配置为,根据处理器和存储器的工作负荷从具有第一噪声容许级别的第一工作负荷到具有比第一噪声容许级别低的第二噪声容许级别的第二工作负荷的改变,动态地升高输入到存储器的第一存储体和第二存储体中的至少一个的功率。
示例27是一种与存储器一起使用的装置,包括:
存储器控制器,其具有用于根据工作负荷的噪声容许级别来选择存储器的输入功率电平的输入功率模式选择逻辑模块,其中,工作负荷包括具有第一噪声容许级别的第一工作负荷以及具有第二噪声容许级别的第二工作负荷,存储器控制器还具有用于向存储器提供选定的功率电平的多级电源模块。
在示例28中,示例27-34的主题(不包括本示例)可以可选地包括,其中,第二工作负荷的第二噪声容许级别比第一工作负荷的第一噪声容许级别低,并且其中,与第二工作负荷相关联的输入到存储器的功率电平比与第一工作负荷相关联的输入到存储器的功率电平高。
在示例29中,示例27-34的主题(不包括本示例)可以可选地包括,其中,输入功率模式选择逻辑模块还被配置用于,根据工作负荷从具有第一噪声容许级别的第一工作负荷到具有比第一噪声容许级别低的第二噪声容许级别的第二工作负荷的改变,动态地升高输入到存储器的功率。
在示例30中,示例27-34的主题(不包括本示例)可以可选地包括,其中,第一工作负荷是深度学习神经网络的第一层,并且第二工作负荷是深度学习神经网络的第二、后续层。
在示例31中,示例27-34的主题(不包括本示例)可以可选地包括,其中,深度学习神经网络具有用于对具有第一空间相关级别的数据进行处理的第一层模块,以及用于对具有第二空间相关级别的数据进行处理的第二层模块,第二空间相关级别比第一空间相关级别的数据的空间相关级别弱。
在示例32中,示例27-34的主题(不包括本示例)可以可选地包括,其中,存储器包括第一存储体和第二存储体,并且其中,存储器控制器具有用于将具有数据位的第一子单元和第二子单元的数据单元存储在存储器中的数据存储模块,包括将位的第一子单元存储在存储器的第一存储体中,以及将位的第二子单元存储在存储器的第二存储体中,其中,第一子单元的位比第二子单元的位更有效。
在示例33中,示例27-34的主题(不包括本示例)可以可选地包括,其中,存储器控制器的多级电源模块还被配置用于以选定电平将输入功率提供给存储器的第一存储体和第二存储体,其中,输入功率模式选择逻辑模块还被配置用于将存储器的第一存储体的输入功率电平选择为处于比存储器的第二存储体的选定输入功率电平高的功率电平。
在示例34中,示例27-34的主题(不包括本示例)可以可选地包括,其中,存储器控制器具有用于以下的模块:根据工作负荷从具有第一噪声容许级别的第一工作负荷到具有比第一噪声容许级别低的第二噪声容许级别的第二工作负荷的改变,动态地升高输入到存储器的第一存储体和第二存储体中的至少一个的功率。
示例35是一种用于计算系统的计算机程序产品,其中,计算机程序产品包括具有与其一起实施的程序指令的计算机可读存储介质,程序指令可由计算系统的处理器执行以引起操作,该操作包括:
以第一功率电平向存储器输入功率,
对具有第一噪声容许级别的第一工作负荷进行处理,
对具有与第一噪声容许级别不同的第二噪声容许级别的第二工作负荷进行处理,以及
根据被处理的工作负荷的噪声容许级别,以与第一功率电平不同的第二功率电平向存储器输入功率。
在示例36中,示例35-42的主题(不包括本示例)可以可选地包括,其中,第二工作负荷的第二噪声容许级别比第一工作负荷的第一噪声容许级别低,并且其中,在第二工作负荷被处理时输入到存储器的功率的第二功率电平比在第一工作负荷被处理时输入到存储器的功率的第一功率电平高。
在示例37中,示例35-42的主题(不包括本示例)可以可选地包括,其中,操作还包括:根据将由处理器和存储器处理的工作负荷从具有第一噪声容许级别的第一工作负荷改变为具有比第一噪声容许级别低的第二噪声容许级别的第二工作负荷,将输入到存储器的功率从第一功率电平动态地升高到第二电平。
在示例38中,示例35-42的主题(不包括本示例)可以可选地包括,其中,第一工作负荷是深度学习神经网络的第一层,并且第二工作负荷是深度学习神经网络的第二、后续层。
在示例39中,示例35-42的主题(不包括本示例)可以可选地包括,其中,深度学习神经网络的第一层对具有第一空间相关级别的数据进行处理,并且深度学习神经网络的第二层对具有第二空间相关级别的数据进行处理,第二空间相关级别比第一空间相关级别的数据的空间相关级别弱。
在示例40中,示例35-42的主题(不包括本示例)可以可选地包括,其中,操作还包括:将数据单元存储在存储器中,其中,存储包括将位的第一子单元存储在存储器的第一存储体中,以及将位的第二子单元存储在存储器的第二存储体中,其中,第一子单元的位比第二子单元的位更有效。
在示例41中,示例35-42的主题(不包括本示例)可以可选地包括,其中,操作还包括:向存储器的第一存储体和第二存储体输入功率,其中,功率以比输入到存储器的第二存储体的功率高的功率电平被输入到存储器的第一存储体。
在示例42中,示例35-42的主题(不包括本示例)可以可选地包括,其中,操作还包括:根据由处理器和存储处理的工作负荷从具有第一噪声容许级别的第一工作负荷改变为具有比第一噪声容许级别低的第二噪声容许级别的第二工作负荷,动态地升高输入到存储器的第一存储体和第二存储体中的至少一个的功率。
所描述的操作可以实现为使用标准编程和/或工程技术来生产软件、固件、硬件或其任意组合的方法、装置或计算机程序产品。所描述的操作可以实现为在“计算机可读存储介质”中维持的计算机程序代码,其中处理器可以从计算机存储可读介质读取代码并且执行该代码。计算机可读存储介质包括电子电路、存储材料、无机材料、有机材料、生物材料、外壳、壳体、涂层以及硬件中的至少一个。计算机可读存储介质可以包括但不限于,磁存储介质(例如,硬盘驱动器、软盘、磁带等)、光存储装置(CD-ROM、DVD、光盘等)、易失性和非易失性存储器设备(例如,EEPROM、ROM、PROM、RAM、DRAM、SRAM、闪速存储器、固件、可编程逻辑等)、固态设备(SSD)等。实现所描述的操作的代码还可以以在硬件设备(例如,集成电路芯片、可编程门阵列(PGA)、专用集成电路(ASIC)等)中实现的硬件逻辑来实现。此外,实现所描述的操作的代码可以以“传输信号”来实现,其中传输信号可以通过空间或通过诸如光纤、铜线等的传输介质传播。其中代码或逻辑被编码的传输信号还可以包括无线信号、卫星传输、无线电波、红外信号、蓝牙等。嵌入到计算机可读存储介质上的程序代码可以作为传输信号从发送站或计算机发送到接收站或计算机。计算机可读存储介质不仅仅包括传输信号。本领域技术人员将意识到,可以在不脱离本说明书的范围的情况下对该配置进行许多修改,并且制品可以包括本领域已知的合适的信息承载介质。当然,本领域技术人员将意识到,可以在不脱离本说明书的范围的情况下对该配置进行许多修改,并且制品可以包括本领域已知的任何有形的信息承载介质。
在某些应用中,根据本说明书的设备可以体现在包括视频控制器、设备驱动器以及网络控制器的计算机系统中,视频控制器使得信息显示在监视器或与计算机系统耦合的其它显示器上,例如,计算机系统包括台式机、工作站、服务器、主机、膝上型计算机、手持式计算机等。可替代地,设备实施例可以体现在例如不包括视频控制器的计算设备(例如,交换机、路由器等)或例如不包括网络控制器的计算设备中。
图中所示的逻辑可以显示按一定次序发生的某些事件。在替代实施例中,某些操作可以按不同的次序来执行、修改或移除。此外,操作可以添加到上述逻辑中并且仍然符合所描述的实施例。此外,本文所描述的操作可以顺序地发生或者某些操作可以并行地处理。此外,可以由单个处理单元或由分布式处理单元来执行操作。
已经出于说明和描述的目的而呈现了对各种实施例的以上描述。并非旨在穷尽性的,或限制为所公开的确切形式。根据上述教导,许多修改和变化是可能的。

Claims (24)

1.一种与存储器一起使用的装置,包括:
存储器控制器,其具有被配置为根据工作负荷的噪声容许级别来选择所述存储器的输入功率电平的输入功率模式选择逻辑,其中,所述工作负荷包括具有第一噪声容许级别的第一工作负荷以及具有第二噪声容许级别的第二工作负荷,所述存储器控制器还具有被配置为向所述存储器提供选定的功率电平的多级电源。
2.根据权利要求1所述的装置,其中,所述第二工作负荷的第二噪声容许级别比所述第一工作负荷的第一噪声容许级别低,并且其中,与所述第二工作负荷相关联的输入到所述存储器的功率电平比与所述第一工作负荷相关联的输入到所述存储器的功率电平高。
3.根据权利要求2所述的装置,其中,所述输入功率模式选择逻辑被配置为,根据工作负荷从具有所述第一噪声容许级别的所述第一工作负荷到具有比所述第一噪声容许级别低的所述第二噪声容许级别的所述第二工作负荷的改变,动态地升高输入到所述存储器的功率。
4.根据权利要求3所述的装置,其中,所述第一工作负荷是深度学习神经网络的第一层,并且所述第二工作负荷是所述深度学习神经网络的第二、后续层。
5.根据权利要求4所述的装置,其中,所述深度学习神经网络的第一层被配置为对具有第一空间相关级别的数据进行处理,并且所述深度学习神经网络的第二层被配置为对具有第二空间相关级别的数据进行处理,所述第二空间相关级别比所述第一空间相关级别的数据的空间相关级别弱。
6.根据权利要求1所述的装置,其中,所述存储器包括第一存储体和第二存储体,并且其中,所述存储器控制器被配置为将具有数据位的第一子单元和第二子单元的数据单元存储在所述存储器中,包括将位的所述第一子单元存储在所述存储器的第一存储体中,以及将位的所述第二子单元存储在所述存储器的第二存储体中,其中,所述第一子单元的位比所述第二子单元的位更有效。
7.根据权利要求6所述的装置,其中,所述存储器控制器的多级电源被配置为以选定电平将输入功率提供给所述存储器的第一存储体和第二存储体,其中,所述输入功率模式选择逻辑被配置为将所述存储器的第一存储体的输入功率电平选择为处于比所述存储器的第二存储体的选定输入功率电平高的功率电平。
8.根据权利要求7所述的装置,其中,所述存储器控制器还被配置为,根据工作负荷从具有所述第一噪声容许级别的所述第一工作负荷到具有比所述第一噪声容许级别低的所述第二噪声容许级别的所述第二工作负荷的改变,动态地升高输入到所述存储器的第一存储体和第二存储体中的至少一个的功率。
9.一种方法,包括:
以第一功率电平向存储器输入功率;
使用处理器和所述存储器,对具有第一噪声容许级别的第一工作负荷进行处理;
使用所述处理器和所述存储器,对具有与所述第一噪声容许级别不同的第二噪声容许级别的第二工作负荷进行处理;以及
根据被处理的工作负荷的噪声容许级别,以与所述第一功率电平不同的第二功率电平向所述存储器输入功率。
10.根据权利要求9所述的方法,其中,所述第二工作负荷的第二噪声容许级别比所述第一工作负荷的第一噪声容许级别低,并且其中,在所述第二工作负荷被处理时输入到所述存储器的功率的所述第二功率电平比在所述第一工作负荷被处理时输入到所述存储器的功率的所述第一功率电平高。
11.根据权利要求10所述的方法,还包括,根据将由所述处理器和所述存储器处理的工作负荷从具有所述第一噪声容许级别的所述第一工作负荷改变为具有比所述第一噪声容许级别低的所述第二噪声容许级别的所述第二工作负荷,将输入到所述存储器的功率从所述第一功率电平动态地升高到所述第二电平。
12.根据权利要求11所述的方法,其中,所述第一工作负荷是深度学习神经网络的第一层,并且所述第二工作负荷是所述深度学习神经网络的第二、后续层。
13.根据权利要求12所述的方法,其中,所述深度学习神经网络的第一层对具有第一空间相关级别的数据进行处理,并且所述深度学习神经网络的第二层对具有第二空间相关级别的数据进行处理,所述第二空间相关级别比所述第一空间相关级别的数据的空间相关级别弱。
14.根据权利要求9所述的方法,还包括将数据单元存储在所述存储器中,其中,存储包括将位的第一子单元存储在所述存储器的第一存储体中,以及将位的第二子单元存储在所述存储器的第二存储体中,其中,所述第一子单元的位比所述第二子单元的位更有效。
15.根据权利要求14所述的方法,还包括向所述存储器的第一存储体和第二存储体输入功率,其中,功率以比输入到所述存储器的第二存储体的功率高的功率电平被输入到所述存储器的第一存储体。
16.根据权利要求15所述的方法,还包括,根据由所述处理器和所述存储处理的工作负荷从具有所述第一噪声容许级别的所述第一工作负荷改变为具有比所述第一噪声容许级别低的所述第二噪声容许级别的所述第二工作负荷,动态地升高输入到所述存储器的第一存储体和第二存储体中的至少一个的功率。
17.一种系统,包括:
处理器,其被配置为对具有噪声容许级别的工作负荷进行处理;
存储器;以及
控制器,其被配置为根据工作负荷的噪声容许级别来选择所述存储器的输入功率电平,其中,所述工作负荷包括具有第一噪声容许级别的第一工作负荷以及具有第二噪声容许级别的第二工作负荷。
18.根据权利要求17所述的系统,其中,所述第二工作负荷的第二噪声容许级别比所述第一工作负荷的第一噪声容许级别低,并且其中,与所述第二工作负荷相关联的输入到所述存储器的功率电平比与被处理的所述第一工作负荷相关联的输入到所述存储器的功率电平高。
19.根据权利要求18所述的系统,其中,所述控制器被配置为,根据所述处理器和所述存储器的工作负荷从具有所述第一噪声容许级别的所述第一工作负荷改变为具有比所述第一噪声容许级别低的所述第二噪声容许级别的所述第二工作负荷,动态地升高输入到所述存储器的功率。
20.根据权利要求19所述的系统,其中,所述第一工作负荷是深度学习神经网络的第一层,并且所述第二工作负荷是所述深度学习神经网络的第二、后续层。
21.根据权利要求20所述的系统,其中,所述深度学习神经网络的第一层被配置为对具有第一空间相关级别的数据进行处理,并且所述深度学习神经网络的第二层被配置为对具有第二空间相关级别的数据进行处理,所述第二空间相关级别比所述第一空间相关级别的数据的空间相关级别弱。
22.根据权利要求17所述的系统,其中,所述存储器包括第一存储体和第二存储体,并且所述控制器还被配置为将具有数据位的第一子单元和第二子单元的数据单元存储在所述存储器中,包括将位的所述第一子单元存储在所述存储器的第一存储体中,以及将位的所述第二子单元存储在所述存储器的第二存储体中,其中,所述第一子单元的位比所述第二子单元的位更有效。
23.根据权利要求22所述的系统,其中,所述控制器被配置为向所述存储器的第一存储体和第二存储体提供输入功率,其中,功率以比输入到所述存储器的第二存储体的功率高的功率电平被输入到所述存储器的第一存储体。
24.根据权利要求23所述的系统,其中,所述控制器还被配置为,根据所述处理器和所述存储器的工作负荷从具有所述第一噪声容许级别的所述第一工作负荷到具有比所述第一噪声容许级别低的所述第二噪声容许级别的所述第二工作负荷的改变,动态地升高输入到所述存储器的第一存储体和第二存储体中的至少一个的功率。
CN201810213457.9A 2017-03-30 2018-03-15 存储器中的操作的选择性噪声容许模式 Pending CN108694019A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/475,029 2017-03-30
US15/475,029 US20180285732A1 (en) 2017-03-30 2017-03-30 Selective noise tolerance modes of operation in a memory

Publications (1)

Publication Number Publication Date
CN108694019A true CN108694019A (zh) 2018-10-23

Family

ID=61683580

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810213457.9A Pending CN108694019A (zh) 2017-03-30 2018-03-15 存储器中的操作的选择性噪声容许模式

Country Status (3)

Country Link
US (1) US20180285732A1 (zh)
EP (1) EP3382565B1 (zh)
CN (1) CN108694019A (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11294747B2 (en) 2018-01-31 2022-04-05 Advanced Micro Devices, Inc. Self-regulating power management for a neural network system
US10290348B1 (en) * 2018-02-12 2019-05-14 Sandisk Technologies Llc Write-once read-many amorphous chalcogenide-based memory
US11257543B2 (en) 2019-06-25 2022-02-22 Stmicroelectronics International N.V. Memory management device, system and method
US11454941B2 (en) 2019-07-12 2022-09-27 Micron Technology, Inc. Peak power management of dice in a power network
US11079829B2 (en) * 2019-07-12 2021-08-03 Micron Technology, Inc. Peak power management of dice in a power network
US11360667B2 (en) * 2019-09-09 2022-06-14 Stmicroelectronics S.R.L. Tagged memory operated at lower vmin in error tolerant system
DE102020203024A1 (de) 2020-03-10 2021-09-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung eingetragener Verein Widerstandsnetzwerk
US11175837B2 (en) 2020-03-16 2021-11-16 Micron Technology, Inc. Quantization of peak power for allocation to memory dice
US11733763B2 (en) * 2020-08-06 2023-08-22 Micron Technology, Inc. Intelligent low power modes for deep learning accelerator and random access memory

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1804778A (zh) * 2005-01-13 2006-07-19 普安科技股份有限公司 冗余存储虚拟化计算机系统
US20110029471A1 (en) * 2009-07-30 2011-02-03 Nec Laboratories America, Inc. Dynamically configurable, multi-ported co-processor for convolutional neural networks
US20120284587A1 (en) * 2008-06-18 2012-11-08 Super Talent Electronics, Inc. Super-Endurance Solid-State Drive with Endurance Translation Layer (ETL) and Diversion of Temp Files for Reduced Flash Wear
CN103282891A (zh) * 2010-08-16 2013-09-04 甲骨文国际公司 用于使用神经网络来进行有效的缓存的系统和方法
CN103324581A (zh) * 2012-03-23 2013-09-25 群联电子股份有限公司 编程存储单元与数据读取方法、存储器控制器与储存装置
CN104810042A (zh) * 2014-01-29 2015-07-29 爱思开海力士有限公司 使用最小操作功率的系统和存储器件的电源电压设置方法
US20160093343A1 (en) * 2014-09-30 2016-03-31 Samsung Electronics Co., Ltd. Low power computation architecture
CN105549901A (zh) * 2015-12-07 2016-05-04 中国电子科技集团公司第十研究所 星载综合化海量数据存储与回放设备
US20160148079A1 (en) * 2014-11-21 2016-05-26 Adobe Systems Incorporated Object detection using cascaded convolutional neural networks
EP3035204A1 (en) * 2014-12-19 2016-06-22 Intel Corporation Storage device and method for performing convolution operations

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002132700A (ja) * 2000-10-25 2002-05-10 Casio Electronics Co Ltd メモリモジュールへの電力供給制御装置
US8812889B2 (en) * 2010-05-05 2014-08-19 Broadcom Corporation Memory power manager
US9224089B2 (en) * 2012-08-07 2015-12-29 Qualcomm Incorporated Method and apparatus for adaptive bit-allocation in neural systems
US10262259B2 (en) * 2015-05-08 2019-04-16 Qualcomm Incorporated Bit width selection for fixed point neural networks

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1804778A (zh) * 2005-01-13 2006-07-19 普安科技股份有限公司 冗余存储虚拟化计算机系统
US20120284587A1 (en) * 2008-06-18 2012-11-08 Super Talent Electronics, Inc. Super-Endurance Solid-State Drive with Endurance Translation Layer (ETL) and Diversion of Temp Files for Reduced Flash Wear
US20110029471A1 (en) * 2009-07-30 2011-02-03 Nec Laboratories America, Inc. Dynamically configurable, multi-ported co-processor for convolutional neural networks
CN103282891A (zh) * 2010-08-16 2013-09-04 甲骨文国际公司 用于使用神经网络来进行有效的缓存的系统和方法
CN103324581A (zh) * 2012-03-23 2013-09-25 群联电子股份有限公司 编程存储单元与数据读取方法、存储器控制器与储存装置
CN104810042A (zh) * 2014-01-29 2015-07-29 爱思开海力士有限公司 使用最小操作功率的系统和存储器件的电源电压设置方法
US20160093343A1 (en) * 2014-09-30 2016-03-31 Samsung Electronics Co., Ltd. Low power computation architecture
US20160148079A1 (en) * 2014-11-21 2016-05-26 Adobe Systems Incorporated Object detection using cascaded convolutional neural networks
EP3035204A1 (en) * 2014-12-19 2016-06-22 Intel Corporation Storage device and method for performing convolution operations
CN105549901A (zh) * 2015-12-07 2016-05-04 中国电子科技集团公司第十研究所 星载综合化海量数据存储与回放设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BERT MOONS等: ""energy-efficient convNets through approximate computing"", 《2016 IEEE WINTER CONFERENCE ON APPLICATION OF COMPUTER VISION》, 10 March 2016 (2016-03-10), pages 1 - 8, XP032904303, DOI: 10.1109/WACV.2016.7477614 *
CHEN MING等: "" Coordinating processor and main memory for efficient server power control "", 《DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER》, 31 December 2012 (2012-12-31), pages 1 - 11 *

Also Published As

Publication number Publication date
US20180285732A1 (en) 2018-10-04
EP3382565B1 (en) 2019-10-23
EP3382565A1 (en) 2018-10-03

Similar Documents

Publication Publication Date Title
CN108694019A (zh) 存储器中的操作的选择性噪声容许模式
CN103988183B (zh) 2级存储器分级结构中的存储器侧高速缓存的动态部分断电
CN103946812B (zh) 用于实现多级别存储器分级体系的设备和方法
CN104541256B (zh) 智能远存储器带宽缩放
CN103680594B (zh) 降低写失败的存储器件、包括该存储器件的系统及其方法
CN105745627B (zh) 用于非易失性存储器存储设备的地址转换
CN106445843B (zh) 使物理页面地址相关用于软判决解码
US10496335B2 (en) Method and apparatus for performing multi-object transformations on a storage device
CN107193486A (zh) 数据存储设备和包括该数据存储设备的数据处理系统
CN106681652B (zh) 存储器管理方法、存储器控制电路单元与存储器存储装置
US10389380B2 (en) Efficient data path architecture for flash devices configured to perform multi-pass programming
CN108694096A (zh) 控制器、存储系统及其操作方法
US20180095674A1 (en) Selective data compression/decompression for intermemory transfer interface
CN106484316A (zh) 用来管理一记忆装置的方法以及记忆装置与控制器
CN109992202A (zh) 数据存储设备、其操作方法以及包括其的数据处理系统
EP3506116A1 (en) Shared memory controller in a data center
CN108701485A (zh) 减轻存储器装置的偏置漂移的技术
CN110347330A (zh) 存储器系统及其操作方法
CN104115230A (zh) 高效pcms刷新机制背景
CN110299159A (zh) 存储器装置、存储器装置的操作方法及存储器系统
US8429339B2 (en) Storage device utilizing free pages in compressed blocks
CN107818808A (zh) 数据写入方法、存储器控制电路单元与存储器存储装置
CN110286847A (zh) 数据存储装置及其操作方法
US20100030992A1 (en) Initializing of a memory area
CN106951186A (zh) 数据程序化方法、存储器存储装置及存储器控制电路单元

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination