CN112825062A - 存储器控制器及其操作方法 - Google Patents

存储器控制器及其操作方法 Download PDF

Info

Publication number
CN112825062A
CN112825062A CN202010684568.5A CN202010684568A CN112825062A CN 112825062 A CN112825062 A CN 112825062A CN 202010684568 A CN202010684568 A CN 202010684568A CN 112825062 A CN112825062 A CN 112825062A
Authority
CN
China
Prior art keywords
memory
block
information
reserved
ftl
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.)
Withdrawn
Application number
CN202010684568.5A
Other languages
English (en)
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 CN112825062A publication Critical patent/CN112825062A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • 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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0607Interleaved addressing
    • 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/10Address translation
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • 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/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]
    • 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
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • G11C29/4401Indication or identification of errors, e.g. for repair for self repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications
    • G11C29/765Masking faults in memories by using spares or by reconfiguring using address translation or modifications in solid state disks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7207Details relating to flash memory management management of metadata or control data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits

Abstract

本申请公开了一种存储器控制器。该存储器控制器包括:第一闪存转换层(FTL),基于关于第一存储块的信息来生成与从主机接收的第一类型逻辑地址相对应的物理地址;第二FTL,基于关于第二存储块的信息来生成与从主机接收的第二类型逻辑地址相对应的物理地址;以及存储器控制单元,控制第一存储器区域或第二存储器区域对与第一类型逻辑地址相对应的物理地址或与第二类型逻辑地址相对应的物理地址执行操作,其中第一FTL向第二FTL提供用于请求使用第二存储块的块请求信息,并基于由第二FTL提供的块分配信息来生成与从主机接收的第一类型逻辑地址相对应的物理地址。

Description

存储器控制器及其操作方法
相关申请的交叉引用
本申请要求于2019年11月21日提交的申请号为10-2019-0150745的韩国专利申请的优先权,该韩国专利申请通过引用整体并入本文。
技术领域
各个实施例总体涉及电子装置,并且更具体地,涉及存储器控制器和操作电子装置的方法。
背景技术
存储装置可以响应于诸如计算机或智能电话的主机装置的控制来存储数据。存储装置可以包括存储数据的存储器装置和控制该存储器装置的存储器控制器。存储器装置可以分为易失性存储器装置和非易失性存储器装置。
易失性存储器装置只要供电就可以保留数据,并且在没有电源的情况下可能会丢失存储的数据。易失性存储器装置的类型可以包括静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等。
非易失性存储器装置即使没有电源也不会丢失数据。非易失性存储器装置的类型可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)和闪速存储器。
发明内容
本公开的各个实施例涉及一种具有改进的保留块管理性能的存储器控制器以及操作该存储器控制器的方法。
根据实施例,一种存储器控制器可以包括:第一闪存转换层(FTL),被配置成基于关于第一存储块的信息来生成与从主机接收的第一类型逻辑地址相对应的物理地址;第二FTL,被配置成基于关于第二存储块的信息来生成与从主机接收的第二类型逻辑地址相对应的物理地址;以及存储器控制单元,被配置成控制第一存储器区域或第二存储器区域对与第一类型逻辑地址相对应的物理地址或与第二类型逻辑地址相对应的物理地址执行操作,其中第一FTL向第二FTL提供用于请求使用第二存储块的块请求信息,并基于由第二FTL提供的块分配信息来生成与从主机接收的第一类型逻辑地址相对应的物理地址。
根据实施例,一种存储器控制器可以包括:第一FTL,被配置成处理对从主机接收的第一类型逻辑地址的请求;第二FTL,被配置成处理对从主机接收的第二类型逻辑地址的请求;第一类型保留块信息存储装置,被配置成存储关于第一类型保留块的信息,第一类型保留块待替换与第一类型逻辑地址相对应的坏块;第二类型保留块信息存储装置,被配置成存储关于第二类型保留块的信息,第二类型保留块待替换与第二类型逻辑地址相对应的坏块,其中第一FTL基于第一类型保留块的数量,向第二FTL提供用于请求使用第二类型保留块的保留块请求信息,并将从第二FTL接收的关于目标保留块的信息存储在第一类型保留块信息存储装置中,并且其中第二FTL从第二类型保留块信息存储装置中移除关于目标保留块的信息。
根据实施例,一种操作存储器控制器的方法,该存储器控制器包括管理第一存储器装置中包括的第一保留块的第一FTL和管理第二存储器装置中包括的第二保留块的第二FTL,该方法可以包括:通过第一FTL,检测在第一存储器装置中出现的坏块;通过第一FTL,基于第一保留块的数量,向第二FTL提供用于向第二FTL请求使用第二存储器装置中包括的第二保留块的保留块请求信息;通过第二FTL,基于第二保留块的数量,向第一FTL提供关于第二保留块之中的目标保留块的保留块分配信息;通过第一FTL,从第二FTL接收关于目标保留块的信息;并且通过第一FTL,通过将与坏块相对应的逻辑地址映射到目标保留块的物理地址,将坏块替换为目标保留块。
附图说明
图1是示出存储装置的框图;
图2是示出根据本公开的实施例的存储器控制器和存储器装置的框图;
图3是示出根据另一个实施例的存储器装置的框图;
图4是示出根据本公开的实施例的坏块替换处理的示图;
图5是示出根据本公开的实施例的存储器控制器的示图;
图6是示出保留块请求信息和保留块分配信息的示图;
图7是示出坏块替换处理的示图;
图8是示出保留块分配处理的示图;
图9是示出根据本公开的实施例的保留块分配方法的示图;
图10是示出考虑交错性能的保留块分配方法的示图;
图11是示出考虑每个存储器管芯中包括的保留块数量的保留块分配方法的示图;
图12是示出根据本公开的实施例的操作存储器控制器的方法的流程图;
图13是示出根据本公开的实施例的操作存储器控制器的方法的流程图;
图14是示出存储器管芯的示图;
图15是示出图14的存储块BLKi的示图;
图16是示出应用根据实施例的存储装置的存储卡系统的框图;
图17是示出应用根据本公开的实施例的存储装置的固态驱动器(SSD)系统的框图;以及
图18是示出应用根据实施例的存储装置的用户系统的框图。
具体实施方式
本文提供了具体的结构和功能描述以描述本发明的实施例。然而,本发明的特征和方面可以以各种其它方式实施和/或执行。因此,本发明不限于所公开的实施例或本文的任何具体细节。在整个说明书中,对“实施例”、“另一实施例”等的参考不一定仅针对一个实施例,并且对任何这种短语的不同参考不一定针对相同的实施例。
在下文中,为了使本领域技术人员实践本发明,参照附图详细地描述本公开的实施例。
图1是示出存储装置50的框图。
参照图1,存储装置50可以包括存储器装置100和控制存储器装置100的操作的存储器控制器200。
存储装置50可以被配置成响应于主机300的控制来存储数据。存储装置50的示例可以包括蜂窝电话、智能电话、MP3播放器、膝上型电脑、台式计算机、游戏机、电视、平板PC或车载式信息娱乐系统。
根据与主机300的通信方法相对应的主机接口,存储装置50可以被配置为各种类型的存储装置中的任意一种。例如,存储装置50可以被配置为固态驱动器(SSD),MMC、eMMC、RS-MMC和微型MMC形式的多媒体卡,SD、迷你SD和微型SD形式的安全数字卡,通用串行总线(USB)存储装置,通用闪存(UFS)装置,个人计算机存储卡国际协会(PCMCIA)卡型存储装置,外围组件互连(PCI)卡型存储装置,高速PCI(PCI-E)卡型存储装置,紧凑型闪存(CF)卡,智能媒体卡和/或记忆棒。
存储装置50可以被制造为各种类型的封装中的任意一种。例如,存储装置50可以被制造为堆叠封装(POP)、系统级封装(SIP)、片上系统(SOC)、多芯片封装(MCP)、板上芯片(COB)、晶圆级制造封装(WFP)和/或晶圆级堆叠封装(WSP)。
存储器装置100可以存储数据。存储器装置100可以响应于存储器控制器200的控制而操作。根据实施例,存储器装置100可以包括第一存储器区域110和第二存储器区域120。第一存储器区域110和第二存储器区域120中的每一个可以包括多个存储器管芯。存储器管芯中的每一个可以包括存储器单元阵列,存储器单元阵列包括存储数据的多个存储器单元。
存储器单元中的每一个可以是存储一个数据位的单层单元(SLC)、存储两个数据位的多层单元(MLC)、存储三个数据位的三层单元(TLC),或存储四个数据位的四层单元(QLC)。
存储器单元阵列可以包括多个存储块。存储块中的每一个可以包括多个存储器单元。单个存储块可以包括多个页面。根据实施例,页面可以是将数据存储在存储器装置100中的单位,或读取存储在存储器装置100中的数据的单位。存储块可以是擦除数据的单位。
根据实施例,第一存储器区域110可以响应于第一处理器210的控制而操作。在第一处理器210的控制下,可以将第一存储器区域110中包括的保留块替换为第一存储器区域110中包括的坏块。当第一存储器区域110中包括的保留块的数量小于或等于参考数量时,可以将第二存储器区域120中包括的保留块替换为第一存储器区域110中包括的坏块。
根据实施例,第二存储器区域120可以响应于第二处理器220的控制而操作。在第二处理器220的控制下,可以将第二存储器区域120中包括的保留块替换为第二存储器区域120中包括的坏块。当第二存储器区域120中包括的保留块的数量小于或等于参考数量时,可以将第一存储器区域110中包括的保留块替换为第二存储器区域120中包括的坏块。
根据实施例,存储器装置110的示例包括:双倍数据速率同步动态随机存取存储器(DDR SDRAM)、低功率双倍数据速率4(LPDDR4)SDRAM、图形双倍数据速率(GDDR)SDRAM、低功率DDR(LPDDR)SDRAM、Rambus动态随机存取存储器(RDRAM)、NAND闪速存储器、垂直NAND闪速存储器、NOR闪速存储器装置、电阻式随机存取存储器(RRAM)、相变存储器(PRAM)、磁阻随机存取存储器(MRAM)、铁电随机存取存储器(FRAM)、或自旋转移力矩随机存取存储器(STT-RAM)。在本文描述的上下文中,假设存储器装置100是NAND闪速存储器。
存储器装置100可以从存储器控制器200接收命令和地址。存储器装置100可以被配置成响应于接收的地址来访问存储器单元阵列中的所选择的区域。当存储器装置100访问选择的区域时,这可以意指存储器装置100可以对由地址选择的区域执行与命令相对应的操作。例如,存储器装置100可以执行写入操作(编程操作)、读取操作、和擦除操作。在编程操作期间,存储器装置100可以将数据编程到响应于该地址而选择的区域中。在读取操作期间,存储器装置100可以从由地址选择的区域中读取数据。在擦除操作期间,存储器装置100可以擦除存储在由地址选择的区域中的数据。
存储器控制器200可以包括第一处理器210、第二处理器220、第一缓冲存储器230和第二缓冲器存储器240。
第一处理器210可以从主机300接收数据和逻辑地址LA,并且将逻辑地址LA转换为指示存储第一存储器区域110的数据的存储器单元的地址的物理地址PA。逻辑地址LA可以是逻辑块地址LBA,并且物理地址PA可以是物理块地址PBA。第一处理器210可以从主机300接收奇数逻辑地址(奇数LA)。当第一存储器区域110中包括的保留块的数量小于或等于参考数量时,第一处理器210可以将逻辑地址LA转换为指示第二存储器区域120中包括的存储器单元的地址的物理地址PA。第一处理器210可以参考存储在第一缓冲存储器230中的第一映射信息(未示出)将逻辑地址LA转换为物理地址PA。
第二处理器220可以从主机300接收数据和逻辑地址LA,并且将逻辑地址LA转换为指示存储第二存储器区域120的数据的存储器单元的地址的物理地址PA。逻辑地址LA可以是逻辑块地址LBA,并且物理地址PA可以是物理块地址PBA。第二处理器220可以从主机300接收奇数逻辑地址。当第二存储器区域中包括的保留块的数量小于参考数量时,第二处理器220可以将逻辑地址LA转换为指示第一存储器区域110中包括的存储器单元的地址的物理地址PA。第二处理器220可以参考存储在第二缓冲存储器240中的第二映射信息(未示出)将逻辑地址LA转换为物理地址PA。
当第一存储器区域110中包括的存储块之中出现坏块时,第一处理器210可以将坏块替换为第一存储器区域110中包括的保留块。更具体地,第一处理器210可以更新存储在第一缓冲存储器230中的第一映射信息(未示出),从而使与该坏块的物理地址相对应的逻辑地址可以对应于该保留块的物理地址。
可以基于状态信息来确定坏块。状态信息可以是编程/擦除(P/E)计数、擦除/写入(E/W)计数、擦除计数、编程计数或读取计数。例如,当正常块的擦除计数大于或等于参考计数时,可以将该正常块确定为坏块。
可以基于操作失败信息来确定坏块。操作失败信息可以指示编程操作、读取操作或擦除操作未被正确执行。可以基于错误位信息以及基于验证操作的通过/失败信息来确定操作失败信息。例如,在对正常块的读取操作期间,当错误位的数量超过参考位数量时,该正常块可以被确定为坏块。
根据实施例,当第一存储器区域110中包括的保留块的数量小于参考数量时,第一处理器210可以向第二处理器220请求保留块。第二处理器220可以确定第二存储器区域120中包括的保留块的数量是否大于参考数量,并且可以将保留块分配给第一处理器210。第一处理器210可以更新存储在第一缓冲存储器230中的第一映射信息(未示出),从而使与坏块的物理地址相对应的逻辑地址可以对应于由第二处理器220分配的保留块的物理地址。
已经基于第一处理器210进行了描述。然而,第二处理器220可以以相同的方式更新第二映射信息(未示出)。
可以通过考虑存储器装置100的寿命来确定参考数量。当第一存储器区域110和第二存储器区域120的一个中包括的保留块的数量小于或等于阈值时,整个存储器装置100可能达到寿命终止。例如,当第一存储器区域110中包括的保留块的数量小于或等于阈值时,第二存储器区域120以及第一存储器区域110均可能达到寿命终止。因此,即使当第二存储器区域120中包括的保留块的数量大于阈值时,第二存储器区域120可能由于第一存储器区域110而变得不可用。
该阈值可以是存储器装置100被切换为只读模式的基准。例如,当第一存储器区域110和第二存储器区域120的一个中包括的保留块的数量小于或等于阈值时,整个存储器装置100可能进入只读模式。因此,即使当第二存储器区域120中包括的保留块的数量大于阈值时,由于第一存储器区域110可能也无法将数据编程到第二存储器区域120中。
参考数量可以被设置成大于阈值,该阈值用作第一存储器区域110或第二存储器区域120达到寿命终止或者被切换为只读模式的基准。参考数量可以根据环境信息动态地被改变。环境信息可以包括关于操作所必需的存储块的数量的信息、关于保留块数量的信息、关于坏块数量的信息、关于替换坏块所耗费的时间的信息、以及关于分配保留块所花费的时间的信息中的至少一个。
根据本公开的实施例,当第一存储器区域110中包括的保留块的数量小于或等于参考数量时,可以用第二存储器区域120中包括的保留块来替换在第一存储器区域110中出现的坏块,从而可以延长整个存储器装置100的寿命。
如上文所描述的,第一存储器区域110中出现的坏块可以由第一处理器210替换。然而,以相同的方式,第二存储器区域120中出现的坏块可以由第二处理器220替换。
主机300可以使用诸如以下的各种通信方法中的至少一种与存储装置50通信:通用串行总线(USB)、串行AT附件(SATA)、串列SCSI(SAS)、高速芯片间(HSIC)、小型计算机系统接口(SCSI)、外围组件互连(PCI)、高速PCI(PCIe)、高速非易失性存储器(NVMe)、通用闪存(UFS)、安全数字(SD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、双列直插式存储器模块(DIMM)、寄存式DIMM(RDIMM)和/或低负载DIMM(LRDIMM)通信方法。
图2是示出根据本公开的实施例的存储器控制器200和存储器装置100的框图。
参照图2,存储器控制器200可以包括主机接口250、第一处理器210、第二处理器220、第一缓冲存储器230、第二缓冲存储器240和存储器接口260。
主机接口250可以根据可以预先设置的规则或协议将从主机300接收的逻辑地址LA传送到第一处理器210和第二处理器220。例如,主机接口250可以将从主机300接收的逻辑地址之中的指示奇数编号的奇数逻辑地址传送到第一处理器210。主机接口250可以将从主机300接收的逻辑地址之中的指示偶数编号的偶数逻辑地址(偶数LA)传送到第二处理器220。
第一处理器210可以参考存储在第一缓冲存储器230中的第一映射信息(未示出)将从主机接口250接收的逻辑地址LA转换为物理地址PA。第二处理器220可以参考存储在第二缓冲存储器240中的第二映射信息(未示出)将从主机接口250接收的逻辑地址LA转换为物理地址PA。第一处理器210和第二处理器220可以将这些物理地址PA传送到存储器接口260。第一处理器210和第二处理器220可以从主机接口250接收命令和数据,并且将命令和数据传送到存储器接口260。
存储器接口260可以将从第一处理器210或第二处理器220接收的物理地址、命令、或数据传送到存储器装置100。更具体地,当接收的物理地址与第一存储器区域110_1相关时,存储器接口260可以将命令、物理地址和数据传送到第一存储器区域110_1。当接收的物理地址与第二存储器区域120_1相关时,存储器接口260可以将命令、物理地址和数据传送到第二存储器区域120_1。
存储器装置100可以包括第一存储器区域110_1和第二存储器区域120_1。第一存储器区域110_1和第二存储器区域120_1可以通过不同的通道联接到存储器接口260。例如,第一存储器区域110_1可以通过通道0(CH 0)联接到存储器接口260。例如,第二存储器区域120_1可以通过通道1(CH 1)联接到存储器接口260。
第一存储器区域110_1和第二存储器区域120_1中的每一个可以包括多个存储器管芯。第一存储器区域110_1中包括的多个存储器管芯(DIE 00至DIE 03)可以通过不同的通路(未示出)联接到CH 0。第二存储器区域120_1中包括的多个存储器管芯(DIE 10至DIE13)可以通过不同的通路(未示出)联接到CH 1。
第一存储器区域110_1和第二存储器区域120_1的每一个中包括的存储器管芯的数量不限于4;每个这样的存储器区域可以包括任意合适数量的存储器管芯。
图3是示出根据另一个实施例的存储器装置的框图。
参照图3,存储器装置100可以包括第一存储器区域110_2和第二存储器区域120_2。第一存储器区域110_2和第二存储器区域120_2中的每一个可以包括多个存储器管芯。
与图2的第一存储器区域110_1和第二存储器区域120_1不同,图3的第一存储器区域110_2和第二存储器区域120_2可以通过相同的通道联接到存储器接口260。例如,存储器接口260可以通过CH 0联接到第一存储器区域110_2和第二存储器区域120_2。
第一存储器区域110_2中包括的多个存储器管芯和第二存储器区域120_2中包括的多个存储器管芯可以通过多个通路WAY 0至WAY 3联接。在所示的布置中,存储器区域110_2包括4个存储器管芯:DIE 00、DIE 01、DIE 02和DIE 03;类似地,存储器区域120_2包括4个存储器管芯:DIE 10、DIE 11、DIE 12和DIE 13。例如,第一存储器区域110_2的DIE 00和第二存储器区域120_2的DIE 10可以通过通路0(WAY 0)共同联接。第一存储器区域110_2的DIE 01和第二存储器区域120_2的DIE 11可以通过通路1(WAY 1)共同联接。第一存储器区域110_2的DIE 02和第二存储器区域120_2的DIE 12可以通过通路2(WAY 2)共同联接。第一存储器区域110_2的DIE 03和第二存储器区域120_2的DIE 13可以通过通路3(WAY 3)共同联接。
第一存储器区域110_2中包括的存储器管芯可以通过CH 0执行交错操作。第二存储器区域120_2中包括的存储器管芯可以通过CH 0执行交错操作。联接到不同通路的存储器管芯可以通过CH 0执行交错操作。换句话说,在图3所示的布置中,任何存储器管芯都可以通过CH 0执行交错操作。
因此,当在共同联接到相同通路的第一存储器区域110_2的存储器管芯和第二存储器区域120_2的存储器管芯之间替换坏块和保留块时,可以保持交错性能。
图4是示出根据本公开的实施例的坏块替换处理的示图。
参照图4,第一存储器区域110和第二存储器区域120中的每一个可以包括正常块和保留块。正常块可以存储从主机300接收的数据,并且可以被包括在系统区域中。正常块可以是不是坏块的存储块。保留块可以用被确定为坏块的正常块替换。尽管为了便于解释,正常块和保留块被认为是不同的,但是保留块可以是至少在被确定为坏块之前的正常块。
第一闪存转换层(FTL)510和第二FTL 520可以是操作用于替换坏块的固件。第一FTL 510和第二FTL 520可以是分别由第一处理器210和第二处理器220驱动的固件。
当第一存储器区域110中包括的保留块的数量大于参考数量时,第一FTL 510可以用第一存储器区域110中包括的保留块替换第一存储器区域110中出现的坏块。更具体地,第一处理器210可以更新存储在第一缓冲存储器230中的第一映射信息(未示出),从而使与坏块的物理地址相对应的逻辑地址可以对应于第一存储器区域110中包括的保留块的物理地址。
当第一存储器区域110中包括的保留块的数量小于或等于参考数量时,第一FTL510可以向第二FTL 520请求保留块。响应于第一处理器210的请求,当第二存储器区域120中包括的保留块的数量大于参考数量时,第二处理器220可以将保留块分配给第一处理器210。
第一FTL 510可以通过使用由第二FTL 520分配的保留块来替换在第一存储器区域110中出现的坏块。更具体地,第一FTL 510可以更新存储在第一缓冲存储器230中的第二映射信息(未示出),从而使与坏块的物理地址相对应的逻辑地址可以对应于第二存储器区域120中包括的保留块的物理地址。
存储器接口260可以从第一处理器210或第二处理器220接收命令、物理地址和数据,并且可以控制第一存储器区域110或第二存储器区域120。
当第一存储器区域110或第二存储器区域120中包括的保留块的数量小于或等于阈值时,整个存储器装置100可以被认为已达到寿命终止。因此,即使当第一或第二存储器区域110、120中的仅一个中包括的保留块的数量大于阈值时,由于一个存储器区域具有少于阈值的保留块,另一个存储器区域可能变得不可用。
参考数量可以被设置成大于用作第一存储器区域110或第二存储器区域120达到寿命终止的基准的阈值。根据本公开的实施例,当第一存储器区域110中包括的保留块的数量小于或等于参考数量时,可以用第二存储器区域120中包括的保留块来替换在第一存储器区域110中出现的坏块,从而可以延长整个存储器装置100的寿命。
图5是示出根据本公开的实施例的存储器控制器200的示图。
参照图5,存储器控制器200可包括第一FTL 510、第二FTL 520、第一缓冲存储器230、第二缓冲存储器240和存储器控制单元530。
第一FTL 510可以是由参照图2至图4所描述的第一处理器210所驱动的固件。第二FTL 520可以是由参照图2至图4所描述的第二处理器220所驱动的固件。存储器控制单元530可以是由上文参照图2至图4描述的存储器接口260、第一处理器210和第二处理器220驱动的固件。第一缓冲存储器230可以包括第一映射信息231、第一保留块信息232和第一坏块信息233。第二缓冲存储器240可以包括第二映射信息241、第二保留块信息242和第二坏块信息243。
第一映射信息231可以包括从主机300接收到的奇数逻辑地址(奇数LA)与存储器装置100中包括的存储区域的物理地址之间的对应信息。第二映射信息241可以包括从主机300接收到的偶数逻辑地址(偶数LA)与存储器装置100中包括的存储区域的物理地址之间的对应信息。
第一保留块信息232可以包括关于可以用在第一存储器区域110中出现的坏块替换的保留块的信息。第一保留块信息232可以包括关于第一存储器区域110中包括的保留块的信息或者关于由第二FTL 520传送的第二存储器区域120中包括的保留块的信息。第二保留块信息242可以包括关于可以被在第二存储器区域120中出现的坏块替换的保留块的信息。第二保留块信息242可以包括关于第二存储器区域120中包括的保留块的信息或者关于由第一FTL 510传送的第一存储器区域110中包括的保留块的信息。
第一坏块信息233可以包括关于在第一存储器区域110中出现的坏块的信息。第二坏块信息243可以包括关于在第二存储器区域120中出现的坏块的信息。
第一FTL 510可以从主机300接收奇数逻辑地址,并且参考第一映射信息231将该奇数逻辑地址转换为物理地址。第二FTL 520可以从主机300接收偶数逻辑地址,并且参考第二映射信息241将该偶数逻辑地址转换为物理地址。然而,本发明不限于此。第一FTL 510和第二FTL 520可以根据可以预先设置的规则或确定来接收不同类型的逻辑地址。
存储器控制单元530可以从第一FTL 510或第二FTL 520接收物理地址,并且生成与其对应的操作控制信息。操作控制信息可以包括命令、数据或物理地址。存储器控制单元530可以将操作控制信息提供给第一存储器区域110或第二存储器区域120,并且可以接收操作失败信息。操作失败信息可以包括指示与操作控制信息相对应的操作,例如编程操作、读取操作或擦除操作,已经失败的信息。当与操作控制信息相对应的操作是编程操作或擦除操作时,存储器控制单元530可以将状态读取命令传送到存储器装置100,并从存储器装置100接收操作失败信息。当与操作控制信息相对应的操作例如是读取操作时,可以在错误校正检查操作完成之后生成操作失败信息。
存储器控制单元530可以根据物理地址是从第一FTL 510还是从第二FTL 520传送,来将操作失败信息传送到第一FTL 510或第二FTL 520。
在存储器控制单元530将操作失败信息传送到第一FTL 510的场景下提供以下描述。下面将描述第一FTL 510响应于操作失败信息的坏块替换。然而,本发明不限于此。存储器控制单元530可以将操作失败信息传送到第二FTL 520,并且第二FTL 520可以通过与第一FTL 510相同的方法来替换坏块。
第一FTL 510可以包括第一地址转换器511、第一坏块管理器512和第一保留块管理器513。
第一地址转换器511可以从主机300接收奇数逻辑地址,并且参考存储在第一缓冲存储器230中的第一映射信息231,将奇数逻辑地址转换为物理地址。第一地址转换器511可以将转换后的物理地址传送到存储器控制单元530。
当第一FTL 510从存储器控制单元530接收到操作失败信息时,第一地址转换器511可以改变与奇数逻辑地址相对应的物理地址。更具体地,第一地址转换器511可以将与操作已失败的存储块相对应的坏块的物理地址改变为保留块的物理地址。第一地址转换器511可以参考第一保留块信息232获得关于待被坏块替换的保留块的信息。
第一坏块管理器512可以将坏块的物理地址包括在第一坏块信息233中。
第一保留块管理器513可以对第一保留块信息232中包括的保留块进行计数。第一保留块管理器513可以参考第一保留块信息232将保留块的数量与参考数量进行比较。当第一保留块信息232中包括的保留块的数量大于参考数量时,第一保留块管理器513可以保持第一保留块信息232的当前状态。
当第一保留块信息232中包括的保留块的数量小于或等于参考数量时,第一保留块管理器513可以将新的保留块添加到第一保留块信息232。更具体地,保留块请求信息可以被传送到第二保留块管理器523。保留块请求信息可以用于请求第二保留块信息242中包括的保留块的物理地址。
第二保留块管理器523可以从第一保留块管理器513接收保留块请求信息,并且将保留块分配信息传送到第一保留块管理器513。第二保留块管理器523可以将第二保留块信息242中包括的保留块的数量与参考数量进行比较,并且可以基于比较结果来生成保留块分配信息。保留块分配信息可以是关于第二保留块信息242中包括的保留块的。保留块分配信息可以包括关于保留块的分配是否可用的信息。
当第二保留块信息242中包括的保留块的数量大于参考数量时,第二保留块管理器523可以将关于第二保留块信息242中包括的保留块的信息传送到第一保留块管理器513。第一保留块管理器513可以将关于保留块的传送信息添加到第一保留块信息232。第一地址转换器511可以改变添加到第一保留块信息232的保留块的物理地址和坏块的物理地址。换句话说,第一地址转换器511可以更新第一映射信息231,从而使与坏块的物理地址相对应的逻辑地址可以对应于通过第一保留块管理器513传送的保留块的物理地址。
当第二保留块信息242中包括的保留块的数量小于或等于参考数量时,第二保留块管理器523可以将指示不存在可分配的保留块的信息传送到第一保留块管理器513。第一地址转换器511可以改变先前包括在第一保留块信息232中的保留块的物理地址和坏块的物理地址。换句话说,第一地址转换器511可以更新第一映射信息231,从而使与坏块的物理地址相对应的逻辑地址可以对应于第一保留块信息232中先前包括的保留块的物理地址。
存储器控制单元530可以将存储在坏块中的数据复制到已替换坏块的保留块中。例如,当与操作控制信息相对应的操作是读取操作时,存储器控制单元530可以将除包括待读取的数据的页面之外的页面中存储的数据复制到保留块中。
存储器控制单元530可以将待存储在坏块中的数据复制到替换坏块的保留块中。例如,当与操作控制信息相对应的操作是编程操作时,存储器控制单元530可以用数据对保留块进行编程。
类似于第一FTL 510,第二FTL 520可以包括第二地址转换器521、第二坏块管理器522和第二保留块管理器523。第二地址转换器521、第二坏块管理器522和第二保留块管理器523可以分别对应于第一地址转换器511、第一坏块管理器512和第一保留块管理器513。第二缓冲存储器240可以包括第二映射信息241、第二保留块信息242和第二坏块信息243。第二映射信息241、第二保留块信息242和第二坏块信息243可以分别对应于第一映射信息231、第一保留块信息232和第一坏块信息233。
可以以设定的超级存储块为单位来管理第一存储器区域110和第二存储器区域120中包括的存储块。超级存储块可以是一组存储块。超级存储块中包括的存储块可以是正常块。超级存储块中包括的多个存储块可以被包括在不同的存储器管芯中。例如,包括在第一到第三存储器管芯中的存储块可以形成超级存储块。
当超级存储块中包括的多个存储块中出现坏块时,第一保留块管理器513可以向第二保留块管理器523请求保留块以替换坏块。可选地,第一保留块管理器513可以向第二保留块管理器523请求保留块以替换超级存储块中包括的正常块以及坏块。
第二保留块管理器523可以参考第二保留块信息242,将构成超级存储块的存储块分配给第一保留块管理器513。
第一保留块管理器513可以更新第一映射信息231,从而可以将分配的超级存储块替换为包括坏块的超级存储块。
包括坏块的超级存储块中包括的正常块可以被添加到第一保留块信息232,并且可以当随后出现坏块时提供替换坏块的保留块。根据本公开,当第一保留块信息232中包括的保留块的数量小于或等于参考数量时,可以用第二保留块信息242中包括的保留块来替换在第一存储器区域110中出现的坏块,从而可以增加整个存储器装置100的寿命。
图6是示出保留块请求信息和保留块分配信息的示图。
参照图6,第一保留块管理器513可以生成保留块请求信息610。保留块请求信息610可以包括坏块位置信息和请求数量信息。
坏块位置信息可以包括对其操作已失败的存储块的物理地址信息。坏块位置信息可以包括关于包括坏块的存储器装置、存储器管芯或平面的信息。
请求数量信息可以包括关于替换坏块所必需的保留块的数量的信息。因此,请求数量信息可以与坏块的数量相同。可以基于预期是坏块的存储块的数量来生成请求数量信息。例如,可以基于具有大于设定值的擦除计数、读取计数或编程计数的存储块的数量来生成请求数量信息。因此,请求数量信息可以大于当前坏块的数量。
第二保留块管理器523可以生成保留块分配信息620。保留块分配信息620可以包括分配允许信息和保留块地址信息。
分配允许信息可以包括关于保留块的分配是否可用的信息。当第二存储器区域120或第二保留块信息242中包括的保留块的数量大于参考数量时,分配允许信息可以包括指示可以分配保留块的分配可能信息。例如,分配可能信息可以通过“1”位指示。当存储器装置或保留块信息中包括的保留块数量小于或等于参考数量时,分配允许信息可以包括指示不能分配保留块的分配不可能信息。例如,分配不可能信息可以通过“0”位指示。
保留块地址信息可以包括关于第二存储器区域120或第二保留块信息242中包括的至少一个保留块的物理地址的信息。保留块地址信息可以包括关于包括保留块的存储器装置、存储器管芯或平面的信息。
第二保留块管理器523可以基于从第一保留块管理器513接收的坏块位置信息,管理待以分配给第一保留块管理器513的保留块替换的坏块的物理地址。在原本用于第二存储器区域120的保留块当前被分配给第一存储器区域110之后,保留块的信息可以在第一保留块信息232和第二保留块信息242中的每一个内更新。
此外,第二保留块管理器523可以参考坏块位置信息,以便提高交错性能。更具体地,参考坏块的位置,第二保留块管理器523可以向第一保留块管理器513分配即使在用坏块替换之后也能够保持交错性能的保留块。
图7是示出坏块替换处理的示图。
参照图7,第一映射信息231可以包括关于逻辑地址(LA)1和物理地址(PA)1之间的对应关系、LA 3和PA 21之间的对应关系、以及LA 5和PA 35之间的对应关系的信息。PA 1、PA 21和PA 35可以与第一存储器区域110中包括的存储块相对应。
第一坏块信息233可以包括关于被确定为坏块的存储块的信息。根据实施例,第一坏块信息233可以包括坏块的地址,即,PA 132、PA 161和PA 13。坏块可以是第一存储器区域110中包括的存储块。
第一保留块信息232可以包括关于可能被坏块替换的存储块的信息。根据实施例,第一保留块信息232可以包括保留块的地址,即,PA 100、PA 101和PA 102。保留块可以是第一存储器区域110中包括的存储块。
根据实施例,可以将与PA 1相对应的存储器坏块确定为坏块。第一坏块管理器512可以将被确定为坏块的存储块添加到第一坏块信息233。第一地址转换器511可以用第一保留块信息232中包括的保留块来替换坏块。例如,第一地址转换器511可以更新第一映射信息231,从而使与坏块的PA 1相对应的LA 1可以对应于与第一保留块信息232的索引1相对应的保留块的PA 100。
在坏块被替换之后,第一映射信息231可以包括关于LA 1和物理地址100PA 100之间的对应关系、LA 3和PA 21之间的对应关系、以及LA 5和PA 35之间的对应关系的信息。
第一坏块信息233可以包括关于被确定为坏块的存储块的信息。根据实施例,第一坏块信息233可以包括坏块的地址,即,PA 132、PA 161、PA 13和PA 1。
第一保留块信息232可以包括关于除了替换坏块的保留块之外的保留块的信息。例如,第一保留块信息232可以包括PA 101和PA 102,但是不包括替换坏块的保留块的PA100。
由于与PA 100相对应的存储块已经替换坏块,因此第一保留块信息232中包括的保留块的数量可以从K减少到K-1。为了便于说明,描述了保留块减少1(一个)。然而,第一保留块信息232中包括的保留块的数量可以根据已经出现的坏块的数量而变化。与PA 62和PA99相对应的保留块可以被包括在第二存储器区域120中。
图8是示出保留块分配处理的示图。
参照图8,第一保留块信息232中包括的保留块的数量(K-1)可以小于或等于参考数量。当第一存储器区域110中出现坏块时,第一保留块管理器513可以向第二保留块管理器523请求使用保留块。第二保留块管理器523可以对第二保留块信息242中包括的保留块进行计数。当第二保留块信息242中包括的保留块的数量(M)大于参考数量时,第二保留块管理器523可以将保留块分配给第一保留块管理器513。例如,第二保留块管理器523可以将与PA 62和PA 99相对应的保留块分配给第一保留块管理器513。尽管图8描述了两个保留块被分配,但是分配的保留块的数量可以响应于第一保留块管理器513的请求而变化。第一地址转换器511可以用分配给第一保留块信息232的保留块来替换在第一存储器区域110中出现的坏块。
图9是示出根据本公开的实施例的保留块分配方法的示图。
参照图9,当第一保留块信息232中包括的保留块的数量小于或等于参考数量时,第一保留块管理器513可以从第二保留块管理器523分配到保留块。第二保留块管理器523可以将第二保留块信息242中包括的保留块分配给第一保留块管理器513。第一保留块信息232中包括的保留块可以被包括在第一存储器区域110中。第二保留块信息242中包括的保留块可以被包括在第二存储器区域120中。
第一保留块管理器513可以分配有第二保留块信息242中包括的保留块,并且可以将保留块添加到第一保留块信息232。当保留块被分配到第一保留块信息时,第一保留块信息232中包括的保留块的数量可以大于参考数量。
根据实施例,第一FTL 510和第二FTL 520可以共享第一保留块信息232和第二保留块信息242中包括的保留块,从而可以延长整个存储器装置100的寿命。
图10是示出考虑交错性能的保留块分配方法的示图。
根据实施例,当第一存储器区域110中包括的存储器管芯和第二存储器区域120中包括的存储器管芯通过公共总线联接时,可以使用保留块分配方法。例如,根据实施例,当多个存储器管芯联接到通道和通路时,可以使用保留块分配方法。
参照图10,第一保留块信息232和第二保留块信息242可以包括关于分配到多个存储器管芯DIE 00至DIE 13中的每一个的保留块的数量的信息。存储器管芯00(DIE 00)、存储器管芯01(DIE 01)、存储器管芯02(DIE 02)和存储器管芯03(DIE 03)可以分别通过相同的总线,即相同的通路,联接到存储器管芯10(DIE 10)、存储器管芯11(DIE 11)、存储器管芯12(DIE 12)和存储器管芯13(DIE 13)。
第一保留块管理器513可以将第一保留块信息232中包括的保留块的总数量与参考数量进行比较。当保留块的总数量小于或等于参考数量时,第一保留块管理器513可以向第二保留块管理器523请求使用保留块。
响应于使用保留块的请求,第二保留块管理器523可以将第二保留块信息242中包括的保留块的总数量与参考数量进行比较。当保留块的总数量大于参考数量时,第二保留块管理器523可以向第一保留块管理器513分配DIE 10中包括的保留块,DIE 10与出现坏块的DIE 00共同联接到一条总线。
由于DIE 00和DIE 10通过相同总线联接,因此即使将DIE 00中包括的保留块替换为DIE 10中包括的保留块,也可以保持交错性能。
图11是示出考虑每个存储器管芯中包括的保留块数量的保留块分配方法的示图。
参照图11,响应于对保留块的使用的请求,第二保留块管理器523可以将第二保留块信息242中包括的保留块的总数量与参考数量进行比较。当保留块的总数量大于参考数量时,第二保留块管理器523可以对存储器管芯的每一个中包括的保留块进行计数,并且将包括最多保留块的存储器管芯中包括的保留块分配到第一保留块管理器513。
用该方式,可以防止仅将第二保留块信息中包括的一个存储器管芯中包括的保留块分配到第一保留块管理器513。
图12是示出根据本公开的实施例的操作存储器控制器的方法的流程图。
参照图12,在步骤S1201,第一FTL 510可以检测在第一存储器区域110中出现的坏块。更具体地,第一FTL 510可以从存储器控制单元530接收操作失败信息,并获得与操作已失败的存储块相对应的坏块的物理地址。
在步骤S1203,第一FTL 510可以基于第一存储器区域110和第二存储器区域120的每一个中包括的保留块的数量,用第一存储器区域110中或第二存储器区域120中包括的保留块来替换坏块。
图13是示出根据本公开的实施例的操作存储器控制器的方法的流程图。
参照图13,在步骤S1301,第一FTL 510可以检测在第一存储器区域110中出现的坏块。更具体地,第一FTL 510可以从存储器控制单元530接收操作失败信息,并获得与操作已失败的存储块相对应的坏块的物理地址。
在步骤S1303,第一FTL 510可以将第一存储器区域中包括的保留块的数量与参考数量进行比较。当保留块的数量小于或等于参考数量时,存储器控制器200可以继续进行步骤S1307,或者当保留块的数量大于参考数量时,存储器控制器200可以继续进行步骤S1305。
在步骤S1305,第一FTL 510可以用第一存储器区域110中包括的保留块来替换坏块。第一FTL 510可以将坏块添加到第一坏块信息233,并且从第一保留块信息232中移除关于已经替换坏块的保留块的信息。第一FTL 510可以更新第一映射信息231,从而使与坏块的物理地址相对应的逻辑地址可以对应于保留块的物理地址。
在步骤S1307,第一FTL 510可以向第二FTL 520提供用于请求使用第二存储器区域120中包括的保留块的保留块请求信息。保留块请求信息可以与参照图6描述的相同。
在步骤S1309,第二FTL 520可以将第二存储器区域120中包括的保留块的数量与参考数量进行比较。当保留块的数量大于参考数量时,存储器控制器200可以继续进行步骤S1313,或者当保留块的数量小于或等于参考数量时,存储器控制器200可以继续进行步骤S1311。
在步骤S1311,第二FTL 520可以将分配不可能信息传送到第一FTL 510。如上文参照图6所描述的,分配不可能信息可以被包括在保留块分配信息中。例如,分配不可能信息可以对应于当分配允许信息具有“0”位时的信息。
在步骤S1313,第二FTL 520可以将关于保留块的信息传送到第一FTL 510。第二FTL 520可以将关于存储器管芯中包括的保留块的信息传送到第一FTL 510,该存储器管芯通过相同的通道联接到包括坏块的存储器管芯。
图14是示出存储器管芯的示图。
参照图14,存储器管芯可以包括存储器单元阵列1410、外围电路1420和控制逻辑1430。
存储器单元阵列1410可以包括多个存储块BLK1至BLKz。多个存储块BLK1至BLKz可以通过行线RL联接到行解码器1421。存储块BLK1至BLKz可以通过位线BL1至BLn联接到页面缓冲器组1423。多个存储块BLK1至BLKz中的每一个可以包括多个存储器单元。根据实施例,多个存储器单元可以是非易失性存储器单元。联接到同一字线的存储器单元可以被定义为一个页面。因此,每个存储块可以包括多个页面。
行线RL可以包括至少一条源极选择线、多条字线和至少一条漏极选择线。
存储器单元阵列1410中包括的存储器单元中的每一个可以包括存储一个数据位的单层单元(SLC)、存储两个数据位的多层单元(MLC)、存储三个数据位的三层单元(TLC),或存储四个数据位的四层单元(QLC)。
外围电路1420可以被配置成响应于控制逻辑1430的控制而对存储器单元阵列1410的所选择区域执行编程操作、读取操作或擦除操作。外围电路1420可以驱动存储器单元阵列1410。例如,外围电路1420可以响应于控制逻辑1430的控制而向行线RL和位线BL1至BLn施加各种操作电压或使所施加的电压放电。
外围电路1420可以包括行解码器1421、电压生成器1422、页面缓冲器组1423、列解码器1424和输入/输出电路1425。
行解码器1421可以通过行线RL联接到存储器单元阵列1410。行线RL可以包括至少一条源极选择线、多条字线和至少一条漏极选择线。根据实施例,字线可以包括普通字线和虚设字线。根据实施例,行线RL可以进一步包括管道选择线。
行解码器1421可以被配置成响应于控制逻辑1430的控制而操作。行解码器1421可以从控制逻辑1430接收行地址RADD。
行解码器1421可以被配置成对行地址RADD解码。行解码器1421可以根据经解码的块地址在存储块BLK1至BLKz之中选择至少一个存储块。行解码器1421可以选择所选择的存储块的至少一条字线WL,以便根据经解码的地址将由电压生成器1422生成的电压施加到至少一条字线WL。
例如,在编程操作期间,行解码器1421可以将编程电压施加到所选择的字线,并且将具有比编程电压低的电压电平的编程通过电压施加到未选择的字线。在编程验证操作期间,行解码器1421可以将验证电压施加到所选择的字线,并且将大于验证电压的验证通过电压施加到未选择的字线。在读取操作期间,行解码器1421可以将读取电压施加到所选择的字线,并且将大于读取电压的读取通过电压施加到未选择的字线。
根据实施例,可以以存储块为单位执行存储器装置100的擦除操作。在擦除操作期间,行解码器1421可以根据经解码的地址选择存储块中的一个。在擦除操作期间,行解码器1421可以将接地电压施加到联接到所选择的存储块的字线。
电压生成器1422可以由控制逻辑1430控制。电压生成器1422可以被配置成通过使用供应给存储器装置的外部电源电压来生成多个电压。更特别地,电压生成器1422可以响应于操作信号OPSIG而生成用于编程操作、读取操作和擦除操作的各种操作电压Vop。例如,电压生成器1422可以响应于控制逻辑1430的控制而生成编程电压、验证电压、通过电压、读取电压、和擦除电压。
根据实施例,电压生成器1422可以通过调节外部电源电压来生成内部电源电压。由电压生成器1422生成的内部电源电压可以用作存储器装置100的操作电压。
根据实施例,电压生成器1422可以通过使用外部电源电压或内部电源电压来生成多个电压。
例如,电压生成器1422可以包括接收内部电源电压的多个泵电容器,并且响应于控制逻辑1430的控制而通过选择性地激活多个泵电容器来生成多个电压。
可以通过行解码器1421将多个生成的电压供应给存储器单元阵列1410。
页面缓冲器组1423可以包括可以分别通过第一位线BL1至第n位线BLn联接到存储器单元阵列1410的第一页面缓冲器PB1至第n页面缓冲器PBn。第一至第n页面缓冲器PB1至PBn可以响应于控制逻辑1430的控制而操作。更具体地,第一至第n页面缓冲器PB1至PBn可以响应于页面缓冲器控制信号PBSIGNALS而操作。例如,第一至第n页面缓冲器PB1至PBn可以临时地存储通过位线BL1至BLn接收的数据,或者可以在读取操作或验证操作期间感测位线BL1至BLn中的电压或电流。
更具体地,在编程操作期间,当在编程操作期间将编程脉冲施加到所选择的字线时,第一至第n页面缓冲器PB1至PBn可以通过第一至第n位线BL1至BLn将通过输入/输出电路1425接收的数据DATA传送到所选择的存储器单元。可以根据传送的数据DATA来编程所选择的页面的存储器单元。联接到施加有编程允许电压(例如,接地电压)的位线的存储器单元可以具有增加的阈值电压。联接到施加有编程禁止电压(例如,电源电压)的位线的存储器单元的阈值电压可以被保持。在编程验证操作期间,第一至第n页面缓冲器PB1至PBn可以分别通过第一至第n位线BL1至BLn从所选择的存储器单元读取页面数据。
在读取操作期间,第一至第n页面缓冲器PB1至PBn可以通过第一至第n位线BL1至BLn从所选择的页面的存储器单元中读取数据DATA,并且可以响应于列解码器1424的控制而将读取的数据DATA输出到数据输入/输出电路1425。
在擦除操作期间,第一至第n页面缓冲器PB1至PBn可以使第一至第n位线BL1至BLn浮置。
列解码器1424可以响应于列地址CADD在输入/输出电路1425和页面缓冲器组1423之间传送数据。例如,列解码器1424可以通过数据线DL与第一至第n页面缓冲器PB1至PBn交换数据,或者可以通过列线CL与输入/输出电路1425交换数据。
输入/输出电路1425可以将命令CMD和地址ADDR从上文参照图1描述的存储器控制器200传送到控制逻辑1430,或者可以与列解码器1424交换数据DATA。
感测电路1426可以在读取操作或验证操作期间,响应于可允许位信号VRYBIT生成参考电流,并且将从页面缓冲器组1423接收的感测电压VPB与由参考电流生成的参考电压进行比较,以输出通过信号PASS或失败信号FAIL。
控制逻辑1430可以响应于命令CMD和地址ADDR而通过输出操作信号OPSIG、行地址RADD、页面缓冲器控制信号PBSIGNALS和可允许位信号VRYBIT来控制外围电路1420。此外,控制逻辑1430可以响应于通过信号PASS或失败信号FAIL来确定验证操作是已通过还是已失败。
图15是示出图14的存储块BLKi的示图。
参照图15,存储块BLKi可以被配置成使得彼此平行布置的多条字线可以联接在第一选择线和第二选择线之间。第一选择线可以是源极选择线SSL,第二选择线可以是漏极选择线DSL。具体地,存储块BLKi可以包括联接在位线BL1至BLn与源极线SL之间的多个串ST。位线BL1至BLn可以分别联接到串ST,并且源极线SL可以共同联接到串ST。由于串ST可以具有相同的配置,因此将通过示例的方式详细地描述联接到第一位线BL1的串ST。
串ST可以包括串联联接在源极线SL和第一位线BL1之间的源极选择晶体管SST、多个存储器单元MC1至MC16、以及漏极选择晶体管DST。每个串ST可以包括至少一个源极选择晶体管SST、至少一个漏极选择晶体管DST、以及比图15所示的存储器单元MC1至MC16更多的存储器单元。
源极选择晶体管SST的源极可以联接到源极线SL,并且漏极选择晶体管DST的漏极可以联接到第一位线BL1。存储器单元MC1至MC16可以串联联接在源极选择晶体管SST和漏极选择晶体管DST之间。不同串ST中包括的源极选择晶体管SST的栅极可以联接到源极选择线SSL,漏极选择晶体管DST的栅极可以联接到漏极选择线DSL,并且存储器单元MC1至MC16的栅极可以联接到多条字线WL1至WL16。在不同的串ST中包括的存储器单元之中的联接到相同字线的一组存储器单元可以被称为物理页面PG。因此,存储块BLKi可以包括与字线WL1至WL16的数量一样多的物理页面PG。
单个存储器单元可以存储一位数据。该存储器单元通常可以被称为单层单元(SLC)。一个物理页面PG可以存储一个逻辑页面(LPG)数据。一个LPG数据可以包括与一个物理页面PG中包括的单元的数量一样多的数据位。另外,单个存储器单元可以存储两位或更多位数据。一个物理页面PG可以存储与两个或更多个逻辑页面LPG相对应的数据。
图16是示出应用根据实施例的存储装置的存储卡系统2000的框图。
参照图16,存储卡系统2000可以包括存储器控制器2100、存储器装置2200和连接器2300。
存储器控制器2100可以联接到存储器装置2200。存储器控制器2100可以访问存储器装置2200。例如,存储器控制器2100可以被配置成控制存储器装置2200的读取操作、写入操作、擦除操作和后台操作。存储器控制器2100可以被配置成提供存储器装置2200和主机之间的接口。存储器控制器2100可以被配置成驱动用于控制存储器装置2200的固件。存储器装置2200可以具有与上文参照图1描述的存储器装置100相同的配置。
在实施例中,存储器控制器2100可以包括诸如随机存取存储器(RAM)、处理单元、主机接口、存储器接口和ECC块的组件。
存储器控制器2100可以通过连接器2300与外部装置通信。存储器控制器2100可以基于特定的通信协议与外部装置(例如,主机)通信。例如,存储器控制器2100可以通过诸如以下的各种通信协议中的至少一种与外部装置通信:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围组件互连(PCI)、高速PCI(PCI-E)、高级技术附件(ATA)、串行ATA(SATA)、并行ATA(PATA)、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)、电子集成驱动器(IDE)、火线、通用闪存(UFS)、WiFi、蓝牙、和/或高速非易失性存储器(NVMe)协议。例如,连接器2300可以由上述各种通信协议中的至少一种来定义。
在实施例中,存储器装置2200可以被实施为诸如以下的各种非易失性存储器装置中的任意一种:电可擦除可编程ROM(EEPROM)、NAND闪速存储器、NOR闪速存储器、相变RAM(PRAM)、电阻RAM(ReRAM)、铁电RAM(FRAM)、和/或自旋力矩磁性RAM(STT-MRAM)。
存储器控制器2100和存储器装置2200可以被集成到单个半导体装置中以形成诸如个人计算机存储卡国际协会(PCMCIA)、紧凑型闪存卡(CF)、智能媒体卡(SM或SMC)、记忆棒、多媒体卡(MMC、RS-MMC或微型MMC)、SD卡(SD、迷你SD、微型SD或SDHC)、和/或通用闪存(UFS)的存储卡。
图17是示出应用根据本公开的实施例的存储装置的固态驱动器(SSD)系统3000的框图。
参照图17,SSD系统3000可以包括主机3100和SSD 3200。SSD 3200可以通过信号连接器3001与主机3100交换信号SIG,并且可以通过电源连接器3002接收电力PWR。SSD 3200可以包括SSD控制器3210、多个闪速存储器3221至322n、辅助电源3230和缓冲存储器3240。
根据实施例,SSD控制器3210可以执行如上文参照图1所描述的存储器控制器200的功能。
SSD控制器3210可以响应于从主机3100接收的信号SIG来控制多个闪速存储器3221至322n。根据实施例,信号SIG可以是基于主机3100和SSD 3200的接口的信号。例如,信号SIG可以由诸如以下的各种接口中的至少一种来定义:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围组件互连(PCI)、高速PCI(PCI-E)、高级技术附件(ATA)、串行ATA(SATA)、并行ATA(PATA)、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)、电子集成驱动器(IDE)、火线、通用闪存(UFS)、WiFi、蓝牙、和/或高速非易失性存储器(NVMe)接口。
辅助电源3230可以通过电源连接器3002联接到主机3100。辅助电源3230可以从主机3100供应电力PWR,并且可以被充电。当从主机3100不平稳地供应电力时,辅助电源3230可以供应SSD 3200的电力。例如,辅助电源3230可以位于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的非易失性存储器。
图18是示出应用根据实施例的存储装置的用户系统4000的框图。
参照图18,用户系统4000可以包括应用处理器4100、存储器模块4200、网络模块4300、存储模块4400、和用户接口4500。
应用处理器4100可以运行用户系统4000中包括的组件、操作系统(OS)或用户程序。例如,应用处理器4100可以包括用于控制用户系统4000中包括的组件的控制器、接口、图形引擎等。应用处理器4100可以被设置为片上系统(SoC)。
存储器模块4200可以用作用户系统4000的主存储器、工作存储器、缓冲存储器或高速缓存存储器。存储器模块4200可以包括诸如DRAM、SDRAM、DDR SDRAM、DDR2 SDRAM、DDR3SDRAM、LPDDR SDARM、LPDDR2 SDRAM和LPDDR3 SDRAM的易失性RAM或者诸如PRAM、ReRAM、MRAM和FRAM的非易失性RAM。例如,应用处理器4100和存储器模块4200可以基于堆叠封装(POP)来进行封装,并且然后可以被设置为单个半导体封装。
网络模块4300可以与外部装置通信。例如,网络模块4300可以支持诸如码分多址(CDMA)、全球移动通信系统(GSM)、宽带CDMA(WCDMA)、CDMA-2000、时分多址(TDMA)、长期演进(LTE)、Wimax、WLAN、UWB、蓝牙或WiFi通信的无线通信。例如,网络模块4300可以被包括在应用处理器4100中。
存储模块4400可以存储数据。例如,存储模块4400可以存储从应用处理器4100接收的数据。可选地,存储模块4400可以将存储在存储模块4400中的数据传输到应用处理器4100。根据实施例,存储模块4400可以被实施为诸如相变RAM(PRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)、NAND闪速存储器、NOR闪速存储器或具有三维(3D)结构的NAND闪速存储器的非易失性半导体存储器装置。例如,存储模块4400可以被设置为用户系统4000的诸如存储卡或外部驱动器的可移动存储介质(即,可移动驱动器)。
根据实施例,存储模块4400可以包括多个非易失性存储器装置,每个非易失性存储器装置可以以与上文参照图1描述的存储器装置相同的方式操作。存储模块4400可以以与上文参照图1描述的存储装置50相同的方式操作。
用户接口4500可以包括向应用处理器4100输入数据或指令或者向外部装置输出数据的接口。根据实施例,用户接口4500可以包括诸如键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、摄像头、麦克风、陀螺仪传感器、振动传感器、和压电装置的用户输入接口。用户接口4500可以进一步包括诸如液晶显示器(LCD)、有机发光二极管(OLED)显示装置、有源矩阵OLED(AMOLED)显示装置、LED、扬声器和监视器的用户输出接口。
根据本公开的实施例,存储器控制器及其操作方法可以提供改进的保留块管理性能。
在上述实施例中,可以选择性地执行或跳过一个或多个步骤。另外,步骤可能并不总是按规律的顺序执行。此外,本文公开的实施例旨在帮助本领域的普通技术人员更清楚地理解本公开,而不是旨在限制本发明的范围。换句话说,本公开所属领域的普通技术人员将能够容易地理解的是,基于本公开的技术范围,各种修改是可能的。对于本领域技术人员将显而易见的是,在不脱离本发明的精神或范围的情况下,可以对本公开的上述实施例进行各种修改。因此,本发明旨在涵盖所有这些修改,只要它们落在所附权利要求书及其等同方案的范围内即可。

