CN114078543A - 存储器控制器及其操作方法 - Google Patents
存储器控制器及其操作方法 Download PDFInfo
- Publication number
- CN114078543A CN114078543A CN202110503109.7A CN202110503109A CN114078543A CN 114078543 A CN114078543 A CN 114078543A CN 202110503109 A CN202110503109 A CN 202110503109A CN 114078543 A CN114078543 A CN 114078543A
- Authority
- CN
- China
- Prior art keywords
- memory
- data
- command
- sequential
- random
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
-
- 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
- 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
- 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/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
- G06F12/0882—Page mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- 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/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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/18—Bit line organisation; Bit line lay-out
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/14—Word line organisation; Word line lay-out
-
- 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/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- 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/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
-
- 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/7205—Cleaning, compaction, garbage collection, erase control
-
- 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/7207—Details relating to flash memory management management of metadata or control data
-
- 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/7209—Validity control, e.g. using flags, time stamps or sequence numbers
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)
- Microelectronics & Electronic Packaging (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本公开涉及一种存储器控制器,该存储器控制器包括:元数据存储器,被配置为存储存储器装置中包括的多个存储块中存储的数据的映射信息以及指示多个存储块中存储的数据是否是有效数据的有效数据信息;以及迁移控制器,被配置为基于映射信息和有效数据信息,控制存储器装置执行将多个存储块之中的源存储块中存储的多个有效数据从源存储块移动到目标存储块的迁移操作。
Description
相关申请的交叉引用
本申请要求于2020年8月18日向韩国知识产权局提交的、申请号为10-2020-0103386的韩国专利申请的优先权,该韩国专利申请的全部公开内容通过引用并入本文。
技术领域
本公开涉及一种电子装置,并且更特别地,涉及一种存储器控制器及其操作方法。
背景技术
存储装置是在主机的控制下存储数据的装置。存储装置可以包括存储数据的存储器装置以及控制存储器装置的存储器控制器。存储器装置可以被分类为易失性存储器装置和非易失性存储器装置。
易失性存储器装置可以仅在从电源接收电力时存储数据。当切断电源时,易失性存储器装置中存储的数据会丢失。易失性存储器装置的示例可以包括静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等。
非易失性存储器装置可以是即使来自电源的电力被切断也不会丢失数据的装置。非易失性存储器装置的示例可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪速存储器等。
发明内容
本公开的实施例提供一种存储器控制器,该存储器控制器提高了读取具有连续逻辑地址的有效数据的速度。
根据本公开的实施例的一种存储器控制器是控制包括多个存储块的存储器装置的存储器控制器。该存储器控制器可以包括:元数据存储器,被配置为存储多个存储块中存储的数据的映射信息以及指示多个存储块中存储的数据是否是有效数据的有效数据信息;以及迁移控制器,被配置为基于映射信息和有效数据信息,控制存储器装置执行将源存储块中存储的多个有效数据移动到目标存储块的迁移操作。顺序数据被存储在目标存储块中以在目标存储块中被同时读取,顺序数据是源存储块中存储的多个有效数据之中具有连续逻辑地址的有效数据。
根据本公开的另一实施例的一种存储器控制器的操作方法是控制包括多个存储块的存储器装置的存储器控制器的操作方法。该方法可以包括:基于多个存储块中存储的数据的映射信息以及指示多个存储块中存储的数据是否是有效数据的有效数据信息,向存储器装置提供针对多个存储块之中的源存储块中存储的顺序数据和随机数据的读取命令;响应于对顺序数据的所有第一读取操作的完成,向存储器装置提供针对顺序数据的顺序写入命令;并且以完成对随机数据的第二读取操作的顺序,向存储器装置提供针对随机数据的随机写入命令。顺序写入命令是指示将顺序数据存储在多个存储块之中的目标存储块中以便顺序数据在目标存储块中被同时读取的命令。
根据本技术,提供了一种存储器控制器,该存储器控制器提高了读取具有连续逻辑地址的有效数据的速度。
附图说明
图1是示出根据本公开的实施例的存储系统的示图。
图2是示出根据本公开的实施例的存储器装置的示图。
图3是示出图2所示的多个存储块中的任意一个的结构的示图。
图4是示出根据本公开的实施例的迁移操作的示图。
图5是示出根据本公开的实施例的元数据存储器中存储的元数据的示图。
图6是示出向存储器装置提供顺序读取命令和随机读取命令的实施例的示图。
图7是示出向存储器装置提供随机写入命令的实施例的示图。
图8是示出提供随机写入命令和顺序写入命令的实施例的示图。
图9是示出根据本公开的实施例的存储装置的操作方法的流程图。
图10是示出根据本公开的实施例的存储器控制器的操作方法的流程图。
图11是示出根据本公开的实施例的存储器控制器的示图。
图12是示出应用根据本公开的实施例的存储装置的存储卡系统的框图。
图13是示出应用根据本公开的实施例的存储装置的固态驱动器(SSD)系统的框图。
图14是示出应用根据本公开的实施例的存储装置的用户系统的框图。
具体实施方式
示出根据本说明书或本申请中公开的概念的实施例的特定结构或功能描述仅仅是为了描述根据本公开的概念的实施例。根据本公开的概念的实施例可以以各种形式实施,并且该描述不限于本说明书或本申请中描述的实施例。
图1是示出根据本公开的实施例的存储系统的示图。
参照图1,存储系统可以被实施为个人计算机(PC)、数据中心、企业数据存储系统、包括直接附加存储(DAS)的数据处理系统、包括存储区域网络(SAN)的数据处理系统以及包括网络附加存储(NAS)的数据处理系统等。
存储系统可以包括存储装置1000和主机400。
存储装置1000可以是根据诸如以下的主机400的请求而存储数据的装置:移动电话、智能电话、MP3播放器、膝上型计算机、台式计算机、游戏机、TV、平板PC或车载信息娱乐系统。
根据作为与主机400的通信方法的主机接口,存储装置1000可以被制造为各种类型的存储装置中的一种。例如,存储装置1000可以被配置为诸如以下的各种类型的存储装置中的任意一种:固态驱动器(SSD),MMC、嵌入式MMC(eMMC)、缩小尺寸的MMC(RS-MMC)和微型MMC形式的多媒体卡,SD、迷你SD和微型SD形式的安全数字卡,通用串行总线(USB)存储装置,通用闪存(UFS)装置,个人计算机存储卡国际协会(PCMCIA)卡型存储装置,外围组件互连(PCI)卡型存储装置,高速PCI(PCI-E)卡型存储装置,紧凑型闪存(CF)卡,智能媒体卡和记忆棒。
存储装置1000可以被制造为各种类型的封装中的任意一种。例如,存储装置1000可以被制造为诸如以下的各种类型的封装类型中的任意一种:层叠封装(POP)、系统级封装(SIP)、片上系统(SOC)、多芯片封装(MCP)、板上芯片(COB)、晶圆级制造封装(WFP)和晶圆级堆叠封装(WSP)。
存储装置1000可以包括存储器装置100和存储器控制器200。
存储器装置100可以响应于存储器控制器200的控制而操作。具体地,存储器装置100可以从存储器控制器200接收命令和地址,并且访问通过地址从存储器装置中的存储器单元(未示出)之中选择的存储器单元。存储器装置100可以对通过地址选择的存储器单元执行由命令指示的操作。
命令可以是例如编程命令、读取命令或擦除命令,并且由命令指示的操作可以是例如编程操作(或写入操作)、读取操作或擦除操作。
例如,存储器装置100可以接收编程命令、地址和数据,并且将该数据编程在通过该地址选择的存储器单元中。此处,可以将待编程在所选择的存储器单元中的数据定义为写入数据。
例如,存储器装置100可以接收读取命令和地址,并且从通过该地址在存储器单元阵列(未示出)中选择的区域读取数据。可以将存储器装置100中存储的数据之中待从所选择的区域读取的数据定义为读取数据。
例如,存储器装置100可以接收擦除命令和地址,并且从存储器装置100擦除通过该地址选择的区域中存储的数据。
例如,存储器装置100可以利用双倍数据速率同步动态随机存取存储器(DDRSDRAM)、第四代低功率双倍数据速率(LPDDR4)SDRAM、图形双倍数据速率(GDDR)SDRAM、低功率DDR(LPDDR)SDRAM、Rambus动态随机存取存储器(RDRAM)、NAND闪速存储器、垂直NAND闪速存储器、NOR闪速存储器装置、电阻式随机存取存储器(RRAM)、相变存储器(PRAM)、磁阻随机存取存储器(MRAM)、铁电随机存取存储器、自旋转移扭矩随机存取存储器(STT-RAM)等来实施。
在本说明书中,为了便于描述,假设存储器装置100是NAND闪速存储器。
存储器装置100可以在存储器控制器200的控制下存储写入数据,或者读取所存储的读取数据并且将读取数据提供到存储器控制器200。
存储器装置100可以包括至少一个平面。一个平面可以包括存储器单元阵列(未示出),该存储器单元阵列包括存储数据的存储器单元。
存储器单元阵列可以包括多个存储块(未示出)。存储块可以是执行擦除数据的擦除操作的单位。
存储块可以包括多个页面(未示出)。页面可以是执行存储写入数据的编程操作或读取所存储的读取数据的读取操作的单位。
存储器控制器200可以控制存储装置1000的全部操作。
当向存储装置1000施加电力时,存储器控制器200可以运行固件。当存储器装置100是闪速存储器装置时,固件可以包括主机接口层、闪存转换层和闪存接口层。
主机接口层可以控制主机400与存储器控制器200之间的操作。
闪存转换层可以将从主机400提供的逻辑地址转换为物理地址。为此,存储器控制器200可以存储映射数据,该映射数据是逻辑地址与物理地址之间的对应关系。
闪存接口层可以控制存储器控制器200与存储器装置100之间的通信。
存储器控制器200可以分别响应于主机400的写入请求、读取请求和擦除请求,控制存储器装置100执行编程操作、读取操作和擦除操作。
在编程操作期间,存储器控制器200可以将编程命令、物理地址和写入数据提供到存储器装置100。
在读取操作期间,存储器控制器200可以将读取命令和物理地址提供到存储器装置100。
在擦除操作期间,存储器控制器200可以将擦除命令和物理地址提供到存储器装置100。
存储器控制器200可以不管从主机400提供的请求或独立于从主机400提供的请求而自主地生成命令、地址和数据。存储器控制器200可以将自主地生成的命令、地址和数据传输到存储器装置100。
例如,存储器控制器200可以生成用于执行后台操作的命令、地址和数据。另外,存储器控制器200可以将命令、地址和数据提供到存储器装置100。
后台操作可以是损耗均衡、读取回收和垃圾收集中的至少一种。
损耗均衡可以表示例如静态损耗均衡、动态损耗均衡等。静态损耗均衡可以表示以下操作:存储擦除存储块的次数并且将擦除操作或写入操作中几乎不涉及或很少涉及的冷数据移动到具有最大擦除次数或较大擦除次数的存储块。动态损耗均衡可以表示以下操作:存储擦除存储块的次数并且将数据编程在具有最小擦除次数或较小擦除次数的存储块中。
读取回收可以表示以下操作:在存储块中存储的数据中发生不可校正的错误之前,将该存储块中存储的数据移动到另一存储块。
垃圾收集可以表示以下操作:将存储块之中的坏块中包括的有效数据复制到空闲块,并且擦除该坏块中包括的无效数据。此处,将坏块中包括的有效数据复制到空闲块可以与将坏块中包括的有效数据移动到空闲块具有相同的含义。
如上所述,在后台操作中,可以执行将特定存储块中存储的有效数据移动到另一存储块的迁移操作。也就是说,当需要执行后台操作时,存储器控制器200可以执行迁移操作。
存储器控制器200可以包括元数据存储器210和迁移控制器220。
元数据存储器210可以存储多个存储块中存储的数据的元数据。元数据可以包括例如多个存储块中存储的数据的映射信息和有效数据信息。
映射信息可以是定义从主机400提供的逻辑地址与存储块的物理地址之间的映射关系的信息。
有效数据信息可以是指示多个存储块中存储的数据是否是有效数据的信息。
迁移控制器220可以基于有效数据信息检查多个存储块之中的源存储块中存储的数据的有效性。
在实施例中,源存储块可以是在静态损耗均衡操作中存储冷数据的存储块。
在实施例中,源存储块可以是在动态损耗均衡操作中具有最大擦除次数的存储块。
在实施例中,源存储块可以是在读取回收操作中在移动数据之前存储该数据的存储块。
在实施例中,源存储块可以是垃圾收集操作中的牺牲块(或坏块)。
迁移控制器220可以基于映射信息执行将源存储块中存储的多个有效数据从源存储块移动到目标存储块的迁移操作。
在实施例中,目标存储块可以是在静态损耗均衡操作中具有最大擦除次数的存储块。
在实施例中,目标存储块可以是在动态损耗均衡操作中具有最小擦除次数的存储块。
在实施例中,目标存储块可以是在读取回收操作中源存储块中存储的数据将被移动到的另一存储块。
在实施例中,目标存储块可以是垃圾收集操作中的空闲块。
源存储块中存储的多个有效数据可以是顺序数据或随机数据。
顺序数据可以是源存储块中存储的多个有效数据之中具有连续逻辑地址的有效数据。
在实施例中,顺序数据可以被存储在目标存储块中以在目标存储块中被同时读取。
随机数据可以是源存储块中存储的多个有效数据之中具有非连续逻辑地址的有效数据。可选地,随机数据可以是源存储块中存储的多个有效数据之中除了顺序数据之外的有效数据。
在实施例中,迁移控制器220可以控制存储器装置100读取顺序数据和随机数据。具体地,迁移控制器220可以控制存储器装置100执行对顺序数据的第一读取操作,并且控制存储器装置100执行对随机数据的第二读取操作。
在实施例中,当完成所有第一读取操作时,迁移控制器220可以控制存储器装置100将顺序数据存储在目标存储块中。
在实施例中,迁移控制器220可以控制存储器装置100以完成第二读取操作的顺序将随机数据存储在目标存储块中。
存储器控制器200可以向主机400提供对由主机400提供的请求的响应,并且可以在提供响应之后等待,直到接收到待由主机400提供的后续请求。在这种情况下,迁移控制器220可以在从响应被提供到主机400之后直到接收到后续请求的相应时段内控制存储器装置100执行迁移操作。
存储器控制器200可以控制两个或更多个存储器装置100。在示例中,存储器控制器200可以根据交错方法来控制存储器装置100以提高操作性能。
交错方法可以是以重叠的方式控制两个或更多个存储器装置100的操作的方法。
尽管未示出,但是存储装置1000可以进一步包括缓冲存储器。例如,缓冲存储器可以利用双倍数据速率同步动态随机存取存储器(DDR SDRAM)、第四代低功率双倍数据速率(LPDDR4)SDRAM、图形双倍数据速率(GDDR)SDRAM、低功率DDR(LPDDR)SDRAM、Rambus动态随机存取存储器(RDRAM)、电阻式随机存取存储器(RRAM)、相变随机存取存储器(PRAM)、磁阻随机存取存储器(MRAM)、铁电随机存取存储器和自旋转移扭矩随机存取存储器(STT-RAM)中的任意一种来实施。
主机400可以通过接口(未示出)与存储装置1000通信。
作为非限制性示例,接口可以利用串行高级技术附件(SATA)接口、高速SATA(SATAexpress)接口、串列小型计算机系统(SAS)接口、高速外围组件互连(PCIe)接口、高速非易失性存储器(NVMe)接口、高级主机控制器接口(AHCI)或多媒体卡接口来实施。
主机400可以与存储装置1000通信以将写入数据存储在存储装置1000中或获得存储装置1000中存储的读取数据。
在实施例中,主机400可以将写入请求提供到存储装置1000,以请求将写入数据存储在存储装置1000中。另外,主机400可以将写入请求、写入数据以及用于标识写入数据的逻辑地址提供到存储装置1000。
存储装置1000可以响应于从主机400提供的写入请求,将由主机400提供的写入数据存储在存储器装置100中。存储装置1000可以将完成存储的响应提供到主机400。
在实施例中,主机400可以将读取请求提供到存储装置1000,以请求将存储装置1000中存储的数据提供到主机400。另外,主机400可以将读取请求和读取地址提供到存储装置1000。
存储装置1000可以响应于从主机400提供的读取请求,从存储器装置100读取与由主机400提供的读取地址相对应的读取数据。存储装置1000可以将读取数据提供到主机400作为对读取请求的响应。
图2是示出根据本公开的实施例的存储器装置的示图。
参照图1和图2,存储器装置100可以包括存储器单元阵列110、外围电路120和控制逻辑130。
存储器单元阵列110可以包括多个存储块MB1至MBk(其中k是正整数)。此处,多个存储块MB1至MBk的数量仅仅是用于描述本公开的实施例的示例,而不限于此。
存储块MB1至MBk中的每一个可以连接到局部线LL和位线BL1至BLn(其中n是正整数)。
局部线LL可以连接到行解码器122。
局部线LL可以连接到存储块MB1至MBk中的每一个。
尽管未示出,但是局部线LL可以包括第一选择线、第二选择线以及布置在第一选择线与第二选择线之间的多个字线。
尽管未示出,但是局部线LL可以进一步包括布置在第一选择线与字线之间的虚设线、布置在第二选择线与字线之间的虚设线以及管线。
位线BL1至BLn可以共同地连接到存储块MB1至MBk。
存储块MB1至MBk可以被实施为二维结构或三维结构。
例如,在二维结构的存储块MB1至MBk中,存储器单元可以沿平行于衬底的方向布置。
例如,在三维结构的存储块MB1至MBk中,存储器单元可以沿垂直方向堆叠在衬底上。
外围电路120可以包括电压产生器121、行解码器122、页面缓冲器组123、列解码器124、输入/输出电路(I/O电路)125和感测电路126。
电压产生器121可以响应于操作命令OP_CMD而产生用于编程操作、读取操作和擦除操作的各种操作电压Vop。另外,电压产生器121可以响应于操作命令OP_CMD而选择性地使局部线LL放电。例如,电压产生器121可以在控制逻辑130的控制下产生编程电压、验证电压、通过电压、导通电压、读取电压、擦除电压、源极线电压等。
在实施例中,电压产生器121可以调节外部电源电压以产生内部电源电压。由电压产生器121产生的内部电源电压可以用作存储器装置100的操作电压。
在实施例中,电压产生器121可以使用外部电源电压或内部电源电压来产生多个电压。例如,电压产生器121可以包括接收内部电源电压的多个泵浦电容器,并且可以响应于控制逻辑130的控制,通过选择性地激活多个泵浦电容器来产生多个电压。所产生的多个电压可以由行解码器122供应到存储器单元阵列110。
行解码器122可以响应于行地址RADD而将操作电压Vop传送到局部线LL。可以通过局部线LL将操作电压Vop传送到所选择的存储块MB1至MBk。
例如,在编程操作期间,行解码器122可以将编程电压施加到所选择的字线,并且将电平小于编程电压的电平的编程通过电压施加到未选择的字线。在编程验证操作期间,行解码器122可以将验证电压施加到所选择的字线,并且将大于验证电压的验证通过电压施加到未选择的字线。
在读取操作期间,行解码器122可以将读取电压施加到所选择的字线,并且将大于读取电压的读取通过电压施加到未选择的字线。
在擦除操作期间,行解码器122可以根据解码后的地址选择一个存储块。在擦除操作期间,行解码器122可以将接地电压施加到连接到所选择的存储块的字线。
页面缓冲器组123可以包括第一至第n页面缓冲器PB1至PBn(其中n是正整数)。第一至第n页面缓冲器PB1至PBn可以分别通过第一至第n位线BL1至BLn连接到存储器单元阵列110。第一至第n页面缓冲器PB1至PBn可以响应于控制逻辑130的控制而操作。
具体地,第一至第n页面缓冲器PB1至PBn可以响应于页面缓冲器控制信号PBSIGNALS而操作。例如,第一至第n页面缓冲器PB1至PBn可以临时存储通过第一至第n位线BL1至BLn接收的数据,或者可以在读取操作或验证操作期间感测位线BL1至BLn的电压或电流。
在编程操作期间,当将编程电压施加到所选择的字线时,第一至第n页面缓冲器PB1至PBn可以通过第一至第n位线BL1至BLn,将通过列解码器124和输入/输出电路125接收的数据DATA传送到所选择的存储器单元。根据所传送的数据DATA对所选择的页面的存储器单元进行编程。连接到施加编程允许电压(例如,接地电压)的位线的存储器单元可以具有增加的阈值电压。连接到施加编程禁止电压(例如,电源电压)的位线的存储器单元的阈值电压可以被保持。
在验证操作期间,第一至第n页面缓冲器PB1至PBn可以通过第一至第n位线BL1至BLn从所选择的存储器单元感测所选择的存储器单元中存储的数据。
在读取操作期间,第一至第n页面缓冲器PB1至PBn可以通过第一至第n位线BL1至BLn从所选择的页面的存储器单元感测数据DATA,并且在列解码器124的控制下将读取数据DATA输出到输入/输出电路125。
在擦除操作期间,第一至第n页面缓冲器PB1至PBn可以使第一至第n位线BL1至BLn浮置。
列解码器124可以响应于列地址CADD而在输入/输出电路125与页面缓冲器组123之间传送数据。例如,列解码器124可以通过数据线DL与页面缓冲器PB1至PBn交换数据,或者可以通过列线CL与输入/输出电路125交换数据。
输入/输出电路125可以将从存储器控制器200接收的命令CMD和地址ADD传送到控制逻辑130,或者可以与列解码器124交换数据DATA。
在读取操作或验证操作期间,感测电路126可以响应于允许位信号VRY_BIT<#>而产生参考电流,并且将从页面缓冲器组123接收的感测电压VPB与由参考电流产生的参考电压进行比较以输出通过信号PASS或失败信号FAIL。
控制逻辑130可以响应于命令CMD和地址ADD而输出操作命令OP_CMD、行地址RADD、页面缓冲器控制信号PBSIGNALS和允许位信号VRY_BIT<#>以控制外围电路120。
图3是示出图2所示的多个存储块中的任意一个的结构的示图。
参照图3,图3所示的存储块MBi可以是图2的存储块MB1至MBk中的任意一个。
存储块MBi可以包括第一选择线、第二选择线、多个字线WL1至WL16、源极线SL、多个位线BL1至BLn和多个串ST。
第一选择线可以是例如源极选择线SSL。在下文中,假设第一选择线是源极选择线SSL。
第二选择线可以是例如漏极选择线DSL。在下文中,假设第二选择线是漏极选择线DSL。
多个字线WL1至WL16可以在源极选择线SSL与漏极选择线DSL之间平行地布置。
图3所示的字线WL1至WL16的数量仅仅是示例,并且串ST中的字线的数量不限于附图所示的数量。
源极线SL可以共同地连接到多个串ST。
多个位线BL1至BLn可以分别连接到串ST。
多个串ST可以分别连接到位线BL1至BLn,并且可以连接到源极线SL。
在图3中,将连接到第一位线BL1的串ST作为示例而示出,并且存储块中的其它串可以以相同或基本相同的方式被配置。
串ST可以包括多个存储器单元MC1至MC16、至少一个第一选择晶体管和至少一个第二选择晶体管。
多个存储器单元MC1至MC16可以串联连接在源极选择晶体管SST与漏极选择晶体管DST之间。
存储器单元MC1至MC16的栅极可以分别连接到多个字线WL1至WL16。因此,一个串ST中包括的存储器单元MC1至MC16的数量可以与字线WL1至WL16的数量相同。
多个存储器单元MC1至MC16中的任意一个可以由单层单元(SLC)、多层单元(MLC)、三层单元(TLC)和四层单元(QLC)中的任意一种配置。
不同串ST中包括的存储器单元之中连接到相同字线的一组存储器单元可以被称为物理页面PG。因此,存储块MBi可以包括与字线WL1至WL16的数量相对应的物理页面PG。在下文中,假设物理页面PG中包括的存储器单元(例如,MC3)是所选择的存储器单元。
第一选择晶体管可以是例如源极选择晶体管SST。在下文中,假设第一选择晶体管是源极选择晶体管SST。
源极选择晶体管SST的第一电极可以连接到源极线SL。源极选择晶体管SST的第二电极可以连接到多个存储器单元MC1至MC16之中的第一存储器单元MC1。源极选择晶体管SST的栅极可以连接到源极选择线SSL。
第二选择晶体管可以是例如漏极选择晶体管DST。在下文中,假设第二选择晶体管是漏极选择晶体管DST。
漏极选择晶体管DST的第一电极可以连接到多个存储器单元MC1至MC16之中的第十六存储器单元MC16。漏极选择晶体管DST的第二电极可以连接到第一位线BL1。漏极选择晶体管DST的栅极可以连接到漏极选择线DSL。
图4是示出根据本公开的实施例的迁移操作的示图。
参照图4,源存储块SMB可以存储多个有效数据RDATA1至RDATA5和SDATA1至SDATA5以及多个无效数据Invalid。可以使用元数据存储器210中存储的元数据,例如,存储块中存储的数据的有效数据信息来检查源存储块SMB中存储的数据是有效数据还是无效数据Invalid。
源存储块SMB中存储的多个有效数据RDATA1至RDATA5和SDATA1至SDATA5可以被分为多个顺序数据SDATA1至SDATA5和多个随机数据RDATA1至RDATA5。可以使用元数据存储器210中存储的元数据,例如,映射信息来检查源存储块SMB中存储的多个有效数据是顺序数据还是随机数据。
尽管图4示出了顺序数据SDATA1至SDATA5和随机数据RDATA1至RDATA5中的每一个的数量被限定,但是本公开所涵盖的实施例不限于此。在下文中,为了便于描述,假设顺序数据和随机数据是图4所示的顺序数据SDATA1至SDATA5和随机数据RDATA1至RDATA5。
与多个随机数据RDATA1至RDATA5相反,多个顺序数据SDATA1至SDATA5响应于来自主机400的读取请求而被全部提供到主机400。因此,多个顺序数据SDATA1至SDATA5可以被存储在源存储块SMB的物理地址之中映射到连续逻辑地址的连续物理地址中。在这种情况下,可以更快地执行对多个顺序数据SDATA1至SDATA5的读取操作。
如上所述,以存储块为单位执行擦除操作,因此可以执行迁移操作以便擦除源存储块SMB中存储的无效数据Invalid。此处,迁移操作可以指将源存储块SMB中存储的多个有效数据RDATA1至RDATA5和SDATA1至SDATA5从源存储块SMB移动到目标存储块TMB的操作。
在实施例中,源存储块SMB可以是在垃圾收集操作期间从多个存储块之中选择的牺牲块。另外,目标存储块TMB可以是多个存储块之中的空闲块。
在实施例中,牺牲块可以是存储大小小于或等于预设参考大小的顺序数据SDATA1至SDATA5的存储块。也就是说,当执行垃圾收集操作时,迁移控制器220可以从多个存储块之中选择存储大小小于或等于参考大小的顺序数据SDATA1至SDATA5的存储块作为牺牲块。此处,参考大小可以在出厂前通过实验、设计等预先设定,但参考大小不限于此并且可以在出厂后进行更新。
当完成对多个顺序数据SDATA1至SDATA5的所有第一读取操作时,可以将多个顺序数据SDATA1至SDATA5存储在目标存储块TMB中。可以以通过对多个随机数据RDATA1至RDATA5的第二读取操作获得多个随机数据RDATA1至RDATA5的顺序,将多个随机数据RDATA1至RDATA5存储在目标存储块TMB中。
参照图4,例如,可以首先完成对第一随机数据RDATA1的第二读取操作,可以顺序地完成对第二随机数据RDATA2的第二读取操作。然后,可以完成对第一至第五顺序数据SDATA1至SDATA5的所有第一读取操作,此后可以顺序地完成对第三至第五随机数据RDATA3至RDATA5的第二读取操作。在该示例中,在目标存储块TMB中,可以顺序地存储第一随机数据RDATA1、第二随机数据RDATA2、第一至第五顺序数据SDATA1至SDATA5以及第三至第五随机数据RDATA3至RDATA5。
如上所述,为了更快地执行对多个顺序数据SDATA1至SDATA5的读取操作,待存储在目标存储块TMB中的多个顺序数据SDATA1至SDATA5也可以被存储在目标存储块TMB的物理地址之中映射到连续逻辑地址的连续物理地址中。
图5是示出根据本公开的实施例的元数据存储器中存储的元数据的示图。
参照图5,元数据MDATA可以包括映射信息和有效数据信息。
映射信息可以是指示逻辑地址LBA1至LBA7与物理地址PBA1至PBA7之间的映射关系的信息。
此处,物理地址PBA1至PBA7可以是源存储块SMB的物理地址。
有效数据信息可以是指示多个存储块中包括的数据有效还是无效的信息。
如图5所示,顺序数据可以是具有多个逻辑地址LBA1至LBA7之中的连续逻辑地址LBA1至LBA3的有效数据Valid。然而,本公开的实施例不限于图5所示的实施例。
如图5所示,随机数据可以是具有多个逻辑地址LBA1至LBA7之中的非连续逻辑地址LBA5的有效数据Valid。可选地,随机数据可以是具有多个逻辑地址LBA1至LBA7之中的非连续逻辑地址LBA7的有效数据Valid。然而,本公开的实施例不限于图5所示的实施例。
图6是示出向存储器装置提供顺序读取命令和随机读取命令的实施例的示图。
参照图6,迁移控制器220可以包括命令控制器221、第一命令队列222、第二命令队列223和第三命令队列224。
命令控制器221可以基于元数据MDATA生成顺序读取命令SRCMD和随机读取命令RRCMD。元数据MDATA可以包括有效数据信息和映射信息。顺序读取命令SRCMD可以是指示读取源存储块SMB中存储的顺序数据(SDATA1至SDATA5中的任意一个)的命令。随机读取命令RRCMD可以是指示读取源存储块SMB中存储的随机数据(RDATA1至RDATA5中的任意一个)的命令。
具体地,命令控制器221可以使用有效数据信息来检查源存储块SMB中存储的数据的有效性。命令控制器221可以使用映射信息检查多个有效数据之中具有连续逻辑地址的多个有效数据作为顺序数据SDATA1至SDATA5。命令控制器221可以使用映射信息检查多个有效数据之中具有非连续逻辑地址的多个有效数据作为随机数据RDATA1至RDATA5。命令控制器221可以生成指示读取顺序数据SDATA1至SDATA5的顺序读取命令SRCMD1至SRCMD5。命令控制器221可以生成指示读取随机数据RDATA1至RDATA5的随机读取命令RRCMD1至RRCMD5。
在实施例中,第一顺序读取命令SRCMD1可以是指示读取第一顺序数据SDATA1的命令,并且第二顺序读取命令SRCMD2可以是指示读取第二顺序数据SDATA2的命令。类似地,第三至第五顺序读取命令SRCMD3至SRCMD5也可以是分别指示读取第三至第五顺序数据SDATA3至SDATA5的命令。
在实施例中,第一随机读取命令RRCMD1可以是指示读取第一随机数据RDATA1的命令,并且第二随机读取命令RRCMD2可以是指示读取第二随机数据RDATA2的命令。类似地,第三至第五随机读取命令RDATA3至RDATA5也可以是分别指示读取第三至第五随机数据RDATA3至RDATA5的命令。
命令控制器221可以将顺序读取命令SRCMD1至SRCMD5传送到第一命令队列222,并且可以将随机读取命令RRCMD1至RRCMD5传送到第二命令队列223。
第一命令队列222可以从命令控制器221接收顺序读取命令SRCMD1至SRCMD5,并且将顺序读取命令SRCMD1至SRCMD5提供到存储器装置100。
在实施例中,可以以顺序读取命令SRCMD1至SRCMD5输入到第一命令队列222的顺序,将第一命令队列222中存储的顺序读取命令SRCMD1至SRCMD5提供到存储器装置100。参照图6,例如,可以以第一顺序读取命令SRCMD1、第二顺序读取命令SRCMD2、第三顺序读取命令SRCMD3、第四顺序读取命令SRCMD4和第五顺序读取命令SRCMD5的顺序,将顺序读取命令SRCMD1至SRCMD5输入到第一命令队列222。在这种情况下,可以以与输入顺序相同的顺序将第一命令队列222中存储的顺序读取命令SRCMD1至SRCMD5提供到存储器装置100。也就是说,可以以先进先出方法将第一命令队列222中存储的顺序读取命令SRCMD1至SRCMD5提供到存储器装置100。
在实施例中,第一命令队列222中存储的顺序读取命令SRCMD1至SRCMD5中的每一个的处理状态STATUS可以是提供状态Issue。提供状态Issue可以表示读取命令被提供到存储器装置100的状态。
尽管未示出,但是可以将尾地址赋予第一命令队列222中存储的第一顺序读取命令SRCMD1,并且可以将头地址赋予第一命令队列222中存储的第五顺序读取命令SRCMD5。
第二命令队列223可以从命令控制器221接收随机读取命令RRCMD1至RRCMD5,并且将随机读取命令RRCMD1至RRCMD5提供到存储器装置100。
在实施例中,可以以随机读取命令RRCMD1至RRCMD5输入到第二命令队列223的顺序,将第二命令队列223中存储的随机读取命令RRCMD1至RRCMD5提供到存储器装置100。参照图6,例如,可以以从第一随机读取命令RRCMD1至第五随机读取命令RRCMD5的顺序,将随机读取命令RRCMD1至RRCMD5输入到第二命令队列223。在这种情况下,可以以与输入顺序相同的顺序将第二命令队列223中存储的随机读取命令RRCMD1至RRCMD5提供到存储器装置100。也就是说,可以以先进先出方法将第二命令队列223中存储的随机读取命令RRCMD1至RRCMD5提供到存储器装置100。
在实施例中,第二命令队列223中存储的随机读取命令RRCMD1至RRCMD5中的每一个的处理状态STATUS可以是提供状态Issue。
命令控制器221可以将随机写入命令(未示出)提供到第三命令队列224。可选地,命令控制器221可以将顺序写入命令(未示出)提供到第三命令队列224。下面参照图7和图8对其进行详细描述。
图7是示出向存储器装置提供随机写入命令的实施例的示图。
参照图1和图7,存储器装置100可以向迁移控制器220顺序地提供顺序数据SDATA1至SDATA5和随机数据RDATA1至RDATA5之中完成读取操作的有效数据。
参照图7,例如,以第一顺序读取命令SRCMD1、第二顺序读取命令SRCMD2、第二随机读取命令RRCMD2、第四顺序读取命令SRCMD4和第一随机读取命令RRCMD1的顺序完成读取操作。在这种情况下,可以将第一顺序数据SDATA1、第二顺序数据SDATA2、第二随机数据RDATA2、第四顺序数据SDATA4和第一随机数据RDATA1顺序地提供到迁移控制器220。
可以根据顺序数据是否被提供到迁移控制器220来改变第一命令队列222中存储的顺序读取命令SRCMD1至SRCMD5的处理状态STATUS。
参照图7,例如,当第一顺序数据SDATA1被提供到迁移控制器220时,可以将第一命令队列222中存储的第一顺序读取命令SRCMD1的处理状态STATUS从提供状态Issue改变为完成状态Done。类似地,当第二顺序数据SDATA2和第四顺序数据SDATA4被提供到迁移控制器220时,也可以将第一命令队列222中存储的第二顺序读取命令SRCMD2和第四顺序读取命令SRCMD4的处理状态STATUS从提供状态Issue改变为完成状态Done。此处,完成状态Done可以是完成对有效数据的读取操作的状态。当完成读取操作时,可以将有效数据提供到迁移控制器220。
可以根据随机数据是否被提供到迁移控制器220来改变第二命令队列223中存储的随机读取命令RRCMD1至RRCMD5的处理状态STATUS。
参照图7,例如,当第一随机数据RDATA1和第二随机数据RDATA2被提供到迁移控制器220时,可以将第一随机读取命令RRCMD1和第二随机读取命令RRCMD2的处理状态STATUS从提供状态Issue改变为完成状态Done。
在实施例中,命令控制器221可以获得顺序读取命令SRCMD1至SRCMD5之中完成针对其的第一读取操作的顺序读取命令的顺序数据。命令控制器221可以基于第一命令队列222中存储的处理状态STATUS来确定是否完成针对顺序读取命令SRCMD1至SRCMD5的所有第一读取操作。当完成针对顺序读取命令SRCMD1至SRCMD5的所有第一读取操作时,命令控制器221可以生成顺序写入命令SWCMD。顺序写入命令SWCMD可以是指示将顺序数据存储在目标存储块TMB中的命令。
然而,如图7所示,仅顺序读取命令SRCMD1至SRCMD5之中的第一顺序读取命令SRCMD1、第二顺序读取命令SRCMD2和第四顺序读取命令SRCMD4的处理状态可以具有完成状态Done。因此,因为未完成针对顺序读取命令SRCMD1至SRCMD5的所有第一读取操作,所以命令控制器221可以不生成顺序写入命令SWCMD。
在实施例中,命令控制器221可以以完成针对随机读取命令RRCMD1至RRCMD5的第二读取操作的顺序来生成随机写入命令RWCMD。可以基于第二命令队列223中存储的处理状态STATUS来确定完成第二读取操作的顺序。也就是说,完成第二读取操作的顺序可以是第二命令队列223中存储的处理状态STATUS被改变为完成状态Done的顺序。
在实施例中,第一随机写入命令RWCMD1可以是指示将第一随机数据RDATA1存储在目标存储块TMB中的命令,并且第二随机写入命令RWCMD2可以是指示将第二随机数据RDATA2存储在目标存储块TMB中的命令。
在实施例中,当完成第二读取操作时,命令控制器221可以获得随机数据,因此命令控制器221可以以通过第二读取操作获得随机数据的顺序来生成随机写入命令RWCMD。
参照图7,例如,在获得第二随机数据RDATA2之后,获得第一随机数据RDATA1。命令控制器221可以不生成针对在获得第二随机数据RDATA2之前获得的第一顺序数据SDATA1和第二顺序数据SDATA2的顺序写入命令(未示出),并且可以顺序地生成第二随机写入命令RWCMD2和第一随机写入命令RWCMD1。
命令控制器221可以将随机写入命令RWCMD提供到第三命令队列224。
第三命令队列224可以接收随机写入命令RWCMD并且将随机写入命令RWCMD提供到存储器装置100。如上所述,可以以先进先出方法将第三命令队列224中存储的随机写入命令RWCMD提供到存储器装置100。
参照图7,例如,第三命令队列224从命令控制器221顺序地接收第二随机写入命令RWCMD2和第一随机写入命令RWCMD1。另外,第三命令队列224中存储的第二随机写入命令RWCMD2和第一随机写入命令RWCMD1被顺序地提供到存储器装置100。
图8是示出提供随机写入命令和顺序写入命令的实施例的示图。
参照图8,第一顺序数据SDATA1、第二顺序数据SDATA2、第二随机数据RDATA2、第四顺序数据SDATA4、第一随机数据RDATA1、第三随机数据RDATA3、第五顺序数据SDATA5和第三顺序数据SDATA3可以被顺序地提供到迁移控制器220。
参照图8,例如,第一命令队列222中存储的顺序读取命令SRCMD1至SRCMD5的所有处理状态可以从提供状态Issue被改变为完成状态Done。此处,可以根据获得第一至第五顺序数据SDATA1至SDATA5的顺序来确定顺序读取命令SRCMD1至SRCMD5的处理状态被改变为完成状态Done的顺序。
参照图8,例如,第二命令队列223中存储的第一至第三随机读取命令RRCMD1至RRCMD3的处理状态可以从提供状态Issue被改变为完成状态Done。此处,可以根据获得第一至第三随机数据RDATA1至RDATA3的顺序来确定所存储的第一至第三随机读取命令RRCMD1至RRCMD3的处理状态被改变为完成状态Done的顺序。
类似于以上参照图7所描述的,在实施例中,即使第二随机数据RDATA2在第一顺序数据SDATA1和第二顺序数据SDATA2之后被获得,命令控制器221也可以首先生成第二随机写入命令RWCMD2,并且将第二随机写入命令RWCMD2传送到第三命令队列224。
在实施例中,即使第一随机数据RDATA1和第三随机数据RDATA3在第四顺序数据SDATA4之后被获得,命令控制器221也可以在生成第二随机写入命令RWCMD2之后顺序地生成第一随机写入命令RWCMD1和第三随机写入命令RWCMD3,并且可以将第一随机写入命令RWCMD1和第三随机写入命令RWCMD3顺序地传送到第三命令队列224。
如图8所示,当最后获得第三顺序数据SDATA3时,顺序读取命令SRCMD1至SRCMD5的所有处理状态STATUS可以处于完成状态Done。命令控制器221可以确定完成了针对顺序读取命令SRCMD1至SRCMD5的所有第一读取操作。命令控制器221可以以顺序读取命令SRCMD1至SRCMD5输入到第一命令队列222的顺序来生成顺序写入命令SWCMD1至SWCMD5。
命令控制器221可以以顺序读取命令SRCMD1至SRCMD5输入到第一命令队列222的顺序将顺序写入命令SWCMD1至SWCMD5传送到第三命令队列224。
第三命令队列224可以以命令控制器221传送顺序写入命令SWCMD和随机写入命令RWCMD的顺序存储写入命令。
参照图8,例如,第三命令队列224可以以第二随机写入命令RWCMD2、第一随机写入命令RWCMD1、第三随机写入命令RWCMD3和顺序写入命令SWCMD1至SWCMD5的顺序存储写入命令。
第三命令队列224可以以第三命令队列224接收顺序写入命令SWCMD和随机写入命令RWCMD的顺序将写入命令提供到存储器装置100。
参照图8,例如,第三命令队列224可以将第二随机写入命令RWCMD2、第一随机写入命令RWCMD1、第三随机写入命令RWCMD3和顺序写入命令SWCMD1至SWCMD5顺序地提供到存储器装置100。
如上所述,在迁移操作期间,保持了顺序数据的连续性,因此具有提高对顺序数据的读取操作的速度的效果。
图9是示出根据本公开的实施例的存储装置的操作方法的流程图。
参照图9,存储装置1000可以确定是否接收到主机400的请求(S110)。
当接收到主机400的请求(S110,是)时,存储装置1000可以根据主机400的请求执行操作(S121),并且将对主机400的请求的响应提供到主机400(S122)。
例如,存储装置1000响应于主机400的写入请求而执行编程操作,并且向主机400提供通知完成编程操作的响应。
在另一示例中,存储装置1000响应于主机400的读取请求而执行读取操作,并且响应于读取请求而将读取数据提供到主机400。
当不存在主机400的请求(S110,否)时,存储装置1000确定是否在执行后台操作时开始迁移操作(S130)。
当不开始迁移操作(S130,否)时,存储装置1000进入空闲模式(S141)。空闲模式可以是等待直到接收到主机400的请求而不执行后台操作的模式。
当开始迁移操作(S130,是)时,存储装置1000执行迁移操作(S142)。
例如,迁移控制器220可以在与响应被提供到主机400之后直到接收到主机400的后续请求的时段相对应的时段内控制存储器装置执行迁移操作。
图10是示出根据本公开的实施例的存储器控制器的操作方法的流程图。
参照图10,根据本公开的实施例的存储器控制器200使用有效数据信息来检查源存储块SMB中存储的数据的有效性(S210)。
存储器控制器200使用映射信息来确定源存储块SMB中包括的有效数据是否是顺序数据(例如,SDATA1至SDATA5)(S220)。
顺序数据可以是源存储块SMB中存储的多个有效数据之中具有连续逻辑地址的有效数据。
当有效数据是顺序数据(S220,是)时,存储器控制器200生成顺序读取命令(例如,SRCMD1至SRCMD5)(S231),将顺序读取命令存储在第一命令队列222中并且将顺序读取命令提供到存储器装置100(S232)。
存储器控制器200确定是否完成对顺序数据的所有第一读取操作(S233)。
当完成所有第一读取操作(S233,是)时,存储器控制器200以顺序读取命令输入到第一命令队列222的顺序生成顺序写入命令(例如,SWCMD1至SWCMD5)(S234),将顺序写入命令存储在第三命令队列224中并且将顺序写入命令提供到存储器装置100(S235)。
当有效数据是随机数据(例如,RDATA1至RDATA5)(S220,否)时,存储器控制器200生成随机读取命令(例如,RRCMD1至RRCMD5)(S241),将随机读取命令存储在第二命令队列223中并且将随机读取命令提供到存储器装置100(S242)。
随机数据可以是源存储块SMB中存储的多个有效数据之中除了顺序数据之外的有效数据。
存储器控制器200以完成第二读取操作的顺序生成随机写入命令(例如,RWCMD1至RWCMD3)(S243),将随机写入命令存储在第三命令队列224中并且将随机写入命令提供到存储器装置100(S244)。
图11是示出根据本公开的实施例的存储器控制器的示图。
参照图1和图11,存储器控制器200可以包括处理器201、RAM 202、错误校正电路ECC Circuit 230、ROM 260、主机接口270和闪存接口280。
处理器201可以控制存储器控制器200的全部操作。
RAM 202可以用作存储器控制器200的缓冲存储器、高速缓存存储器、操作存储器等。例如,缓冲存储器可以是RAM 202,并且在实施例中,缓冲存储器可以是SRAM。
ROM 260可以以固件的形式存储存储器控制器200操作所需的各种信息。
存储器控制器200可以通过主机接口270与外部装置(例如,主机400、应用处理器等)通信。
存储器控制器200可以通过闪存接口280与存储器装置100通信。存储器控制器200可以通过闪存接口280将命令CMD、地址ADD、控制信号CTRL等传输到存储器装置100并且接收数据DATA。
例如,闪存接口280可以包括NAND接口。
图12是示出应用根据本公开的实施例的存储装置的存储卡系统的框图。
参照图1和图12,存储卡系统2000包括存储器装置2100、存储器控制器2200和连接器2300。
例如,存储器装置2100可以由诸如以下的各种非易失性存储器元件配置:电可擦除可编程ROM(EEPROM)、NAND闪速存储器、NOR闪速存储器、相变RAM(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)和自旋转移扭矩磁阻RAM(STT-MRAM)。
存储器控制器2200连接到存储器装置2100。存储器控制器2200被配置为访问存储器装置2100。例如,存储器控制器2200可以被配置为控制存储器装置2100的读取操作、写入操作、擦除操作和后台操作。存储器控制器2200被配置为提供存储器装置2100与主机400之间的接口。存储器控制器2200被配置为驱动用于控制存储器装置2100的固件。存储器控制器2200可以等同于参照图1描述的存储器控制器200来实施。
例如,存储器控制器2200可以包括诸如随机存取存储器(RAM)、处理器、主机接口、存储器接口和错误校正电路的组件。
存储器控制器2200可以通过连接器2300与外部装置通信。存储器控制器2200可以根据特定的通信标准与外部装置(例如,主机400)通信。例如,存储器控制器2200被配置为通过诸如以下的各种通信标准中的至少一种与外部装置通信:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(EMMC)、外围组件互连(PCI)、高速PCI(PCI-E)、高级技术附件(ATA)、串行ATA、并行ATA、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)、电子集成驱动器(IDE)、火线、通用闪存(UFS)、Wi-Fi、蓝牙和NVMe。例如,连接器2300可以由上述各种通信标准中的至少一种限定。
存储器装置2100和存储器控制器2200可以被集成到一个半导体装置中以配置存储卡。例如,存储器控制器2200和存储器装置2100可以被集成到一个半导体装置中以配置诸如以下的存储卡:PC卡(个人计算机存储卡国际协会(PCMCIA))、紧凑型闪存(CF)卡、智能媒体卡(SM或SMC)、记忆棒、多媒体卡(MMC、RS-MMC、微型MMC或eMMC)、SD卡(SD、迷你SD、微型SD或SDHC)和通用闪存(UFS)。
图13是示出应用根据本公开的实施例的存储装置的固态驱动器(SSD)系统的框图。
参照图1和图13,SSD系统包括主机400和SSD 3000。
SSD 3000通过信号连接器3001与主机400交换信号SIG,并且通过电源连接器3002接收电力PWR。SSD 3000包括SSD控制器3200,多个闪速存储器3100_1、3100_2至3100_n(其中n是正整数),辅助电源装置3300和缓冲存储器3400。
根据本公开的实施例,SSD控制器3200可以执行参照图1描述的存储器控制器200的功能。
SSD控制器3200可以响应于从主机400接收的信号SIG而控制多个闪速存储器3100_1、3100_2至3100_n。例如,信号SIG可以是基于主机400与SSD 3000之间的接口的信号。例如,信号SIG可以是由诸如以下的接口中的至少一种限定的信号:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围组件互连(PCI)、高速PCI(PCI-E)、高级技术附件(ATA)、串行ATA、并行ATA、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)、电子集成驱动器(IDE)、火线、通用闪存(UFS)、Wi-Fi、蓝牙和NVMe。
辅助电源装置3300通过电源连接器3002连接到主机400。辅助电源装置3300可以从主机400接收电力PWR并且可以充电。当来自主机400的电力供应不平稳时,辅助电源装置3300可以提供SSD 3000的电力。例如,辅助电源装置3300可以位于SSD 3000中或者可以位于SSD 3000外部。例如,辅助电源装置3300可以位于主板上并且可以向SSD 3000提供辅助电力。
缓冲存储器3400可以临时存储数据。例如,缓冲存储器3400可以临时存储从主机400接收的数据或从多个闪速存储器3100_1、3100_2至3100_n接收的数据,或者可以临时存储闪速存储器3100_1、3100_2至3100_n的元数据(例如,映射表)。缓冲存储器3400可以包括诸如DRAM、SDRAM、DDR SDRAM、LPDDR SDRAM和GRAM的易失性存储器,或者诸如FRAM、ReRAM、STT-MRAM和PRAM的非易失性存储器。
图14是示出应用根据本公开的实施例的存储装置的用户系统的框图。
参照图14,用户系统4000包括应用处理器4100、存储器模块4200、网络模块4300、存储模块4400和用户接口4500。
应用处理器4100可以驱动用户系统4000中包括的组件、操作系统(OS)、用户程序等。例如,应用处理器4100可以包括控制用户系统4000中包括的组件的控制器、接口、图形引擎等。应用处理器4100可以被设置为片上系统(SoC)。
存储器模块4200可以作为用户系统4000的主存储器、操作存储器、缓冲存储器或高速缓存存储器进行操作。存储器模块4200可以包括诸如DRAM、SDRAM、DDR SDRAM、DDR2SDRAM、DDR3 SDRAM、LPDDR SDRAM、LPDDR2 SDRAM和LPDDR3 SDRAM的易失性随机存取存储器,或者诸如PRAM、ReRAM、MRAM和FRAM的非易失性随机存取存储器。例如,应用处理器4100和存储器模块4200可以基于层叠封装(POP)被封装并且被设置为一个半导体封装。
网络模块4300可以与外部装置通信。例如,网络模块4300可以支持诸如以下的无线通信:码分多址(CDMA)、全球移动通信系统(GSM)、宽带CDMA(WCDMA)、CDMA-2000、时分多址(TDMA)、长期演进、Wimax、WLAN、UWB、蓝牙和Wi-Fi。例如,网络模块4300可以包括在应用处理器4100中。
存储模块4400可以存储数据。例如,存储模块4400可以存储从应用处理器4100接收的数据。可选地,存储模块4400可以将存储模块4400中存储的数据传输到应用处理器4100。例如,存储模块4400可以利用诸如以下的非易失性半导体存储器元件来实施:相变RAM(PRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)、NAND闪存、NOR闪存和三维NAND闪存。例如,存储模块4400可以被设置为用户系统4000的诸如存储卡和外部驱动器的可移除存储装置(可移除驱动器)。
例如,存储模块4400可以与参照图1描述的存储装置1000相同地操作。存储模块4400可以包括多个非易失性存储器装置,并且多个非易失性存储器装置可以与参照图1描述的存储器装置100相同地操作。
用户接口4500可以包括用于向应用处理器4100输入数据或指令或者用于向外部装置输出数据的接口。例如,用户接口4500可以包括诸如键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、相机、麦克风、陀螺仪传感器、振动传感器和压电元件的用户输入接口。用户接口4500可以包括诸如液晶显示器(LCD)、有机发光二极管(OLED)显示装置、有源矩阵OLED(AMOLED)显示装置、LED、扬声器和监控器的用户输出接口。
如上所述,根据本公开的实施例,具有提高读取具有连续逻辑地址的有效数据的速度的效果。
Claims (15)
1.一种存储器控制器,所述存储器控制器控制存储器装置,所述存储器装置包括多个存储块,所述存储器控制器包括:
元数据存储器,存储所述多个存储块中存储的数据的映射信息以及指示所述多个存储块中存储的数据是否是有效数据的有效数据信息;以及
迁移控制器,基于所述映射信息和所述有效数据信息,控制所述存储器装置执行将源存储块中存储的多个有效数据移动到目标存储块的迁移操作,
其中顺序数据被存储在所述目标存储块中以在所述目标存储块中被同时读取,所述顺序数据是所述源存储块中存储的所述多个有效数据之中具有连续逻辑地址的有效数据。
2.根据权利要求1所述的存储器控制器,其中所述迁移控制器控制所述存储器装置读取所述顺序数据和随机数据,所述随机数据是所述源存储块中存储的所述多个有效数据之中具有非连续逻辑地址的有效数据,
当完成对所述顺序数据的所有第一读取操作时,所述迁移控制器控制所述存储器装置将所述顺序数据存储在所述目标存储块中,并且
所述迁移控制器控制所述存储器装置以完成对所述随机数据的第二读取操作的顺序将所述随机数据存储在所述目标存储块中。
3.根据权利要求2所述的存储器控制器,其中所述迁移控制器包括:
命令控制器,基于所述映射信息和所述有效数据信息,生成指示读取所述顺序数据的顺序读取命令以及指示读取所述随机数据的随机读取命令;
第一命令队列,从所述命令控制器接收所述顺序读取命令并且向所述存储器装置提供所述顺序读取命令;以及
第二命令队列,从所述命令控制器接收所述随机读取命令并且向所述存储器装置提供所述随机读取命令。
4.根据权利要求3所述的存储器控制器,其中所述命令控制器以所述顺序读取命令输入到所述第一命令队列的顺序,生成指示将所述顺序数据存储在所述目标存储块中的顺序写入命令,并且
所述命令控制器以通过所述第二读取操作获得所述随机数据的顺序,生成指示将所述随机数据存储在所述目标存储块中的随机写入命令。
5.根据权利要求4所述的存储器控制器,进一步包括:
第三命令队列,从所述命令控制器接收所述顺序写入命令和所述随机写入命令,并且向所述存储器装置提供所述顺序写入命令和所述随机写入命令。
6.根据权利要求1所述的存储器控制器,其中所述源存储块是在垃圾收集操作期间从所述多个存储块之中选择的牺牲块,并且
所述目标存储块是所述多个存储块之中的空闲块。
7.根据权利要求6所述的存储器控制器,其中所述牺牲块是存储大小小于或等于预设参考大小的所述顺序数据的存储块。
8.根据权利要求1所述的存储器控制器,其中所述迁移控制器在与对主机提供的请求的响应被提供到所述主机之后直到接收到待由所述主机提供的后续请求的时段相对应的时段内控制所述存储器装置执行所述迁移操作。
9.一种存储器控制器的操作方法,所述存储器控制器控制存储器装置,所述存储器装置包括多个存储块,所述方法包括:
基于所述多个存储块中存储的数据的映射信息以及指示所述多个存储块中存储的数据是否是有效数据的有效数据信息,向所述存储器装置提供针对所述多个存储块之中的源存储块中存储的顺序数据和随机数据的读取命令;
响应于对所述顺序数据的所有第一读取操作的完成,向所述存储器装置提供针对所述顺序数据的顺序写入命令;并且
以完成对所述随机数据的第二读取操作的顺序,向所述存储器装置提供针对所述随机数据的随机写入命令,
其中所述顺序写入命令是指示将所述顺序数据存储在所述多个存储块之中的目标存储块中以便所述顺序数据在所述目标存储块中被同时读取的命令。
10.根据权利要求9所述的方法,其中向所述存储器装置提供读取命令包括:
基于所述映射信息和所述有效数据信息,生成顺序读取命令和随机读取命令;
将所述顺序读取命令存储在第一命令队列中并且将所述顺序读取命令提供到所述存储器装置;并且
将所述随机读取命令存储在第二命令队列中并且将所述随机读取命令提供到所述存储器装置。
11.根据权利要求10所述的方法,其中向所述存储器装置提供顺序写入命令包括:
以所述顺序读取命令输入到所述第一命令队列的顺序,生成所述顺序写入命令;并且
将所述顺序写入命令存储在第三命令队列中并且将所述顺序写入命令提供到所述存储器装置。
12.根据权利要求10所述的方法,其中向所述存储器装置提供随机写入命令包括:
以通过所述第二读取操作获得所述随机数据的顺序,生成指示将所述随机数据存储在所述目标存储块中的所述随机写入命令;并且
将所述随机写入命令存储在第三命令队列中并且将所述随机写入命令提供到所述存储器装置。
13.根据权利要求9所述的方法,其中所述源存储块是在垃圾收集操作期间从所述多个存储块之中选择的牺牲块,并且
所述目标存储块是所述多个存储块之中的空闲块。
14.根据权利要求13所述的方法,其中所述牺牲块是存储大小小于或等于预设参考大小的所述顺序数据的存储块。
15.根据权利要求9所述的方法,其中所述顺序数据是所述源存储块中存储的多个有效数据之中具有连续逻辑地址的有效数据,并且
所述随机数据是所述源存储块中存储的所述多个有效数据之中除了所述顺序数据之外的有效数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200103386A KR20220022332A (ko) | 2020-08-18 | 2020-08-18 | 메모리 컨트롤러 및 그 동작 방법 |
KR10-2020-0103386 | 2020-08-18 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114078543A true CN114078543A (zh) | 2022-02-22 |
Family
ID=80270739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110503109.7A Withdrawn CN114078543A (zh) | 2020-08-18 | 2021-05-10 | 存储器控制器及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11494106B2 (zh) |
KR (1) | KR20220022332A (zh) |
CN (1) | CN114078543A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115951842A (zh) * | 2023-02-23 | 2023-04-11 | 摩尔线程智能科技(北京)有限责任公司 | 基于单路输入的数据处理装置、方法和计算机设备 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230409239A1 (en) * | 2022-06-21 | 2023-12-21 | Micron Technology, Inc. | Efficient command fetching in a memory sub-system |
TWI822517B (zh) * | 2022-12-14 | 2023-11-11 | 慧榮科技股份有限公司 | 執行主機寫入命令的方法及電腦程式產品及裝置 |
TWI822516B (zh) * | 2022-12-14 | 2023-11-11 | 慧榮科技股份有限公司 | 執行主機寫入命令的方法及電腦程式產品及裝置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8112574B2 (en) * | 2004-02-26 | 2012-02-07 | Super Talent Electronics, Inc. | Swappable sets of partial-mapping tables in a flash-memory system with a command queue for combining flash writes |
US7401193B1 (en) * | 2004-10-29 | 2008-07-15 | Promise Technology, Inc. | System for storing data |
US8364918B1 (en) * | 2007-04-06 | 2013-01-29 | Marvell International Ltd. | Sensed opportunistic garbage collection in memory components |
US8316176B1 (en) * | 2010-02-17 | 2012-11-20 | Western Digital Technologies, Inc. | Non-volatile semiconductor memory segregating sequential data during garbage collection to reduce write amplification |
KR102053865B1 (ko) | 2013-03-15 | 2019-12-09 | 삼성전자주식회사 | 호스트-주도 가비지 컬렉션 방법과 상기 방법을 수행할 수 있는 시스템 |
US10102119B2 (en) | 2015-10-30 | 2018-10-16 | Sandisk Technologies Llc | Garbage collection based on queued and/or selected write commands |
US10698808B2 (en) | 2017-04-25 | 2020-06-30 | Samsung Electronics Co., Ltd. | Garbage collection—automatic data placement |
TWI692690B (zh) * | 2017-12-05 | 2020-05-01 | 慧榮科技股份有限公司 | 存取快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置 |
KR20200014175A (ko) | 2018-07-31 | 2020-02-10 | 에스케이하이닉스 주식회사 | 소요시간을 예측하여 가비지 컬렉션을 수행하는 방법 및 장치 |
KR20210055514A (ko) | 2019-11-07 | 2021-05-17 | 에스케이하이닉스 주식회사 | 스토리지 장치 및 그 동작 방법 |
US11586734B2 (en) | 2020-02-28 | 2023-02-21 | Kioxia Corporation | Systems and methods for protecting SSDs against threats |
-
2020
- 2020-08-18 KR KR1020200103386A patent/KR20220022332A/ko active Search and Examination
-
2021
- 2021-02-24 US US17/183,899 patent/US11494106B2/en active Active
- 2021-05-10 CN CN202110503109.7A patent/CN114078543A/zh not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115951842A (zh) * | 2023-02-23 | 2023-04-11 | 摩尔线程智能科技(北京)有限责任公司 | 基于单路输入的数据处理装置、方法和计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
US20220057953A1 (en) | 2022-02-24 |
US11494106B2 (en) | 2022-11-08 |
KR20220022332A (ko) | 2022-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11537316B2 (en) | Data storage device for storing data in sequential data area and method of operating the same | |
US11334248B2 (en) | Storage device and method of changing between memory blocks of different bits based on delay of migration request | |
US11494106B2 (en) | Memory controller and method of ordering sequential data and random data | |
US11481272B2 (en) | Memory controller and method of operating the same | |
US11853202B2 (en) | Memory system performing garbage collection operation by exchanging information related to garbage collection with host and method of operating the memory system | |
KR20190123544A (ko) | 저장 장치 및 그 동작 방법 | |
KR20210090439A (ko) | 메모리 컨트롤러 및 그 동작 방법 | |
KR20210077451A (ko) | 저장 장치 및 그 동작 방법 | |
CN115705893A (zh) | 用于执行读取操作的存储器装置及其操作方法 | |
US11048625B2 (en) | Memory system and operating method thereof | |
US20220113900A1 (en) | Storage device and method of operating the same | |
US11461051B2 (en) | Storage device and method of operating the same | |
CN113299332A (zh) | 存储器控制器及其操作方法 | |
CN112687314A (zh) | 存储器设备和操作存储器设备的方法 | |
US20200201547A1 (en) | Storage device and method of operating the same | |
KR20210033719A (ko) | 메모리 장치 및 그 동작 방법 | |
US11474723B2 (en) | Storage device and operating method thereof | |
US11544184B2 (en) | Storage device and method of operating the same for processing a trim request of host | |
US20220100405A1 (en) | Memory controller and operating method thereof | |
CN114464237A (zh) | 存储器装置、存储装置以及操作存储器控制器的方法 | |
CN113126895A (zh) | 存储装置及其操作方法 | |
KR20210006178A (ko) | 메모리 컨트롤러 및 그 동작 방법 | |
US11282570B2 (en) | Storage device and method of operating the same | |
CN112527189B (zh) | 存储器装置及其操作方法 | |
US20220108757A1 (en) | Memory device 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: 20220222 |
|
WW01 | Invention patent application withdrawn after publication |