CN113287173B - 基于存储器使用模式降低系统有功功率 - Google Patents
基于存储器使用模式降低系统有功功率 Download PDFInfo
- Publication number
- CN113287173B CN113287173B CN201880100514.0A CN201880100514A CN113287173B CN 113287173 B CN113287173 B CN 113287173B CN 201880100514 A CN201880100514 A CN 201880100514A CN 113287173 B CN113287173 B CN 113287173B
- Authority
- CN
- China
- Prior art keywords
- memory
- queued
- control unit
- access
- memory array
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/10—Distribution of clock signals, e.g. skew
-
- 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/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3215—Monitoring of peripheral devices
- G06F1/3225—Monitoring of peripheral devices of memory devices
-
- 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/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
一种存储器装置包括:包含存储器单元的存储器阵列、到主机装置的通信接口,以及操作地耦合到所述存储器阵列及所述通信接口的存储器控制单元。所述存储器控制单元经配置以:将存取所述存储器的请求存储于队列中;确定经排队存储器存取请求是针对所述存储器阵列的顺序地址还是针对所述存储器阵列的随机地址;当所述经排队存储器存取请求是针对所述存储器阵列的顺序地址时,降低所述存储器控制单元的一或多个第一组件的操作速率;及当所述经排队存储器存取请求是针对所述存储器阵列的随机地址时,降低所述存储器控制单元的一或多个第二组件的操作速率。
Description
背景技术
存储器装置通常经提供为计算机或其它电子装置中的内部半导体集成电路。存在许多不同类型的存储器,包含易失性及非易失性存储器。易失性存储器可需要电力来维持其数据且包含随机存取存储器(RAM)、动态随机存取存储器(DRAM)及同步动态随机存取存储器(SDRAM)以及其它存储器。非易失性存储器可通过在未供电时保持所存储数据而提供永久数据且可包含NAND快闪存储器、NOR快闪存储器、只读存储器(ROM)、电可擦除可编程ROM(EEPROM)、可擦除可编程ROM(EPROM)及电阻可变存储器,例如相变随机存取存储器(PCRAM)、电阻式随机存取存储器(RRAM)及磁阻式随机存取存储器(MRAM)、3D XPointTM存储器以及其它存储器。
存储器单元通常布置成矩阵或阵列。多个矩阵或阵列可组合到存储器装置中,且多个装置可经组合以形成存储器系统的存储卷,例如固态驱动器(SSD)、通用快闪存储(UFSTM)装置、多媒体卡(MMC)固态存储装置、嵌入式MMC装置(eMMCTM)等。
存储器系统可包含执行逻辑功能以操作存储器装置或与外部系统介接的一或多个处理器或其它存储器控制器。存储器矩阵或阵列可包含组织成若干个物理页的存储器单元的若干个块。存储器系统可与存储器操作相关联地从主机接收命令,所述存储器操作例如读取或写入操作以在存储器装置与主机之间传送数据(例如,用户数据及相关联完整性数据,例如错误数据及地址数据等)、擦除操作以从存储器装置擦除数据,或者执行一或多个其它存储器操作。
存储器用作易失性及非易失性数据存储装置以用于宽广范围的电子应用,包含(举例来说)个人计算机、便携式记忆条、数字相机、蜂窝式电话、便携式音乐播放器(例如MP3播放器)、电影播放器及其它电子装置。存储器单元可被布置成若干阵列,其中所述阵列用于存储器装置中。
许多电子装置包含数个主要组件:主机处理器(例如,中央处理单元(CPU)或其它主要处理器);主要存储器(例如,一或多个易失性或非易失性存储器装置,例如动态RAM(DRAM)、静态RAM(SRAM)、移动或低功率双数据速率同步DRAM(DDR SDRAM)等);及存储装置(例如,非易失性存储器(NVM)装置,例如快闪存储器、只读存储器(ROM)、SSD、MMC或其它记忆卡结构或组合件,或者易失性与非易失性存储器的组合等)。在特定实例中,电子装置可包含用户接口(例如,显示器、触摸屏、键盘、一或多个按钮等)、图形处理单元(GPU)、功率管理电路、基带处理器或者一或多个收发器电路等。
附图说明
在图式(其未必按比例绘制)中,相似编号可在不同视图中描述类似组件。具有不同字母后缀的相似编号可表示类似组件的不同实例。图式通常以实例方式而非限制方式图解说明本文件中所论述的各种实施例。
图1图解说明包含主机及存储器装置的实例性系统。
图2是呈存储器装置的形式的设备的框图,所述存储器装置包含非易失性存储器单元。
图3是包含主机及存储器装置的另一实例性系统的图解说明。
图4是主机及存储器装置的实例的框图,其展示穿过存储器装置的读取路径。
图5是用以处置存储器命令的管线的实例的图解说明。
图6是主机及存储器装置的实例的框图,其展示穿过存储器装置的写入路径。
图7是操作存储器装置的方法的流程图。
图8图解说明根据本文中所描述的一些实施例的实例性机器的框图。
具体实施方式
存储器装置、尤其是NVM装置(例如NAND快闪装置等)可包含多电平存储器单元的阵列。为对多电平存储器单元进行编程,存储器页缓冲器存储有待写入到存储器单元的值。在电压电平下将第一编程脉冲施加到存储器单元的控制栅极,所述电压电平应不会致使存储器单元的阈值电压超过多电平存储器单元的目标经编程数据状态的最低阈值电压。可接着执行读取操作以验证单元被编程到的阈值电平。如果单元并未被编程到所要阈值电压,那么施加额外编程脉冲(任选地包含较高电压或较长长度脉冲)且重新检查阈值电压。重复此过程直到读取操作确认存储器单元被编程到所要阈值电压为止。
图1图解说明包含主机105及存储器装置110的实例性系统100。主机105可包含主机处理器、中央处理单元或者一或多个其它装置、处理器或控制器。存储器装置110可包含通用快闪存储(UFS)装置、嵌入式MMC(eMMCTM)装置或者一或多个其它存储器装置。主机105与存储器装置110可使用通信接口(I/F)115(例如,双向并行或串行通信接口)来进行通信。
在实例中,存储器装置110可包含UFS装置,且通信接口115可包含串行双向接口,例如在一或多个联合电子装置工程委员会(JEDEC)标准(例如,JEDEC标准D223D(JESD223D),通常被称为JEDEC UFS主机控制器接口(UFSHCI)3.0等)中所界定。在另一实例中,存储器装置110可包含eMMCTM装置,且通信接口115可包含若干个并行双向数据线(例如,DAT[7:0])及一或多个命令线,例如在一或多个JEDEC标准(例如,JEDEC标准D84-B51(JESD84-A51),通常被称为JEDEC eMMC标准5.1等)中所界定。在其它实例中,存储器装置110可包含一或多个其它存储器装置,或者通信接口115可包含一或多个其它接口,这取决于主机105及存储器装置110。所识别标准仅作为其中可利用所描述方法及结构的实例性环境而提供;但此类方法及结构可用于所识别标准(或者任何实际或所提出标准)之外的多种环境中。
主机105及存储器装置110中的每一者可包含经配置以经由通信接口115或接口电路(例如数据控制单元、取样电路或其它媒介电路,其经配置以处理待经由通信接口115而被传递的数据或以其它方式处理从所述通信接口接收的数据以供由主机105、存储器装置110或者一或多个其它电路或装置使用)而发送或接收信号的若干个接收器或驱动器电路。
存储器装置110可包含存储器阵列(例如,存储器单元的一或多个阵列,例如NAND快闪存储器阵列或者一或多个其它存储器阵列)、存储器控制单元且在特定实例中,包含介于存储器阵列与存储器控制单元之间的接口电路。在特定实施例中,存储器阵列可包含若干个存储器裸片,每一存储器裸片具有与存储器控制单元分离的控制逻辑。存储器控制单元可包含专用集成电路(ASIC)、场可编程门阵列(FPGA)或者经布置或编程以管理到存储器阵列、从存储器阵列或存储器阵列内的数据传送或操作的一或多个其它处理电路。
图2展示根据本文中所描述的一些实施例的呈存储器装置200(例如,图1中的存储器装置110)的形式的设备的框图,所述存储器装置包含具有集成于同一集成电路(IC)芯片中的混合存储器单元类型的非易失性存储器单元。存储器装置200可包含含有存储器单元210的存储器阵列(或多个存储器阵列)201。在存储器装置200的物理结构中,存储器单元210可垂直地(例如,彼此上下堆叠地)布置于存储器装置200的衬底(例如,包含存储器装置200的IC芯片的半导体衬底)上方。存储器单元210可包含非易失性单元。举例来说,存储器单元210可包含浮动栅极存储器单元、电荷陷阱存储器单元、铁电存储器单元、相变存储器单元、电阻式存储器单元、传导桥存储器单元及自旋转移扭矩磁性随机存取存储器(STT-MRAM)单元或其它类型的非易失性存储器单元。
如图2中所展示,存储器单元210可布置于块(存储器单元块)(例如块290及291)中。块290及291中的每一者可包含子块。举例来说,块290可包含子块2900及290n,且块291可包含子块2910及291n。子块2900、290n、2910及291n中的每一者可包含存储器单元210。作为实例,图2展示具有两个块290及291且在块中的每一者中具有两个子块的存储器装置200。存储器装置200可具有多于两个块且在块中的每一者中具有多于两个子块。
存储器单元可包含于存储器平面中。存储器裸片的不同部分可被称为同一裸片的不同平面或平面群组(例如,两个或多于两个平面的群组可构成平面群组)。在打算是非限制性的说明性实例中,存储器装置可具有四个存储器裸片,其中针对总共八个平面,每一裸片具有两个平面。可同时执行去往同一裸片的不同平面的命令。存储器单元210可(举例来说)布置于若干个装置、半导体裸片、平面、子块、块或页中。多于一个平面、子块、块或页可包含于一个存储器裸片上。
如图2中所展示,存储器装置200可包含存取线(其可包含字线)250及数据线(其可包含位线)270。存取线250可载运信号(例如,字线信号)WL0到WLm。数据线270可载运信号(例如,位线信号)BL0到BLn。存储器装置200可使用存取线250来选择性地存取块290及291的子块2900、290n、2910及291n且使用数据线270来选择性地与块290及291的存储器单元210交换信息(例如,数据)。
存储器装置200可包含用以接收线(例如,地址线)203上的地址信息(例如,地址信号)ADDR的地址寄存器207。存储器装置200可包含可对来自地址寄存器207的地址信息进行解码的行存取电路系统208及列存取电路系统209。基于经解码地址信息,存储器装置200可确定将在存储器操作期间存取块290及291的哪些子块中的哪些存储器单元210。存储器装置200可执行读取操作以读取(例如,感测)存储器单元210中的信息(例如,先前所存储信息),或执行写入(例如,编程)操作以将信息存储(例如,编程)于存储器单元210中。存储器装置200可使用与信号BL0到BLn相关联的数据线270来提供待存储于存储器单元210中的信息或获得从存储器单元210读取(例如,感测)的信息。存储器装置200还可执行擦除操作以从块290及291的存储器单元210中的一些或所有存储器单元擦除信息。
存储器装置200可包含存储器控制单元218(其可包含若干组件,例如状态机(例如,有限状态机)、寄存器电路及其它组件),所述存储器控制单元经配置以基于线204上的控制信号而控制存储器装置200的存储器操作(例如,读取、写入及擦除操作)。线204上的控制信号的实例包含一或多个时钟信号及其它信号(例如,芯片启用信号CE#、写入启用信号WE#)以指示存储器装置200可执行哪一操作(例如,读取、写入或擦除操作)。
存储器装置200可包含感测与缓冲器电路系统220,所述感测与缓冲器电路系统可包含例如感测放大器及页缓冲器电路(例如,数据锁存器)等组件。感测与缓冲器电路系统220可对来自列存取电路系统209的信号BL_SEL0到BL_SELn作出反应。感测与缓冲器电路系统220可经配置以确定(例如,通过感测)从块290及291的存储器单元210读取(例如,在读取操作期间)的信息的值且将所述信息的值提供到线(例如,全局数据线)275。感测与缓冲器电路系统220还可经配置以基于线275上的信号的值(例如,电压值)(例如,在写入操作期间)使用线275上的信号来确定待存储(例如,编程)于块290及291的存储器单元210中(例如,在写入操作期间)的信息的值。
存储器装置200可包含用以在块290及291的存储器单元210与线(例如,I/O线)205之间交换信息的输入/输出(I/O)电路系统217。线205上的信号DQ0到DQN可表示从块290及291的存储器单元210读取或存储于所述存储器单元中的信息。线205可包含存储器装置200内的节点或存储器装置200可驻存的封装上的引脚(或焊料球)。存储器装置200外部的其它装置(例如,存储器控制器、存储器控制单元或处理器)可通过线203、204及205而与存储器装置200进行通信。
存储器装置200可接收供应电压,包含供应电压Vcc及Vss。供应电压Vss可在接地电位(例如,具有大约零伏特的值)下进行操作。供应电压Vcc可包含从外部电源(例如电池或交流/直流(AC-DC)转换器电路系统)供应到存储器装置200的外部电压。
存储器单元210中的每一者可个别地或共同地被编程到一个或若干个经编程状态。举例来说,单电平单元(SLC)可表示两个经编程状态(例如,1或0)中的一者,从而表示一个数据位。然而,快闪存储器单元还可表示多于两个经编程状态中的一者,从而允许在不增加存储器单元的数目的情况下制造较高密度存储器,这是因为每一单元可表示多于一个二进制数字(例如,多于一个位)。此类单元可被称为多状态存储器单元、多数字单元或多电平单元(MLC)。在特定实例中,MLC可指可每单元存储两个数据位的存储器单元(例如,四个经编程状态中的一者),三电平单元(TLC)可指可每单元存储三个数据位的存储器单元(例如,八个经编程状态中的一者),且四电平单元(QLC)可每单元存储四个数据位。本文中在其较广泛上下文中使用MLC以指代可每单元存储多于一个数据位(即,可表示多于两个经编程状态)的任何存储器单元。
在另一实例中,存储器单元210中的每一者可经编程以存储表示多个位的值的信息,所述值例如两个位的四个可能值“00”、“01”、“10”及“11”中的一者;三个位的八个可能值“000”、“001”、“010”、“011”、“100”、“101”、“110”及“111”中的一者;或另一数目的多个位的其它值中的一者。具有存储多个位的能力的单元有时称作多电平单元(或多状态单元)。
存储器装置200可包含非易失性存储器装置,使得当电源(例如,电压Vcc、Vss或此两者)与存储器装置200断开连接时,存储器单元210可保持存储于其上的信息。举例来说,存储器装置200可为快闪存储器装置,例如NAND快闪(例如,3维(3-D)NAND)或NOR快闪存储器装置,或者另一种类的存储器装置,例如可变电阻存储器装置(例如,相变存储器装置或电阻式RAM(随机存取存储器)装置)。所属领域的技术人员可认识到,存储器装置200可包含为不使本文中所描述的实例性实施例模糊而在图2中未展示的其它组件。
图3是包含主机305及存储器装置300的另一实例性系统的框图。存储器装置300包含存储器控制单元318及存储器阵列301。存储器装置300可为用于移动应用(移动电话、平板PC等)且可包含安全数字(SD)卡、eMMC、UFS等。存储器装置300可包含NAND快闪作为存储器阵列301。
存储器控制单元318包含通信接口315、处理器330(CPU)、静态随机存取存储器(SRAM)332及快闪控制器334。通信接口315将使用标准接口协议(例如eMMC或UFS)与主机305进行通信。主机305使用通信接口将命令及用户数据发送到存储器装置300以进行写入操作,且存储器装置接收用户数据并将命令状态返回到主机。根据接口协议而传送命令、用户数据及命令状态。针对读取操作,主机装置305将命令发送到存储器装置300且从存储器装置300接收用户数据。
处理器330可执行含于固件中的指令以执行例如(除其它之外)处置读取/写入命令、管理快闪存储器及起始数据传送的功能。SRAM 332可用于存储固件代码及数据,且在主机与存储器阵列301之间缓冲数据。快闪控制器334经由总线336(例如,使用双数据速率或DDR接口的NAND快闪总线)而与存储器阵列301进行通信。快闪控制器334使用总线来发送快闪命令、发送写入数据及接收读取数据。
针对移动存储装置,存在增强所述装置在市场中的地位的数个度量,例如性能、可靠性、耐久性、功率等。针对移动计算装置(例如,智能电话、平板计算机及膝上型计算机),延长电池充电之间的时间是具挑战性的,这是因为所述装置变得更复杂。由于此,具有较低功率消耗的存储装置对移动计算装置的制造商更具吸引力。因此,开发低功率消耗存储装置是移动存储装置提供商的一个关键目标。
由电子装置消耗的功率可包含有功功率及空闲功率。有功功率是指在装置正工作时的功率消耗,而空闲功率是指在电子装置空闲时的功率消耗。可采取措施以降低有功功率及空闲功率消耗。举例来说,电子装置可包含较低功率消耗存储控制器及快闪存储器以降低有功功率,且电子装置可经设计以在所述装置空闲时进入低功率模式。
针对低功率模式,装置在无主机命令时自动关断去往大多数装置部分的功率且进入休眠模式或睡眠模式。此低功率模式可极大地降低空闲功率及由电子装置消耗的总功率。降低有功功率可为较大挑战。高系统性能及低功率均是装置供应商的重要目标。然而,电子装置的较高性能通常意味着用于电子装置的较高有功功率。
用以降低有功功率的一种方法包含基于存储器使用模式而动态地控制存储装置的有功功率。存储器使用模式的四种主要类型包含对存储器的顺序读取、顺序写入、对存储器的随机读取及随机写入。读取及写入命令具有命令区块大小,所述命令区块大小是命令将读取或写入的数据字节的数目。随机存储器存取请求(写入或读取)可包含一个逻辑地址,所述逻辑地址参考一个存储器数据块以用于存取。对于随机写入及随机读取,命令区块大小通常是小的(例如,4KB或8KB)。
顺序存储器存取请求(写入或读取)参考多个数据块。数据块可处于连续逻辑地址空间中。顺序存取请求可包含一个逻辑地址(例如,基地址)或逻辑地址范围以用于存取请求。对于顺序写入及读取,命令区块大小是较大的(例如,128千字节(128KB)到512KB)且顺序写入及读取可针对装置接口及存储器总线需要高吞吐量。对于随机写入及随机读取,对装置接口及存储器总线的要求是较小的,这是因为命令区块大小是较小的。
图4是图3的主机305及存储器装置的框图,其展示穿过存储器控制单元318及存储器阵列301的读取路径。在框图中省略通信接口及快闪控制器。读取数据路径可包含读取缓冲器438及错误校正码(ECC)电路系统,例如ECC引擎440。“引擎”是指存储器控制单元318的专用于执行ECC功能(例如,博斯-查德胡里-霍昆格姆(Bose,Chaudhuri,and Hocquenghem)(BCH)编码及解码,或低密度奇偶校验编码(LDPC)及解码)的块逻辑电路系统。使用专用逻辑电路系统从处理器330卸载ECC功能。ECC用于校正存储器阵列301的错误数据。在读取路径上,ECC引擎440使用ECC奇偶校验来检查并校正错误位。读取缓冲器保持将传送到主机305的经校正数据。存储器控制单元318可包含用以从高速缓冲存储器442到读取缓冲器438及从读取缓冲器438到主机305传送数据的直接存储器存取(DMA)引擎(未展示)。
存储器装置300可执行一系列步骤以处置主机读取命令。首先,在步骤A中,处理器330的固件接收并剖析读取命令,且接着将读取请求发送到存储器阵列301。在步骤B中,执行读取请求,且将数据传送到高速缓冲存储器442。在步骤C中,接着在进行ECC检查的情况下将数据从高速缓冲存储器442传送到读取缓冲器438。最后,在步骤D中,将数据从读取缓冲器438传送到主机305。
存储协议(例如,UFS协议)可支持命令队列存储多个读取命令,所述多个读取命令可作为主机读取命令的管线而被同时处理。图5是用以处置读取命令的管线的实例的图解说明。在实例中,在管线中将四个读取命令排队且在管线的不同阶段执行读取命令的步骤A到D。
如果花费时间tA、tB、tC、tD来分别执行步骤A、B、C、D,那么读取命令的读取性能是
读取性能=[读取命令区块大小]/最大值[tA,tB,tC,tD]。
这意味着读取性能受四个读取步骤中的最慢步骤限制。
执行步骤A所需的时间(tA)主要取决于处理器330的速度。处理器越快,处理器固件将越快地处置读取命令。执行步骤B的时间(tB)取决于存储器读取性能(例如,快闪读取时间)。执行步骤C的时间(tC)取决于总线336的传送速率及ECC引擎440的解码速度。执行步骤D的时间(tD)取决于主机305与存储器控制单元318之间的通信接口315的速度。
如果可在不影响读取性能的情况下减慢读取命令的特定步骤,那么可改进有功功率消耗。换句话说,存储器装置可通过减慢读取命令的其它过程而利用读取命令瓶颈过程,只要所述减慢不增加瓶颈或以其它方式降低整体读取性能即可。如果步骤A、B、C或D中的一者是读取命令的瓶颈,那么其它步骤可提供减慢以降低有功功率的机会。一般来说,一旦针对存储装置而决定存储器(例如,快闪类型)及通信接口315(例如,协议类型),便设定用于存储器读取存取的时间(tB)及用于经由通信接口的传送的时间(tD)且处理器或固件无法动态地改变(tB)或(tD)。然而,可通过改变处理器的速度而调整时间tA,且可通过改变ECC解码器及存储器总线中的一者或两者的速度而调整时间tC。
举例来说,如果读取性能受存储器性能(tB)或通信接口速度(tD)限制,那么固件可通过延长时间tA(通过降低处理器的操作频率)或通过延长时间tC(通过降低提供到ECC解码器的时钟的频率或降低总线的传送速率)而降低有功功率。存储器控制单元可包含经由总线而与存储器阵列进行通信的控制器(例如图3中的快闪控制器334)。固件可通过降低控制器的操作速率而降低总线的传送速率。
如本文中先前所解释,读取命令可包含顺序读取及随机读取。针对顺序读取的良好读取性能需要高数据吞吐量,所述高数据吞吐量取决于通信接口、ECC解码的速度及总线336的传送速率。处理器330的性能将并非是顺序读取的性能瓶颈,因此当检测到顺序读取使用模式时,可通过降低CPU频率并延长时间tA而降低有功功率。
然而,对于随机读取,性能通常取决于固件可多快地处置读取命令,这取决于处理器的性能。ECC解码的速度及总线的传送速率将并非是随机读取的性能瓶颈,因此可通过延长时间tC(通过减慢ECC解码以及总线的数据传送速率中的一者或两者)而降低有功功率。
总之,可通过延长时间tA而降低用于顺序读取命令的有功功率,且如果维持时间tB、tC及tD,那么性能不应受影响。可通过延长时间tC而降低用于随机读取命令的有功功率,且如果维持时间tA、tB及tD,那么性能不应受影响。
对写入命令的分析类似于对读取命令的分析。图6是图3的主机305及存储器装置的框图,其展示穿过存储器控制单元318及存储器阵列301的写入路径。写入路径可包含写入缓冲器644及ECC引擎440。存储器装置300可执行一系列步骤以处置主机写入命令。首先,在步骤A中,处理器330的固件接收并剖析写入命令。在步骤B中,将写入数据从主机传送并存储于写入缓冲器644中。可使用DMA引擎而跨越通信接口将数据传送到写入缓冲器644。在步骤C中,接着在进行ECC编码的情况下将写入数据从写入缓冲器644传送到高速缓冲存储器442。最后,在步骤D中,将高速缓冲存储器442中的数据编程到存储器阵列中。
与读取命令一样,存储协议可支持命令队列存储多个写入命令,所述多个写入命令可作为主机读取命令的管线而被同时处理。概念上,用以处置写入命令的管线看起来与图5中所图解说明的用以处置读取命令的管线相同。在管线中将写入命令排队且在管线的不同阶段执行写入命令的步骤A到D。
如果花费时间tA、tB、tC、tD来分别执行步骤A、B、C、D,那么写入命令的写入性能是
写入性能=[写入命令区块大小]/最大值[tA,tB,tC,tD]。
与读取性能一样,写入性能受四个写入步骤中的最慢步骤限制。
执行步骤A所需的时间(tA)主要取决于处理器330的速度。处理器越快,处理器固件将越快地处置写入命令。执行步骤B的时间(tB)取决于主机305与存储器装置之间的通信接口的速度。执行步骤C的时间(tC)取决于总线336的传送速率及ECC引擎440的编码速度。执行步骤D的时间(tD)取决于存储器写入性能(例如,快闪编程时间)。
一旦针对存储装置而决定存储器及通信接口,便设定用于通信接口传送的时间(tB)及用于存储器编程的时间(tD)且处理器或固件无法动态地改变时间tB或tD。然而,可通过改变处理器的速度而调整时间tA,且可通过改变ECC解码器及存储器总线中的一者或两者的速度而调整时间tC。举例来说,如果写入性能受快闪性能(tD)或主机接口速度(tB)限制,那么固件可通过降低处理器的操作频率(借此延长时间tA)或通过降低ECC编码速度以及从写入缓冲器到存储器的传送速率中的一者或两者(借此延长时间tC)而降低有功功率。
写入命令可包含顺序写入及随机写入。针对顺序写入的良好性能需要高数据吞吐量,所述高数据吞吐量取决于通信接口、ECC编码的速度及存储器总线336的传送速率。处理器330的性能将并非是顺序写入的性能瓶颈,因此当检测到顺序写入使用模式时,可通过降低CPU频率并延长时间tA而降低有功功率。
然而,对于随机写入,性能通常取决于固件可多快地处置写入命令,这取决于处理器330的性能。ECC编码的速度及存储器总线的传送速率将并非是随机写入的性能瓶颈,因此可通过延长时间tC(通过减慢ECC编码以及总线的数据传送速率中的一者或两者)而降低有功功率。
总之,可通过延长时间tA而降低用于顺序写入命令的有功功率,且如果维持时间tB、tC及tD,那么性能不应受影响。可通过延长时间tC而降低用于随机写入命令的有功功率,且如果维持时间tA、tB及tD,那么性能不应受影响。对写入命令的此分析展示可针对顺序读取命令及顺序写入命令两者减慢相同组件而不会负面地影响性能,且可针对随机读取命令及随机写入命令两者减慢相同组件。
图7是操作存储器装置(例如图2的存储器装置200)的方法700的流程图。存储器装置包含存储器阵列201、通信接口215及存储器控制单元218。在705处,使用存储器控制单元的命令队列来对存取存储器的请求进行排队或存储。命令队列可为如图5中所图解说明的命令管线。在710处,确定命令的存储器使用模式。队列可为读取命令队列或写入命令队列,且存储器控制单元确定经排队存储器存取请求是针对存储器阵列的顺序地址还是针对存储器阵列的随机地址。
在一些实例中,存储器控制单元使用包含于存取请求中的地址字段来确定经排队存储器存取请求是顺序地址还是随机地址。在一些实例中,存储器控制单元使用包含于存取请求中的命令字来确定经排队存储器存取请求是顺序地址还是随机地址。存储器存取请求可针对对存储器的顺序读取、顺序写入、对存储器的随机读取及随机写入中的每一者包含命令字的不同值。存储器控制单元使用命令字来确定存储器使用模式。在一些实例中,存储器控制单元使用命令区块大小来确定经排队存储器存取请求是顺序地址还是随机地址。如本文中先前所解释,针对顺序存储器存取请求的命令区块大小(例如,128KB到512KB)比针对随机存储器存取请求的命令区块大小(例如,4KB到8KB)大得多。命令区块大小的差异可指示存储器存取请求是顺序地址请求还是随机地址请求。
顺序存储器存取请求还可依据请求的地址范围而被识别。当存储器存取请求是针对多于阈值数目个连续存储器地址或存储器页时,存储器控制单元可确定存储器存取请求是顺序存储器存取请求。替代地,或除顺序存储器存取识别之外,当存储器地址并非是连续的或是连续的但少于阈值数目个存储器地址或存储器页时,存储器控制单元可识别随机存储器存取。
在715处,当经排队存取请求是针对存储器阵列的顺序地址时,降低存储器装置的一或多个第一组件的操作速率。在720处,当经排队存取请求是针对存储器阵列的随机地址时,降低存储器装置的一或多个第二组件的操作速率。存储器控制单元可包含处理器作为第一组件中的一者。当经排队存取请求是针对存储器阵列的顺序地址时,存储器控制单元可降低处理器的操作速率。存取请求可为顺序读取请求或顺序写入请求。存储器控制单元可包含逻辑电路系统,所述逻辑电路系统用以通过降低经提供以操作处理器的时钟信号的频率而降低操作速率。可降低所述频率,只要处理器的较慢操作不影响整体性能即可。所述频率的下限将是在其处减慢读取/写入命令的剖析及将存取请求发送到存储器阵列开始形成顺序地址请求的新性能瓶颈的点。
存储器控制单元可包含错误校正码(ECC)电路系统(例如,ECC编码/解码引擎)作为第二组件中的一者。当经排队存储器存取请求是针对存储器阵列的随机地址时,存储器控制单元可通过降低ECC电路系统的时钟信号的频率而降低ECC电路系统的操作速率。存储器控制单元可包含控制器(例如,快闪控制器)作为第二组件中的一者。控制器控制使用总线到存储器阵列及从存储器阵列的数据传送。当经排队存储器存取请求是针对存储器阵列的随机地址时,存储器控制单元可通过降低快闪控制器的时钟信号的频率而降低总线的传送速率。再次,所述频率的下限将是在其处减慢快闪控制器的时钟信号的频率致使存储器总线的传送速率变为性能瓶颈的点。
为维持读取及写入命令的性能,针对未经选择以进行速率降低的组件维持操作速率。举例来说,当存储器存取请求是针对顺序地址时,存储器控制单元可降低处理器的时钟信号的频率,同时维持快闪控制器的时钟信号的频率。类似地,当存储器存取请求是针对随机地址时,存储器控制单元可降低快闪控制器的时钟信号的频率,同时维持处理器的时钟信号的频率。
通常,在电子系统的设计中,性能与有功功率是折衷。增加性能意味着较多有功功率且较低有功功率意味着较低性能。本文中所描述的方法、系统及装置在不降低性能的情况下降低电子装置或系统的有功功率。确定是特定操作的性能瓶颈的组件,且减慢并非是瓶颈的部分的组件。
图8图解说明实例性机器800的框图,本文中所论述的技术(例如,方法)中的任何一或多者(举例来说,所描述丢弃及清除操作)可对所述实例性机器执行。在替代实施例中,机器800可操作为独立装置或可连接(例如,网络连结)到其它机器。在网络连结部署中,机器800可在服务器-客户端网络环境中以服务器机器、客户端机器或此两者的身份进行操作。在实例中,机器800可在对等(P2P)(或其它分布式)网络环境中充当对等机器。机器800可为个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、移动电话、网络器具、IoT装置、汽车系统或能够执行规定将由所述机器采取的动作的指令(顺序或其它)的任何机器。此外,尽管仅图解说明单个机器,但还应将术语“机器”视为包含个别地或联合地执行一组(或多组)指令以执行本文中所论述的方法中的任何一或多者的任何机器集合,例如云端计算、软件即服务(SaaS)、其它计算机群集配置。
如本文中所描述的实施例及实例可包含逻辑、组件、装置、封装或机构或者可由所述逻辑、组件、装置、封装或机构操作。电路系统是实施于包含硬件(例如,简单电路、门、逻辑等)的有形实体中的电路的集合(例如,组)。电路系统成员可随着时间及基本硬件可变性而为灵活的。电路系统包含若干部件,所述部件可在操作时单独地或以组合形式执行特定任务。在实例中,电路系统的硬件可不变地经设计以执行特定操作(例如,硬连线)。在实例中,电路系统的硬件可包含以可变方式连接的物理组件(例如,执行单元、晶体管、简单电路等),包含经物理地修改(例如,磁性地、电地、不变质量粒子的可移动放置等)以编码特定操作的指令的计算机可读媒体。在连接物理组件时,硬件构成部分的基本电性质(举例来说)从绝缘体改变为导体或反之亦然。指令使得参与的硬件(例如,执行单元或加载机构)能够经由可变连接而形成硬件中的电路系统的部件以在操作中时执行特定任务的部分。因此,计算机可读媒体在装置正进行操作时以通信方式耦合到电路系统的其它组件。在实例中,物理组件中的任一者可用于多于一个电路系统的多于一个部件中。举例来说,在操作下,执行单元可在一个时间点用于第一电路系统中的第一电路中且在不同时间由第一电路系统中的第二电路或由第二电路系统中的第三电路重新使用。
机器(例如,计算机系统)800(例如,图1的主机105、存储器装置110等)可包含处理装置802(例如,硬件处理器、中央处理单元(CPU)、图形处理单元(GPU)、硬件处理器核心或其任何组合,例如存储器装置110的存储器控制单元等)、主要存储器804(例如,只读存储器(ROM)、快闪存储器、动态随机存取存储器(DRAM),例如同步DRAM(SDRAM)或兰巴斯(Rambus)DRAM(RDRAM)等)、静态存储器806(例如,快闪存储器、静态随机存取存储器(SRAM)等)及数据存储系统818,所述装置中的一些或所有装置可经由互连件(interlink)(例如,总线)830而彼此进行通信。
处理装置802可表示一或多个通用处理装置(例如微处理器、中央处理单元等等)。更特定来说,处理装置802可为复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、极长指令字(VLIW)微处理器或实施其它指令集的处理器或者实施指令集的组合的处理器。处理装置802还可为一或多个专用处理装置(例如专用集成电路(ASIC)、场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器等等)。处理装置802可经配置以执行用于执行本文中所论述的操作及步骤的指令826。机器800可进一步包含用以经由网络820而进行通信的网络接口装置808。
数据存储装置818可包含其上存储有体现本文中所描述的方法或功能中的任何一或多者的一或多组指令826或软件的机器可读存储媒体824(还称作计算机可读媒体)。指令826还可在其由机器800执行期间完全或至少部分地驻存于主要存储器804内或处理装置802内,主要存储器804及处理装置802还构成机器可读存储媒体。机器可读存储媒体824、数据存储系统818或主要存储器804可对应于图1的存储器装置110。在一个实施方案中,指令826可包含用以实施与根据存储器使用模式而降低一或多个组件的操作速率对应的功能性的指令。
尽管机器可读存储媒体824在实例性实施方案中展示为单个媒体,但术语“机器可读存储媒体”应视为包含单个媒体或者存储一或多组指令的多个媒体。术语“机器可读存储媒体”还应视为包含能够存储或编码用于由机器执行的一组指令且致使机器执行本公开的方法中的任何一或多者的任何媒体。因此,术语“机器可读存储媒体”应视为包含(但不限于)固态存储器、光学媒体及磁性媒体。在实例中,聚集式(massed)机器可读媒体包括具有多个粒子的机器可读媒体,所述多个粒子具有不变(例如,静止)的质量。因此,聚集式机器可读媒体并非是暂时性传播信号。聚集式机器可读媒体的特定实例可包含:非易失性存储器,例如半导体存储器装置(例如,电可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM))及快闪存储器装置;磁盘,例如内部硬盘及可装卸式磁盘;磁光盘;以及CD-ROM及DVD-ROM磁盘。
机器800可进一步包含显示单元、字母数字输入装置(例如,键盘)及用户接口(UI)导航装置(例如,鼠标)。在实例中,显示单元、输入装置或UI导航装置中的一或多者可为触摸屏显示器。机器800可包含信号产生装置(例如,扬声器)或者一或多个传感器,例如全球定位系统(GPS)传感器、罗盘、加速度计或者一或多个其它传感器。机器800可包含输出控制器,例如串行(例如,通用串行总线(USB)、并行或者其它有线或无线(例如,红外(IR)、近场通信(NFC)等)连接以通信或控制一或多个外围装置(例如,打印机、卡读取器等)。
指令826(例如,软件、程序、操作系统(OS)等)或其它数据存储于数据存储装置818上,可由主要存储器804存取以供由处理装置802使用。主要存储器804(例如,DRAM)通常是快速的但为易失性的,且因此是不同于数据存储装置818(例如,SSD)(其适合于长期存储,包含在处于“关断”条件中时)的一种类型的存储装置。用户或机器800正在使用的指令826或数据通常被加载于主要存储器804中以供由处理装置802使用。当主要存储器804为满的时,来自数据存储装置818的虚拟空间可经分配以补充主要存储器804;然而,由于数据存储装置818装置通常比主要存储器804慢,且写入速度通常至少是读取速度的二分之一,因此虚拟存储器的使用可由于存储装置延时而极大地降低用户体验(与主要存储器804(例如,DRAM)相对比)。此外,将数据存储装置818用于虚拟存储器可极大地减少数据存储装置818的可用寿命。
与虚拟存储器相对比,虚拟存储器压缩(例如,LinuxTM核心特征“ZRAM”)使用存储器的部分作为经压缩块存储装置以避免分页到数据存储装置818。分页发生于经压缩块中,直到必需将此数据写入到数据存储装置818为止。虚拟存储器压缩增加主要存储器804的可用大小,同时降低对数据存储装置818的耗损。
经优化以用于移动电子装置的存储装置或者移动存储装置传统上包含MMC固态存储装置(例如,微型安全数字(microSDTM)卡等)。MMC装置包含与主机(例如,主机装置)的若干个并行接口(例如,8位并行接口),且通常是可从主机移除及分离的组件。相比来说,eMMCTM装置附接到电路板且被视为主机的组件,具有比得上基于串行ATATM(串行AT(进阶技术)附接或SATA)的SSD装置的读取速度。然而,对移动装置性能的要求持续增加,例如完全启用虚拟或增强现实装置、利用增加的网络速度等。响应于此要求,存储装置已从并行转变为串行通信接口。通用快闪存储(UFS)装置(包含控制器及固件)使用具有专用读取/写入路径的低电压差分信令(LVDS)串行接口与主机进行通信,从而进一步促成较大读取/写入速度。
可进一步经由网络接口装置808使用传输媒体来经由网络820传输或接收指令826,所述网络接口装置利用若干个传送协议(例如,帧中继、因特网协议(IP)、传输控制协议(TCP)、用户数据报协议(UDP)、超文本传送协议(HTTP)等)中的任一者。实例性通信网络可包含局域网络(LAN)、广域网络(WAN)、包数据网络(例如,因特网)、移动电话网络(例如,蜂窝式网络)、简易老式电话(POTS)网络及无线数据网络(例如,电气电子工程师协会(IEEE)802.11标准族系(称作)、IEEE 802.16标准族系(称作))、IEEE802.15.4标准族系、对等(P2P)网络以及其它。在实例中,网络接口装置808可包含一或多个物理插孔(例如,以太网络、同轴或电话插孔)或者用以连接到网络820的一或多个天线。在实例中,网络接口装置808可包含多个天线,所述多个天线用以使用单输入多输出(SIMO)、多输入多输出(MIMO)或多输入单输出(MISO)技术中的至少一者来进行无线通信。应将术语“传输媒体”视为包含能够存储、编码或载运用于由机器800执行的指令的任何无形媒体,且包含数字或模拟通信信号或者其它无形媒体以促进此软件的通信。
以上详细说明包含对形成所述详细说明的一部分的所附图式的参考。所述图式以图解说明方式展示其中可实践本发明的特定实施例。这些实施例在本文中还称为“实例”。除了所展示或所描述的那些元素之外,此类实例还可包含若干元素。然而,本发明人还考虑其中仅提供所展示或描述的那些元素的实例。此外,本发明人还考虑使用关于特定实例(或者其一或多个方面)或关于本文中所展示或所描述的其它实例(或者其一或多个方面)所展示或所描述的那些元素的任何组合或排列的实例(或者其一或多个方面)。
在此文件中,如在专利文件中常见,使用术语“一(a或an)”来包含一个或多于一个,这独立于“至少一个”或“一或多个”的任何其它实例或使用。在此文件中,使用术语“或”来指非排他性或,使得“A或B”可包含“A但非B”、“B但非A”及“A及B”,除非另有指示。在所附权利要求书中,将术语“包含(including)”及“其中(in which)”用作相应术语“包括(comprising)”及“其中(wherein)”的普通英语等效形式。而且,在所附权利要求书中,术语“包含”及“包括”是开放式的。包含除在技术方案中的此术语之后所列示的元素之外的元素的系统、装置、物品或过程仍视为属于所述技术方案的范围内。此外,在所附权利要求书中,术语“第一”、“第二”及“第三”等仅用作标记,且并不打算对其对象施加数字要求。
在各种实例中,本文中所描述的组件、控制器、处理器、单元、引擎或表可包含(除其它之外)物理电路系统或存储于物理装置上的固件。如本文中所使用,“处理器”意指任何类型的计算电路,例如(但不限于)微处理器、微控制器、图形处理器、数字信号处理器(DSP)或任何其它类型的处理器或处理电路,包含处理器或多核心装置的群组。
如本文中所使用,操作存储器单元包含从所述存储器单元读取、写入到所述存储器单元或擦除所述存储器单元。将存储器单元置于既定状态中的操作在本文中称为“编程”,且可包含写入到存储器单元或从所述存储器单元擦除(例如,可将存储器单元编程到经擦除状态)。
根据本发明的一或多个实施例,位于存储器装置内部或外部的存储器控制器(例如,处理器、控制器、固件等)能够确定(例如,选择、设定、调整、计算、改变、清除、传递、调适、导出、界定、利用、修改、应用等)耗损循环的数量,或耗损状态(例如,记录耗损循环、在耗损循环发生时对存储器装置的操作进行计数、跟踪耗损循环起始的存储器装置的操作、评估对应于耗损状态的存储器装置特性等)。
根据本公开的一或多个实施例,存储器存取装置可经配置以选择性地降低一或多个组件的操作速率来降低有功功率。存储器装置控制电路系统(例如,控制逻辑)可经编程以响应于确定正由存储器存取装置执行的存储器存取类型(例如,存储器使用模式)而减慢提供到组件的时钟信号。
本文中所描述的方法实例可为至少部分地机器、装置或计算机实施的。一些实例可包含用指令编码的计算机可读媒体、装置可读媒体或机器可读媒体,所述指令可操作以配置电子装置来执行如在以上实例中所描述的方法。此类方法的实施方案可包含代码,例如微代码、汇编语言代码、较高阶语言代码等等。此代码可包含用于执行各种方法的计算机可读指令。所述代码可形成计算机程序产品的部分。此外,所述代码可(例如)在执行期间或在其它时间有形地存储于一或多个易失性或非易失性有形计算机可读媒体上。这些有形计算机可读媒体的实例可包含(但不限于)硬磁盘、可装卸式磁盘、可装卸式光盘(例如,压缩光盘及数字视频磁盘)、盒式磁带、记忆卡或条、随机存取存储器(RAM)、只读存储器(ROM)、固态驱动器(SSD)、通用快闪存储(UFS)装置、嵌入式MMC(eMMC)装置等等。
额外说明及实例
实例1包含标的物(例如一种存储器装置),其包括:存储器阵列,其包含存储器单元;通信接口,其经配置以用于与主机进行通信;及存储器控制单元,其操作地耦合到所述存储器阵列及所述通信接口,且包含队列。所述存储器控制单元经配置以:将存取所述存储器的请求存储于所述队列中;确定经排队存储器存取请求是针对所述存储器阵列的顺序地址还是针对所述存储器阵列的随机地址;当所述经排队存储器存取请求是针对所述存储器阵列的顺序地址时,降低所述存储器控制单元的一或多个第一组件的操作速率;及当所述经排队存储器存取请求是针对所述存储器阵列的随机地址时,降低所述控制单元的一或多个第二组件的操作速率。
在实例2中,实例1的标的物任选地包含存储器控制单元,所述存储器控制单元包含经配置以处理存取所述存储器的所述请求的处理器。所述存储器控制单元经配置以在所述经排队存储器存取请求是针对所述存储器阵列的顺序地址时降低所述处理器的时钟信号的频率。
在实例3中,实例1及2中的一者或两者的标的物任选地包含总线,所述总线经配置以在所述存储器控制单元与所述存储器阵列之间传送数据。所述存储器控制单元任选地包含用以使用所述总线来传送数据的快闪控制器,且所述存储器控制单元经配置以在所述经排队存储器存取请求是针对所述存储器阵列的随机地址时降低所述快闪控制器的时钟信号的频率。
在实例4中,实例1到3的一个或任何组合的标的物任选地包含存储器控制单元,所述存储器控制单元包含错误校正码(ECC)电路系统且所述存储器控制单元经配置以在所述经排队存储器存取请求是针对所述存储器阵列的随机地址时降低所述ECC电路系统的时钟信号的频率。
在实例5中,实例1到4的一个或任何组合的标的物任选地包含总线,所述总线经配置以在所述存储器控制单元与所述存储器阵列之间传送数据,且存储器控制单元包含用以使用所述总线来传送数据的快闪控制器及经配置以处理存取所述存储器的所述请求的处理器。所述存储器控制单元经配置以:当所述经排队存储器存取请求是针对所述存储器阵列的顺序地址时,降低所述处理器的时钟信号的频率且维持所述快闪控制器的时钟信号的频率,及当所述经排队存储器存取请求是针对所述存储器阵列的随机地址时,维持所述处理器的时钟信号的频率且降低所述快闪控制器的时钟信号的频率。
在实例6中,实例1到5的一个或任何组合的标的物任选地包含经排队存储器存取请求,所述经排队存储器存取请求包含存储器写入请求。
在实例7中,实例1到5的一个或任何组合的标的物任选地包含经排队存储器存取请求,所述经排队存储器存取请求包含存储器读取请求。
实例8包含标的物(例如一种操作存储器装置的方法)或可任选地与实例1到7的一个或任何组合进行组合以包含此标的物,所述标的物包括:使用所述存储器装置的命令队列来对存取所述存储器的请求进行排队;确定所述经排队存取请求是针对存储器阵列的顺序地址还是针对所述存储器阵列的随机地址;当所述经排队存取请求是针对所述存储器阵列的顺序地址时,降低所述存储器装置的一或多个第一组件的操作速率;及当所述经排队存取请求是针对所述存储器阵列的随机地址时,降低所述存储器装置的一或多个第二组件的操作速率。
在实例9中,实例8的标的物任选地包含一或多个第一组件,所述一或多个第一组件包含所述存储器装置的处理器,所述处理器经配置以处理存取所述存储器的所述请求。
在实例10中,实例8及9中的一者或两者的标的物任选地包含一或多个第二组件,所述一或多个第二组件包含所述存储器装置的错误校正码(ECC)电路系统及所述存储器装置的快闪控制器中的一或多者,所述快闪控制器经配置以使用总线来传送存储器写入数据及存储器读取数据。
在实例11中,实例8到10的一个或任何组合的标的物任选地包含:当所述经排队存取请求是针对所述存储器阵列的顺序地址时,维持所述存储器装置的所述一或多个第二组件的所述操作速率;及当所述经排队存取请求是针对所述存储器阵列的随机地址时,维持所述存储器装置的所述一或多个第一组件的所述操作速率。
在实例12中,实例8到12的一个或任何组合的标的物任选地包含:当所述经排队存取请求是针对所述存储器阵列的顺序地址时,降低所述一或多个第一组件的时钟信号的频率且维持所述一或多个第二组件的时钟信号的频率;及当所述经排队存取请求是针对所述存储器阵列的随机地址时,降低所述一或多个第二组件的时钟信号的频率且维持所述一或多个第一组件的时钟信号的频率。
在实例13中,实例8到12的一个或任何组合的标的物任选地包含存取所述存储器的所述请求,所述请求包含存储器写入请求。
在实例14中,实例8到12的一个或任何组合的标的物任选地包含存取所述存储器的所述请求,所述请求包含存储器读取请求。
在实例15中,实例8到14的一个或任何组合的标的物任选地包含:使用包含于所述存取请求中的命令字来确定经排队存取请求是针对顺序地址还是随机地址。
在实例16中,实例8到15的一个或任何组合的标的物任选地包含:使用所述存取请求的命令区块大小来确定经排队存取请求是针对顺序地址还是随机地址。
实例17包含标的物(或可任选地与实例1到16的一个或任何组合进行组合以包含此标的物),例如一种包括指令的计算机可读存储媒体,所述指令经配置以致使存储器装置的存储器控制单元执行包含以下各项的动作:使用所述存储器装置的队列来对存取所述存储器的请求进行排队;确定所述经排队存取请求是针对存储器阵列的顺序地址还是针对所述存储器阵列的随机地址;当所述经排队存取请求是针对所述存储器阵列的顺序地址时,降低所述存储器装置的一或多个第一组件的操作速率;及当所述经排队存取请求是针对所述存储器阵列的随机地址时,降低所述存储器装置的一或多个第二组件的操作速率。所述计算机可读媒体可为非暂时性计算机可读媒体。
在实例18中,技术方案17的标的物任选地包含指令,所述指令经配置以致使所述存储器控制单元在所述经排队存取请求是针对所述存储器阵列的顺序地址时降低所述存储器控制单元的处理器的操作速率。
在实例19中,技术方案17及18中的一者或两者的标的物任选地包含指令,所述指令经配置以致使所述存储器控制单元在所述经排队存取请求是针对所述存储器阵列的随机地址时降低所述存储器控制单元的错误校正码(ECC)电路系统及快闪控制器中的一或多者的操作速率。
在实例20中,实例17到19的一个或任何组合的标的物任选地包含指令,所述指令经配置以致使所述存储器控制单元:当所述经排队存取请求是针对所述存储器阵列的顺序地址时,降低所述一或多个第一组件的时钟信号的频率且维持所述一或多个第二组件的时钟信号的频率;及当所述经排队存取请求是针对所述存储器阵列的随机地址时,降低所述一或多个第二组件的时钟信号的频率且维持所述一或多个第一组件的时钟信号的频率。
实例21包含标的物(例如一种存储器装置)或可任选地与实例1到20的一个或任何组合进行组合以包含此标的物,所述标的物包括:存储器阵列,其包含存储器单元;通信接口,其经配置以用于与主机进行通信;及存储器控制单元,其操作地耦合到所述存储器阵列及所述通信接口,且包含队列。所述存储器控制单元经配置以:将存取所述存储器的请求存储于所述队列中;使用所述存储器存取请求的命令区块大小或地址范围中的一或多者来确定经排队存储器存取请求是针对所述存储器阵列的顺序地址还是针对所述存储器阵列的随机地址;当所述经排队存储器存取请求是针对所述存储器阵列的顺序地址时,降低所述存储器控制单元的第一组件的操作速率;及当所述经排队存储器存取请求是针对所述存储器阵列的随机地址时,降低所述存储器控制单元的第二组件的操作速率。
在实例22中,实例21的标的物任选地包含处理器作为所述第一组件且包含快闪控制器作为所述第二组件。所述快闪控制器经配置以在所述存储器控制单元与所述存储器阵列之间传送数据。所述存储器控制单元经配置以在所述经排队存储器存取请求是针对所述存储器阵列的顺序地址时降低所述处理器的时钟信号的频率,且在所述经排队存储器存取请求是针对所述存储器阵列的随机地址时降低所述快闪控制器的时钟信号的频率。
在实例23中,实例21及22中的一者或两者的标的物任选地包含多个存储器阵列,所述多个存储器阵列包含存储器单元,且所述存储器控制单元针对每一存储器阵列包含队列。
在实例24中,实例21到23的一个或任何组合的标的物任选地包含所述存储器阵列的所述存储器单元,所述存储器单元是存储器裸片的总存储器单元的子集。
在实例25中,实例21到24的一个或任何组合的标的物任选地包含所述存储器阵列,所述存储器阵列包含于存储器裸片的存储器平面中。
这些非限制性实例可以任何排列或组合进行组合。以上说明打算是说明性而非限制性的。举例来说,上文所描述的实例(或者其一或多个方面)可以彼此组合方式使用。例如,所属领域的技术人员可在审阅以上说明后即刻使用其它实施例。基于以下理解提交摘要:其并非将用于解释或限制权利要求书的范围或含义。而且,在以上具体实施方式中,各种特征可分组在一起以简化本公开。这不应解释为意指未主张的所揭示特征对任一技术方案是必要的。而是,发明性标的物可在于少于特定所揭示实施例的所有特征。因此,特此将所附权利要求书并入到具体实施方式中,其中每一技术方案独立地作为单独实施例,且考虑此类实施例可以各种组合或排列进行彼此组合。本发明的范围应参考所附权利要求书连同授权于此权利要求书的等效物的整个范围一起来确定。
Claims (21)
1.一种存储器装置,其包括:
存储器阵列,其包含存储器单元;
通信接口,其经配置以用于与主机进行通信;及
存储器控制单元,其操作地耦合到所述存储器阵列及所述通信接口,且包含队列及总线,所述总线经配置以在所述存储器控制单元与所述存储器阵列之间传送数据;
其中所述存储器控制单元包含错误校正码(ECC)电路系统,且所述存储器控制单元经配置以:
将存取所述存储器的请求存储于所述队列中;
确定经排队存储器存取请求是针对所述存储器阵列的顺序地址还是针对所述存储器阵列的随机地址;
当所述经排队存储器存取请求是针对所述存储器阵列的顺序地址时,降低所述存储器控制单元的一或多个第一组件的操作速率;及
当所述经排队存储器存取请求是针对所述存储器阵列的随机地址时,降低所述ECC电路系统的时钟信号的频率。
2.根据权利要求1所述的存储器装置,其中所述存储器控制单元包含经配置以处理存取所述存储器的所述请求的处理器,且所述存储器控制单元经配置以在所述经排队存储器存取请求是针对所述存储器阵列的顺序地址时降低所述处理器的时钟信号的频率。
3.根据权利要求1所述的存储器装置,其中所述存储器控制单元包含用以使用所述总线来传送数据的快闪控制器,且所述存储器控制单元经配置以在所述经排队存储器存取请求是针对所述存储器阵列的随机地址时降低所述快闪控制器的时钟信号的频率。
4.根据权利要求1所述的存储器装置,
其中所述存储器控制单元包含经配置以处理存取所述存储器的所述请求的处理器及用以使用所述总线来传送数据的快闪控制器,其中所述存储器控制单元经配置以:
当所述经排队存储器存取请求是针对所述存储器阵列的顺序地址时,降低所述处理器的时钟信号的频率且维持所述快闪控制器的时钟信号的频率,及
当所述经排队存储器存取请求是针对所述存储器阵列的随机地址时,维持所述处理器的时钟信号的频率且降低所述快闪控制器的时钟信号的频率。
5.根据权利要求1所述的存储器装置,其中所述经排队存储器存取请求是存储器写入请求。
6.根据权利要求1所述的存储器装置,其中所述经排队存储器存取请求是存储器读取请求。
7.一种操作存储器装置的方法,所述方法包括:
使用所述存储器装置的命令队列来对存取所述存储器的请求进行排队;
确定所述经排队存取请求是针对存储器阵列的顺序地址还是针对所述存储器阵列的随机地址;
当所述经排队存取请求是针对所述存储器阵列的顺序地址时,降低所述存储器装置的一或多个第一组件的操作速率,其中降低所述一或多个第一组件的操作速率包含:当所述经排队存取请求是针对所述存储器阵列的顺序地址时,降低所述一或多个第一组件的时钟信号的频率且维持一或多个第二组件的时钟信号的频率;及
当所述经排队存取请求是针对所述存储器阵列的随机地址时,降低所述存储器装置的所述一或多个第二组件的操作速率,其中降低所述一或多个第二组件的操作速率包含:当所述经排队存取请求是针对所述存储器阵列的随机地址时,降低所述一或多个第二组件的时钟信号的频率且维持所述一或多个第一组件的时钟信号的频率。
8.根据权利要求7所述的方法,其中存取所述存储器的所述请求是存储器写入请求。
9.根据权利要求7所述的方法,其中存取所述存储器的所述请求是存储器读取请求。
10.根据权利要求7所述的方法,其中确定经排队存取请求是针对顺序地址还是随机地址包含:使用包含于所述存取请求中的命令字来确定经排队存取请求是针对顺序地址还是随机地址。
11.根据权利要求7所述的方法,其中确定经排队存取请求是针对顺序地址还是随机地址包含:使用所述存取请求的命令区块大小来确定经排队存取请求是针对顺序地址还是随机地址。
12.根据权利要求7所述的方法,其中所述一或多个第一组件包含所述存储器装置的处理器,所述处理器经配置以处理存取所述存储器的所述请求。
13.根据权利要求7所述的方法,其中所述一或多个第二组件包含所述存储器装置的错误校正码(ECC)电路系统及所述存储器装置的快闪控制器中的一或多者,所述快闪控制器经配置以使用总线来传送存储器写入数据及存储器读取数据。
14.根据权利要求7所述的方法,其包含:
当所述经排队存取请求是针对所述存储器阵列的顺序地址时,维持所述存储器装置的所述一或多个第二组件的所述操作速率;及
当所述经排队存取请求是针对所述存储器阵列的随机地址时,维持所述存储器装置的所述一或多个第一组件的所述操作速率。
15.一种包括指令的非暂时性计算机可读存储介质,所述指令经配置以致使存储器装置的存储器控制单元进行以下操作:
使用所述存储器装置的队列来对存取所述存储器的请求进行排队;
确定所述经排队存取请求是针对存储器阵列的顺序地址还是针对所述存储器阵列的随机地址;
当所述经排队存取请求是针对所述存储器阵列的顺序地址时,降低所述存储器装置的一或多个第一组件的操作速率;及
当所述经排队存取请求是针对所述存储器阵列的随机地址时,降低所述存储器控制单元的错误校正码(ECC)电路系统及快闪控制器中的一或多者的操作速率。
16.根据权利要求15所述的非暂时性计算机可读存储介质,其包含指令,所述指令经配置以致使所述存储器控制单元进行以下操作:
当所述经排队存取请求是针对所述存储器阵列的顺序地址时,降低所述一或多个第一组件的时钟信号的频率且维持一或多个第二组件的时钟信号的频率;及
当所述经排队存取请求是针对所述存储器阵列的随机地址时,降低所述一或多个第二组件的时钟信号的频率且维持所述一或多个第一组件的时钟信号的频率。
17.根据权利要求15所述的非暂时性计算机可读存储介质,其包含指令,所述指令经配置以致使所述存储器控制单元在所述经排队存取请求是针对所述存储器阵列的顺序地址时降低所述存储器控制单元的处理器的操作速率。
18.一种存储器装置,其包括:
存储器阵列,其包含存储器单元;
通信接口,其经配置以用于与主机进行通信;及
存储器控制单元,其操作地耦合到所述存储器阵列及所述通信接口,且包含队列,所述存储器控制单元经配置以:
将存取所述存储器的请求存储于所述队列中;
使用所述存储器存取请求的命令区块大小或地址范围中的一或多者来确定经排队存储器存取请求是针对所述存储器阵列的顺序地址还是针对所述存储器阵列的随机地址;
当所述经排队存储器存取请求是针对所述存储器阵列的顺序地址时,降低所述存储器控制单元的第一组件的操作速率,其中所述第一组件是处理器,且所述存储器控制单元经配置以在所述经排队存储器存取请求是针对所述存储器阵列的顺序地址时降低所述处理器的时钟信号的频率;及
当所述经排队存储器存取请求是针对所述存储器阵列的随机地址时,降低所述存储器控制单元的第二组件的操作速率,其中所述第二组件包含错误校正码(ECC)电路系统,且所述存储器控制单元经配置以在所述经排队存储器存取请求是针对所述存储器阵列的随机地址时降低所述ECC电路系统的时钟信号的频率。
19.根据权利要求18所述的存储器装置,其中所述存储器装置包含多个存储器阵列,所述多个存储器阵列包含存储器单元,且所述存储器控制单元针对每一存储器阵列包含队列。
20.根据权利要求18所述的存储器装置,其中所述存储器阵列的所述存储器单元是存储器裸片的总存储器单元的子集。
21.根据权利要求18所述的存储器装置,其中所述存储器阵列包含于存储器裸片的存储器平面中。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/124813 WO2020133202A1 (en) | 2018-12-28 | 2018-12-28 | Reduce system active power based on memory usage patterns |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113287173A CN113287173A (zh) | 2021-08-20 |
CN113287173B true CN113287173B (zh) | 2022-08-19 |
Family
ID=71129497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880100514.0A Active CN113287173B (zh) | 2018-12-28 | 2018-12-28 | 基于存储器使用模式降低系统有功功率 |
Country Status (5)
Country | Link |
---|---|
US (2) | US11029883B2 (zh) |
EP (1) | EP3903315A4 (zh) |
CN (1) | CN113287173B (zh) |
TW (1) | TWI729654B (zh) |
WO (1) | WO2020133202A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102655360B1 (ko) * | 2018-12-13 | 2024-04-05 | 에스케이하이닉스 주식회사 | 컨트롤러, 데이터 저장 장치 및 그것의 동작 방법 |
EP3903315A4 (en) | 2018-12-28 | 2022-08-17 | Micron Technology, Inc. | REDUCING SYSTEM PERFORMANCE BASED ON STORAGE USE PATTERNS |
US11561698B2 (en) * | 2021-04-20 | 2023-01-24 | EMC IP Holding Company LLC | NVMEoF flow control from initiator based on transaction latency |
US20230068482A1 (en) * | 2021-09-01 | 2023-03-02 | Micron Technology, Inc. | Time intervals among memory operations of non-volatile memory |
US20230152989A1 (en) * | 2021-11-15 | 2023-05-18 | Samsung Electronics Co., Ltd. | Memory controller adjusting power, memory system including same, and operating method for memory system |
US11861212B2 (en) | 2022-02-24 | 2024-01-02 | Silicon Motion, Inc. | Flash memory device, controller, and method capable of performing access operation upon data unit(s) of multiple planes of flash memory device in response one simplified command sequence |
US11972146B2 (en) | 2022-02-24 | 2024-04-30 | Silicon Motion, Inc. | Flash memory controller and method capable of sending read command or data toggle command to ask for flash memory device return more plane data of different planes |
US11977776B2 (en) | 2022-02-24 | 2024-05-07 | Silicon Motion, Inc. | Flash memory controller and method capable of sending read command or data toggle command to ask for flash memory device return more plane data of different planes |
US11977752B2 (en) | 2022-02-24 | 2024-05-07 | Silicon Motion, Inc. | Flash memory controller and method capable of sending data toggle set-feature signal to enable, disable, or configure data toggle operation of flash memory device |
US11935595B2 (en) | 2022-02-24 | 2024-03-19 | Silicon Motion, Inc. | Flash memory device, controller, and method capable of performing access operation upon data unit(s) of multiple planes of flash memory device in response one simplified command sequence |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6209067B1 (en) * | 1994-10-14 | 2001-03-27 | Compaq Computer Corporation | Computer system controller and method with processor write posting hold off on PCI master memory request |
US6356485B1 (en) * | 1999-02-13 | 2002-03-12 | Integrated Device Technology, Inc. | Merging write cycles by comparing at least a portion of the respective write cycle addresses |
JP4200969B2 (ja) * | 2004-12-03 | 2008-12-24 | セイコーエプソン株式会社 | 半導体装置及び電子機器 |
JP2006285809A (ja) * | 2005-04-04 | 2006-10-19 | Hitachi Ltd | ストリーミング向け性能保証を行うストレージ装置 |
US7894289B2 (en) * | 2006-10-11 | 2011-02-22 | Micron Technology, Inc. | Memory system and method using partial ECC to achieve low power refresh and fast access to data |
JP5669338B2 (ja) | 2007-04-26 | 2015-02-12 | 株式会社日立製作所 | 半導体装置 |
US8006166B2 (en) * | 2007-06-12 | 2011-08-23 | Micron Technology, Inc. | Programming error correction code into a solid state memory device with varying bits per cell |
CN101630233B (zh) * | 2008-07-17 | 2012-07-11 | 群联电子股份有限公司 | 用于闪存的数据存取方法、储存系统与控制器 |
US9081501B2 (en) * | 2010-01-08 | 2015-07-14 | International Business Machines Corporation | Multi-petascale highly efficient parallel supercomputer |
US8572322B2 (en) * | 2010-03-29 | 2013-10-29 | Freescale Semiconductor, Inc. | Asynchronously scheduling memory access requests |
CN103890724B (zh) * | 2011-08-19 | 2017-04-19 | 株式会社东芝 | 信息处理设备、用于控制信息处理设备的方法、主机装置、以及用于外部存储装置的性能评估方法 |
KR101862379B1 (ko) * | 2013-04-19 | 2018-07-05 | 삼성전자주식회사 | Ecc 동작과 리던던시 리페어 동작을 공유하는 메모리 장치 |
US9152214B2 (en) * | 2013-05-16 | 2015-10-06 | Qualcomm Innovation Center, Inc. | Dynamic load and priority based clock scaling for non-volatile storage devices |
US9685217B2 (en) * | 2013-07-22 | 2017-06-20 | Taiwan Semiconductor Manufacturing Company Ltd. | Memory device with over-refresh and method thereof |
US9418721B2 (en) * | 2014-01-21 | 2016-08-16 | International Business Machines Corporation | Determining and storing bit error rate relationships in spin transfer torque magnetoresistive random-access memory (STT-MRAM) |
KR20150091693A (ko) * | 2014-02-03 | 2015-08-12 | 삼성전자주식회사 | 플래쉬 메모리 읽기 방법 |
KR102155611B1 (ko) | 2014-02-28 | 2020-09-14 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 |
US9811415B2 (en) * | 2014-03-31 | 2017-11-07 | Symbol Technologies, Llc | Apparatus and method for detecting and correcting read disturb errors on a flash memory |
US20150286529A1 (en) * | 2014-04-08 | 2015-10-08 | Micron Technology, Inc. | Memory device having controller with local memory |
US9529667B2 (en) * | 2014-05-15 | 2016-12-27 | Integrated Silicon Solution, Inc. | DRAM error correction event notification |
KR102397582B1 (ko) | 2015-06-22 | 2022-05-13 | 삼성전자주식회사 | 데이터 저장 장치, 이를 포함하는 데이터 처리 시스템, 및 이의 작동 방법 |
US20180025777A1 (en) * | 2016-07-19 | 2018-01-25 | Sandisk Technologies Llc | High-reliability memory read technique |
US10090044B2 (en) * | 2016-07-21 | 2018-10-02 | Sandisk Technologies Llc | System and method for burst programming directly to MLC memory |
US10175905B2 (en) * | 2016-09-13 | 2019-01-08 | Apple Inc. | Systems and methods for dynamically switching memory performance states |
US20180159556A1 (en) * | 2016-12-01 | 2018-06-07 | Western Digital Technologies, Inc. | Ecc decoder with multiple decoding modes |
US11182101B2 (en) * | 2018-12-03 | 2021-11-23 | Western Digital Technologies, Inc. | Storage system and method for stream management in a multi-host virtualized storage system |
EP3903315A4 (en) | 2018-12-28 | 2022-08-17 | Micron Technology, Inc. | REDUCING SYSTEM PERFORMANCE BASED ON STORAGE USE PATTERNS |
-
2018
- 2018-12-28 EP EP18944768.3A patent/EP3903315A4/en not_active Withdrawn
- 2018-12-28 WO PCT/CN2018/124813 patent/WO2020133202A1/en unknown
- 2018-12-28 US US16/484,066 patent/US11029883B2/en active Active
- 2018-12-28 CN CN201880100514.0A patent/CN113287173B/zh active Active
-
2019
- 2019-12-27 TW TW108148074A patent/TWI729654B/zh active
-
2021
- 2021-05-26 US US17/331,357 patent/US11604607B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP3903315A4 (en) | 2022-08-17 |
TW202034173A (zh) | 2020-09-16 |
WO2020133202A1 (en) | 2020-07-02 |
US20210279010A1 (en) | 2021-09-09 |
US11029883B2 (en) | 2021-06-08 |
TWI729654B (zh) | 2021-06-01 |
US20200233606A1 (en) | 2020-07-23 |
EP3903315A1 (en) | 2021-11-03 |
US11604607B2 (en) | 2023-03-14 |
CN113287173A (zh) | 2021-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113287173B (zh) | 基于存储器使用模式降低系统有功功率 | |
US10607693B2 (en) | Misplacement mitigation algorithm | |
US11119659B2 (en) | Write buffer implementation for multiple memory array memory spaces | |
US11495306B2 (en) | Peak current management in a memory array | |
US11107533B2 (en) | Memory with improved cross temperature reliability and read performance | |
US20220147281A1 (en) | Large data read techniques | |
US11670375B2 (en) | Memory with improved cross temperature reliability and read performance | |
US10614899B2 (en) | Program progress monitoring in a memory array | |
US10901903B2 (en) | Flash memory persistent cache techniques | |
US11380419B1 (en) | Methods to limit power during stress test and other limited supplies environment | |
US20240054070A1 (en) | A dynamic read disturb management algorithm for flash-based memory |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |