CN111916140A - 控制器及其操作方法以及包括控制器的存储器系统 - Google Patents

控制器及其操作方法以及包括控制器的存储器系统 Download PDF

Info

Publication number
CN111916140A
CN111916140A CN202010081075.2A CN202010081075A CN111916140A CN 111916140 A CN111916140 A CN 111916140A CN 202010081075 A CN202010081075 A CN 202010081075A CN 111916140 A CN111916140 A CN 111916140A
Authority
CN
China
Prior art keywords
memory
command
memory system
memory device
controller
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.)
Granted
Application number
CN202010081075.2A
Other languages
English (en)
Other versions
CN111916140B (zh
Inventor
金度贤
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.)
SK Hynix Inc
Original Assignee
SK Hynix Inc
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 SK Hynix Inc filed Critical SK Hynix Inc
Publication of CN111916140A publication Critical patent/CN111916140A/zh
Application granted granted Critical
Publication of CN111916140B publication Critical patent/CN111916140B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • 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/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0879Burst mode
    • 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/0604Improving or facilitating administration, e.g. storage management
    • 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/061Improving I/O performance
    • 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/062Securing storage systems
    • G06F3/0623Securing storage systems in relation to content
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • 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
    • 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/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

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)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种控制器、控制器的操作方法以及包括控制器的存储器系统。一种控制器的操作方法,该控制器控制包括非易失性存储器装置的存储器系统,该非易失性存储器装置包括多个数据存储区域,该操作方法可以包括:从主机接收命令;通过确认接收的命令是否具有保留区域来确定接收的命令中是否包括先决条件命令;通过根据接收的命令中包括的先决条件命令,对非易失性存储器装置执行安全擦除和模式化,来将存储器系统切换到先决条件状态。

Description

