CN114442915A - 存储器系统以及操作其中所包括的存储器控制器的方法 - Google Patents
存储器系统以及操作其中所包括的存储器控制器的方法 Download PDFInfo
- Publication number
- CN114442915A CN114442915A CN202110771226.1A CN202110771226A CN114442915A CN 114442915 A CN114442915 A CN 114442915A CN 202110771226 A CN202110771226 A CN 202110771226A CN 114442915 A CN114442915 A CN 114442915A
- Authority
- CN
- China
- Prior art keywords
- memory
- offset
- logical address
- target partition
- memory device
- 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
Links
- 230000015654 memory Effects 0.000 title claims abstract description 286
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000005192 partition Methods 0.000 claims abstract description 221
- 230000004044 response Effects 0.000 claims description 17
- 238000010586 diagram Methods 0.000 description 36
- 239000000872 buffer Substances 0.000 description 25
- 101100481702 Arabidopsis thaliana TMK1 gene Proteins 0.000 description 10
- 230000002093 peripheral effect Effects 0.000 description 9
- 238000012937 correction Methods 0.000 description 6
- 238000013507 mapping Methods 0.000 description 6
- 239000000758 substrate Substances 0.000 description 6
- 101100481704 Arabidopsis thaliana TMK3 gene Proteins 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000011017 operating method Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 101100498818 Arabidopsis thaliana DDR4 gene Proteins 0.000 description 1
- 101000741396 Chlamydia muridarum (strain MoPn / Nigg) Probable oxidoreductase TC_0900 Proteins 0.000 description 1
- 101000741399 Chlamydia pneumoniae Probable oxidoreductase CPn_0761/CP_1111/CPj0761/CpB0789 Proteins 0.000 description 1
- 101000741400 Chlamydia trachomatis (strain D/UW-3/Cx) Probable oxidoreductase CT_610 Proteins 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000005294 ferromagnetic effect Effects 0.000 description 1
- 230000005291 magnetic effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
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
-
- 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/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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/0604—Improving or facilitating administration, e.g. storage management
-
- 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/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- 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
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- 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/0656—Data buffering 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/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/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
- 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
- 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/0683—Plurality of storage devices
-
- 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/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
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)
- Read Only Memory (AREA)
Abstract
本公开提供一种存储器系统,该存储器系统可以包括:多个存储器装置,包括由存储器单元配置的多个块;以及存储器控制器,被配置为通过利用多个存储器装置的每一个中包括的多个块配置多个分区来控制与多个分区相对应的多个存储器装置,其中该存储器控制器进一步被配置为:从主机接收写入请求,确定多个分区之中的由写入请求指示的目标分区,并且基于与目标分区相对应的写入指针和偏移,确定待开始写入操作的目标分区的逻辑地址。
Description
相关申请的交叉引用
本申请要求于2020年10月30日提交的申请号为10-2020-0143764的韩国专利申请的优先权,其通过引用整体并入本文。
技术领域
本公开涉及一种存储器系统,更特别地,涉及一种存储器系统以及操作其中所包括的存储器控制器的方法。
背景技术
存储装置在诸如计算机或智能电话的主机装置的控制下存储数据。存储装置可以包括存储数据的存储器装置和控制存储器装置的存储器控制器。存储器装置分为易失性存储器装置和非易失性存储器装置。
易失性存储器装置仅在供应电力时才存储数据,而在切断电力供应时丢失所存储的数据。易失性存储器装置包括静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等。
非易失性存储器装置是即使断电也不会丢失数据的装置。非易失性存储器装置包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪速存储器等。
发明内容
本公开的实施例提供了一种能够同时对多个分区高效且快速地执行写入操作的存储器系统及其操作方法。
根据本公开的实施例的一种存储器系统可以包括:多个存储器装置,包括由存储器单元配置的多个块;以及存储器控制器,被配置为通过利用多个存储器装置的每一个中包括的多个块配置多个分区来控制与多个分区相对应的多个存储器装置,其中该存储器控制器进一步被配置为:从主机接收写入请求,确定多个分区之中的写入请求所指示的目标分区,并且基于与目标分区相对应的写入指针和偏移,确定待开始写入操作的目标分区的逻辑地址。
根据本公开的实施例的一种操作存储器控制器的方法可以包括:从主机接收写入请求;确定由多个存储器装置的每一个中包括的块配置的多个分区之中的由写入请求指示的目标分区,并且基于与目标分区相对应的写入指针和偏移来确定待开始写入操作的目标分区的逻辑地址;确定多个存储器装置之中的与目标分区的逻辑地址相对应的存储器装置的物理地址;并且向与目标分区的逻辑地址相对应的存储器装置传输与写入请求相对应的写入命令和该物理地址。
根据本公开的实施例的一种存储器系统可以包括:多个存储器装置,每个存储器装置包括各自具有至少一个存储块的第一块组和第二块组,各个存储器装置的第一块组配置第一分区,并且各个存储器装置的第二块组配置第二分区;以及控制器,被配置为通过分别对应的通道控制存储器装置,以同时进行根据第一指针和第一偏移访问第一分区以及根据第二指针和第二偏移访问第二分区,第二偏移与第一偏移不同,其中第一偏移和第二偏移中的每一个具有以对应于各个存储器装置为单位的长度。
本技术提供了一种能够同时对多个分区高效且快速地执行写入操作的存储器系统及其操作方法。
附图说明
图1是示出根据本公开的实施例的存储器系统的示图。
图2是示出在根据图1的存储器控制器和存储器装置之间交换的信号的示图。
图3是具体示出图1的存储器装置的示图。
图4是示出图3的存储器单元阵列的实施例的示图。
图5是示出图4的存储块的示图。
图6是示出以三维配置图4的存储块的本公开的实施例的示图。
图7是示出以三维配置图4的存储块的本公开的另一实施例的示图。
图8是示出根据本公开的实施例的配置包括存储器装置中包括的块的分区的方法的示图。
图9是示出根据图8的分区的示图。
图10是示出基于根据图8的分区的主机与存储器系统之间的操作的示图。
图11是示出对根据图8的多个分区的写入操作的示图。
图12是示出与根据图8的多个分区相对应的偏移的示图。
图13是示出将根据图12的偏移施加到多个分区的方法的示图。
图14是示出根据本公开的实施例的考虑到存储器装置的状态而将偏移施加到多个分区的方法的示图。
图15是示出根据本公开的实施例的考虑到存储器装置的擦除计数而将偏移施加到多个分区的方法的示图。
图16是示出根据图1的存储器控制器的示图。
图17是示出根据图16的存储器控制器的操作的流程图。
图18是示出应用了根据图1的存储器系统的存储卡的示图。
图19是示出应用了根据图1的存储器系统的固态驱动器(SSD)系统的框图。
具体实施方式
示出在本说明书或本申请中公开的实施例的具体结构或功能描述仅用于描述根据本公开的实施例。根据本公开的实施例可以以各种形式来执行,并且不限于在本说明书或本申请中描述的实施例。
图1是示出根据本公开的实施例的存储器系统的示图。
参照图1,存储器系统1000可以包括存储数据的存储器装置1100,和/或根据主机2000的请求来控制存储器装置1100的存储器控制器1200。
主机2000可以使用诸如以下的各种通信方法中的至少一种来与存储器系统1000通信:通用串行总线(USB)、串行AT附件(SATA)、串列SCSI(SAS)、高速芯片间(HSIC)、小型计算机系统接口(SCSI)、外围组件互连(PCI)、高速PCI(PCIe)、高速非易失性存储器(NVMe)、通用闪存(UFS)、安全数字(SD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、双列直插式存储器模块(DIMM)、寄存式DIMM(RDIMM)和低负载DIMM(LRDIMM)。
存储器装置1100可以被实施为当切断电力供应时数据丢失的易失性存储器装置或即使切断电力供应也保持数据的非易失性存储器装置。存储器装置1100可以在存储器控制器1200的控制下执行编程操作、读取操作或擦除操作。例如,在编程操作期间,存储器装置1100可以从存储器控制器1200接收命令、地址和数据,并且执行编程操作。在读取操作期间,存储器装置1100可以从存储器控制器1200接收命令和地址,并且将存储在与所接收到的地址相对应的位置(例如,物理地址)中的数据输出到存储器控制器1200。存储器装置1100可以被称为单个集成芯片(IC)的芯片或管芯。
存储器系统1000可以包括多个存储器装置1100,并且可以根据连接到存储器控制器1200的通道将多个存储器装置分组为多个存储器装置组1300。例如,在存储器装置之中,可以将通过第一通道CH1连接到存储器控制器1200的存储器装置称为第一组GR1。在存储器装置之中,可以将通过第二通道CH2连接到存储器控制器1200的存储器装置称为第二组GR2。图1示出了一个组包括多个存储器装置。然而,一个组可以包括单个存储器装置1100。
存储器控制器1200可以控制存储器系统1000的全部操作并且控制主机2000和存储器装置1100之间的数据交换。例如,当从主机2000接收到命令时,存储器控制器1200可以根据所接收到的命令来控制连接到各个通道CH1至CHk的存储器装置组1300。存储器控制器1200可以根据主机2000的请求来生成指示编程、读取或擦除的命令,并且将所生成的命令传输到连接到每个通道的存储器装置组1300。
图2是示出在根据图1的存储器控制器和存储器装置之间交换的信号的示图。
参照图2,存储器控制器1200和存储器装置1100可以通过输入/输出焊盘DQ彼此交换命令、数据和/或地址。例如,输入/输出焊盘DQ可以由八条线配置以传输和接收8位数据,并且每条线可以传输和接收1位数据。
存储器装置1100可以通过CE#焊盘接收芯片使能信号,通过WE#焊盘接收写入使能信号,通过RE#焊盘接收读取使能信号,通过ALE焊盘接收地址锁存使能信号,通过CLE焊盘接收命令锁存使能信号,并且通过WP#焊盘接收写入保护信号。
地址锁存使能信号可以是由存储器控制器1200提供给存储器装置1100以使得存储器装置1100将通过输入/输出焊盘DQ提供给存储器装置1100的地址加载到地址寄存器中的信号。芯片使能信号可以是由存储器控制器1200提供给存储器装置1100以启用或禁用一个或多个存储器装置的信号。命令锁存使能信号可以是由存储器控制器1200提供给存储器装置1100以使得存储器装置1100将通过输入/输出焊盘DQ提供给存储器装置1100的命令加载到命令寄存器中的信号。读取使能信号可以是由存储器控制器1200提供给存储器装置1100以使得存储器装置1100将数据传输到存储器控制器1200的信号。写入使能信号可以是通知命令、地址和数据被传送的信号。
存储器装置1100可以通过RB焊盘RB向存储器控制器1200输出就绪-忙碌信号。就绪-忙碌信号可以指示存储器装置1100的存储器阵列是处于忙碌状态还是空闲状态。
图2示出了一个存储器装置1100与存储器控制器1200之间的连接关系。然而,输入/输出焊盘DQ、CE#焊盘、WE#焊盘、RE#焊盘、ALE焊盘、CLE焊盘和WP#焊盘可以形成通道CH1至CHk,并且存储器控制器1200和存储器装置组1300中的一个可以通过所形成的通道CH1至CHk连接。
因此,当存储器控制器1200通过一个通道中包括的输入/输出焊盘DQ传输命令、数据和/或地址时,属于连接到相应通道的组的所有存储器装置1100或连接到相应通道的组中的由存储器控制器1200选择的存储器装置1100可以接收命令、数据和/或地址。例如,存储器控制器1200可以通过与第一通道CH1相对应的输入/输出焊盘DQ将状态读取命令传输到存储器装置1100,并且连接到第一通道CH1的第一组GR1中的存储器装置中的至少一个可以响应于状态读取命令而将状态信息传输到输入/输出焊盘DQ。
图3是用于具体示出图1的存储器装置的示图。
存储器装置1100可以被实施为易失性存储器装置或非易失性存储器装置。例如,存储器装置1100的可以是易失性存储器装置和非易失性存储器装置中的一种,易失性存储器装置诸如动态随机存取存储器(DRAM)和静态RAM(SRAM),非易失性存储器装置诸如只读存储器(ROM)、掩模ROM(MROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、铁磁RAM(FRAM)、相变RAM(PRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)和闪速存储器。图3示出了作为示例的非易失性存储器装置。
存储器装置1100可以包括存储数据的存储器单元阵列100。存储器装置1100可以包括被配置为执行用于在存储器单元阵列100中存储数据的编程操作、用于输出所存储的数据的读取操作以及用于擦除所存储的数据的擦除操作的外围电路200。存储器装置1100可以包括在存储器控制器1200的控制下控制外围电路200的控制逻辑300。
存储器单元阵列100包括存储数据的多个存储器单元。例如,存储器单元阵列100可以包括至少一个平面,该平面可以包括一个或多个存储块。在实施例中,平面可以是当执行编程操作、读取操作或擦除操作时所访问的存储器区域的单位。存储块中的每一个可以包括多个存储器单元。包括多个平面的结构可以被称为多平面结构。存储器装置1100的操作所必需的用户数据和信息可以存储在存储块中。可以以二维结构或三维结构来实施存储块。具有二维结构的存储块可以包括平行于衬底布置的存储器单元,并且具有三维结构的存储块可以包括在衬底上垂直堆叠的存储器单元。
外围电路200可以被配置为根据控制逻辑300的控制来执行编程操作、读取操作和擦除操作。例如,外围电路200可以包括电压生成电路210、行解码器220、页面缓冲器组230、列解码器240、输入/输出电路250和电流感测电路260。
电压生成电路210可以响应于从控制逻辑300输出的操作信号OP_CMD来生成用于编程操作、读取操作和擦除操作的各种操作电压Vop。例如,电压生成电路210可以在控制逻辑300的控制下生成各种电压,诸如编程电压、验证电压、通过电压、读取电压和擦除电压。
响应于从控制逻辑300输出的行地址RADD,行解码器220可以将操作电压Vop供应给连接到存储器单元阵列100的存储块之中的所选择的存储块的局部线LL。局部线LL可以包括局部字线、局部漏极选择线和/或局部源极选择线。另外,局部线LL可以包括连接到存储块的各种线,诸如源极线。
页面缓冲器组230可以连接到与存储器单元阵列100的存储块连接的位线BL1至BLI。页面缓冲器组230可以包括连接到位线BL1至BLI的多个页面缓冲器PB1至PBI。页面缓冲器PB1至PBI可以响应于从控制逻辑300输出的页面缓冲器控制信号PBSIGALS而操作。例如,页面缓冲器PB1至PBI可以临时存储通过位线BL1至BLI接收的数据,或者可以在读取操作或验证操作期间感测位线BL1至BLI的电压或电流。
列解码器240可以响应于从控制逻辑300输出的列地址CADD而在输入/输出电路250和页面缓冲器组230之间传送数据。例如,列解码器240可以通过数据线DL与页面缓冲器PB1至PBI交换数据,或者通过列线CL与输入/输出电路250交换数据。
输入/输出电路250可以通过输入/输出焊盘DQ从存储器控制器1200接收命令CMD、地址ADD和数据,并且通过输入/输出焊盘DQ将从存储器单元阵列100读取的数据输出到存储器控制器1200。例如,输入/输出电路250可以将从存储器控制器1200接收的命令CMD和地址ADD传送到控制逻辑300,或者与列解码器240交换数据DATA。
在读取操作或验证操作期间,电流感测电路260可以响应于允许位VRY_BIT<#>而生成参考电流,比较从页面缓冲器组230接收的感测电压VPB与由参考电流生成的参考电压,并且输出通过信号PASS或失败信号FAIL。
控制逻辑300可以响应于通过CE#、WE#、RE#、ALE、CLE和WP#焊盘接收的信号而接收命令CMD和地址ADD。控制逻辑300可以响应于接收到命令CMD和地址ADD而生成用于控制外围电路200的控制信号,并且将所生成的控制信号输出到外围电路200。例如,控制信号可以包括操作信号OP_CMD、行地址RADD、页面缓冲器控制信号PBSIGNALS和允许位VRY_BIT<#>中的至少一个。控制逻辑300可以将操作信号OP_CMD输出到电压生成电路210,将行地址RADD输出到行解码器220,将页面缓冲器控制信号PBSIGNALS输出到页面缓冲器组230,并且将允许位VRY_BIT<#>输出到电流感测电路260。另外,控制逻辑300可以响应于通过信号PASS或失败信号FAIL确定验证操作是已通过还是已失败。
图4是示出根据本公开的实施例的图3的存储器单元阵列的实施例的示图。
参照图4,存储器单元阵列100包括多个存储块BLK1至BLKz。每个存储块可以具有三维结构。每个存储块可以包括堆叠在衬底上的多个存储器单元。多个存储器单元可以沿着+X方向、+Y方向和+Z方向布置。
图5是示出图4的存储块的示图。
参照图5,示出了图4所示的多个存储块BLK1至BLKz之中的第一存储块BLK1。其余存储块BLK2至BLKz可以具有与第一存储块BLK1相同的形状。
第一存储块BLK1可以包括连接在位线BL1至BLI与源极线SL之间的多个单元串ST。例如,单元串ST可以分别连接至位线BL1至BLI,并且可以共同连接至源极线SL。由于单元串ST彼此相似地配置,因此连接到第一位线BL1的串ST作为示例描述如下。
单元串ST可以包括串联连接在源极线SL和第一位线BL1之间的源极选择晶体管SST、第一至第n存储器单元F1至Fn(n是正整数)以及漏极选择晶体管DST。源极和漏极选择晶体管SST和DST的数量不限于图5所示的数量。源极选择晶体管SST可以连接在源极线SL和第一存储器单元F1之间。第一至第n存储器单元F1至Fn可以串联连接在源极选择晶体管SST和漏极选择晶体管DST之间。漏极选择晶体管DST可以连接在第n存储器单元Fn与第一位线BL1之间。尽管未在图中示出,但是虚设单元可以进一步连接在存储器单元F1至Fn之间或者源极选择晶体管SST和漏极选择晶体管DST之间。
不同单元串ST中包括的源极选择晶体管SST的栅极可以连接至源极选择线SSL,第一至第n存储器单元F1至Fn的栅极可以连接至第一至第n字线WL1至WLn,并且漏极选择晶体管DST的栅极可以连接至漏极选择线DSL。此处,将分别与字线WL1至WLn连接的一组存储器单元称为页面PG。例如,不同单元串ST中包括的存储器单元F1至Fn之中的连接至第一字线WL1的一组第一存储器单元F1可以是一个物理页面PPG。可以以物理页面PPG为单位执行编程操作和读取操作。
图6是示出以三维配置图4的存储块的实施例的示图。
参照图6,示出了图4所示的多个存储块BLK1至BLKz之中的第一存储块BLK1。其余存储块BLK2至BLKz可以具有与第一存储块BLK1相同的形状。
以三维结构实施的存储块BLK1可以在衬底上以垂直(Z方向)I形形成,并且可以包括布置在位线BL和源极线SL之间的多个单元串ST。可选地,可以形成阱来代替源极线SL。这种结构也被称为位成本可缩放(bit cost scalable,BiCS)结构。例如,当在衬底上水平地形成源极线SL时,可以在源极线SL上沿垂直方向(Z方向)形成具有BiCS结构的单元串ST。
更具体地,单元串ST可以沿第一方向(X方向)和第二方向(Y方向)中的每一个布置。单元串ST可以包括堆叠并彼此间隔开的源极选择线SSL、字线WL和漏极选择线DSL。源极选择线SSL、字线WL和漏极选择线DSL的数量不限于图中所示的数量,并且可以根据存储器装置1100而不同。单元串ST可以包括垂直穿过源极选择线SSL、字线WL和漏极选择线DSL的垂直沟道膜CH,以及与突出到漏极选择线DSL的上部的垂直沟道膜CH的上部接触并且在第二方向(Y方向)上延伸的位线BL。存储器单元可以形成在字线WL和垂直沟道膜CH之间。可以在位线BL和垂直沟道膜CH之间进一步形成接触插塞CT。
图7是示出以三维配置图4的存储块的本公开的另一实施例的示图。
参照图7,示出了图4所示的多个存储块BLK1至BLKz之中的第一存储块BLK1。其余存储块BLK2至BLKz可以具有与第一存储块BLK1相同的形状。
以三维结构实施的第一存储块BLK1可以在衬底上以垂直方向(Z方向)的U形形成,并且可以包括连接在位线BL和源极线SL之间的一对源极串ST_S和漏极串ST_D。源极串ST_S和漏极串ST_D可以通过管道栅极PG彼此连接以形成U形结构。管道栅极PG可以形成在管线PL中。更具体地,源极串ST_S可以垂直地形成在源极线SL和管线PL之间,并且漏极串ST_D可以垂直地形成在位线BL和管线PL之间。这种结构也被称为管状位成本可缩放(P-BiCS)结构。
更具体地,漏极串ST_D和源极串ST_S可以分别布置在第一方向(X方向)和第二方向(Y方向)上,并且漏极串ST_D和源极串ST_S可以沿着第二方向(Y方向)交替地布置。漏极串ST_D可以包括堆叠并彼此间隔开的字线WL和漏极选择线DSL,以及垂直穿过字线WL和漏极选择线DSL的漏极垂直沟道膜D_CH。源极串ST_S可以包括堆叠并彼此间隔开的字线WL和源极选择线SSL,以及垂直穿过字线WL和源极选择线SSL的源极垂直沟道膜S_CH。漏极垂直沟道膜D_CH和源极垂直沟道膜S_CH可以通过管线PL中的管道栅极PG彼此连接。位线BL可以与突出到漏极选择线DSL的上部的漏极垂直沟道膜D_CH的上部接触,并且可以在第二方向(Y方向)上延伸。
图8是示出根据本公开的实施例的配置包括存储器装置中包括的块的分区的方法的示图。
参照图8,存储器控制器1200可以利用通过通道CH1至CH4连接的存储器装置LUN1至LUN8中的至少一些中的每一个中包括的块来配置分区zone1至zonen,并且以分区为单位将数据存储在存储器装置中或读取存储器装置中存储的数据。
例如,如图8所示,第一存储器装置LUN1和第五存储器装置LUN5可以通过第一通道CH1连接到存储器控制器1200,第二存储器装置LUN2和第六存储器装置LUN6可以通过第二通道CH2连接到存储器控制器1200,第三存储器装置LUN3和第七存储器装置LUN7可以通过第三通道CH3连接到存储器控制器1200,并且第四存储器装置LUN4和第八存储器装置LUN8可以通过第四通道CH4连接到存储器控制器1200。
在这样的示例中,可以将通过独立通道连接到存储器控制器1200的存储器装置配置为分区。例如,可以通过组合连接到第一通道CH1的第一存储器装置LUN1的第一块组(一个块组可以被称为两个或更多个块的组)、连接到第二通道CH2的第二存储器装置LUN2的第一块组、连接到第三通道CH3的第三存储器装置LUN3的第一块组以及连接到第四通道CH4的第四存储器装置LUN4的第一块组来配置第一分区zone1。此外,可以通过组合连接到第一通道CH1的第一存储器装置LUN1的第n块组(n是等于或大于2的自然数)、连接到第二通道CH2的第二存储器装置LUN2的第n块组、连接到第三通道CH3的第三存储器装置LUN3的第n块组以及连接到第四通道CH4的第四存储器装置LUN4的第n块组来配置第n分区zonen。
在实施例中,配置一个分区的存储器装置LUN1至LUN8的块中的每一个可以具有相同的物理地址。例如,第一存储器装置LUN1的第一块组、第二存储器装置LUN2的第一块组、第三存储器装置LUN3的第一块组和第四存储器装置LUN4的第一块组在存储器装置中可以具有相同的物理地址。
以相同的方法,可以通过组合连接到第一通道CH1的第五存储器装置LUN5的块(或块组)、连接到第二通道CH2的第六存储器装置LUN6的块、连接到第三通道CH3的第七存储器装置LUN7的块以及连接到第四通道CH4的第八存储器装置LUN8的块来配置其他第一至第n分区zone1至zonen。
如上所述,当使用通过独立的通道分别连接到存储器控制器1200的多个存储器装置来配置分区zone1至zonen时,可以通过使通道瓶颈现象最小化来执行对分区zone1至zonen的写入操作或读取操作。
另一方面,分区zone1至zonen可以不由通过独立的通道连接到存储器控制器1200的存储器装置配置。例如,配置n个分区zone1至zonen的一些存储器装置可以通过相同的通道连接到存储器控制器1200。
另外,在图8中,使用四个存储器装置中包括的块来配置一个分区,但是存储器装置的数量可以不同地确定。例如,可以通过组合连接到存储器控制器1200的所有存储器装置的块来配置一个分区。此处,可以根据分区的大小、每个存储器装置中包括的块的数量等来确定配置一个分区的存储器装置的数量。
图9是示出根据图8的分区的示图。
参照图9,基于图8所示的分区zone1至zonen之中的第一分区zone1来描述分区的示例。在实施例中,分区zone1至zonen中的每一个可以被相同地配置。
参照图9,第一分区zone1可以由第一存储器装置LUN1的块、第二存储器装置LUN2的块、第三存储器装置LUN3的块以及第四存储器装置LUN4的块来配置。在实施例中,第一分区zone1可以具有与第一至第四存储器装置LUN1至LUN4的物理地址相对应(或匹配)的逻辑地址VPN0至VPNt。
例如,第一逻辑地址VPN0(以下可以称为起始逻辑地址)至第p(p是等于或大于2的自然数)逻辑地址(未示出)可以对应于第一存储器装置LUN1的物理地址(例如,页面地址)。另外,第(p+1)逻辑地址VPNp至第2p逻辑地址(未示出)可以对应于第二存储器装置LUN2的物理地址。另外,第(2p+1)逻辑地址VPN2p至第3p逻辑地址(未示出)可以对应于第三存储器装置LUN3的物理地址。另外,第(3p+1)逻辑地址VPN3p至第t(t是大于3p+1的自然数,并且可以与4p-1相同)逻辑地址VPNt可以对应于第四存储器装置LUN4的物理地址。此处,第t逻辑地址VPNt可以是配置第一分区zone1的最后逻辑地址。
配置一个分区的存储器装置中的每一个的存储空间可以具有相同的大小。换言之,对应于第一存储器装置LUN1的逻辑地址的数量、对应于第二存储器装置LUN2的逻辑地址的数量、对应于第三存储器装置LUN3的逻辑地址的数量以及对应于第四存储器装置LUN4的逻辑地址的数量可以相同。
可以将指示待开始写入操作的逻辑地址的写入指针分配给分区zone1至zonen中的每一个。写入指针可以由存储器控制器1200确定,并且可以被分配给分区中的每一个。例如,存储器控制器1200可以确定写入指针的初始值以指示每个分区的起始逻辑地址VPN0。例如,与第一分区zone1相对应的写入指针WP1的初始值可以指示第一分区zone1的起始逻辑地址VPN0。
分区zone1至zonen中的每一个可以被配置为使得从写入指针所指示的逻辑地址开始执行写入操作。在实施例中,当写入操作结束时,存储器控制器1200可以更新写入指针以指示待开始下一写入操作的逻辑地址。例如,可以从第一分区zone1的起始逻辑地址VPN0开始顺序地执行对第一分区zone1的写入操作。当写入操作结束时,可以在表示第一分区zone1的逻辑地址的范围内更新第一分区zone1的写入指针WP1,以指示与写入操作结束的第三存储器装置LUN3的特定物理地址相对应的逻辑地址。因此,对第一分区zone1的下一写入操作可以从与第一分区zone1的更新后的写入指针WP1所指示的逻辑地址相对应的第三存储器装置LUN3开始。
可以重置分区zone1至zonen中的每一个,以便可以从头开始重新写入数据。例如,当从主机2000接收到针对分区zone1至zonen之中的第一分区zone1的重置请求时,存储器控制器1200可以通过更新(重置)写入指针以使得第一分区zone1的写入指针WP1指示起始逻辑地址VPN0,来重置第一分区zone1。另外,当分区被重置时或当所重置的分区被切换到开放状态时,与所重置的分区的逻辑地址相对应的存储器装置的物理地址(或与该物理地址相对应的存储块)可以被擦除。
图10是示出基于根据图8的分区的主机与存储器系统之间的操作的示图。
参照图10,主机2000可以向存储器控制器1200传输指示分区zone1至zonen中的一个的写入请求WRQ和待存储的数据DATA。写入请求WRQ可以包括由主机2000映射到数据DATA的主机逻辑地址(逻辑块地址LBA)。主机逻辑地址LBA可以预先与分区zone1至zonen中的每一个的逻辑地址(例如,图11的VPN0至VPNt)进行映射。例如,第一至第m主机逻辑地址LBA 0至LBA m-1(m是等于或大于2的自然数)可以与第一分区zone1至第n分区zonen的逻辑地址VPN0至VPNt进行映射。主机逻辑地址LBA可以与每个分区的逻辑地址一对一地映射,或者一个主机逻辑地址LBA可以与每个分区的两个或更多个逻辑地址映射。
存储器控制器1200可以通过参考主机逻辑地址LBA与分区zone1至zonen中的每一个的逻辑地址之间的映射信息来确定与主机逻辑地址LBA相对应的目标分区。因此,存储器控制器1200可以使用写入请求WRQ中包括的主机逻辑地址LBA来确定目标分区。换言之,主机2000可以通过写入请求WRQ中包括的主机逻辑地址LBA来间接地指示目标分区。存储器控制器1200可以通过参考与目标分区相对应的写入指针来确定待开始写入操作的目标分区的逻辑地址。
接下来,存储器控制器1200可以确定与所确定的目标分区的逻辑地址相对应的存储器装置1100的物理地址PADD,并且将所确定的物理地址PADD和与写入请求WRQ相对应的写入命令PCMD(或编程命令)与从主机2000接收的数据DATA一起传输到存储器装置1100。例如,存储器控制器1200可以通过参考存储在内部存储器1210中并且指示分区的逻辑地址与存储器装置的物理地址之间的映射关系的地址映射表来确定物理地址PADD。
分区zone1至zonen中的每一个可以具有各种状态。例如,分区zone1至zonen中的每一个可以具有开放状态、关闭状态、擦除状态和充满状态之中的一种状态。擦除状态可以表示尚未存储任何数据的分区。充满状态可以表示充满数据的分区。数据可以不存储在处于擦除状态、充满状态或关闭状态的分区中。可以对处于开放状态的分区执行写入操作。特别地,当多个分区处于开放状态并且从主机2000接收到针对处于开放状态的两个或更多个分区的写入请求时,存储器控制器1200可以对处于开放状态的两个或更多个分区同时执行写入操作。
当存储器控制器1200从主机2000接收到针对分区zone1至zonen中的至少一个的开放请求时,存储器控制器1200可以将处于擦除状态的分区中的至少一个改变为开放状态。在实施例中,存储器控制器1200可以确定与被改变为开放状态的分区相对应的写入指针(或其初始值)。例如,存储器控制器1200可以确定写入指针的初始值以指示每个分区的起始逻辑地址VPN0。当处于开放状态的分区充满数据时,存储器控制器1200可以将相应分区的状态改变为充满状态。
当存储器控制器1200从主机2000接收到针对分区zone1至zonen中的至少一个的关闭请求时,存储器控制器1200可以将处于开放状态的分区之中的与关闭请求相对应的分区改变为关闭状态。在实施例中,存储器控制器1200可以返回用于对被改变为关闭状态的分区执行写入操作的资源。
分区zone1至zonen中的每一个可以独立地用于由主机2000指定并在主机2000中驱动的每个应用程序。另外,由于相同应用程序所使用的数据被顺序地存储在一个分区中,并且所有数据都以分区为单位被删除,所以具有可以不发生垃圾收集或可以使垃圾收集最少化的优点。
另外,由于仅通过分区内的顺序写入来存储数据,因此仅使用一个写入指针就可以进行写入,而不必利用表来管理分区中的每个空白区域。因此,具有可以最小化管理分区zone1至zonen所需的存储器空间的优点。
图11是示出对根据图8的多个分区的写入操作的示图。
参照图11,描述了对第一分区zone1和第n分区zonen执行写入操作的示例。在实施例中,应该解释的是,该示例扩展到对多个分区zone1至zonen的写入操作。
当第一分区zone1和第n分区zonen两者都处于开放状态并且从主机2000首次接收到对第一分区zone1和第n分区zonen的写入请求WRQ时,第一分区zone1的写入指针WP1和第n分区zonen的写入指针WPn两者可以指示相应分区的起始逻辑地址VPN0。在实施例中,第一分区zone1和第n分区zonen的起始逻辑地址VPN0可以对应于第一存储器装置LUN1的物理地址。
因此,由于存储器控制器1200需要对第一存储器装置LUN1中的第一分区zone1和第n分区zonen两者执行写入操作,因此可能难以将数据同时写入单个存储器装置内的两个分区。
也就是说,当确定分区zone1至zonen中的每一个的写入指针的初始值以指示起始逻辑地址,并且针对每个分区首次执行写入操作时,由于写入命令集中在特定的存储器装置(例如,与起始逻辑地址相对应的存储器装置)上,因此会出现可能无法同时写入或延迟同时写入的问题。
另外,当数据被写入到分区zone1至zonen中的至少一些并且被写入数据的分区中的一些被重置时,可以擦除与被重置的分区的逻辑地址相对应的存储器装置的物理地址(或与物理地址相对应的存储块)。在实施例中,当将与分区zone1至zonen中的每一个的起始逻辑地址VPN0相对应的存储器装置固定为特定的存储器装置(例如,第一存储器装置(LUN1))时,可能需要频繁擦除与起始逻辑地址VPN0相对应的存储器装置的存储块。因此,存在与起始逻辑地址VPN0相对应的存储器装置中集中发生寿命降低的问题。
图12是示出与根据图8的多个分区相对应的偏移的示图。
根据本公开的实施例,为了解决写入命令集中在特定存储器装置上的问题,除了写入指针之外,存储器控制器1200还可以额外地使用偏移(offset)。
在实施例中,可以基于分配给分区的每个存储器装置的物理地址来确定偏移。分配给分区的每个存储器装置的物理地址可以是存储器装置中包括的整个管芯的物理地址、整个平面的物理地址或整个块的物理地址。
在实施例中,由于存储器装置的物理地址可以分别映射(对应)到逻辑地址,因此可以基于由配置分区的存储器装置中的一个所覆盖(分配)的逻辑地址的数量来确定偏移。也就是说,偏移的长度可以采用与各个存储器装置相对应的单位。例如,不同的偏移可以对应于不同的分区。
例如,参照图12,存储器控制器1200可以基于第一分区1中的第一至第四存储器装置LUN1至LUN4中的一个所占用的逻辑地址的数量onedieitv来确定第一分区zone1的偏移doffset1。具体地,存储器控制器1200可以以由一个存储器装置占用的逻辑地址的数量onedieitv的倍数单位来确定偏移doffset1。也就是说,可以将由一个存储器装置占用的逻辑地址的数量onedieitv的一倍或多倍确定为偏移doffset1。在实施例中,当存储器控制器1200将处于擦除状态的分区中的至少一个改变为开放状态时,存储器控制器1200还可以确定与被改变为开放状态的分区相对应的偏移。
当在针对分区(更具体地,处于开放状态的分区)确定偏移之后从主机2000接收到包括指示分区zone1至zonen中的一个的分区信息(ZI)的写入请求WRQ时,存储器控制器1200可以通过使用由ZI指示的分区的偏移和写入指针来确定待开始写入操作的逻辑地址。更详细地,可以通过将由写入指针指示的逻辑地址移位该偏移来确定待开始写入操作的逻辑地址。
例如,如图12所示,可以考虑将与第一分区zone1相对应的偏移doffset1确定为由一个存储器装置占用的逻辑地址的数量onedieitv的情况。在实施例中,当接收到对第一分区zone1的初始写入请求(即,其可以对应于第一分区zone1的写入指针WP1为初始值的情况)时,存储器控制器1200可以通过将偏移doffset1施加到由写入指针WP1指示的起始逻辑地址VPN0,来将第(p+1)逻辑地址VPNp确定为待开始写入操作的逻辑地址。也就是说,作为待开始写入操作的逻辑地址,第(p+1)逻辑地址VPNp相对于由写入指针WP1指示的起始逻辑地址VPN0改变了偏移doffset1的量。在实施例中,起始逻辑地址VPN0可以对应于第一存储器装置LUN1的物理地址,并且第(p+1)逻辑地址VPNp可以对应于第二存储器装置LUN2的物理地址。因此,可以通过使用与分区zone1至zonen中的每一个相对应的偏移doffset1至doffsetn来不同地设置待开始写入操作的存储器装置。因此,集中在特定存储器装置上的写入请求可以被分布到另一存储器装置。另外,在随着将写入请求均匀地分布到存储器装置而将数据分布并存储在尽可能多的存储器装置中的情况下,当随着随后重置分区而在与重置的分区的存储区域相对应的存储器装置中执行擦除操作时,可以将擦除操作分布到多个存储器装置。因此,可以防止特定存储器装置的寿命比其他存储器装置的寿命减少得更快。
图13是示出将根据图12的偏移施加到多个分区的方法的示图。
参照图13,描述了确定与第一至第三分区zone1至zone3相对应的偏移doffset1至doffset3的方法,并且该方法可以相同地应用于其他分区。
例如,当第一分区zone1至第三分区zone3被顺序地改变为开放状态,并且因此需要针对第一分区zone1至第三分区zone3顺序地确定偏移时,每当确定偏移时,存储器控制器1200都可以将偏移增加由一个存储器装置占用的逻辑地址的数量onedieitv的k(k是等于或大于1的自然数)倍。
首先,存储器控制器1200可以将由一个存储器装置占用的逻辑地址的数量onedieitv确定为第一分区zone1的偏移doffset1。在另一实施例中,可以将首次确定的第一分区zone1的偏移doffset1确定为“0”。接下来,存储器控制器1200可以将通过将所确定的第一分区zone1的偏移doffset1增加由一个存储器装置占用的逻辑地址的数量onedieitv(或onedieitv的k倍)而获得的值,确定为第二分区zone2的偏移doffset2。接下来,存储器控制器1200可以将通过将所确定的第二分区zone2的偏移doffset2增加由一个存储器装置占用的逻辑地址的数量onedieitv(或onedieitv的k倍)而获得的值,确定为第三分区zone3的偏移doffset3。
如上所述,当确定偏移doffset1至doffset3时,可以从对应于第(p+1)逻辑地址VPNp(p是等于或大于1的自然数)的第二存储器装置LUN2开始执行针对第一分区zone1的初始写入操作(在初始写入操作中写入指针可以指示起始逻辑地址),可以从对应于第(2p+1)逻辑地址VPN2p的第三存储器装置LUN3开始执行针对第二分区zone2的初始写入操作,可以从对应于第(3p+1)逻辑地址VPN3p的第四存储器装置LUN4开始执行针对第三分区zone3的初始写入操作。
另一方面,可能发生通过将偏移施加到写入指针所指示的逻辑地址而获得的逻辑地址可能超过分区的最后逻辑地址的情况。
例如,当存储器控制器1200确定第一分区zone1的偏移doffset1并且将通过将偏移doffset1增加三倍而获得的值确定为第二分区zone2的偏移doffset2时,通过将第二分区zone2的偏移doffset2施加到由第二分区zone2的写入指针(例如,写入指针的初始值)指示的起始逻辑地址VPN0而获得的逻辑地址可能超过第二分区zone2的最后逻辑地址VPNt。在这种情况下,可以通过将由写入指针指示的逻辑地址额外地增加所超过的逻辑地址的数量来确定待开始写入操作的逻辑地址。因此,可以从起始逻辑地址VPN0开始对第二分区zone2的初始写入操作。
图14是示出根据本公开的实施例的考虑到存储器装置的状态而将偏移施加到多个分区的方法的示图。
在实施例中,存储器控制器1200可以考虑到存储器装置的空闲/忙碌状态来确定偏移。更详细地,存储器控制器1200可以确定偏移,使得通过将起始逻辑地址VPN0增加偏移而获得的逻辑地址与存储器装置之中的处于空闲状态的存储器装置的物理地址相对应。此处,可以基于确定偏移的时间点通过参考从RB焊盘RB接收的就绪-忙碌信号来确定存储器装置是否处于空闲状态。
例如,参照图14,响应于从主机2000接收的对第一分区zone1的开放请求,存储器控制器1200可以将第一分区zone1的状态改变为开放状态,并且将偏移doffset1确定为“0”,使得通过将起始逻辑地址VPN0增加偏移doffset1而获得的逻辑地址与处于空闲状态的第一存储器装置LUN1的物理地址相对应。
响应于从主机2000接收的对第二分区zone2的开放请求,存储器控制器1200可以将第二分区zone2的状态改变为开放状态,并且将偏移doffset2确定为由一个存储器装置占用的逻辑地址的数量onedieitv的两倍,使得通过将偏移doffset2施加到起始逻辑地址VPN0而获得的逻辑地址VPN2p与处于空闲状态的第三存储器装置LUN3的物理地址相对应。
响应于从主机2000接收的对第三分区zone3的开放请求,存储器控制器1200可以将第三分区zone3的状态改变为开放状态,并且将偏移doffset3确定为由一个存储器装置占用的逻辑地址的数量onedieitv的三倍,使得通过将偏移doffset3施加到起始逻辑地址VPN0而获得的逻辑地址VPN3p与处于空闲状态的第四存储器装置LUN4的物理地址相对应。
图15是示出根据本公开的实施例的考虑到存储器装置的擦除计数而将偏移施加到多个分区的方法的示图。
在实施例中,存储器控制器1200可以考虑到配置分区的存储器装置中包括的存储块的擦除计数来确定偏移。更详细地,存储器控制器1200可以确定偏移,使得通过将起始逻辑地址VPN0增加偏移而获得的逻辑地址对应于存储器装置之中擦除计数EC11、EC12、……、EC33和EC34最小的存储器装置的物理地址。此处,擦除计数EC11、EC12、……、EC33和EC34可以是每当配置分区的存储器装置中的每一个的存储块被擦除时所计数的值。例如,每当配置第一分区zone1的第一存储器装置LUN1的存储块被擦除时,第一存储器装置LUN1的擦除计数EC11可以增加1。另外,可以针对每个分区分别对存储器装置中的每一个的擦除计数进行计数。例如,配置第一分区zone1的第一存储器装置LUN1的存储块的擦除计数EC11和配置第二分区zone2的第一存储器装置LUN1的存储块的擦除计数EC21可以彼此不同。
参照图15,存储器控制器1200可以响应于从主机2000接收到的对第一分区zone1的开放请求,将第一分区zone1的状态改变为开放状态。接下来,存储器控制器1200可以确定偏移,使得通过将第一分区zone1的起始逻辑地址VPN0增加偏移doffset1而获得的逻辑地址对应于具有配置第一分区zone1的存储器装置的擦除计数EC11、EC12、EC13和EC14之中最小的擦除计数的存储器装置的物理地址。例如,当第三存储器装置LUN3的擦除计数EC13在配置第一分区zone1的存储器装置的擦除计数EC11、EC12、EC13和EC14之中最小时,存储器控制器1200可以将偏移doffset1确定为由一个存储器装置占用的逻辑地址的数量onedieitv的两倍,使得通过将第一分区zone1的起始逻辑地址VPN0增加偏移doffset1而获得的逻辑地址VPN2p对应于第三存储器装置LUN3的物理地址。
以与第一分区zone1相同的方法,当第三存储器装置LUN3的擦除计数EC23在配置第二分区zone2的存储器装置的擦除计数EC21、EC22、EC23和EC24之中最小时,存储器控制器1200可以将偏移doffset2确定为由一个存储器装置占用的逻辑地址的数量onedieitv的两倍,使得通过将第二分区zone2的起始逻辑地址VPN0增加偏移doffset2而获得的逻辑地址VPN2p对应于第三存储器装置LUN3的物理地址。
以与第一分区zone1相同的方法,当第四存储器装置LUN4的擦除计数EC34在配置第三分区zone3的存储器装置的擦除计数EC31、EC32、EC33和EC34之中最小时,存储器控制器1200可以将偏移doffset3确定为由一个存储器装置占用的逻辑地址的数量onedieitv的三倍,使得通过将第三分区zone3的起始逻辑地址VPN0增加偏移doffset3而获得的逻辑地址VPN3p对应于第四存储器装置LUN4的物理地址。
图16是示出根据图1的存储器控制器的示图。
参照图16,存储器控制器1200可以包括内部存储器1210、中央处理单元(CPU)1220、错误校正块1230、主机接口1240、缓冲存储器接口1250和存储器接口1260。
内部存储器1210可以存储存储器控制器1200的操作所必需的各种信息。例如,内部存储器1210可以包括地址映射表,该地址映射表指示分区的逻辑地址与存储器装置的物理地址之间的映射关系。另外,内部存储器1210可以存储分区zone1至zonen中的每一个的状态、写入指针、偏移等。例如,内部存储器1210可以使用队列来存储各个分区zone1至zonen的偏移。当存储器控制器1200从主机2000接收到开放请求时,存储器控制器1200可以获取存储在内部存储器1210的队列中的偏移,将所获取的偏移确定为与开放请求相对应的分区的偏移,并且再次将所获取的偏移放入队列中。最初顺序地存储在队列中的偏移可以是通过顺序地增加由一个存储器装置占用的逻辑地址的数量onedieitv的k(k是等于或大于1的自然数)倍而获得的值。内部存储器1210可以由随机存取存储器(RAM)、动态RAM(DRAM)、静态RAM(SRAM)、高速缓存和紧密联接存储器(TCM)中的至少一个来配置。内部存储器1210中存储的数据中的至少一些可以在电源关断时存储在存储器装置1100中,并且可以在电源接通时从存储器装置1100读取并且可以存储在内部存储器1210中。
CPU 1220可以执行各种命令操作或生成各种命令操作以控制存储器装置1100。当CPU 1220从主机2000接收到请求时,CPU 1220可以根据所接收到的请求来生成命令,并且将所生成的命令传输到错误校正块1230。CPU 1220可以执行参照图8至图13描述的存储器控制器1200的操作。更详细地,CPU 1220可以根据指示上述存储器控制器1200的操作的指令来执行各种操作。
错误校正块1230被配置为使用错误校正码(ECC)来检测和校正从存储器装置1100接收的数据的错误。CPU 1220可以根据错误校正块1230的错误检测结果来控制存储器装置1100以调节读取电压并执行重新读取。在实施例中,错误校正块可以被设置为存储器控制器1200的组件。
主机接口1240可以在存储器控制器1200和主机2000之间交换命令、地址和数据。例如,主机接口1240可以从主机2000接收请求、地址和数据,并且将从存储器装置1100读取的数据输出到主机2000。主机接口1240可以使用诸如以下的协议来与主机2000通信:高速外围组件互连(PCIe)、高级技术附件(ATA)、串行ATA(SATA)、并行ATA(PATA)、串列SCSI(SAS)或高速非易失性存储器(NVMe)。主机接口1240不限于上述示例,并且可以包括诸如通用串行总线(USB)、多媒体卡(MMC)、增强型小型磁盘接口(ESDI)或电子集成驱动器(IDE)的各种接口。
缓冲存储器接口1250可以在CPU 1220和存储器系统1000的缓冲存储器(未示出)之间传输数据。缓冲存储器(未示出)可以用作存储器控制器1200的操作存储器或高速缓存存储器,并且除了上述信息之外,还可以存储在存储器系统1000中使用的系统数据。根据实施例,缓冲存储器(未示出)可以包括:双倍数据速率同步动态随机存取存储器(DDRSDRAM),DDR4 SDRAM,第四代低功率双倍数据速率(LPDDR4)SDRAM、图形双倍数据速率(GDDR)SDRAM、低功率DDR(LPDDR)或Rambus动态随机存取存储器(RDRAM)。当缓冲存储器被包括在存储器控制器1200中时,可以省略缓冲存储器接口1250。
存储器接口1260可以在存储器控制器1200和存储器装置1100之间交换命令、地址和数据。例如,存储器接口1260可以通过通道将命令、地址和数据传输到存储器装置1100,并且可以从存储器装置1100接收数据等。
图17是示出根据图16的存储器控制器的操作的流程图。
参照图17,操作存储器控制器的方法可以包括:从主机接收写入请求(S100);确定由多个存储器装置的每一个中包括的块配置的多个分区之中的由写入请求指示的目标分区,并且基于与目标分区相对应的写入指针和偏移来确定待开始写入操作的目标分区的逻辑地址(S110);确定多个存储器装置之中的与目标分区的逻辑地址相对应的存储器装置的物理地址(S120);并且将与写入请求相对应的写入命令和物理地址传输到与目标分区的逻辑地址相对应的存储器装置(S130)。
可以基于在逻辑地址的整个范围内由多个存储器装置中的一个占用的逻辑地址的数量来确定偏移。
可以以在逻辑地址的整个范围内由多个存储器装置中的一个占用的逻辑地址的数量的倍数单位来确定偏移。
确定目标分区的逻辑地址(S110)可以包括通过将由写入指针指示的逻辑地址增加偏移来确定目标分区的逻辑地址。
确定目标分区的逻辑地址(S110)可以包括:当通过将由写入指针指示的逻辑地址增加偏移而确定的目标分区的逻辑地址超过目标分区的最后逻辑地址时,通过将由写入指针指示的逻辑地址额外增加超过的逻辑地址的数量来确定目标分区的逻辑地址。
该方法可以包括:在接收写入请求(S100)之前,从主机接收对目标分区的开放请求,并且响应于开放请求,将分区之中的目标分区的状态改变为开放状态。确定偏移可以包括确定与开放状态的目标分区相对应的偏移。
确定偏移可以包括:每次确定偏移时,将偏移增加由一个存储器装置占用的逻辑地址的数量的k(k是等于或大于1的自然数)倍。
写入指针的初始值可以指示目标分区的起始逻辑地址。
确定偏移可以包括:确定与目标分区相对应的偏移,使得通过将起始逻辑地址增加偏移而获得的目标分区的逻辑地址对应于多个存储器装置之中的处于空闲状态的存储器装置的物理地址。
确定偏移可以包括:确定与目标分区相对应的偏移,使得通过将起始逻辑地址增加偏移而获得的目标分区的逻辑地址对应于多个存储器装置之中的擦除计数最小的存储器装置的物理地址。
多个存储器装置中的至少一些可以通过不同的通道连接到存储器控制器。
图18是示出应用了根据图1的存储器系统的存储卡的示图。
参照图18,存储器系统可以包括主机2000和存储卡70000。
存储卡70000可以被实施为智能卡。存储卡70000可以包括存储器装置1100、存储器控制器1200以及卡接口7100。
存储器控制器1200可以控制存储器装置1100和卡接口7100之间的数据交换。根据实施例,卡接口7100可以是安全数字(SD)卡接口或多媒体卡(MMC)接口,但是不限于此。
卡接口7100可以根据主机2000的协议来接口连接主机2000和存储器控制器1200之间的数据交换。根据实施例,卡接口7100可以支持通用串行总线(USB)协议和芯片间(IC)USB协议。此处,卡接口7100可以指能够支持由主机2000使用的协议的硬件、安装在硬件中的软件或信号传输方法。
图19是示出应用了根据图1的存储器系统的固态驱动器(SSD)系统的框图。
参照图19,SSD系统3000包括主机3100和SSD 3200。SSD 3200通过信号连接器3001与主机3100交换信号SIG,并且通过电源连接器3002接收电力PWR。SSD 3200包括SSD控制器3210、多个闪速存储器3221至322n、辅助电源装置3230和缓冲存储器3240。
在实施例中,SSD控制器3210可以对应于存储器控制器1200,并且闪速存储器3221至322n可以是对应于存储器装置1100的组件。
SSD控制器3210可以响应于从主机3100接收的信号SIG来控制多个闪速存储器3221至322n。例如,信号SIG可以是基于主机3100和SSD 3200之间的接口的信号。例如,信号SIG可以是通过诸如以下的接口中的至少一种来定义的信号:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围组件互连(PCI)、高速PCI(PCI-E)、高级技术附件(ATA)、串行ATA、并行ATA、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)、电子集成驱动器(IDE)、火线、通用闪存(UFS)、Wi-Fi、蓝牙和NVMe。
辅助电源装置3230通过电源连接器3002连接到主机3100。辅助电源装置3230可以从主机3100接收电力PWR并且可以充电。当来自主机3100的电力供应不平稳时,辅助电源装置3230可以向SSD 3200供应电力。例如,辅助电源装置3230可以位于SSD 3200中或可以位于SSD 3200外部。例如,辅助电源装置3230可以位于主板上,并且可以向SSD 3200提供辅助电力。
缓冲存储器3240用作SSD 3200的缓冲存储器。例如,缓冲存储器3240可以临时存储从主机3100接收的数据或从多个闪速存储器3221至322n接收的数据,或者可以临时存储闪速存储器3221至322n的元数据(例如,映射表)。缓冲存储器3240可以包括诸如DRAM、SDRAM、DDR SDRAM、LPDDR SDRAM和GRAM的易失性存储器或诸如FRAM、ReRAM、STT-MRAM和PRAM的非易失性存储器。
尽管上面已经描述了某些实施例,但是本领域技术人员将理解的是,所描述的实施例仅作为示例。因此,不应基于所描述的实施例来限制该存储器系统。相反,当结合以上描述和附图考虑时,本文所描述的存储器系统仅应根据所附权利要求书来限制。
Claims (20)
1.一种存储器系统,包括:
多个存储器装置,包括由存储器单元配置的多个块;以及
存储器控制器,通过利用所述多个存储器装置的每一个中包括的所述多个块配置多个分区来控制与所述多个分区相对应的所述多个存储器装置,
其中所述存储器控制器进一步:
从主机接收写入请求,
确定所述多个分区之中的由所述写入请求指示的目标分区,并且
基于与所述目标分区相对应的写入指针和偏移,确定待开始写入操作的所述目标分区的逻辑地址。
2.根据权利要求1所述的存储器系统,其中所述存储器控制器进一步:基于所述目标分区的逻辑地址之中的由所述多个存储器装置中的一个占用的逻辑地址的数量来确定所述偏移。
3.根据权利要求2所述的存储器系统,其中所述存储器控制器以由所述多个存储器装置中的一个占用的逻辑地址的数量的倍数单位来确定所述偏移。
4.根据权利要求1所述的存储器系统,其中所述存储器控制器通过将由所述写入指针指示的逻辑地址增加所述偏移来确定所述目标分区的逻辑地址。
5.根据权利要求4所述的存储器系统,其中当通过将由所述写入指针指示的逻辑地址增加所述偏移而确定的所述目标分区的逻辑地址超过所述目标分区的最后逻辑地址时,所述存储器控制器通过将由所述写入指针指示的逻辑地址额外地增加超过的逻辑地址的数量来确定所述目标分区的逻辑地址。
6.根据权利要求3所述的存储器系统,
其中所述存储器控制器进一步:在从所述主机接收所述写入请求之前,响应于从所述主机接收的开放请求,将所述目标分区的状态改变为开放状态,并且
其中所述存储器控制器确定与所述开放状态的所述目标分区相对应的偏移。
7.根据权利要求6所述的存储器系统,其中每次确定所述偏移时,所述存储器控制器通过将所述偏移增加由所述多个存储器装置中的一个占用的逻辑地址的数量的k倍来确定所述偏移,其中k是等于或大于1的自然数。
8.根据权利要求6所述的存储器系统,其中所述写入指针的初始值指示所述目标分区的起始逻辑地址。
9.根据权利要求8所述的存储器系统,其中所述存储器控制器确定与所述目标分区相对应的所述偏移,使得通过将所述偏移施加到所述起始逻辑地址而获得的所述目标分区的逻辑地址对应于所述多个存储器装置之中的处于空闲状态的存储器装置的物理地址。
10.根据权利要求8所述的存储器系统,其中所述存储器控制器确定与所述目标分区相对应的所述偏移,使得通过将所述偏移施加到所述起始逻辑地址而获得的所述目标分区的逻辑地址对应于所述多个存储器装置之中的擦除计数最小的存储器装置的物理地址。
11.根据权利要求1所述的存储器系统,其中所述多个存储器装置中的至少一些通过不同的通道连接到所述存储器控制器。
12.一种操作存储器控制器的方法,所述方法包括:
从主机接收写入请求,
确定由多个存储器装置的每一个中包括的块配置的多个分区之中的由所述写入请求指示的目标分区,并且基于与所述目标分区相对应的写入指针和偏移来确定待开始写入操作的所述目标分区的逻辑地址;
确定所述多个存储器装置之中的与所述目标分区的逻辑地址相对应的存储器装置的物理地址;并且
向与所述目标分区的逻辑地址相对应的存储器装置传输与所述写入请求相对应的写入命令和所述物理地址。
13.根据权利要求12所述的方法,进一步包括基于所述目标分区的逻辑地址之中的由所述多个存储器装置中的一个占用的逻辑地址的数量来确定所述偏移,并且
其中以由所述多个存储器装置中的一个占用的逻辑地址的数量的倍数单位来确定所述偏移。
14.根据权利要求12所述的方法,其中通过将由所述写入指针指示的逻辑地址增加所述偏移来确定所述目标分区的逻辑地址。
15.根据权利要求14所述的方法,其中当通过将由所述写入指针指示的逻辑地址增加所述偏移而确定的所述目标分区的逻辑地址超过所述目标分区的最后逻辑地址时,通过将由所述写入指针指示的逻辑地址额外增加超过的逻辑地址的数量,来确定所述目标分区的逻辑地址。
16.根据权利要求13所述的方法,
进一步包括:在接收所述写入请求之前:
从所述主机接收对所述目标分区的开放请求;并且
响应于所述开放请求,将所述目标分区的状态改变为开放状态,
其中确定所述偏移包括确定与所述开放状态的所述目标分区相对应的偏移,并且
其中确定所述偏移包括:每次确定所述偏移时,将所述偏移增加由所述多个存储器装置中的一个占用的逻辑地址的数量的k倍,其中k是等于或大于1的自然数。
17.根据权利要求16所述的方法,其中所述写入指针的初始值指示所述目标分区的起始逻辑地址。
18.根据权利要求17所述的方法,其中确定与所述目标分区相对应的所述偏移,使得通过将所述起始逻辑地址增加所述偏移而获得的所述目标分区的逻辑地址对应于所述多个存储器装置之中的处于空闲状态的存储器装置的物理地址。
19.根据权利要求17所述的方法,其中确定与所述目标分区相对应的所述偏移,使得通过将所述起始逻辑地址增加所述偏移而获得的所述目标分区的逻辑地址对应于所述多个存储器装置之中的擦除计数最小的存储器装置的物理地址。
20.一种存储器系统,包括:
多个存储器装置,每个存储器装置包括各自具有至少一个存储块的第一块组和第二块组,各个存储器装置的所述第一块组配置第一分区,并且所述各个存储器装置的所述第二块组配置第二分区;以及
控制器,通过分别对应的通道控制所述存储器装置,以同时进行根据第一指针和第一偏移访问所述第一分区以及根据第二指针和第二偏移访问所述第二分区,所述第二偏移与所述第一偏移不同,
其中所述第一偏移和所述第二偏移中的每一个具有以对应于所述各个存储器装置为单位的长度。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2020-0143764 | 2020-10-30 | ||
KR1020200143764A KR20220058224A (ko) | 2020-10-30 | 2020-10-30 | 메모리 시스템 및 이에 포함된 메모리 컨트롤러의 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114442915A true CN114442915A (zh) | 2022-05-06 |
CN114442915B CN114442915B (zh) | 2024-03-08 |
Family
ID=81362554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110771226.1A Active CN114442915B (zh) | 2020-10-30 | 2021-07-08 | 存储器系统以及操作其中所包括的存储器控制器的方法 |
Country Status (3)
Country | Link |
---|---|
US (2) | US11698748B2 (zh) |
KR (1) | KR20220058224A (zh) |
CN (1) | CN114442915B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210312071A1 (en) * | 2017-06-13 | 2021-10-07 | Sage Microelectronics Corporation | Method and apparatus for securing data in multiple independent channels |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11537305B1 (en) | 2021-06-03 | 2022-12-27 | Western Digital Technologies, Inc. | Dissimilar write prioritization in ZNS devices |
US11537303B1 (en) * | 2021-06-03 | 2022-12-27 | Western Digital Technologies, Inc. | Dissimilar write prioritization in ZNS devices |
US11593018B2 (en) * | 2021-07-21 | 2023-02-28 | Micron Technology, Inc. | Block allocation and erase techniques for sequentially-written memory devices |
KR20230060163A (ko) * | 2021-10-27 | 2023-05-04 | 에스케이하이닉스 주식회사 | 스토리지 장치 및 그 동작 방법 |
US11954367B2 (en) * | 2022-06-15 | 2024-04-09 | Western Digital Technologies, Inc. | Active time-based command prioritization in data storage devices |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6745264B1 (en) * | 2002-07-15 | 2004-06-01 | Cypress Semiconductor Corp. | Method and apparatus for configuring an interface controller wherein ping pong FIFO segments stores isochronous data and a single circular FIFO stores non-isochronous data |
US20060184719A1 (en) * | 2005-02-16 | 2006-08-17 | Sinclair Alan W | Direct data file storage implementation techniques in flash memories |
US20070067574A1 (en) * | 2005-09-21 | 2007-03-22 | Stempel Brian M | Method and apparatus for managing cache partitioning |
CN102084360A (zh) * | 2008-04-06 | 2011-06-01 | 弗森-艾奥公司 | 用于确认从数据存储设备读取正确的数据段的装置、系统和方法 |
US20180173619A1 (en) * | 2016-12-21 | 2018-06-21 | Sandisk Technologies Llc | System and Method for Distributed Logical to Physical Address Mapping |
US20190205257A1 (en) * | 2018-01-02 | 2019-07-04 | SK Hynix Inc. | Memory system and operating method thereof |
CN111177018A (zh) * | 2018-11-12 | 2020-05-19 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE515737C2 (sv) * | 1995-03-22 | 2001-10-01 | Ericsson Telefon Ab L M | Anordning och förfarande avseende hantering av digitala signaler och en behandlingsanordning omfattande en dylik |
KR100321987B1 (ko) | 1999-02-19 | 2002-02-04 | 윤종용 | 레이드 시스템에서 패러티 캐쉬 및 이의 운영 방법 |
US7206904B2 (en) * | 2002-03-20 | 2007-04-17 | Hewlett-Packard Development Company, L.P. | Method and system for buffering multiple requests from multiple devices to a memory |
US8751755B2 (en) * | 2007-12-27 | 2014-06-10 | Sandisk Enterprise Ip Llc | Mass storage controller volatile memory containing metadata related to flash memory storage |
US8599844B2 (en) * | 2010-03-12 | 2013-12-03 | Force10 Networks, Inc. | System and method for flexible memory system configuration and access |
US11037625B2 (en) * | 2012-11-20 | 2021-06-15 | Thstyme Bermuda Limited | Solid state drive architectures |
KR20160059050A (ko) * | 2014-11-17 | 2016-05-26 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
TWI569275B (zh) * | 2015-07-17 | 2017-02-01 | 慧榮科技股份有限公司 | 資料儲存裝置及其資料維護方法 |
US10585749B2 (en) * | 2017-08-10 | 2020-03-10 | Samsung Electronics Co., Ltd. | System and method for distributed erasure coding |
KR102422032B1 (ko) * | 2017-08-16 | 2022-07-19 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR20190083148A (ko) | 2018-01-03 | 2019-07-11 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 및 그것을 포함하는 데이터 처리 시스템 |
US11188232B2 (en) * | 2019-04-29 | 2021-11-30 | EMC IP Holding Company LLC | Enhanced storage compression based on activity level |
US11294827B2 (en) * | 2019-09-12 | 2022-04-05 | Western Digital Technologies, Inc. | Non-sequential zoned namespaces |
KR20210070054A (ko) * | 2019-12-04 | 2021-06-14 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
JP2021114038A (ja) * | 2020-01-16 | 2021-08-05 | キオクシア株式会社 | メモリシステムおよび制御方法 |
US11200162B2 (en) * | 2020-04-28 | 2021-12-14 | Western Digital Technologies, Inc. | Condensing logical to physical table pointers in SSDs utilizing zoned namespaces |
KR20220005111A (ko) * | 2020-07-06 | 2022-01-13 | 에스케이하이닉스 주식회사 | 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법 |
-
2020
- 2020-10-30 KR KR1020200143764A patent/KR20220058224A/ko active Search and Examination
-
2021
- 2021-05-04 US US17/307,325 patent/US11698748B2/en active Active
- 2021-07-08 CN CN202110771226.1A patent/CN114442915B/zh active Active
-
2023
- 2023-06-01 US US18/327,067 patent/US20230325111A1/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6745264B1 (en) * | 2002-07-15 | 2004-06-01 | Cypress Semiconductor Corp. | Method and apparatus for configuring an interface controller wherein ping pong FIFO segments stores isochronous data and a single circular FIFO stores non-isochronous data |
US20060184719A1 (en) * | 2005-02-16 | 2006-08-17 | Sinclair Alan W | Direct data file storage implementation techniques in flash memories |
US20070067574A1 (en) * | 2005-09-21 | 2007-03-22 | Stempel Brian M | Method and apparatus for managing cache partitioning |
CN102084360A (zh) * | 2008-04-06 | 2011-06-01 | 弗森-艾奥公司 | 用于确认从数据存储设备读取正确的数据段的装置、系统和方法 |
US20180173619A1 (en) * | 2016-12-21 | 2018-06-21 | Sandisk Technologies Llc | System and Method for Distributed Logical to Physical Address Mapping |
US20190205257A1 (en) * | 2018-01-02 | 2019-07-04 | SK Hynix Inc. | Memory system and operating method thereof |
CN111177018A (zh) * | 2018-11-12 | 2020-05-19 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210312071A1 (en) * | 2017-06-13 | 2021-10-07 | Sage Microelectronics Corporation | Method and apparatus for securing data in multiple independent channels |
Also Published As
Publication number | Publication date |
---|---|
KR20220058224A (ko) | 2022-05-09 |
US20230325111A1 (en) | 2023-10-12 |
CN114442915B (zh) | 2024-03-08 |
US11698748B2 (en) | 2023-07-11 |
US20220137858A1 (en) | 2022-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114442915B (zh) | 存储器系统以及操作其中所包括的存储器控制器的方法 | |
CN110275673B (zh) | 存储装置及其操作方法 | |
CN110389720B (zh) | 存储装置及其操作方法 | |
CN112783433A (zh) | 存储装置及其操作方法 | |
CN113900969A (zh) | 存储器装置及其操作方法 | |
CN111445939B (zh) | 存储装置及其操作方法 | |
CN114063897A (zh) | 存储器控制器及其操作方法 | |
CN111435333B (zh) | 存储装置及其操作方法 | |
CN114115708A (zh) | 存储装置及其操作方法 | |
CN113703662A (zh) | 存储器系统、存储器控制器及其操作方法 | |
US20230221895A1 (en) | Memory system and operating method of memory system storing doorbell information in the buffer memory | |
CN110413219B (zh) | 存储器控制器、存储器系统及其操作方法 | |
KR20210128780A (ko) | 메모리 컨트롤러 및 이를 포함하는 저장 장치 | |
KR20210108208A (ko) | 저장 장치 및 그 동작 방법 | |
US11474726B2 (en) | Memory system, memory controller, and operation method thereof | |
US11182108B2 (en) | Memory system, memory controller, and operation method | |
US10998053B2 (en) | Memory device and operating method thereof for applying a channel precharge voltage to bit lines after a sensing operation | |
CN113971975A (zh) | 存储器装置及其操作方法 | |
CN113555054A (zh) | 存储装置及其操作方法 | |
KR20220079235A (ko) | 저장 장치 및 그 동작 방법 | |
CN113126895A (zh) | 存储装置及其操作方法 | |
US20230116063A1 (en) | Storage device based on daisy chain topology | |
US11782644B2 (en) | Memory system and method of operating the same | |
US11422747B2 (en) | Memory system and method for operating memory controller included therein | |
US20230006673A1 (en) | Memory system and memory controller |
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 |