Claims (20)

1.一种存储器控制器,控制包括第一存储块的第一存储器区域和包括第二存储块的第二存储器区域,所述存储器控制器包括:
第一闪存转换层即FTL,基于关于所述第一存储块的信息,生成与从主机接收的第一类型逻辑地址相对应的物理地址;
第二FTL,基于关于所述第二存储块的信息,生成与从所述主机接收的第二类型逻辑地址相对应的物理地址;以及
存储器控制单元,控制所述第一存储器区域或所述第二存储器区域以对与所述第一类型逻辑地址相对应的物理地址或与所述第二类型逻辑地址相对应的物理地址执行操作,
其中所述第一FTL向所述第二FTL提供用于请求使用所述第二存储块的块请求信息,并基于由所述第二FTL提供的块分配信息,生成与从所述主机接收的所述第一类型逻辑地址相对应的物理地址。
2.根据权利要求1所述的存储器控制器,其中所述第一FTL包括:
第一保留块管理器,基于关于所述第一存储器区域中包括的坏块的信息,生成所述块请求信息;以及
地址转换器,基于所述块分配信息,将指示所述第二存储块之中的选择的存储块的物理地址确定为与所述第一类型逻辑地址相对应的物理地址。
3.根据权利要求2所述的存储器控制器,其中所述存储器控制单元控制所述第一存储器区域和所述第二存储器区域以将存储在所述坏块中的数据复制到所述选择的存储块中。
4.根据权利要求1所述的存储器控制器,其中所述块请求信息包括关于所述第一存储器区域中包括的坏块的物理地址的坏块位置信息和关于所述第一FTL向所述第二FTL请求使用的第二存储块的数量的信息。
5.根据权利要求4所述的存储器控制器,
其中所述第一存储器区域包括多个存储器管芯,以及
其中所述坏块位置信息包括关于多个管芯之中的包括所述坏块的管芯的信息。
6.根据权利要求4所述的存储器控制器,其中关于第二存储块的数量的信息指示大于或等于坏块的数量的存储块的数量。
7.根据权利要求1所述的存储器控制器,其中所述块分配信息包括关于是否允许使用所述第二存储块的分配允许信息以及关于所述第二存储块之中的允许所述第一FTL使用的第二存储块的地址的信息。
8.根据权利要求7所述的存储器控制器,其中基于第二存储块的数量确定所述分配允许信息。
9.根据权利要求7所述的存储器控制器,其中当第二存储块的数量大于参考数量时,所述分配允许信息包括指示允许使用所述第二存储块的分配可能信息。
10.根据权利要求7所述的存储器控制器,其中当第二存储块的数量小于或等于参考数量时,所述分配允许信息包括指示禁止使用所述第二存储块的分配不可能信息。
11.根据权利要求10所述的存储器控制器,其中所述第一FTL响应于包括所述分配不可能信息的所述分配允许信息,将所述第一存储块的物理地址确定为与所述第一类型逻辑地址相对应的物理地址。
12.根据权利要求7所述的存储器控制器,
其中所述第一存储器区域和所述第二存储器区域中的每一个包括多个存储器管芯,
其中所述第二存储块的地址信息包括选择的存储器管芯中包括的存储块的物理地址,所述选择的存储器管芯与所述第一存储器区域中包括的多个存储器管芯之中、除包括坏块的存储器管芯之外的存储器管芯按照交错方案可操作,并且
其中所述选择的存储器管芯被包括在所述第二存储器区域中。
13.根据权利要求7所述的存储器控制器,
其中所述第一存储器区域和所述第二存储器区域中的每一个包括多个存储器管芯,并且
其中所述第二存储块的地址信息包括:所述第二存储器区域中包括的多个存储器管芯之中、包括相对大的数量的存储块的存储器管芯中包括的存储块的物理地址。
14.根据权利要求1所述的存储器控制器,其中所述第一类型逻辑地址是奇数逻辑地址,并且所述第二类型逻辑地址是偶数逻辑地址。
15.一种存储器控制器,包括:
第一FTL,处理从主机接收的对第一类型逻辑地址的请求;
第二FTL,处理从主机接收的对第二类型逻辑地址的请求;
第一类型保留块信息存储装置,存储关于第一类型保留块的信息,所述第一类型保留块待替换与所述第一类型逻辑地址相对应的坏块;以及
第二类型保留块信息存储装置,存储关于第二类型保留块的信息,所述第二类型保留块待替换与所述第二类型逻辑地址相对应的坏块,
其中所述第一FTL基于第一类型保留块的数量,向所述第二FTL提供用于请求使用所述第二类型保留块的保留块请求信息,并将从所述第二FTL接收的关于目标保留块的信息存储在所述第一类型保留块信息存储装置中,并且
其中所述第二FTL从所述第二类型保留块信息存储装置中移除所述关于目标保留块的信息。
16.根据权利要求15所述的存储器控制器,其中当所述第一类型保留块的数量超过参考数量时,所述第一FTL用所述第一类型保留块之中的一个保留块替换坏块。
17.根据权利要求15所述的存储器控制器,其中当所述第一类型的保留块的数量小于或等于参考数量时,所述第一FTL向所述第二FTL提供所述保留块请求信息。
18.根据权利要求15所述的存储器控制器,其中所述关于目标保留块的信息包括关于所述第二类型保留块之中的选择的保留块的物理地址的信息。
19.根据权利要求18所述的存储器控制器,其中所述第一FTL用所述选择的保留块替换坏块。
20.一种操作存储器控制器的方法,所述存储器控制器包括管理第一存储器装置中包括的第一保留块的第一FTL和管理第二存储器装置中包括的第二保留块的第二FTL,所述方法包括:
通过所述第一FTL,检测在所述第一存储器装置中出现的坏块;
通过所述第一FTL,基于第一保留块的数量,向所述第二FTL提供用于向所述第二FTL请求使用所述第二存储器装置中包括的所述第二保留块的保留块请求信息;
通过所述第二FTL,基于第二保留块的数量,向所述第一FTL提供关于所述第二保留块之中的目标保留块的保留块分配信息;
通过所述第一FTL,从所述第二FTL接收关于所述目标保留块的信息;并且
通过所述第一FTL,通过将与所述坏块相对应的逻辑地址映射到所述目标保留块的物理地址,将所述坏块替换为所述目标保留块。
CN202010684568.5A 2019-11-21 2020-07-16 存储器控制器及其操作方法 Withdrawn CN112825062A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190150745A KR20210062476A (ko) 2019-11-21 2019-11-21 메모리 컨트롤러 및 그 동작 방법
KR10-2019-0150745 2019-11-21

Publications (1)

Publication Number Publication Date
CN112825062A true CN112825062A (zh) 2021-05-21

Family

ID=75907540

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010684568.5A Withdrawn CN112825062A (zh) 2019-11-21 2020-07-16 存储器控制器及其操作方法

Country Status (3)

Country Link
US (1) US11360707B2 (zh)
KR (1) KR20210062476A (zh)
CN (1) CN112825062A (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11150842B1 (en) * 2020-04-20 2021-10-19 Western Digital Technologies, Inc. Dynamic memory controller and method for use therewith
US11281399B2 (en) 2020-06-24 2022-03-22 Western Digital Technologies, Inc. Dual-interface storage system and method for use therewith
US11442665B2 (en) 2020-12-04 2022-09-13 Western Digital Technologies, Inc. Storage system and method for dynamic selection of a host interface
DE102022102971A1 (de) 2021-02-18 2022-08-18 Coavis Schnellverbinder
US11481123B1 (en) * 2021-04-27 2022-10-25 Micron Technology, Inc. Techniques for failure management in memory systems

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7231504B2 (en) * 2004-05-13 2007-06-12 International Business Machines Corporation Dynamic memory management of unallocated memory in a logical partitioned data processing system
GB2517435A (en) * 2013-08-19 2015-02-25 Ibm Fast data back-up and restore between volatile and flash memory
WO2019105029A1 (zh) * 2017-11-29 2019-06-06 北京忆恒创源科技有限公司 去分配命令处理方法及其存储设备
KR20200095103A (ko) 2019-01-31 2020-08-10 에스케이하이닉스 주식회사 데이터 저장 장치 및 그 동작 방법
KR20200114149A (ko) 2019-03-27 2020-10-07 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법

Also Published As

Publication number Publication date
US11360707B2 (en) 2022-06-14
KR20210062476A (ko) 2021-05-31
US20210157525A1 (en) 2021-05-27

Similar Documents

Publication Publication Date Title
US11543984B2 (en) Memory controller, storage device and operating method thereof
US11360707B2 (en) Memory controller for replacing bad blocks with reserved blocks and operating method thereof
US11531492B2 (en) Device and method of operating the same
US11194736B2 (en) Memory controller having improved map data access performance and method of operating the same
CN111352855B (zh) 具有提高的映射更新速度的存储装置及其操作方法
US11543986B2 (en) Electronic system including host, memory controller and memory device and method of operating the same
US11360886B2 (en) Storage device and operating method thereof
CN112988049A (zh) 存储装置及其操作方法
CN114443507A (zh) 存储器系统及其操作方法
CN111105836A (zh) 存储装置及其操作方法
CN113223573A (zh) 存储器控制器及其操作方法
CN112582011A (zh) 存储器设备及其操作方法
CN114356209A (zh) 存储装置及其操作方法
CN113806240A (zh) 存储装置及其操作方法
CN111338978B (zh) 存储装置以及操作存储装置的方法
CN113299332A (zh) 存储器控制器及其操作方法
CN113448892A (zh) 存储器控制器及其操作方法
CN112687314A (zh) 存储器设备和操作存储器设备的方法
KR20210128780A (ko) 메모리 컨트롤러 및 이를 포함하는 저장 장치
US20230305714A1 (en) Memory controller and method of operating the same
CN112309446A (zh) 存储设备和操作存储设备的方法
US11836370B2 (en) Storage device and operating method thereof
KR20220064101A (ko) 저장 장치 및 그 동작 방법
CN112783431A (zh) 存储装置及其操作方法
US11500768B2 (en) Storage device performing garbage collection and method of operating the same

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
WW01 Invention patent application withdrawn after publication

Application publication date: 20210521

WW01 Invention patent application withdrawn after publication