控制器及其操作方法以及包括控制器的存储器系统
相关申请的交叉引用
本申请要求于2019年5月10日向韩国知识产权局提交的申请号为10-2019-0054906的专利申请的优先权,其全部内容通过引用并入本文。
技术领域
各种实施例总体涉及一种半导体装置,并且更特别地,涉及一种控制器、控制器的操作方法以及包括控制器的存储器系统。
背景技术
近年来,计算机环境范例已经转变为随时随地使用计算机系统的普适计算。因此,诸如移动电话、数码相机和笔记本电脑的便携式电子设备的使用迅速增长。通常,便携式电子设备使用采用存储器装置的存储器系统。存储器系统可以用于存储在便携式电子设备中使用的数据。
使用存储器装置的存储器系统展现出良好的稳定性和耐久性,并且还没有机械驱动单元、具有较快的信息访问速度以及低功耗。这样的存储器系统可以包括通用串行总线(USB)存储器装置、具有各种接口的存储卡、通用闪存(UFS)装置、固态驱动器(SSD)等。
发明内容
实施例提供了一种能够减少存储器系统的性能测试所需时间的技术。
在本公开的实施例中,一种控制包括非易失性存储器装置的存储器系统的控制器的操作方法,其中非易失性存储器装置包括多个数据存储区域,该操作方法可以包括:从主机接收命令;通过确认接收的命令中是否具有保留区域来确定接收的命令中是否包括先决条件命令;通过根据接收的命令中包括的先决条件命令,对非易失性存储器装置执行安全擦除和模式化,来将存储器系统切换到先决条件状态。
在本公开的实施例中,一种存储器系统可以包括:包括多个数据存储区域的非易失性存储器装置和被配置为控制非易失性存储器装置的控制器。控制器可以通过确认接收的命令是否具有保留区域来确定接收的命令中是否包括先决条件命令,并且非易失性存储器装置可以根据接收的命令中包括的先决条件命令来执行安全擦除和模式化。
在本公开的实施例中,一种用于控制具有多个存储块的存储器装置的控制器的操作方法,该操作方法可以包括:响应于先决条件命令,控制存储器装置擦除全部存储块,且将测试数据的模式存储在存储块内的、具有由先决条件命令指示的大小的存储区域中;并且响应于测试命令,控制存储器装置对存储该测试数据的模式的存储块执行读取操作。
根据本公开的实施例,可以减少存储器系统的性能测试所需的时间。
以下内容描述了这些和其它特征、方面以及实施例。
附图说明
从结合附图的以下详细描述中,将更清楚地理解本公开的主题的上述和其它方面、特征以及优点,其中:
图1是示出根据本公开的实施例的存储器系统的配置的示图;
图2(A)、图2(B)和图2(C)是说明根据本公开的实施例的存储器系统的操作方法的示图;
图3是说明根据本公开的实施例的存储器系统的操作方法的示图;
图4是示出根据本公开的实施例的包括固态驱动器(SSD)的数据处理系统的示图;
图5是示出图4中的控制器的配置的示图;
图6是示出根据本公开的实施例的包括存储器系统的数据处理系统的示图;
图7是示出根据本公开的实施例的包括存储器系统的数据处理系统的示图;
图8是示出根据本公开的实施例的包括存储器系统的网络系统的示图;以及
图9是示出根据本公开的实施例的包括在存储器系统中的非易失性存储器装置的示图。
具体实施方式
以下将参考附图更详细地描述本发明的各种实施例。在整个说明中,对“一个实施例”等的引用不一定仅限于一个实施例,并且对任意这种短语的不同引用不一定针对相同的实施例。
本文结合各种实施例描述了本发明。然而,本发明不限于任何特定实施例或其任何特定细节。相反,本领域普通技术人员将理解的是,可以在不脱离本发明的原理和精神的情况下对这些实施例中的任何实施例进行改变,这包含落入权利要求范围内的所有这种改变。
图1是示出根据实施例的存储器系统10的配置的示图。
参照图1,存储器系统10可以存储待由诸如移动电话、MP3播放器、笔记本电脑、台式电脑、游戏机、电视(TV)、车载信息娱乐系统等的主机20访问的数据。
根据联接到主机20的接口协议,存储器系统10可以被配置为各种类型的存储装置中的任意一种。例如,存储器系统10可以被配置为固态驱动器(SSD),MMC、eMMC、RS-MMC和微型MMC形式的多媒体卡,SD、迷你-SD和微型-SD形式的安全数字卡,通用串行总线(USB)存储装置,通用闪存(UFS)装置,个人计算机存储卡国际协会(PCMCIA)卡型存储装置,外围组件互连(PCI)卡类型存储装置、高速PCI(PCI-E)卡型存储装置,紧凑型闪存(CF)卡,智能媒体卡,记忆棒和/或类似的装置。
存储器系统10可以被制造为各种类型的封装中的任意一种。例如,存储器系统10可以被制造为堆叠封装(POP)、系统级封装(SIP)、片上系统(SOC)、多芯片封装(MCP)、板上芯片(COB)、晶圆级制造封装(WFP)和/或晶圆级堆叠封装(WSP)。
存储器系统10可以包括非易失性存储器装置100和控制器200。
非易失性存储器装置100可以用作存储器系统10的存储介质。根据非易失性存储器装置中的存储器单元,非易失性存储器装置100可以包括诸如以下的各种类型的非易失性存储器装置中的任意一种:NAND闪速存储器装置、NOR闪速存储器装置、使用铁电电容器的铁电随机存取存储器(FRAM)、使用隧穿磁阻(TMR)层的磁性随机存取存储器(MRAM)、使用硫族化物合金的相变随机存取存储器(PRAM)和/或使用过渡金属化合物的电阻式随机存取存储器(ReRAM)。
尽管为了清楚起见,在图1中示出了存储器系统10包括一个非易失性存储器装置100,但是存储器系统10可以包括多个非易失性存储器装置100,并且本公开可以等同地应用于包括多个非易失性存储器装置100的存储器系统10。
以下将参考图9详细描述的非易失性存储器装置100可以包括存储器单元阵列110,存储器单元阵列110包括布置在多个字线WL1至WLm和多个位线BL1至BLn彼此交叉的区域中的多个存储器单元MC。存储器单元阵列110可以包括多个存储块,并且多个存储块中的每一个可以包括多个页面。
例如,存储器单元阵列中的每一个存储器单元可以是待存储单个位数据(例如,一位数据)的单层单元(SLC)或待存储多个位数据的多层单元(MLC)。即,MLC可以存储两位或更多位数据。也就是说,术语MLC有时被保留用于待存储两位数据的单元,在这种情况下,待存储三位数据的存储器单元称为三层单元(TLC),待存储四位数据的存储器单元称为四层单元(QLC)。然而,在下面的描述中,MLC以更一般的含义使用,以描述待存储两位或更多位数据的存储器单元。
存储器单元阵列110可以包括一个或多个SLC和MLC。存储器单元阵列110可以包括以二维(2D)水平结构布置的存储器单元或以三维(3D)垂直结构布置的存储器单元。
控制器200可以通过驱动加载到存储器230中的固件或软件来控制存储器系统10的整体操作。控制器200可以解码并驱动诸如固件或软件的代码类型指令或算法。控制器200可以利用硬件或硬件和软件的组合来实现。
控制器200可以包括主机接口210、处理器220、存储器230和存储器接口240。尽管在图1中未示出,但是控制器200可以进一步包括错误校正码(ECC)引擎,ECC引擎通过对由主机20提供的写入数据执行ECC编码来生成奇偶校验,并且使用奇偶校验对从非易失性存储器装置100中读出的数据执行ECC解码。
主机接口210可以根据主机20的协议而执行主机20和存储器系统10之间的接口连接。例如,主机接口210可以通过包括USB协议、UFS协议、MMC协议、并行高级技术附件(PATA)协议、串行高级技术附件(SATA)协议、小型计算机系统接口(SCSI)协议、串列SCSI(SAS)协议、PCI协议和/或PCI-E协议的各种协议中的任意一种而与主机20通信。
处理器220可以由微控制单元(MCU)和/或中央处理单元(CPU)配置。处理器220可以处理从主机20传输的请求。为了处理从主机20传输的请求,处理器220可以驱动加载到存储器230中的代码类型的指令或算法(例如,固件),并且控制诸如主机接口210、存储器230和存储器接口240的内部功能块以及非易失性存储器装置100。
处理器220可以基于从主机20传输的请求来生成用于控制非易失性存储器装置100的操作的控制信号,并且可以通过存储器接口240将所生成的控制信号提供到非易失性存储器装置100。
存储器230可以由诸如动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM)的随机存取存储器配置。存储器230可以存储由处理器220驱动的固件。存储器230还可以存储用于驱动固件的数据(例如,元数据)。例如,存储器230可以用作处理器220的工作存储器。
存储器230可以被配置为包括数据缓冲器,数据缓冲器被配置为临时存储待从主机20传输到非易失性存储器装置100的写入数据或临时存储待从非易失性存储器装置100传输到主机20的读取数据。例如,存储器230可以用作处理器220的缓冲存储器。
存储器接口240可以根据处理器220的控制来控制非易失性存储器装置100。存储器接口240可以指存储器控制器。存储器接口240可以将控制信号提供到非易失性存储器装置100。控制信号可以包括用于控制非易失性存储器装置100的命令、地址、操作控制信号等。存储器接口240可以将存储在数据缓冲器中的数据提供给非易失性存储器装置100或者将从非易失性存储器装置100传输的数据存储在数据缓冲器中。
图2是说明根据实施例的存储器系统的操作方法的示图。
参照图2,示出了待存储用于存储器系统10的操作的系统数据的系统数据区域(System Data)和待存储用户数据的用户数据区域(User Data)。图2(A)示出了存储器系统100待被初始使用的、作为鲜盒(FOB)的初始状态。初始状态可以指刚执行安全擦除之后的干净状态。图2(B)示出作为对存储器系统10执行的顺序写入的结果的测试数据的顺序模式,并且图2(C)示出作为对存储器系统10执行的随机写入的结果的测试数据的随机模式。
参照图2(A),由于在存储器系统10的初始状态下没有预设所存储的数据,因此逻辑地址和物理地址之间的映射关系可能不存在。图2(B)示出了以用于存储器系统10的顺序写入和读取测试的数据存储区域的设置大小单位(例如,每个128KB)来执行顺序写入操作的状态。图2(C)示出了以用于存储器系统10的随机写入和读取测试的数据存储区域的设置大小单位(例如,每个512B)来执行随机写入操作的状态。图2(B)和图2(C)中所示的数字可以指执行写入操作的顺序。
通常,为了存储器系统10的性能测试,存储器系统10必须处于如图2(A)所示的初始状态。为了使存储器系统10处于初始状态,可以对非易失性存储器装置100执行安全擦除操作。当非易失性存储器装置100处于初始状态时,如图2(B)或图2(C)所示执行模式化。对于模式化,存储器系统10多次反复地执行从主机20接收数据并且将接收的数据存储在非易失性存储装置中的操作,因此可能需要大量时间来准备存储器系统10的性能测试。
因此,实施例可通过将先决条件执行命令包括在从主机20接收的命令的保留区域中,来提供能够减少用于准备性能测试的时间的技术,其中先决条件执行命令使得存储器系统10执行性能测试的准备操作。先决条件可以指已经对存储器系统10执行了安全擦除和模式化的状态。
图3是说明根据实施例的存储器系统的操作方法的示图。
参照图3,在操作S310,存储器系统10可以从主机20接收命令。命令可以是从主机20传输到存储器系统10的读取命令或写入命令。
在实施例中,命令可以是根据高速非易失性存储器(NVMe)标准的。例如,主机20可以将根据NVMe标准的命令(命令字(Command DWord))11(CDW 11)传输到非易失性存储器装置100。这是因为命令11中包含安全擦除操作。
表1示出了NVMe标准文档中公开的命令格式的命令11(CDW 11),表2示出了命令11的详细说明。
表1
Figure BDA0002380347860000071
Figure BDA0002380347860000081
表2
Figure BDA0002380347860000082
表3是使用表2的保留区域的命令11的示例。在实施例中,命令11的保留区域可以例如包括待执行模式编程操作的数据大小(例如,块大小)、顺序写入/随机写入、特征关闭、预处理等。
表3
Figure BDA0002380347860000083
Figure BDA0002380347860000091
表4显示了表3中的数据大小(块大小)的示例。参照表4,可以使用保留区域的第15位至第19位、利用512Byte至32MB来表示用于执行模式编程的数据大小。
表4
Figure BDA0002380347860000092
在实施例中,命令11可以包括如表3中所示的指示预处理的位12、指示用于提高非易失性存储器装置的性能的部分特征关闭的位13、指示模式编程操作是顺序写入还是随机写入的位14以及指示模式编程的数据大小的位15至位19。
在操作S320,存储器系统10可以确定命令是否包括先决条件执行命令。例如,控制器200可以确认从主机20接收的命令的保留区域中是否包括先决条件执行命令。
在实施例中,从主机20接收的命令可以是安全擦除命令。例如,主机20可以将保留区域中包括先决条件执行命令的安全擦除命令传输到存储器系统10。
在实施例中,命令的保留区域可以包括模式编程是随机模式化还是顺序模式化的信息。
在实施例中,命令的保留区域可以包括待被执行用于执行随机模式化或顺序模式化的写入操作的数据存储区域的大小单位的信息。
在操作S330,存储器系统10可以执行安全擦除操作。例如,当如在操作S320中所确定的,从主机20接收的命令中包括先决条件执行命令时(即,在操作S320中为“是”),控制器200可以控制非易失性存储器装置100执行安全擦除操作。非易失性存储器装置100可以根据控制器200的控制来对数据存储区域执行安全擦除操作。因此,存储器系统10可以处于初始状态。
在操作S340,存储器系统10可以执行模式化。例如,当非易失性存储器装置100的安全擦除操作完成时,控制器200可以控制非易失性存储器装置100对数据存储区域执行模式化。非易失性存储器装置100可以根据控制器200的控制来执行写入操作以对数据存储区域进行模式化。
在实施例中,当命令的保留区域中包括顺序模式化的信息时,控制器200可以控制非易失性存储器装置100执行用于顺序模式化的写入操作。非易失性存储器装置100可以根据控制器200的控制来执行用于顺序模式化的顺序写入操作。
在实施例中,当命令的保留区域中包括随机模式化的信息时,控制器200可以控制非易失性存储器装置100执行用于随机模式化的写入操作。非易失性存储器装置100可以根据控制器200的控制来执行用于随机模式化的随机写入操作。
在实施例中,当命令的保留区域中包括待被执行用于模式化的写入操作的数据存储区域的大小信息时,控制器200可以控制非易失性存储器装置100以数据存储区域的大小单位来执行用于模式化的写入操作。
在实施例中,控制器200可以控制非易失性存储器装置100以通过突发(burst)模式来执行用于模式化的写入操作。例如,当从主机20接收到用于模式化的第一测试数据时,控制器200可以将接收的第一测试数据存储在数据缓冲器中。控制器200可以将存储在数据缓冲器中的第一测试数据传输到非易失性存储器装置100。非易失性存储器装置100可以执行将第一测试数据存储在第一数据存储区域中的写入操作。当将第一测试数据存储在第一数据存储区域中的写入操作完成时,控制器200可以再次将存储在数据缓冲器中的第一测试数据传输到非易失性存储器装置100,并且控制非易失性存储器装置100将第一测试数据存储在第二数据存储区域中。控制器200可以重复执行这样的操作,直到对非易失性存储器装置100的所有数据存储区域执行了模式化。例如,控制器200可以保留存储在数据缓冲器中的第一测试数据,直到对非易失性存储器装置100的所有数据存储区域执行了模式化。因此,可以减少控制器重复地从主机接收测试数据以进行模式化所需的时间。
在操作S350,存储器系统10可以将非易失性存储器装置100切换到持续状态(例如,功能关闭状态),在持续状态下,用于提高存储器系统10的输入/输出性能等的性能提高功能受到限制。例如,当根据先决条件命令执行安全擦除和模式化时,控制器200可以停用性能提高功能。
在实施例中,性能提高功能可以用于提高存储器系统10的写入性能。例如,当数据被存储在非易失性存储器装置的数据存储区域之中的、由诸如MLC的存储器单元配置的数据存储区域中时,性能提高功能可以是允许非易失性存储器装置的数据存储区域之中的、由SLC存储器单元配置的数据存储区域用作由MLC存储器单元配置的数据存储区域的缓冲器的存储器高速缓存功能。
在实施例中,性能提高功能可以用于提高存储器系统10的读取性能。例如,性能提高功能可以是将映射数据高速缓存在控制器200的存储器230中以提高存储器系统10的读取性能的高速缓存策略。
在操作S360,存储器系统10可以根据主机20的请求执行用于性能测试的操作。例如,当从主机20接收到随机或顺序测试请求时,存储器系统10可以将所请求的数据存储在非易失性存储器装置100中或读取存储在非易失性存储器装置100中的数据。
在操作S370,存储器系统10可以执行从主机20接收的命令。例如,当如在操作S320中所确定的,从主机20接收的命令中不包括先决条件执行命令时(即,在操作S320中为“否”),控制器200可以不执行安全擦除操作、模式化操作等,并且可以根据从主机20接收的命令来执行诸如读取、写入等的一般操作。
图4是示出根据实施例的包括固态驱动器(SSD)的数据处理系统的示例的框图。参照图4,数据处理系统2000可以包括主机2100和固态驱动器(SSD)2200。
SSD 2200可以包括控制器2210、缓冲存储器装置2220、非易失性存储器装置2231至223n、电源2240、信号连接器2250和电源连接器2260。
控制器2210可以控制SSD 2200的全部操作。
缓冲存储器装置2220可以临时存储待存储在非易失性存储器装置2231至223n中的数据。此外,缓冲存储器装置2220可以临时存储从非易失性存储器装置2231至223n读出的数据。根据控制器2210的控制,可以将临时存储在缓冲存储器装置2220中的数据传输到主机2100或非易失性存储器装置2231至223n。
非易失性存储器装置2231至223n可以用作SSD 2200的存储介质。非易失性存储器装置2231至223n可以通过多个通道CH1至CHn分别与控制器2210联接。一个或多个非易失性存储器装置可以联接到相同通道。联接到相同通道的非易失性存储器装置可以联接到相同信号总线和数据总线。
电源2240可以将通过电源连接器2260输入的电力PWR提供到SSD 2200的内部。电源2240可以包括辅助电源2241。辅助电源2241可以提供电力,以在发生突然断电(SPO)时允许SSD 2200正确地终止。辅助电源2241可以包括能够充电电力PWR的大容量电容器。
控制器2210可以通过信号连接器2250来与主机2100交换信号SGL。信号SGL可以包括命令、地址、数据等。根据主机2100和SSD 2200之间的接口方案,信号连接器2250可以被配置为各种类型的连接器中的任意一种。
图5是示出图4中所示的控制器的示例的框图。参照图5,控制器2210可以包括主机接口2211、控制组件2212、随机存取存储器2213、错误校正码(ECC)组件2214和存储器接口2215。
主机接口2211可以根据主机2100的协议来提供主机2100和SSD 2200之间的接口连接。例如,主机接口2211可以通过SD、USB、MMC、嵌入式MMC(eMMC)、PCMCIA、PATA、SATA、SCSI、SAS、PCI、PCI-E和UFS协议之中的任意一种与主机2100通信。此外,主机接口2211可以执行支持主机2100的磁盘仿真功能,以将SSD 2200识别为通用存储器系统,例如硬盘驱动器(HDD)。
控制组件2212可以分析和处理从主机2100输入的信号SGL。控制组件2212可以根据用于驱动SSD 2200的固件或软件来控制内部功能块的操作。随机存取存储器2213可以用作用于驱动这种固件或软件的工作存储器。
ECC组件2214可以生成待传输到非易失性存储器装置2231至223n的数据的奇偶校验数据。可以将所生成的奇偶校验数据和该数据一起存储在非易失性存储器装置2231至223n中。ECC组件2214可以基于奇偶校验数据来检测从非易失性存储器装置2231至223n读出的数据的错误。当检测到的错误在可校正范围内时,ECC组件2214可以校正检测到的错误。
存储器接口2215可以根据控制组件2212的控制,将诸如命令和地址的控制信号提供到非易失性存储器装置2231至223n。存储器接口2215可以根据控制组件2212的控制,与非易失性存储器装置2231至223n交换数据。例如,存储器接口2215可以将存储在缓冲存储器装置2220中的数据提供到非易失性存储器装置2231至223n或将从非易失性存储器装置2231至223n读出的数据提供到缓冲存储器装置2220。
图6是示出根据实施例的包括存储器系统的数据处理系统的示例的示图。参照图6,数据处理系统3000可以包括主机3100和存储器系统3200。
主机3100可以以诸如印刷电路板的板的形式配置。尽管在图6中未示出,但是主机3100可以包括用于执行主机的功能的内部功能块。
主机3100可以包括诸如插座、插槽或连接器的连接端子3110。存储器系统3200可以安装在连接端子3110上。
存储器系统3200可以以例如印刷电路板的板的形式配置。存储器接口3200可以指存储器模块或存储卡。存储器系统3200可以包括控制器3210、缓冲存储器装置3220、非易失性存储器装置3231和3232、电源管理集成电路(PMIC)3240和连接端子3250。
控制器3210可以控制存储器系统3200的全部操作。控制器3210可以以与图5中所示的控制器2210相同的方式配置。
缓冲存储器装置3220可以临时存储待存储在非易失性存储器装置3231和3232中的数据。此外,缓冲存储器装置3220可以临时存储从非易失性存储器装置3231和3232读出的数据。根据控制器3210的控制,可以将临时存储在缓冲存储器装置3220中的数据传输到主机3100或非易失性存储器装置3231和3232。
非易失性存储器装置3231和3232可以用作存储器系统3200的存储介质。
PMIC 3240可以将通过连接端子3250输入的电力提供到存储器系统3200的内部。PMIC 3240可以根据控制器3210的控制来管理存储系统3200的电力。
连接端子3250可以联接到主机3100的连接端子3110。通过连接端子3250,可以在主机3100和存储器系统3200之间传输诸如命令、地址、数据等的信号以及电力。根据主机3100和存储器系统3200之间的接口方案,连接端子3250可以被配置为各种类型中的任意一种。连接端子3250可以设置在存储器系统3200的任意一侧上或设置在存储器系统3200的任意一侧中。
图7是示出根据实施例的包括存储器系统的数据处理系统的示例的框图。参照图7,数据处理系统4000可以包括主机4100和存储器系统4200。
主机4100可以以诸如印刷电路板的板的形式配置。尽管在图7中未示出,但是主机4100可以包括用于执行主机的功能的内部功能块。
存储器系统4200可以以表面安装型封装的形式配置。存储器系统4200可以通过焊球4250而安装在主机4100上。存储器系统4200可以包括控制器4210、缓冲存储器装置4220和非易失性存储器装置4230。
控制器4210可以控制存储器系统4200的全部操作。控制器4210可以以与图5中所示的控制器2210相同的方式配置。
缓冲存储器装置4220可以临时存储待存储在非易失性存储器装置4230中的数据。此外,缓冲存储器装置4220可以临时存储从非易失性存储器装置4230读出的数据。根据控制器4210的控制,可以将临时存储在缓冲存储器装置4220中的数据传输到主机4100或非易失性存储器装置4230。
非易失性存储器装置4230可以用作存储器系统4200的存储介质。
图8是示出根据实施例的包括存储器系统的网络系统5000的示例的示图。参照图8,网络系统5000可以包括通过网络5500彼此联接的服务器系统5300和多个客户端系统5410至5430。
服务器系统5300可以响应于来自多个客户端系统5410至5430的请求而服务数据。例如,服务器系统5300可以存储从多个客户端系统5410至5430提供的数据。在另一示例中,服务器系统5300可以将数据提供到多个客户端系统5410至5430。
服务器系统5300可以包括主机5100和存储器系统5200。存储器系统5200可以由图1所示的存储器系统10、图4所示的存储器系统2200、图6所示的存储器系统3200或图7所示的存储器系统4200配置。
图9是示出根据实施例的包括在存储器系统中的非易失性存储器装置的示例的框图。参照图9,非易失性存储器装置100可以包括存储器单元阵列110、行解码器120、数据读取/写入块130、列解码器140、电压生成器150和控制逻辑160。
存储器单元阵列110可以包括布置在字线WL1至WLm和位线BL1至BLn彼此交叉的区域内的存储器单元MC。
行解码器120可以通过字线WL1至WLm而与存储器单元阵列110联接。行解码器120可以根据控制逻辑160的控制进行操作。行解码器120可以对从外部装置(未示出)提供的地址进行解码。行解码器120可以基于解码结果来选择并驱动字线WL1至WLm。例如,行解码器120可以将从电压生成器150提供的字线电压提供到字线WL1至WLm。
数据读取/写入块130可以通过位线BL1至BLn而与存储器单元阵列110联接。数据读取/写入块130可以包括与位线BL1至BLn相对应的读取/写入电路RW1至RWn。数据读取/写入块130可以根据控制逻辑160的控制进行操作。数据读取/写入块130可以根据操作模式而用作写入驱动器或读出放大器。例如,在写入操作中,数据读取/写入块130可以用作将从外部装置提供的数据存储在存储器单元阵列110中的写入驱动器。在另一示例中,在读取操作中,数据读取/写入块130可以用作从存储器单元阵列110读出数据的读出放大器。
列解码器140可以根据控制逻辑160的控制进行操作。列解码器140可以对从外部装置提供的地址进行解码。列解码器140可以基于解码结果,将数据输入/输出线(或数据输入/输出缓冲器)与数据读取/写入块130的、分别与位线BL1至BLn对应的读取/写入电路RW1至RWn联接。
电压生成器150可以生成待在非易失性存储器装置100的内部操作中使用的电压。由电压生成器150生成的电压可以施加到存储器单元阵列110的存储器单元MC。例如,可以将在编程操作中生成的编程电压施加到待被执行编程操作的存储器单元的字线。在另一示例中,可以将在擦除操作中生成的擦除电压施加到待被执行擦除操作的存储器单元的阱区。在又一示例中,可以将在读取操作中生成的读取电压施加到待被执行读取操作的存储器单元的字线。
控制逻辑160可以基于从外部装置提供的控制信号来控制非易失性存储器装置100的全部操作。例如,控制逻辑160可以控制非易失性存储器装置100的操作,诸如非易失性存储器装置100的读取、写入和擦除操作。
本发明的上述实施例旨在提供对本发明的透彻理解,而不是限制本发明。本领域技术人员根据本公开将认识到,各种替代方案和等同方案都是可能的。因此,本发明不受本文描述的任何实施例的限制且不限于本文描述的任何实施例。本发明也不限于任何特定类型的半导体装置。相反,本发明涵盖了落入所附权利要求范围内的所有增加、减少和修改。

Claims (17)

1.一种控制器的操作方法,所述控制器控制包括非易失性存储器装置的存储器系统,所述非易失性存储器装置包括多个数据存储区域,所述方法包括:
从主机接收命令;
通过确认接收的命令是否具有保留区域来确定所述接收的命令中是否包括先决条件命令;以及
通过根据所述接收的命令中包括的所述先决条件命令,对所述非易失性存储器装置执行安全擦除和模式化,来将所述存储器系统切换到先决条件状态。
2.根据权利要求1所述的方法,其中当所述接收的命令用于执行所述安全擦除时,使所述先决条件命令优先于从所述主机接收的其它命令被执行。
3.根据权利要求2所述的方法,其中所述接收的命令是根据高速非易失性存储器标准,即NVMe标准的命令字。
4.根据权利要求1所述的方法,其中切换到所述先决条件状态包括执行停用性能提高功能的操作,所述性能提高功能用于提高所述存储器系统的读取操作或写入操作的性能。
5.根据权利要求4所述的方法,其中所述性能提高功能包括存储器高速缓存功能和高速缓存策略,所述存储器高速缓存功能用于提高所述写入操作的性能,并且所述高速缓存策略用于提高所述读取操作的性能。
6.根据权利要求1所述的方法,
其中在执行所述安全擦除之后执行所述模式化,以及
其中所述模式化包括执行顺序写入操作或随机写入操作。
7.根据权利要求6所述的方法,其中通过根据突发模式的写入操作来执行所述顺序写入操作或所述随机写入操作。
8.根据权利要求1所述的方法,其中所述接收的命令的所述保留区域进一步包括:关于所述模式化是顺序写入还是随机写入的信息、待执行用于所述模式化的写入操作的数据存储区域的大小、以及启用/停用所述存储器系统的性能提高功能的信息。
9.一种存储器系统,包括:
非易失性存储器装置,包括多个数据存储区域;以及
控制器,控制所述非易失性存储器装置,
其中所述控制器通过确认接收的命令是否具有保留区域来确定所述接收的命令中是否包括先决条件命令,以及
其中所述非易失性存储器装置根据所述接收的命令中包括的所述先决条件命令来执行安全擦除和模式化。
10.根据权利要求9所述的存储器系统,其中当所述接收的命令用于执行所述安全擦除时,所述控制器控制所述非易失性存储器装置使所述先决条件命令优先于从主机接收的其它命令被执行。
11.根据权利要求10所述的存储器系统,其中所述接收的命令是根据高速非易失性存储器标准,即NVMe标准的命令字。
12.根据权利要求9所述的存储器系统,其中所述控制器停用性能提高功能,所述性能提高功能用于提高所述存储器系统的读取操作或写入操作的性能。
13.根据权利要求12所述的存储器系统,其中所述性能提高功能是存储器高速缓存功能和高速缓存策略,所述存储器高速缓存功能用于提高所述写入操作的性能,并且所述高速缓存策略用于提高所述读取操作的性能。
14.根据权利要求9所述的存储器系统,
其中所述非易失性存储器装置在执行所述安全擦除之后执行所述模式化,以及
其中所述模式化包括执行顺序写入操作或随机写入操作。
15.根据权利要求14所述的存储器系统,其中通过根据突发模式的写入操作来执行所述顺序写入操作或所述随机写入操作。
16.根据权利要求9所述的存储器系统,其中所述接收的命令的所述保留区域进一步包括:关于所述模式化是顺序写入还是随机写入的信息、待执行用于所述模式化的写入操作的数据存储区域的大小、以及启用/停用所述存储器系统的性能提高功能的信息。
17.一种控制器的操作方法,所述控制器控制具有多个存储块的存储器装置,所述操作方法包括:
响应于先决条件命令,控制所述存储器装置:
擦除全部所述存储块;并且
将测试数据的模式存储在所述存储块内的、具有由所述先决条件命令指示的大小的存储区域中;以及
响应于测试命令,控制所述存储器装置对存储所述测试数据的模式的存储块执行读取操作。
CN202010081075.2A 2019-05-10 2020-02-06 控制器及其操作方法以及包括控制器的存储器系统 Active CN111916140B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2019-0054906 2019-05-10
KR1020190054906A KR20200129863A (ko) 2019-05-10 2019-05-10 컨트롤러, 메모리 시스템 및 그것의 동작 방법

Publications (2)

Publication Number Publication Date
CN111916140A true CN111916140A (zh) 2020-11-10
CN111916140B CN111916140B (zh) 2023-08-15

Family

ID=73046020

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010081075.2A Active CN111916140B (zh) 2019-05-10 2020-02-06 控制器及其操作方法以及包括控制器的存储器系统

Country Status (3)

Country Link
US (1) US10922000B2 (zh)
KR (1) KR20200129863A (zh)
CN (1) CN111916140B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113176974A (zh) * 2021-06-30 2021-07-27 北京智芯微电子科技有限公司 用于验证ip核的方法、装置及系统
CN114489510A (zh) * 2022-01-28 2022-05-13 维沃移动通信有限公司 数据读取方法及装置
CN117472294A (zh) * 2023-12-28 2024-01-30 合肥康芯威存储技术有限公司 一种存储器及其数据处理方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021102777A1 (de) * 2021-02-05 2022-08-11 Infineon Technologies Ag Verarbeitung von in einem speicher gespeicherter daten
KR102532100B1 (ko) * 2021-07-14 2023-05-12 서울대학교산학협력단 스토리지 장치 및 연산 장치를 포함하는 가상화 장치, 및 이의 동작하는 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101545077B1 (ko) * 2014-02-11 2015-08-17 한양대학교 산학협력단 비휘발성 메모리 기반의 전자 장치의 메타 데이터 복원 방법 및 장치
US20160048459A1 (en) * 2014-08-18 2016-02-18 Samsung Electronics Co., Ltd. Operation method of memory controller and nonvolatile memory system including the memory controller
US20160313943A1 (en) * 2015-04-24 2016-10-27 Kabushiki Kaisha Toshiba Storage device that secures a block for a stream or namespace and system having the storage device
US20170212698A1 (en) * 2016-01-22 2017-07-27 Samsung Electronics Co., Ltd. Computing system with cache storing mechanism and method of operation thereof
US20170262365A1 (en) * 2016-03-08 2017-09-14 Kabushiki Kaisha Toshiba Storage system and information processing system for controlling nonvolatile memory
CN108108308A (zh) * 2016-11-24 2018-06-01 爱思开海力士有限公司 存储器系统及其操作方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5491809A (en) * 1993-01-05 1996-02-13 Texas Instruments Incorporated Smart erase algorithm with secure scheme for flash EPROMs
US6233178B1 (en) * 1999-10-14 2001-05-15 Conexant Systems, Inc. Method and apparatus for pre-conditioning flash memory devices
KR20180016680A (ko) 2016-08-04 2018-02-19 삼성전자주식회사 저장 장치, 그것을 테스트 하는 테스트 시스템 및 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101545077B1 (ko) * 2014-02-11 2015-08-17 한양대학교 산학협력단 비휘발성 메모리 기반의 전자 장치의 메타 데이터 복원 방법 및 장치
US20160048459A1 (en) * 2014-08-18 2016-02-18 Samsung Electronics Co., Ltd. Operation method of memory controller and nonvolatile memory system including the memory controller
US20160313943A1 (en) * 2015-04-24 2016-10-27 Kabushiki Kaisha Toshiba Storage device that secures a block for a stream or namespace and system having the storage device
US20170212698A1 (en) * 2016-01-22 2017-07-27 Samsung Electronics Co., Ltd. Computing system with cache storing mechanism and method of operation thereof
US20170262365A1 (en) * 2016-03-08 2017-09-14 Kabushiki Kaisha Toshiba Storage system and information processing system for controlling nonvolatile memory
CN108108308A (zh) * 2016-11-24 2018-06-01 爱思开海力士有限公司 存储器系统及其操作方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113176974A (zh) * 2021-06-30 2021-07-27 北京智芯微电子科技有限公司 用于验证ip核的方法、装置及系统
CN114489510A (zh) * 2022-01-28 2022-05-13 维沃移动通信有限公司 数据读取方法及装置
CN117472294A (zh) * 2023-12-28 2024-01-30 合肥康芯威存储技术有限公司 一种存储器及其数据处理方法
CN117472294B (zh) * 2023-12-28 2024-04-09 合肥康芯威存储技术有限公司 一种存储器及其数据处理方法

