CN110083545B - 数据存储装置及其操作方法 - Google Patents
数据存储装置及其操作方法 Download PDFInfo
- Publication number
- CN110083545B CN110083545B CN201811149846.6A CN201811149846A CN110083545B CN 110083545 B CN110083545 B CN 110083545B CN 201811149846 A CN201811149846 A CN 201811149846A CN 110083545 B CN110083545 B CN 110083545B
- Authority
- CN
- China
- Prior art keywords
- read
- read command
- command
- segment
- data storage
- 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.)
- Active
Links
Classifications
-
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- 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/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0607—Interleaved addressing
-
- 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/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0646—Configuration or reconfiguration
-
- 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
- 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/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
-
- 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/62—Details of cache specific to multiprocessor cache arrangements
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Human Computer Interaction (AREA)
Abstract
本发明涉及一种数据存储装置,该数据存储装置可包括:非易失性存储器装置,包括彼此读取交叉的第一和第二存储器区域;以及处理器,在从主机装置接收的读取命令中选择第一读取命令,在除第一读取命令以外的读取命令中选择第二读取命令,并且控制非易失性存储器装置同时对第一和第二读取命令执行映射读取。处理器将与第一读取命令读取交叉的至少一个读取命令选择为第二读取命令。
Description
相关申请的交叉引用
本申请要求于2018年1月25日向韩国知识产权局提交的申请号为10-2018-0009577的韩国专利申请的优先权,其全部内容通过引用并入本文。
技术领域
各个实施例总体涉及一种半导体装置,更特别地,涉及一种数据存储装置及其操作方法。
背景技术
近来,计算环境范例已经变成普适计算环境,可以在任何时间和任何地点使用计算机系统。因此,诸如移动电话、数码相机和笔记本电脑的便携式电子装置的使用已经快速增长。便携式电子装置通常使用包括存储器装置的数据存储装置。
因为使用存储器装置的数据存储装置不具有机械驱动器,所以数据存储装置展现出优良的稳定性和耐用性、高速访问信息以及具有低功耗。具有这种优点的数据存储装置可包括通用串行总线(USB)存储器装置、具有各种接口的存储卡、通用闪速存储(UFS)装置和固态硬盘(SSD)。
发明内容
各个实施例涉及一种具有增强的读取性能的数据存储装置及其操作方法。
在实施例中,一种数据存储装置可包括:非易失性存储器装置,包括配置成彼此读取交叉(read-interleave)的第一和第二存储器区域;以及处理器,配置成在从主机装置接收的读取命令中选择第一读取命令,在除第一读取命令以外的读取命令中选择第二读取命令,并且控制非易失性存储器装置同时对第一和第二读取命令执行映射读取。处理器选择配置成与第一读取命令读取交叉的至少一个读取命令作为第二读取命令。
在实施例中,一种数据存储装置的操作方法可包括以下步骤:在从主机装置接收的读取命令中选择第一读取命令;在除第一读取命令以外的读取命令中,选择配置成与第一读取命令读取交叉的第二读取命令;并且控制非易失性存储器装置同时对第一和第二读取命令执行映射读取。
附图说明
图1是示出根据本公开的实施例的数据存储装置的框图。
图2A示出了非易失性存储器装置的示例性配置。
图2B和图2C示出了包括在图2A的非易失性存储器装置中的管芯的示例性配置。
图3A示出了地址映射表AMT的示例性配置。
图3B示出了图3A的L2映射表的示例性配置。
图3C示出了图3A的L1映射表的示例性配置。
图3D示出了存储在L1映射表中的L2P段条目的存储位置的变化。
图4A示出了图1的映射高速缓冲器的示例性配置。
图4B示出了图4A的L2高速缓存表的示例性配置。
图5示出了等待执行的读取命令之中的可被同时执行映射读取的示例性读取命令。
图6是示出根据本公开的实施例的数据存储装置的操作方法的流程图。
图7是示出根据本公开的实施例的图6的步骤S620的详情的流程图。
图8是示出根据本公开的实施例的包括固态驱动器(SSD)的数据处理系统的示图。
图9是示出图8所示的示例性控制器的示图。
图10是示出根据本公开的实施例的包括数据存储装置的数据处理系统的示图。
图11是示出根据本公开的实施例的包括数据存储装置的数据处理系统的示图。
图12是示出根据本公开的实施例的包括数据存储装置的网络系统的示图。
图13是示出被包括根据本公开的实施例的在数据存储装置中的非易失性存储器装置的框图。
具体实施方式
下面将参照附图描述根据本公开的实施例的数据存储装置及其操作方法。在整个说明书中,对“实施例”等的参考不一定仅针对一个实施例,并且对“实施例”等的不同参考不一定针对相同的实施例。
图1是示出根据实施例的数据存储装置10的框图。在本实施例中,数据存储装置10可存储由诸如移动电话、MP3播放器、膝上型计算机、台式计算机、游戏机、电视(TV)或车载信息娱乐系统等的主机装置(未示出)访问的数据。数据存储装置10可被称为存储器系统。
根据表示与主机装置之间的传输协议的主机接口,数据存储装置10可被实施为各种存储装置中的任意一种。例如,数据存储装置10可利用包括以下的各种存储装置中的任意一种来实现:固态硬盘(SSD)、多媒体卡(例如,MMC、eMMC、RS-MMC或微型-MMC)、安全数字(SD)卡(例如,迷你-SD或微型-SD)、通用串行总线(USB)存储装置、通用闪存(UFS)装置、个人计算机存储卡国际协会(PCMCIA)卡型存储装置、外围组件互连(PCI)卡型存储装置、高速PCI(PCI-e或PCIe)卡型存储装置、标准闪存(CF)卡、智能媒体卡以及记忆棒。
数据存储装置10可以包括以下的各种封装类型中的任意一种制造:堆叠封装(POP)、片上系统(SOC)、多芯片封装(MCP)、板上芯片(COB)、晶圆级制造封装(WFP)以及晶圆级堆叠封装(WSP)。
参照图1,数据存储装置10可包括非易失性存储器装置100和控制器200。
非易失性存储器装置100可操作为数据存储装置10的存储介质。根据存储器单元,非易失性存储器装置100可利用包括以下的各种非易失性存储器装置中的任意一种来实现:NAND闪速存储器装置、NOR闪速存储器装置、使用铁电电容器的铁电随机存取存储器(FRAM)、使用隧穿磁阻(TMR)膜的磁性随机存取存储器(MRAM)、使用硫族化物合金的相变随机存取存储器(PRAM)以及使用过渡金属氧化物的电阻式随机存取存储器(ReRAM)。
非易失性存储器装置100可包括存储器单元阵列,该存储器单元阵列具有布置在多个位线(未示出)和多个字线(未示出)之间的各个交叉区域处的多个存储器单元。存储器单元阵列可包括多个存储块,并且存储块中的每一个可包括多个页面。
例如,存储器单元阵列中的每一个存储器单元可以是能够存储一位数据的单层单元(SLC)、能够存储2位数据的多层单元(MLC)、能够存储3位数据的三层单元(TLC)或能够存储4位数据的四层单元(QLC)。存储器单元阵列可包括SLC、MLC、TLC和QLC中的一个或多个。例如,存储器单元阵列可包括二维(2D)结构的存储器单元或三维(3D)结构的存储器单元。
图2A示出了例如图1的非易失性存储器装置100的非易失性存储器装置的配置。图2B和图2C示出了包括在非易失性存储器装置中的管芯的示例性配置。非易失性存储器装置100中的多个管芯D1至Di中的每一个可具有相同的配置。因此,为了简化,图2B和图2C示出了第一管芯D1的细节,应理解的是第二至第i管芯D2至Di可具有相同的配置。
参照图2A,非易失性存储器装置100可包括多个管芯D1至Di。
参照图2B,第一管芯D1可包括多个平面,例如四个平面PL1至PL4。然而,管芯中平面的数量不限于任何特定数量。第一至第四平面PL1至PL4中的每一个可包括多个存储块B1至Bn。
第一管芯D1中的第一至第四平面PL1至PL4可被划分成两个平面组PLG1和PLG2。图2示出了将两个相邻的平面,例如第一和第二平面PL1和PL2设置为一个平面组,即第一平面组PLG1,并且将第三和第四平面PL3和PL4设置为另一平面组,即第二平面组PLG2。
可选地,可以其它方式,例如通过对远距离定位的平面进行分组而非对相邻的平面进行分组来生成平面组PLG中的每一个。此外,一个管芯中的平面组的数量和平面组的每一个中的平面的数量不被特别限制,而是可根据设计和需要而变化。
虽然未在图2B中示出,但第一至第四平面PL1至PL4的每一个中的存储块B1至Bn中的每一个可包括多个页面。为了清楚起见,图2B仅示出了存储块B1至Bn,图2C示出了存储块B1至Bn中的多个页面。
参照图2C,第一至第四平面PL1至PL4中的每一个可包括多个页面PG1至PGm,其中m表示大于或等于1的整数。此外,当图2B所示的存储块B1至Bn中的每一个中的页面数量是p时,m可以是n×p。也就是说,平面PL1至PL4中的每一个中的页面数量可以等于平面PL1至PL4的每一个中的各个存储块B1至Bn中包括的页面数量的总和。
在本实施例中,第一和第二平面组PLG1和PLG2中的每一个可对应于可执行读取交叉的读取交叉单位。读取交叉可表示同时访问多个存储器区域,以便同时对各个存储器区域执行读取操作。读取交叉单位可表示可执行读取交叉的存储器区域。
在本实施例中,可对从第一平面组PLG1中的平面,即第一和第二平面PL1和PL2中选择的一个平面以及从第二平面组PLG2中的平面,即第三和第四平面PL3和PL4中选择的一个平面来执行读取交叉。例如,当分别从第一平面组PLG1和第二平面组PLG2中选择了第一平面PL1和第三平面PL3时,可同时访问在第一平面PL1中的多个页面PG1至PGm中选择的一个或多个页面以及在第三平面PL3中的多个页面PG1至PGm中选择的一个或多个页面,以便执行读取交叉。
再次参照图1,非易失性存储器装置100可包括地址映射表AMT。
图3A示出了地址映射表AMT的配置。
参照图3A,地址映射表AMT可包括L1映射表和L2映射表。
L2映射表可存储对应于逻辑块地址LBA的物理块地址PBA。可从主机装置接收逻辑块地址LBA。
图3B示出了图3A的L2映射表的配置,图3C示出了图3A的L1映射表的配置。
参照图3B,L2映射表可包括多个L2P段L2P S1至L2P Sj。可通过将从主机装置接收的整个逻辑地址划分成预定数量的组来生成多个L2P段L2P S1至L2P Sj。当主机装置可传输到数据存储装置10的逻辑地址的数量为k(例如,第一至第k逻辑地址LBA1到LBAk)时,第一至第j L2P段L2P S1至L2P Sj中的每一个可包括k/j个逻辑地址LBA。例如,当主机装置可传输到数据存储装置10的逻辑地址的数量为10,000并且L2P段的数量为100时,L2P段中的每一个可包括100个逻辑地址。
L2P段L2P S1至L2P Sj中的每一个可包括对应于各个逻辑地址LBA的多个物理地址PBA。图3B示出了L2P段L2P S1至L2P Sj中的每一个包括四个逻辑地址LBA和对应于各个逻辑地址LBA的四个物理地址PBA。一个逻辑地址LBA和一个映射到该逻辑地址LBA的物理地址PBA可被称为逻辑到物理(L2P)条目。
L2P段L2P S1至L2P Sj可被更新。当包括在L2P段L2P S1至L2P Sj中的每一个中的与逻辑地址LBA相对应的物理地址PBA被改变或被重新分配时,逻辑地址LBA可被映射到改变或分配的物理地址PBA,以便更新L2P段L2P S1至L2P Sj。可以L2P段为单位来执行更新。当物理到逻辑(P2L)表充满P2L条目时,L2P段L2P S1至L2P Sj可被更新,但L2P段L2P S1至L2P Sj的更新时间不特别限于此。P2L表可被包括在例如图1的230的随机存取存储器中。
为了方便,图3B示出了L2P映射表的L2P段L2P S1至L2P Sj被顺序地存储。然而,L2P段L2P S1至L2P Sj可被随机地存储,并且可存储在不同的存储块中。其原因在于,因为存储有L2映射表的非易失性存储器装置100不能执行重写,所以每当更新L2P段L2P S1至L2P Sj时,将L2P段L2P S1至L2P Sj存储在与之前存储L2P段L2P S1至L2P Sj的位置不同的位置。因此,当更新任意L2P段时,也需要更新与存储相应L2P段的位置相关的信息。
再次参照图3A,L1映射表可存储包括在L2映射表中的L2P段L2P S1至L2P Sj的位置信息,即物理地址PBA。一个L2P段和映射到该L2P段的物理地址可被称为L2P段条目。L1映射表可配置成存储L2P段条目,其中L2P段条目与包括在管芯D1至Di的每一个中的平面组PLG1和PLG2的各个平面PL1至PL4相对应。
参照图3C,L1映射表可包括第一至第i区域R1至Ri。例如,包括映射到与第一管芯D1相对应的物理地址PBA的逻辑地址LBA的L2P段条目可被存储在第一区域R1中。包括映射到与第i管芯Di相对应的物理地址PBA的逻辑地址LBA的L2P段条目可被存储在第i区域Ri中。
第一至第i区域R1至Ri可被划分为对应管芯D1至Di中包括的平面组(例如,第一和第二平面组PLG1和PLG2)。平面组中的每一个可被划分成对应的平面。例如,第一平面组PLG1可被划分为第一和第二平面PL1和PL2,第二平面组PLG2可被划分为第三和第四平面PL3和PL4。
根据与相应L2P段中的物理地址PBA相对应的管芯、平面组PLG和平面PL,各个L2P段L2P S1至L2P Sj的L2P段条目的每一个可被存储在L1映射表的相应区域的相应位置中。例如,如图3C所示,当映射到第一L2P段L2P S1中的逻辑地址LBA的物理地址PBA对应于第一管芯D1的第一平面组PLG1的第一平面PL1时,包括第一L2P段L2P S1的物理地址(例如,PBAa)的L2P段条目可被存储在与L1映射表的第一区域R1的第一平面PL1相对应的位置中。
图3D示出了存储在L1映射表中的L2P段条目的位置被改变。存储在L1映射表中的L2P段条目的位置可在映射更新期间改变。
例如,在映射更新期间,当与包括在第四L2P段L2P S4中的逻辑地址LBA相对应的物理地址PBA的位置从第一管芯D1的第二平面PL2改变到第一平面PL1时,可通过将包括第四L2P段L2P S4的存储位置信息(例如,PBAi)的L2P段条目的存储位置改变到与第一管芯D1的第一平面PL1相对应的位置来更新L1映射表,同时将已改变映射物理地址的第四L2P段L2P S4存储在非易失性存储器装置100的L2映射表中。
再次参照图1,控制器200可包括主机接口(I/F)210、处理器220、随机存取存储器(RAM)230和存储器接口(I/F)240。
主机接口210可将主机装置(未示出)和数据存储装置10接口连接。例如,主机接口210可使用包括以下的标准传输协议中的任意一种来与主机装置通信:USB、UFS、MMC、并行高级技术附件(PATA)、串行高级技术附件(SATA)、小型计算机系统接口(SCSI)、串列SCSI(SAS)、外围组件互连(PCI)和PCI-e。
处理器220可包括微控制单元(MCU)或中央处理单元(CPU)。处理器220可处理从主机装置接收的请求。处理器220可驱动被加载到RAM 230中的基于代码的指令或算法,即软件以处理请求,并且控制内部功能块和非易失性存储器装置100。
RAM 230可利用动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM)来实施。RAM 230可存储由处理器220驱动的软件。此外,RAM 230可存储驱动软件所需的数据。也就是说,RAM 230可用作处理器220的工作存储器。
当利用闪速存储器装置实施非易失性存储器装置100时,处理器220可控制非易失性存储器装置100的独特(unique)操作,并驱动被称为闪存转换层(FTL)的软件,以便向主机装置提供装置兼容性。通过FTL的操作,主机装置可识别并使用数据存储装置10作为通用数据存储装置,例如硬盘。加载到RAM 230的FTL可包括用于执行各种功能的模块和驱动这些模块所需的元数据。
RAM 230可临时存储待从主机装置传输到非易失性存储器装置100或者待从非易失性存储器装置100传输到主机装置的数据。也就是说,RAM 230可用作数据缓冲存储器或数据高速缓存存储器。
RAM 230可包括用于顺序地排队从主机装置接收的命令的命令队列CMDQ和用于高速缓存映射数据的映射高速缓冲器MCB。
图4A示出了映射高速缓冲器MCB的配置。
参照图4A,映射高速缓冲器MCB可包括L1高速缓存和L2高速缓存表。
L1高速缓存表可配置成存储各个L2P段L2P S1至L2P Sj的L2P段条目。当数据存储装置10通电时,L1高速缓存表可对应于从非易失性存储器装置100的地址映射表AMT读取的L1映射表。因此,L1高速缓存表可具有与图3C所示的L1映射表相同的配置。在实施例中,L1高速缓存表可仅对存储在L1映射表中的L2P段条目的一部分进行高速缓存。
图4B示出了图4A的L2高速缓存表的配置。
参照图4B,L2高速缓存表可配置成对从如图3B所示的地址映射表AMT的L2映射表读取的L2P段进行高速缓存。L2高速缓存表可对存储在地址映射表AMT的L2映射表中的第一至第j L2P段L2P S1至L2P Sj的一部分进行高速缓存。例如,L2高速缓存表可对包括最近从主机装置请求的或经常从主机装置请求的逻辑地址的L2P段进行高速缓存。图4B示出了第二L2P段L2P S2、第四L2P段L2P S4和第六L2P段L2P S6被高速缓存在L2高速缓存表中。
当从主机装置接收到读取命令和待读取逻辑地址时,处理器220可首先检查包括待读取逻辑地址的L2P段是否被高速缓存在映射高速缓冲器MCB的L2高速缓存表中。当相应L2P段被高速缓存在映射高速缓冲器MCB的L2高速缓存表中时,处理器220可通过参考高速缓存的L2P段,将待读取逻辑地址转换成对应的物理地址。当相应L2P段未被高速缓存在映射高速缓冲器MCB的L2高速缓存表中时,处理器220可从非易失性存储器装置100的地址映射表AMT的L2映射表中读取相应L2P段,将读取的L2P段高速缓存到映射高速缓冲器MCB中,并且通过参考高速缓存的L2P段将待读取逻辑地址转换成对应的物理地址。
这种从非易失性存储器装置100中的地址映射表AMT的L2P映射表中读取L2P段并且将读取的L2P段高速缓存到随机存取存储器230的映射高速缓冲器MCB中的一系列进程可被称为映射读取操作。随着映射读取操作的次数增加,读取性能不可避免地会下降。
在本实施例中,处理器220可通过参考L1高速缓存表,在命令队列CMDQ中排队的读取命令RCMD之中选择可进行读取交叉且需要映射读取操作的读取命令RCMD,并且针对所选择的读取命令RCMD来同时映射读取L2P段。因此,可减少映射读取操作的次数,同时可提高读取性能。
图5示出了等待执行的读取命令之中的可同时执行映射读取操作的读取命令。为了方便,假设三个读取命令RCMD1至RCMD3在图1所示的RAM 230的命令队列CMDQ中排队。
参照图5,处理器220可从在命令队列CMDQ中排队并等待执行的读取命令RCMD1至RCMD3中随机选择一个读取命令。处理器220可在读取命令RCMD1至RCMD3中优先选择需要映射读取操作的读取命令。例如,假设选择了第一读取命令RCMD1。在这种情况下,处理器220可基于所选择的第一读取命令RCMD1,在未选择的读取命令(例如,第二和/或第三读取命令RCMD2和RCMD3)中附加地选择可与第一读取命令RCMD1进行读取交叉并且需要映射读取操作的另一读取命令。
处理器220可通过参考L1高速缓存表,在第二和第三读取命令RCMD2和RCMD3之中选择可与第一读取命令RCMD1进行交叉的读取命令。例如,处理器220可通过参考与图3C中所示的L1映射表相对应的L1高速缓存表,来检查包括第一读取命令RCMD1的待读取逻辑地址(例如,LBA3)的L2P段(例如,L2P S1)条目的存储位置,即第一管芯D1的第一平面组PLG1。因为可与第一管芯D1中的第一平面组PLG1进行读取交叉的存储器区域是第一管芯D1中的第二平面组PLG2,所以处理器220可在命令队列CMDQ中排队的第二读取命令RCMD2和第三读取命令RCMD3之中选择具有与第一管芯D1中的第二平面组PLG2相对应的待读取逻辑地址的读取命令。
也就是说,处理器220可通过参考L1高速缓存表,来检查包括第二读取命令RCMD2的待读取逻辑地址(例如,LBA9)的L2P段(L2P S3)条目的存储位置和包括第三读取命令RCMD3的待读取逻辑地址(例如,LBA1)的L2P段(L2P S1)条目的存储位置。如图3C所示,因为包括第二读取命令RCMD2的待读取逻辑地址(例如,LBA9)的L2P段(L2P S3)条目被存储在与第一管芯D1的第二平面组PLG2相对应的位置,所以处理器220可附加地选择第二读取命令RCMD2。
处理器220可通过参考映射高速缓冲器MCB的L2高速缓存表,来确定第二读取命令RCMD2是否需要映射读取操作。如图4B所示,针对第二读取命令RCMD2的第三L2P段L2P S3未被高速缓存在L2高速缓存表中。因此,处理器220可确定第二读取命令RCMD2需要映射读取操作。当针对第二读取命令RCMD2的第三L2P段L2P S3被高速缓存在L2高速缓存表中时,处理器220可确定第二读取命令RCMD2不需要映射读取操作,并且在等待执行的读取命令中重新选择可与第一读取命令RCMD1进行读取交叉的读取命令。
处理器220可控制非易失性存储器装置100同时从非易失性存储器装置100的地址映射表AMT的L2映射表中读取针对第一和第二读取命令RCMD1和RCMD2的第一和第三L2P段L2P S1和L2P S3。处理器220可将从非易失性存储器装置100提供的第一和第三L2P段L2PS1和L2P S3高速缓存到映射高速缓冲器MCB中。
在本实施例中,已经描述了同时执行针对两个读取命令的映射读取操作。然而,本发明不限于这种方式;可同时执行针对可进行交叉的所有读取命令的映射读取操作。
因为可同时执行针对可进行读取交叉的读取命令的映射读取操作,所以可以减少映射读取操作的次数,这使得可以提高读取性能。
再次参照图1,存储器接口240可根据处理器220的控制来控制非易失性存储器装置100。存储器接口240可被称为存储器控制器。存储器接口240可将控制信号提供给非易失性存储器装置100。控制信号可包括用于控制非易失性存储器装置100的命令和地址。存储器接口240可将数据提供给非易失性存储器装置100或从非易失性存储器装置100接收数据。存储器接口240可通过包括一个或多个信号线的通道CH联接到非易失性存储器装置100。
图6是示出根据实施例的操作数据存储装置的方法的流程图。参照图6,同时参照图1至4B来描述根据本实施例的操作数据存储装置的方法。
在步骤S610中,图1的处理器220可在命令队列CMDQ中排队的、等待执行的读取命令中选择第一读取命令。处理器220可选择请求映射读取操作的读取命令作为第一读取命令。
在步骤S620中,处理器220可在其它读取命令中附加地选择可与第一读取命令进行读取交叉并且需要映射读取操作的第二读取命令。
在步骤S630中,处理器220可分别对在步骤S610和S620中选择的第一和第二读取命令执行映射读取。
图7是示出根据实施例的步骤S620的细节的流程图。参照图7,将如下描述处理器220附加地选择第二读取命令的操作。
在步骤S621中,处理器220可通过参考图4A所示的L1高速缓存表或图3C所示的L1映射表,从等待执行的其它读取命令中选择可与第一读取命令进行读取交叉的第二读取命令。因为以上已经详细描述了读取交叉和确定是否可进行读取交叉的操作,所以在此将省略对其的描述。
在步骤S623中,处理器220可通过参考图4B所示的L2高速缓存表来检查针对第二读取命令的L2P段是否被高速缓存。
在步骤S625中,处理器220可确定第二读取命令是否需要映射读取操作。例如,处理器220可基于在步骤S623中通过参考L2高速缓存表而检查针对第二读取命令的L2P段是否被高速缓存而获得的结果,来确定第二读取命令是否需要映射读取操作。
当确定第二读取命令需要映射读取操作时,该方法可继续进行至步骤S630。另一方面,当确定第二读取命令不需要映射读取操作时,该方法可返回至步骤S621,并且处理器220可重新选择可与之前选择的第一读取命令进行读取交叉的第二读取命令。
根据实施例,数据存储装置可对等待执行的读取命令之中的、可彼此进行读取交叉的读取命令执行映射读取操作。
因此,可减少映射读取操作的次数,同时提高读取性能。
图8是示出根据实施例的数据处理系统2000的示图。参照图8,数据处理系统2000可包括主机装置2100和固态驱动器(SSD)2200。
SSD 2200可包括控制器2210、缓冲存储器装置2220、非易失性存储器装置2231至223n、电源2240、信号连接器2250和电源连接器2260。
控制器2210可控制SSD 2220的全部操作。
缓冲存储器装置2220可临时存储待存储在非易失性存储器装置2231至223n中的数据。缓冲存储器装置2220可临时存储从非易失性存储器装置2231至223n读取的数据。被临时存储在缓冲存储器装置2220中的数据可根据控制器2210的控制而被传输到主机装置2100或非易失性存储器装置2231至223n。
非易失性存储器装置2231至223n可用作SSD 2200的存储介质。非易失性存储器装置2231至223n可通过多个通道CH1至CHn联接到控制器2210。一个或多个非易失性存储器装置可联接到一个通道。联接到一个通道的非易失性存储器装置可联接到相同的信号总线和相同的数据总线。
电源2240可将通过电源连接器2260输入的电力PWR提供至SSD 2200的内部。电源2240可包括辅助电源2241。辅助电源2241可提供电力,使得即使发生突然断电,SSD 2200也正常地终止。辅助电源2241可包括至少一个能够充电电力PWR的大容量电容器。
控制器2210可通过信号连接器2250与主机装置2100交换信号SGL。信号SGL可包括命令、地址、数据等。根据主机装置2100和SSD 2200之间的接口连接方法,信号连接器2250可被配置为各种类型的连接器。
图9是示出图8的控制器2210的示图。参照图9,控制器2210可包括主机接口2211、控制部件2212、随机存取存储器(RAM)2213、错误校正码(ECC)部件2214和存储器接口2215。
主机接口2211可根据主机装置2100的协议来执行主机装置2100和SSD 2200之间的接口连接。例如,主机接口2211可通过以下中的任意一种与主机装置2100进行通信:安全数字协议、通用串行总线(USB)协议、多媒体卡(MMC)协议、嵌入式MMC(eMMC)协议、个人计算机存储卡国际协会(PCMCIA)协议、并行高级技术附件(PATA)协议、串行高级技术附件(SATA)协议、小型计算机系统接口(SCSI)协议、串列SCSI(SAS)协议、外围组件互连(PCI)协议、高速PCI(PCI-e)协议和通用闪存(UFS)协议。主机接口2211可执行磁盘模拟功能,即主机装置2100将SSD 2200识别为例如硬盘驱动器(HDD)的通用数据存储设备。
控制部件2212可分析和处理从主机装置2100输入的信号SGL。控制部件2212可根据用于驱动SSD 2200的固件和/或软件来控制内部功能块的操作。RAM 2213可操作为用于驱动固件或软件的工作存储器。
ECC部件2214可生成用于待被传输到非易失性存储器装置2231至223n的数据的奇偶校验数据。生成的奇偶校验数据可与该数据一起被存储在非易失性存储器装置2231至223n中。ECC部件2214可基于奇偶校验数据来检测从非易失性存储器装置2231至223n读取的数据的错误。当检测到的错误在可校正范围内时,ECC部件2214可校正检测到的错误。
存储器接口2215可根据控制部件2212的控制将诸如命令和地址的控制信号提供给非易失性存储器装置2231至223n。存储器接口2215可根据控制部件2212的控制与非易失性存储器装置2231至223n交换数据。例如,存储器接口2215可将存储在缓冲存储器装置2220中的数据提供给非易失性存储器装置2231至223n,或者将从非易失性存储器装置2231至223n读取的数据提供给缓冲存储器装置2220。
图10是示出根据实施例的数据处理系统3000的示图。参照图10,数据处理系统3000可包括主机装置3100和数据存储装置3200。
主机装置3100可以诸如印制电路板(PCB)的板形式配置。虽然未在图10中示出,但主机装置3100可包括配置成执行主机装置3100的功能的内部功能块。
主机装置3100可包括诸如插座、插槽或连接器的连接端子3110。数据存储装置3200可被安装在连接端子3110上。
数据存储装置3200可以诸如印刷电路板(PCB)的板形式配置。数据存储装置3200可指存储器模块或存储卡。数据存储装置3200可包括控制器3210、缓冲存储器装置3220、非易失性存储器装置3231至3232、电源管理集成电路(PMIC)3240和连接端子3250。
控制器3210可控制数据存储装置3200的全部操作。控制器3210可具有与图9所示的控制器2210相同的配置。
缓冲存储器装置3220可临时存储待被存储在非易失性存储器装置3231和3232中的数据。缓冲存储器装置3220可临时存储从非易失性存储器装置3231和3232读取的数据。根据控制器3210的控制,被临时存储在缓冲存储器装置3220中的数据可被传输到主机装置3100或非易失性存储器装置3231和3232。
非易失性存储器装置3231和3232可用作数据存储装置3200的存储介质。
PMIC 3240可将通过连接端子3250输入的电力提供到数据存储装置3200的内部。PMIC 3240可根据控制器3210的控制来管理数据存储装置3200的电力。
连接端子3250可联接到主机装置3100的连接端子3110。可通过连接端子3250,在主机装置3100和数据存储装置3200之间传输诸如命令、地址、数据的信号和电力。根据主机装置3100与数据存储装置3200之间的接口连接方法,连接端子3250可以各种形式进行配置。连接端子3250可被布置在数据存储设备3200的任意一侧。
图11是示出根据实施例的数据处理系统4000的示图。参照图11,数据处理系统4000可包括主机装置4100和数据存储装置4200。
主机装置4100可以诸如印刷电路板(PCB)的板形式配置。虽然未在图11中示出,但主机装置4100可包括配置成执行主机装置4100的功能的内部功能块。
数据存储装置4200可以表面安装封装形式进行配置。数据存储装置4200可通过焊球4250安装在主机装置4100上。数据存储装置4200可包括控制器4210、缓冲存储器装置4220和非易失性存储器装置4230。
控制器4210可控制数据存储装置4200的全部操作。控制器4210可具有与图9所示的控制器2210相同的配置。
缓冲存储器装置4220可临时存储待被存储在非易失性存储器装置4230中的数据。缓冲存储器装置4220可临时存储从非易失性存储器装置4230读取的数据。通过控制器4210的控制,被临时存储在缓冲存储器装置4220中的数据可被传输到主机装置4100或非易失性存储器装置4230。
非易失性存储器装置4230可用作数据存储装置4200的存储介质。
图12是示出根据实施例的网络系统5000的示图。参照图12,网络系统5000可包括通过网络5500联接的服务器系统5300和多个客户端系统5410至5430。
服务器系统5300可响应于多个客户端系统5410至5430的请求来供应数据。例如,服务器系统5300可存储从多个客户端系统5410至5430提供的数据。在另一示例中,服务器系统5300可将数据提供给多个客户端系统5410至5430。
服务器系统5300可包括主机装置5100和数据存储装置5200。数据存储装置5200可由图1的数据存储装置10、图8的数据存储装置2200、图10的数据存储装置3200或图11的数据存储装置4200来配置。
图13是示出包括在根据实施例的数据存储装置中的非易失性存储器装置100的框图。参照图13,非易失性存储器装置100可包括存储器单元阵列110、行解码器120、列解码器140、数据读取和写入(读取/写入)块130、电压发生器150和控制逻辑160。
存储器单元阵列110可包括布置在字线WL1至WLm和位线BL1至BLn彼此交叉的区域中的存储器单元MC。
行解码器120可通过字线WL1至WLm联接到存储器单元阵列110。行解码器120可通过控制逻辑160的控制来进行操作。行解码器120可对从外部设备(未示出)提供的地址进行解码。行解码器120可基于解码结果来选择并驱动字线WL1至WLm。例如,行解码器120可将从电压发生器150提供的字线电压提供给字线WL1至WLm。
数据读取/写入块130可通过位线BL1至BLn联接到存储器单元阵列110。数据读取/写入块130可包括对应于位线BL1至BLn的读取/写入电路RW1至RWn。数据读取/写入块130可根据控制逻辑160的控制来操作。数据读取/写入块130可根据操作模式而用作写入驱动器或读出放大器。例如,在写入操作中,数据读取/写入块130可用作写入驱动器,将从外部设备提供的数据存储在存储器单元阵列110中。在另一示例中,在读取操作中,数据读取/写入块130可用作读出放大器,从存储器单元阵列110读取数据。
列解码器140可通过控制逻辑160的控制来进行操作。列解码器140可对从外部设备(未示出)提供的地址进行解码。列解码器140可基于解码结果将数据读取/写入块130的、与位线BL1至BLn相对应的读取/写入电路RW1至RWn与数据输入/输出(I/O)线(或数据I/O缓冲器)联接。
电压发生器150可生成用于非易失性存储器装置100的内部操作的电压。通过电压发生器150生成的电压可被施加到存储器单元阵列110的存储器单元。例如,可将在编程操作中生成的编程电压施加到待执行编程操作的存储器单元的字线。在另一示例中,在擦除操作中生成的擦除电压可被施加到待执行擦除操作的存储器单元的阱区。在另一示例中,在读取操作中生成的读取电压可被施加到待执行读取操作的存储器单元的字线。
控制逻辑160可基于从外部设备提供的控制信号来控制非易失性存储器装置100的全部操作。例如,控制逻辑160可控制非易失性存储器装置100的操作,例如非易失性存储器装置100的读取操作、写入操作和擦除操作。
本发明的上述实施例旨在说明而非限制本发明。根据前述公开,对本领域技术人员显而易见的是,各种替换和等同物是可能的。因此,本发明不受本文所述的实施例的限制。本发明也不限于任何特定类型的半导体器装置。鉴于本公开,对于本领域技术人员显而易见的所有变化和修改都被包括在所附权利要求的范围内。
Claims (13)
1.一种数据存储装置,包括:
非易失性存储器装置,包括彼此读取交叉的第一存储器区域和第二存储器区域;以及
处理器:
在从主机装置接收的读取命令中选择第一读取命令,所述第一读取命令的相应逻辑到物理段即L2P段没有被高速缓存在随机存取存储器即RAM中,在除所述第一读取命令以外的读取命令中选择第二读取命令,所述第二读取命令要与所述第一读取命令进行读取交叉,其中所述第二读取命令是相应的L2P段没有被高速缓存在所述RAM中的命令;并且
控制所述非易失性存储器装置同时对所述第一读取命令和所述第二读取命令执行映射读取,
其中所述映射读取包括读取用于转换与所述第一读取命令和所述第二读取命令相对应的逻辑地址与所述非易失性存储器装置的物理地址的映射信息并且将读取的映射信息高速缓存在所述RAM中。
2.根据权利要求1所述的数据存储装置,其中所述RAM包括用于对从所述主机装置接收的读取命令进行排队的命令队列,
其中所述处理器在所述命令队列中排队的读取命令之中选择所述第一读取命令和所述第二读取命令。
3. 根据权利要求2所述的数据存储装置,其中所述RAM包括:
L1高速缓存表,所述L1高速缓存表中存储包括与所述第一存储器区域相对应的物理地址的逻辑到物理段,即L2P段和包括与所述第二存储器区域相对应的物理地址的L2P段,以针对各个存储器区域而彼此区分开;以及
L2高速缓存表,高速缓存针对所述第一存储器区域和所述第二存储器区域的L2P段的一部分。
4.根据权利要求3所述的数据存储装置,其中所述处理器基于所述L2高速缓存表在所述读取命令中选择需要所述映射读取的读取命令作为所述第一读取命令。
5.根据权利要求3所述的数据存储装置,其中所述处理器通过参考所述L1高速缓存表来选择读取命令中的与所述第一读取命令进行读取交叉的读取命令,通过参考所述L2高速缓存表来检查与所选择的读取命令相对应的L2P段是否被高速缓存在所述RAM中,并且确定所选择的读取命令是否需要所述映射读取。
6.根据权利要求5所述的数据存储装置,其中当针对所述所选择的读取命令需要所述映射读取时,所述处理器选择所述所选择的读取命令作为第二读取命令,并且控制所述非易失性存储器装置同时对所述第一读取命令和所述第二读取命令执行所述映射读取。
7.根据权利要求5所述的数据存储装置,其中当针对所述所选择的读取命令不需要所述映射读取时,所述处理器在除所述第一读取命令和所述所选择的读取命令以外的读取命令之中选择与所述第一读取命令读取交叉并且需要所述映射读取的读取命令作为所述第二读取命令。
8.一种数据存储装置的操作方法,所述数据存储装置包括:非易失性存储器装置,包括彼此读取交叉的第一存储器区域和第二存储器区域;以及控制器,控制所述非易失性存储器装置的操作,所述操作方法包括:
在从主机装置接收的读取命令中选择第一读取命令,所述第一读取命令的相应逻辑到物理段即L2P段没有被高速缓存在随机存取存储器即RAM中;
在除所述第一读取命令以外的读取命令中,选择与所述第一读取命令读取交叉的第二读取命令,其中所述第二读取命令是相应的L2P段没有被高速缓存在所述RAM中的命令;并且
控制所述非易失性存储器装置同时对所述第一读取命令和所述第二读取命令执行映射读取,
其中所述映射读取包括读取用于转换与所述第一读取命令和所述第二读取命令相对应的逻辑地址与所述非易失性存储器装置的物理地址的映射信息并且将读取的映射信息高速缓存在所述RAM中。
9.根据权利要求8所述的操作方法,其中选择所述第一读取命令包括在从所述主机装置接收的读取命令之中选择需要映射读取的读取命令作为所述第一读取命令。
10.根据权利要求8所述的操作方法,其中所述RAM包括:L1高速缓存表和L2高速缓存表,所述L1高速缓存表中存储包括与所述第一存储器区域相对应的物理地址的逻辑到物理段,即L2P段和包括与所述第二存储器区域相对应的物理地址的L2P段,以针对各个存储器区域而彼此区分开;以及所述L2高速缓存表用于对所述L2P段的一部分进行高速缓存。
11. 根据权利要求10所述的操作方法,其中选择所述第二读取命令包括:
通过参考所述L1高速缓存表来选择读取命令中的与所述第一读取命令进行读取交叉的读取命令;并且
通过参考所述L2高速缓存表来检查针对所选择的读取命令的L2P段是否被高速缓存在所述RAM中,并且确定所述所选择的读取命令是否需要所述映射读取。
12.根据权利要求11所述的操作方法,进一步包括:
当针对所述所选择的读取命令需要所述映射读取时,选择所述所选择的读取命令作为所述第二读取命令。
13.根据权利要求11所述的操作方法,进一步包括:
当针对所述所选择的读取命令不需要所述映射读取时,在除所述第一读取命令和所述所选择的读取命令以外的读取命令之中选择与所述第一读取命令读取交叉并且需要所述映射读取的读取命令作为所述第二读取命令。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180009577A KR20190090635A (ko) | 2018-01-25 | 2018-01-25 | 데이터 저장 장치 및 그것의 동작 방법 |
KR10-2018-0009577 | 2018-01-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110083545A CN110083545A (zh) | 2019-08-02 |
CN110083545B true CN110083545B (zh) | 2023-08-18 |
Family
ID=67300009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811149846.6A Active CN110083545B (zh) | 2018-01-25 | 2018-09-29 | 数据存储装置及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10877887B2 (zh) |
KR (1) | KR20190090635A (zh) |
CN (1) | CN110083545B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180138394A (ko) * | 2017-06-21 | 2018-12-31 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이의 동작 방법 |
CN111610930B (zh) | 2019-02-26 | 2023-05-02 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器控制方法 |
CN111611178B (zh) | 2019-02-26 | 2023-05-26 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器控制方法 |
CN111610931B (zh) | 2019-02-26 | 2023-05-02 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器控制方法 |
CN111610929B (zh) * | 2019-02-26 | 2023-04-14 | 慧荣科技股份有限公司 | 数据储存装置以及非挥发式存储器控制方法 |
KR102406449B1 (ko) | 2020-06-25 | 2022-06-08 | 에스케이하이닉스 주식회사 | 스토리지 장치 및 그 동작 방법 |
KR102435253B1 (ko) | 2020-06-30 | 2022-08-24 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
KR102495910B1 (ko) | 2020-04-13 | 2023-02-06 | 에스케이하이닉스 주식회사 | 스토리지 장치 및 그 동작 방법 |
US11755476B2 (en) | 2020-04-13 | 2023-09-12 | SK Hynix Inc. | Memory controller, storage device including the memory controller, and method of operating the memory controller and the storage device |
US20220043588A1 (en) * | 2020-08-06 | 2022-02-10 | Micron Technology, Inc. | Localized memory traffic control for high-speed memory devices |
KR20220045342A (ko) * | 2020-10-05 | 2022-04-12 | 에스케이하이닉스 주식회사 | 호스트 장치, 데이터 저장 장치, 데이터 처리 시스템 및 데이터 처리 방법 |
CN112463650A (zh) * | 2020-11-27 | 2021-03-09 | 苏州浪潮智能科技有限公司 | 一种多核cpu下的l2p表的管理方法、设备以及介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100122720A (ko) * | 2009-05-13 | 2010-11-23 | 삼성전자주식회사 | 비휘발성 데이터 저장 장치의 읽기 및 쓰기 성능 향상 방법 |
WO2017139973A1 (zh) * | 2016-02-19 | 2017-08-24 | 华为技术有限公司 | 一种闪存设备的访问方法和装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100881052B1 (ko) | 2007-02-13 | 2009-01-30 | 삼성전자주식회사 | 플래시 메모리의 매핑 테이블 검색 시스템 및 그에 따른검색방법 |
US8959280B2 (en) * | 2008-06-18 | 2015-02-17 | Super Talent Technology, Corp. | Super-endurance solid-state drive with endurance translation layer (ETL) and diversion of temp files for reduced flash wear |
US8527544B1 (en) * | 2011-08-11 | 2013-09-03 | Pure Storage Inc. | Garbage collection in a storage system |
US9329991B2 (en) * | 2013-01-22 | 2016-05-03 | Seagate Technology Llc | Translation layer partitioned between host and controller |
US9383927B2 (en) * | 2014-05-28 | 2016-07-05 | SandDisk Technologies LLC | Method and system for creating a mapping table cache from an interleaved subset of contiguous mapping data for a storage device |
US9720860B2 (en) * | 2014-06-06 | 2017-08-01 | Toshiba Corporation | System and method for efficient processing of queued read commands in a memory system |
US9870157B2 (en) * | 2015-03-31 | 2018-01-16 | Toshiba Memory Corporation | Command balancing and interleaving for write and reads between front end and back end of solid state drive |
KR20170078307A (ko) * | 2015-12-29 | 2017-07-07 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작방법 |
US10387253B2 (en) * | 2017-08-25 | 2019-08-20 | Datera, Inc. | System and method to utilize larger block sizes for logical disk and further decompose into smaller physical block sizes for redundant encoding by utilizing erasure coding |
KR102535104B1 (ko) * | 2018-03-19 | 2023-05-23 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
US10713157B2 (en) * | 2018-05-31 | 2020-07-14 | Western Digital Technologies, Inc. | Storage system and method for improving read performance using multiple copies of a logical-to-physical address table |
-
2018
- 2018-01-25 KR KR1020180009577A patent/KR20190090635A/ko unknown
- 2018-08-23 US US16/110,503 patent/US10877887B2/en active Active
- 2018-09-29 CN CN201811149846.6A patent/CN110083545B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100122720A (ko) * | 2009-05-13 | 2010-11-23 | 삼성전자주식회사 | 비휘발성 데이터 저장 장치의 읽기 및 쓰기 성능 향상 방법 |
WO2017139973A1 (zh) * | 2016-02-19 | 2017-08-24 | 华为技术有限公司 | 一种闪存设备的访问方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
US10877887B2 (en) | 2020-12-29 |
KR20190090635A (ko) | 2019-08-02 |
CN110083545A (zh) | 2019-08-02 |
US20190227931A1 (en) | 2019-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110083545B (zh) | 数据存储装置及其操作方法 | |
CN110858129B (zh) | 数据存储装置及其操作方法 | |
CN111506516B (zh) | 数据存储装置及数据存储装置的操作方法 | |
US20190155723A1 (en) | Data storage device and operating method thereof | |
CN111414312B (zh) | 数据存储装置及其操作方法 | |
CN110874330B (zh) | 非易失性存储器装置、数据存储装置及其操作方法 | |
CN109992202B (zh) | 数据存储设备、其操作方法以及包括其的数据处理系统 | |
CN111414313B (zh) | 数据存储装置及数据存储装置的操作方法 | |
US20200218653A1 (en) | Controller, data storage device, and operating method thereof | |
CN110837342A (zh) | 数据存储装置及其操作方法 | |
CN112445421A (zh) | 数据存储装置及其操作方法 | |
US11520694B2 (en) | Data storage device and operating method thereof | |
CN111124273A (zh) | 数据存储装置及数据存储装置的操作方法 | |
KR20200121645A (ko) | 컨트롤러 및 그것의 동작 방법과 메모리 시스템 | |
CN113704138A (zh) | 存储装置及其操作方法 | |
CN110119326B (zh) | 数据存储装置及其操作方法 | |
CN111752858A (zh) | 控制器、存储器系统及其操作方法 | |
US11782638B2 (en) | Storage device with improved read latency and operating method thereof | |
US11461238B2 (en) | Storage device, memory controller, and method for fetching write commands from submission queues to perform full page writes | |
CN113806241A (zh) | 存储装置及其操作方法 | |
KR20190023196A (ko) | 데이터 저장 장치 | |
CN112988045A (zh) | 数据存储装置及其操作方法 | |
CN114385070B (zh) | 主机、数据存储装置、数据处理系统以及数据处理方法 | |
US20210397558A1 (en) | Storage device and operating method thereof | |
US11281590B2 (en) | Controller, operating method thereof and storage device including 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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |