CN109901789A - 数据存储装置、该数据存储装置的操作方法以及存储系统 - Google Patents
数据存储装置、该数据存储装置的操作方法以及存储系统 Download PDFInfo
- Publication number
- CN109901789A CN109901789A CN201810746370.8A CN201810746370A CN109901789A CN 109901789 A CN109901789 A CN 109901789A CN 201810746370 A CN201810746370 A CN 201810746370A CN 109901789 A CN109901789 A CN 109901789A
- Authority
- CN
- China
- Prior art keywords
- data
- controller
- instruction
- address
- low voltage
- 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
Links
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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
- G11C5/143—Detection of memory cassette insertion or removal; Continuity checks of supply or ground lines; Detection of supply variations, interruptions or levels ; Switching between alternative supplies
-
- 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/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
-
- 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/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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/0638—Organizing or formatting or addressing of data
-
- 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/0653—Monitoring storage devices or 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/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/0658—Controller construction arrangements
-
- 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/20—Initialising; Data preset; Chip identification
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/22—Safety or protection circuits preventing unauthorised or accidental access to memory cells
- G11C16/225—Preventing erasure, programming or reading when power supply voltages are outside the required ranges
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
- G11C5/148—Details of power up or power down circuits, standby circuits or recovery circuits
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)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Power Engineering (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明提供一种数据存储装置,其可包括:非易失性存储器装置;以及控制器,其包括寄存器,并且该控制器适于根据预设顺序从工作存储器提取指令以控制非易失性存储器装置、解析并处理指令以及存储处理结果,并且该控制器适于在发生低电压检测事件时,将正在执行的指令的地址存储到预设数据保持空间作为返回指令信息,然后执行重置操作。
Description
相关申请的交叉引用
本申请要求于2017年12月11日提交的申请号为10-2017-0169145的韩国申请的优先权,该韩国申请通过引用全部并入本文。
技术领域
各个实施例总体涉及一种半导体集成装置。特别地,实施例涉及一种数据存储装置、该数据存储装置的操作方法以及具有该数据存储装置的存储系统。
背景技术
诸如存储器装置的半导体装置正被开发成具有高集成度、高容量和高性能,同时半导体装置的运行速度进一步提高。
另一方面,用于驱动半导体装置的操作电压的电平也正在逐渐降低。
利用低操作电压进行操作的半导体装置在功耗方面是有利的。因为降低功耗是使用有限电力的移动电子装置中的主要问题,所以越来越需要降低半导体装置的操作电压。
使用低电平操作电压的半导体装置具有对从外部装置提供的电压信号的电平变化敏感的特性。例如,数据传输速度根据提供给存储器装置的外部电压的电平变化而变化,并且当数据传输速度的变化率相对高时,外部控制器也许不太可能有效地接收数据。
因此,半导体集成装置可被设计成检测供应电压何时下降到最小允许电压电平以下并适当地响应以确保稳定且可靠的操作。
发明内容
在实施例中,数据存储装置可包括:非易失性存储器装置;以及控制器,其包括寄存器,并且该控制器适于根据预设顺序从工作存储器提取指令以控制非易失性存储器装置、解析并处理指令以及存储处理结果,且该控制器适于在发生低电压检测事件时,将正在执行的指令的地址存储到预设数据保持空间作为返回指令信息,然后执行重置操作。
在实施例中,数据存储装置可包括:非易失性存储器装置;以及控制器,其适于控制非易失性存储器装置的数据交换。控制器可包括:寄存器;工作存储器,程序代码存储在该工作存储器中;控制单元,其适于根据预设顺序从工作存储器提取指令,并且处理该指令;以及低电压检测处理器,其适于在发生低电压检测事件时,将正在执行的指令的地址存储到预设数据保持空间作为返回指令信息,然后向控制单元请求重置。
在实施例中,一种数据存储装置的操作方法,该数据存储装置包括:非易失性存储器装置;以及控制器,其适于控制非易失性存储器装置的数据交换,该方法包括:通过控制器监测是否发生低电压检测事件;在发生低电压检测事件时,通过控制器提取正在执行的指令的地址;通过控制器将提取的指令的地址存储到预设数据保持空间作为返回指令信息;以及通过控制器执行重置操作。
在实施例中,数据系统可包括:主机装置;以及控制器,其包括非易失性存储器装置,并且该控制器适于根据预设顺序从工作存储器提取指令以控制非易失性存储器装置、解析并处理指令以及存储处理结果,并且该控制器适于在发生低电压检测事件时,将正在执行的指令的地址存储到预设数据保持空间中作为返回指令信息,然后执行重置操作。
附图说明
图1是示出根据实施例的数据存储装置的配置图。
图2是示出根据实施例的中央处理单元的配置图。
图3是示出根据实施例的LVD处理器的配置图。
图4是示出根据实施例的压缩地址的方法的示图。
图5是示出根据实施例的压缩地址的方法的示图。
图6是示出根据实施例的数据存储装置的操作方法的流程图。
图7是示出包括根据实施例的固态硬盘(SSD)的数据处理系统的示图。
图8是示出包括根据实施例的存储器系统的数据处理系统的示图。
图9是示出包括根据实施例的存储器系统的数据处理系统的示图。
图10是示出包括根据实施例的存储器系统的网络系统的示图。
图11是示出包括在根据实施例的存储器系统中的非易失性存储器装置的框图。
具体实施方式
下面参照附图更详细地描述本发明的各个实施例。然而,应注意的是,本发明可以不同的形式和变型实施,且不应被解释为限于本文所阐述的实施例。相反,提供所描述的实施例使得本公开将完整且全面,并将本发明充分地传达给本发明所属领域的技术人员。在整个公开中,相同的附图标记在本发明的各个附图和实施例中表示相同的部件。
将进一步理解的是,当元件被称为“连接至”或“联接至”另一元件时,其可以直接在另一元件上、连接至或联接至另一元件,或可存在一个或多个中间元件。另外,还将理解的是,当元件被称为在两个元件“之间”时,其可以是这两个元件之间的唯一元件,或者也可存在一个或多个中间元件。
本文使用的术语仅用于描述特定实施例,并不旨在限制本发明。
将进一步理解的是,当在该说明书中使用术语“包括”、“包括有”、“包含”和“包含有”时,其指定所阐述元件的存在而不排除一个或多个其它元件的存在或增加。如本文使用的,术语“和/或”包括一个或多个相关所列项目的任何一个和所有组合。
在下文中,将通过各个实施例的示例参照附图来描述数据存储装置、该数据存储装置的操作方法以及具有该数据存储装置的存储系统。
图1是示出根据实施例的数据存储装置10的配置图。
参照图1,根据实施例的数据存储装置10可包括控制器110和非易失性存储器装置(NVM)120。
控制器110可响应于来自主机装置或主机处理器的请求来控制非易失性存储器装置120。例如,控制器110可控制非易失性存储器装置120,使得响应于来自主机装置的请求而提供的数据被编程到非易失性存储器装置120。控制器110可响应于来自主机装置的读取请求,将存在于非易失性存储器装置120中的数据提供给主机装置。
非易失性存储器装置120可在控制器110的控制下写入数据或输出所写入的数据。非易失性存储器装置120可使用选自诸如以下的各种非易失性存储器装置的存储器装置来实施:电可擦除可编程ROM(EEPROM)、NAND闪速存储器、NOR闪速存储器、相变RAM(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)以及自旋力矩转移磁性RAM(STT-MRAM)。非易失性存储器装置120可包括多个管芯、多个芯片或多个封装。此外,非易失性存储器装置120可包括每个存储器单元中能够存储1位数据的单层单元,或者每个存储器单元中能够存储多位数据的多层单元。
在实施例中,控制器110可包括处理器111、高速缓冲存储器113、工作存储器115、主机接口117以及存储器接口119。控制器110可进一步包括低电压检测(LVD)处理器20。处理器111也可被称为控制处理器。
LVD处理器20可被配置成处理器111的一部分或被配置成向处理器111传输信号和从处理器111接收信号。LVD处理器20和处理器111可被配置成中央处理单元150的一部分。在实施例中,处理器111本身可被认为是中央处理单元150。
处理器111或中央处理单元150可被配置成根据预设顺序从工作存储器115提取指令、解析并处理指令以及存储处理结果。在实施例中,处理器111或中央处理单元150可被配置成从主机装置接收数据对象、处理数据对象并且向非易失性存储器装置120传输处理的数据对象,或者被配置成执行其逆进程。处理器111或中央处理单元150可被配置成向工作存储器115、主机接口117和存储器接口119传输进程所需的各种控制信息。在实施例中,处理器111或中央处理单元150可根据为数据存储装置10的各种操作提供的固件来操作。在实施例中,处理器111或中央处理单元150可实施闪存转换层(FTL)以执行用于管理非易失性存储器装置120的垃圾收集操作、地址映射操作、磨损均衡操作等。处理器111或中央处理单元150还可执行检测并校正从非易失性存储器装置120读出的数据的错误的功能。
高速缓冲存储器113被配置成临时存储从主机装置接收的数据对象或从非易失性存储器装置120读取的数据对象。因为高速缓冲存储器113具有高的数据读取/写入速度,所以待频繁使用的一些信息,例如关于数据块的写入时间和逻辑地址的信息,可被存储在高速缓冲存储器113中以便于读取操作。高速缓冲存储器113可以是能够存储数据的任意非暂时性机器可读介质,诸如RAM、存储级存储器(SCM)、非易失性存储器(NVM)、闪速存储器或固态磁盘(SSD),但是高速缓冲存储器113可不限于此。
工作存储器115可存储控制器110的操作所需的程序代码,例如固件或软件,并存储待由程序代码使用的代码数据等。程序代码可包括计算机操作指令。
将理解的是,工作存储器115可以是能够存储程序代码的非暂时性机器可读介质,诸如RAM、存储级存储器(SCM)、非易失性存储器(NVM)、闪速存储器或固态磁盘(SSD)。
高速缓冲存储器113和工作存储器115可彼此集成或彼此分开设置,并且不受本公开的本实施例限制。
主机接口117可提供通信信道,以在中央处理单元150的控制下从主机装置(主机处理器)接收命令和时钟信号并控制数据的输入/输出。特别地,主机接口117可提供主机装置和数据存储装置10之间的物理连接。主机接口117可根据主机装置的总线格式提供与数据存储装置10的接口。主机装置的总线格式可包括诸如以下的至少一种标准接口协议:安全数字、通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、个人计算机存储卡国际协会(PCMCIA)、并行高级技术附件(PATA)、串行高级技术附件(SATA)、小型计算机系统接口(SCSI)、串列SCSI(SAS)、外围组件互连(PCI)、高速PCI(PCI-E)和通用闪存(UFS)。
存储器接口119可提供通信信道以在控制器110和非易失性存储器装置120之间传输和接收信号。存储器接口119可在处理器111或中央处理单元150的控制下将临时存储在高速缓冲存储器113中的数据写入到非易失性存储器装置120。存储器接口119可将从非易失性存储器装置120读出的数据传输到高速缓冲存储器113,以将数据临时存储到高速缓冲存储器113。
LVD处理器20可在数据存储装置10的操作期间,或者换言之,在处理器111或中央处理单元150执行进程期间,监测供应电压是否下降到允许电压电平以下,即,是否发生低电压检测事件。
当发生低电压检测事件时,LVD处理器20可将重置之后返回进程的存储位置,即包括重置之后返回指令的地址的关于指令的信息,存储在预设存储空间中。
为此,处理器111或中央处理单元150可将低电压检测事件视为中断。当发生低电压检测事件时,LVD处理器20可将正被存储的关于指令的信息存储在特定存储空间(例如,处理器111或中央处理单元150的数据保持空间)中,之后,请求重置。然后,处理器111或中央处理单元150可重置(即,初始化)数据存储装置10。在重置操作期间,数据保持空间中的数据(即,在重置时仍被存储的关于指令的信息)可被保持而不会丢失。之后,存储在数据保持空间中的关于指令的信息可被传输到调试装置并用于调试数据存储装置10。
图2是示出根据实施例的图1的中央处理单元150的配置图。
参照图2,根据实施例的中央处理单元150可包括处理器111和LVD处理器20。在实施例中,中央处理单元150可以是处理器111本身。
处理器111可包括解码器1111、控制单元1113、算术逻辑单元1115和寄存器1117。
解码器1111可被配置成解析从工作存储器115提供的指令,程序代码已经被写入工作存储器115中。
控制单元1113可被配置成通过将由解码器1111解析的指令转换成与其对应的控制信号来生成控制信号。在实施例中,LVD处理器20可被配置成控制单元1113的一部分,或与控制单元1113一起形成控制逻辑1120。控制逻辑1120可执行与控制单元1113执行的功能基本相同或相似的功能。
算术逻辑单元1115可被配置成响应于从控制单元1113或控制逻辑1120提供的控制信号来执行算术操作/逻辑操作。
寄存器1117可以是用于存储待在处理器111的操作期间使用的地址、数据等的空间。寄存器1117可根据使用目的被划分为通用寄存器GR、状态寄存器SR、链接寄存器LR和程序计数器PC。
通用寄存器GR可用于数据操作。
状态寄存器SR可存储正在操作的进程的状态、先前操作模式下进程的状态等。
链接寄存器LR可分配处理器111从子程序返回到的指令的地址,或者存储处理器111在处理中断之后返回到的指令的地址。
程序计数器PC可存储正由处理器111执行的指令的地址,即待从存储器读取的指令的位置。当发生中断时,程序计数器PC的地址被移送到链接寄存器LR,并且在已处理中断之后,存储在链接寄存器LR中的地址被移送到程序计数器PC。之后,对应于该地址的指令被处理,从而使处理器111可以返回到发生中断之前已经执行的进程。
LVD处理器20可在数据存储装置10的操作期间监测是否发生低电压检测事件。当发生低电压检测事件时,LVD处理器20可向控制单元1113报告发生低电压检测事件。控制单元1113可将低电压检测事件视为中断,并且将处理器111在处理中断之后返回的地址存储到链接寄存器LR中。换言之,控制单元1113可将程序计数器PC的地址移送并存储到链接寄存器LR。此外,在数据存储装置10由于发生低电压检测事件被重置之后,控制单元1113可将链接寄存器LR的地址移送到程序计数器PC,使得处理器111返回到在发生低电压检测事件之前已经执行的进程,从而可以执行对应于存储器空间中的返回地址的指令。
LVD处理器20可检测来自链接寄存器LR的返回地址,并且通过将返回地址压缩成预设位数据来生成压缩的返回地址。此后,LVD处理器20可将压缩的返回地址存储到寄存器1117的特定存储空间,即,即使在初始化之后数据仍被保持而不会丢失的数据保持空间。因此,当发生低电压检测事件时,处理器111正在执行的指令的地址在数据保持空间中作为关于返回指令的信息而被记住,并且在重置数据存储装置10之后,处理器111可基于关于返回指令的信息再次返回到进程中断的时间。
图3是示出根据实施例的图1的LVD处理器20的配置图。
参照图3,LVD处理器20可包括LV检测单元201、压缩单元203、重置请求单元205和调试数据生成单元207。
LV检测单元201可在数据存储装置10的操作期间监测供应电压是否降低到预设允许电压电平以下。当因供应电压降低到预设允许电压电平以下而发生低电压检测事件时,LV检测单元201可向控制单元1113报告低电压检测事件。因此,控制单元1113可将低电压检测事件视为中断,并且将处理器111在处理中断之后返回的地址存储到链接寄存器LR中。换言之,程序计数器PC的地址可被移送并存储到链接寄存器LR。
压缩单元203可从链接寄存器LR提取返回地址并生成压缩的返回地址,压缩的返回地址为被压缩成预设位数据的所提取的返回地址。
下面将更详细地描述重置请求单元205和调试数据生成单元207。
图4和图5是示出根据实施例的压缩地址的方法的示图。
参照图4,工作存储器115可包括至少一个存储区域TCM1、TCM2和SRAM,程序代码被存储在至少一个存储区域TCM1、TCM2和SRAM中。每个存储区域TCM1、TCM2、SRAM可具有起始地址和对应于起始地址的标识符(图4中表示为“值”)。写入到每个存储区域TCM1、TCM2、SRAM中的指令的存储位置可利用距起始地址的偏移量来管理。
压缩单元203可确定标识符(图4中表示为对应于字段“值”的值的“M”和“A”)和偏移量(图4中表示为距起始地址“偏移0”的“1”至“27-1”)并使用标识符和偏移量来生成压缩的返回地址,该标识符为工作存储器115的区域之中存储从链接寄存器LR提取的返回地址的存储区域(例如,图4中对应于字段“值”中的值“2b'01”的TCM2)的标识符,该偏移量指示返回地址存储在对应存储区域(例如,TCM2)中的位置。
换言之,压缩单元203可生成包括压缩的返回地址的与指令相关的信息,该压缩的返回地址包括关于存储区域的标识符和对应存储区域的偏移量的信息,该存储区域中包括返回地址。
在实施例中,压缩单元203可被配置成执行散列算法。
参照图5,散列算法可指通过将输入值应用于散列函数F(x)来生成具有固定长度的散列索引的压缩方法。
因此,当对作为输入值提供的地址ADD1、ADD2和ADD3中的每个进行散列时,可获得具有预设长度(即,预设数量的位)的压缩的地址(图5中表示为“压缩的ADD”)作为散列索引。此外,当使散列索引反向散列时,可获得作为输入值的原始地址ADD1、ADD2、ADD3。
再次参照图3,当通过压缩链接寄存器LR的地址而形成的压缩的返回地址被存储到数据保持空间时,LVD处理器20的重置请求单元205可向控制单元1113请求重置数据存储装置10。因此,控制单元1113可初始化数据存储装置10。在实施例中,当低电压检测事件被报告并且数据存储装置10被重置时,控制单元1113可存储低电压检测事件发生计数。即使当数据存储装置10因发生低电压检测事件被重置时,存储在数据保持空间中的信息,例如包括发生低电压检测事件时生成并存储的压缩的返回地址的关于返回指令的信息,可被保持而不会丢失。
在数据存储装置10已被重置并重新启动之后,LVD处理器20的调试数据生成单元207可对从数据保持空间提取的压缩的返回地址进行解压缩,生成解压缩的返回地址作为调试数据,并且将调试数据存储到调试数据存储区域。调试数据存储区域可以是高速缓冲存储器113或工作存储器115的预分配区域。在数据存储装置10已被重置之后,调试数据生成单元207可从控制单元1113接收低电压检测事件发生计数,并且将低电压检测事件发生计数与解压缩的返回地址一起存储为调试数据。
图6是示出根据实施例的数据存储装置10的操作方法的流程图。
当对数据存储装置10执行进程时,在步骤S101中,LVD处理器20可监测供应电压是否降低到预设允许电压电平以下。
当发生低电压检测事件时,LVD处理器20可向控制单元1113报告发生低电压检测事件。
因此,控制单元1113可通过将程序计数器PC的地址移送到链接寄存器LR的操作来存储返回地址。在步骤S103中,LVD处理器20可从链接寄存器LR提取返回地址,并且在步骤S105中,LVD处理器20可压缩返回地址以生成具有预设数量的位的压缩的返回地址。在步骤S107中,压缩的返回地址可被存储在数据保持空间中,该数据保持空间中的数据即使重置之后也不会丢失。
在压缩的返回地址已被可靠地存储之后,在步骤S109中,LVD处理器20可向控制单元1113请求重置,从而数据存储装置10可被初始化。即使在数据存储装置已被初始化之后,存储在数据保持空间中的压缩的返回地址也可被保持而不会丢失。
在实施例中,当控制单元1113响应于LVD处理器20的请求而重置数据存储装置10时,控制单元1113可存储低电压检测事件发生计数。
在数据存储装置10已被重置并重新启动之后,在步骤S111中,LVD处理器20可对从数据保持空间提取的压缩的返回地址进行解压缩,生成解压缩的返回地址作为调试数据,并且将调试数据存储到调试数据存储区域。LVD处理器20可从控制单元1113接收低电压检测事件发生计数,并且将低电压检测事件发生计数与解压缩的返回地址一起存储为调试数据。
调试数据可被提供给调试器。调试器可确定数据存储装置10的哪个指令导致发生低电压检测事件,从而可以相应地采取适当的措施。
图7是示出包括根据实施例的固态硬盘(SSD)1200的数据处理系统1000的示图。参照图7,数据处理系统1000可包括主机装置1100和SSD 1200。
SSD 1200可包括控制器1210、多个非易失性存储器装置1220-0至1220-n、缓冲存储器装置1230、电源1240、信号连接器1101和电源连接器1103。
控制器1210可控制SSD 1200的整体操作。控制器1210可包括主机接口单元、控制单元、用作工作存储器的随机存取存储器、错误校正码(ECC)单元和存储器接口单元。在实施例中,控制器1210可由包括处理器111或中央处理单元150的控制器110来配置,该处理器111或中央处理单元150包含如图1至图3所示的LVD处理器20。
主机装置1100可通过信号连接器1101与SSD 1200交换信号。信号可包括命令、地址、数据等。主机接口单元可根据主机装置1100的协议来接口连接主机装置1100和SSD1200。
控制器1210可解析并处理从主机装置1100接收的信号。控制器1210可根据用于驱动SSD 1200的固件或软件来控制内部功能块的操作。
ECC单元可检测从非易失性存储器装置1220-0至1220-n中的至少一个读取的数据的错误。当检测到的错误在可校正的范围内时,ECC单元可校正检测到的错误。
缓冲存储器装置1230可临时存储待存储在非易失性存储器装置1220-0至1220-n中的至少一个中的数据。此外,缓冲存储器装置1230可临时存储从非易失性存储器装置1220-0至1220-n中的至少一个读取的数据。临时存储在缓冲存储器装置1230中的数据可根据控制器1210的控制被传输到主机装置1100或非易失性存储器装置1220-0至1220-n中的至少一个。
非易失性存储器装置1220-0至1220-n可用作SSD 1200的存储介质。非易失性存储器装置1220-0至1220-n可通过多个信道CH1至CHn分别与控制器1210联接。一个或多个非易失性存储器装置可联接到一个信道。联接到每个信道的非易失性存储器装置可联接到相同的信号总线和数据总线。
电源1240可向SSD 1200的内部提供通过电源连接器1103输入的电力PWR。电源1240可包括辅助电源。辅助电源可在发生突然断电时供电以允许SSD 1200正常地结束。辅助电源可包括大容量电容器。
信号连接器1101可根据主机装置1100和SSD 1200之间的接口连接方案通过各种类型的连接器来配置。
电源连接器1103可根据主机装置1100的供电方案通过各种类型的连接器来配置。
图8是示出数据处理系统3000的示图。参照图8,数据处理系统3000可以包括主机装置3100和存储器系统3200。
主机装置3100可以诸如印制电路板的板形式来配置。尽管未示出,但主机装置3100可包括内部功能块,该内部功能块用于执行主机装置的功能。
主机装置3100可包括诸如插座、插槽或连接器的连接端子3110。存储器系统3200可被安装到连接端子3110。
存储器系统3200可以诸如印制电路板的板形式来配置。存储器系统3200可被称为存储器模块或存储卡。存储器系统3200可包括控制器3210、缓冲存储器装置3220、非易失性存储器装置3231和3232、电源管理集成电路(PMIC)3240和连接端子3250。
控制器3210可控制存储器系统3200的整体操作。控制器3210可以与包括处理器111或中央处理单元150的控制器110相同的方式来配置,该处理器111或中央处理单元150包含如图1至图3所示的LVD处理器20。
缓冲存储器装置3220可临时存储待被存储在非易失性存储器装置3231和3232中的数据。此外,缓冲存储器装置3220可临时存储从非易失性存储器装置3231和3232读取的数据。被临时存储在缓冲存储器装置3220中的数据可根据控制器3210的控制被传输到主机装置3100或非易失性存储器装置3231和3232。
非易失性存储器装置3231和3232可用作存储器系统3200的存储介质。
PMIC 3240可向存储器系统3200的内部提供通过连接端子3250输入的电力。PMIC3240可根据控制器3210的控制来管理存储器系统3200的电力。
连接端子3250可联接到主机装置3100的连接端子3110。通过连接端子3250,诸如命令、地址、数据等的信号和电力可在主机装置3100与存储器系统3200之间传输。连接端子3250可根据主机装置3100和存储器系统3200之间的接口连接方案被配置成各种类型。连接端子3250可被设置在存储器系统3200的任一侧。
图9是示出包括根据实施例的存储器系统4200的数据处理系统4000的示图。参照图9,数据处理系统4000可以包括主机装置4100和存储器系统4200。
主机装置4100可以诸如印制电路板的板形式来配置。尽管未示出,但主机装置4100可包括内部功能块,该内部功能块用于执行主机装置的功能。
存储器系统4200可以表面安装型封装的形式来配置。存储器系统4200可通过焊球4250安装到主机装置4100。存储器系统4200可包括控制器4210、缓冲存储器装置4220和非易失性存储器装置4230。
控制器4210可控制存储器系统4200的整体操作。控制器4210可以与包括处理器111或中央处理单元150的控制器110相同的方式来配置,该处理器111或中央处理单元150包含如图1至图3所示的LVD处理器20。
缓冲存储器装置4220可临时存储待被存储在非易失性存储器装置4230中的数据。进一步地,缓冲存储器装置4220可临时存储从非易失性存储器装置4230读取的数据。被临时存储在缓冲存储器装置4220中的数据可根据控制器4210的控制被传输到主机装置4100或非易失性存储器装置4230。
非易失性存储器装置4230可用作存储器系统4200的存储介质。
图10是示出包括根据实施例的存储器系统5200的网络系统5000的示图。参照图10,网络系统5000可包括通过网络5500联接的服务器系统5300和多个客户端系统5410至5430。
服务器系统5300可响应于来自多个客户端系统5410至5430的请求来服务数据。例如,服务器系统5300可存储从多个客户端系统5410至5430提供的数据。再例如,服务器系统5300可向多个客户端系统5410至5430提供数据。
服务器系统5300可包括主机装置5100和存储器系统5200。存储器系统5200可由图1所示的数据存储装置10、图7所示的SSD 1200、图8所示的存储器系统3200或图9所示的存储器系统4200来配置。
图11是示出包括在根据实施例的存储器系统中的非易失性存储器装置300的框图。参照图11,非易失性存储器装置300可包括存储器单元阵列310、行解码器320、数据读取/写入块330、列解码器340、电压发生器350和控制逻辑360。
存储器单元阵列310可包括设置在字线WL1至WLm和位线BL1至BLn彼此相交的区域处的存储器单元MC。存储器单元阵列310可包括三维存储器阵列。三维存储器阵列具有垂直于半导体衬底的平坦表面的方向。此外,三维存储器阵列表示包括NAND串的结构,在NAND串中,至少一个存储器单元位于另一存储器单元的竖直上部。然而,三维存储器阵列的结构不限于此。
行解码器320可通过字线WL1至WLm与存储器单元阵列310联接。行解码器320可根据控制逻辑360的控制来操作。行解码器320可对从外部装置(未示出)提供的地址进行解码。行解码器320可基于解码结果来选择并驱动字线WL1至WLm。例如,行解码器320可向字线WL1至WLm提供从电压发生器350提供的字线电压。
数据读取/写入块330可通过位线BL1至BLn与存储器单元阵列310联接。数据读取/写入块330可包括分别对应于位线BL1至BLn的读取/写入电路RW1至RWn。数据读取/写入块330可根据控制逻辑360的控制来操作。数据读取/写入块330可根据操作模式用作写入驱动器或读出放大器。例如,数据读取/写入块330可在写入操作中用作写入驱动器,该写入驱动器将从外部装置提供的数据存储在存储器单元阵列310中。例如,数据读取/写入块330可在读取操作中用作读出放大器,该读出放大器从存储器单元阵列310读出数据。
列解码器340可根据控制逻辑360的控制来操作。列解码器340可对从外部装置提供的地址进行解码。列解码器340可基于解码结果将分别对应于位线BL1至BLn的数据读取/写入块330的读取/写入电路RW1至RWn与数据输入/输出线或数据输入/输出缓冲器联接。
电压发生器350可生成待在非易失性存储器装置300的内部操作中使用的电压。通过电压发生器350生成的电压可被施加到存储器单元阵列310的存储器单元。例如,在编程操作中生成的编程电压可被施加到待执行编程操作的存储器单元的字线。再例如,在擦除操作中生成的擦除电压可被施加到待执行擦除操作的存储器单元的阱区。又例如,在读取操作中生成的读取电压可被施加到待执行读取操作的存储器单元的字线。
控制逻辑360可基于从外部装置提供的控制信号来控制非易失性存储器装置300的整体操作。例如,控制逻辑360可控制非易失性存储器装置300的操作,例如非易失性存储器装置300的读取操作、写入操作和擦除操作。
尽管上面已经描述了各个实施例,但是本领域技术人员将理解的是,所描述的实施例仅为示例。因此,本文所描述的数据存储装置、该数据存储装置的操作方法以及包括该数据存储装置的存储系统不应基于所描述的实施例而受到限制。
Claims (19)
1.一种数据存储装置,其包括:
非易失性存储器装置;以及
控制器,其包括寄存器,并且所述控制器适于根据预设顺序从工作存储器提取指令以控制所述非易失性存储器装置、解析和处理所述指令以及存储处理的结果,并且所述控制器适于在发生低电压检测事件时,将正在执行的指令的地址存储到预设数据保持空间作为返回指令信息,然后执行重置操作。
2.根据权利要求1所述的数据存储装置,其中所述数据保持空间是不管是否执行所述重置操作,预先存储的数据都会被保持的空间。
3.根据权利要求1所述的数据存储装置,其中所述数据保持空间被分配为所述寄存器的一部分。
4.根据权利要求1所述的数据存储装置,其中所述控制器被配置成压缩并存储正在执行的指令的地址。
5.根据权利要求1所述的数据存储装置,其中所述控制器被配置成在所述重置操作之后生成所述返回指令信息作为调试数据。
6.一种数据存储装置,其包括:
非易失性存储器装置;以及
控制器,其适于控制所述非易失性存储器装置的数据交换,
其中所述控制器包括:
寄存器;
工作存储器,程序代码存储在所述工作存储器中;
控制单元,其适于根据预设顺序从所述工作存储器提取指令,并处理所述指令;以及
低电压检测处理器,其适于在发生低电压检测事件时,将正在执行的指令的地址存储到预设数据保持空间作为返回指令信息,然后向所述控制单元请求重置。
7.根据权利要求6所述的数据存储装置,其中所述低电压检测处理器包括:
低电压检测单元,其适于监测是否发生所述低电压检测事件,并向所述控制单元报告所述低电压检测事件;以及
压缩单元,其适于在所述控制单元响应于所述低电压检测事件提取正在执行的指令的地址作为返回地址时,压缩所述返回地址并将压缩的返回地址存储到所述数据保持空间作为所述返回指令信息。
8.根据权利要求7所述的数据存储装置,其中所述低电压检测处理器进一步包括调试数据生成单元,所述调试数据生成单元适于在重置操作之后生成所述返回指令信息作为调试数据。
9.根据权利要求7所述的数据存储装置,其中所述低电压检测处理器进一步包括重置请求单元,所述重置请求单元适于在通过压缩所述返回地址而形成的所述压缩的返回地址被存储到所述数据保持空间时,向所述控制单元请求重置。
10.根据权利要求6所述的数据存储装置,其中所述数据保持空间是所述寄存器的至少一部分,不管是否执行重置操作,所述寄存器的至少一部分中预先存储的数据都会被保持。
11.一种数据存储装置的操作方法,所述数据存储装置包括:非易失性存储器装置;以及控制器,其适于控制所述非易失性存储器装置的数据交换,所述操作方法包括:
通过所述控制器监测是否发生低电压检测事件;
在发生所述低电压检测事件时,通过所述控制器提取正在执行的指令的地址;
通过所述控制器将提取的指令的地址存储到预设数据保持空间作为返回指令信息;以及
通过所述控制器执行重置操作。
12.根据权利要求11所述的操作方法,其进一步包括:
在所述重置操作之后生成所述返回指令信息作为调试数据。
13.根据权利要求11所述的操作方法,其中所述数据保持空间是寄存器的至少一部分,不管是否执行重置操作,所述寄存器的至少一部分中预先存储的数据都会被保持。
14.一种存储系统,其包括:
主机装置;以及
控制器,其包括非易失性存储器装置,并且所述控制器适于根据预设顺序从工作存储器提取指令以控制所述非易失性存储器装置、解析并处理所述指令以及存储处理的结果,并且所述控制器适于在发生低电压检测事件时,将正在执行的指令的地址存储到预设数据保持空间作为返回指令信息,然后执行重置操作。
15.根据权利要求14所述的存储系统,其中所述数据保持空间是不管是否执行所述重置操作,预先存储的数据都会被保持的空间。
16.根据权利要求14所述的存储系统,其中所述控制器包括寄存器,并且所述数据保持空间被分配为所述寄存器的一部分。
17.根据权利要求14所述的存储系统,其中所述控制器被配置成压缩并存储正在执行的指令的地址。
18.根据权利要求14所述的存储系统,其中所述控制器被配置成在所述重置操作之后生成所述返回指令信息作为调试数据。
19.一种控制器,其包括:
低电压检测处理器,即LVD处理器,其适于检测存储器装置的LVD事件;以及
控制处理器,其适于:
在保持检测时正在执行的指令的信息的同时,根据检测来初始化所述存储器装置;以及
通过参考保持的信息,在初始化之后执行一系列指令以控制所述存储器装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170169145A KR20190068902A (ko) | 2017-12-11 | 2017-12-11 | 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 |
KR10-2017-0169145 | 2017-12-11 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109901789A true CN109901789A (zh) | 2019-06-18 |
Family
ID=66696818
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810746370.8A Pending CN109901789A (zh) | 2017-12-11 | 2018-07-09 | 数据存储装置、该数据存储装置的操作方法以及存储系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20190179561A1 (zh) |
KR (1) | KR20190068902A (zh) |
CN (1) | CN109901789A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113448503A (zh) * | 2020-03-24 | 2021-09-28 | 爱思开海力士有限公司 | 调整顺序命令的操作时间差的存储器系统及其操作方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11295792B2 (en) * | 2019-09-30 | 2022-04-05 | Taiwan Semiconductor Manufacturing Company, Ltd. | Back-up and restoration of register data |
CN114063931B (zh) * | 2021-11-26 | 2023-04-25 | 重庆科创职业学院 | 一种基于大数据的数据存储方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6721878B1 (en) * | 2000-06-14 | 2004-04-13 | Cypress Semiconductor Corp. | Low-latency interrupt handling during memory access delay periods in microprocessors |
CN103092764A (zh) * | 2011-10-31 | 2013-05-08 | 苹果公司 | 用于获得和使用非易失性存储器健康信息的系统和方法 |
US9626279B2 (en) * | 2013-07-01 | 2017-04-18 | Nxp Usa, Inc. | Debug method and device for providing indexed trace messages |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5428252A (en) * | 1992-01-03 | 1995-06-27 | Zilog, Inc. | Power supply interruption detection and response system for a microcontroller |
US5495453A (en) * | 1994-10-19 | 1996-02-27 | Intel Corporation | Low power voltage detector circuit including a flash memory cell |
US6775186B1 (en) * | 2003-07-03 | 2004-08-10 | Tower Semiconductor Ltd. | Low voltage sensing circuit for non-volatile memory device |
US9886080B2 (en) * | 2014-12-30 | 2018-02-06 | Sandisk Technologies Llc | Low voltage detection and initialization for non-volatile memory systems |
-
2017
- 2017-12-11 KR KR1020170169145A patent/KR20190068902A/ko unknown
-
2018
- 2018-04-05 US US15/946,236 patent/US20190179561A1/en not_active Abandoned
- 2018-07-09 CN CN201810746370.8A patent/CN109901789A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6721878B1 (en) * | 2000-06-14 | 2004-04-13 | Cypress Semiconductor Corp. | Low-latency interrupt handling during memory access delay periods in microprocessors |
CN103092764A (zh) * | 2011-10-31 | 2013-05-08 | 苹果公司 | 用于获得和使用非易失性存储器健康信息的系统和方法 |
US9626279B2 (en) * | 2013-07-01 | 2017-04-18 | Nxp Usa, Inc. | Debug method and device for providing indexed trace messages |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113448503A (zh) * | 2020-03-24 | 2021-09-28 | 爱思开海力士有限公司 | 调整顺序命令的操作时间差的存储器系统及其操作方法 |
CN113448503B (zh) * | 2020-03-24 | 2024-03-29 | 爱思开海力士有限公司 | 调整顺序命令的操作时间差的存储器系统及其操作方法 |
Also Published As
Publication number | Publication date |
---|---|
US20190179561A1 (en) | 2019-06-13 |
KR20190068902A (ko) | 2019-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107168886B (zh) | 数据存储装置及其操作方法 | |
CN108932107B (zh) | 数据存储装置及其操作方法 | |
TW201839613A (zh) | 數據儲存裝置及其操作方法 | |
CN107240420B (zh) | 数据存储装置及其操作方法 | |
CN108062962A (zh) | 数据存储装置及其操作方法 | |
CN109933280A (zh) | 数据存储装置及其操作方法 | |
US20190179694A1 (en) | Data storage device, operating method thereof and storage system including the same | |
US20200174921A1 (en) | Data storage device, operation method thereof, and storage system including the same | |
US11481153B2 (en) | Data storage device and operating method thereof | |
CN108459978A (zh) | 包括非易失性存储器装置的数据存储装置及其操作方法 | |
CN109901789A (zh) | 数据存储装置、该数据存储装置的操作方法以及存储系统 | |
KR20160105625A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
CN109426627A (zh) | 数据存储装置及其操作方法 | |
CN110362423B (zh) | 优化恢复性能的数据存储装置、操作方法以及存储系统 | |
CN109147854A (zh) | 数据存储装置及其操作方法 | |
CN109426442A (zh) | 数据存储装置及其操作方法 | |
CN109240937A (zh) | 数据存储装置及其操作方法 | |
US11347634B2 (en) | Memory system performing write-same operation and operating method thereof | |
CN109582483A (zh) | 数据存储装置及其操作方法 | |
CN113127381A (zh) | 执行主机映射管理的存储器系统 | |
US20230266884A1 (en) | Operating method for storage controller and storage system including same | |
US20200073701A1 (en) | Data storage device, operation method thereof and storage system having the same | |
CN112181281A (zh) | 数据存储装置及其操作方法 | |
US20190361608A1 (en) | Data storage device and operation method for recovery, and storage system having the same | |
CN108417232B (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190618 |