Also Published As

Publication number Publication date
US10922000B2 (en) 2021-02-16
KR20200129863A (ko) 2020-11-18
US20200356289A1 (en) 2020-11-12
CN111916140B (zh) 2023-08-15

Similar Documents

Publication Publication Date Title
CN111916140B (zh) 控制器及其操作方法以及包括控制器的存储器系统
US10769066B2 (en) Nonvolatile memory device, data storage device including the same and operating method thereof
KR20200095103A (ko) 데이터 저장 장치 및 그 동작 방법
US20200218653A1 (en) Controller, data storage device, and operating method thereof
US20200310956A1 (en) Data storage device and operating method thereof
US11748025B2 (en) Nonvolatile memory device, data storage device including the same and operating method thereof
KR20190006677A (ko) 데이터 저장 장치 및 그것의 동작 방법
CN111752858A (zh) 控制器、存储器系统及其操作方法
KR102434840B1 (ko) 데이터 저장 장치
US11003395B2 (en) Controller, memory system, and operating methods thereof
CN112988045A (zh) 数据存储装置及其操作方法
KR102469174B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
US20230075820A1 (en) Event log management method, controller and storage device
US11409473B2 (en) Data storage device and operating method thereof
US11157401B2 (en) Data storage device and operating method thereof performing a block scan operation for checking for valid page counts
US20210026764A1 (en) Controller and memory system including the same
KR20210056625A (ko) 데이터 저장 장치 및 이를 이용한 스토리지 시스템
US11429530B2 (en) Data storage device and operating method thereof
CN111324302B (zh) 数据存储装置及其操作方法
US11537514B2 (en) Data storage device and operating method thereof
US11314461B2 (en) Data storage device and operating method of checking success of garbage collection operation
US10572155B2 (en) Data storage device and operating method thereof
US10719270B2 (en) Raising usage rates of memory blocks with a free MSB page list
US20200117390A1 (en) Data storage device and operating method thereof
KR20210002190A (ko) 컨트롤러, 메모리 시스템 및 그것의 동작 방법

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