CN110096222A - 存储器系统及存储器系统的操作方法 - Google Patents
存储器系统及存储器系统的操作方法 Download PDFInfo
- Publication number
- CN110096222A CN110096222A CN201811066744.8A CN201811066744A CN110096222A CN 110096222 A CN110096222 A CN 110096222A CN 201811066744 A CN201811066744 A CN 201811066744A CN 110096222 A CN110096222 A CN 110096222A
- Authority
- CN
- China
- Prior art keywords
- descriptor
- index
- memory
- storage system
- memory block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1666—Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
- G06F11/167—Error detection by comparing the memory output
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- 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/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- 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/7204—Capacity control, e.g. partitioning, end-of-life degradation
-
- 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/7208—Multiple device management, e.g. distributing data over multiple flash devices
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0409—Online test
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C2029/4402—Internal storage of test result, quality data, chip identification, repair information
Abstract
本发明提供一种存储器系统以及存储器系统的操作方法。存储器系统可以包括:存储器装置,包括多个半导体装置,每个半导体装置包括多个存储块;以及控制器,响应于来自主机的请求生成至少一个或多个描述符,并分别基于至少一个或多个描述符控制多个半导体装置的内部操作。控制器可以生成并管理分别对应于至少一个或多个描述符的至少一个或多个描述符索引。当多个半导体装置的内部操作期间发生失败时,使用至少一个或多个描述符索引来搜索对应于已经发生失败的存储块的至少一个描述符。
Description
相关申请的交叉引用
本申请要求于2018年1月29日提交的申请号为10-2018-0010854的韩国专利申请的优先权,其全部公开通过引用整体并入本文。
技术领域
本公开的各个实施例总体涉及一种存储器系统以及存储器系统的操作方法。特别地,实施例涉及一种能够防止由于坏块的重复登记(registration)而发生错误的存储器系统,以及存储器系统的操作方法。
背景技术
近来,计算机环境范例已经转变至可以随时随地使用计算机系统的普适计算。因此,诸如移动电话、数码相机和膝上型计算机的便携式电子装置的使用已经快速增长。通常,这种便携式电子装置使用存储器系统,该存储器系统采用存储器装置,换言之,数据存储装置。数据存储装置被用作便携式电子装置的主存储器装置或辅助存储器装置。
因为不存在机械驱动部件,所以使用存储器装置的数据存储装置提供诸如优良的稳定性和耐用性、提高的信息访问速度和低功耗的优点。作为具有这种优点的存储器系统的示例,数据存储装置可以包括通用串行总线(USB)存储器装置、具有各种接口的存储卡和固态硬盘(SSD)。
发明内容
本公开的各个实施例涉及一种存储器系统,其能够当存储器系统的操作期间在存储块中发生失败时,使用尚未对其执行操作的存储块的描述符中对应于失败的存储块的描述符来防止坏块的重复登记。
本公开的实施例可以提供一种存储器系统,其包括:存储器装置,包括多个半导体装置,每个半导体装置包括多个存储块;以及控制器,响应于来自主机的请求生成至少一个或多个描述符,并分别基于至少一个或多个描述符控制多个半导体装置的内部操作。控制器可以生成并管理分别对应于至少一个或多个描述符的至少一个或多个描述符索引。当多个半导体装置的内部操作期间发生失败时,可以使用至少一个或多个描述符索引来搜索对应于已经发生失败的存储块的至少一个描述符。
本公开的实施例可以提供一种存储器系统的操作方法,其包括:响应于从主机接收的请求,生成多个描述符和对应于多个描述符的多个描述符索引;基于多个描述符控制多个半导体存储器执行内部操作;当内部操作期间发生失败时,将已经发生失败的存储块登记为坏块;在多个描述符索引中搜索对应于已经发生失败的存储块的至少一个描述符索引;并且基于搜索的至少一个描述符索引生成至少一个新描述符。
本公开的实施例可以提供一种存储器系统,其包括:多个存储器装置,每个存储器装置包括多个存储块;以及控制器,生成多个描述符和分别对应的索引,以用于控制存储器装置对存储块执行操作,索引包括分别为操作分配的存储块的信息,其中当操作对存储块中的坏块失败时,控制器通过使用索引为描述符中对应于坏块的一个或多个描述符分配另一存储块。
附图说明
图1是示出根据本公开的实施例的存储器系统的框图。
图2是示出根据本公开的实施例的图1的控制器的配置的框图。
图3是示出根据本公开的实施例的图1的半导体存储器的框图。
图4是示出根据本公开的实施例的图3的存储器单元阵列的框图。
图5是示出根据本公开的实施例的图4中所示的存储块的电路图。
图6是示出根据本公开的实施例的管理对应于描述符的索引的方法的示图。
图7是示出根据本公开的实施例的存储器系统的操作的流程图。
图8是示出根据本公开的实施例的存储器系统的示图。
图9是示出根据本公开的实施例的存储器系统的示图。
图10是示出根据本公开的实施例的存储器系统的示图。
图11是示出根据本公开的实施例的存储器系统的示图。
具体实施方式
现在将参照附图更全面地描述各个实施例;然而,本公开的元件和特征可以与本文所示或所述不同地布置或配置。因此,本发明不限于本文阐述的实施例。相反,提供这些实施例使得本公开是彻底且完全的,并且向本领域技术人员完全传达实施例的范围。在整个说明书中,对“实施例”等的参考不一定意味着仅仅一个实施例,并且对“实施例”等的不同参考不一定针对相同的实施例。
在附图中,为了说明的清楚起见,尺寸可能被夸大。将理解的是,当元件被称为在两个元件“之间”时,两个元件之间可以仅有一个元件,或也可存在一个或多个中间元件。
在本文中参考元件和中间结构的截面图和示意图来描述实施例。这样,作为例如制造技术和/或公差的结果的图示中所示的形状的变化被预期。因此,实施例不应被解释为限于本文所示的元件的特定形状、结构或其区域,而是可以包括由例如制造产生的形状的偏差。在附图中,为了清楚起见,层和区域的长度和尺寸可能被夸大。附图中相同的附图标记表示相同的元件。
诸如“第一”和“第二”的术语可以用于识别各种部件,但是它们不限制各个部件。这些术语用于区分部件与具有相同或相似名称的其它部件。例如,在不脱离本公开的精神和范围的情况下,第一部件可以被称为第二部件,并且第二部件可以被称为第一部件等。此外,“和/或”可以包括所提及的部件中的任何一种或组合。
此外,单数形式可以包括复数形式,并且反之亦然,除非上下文另有说明。此外,说明书中使用的“包括/包含”或“包括有/包含有”表示存在或添加一个或多个部件、步骤、操作和元件,但是不排除其它部件、步骤、操作和/或元件的存在或添加。
此外,除非另有限定,否则本文所使用的包括技术术语和科学术语的所有术语具有与相关领域的技术人员通常理解的含义相同的含义。在常用词典中限定的术语应被理解为具有与它们在相关领域的上下文中的含义相同的含义,并且除非在本说明书中明确地限定,否则不应解释为具有理想化或过于形式的意义。
还应注意的是,在本说明书中,“连接/联接”指一个部件不仅可以直接联接另一部件,而且还可以通过一个或多个中间部件间接联接另一部件。另一方面,“直接连接/直接联接”指一个部件直接联接另一部件而没有中间部件。
图1是示出根据本公开的实施例的存储器系统1000的框图。
参照图1,存储器系统1000可以包括存储器装置1100、控制器1200和缓冲存储器1300。存储器装置1100可以包括多个半导体存储器100。多个半导体存储器100可以被划分成多个组。
在图1中,示出了多个组(例如,n个组)分别通过第一通道CH1至第n通道CHn与控制器1200通信。将参照图3详细描述每个半导体存储器100。
每个组可以通过该组中的每个半导体存储器100共用的一个通道与控制器1200通信。控制器1200可以通过多个通道CH1至CHn来控制存储器装置1100的多个半导体存储器100。
控制器1200连接在主机1400和存储器装置1100之间。控制器1200可以响应于来自主机1400的请求访问存储器装置1100。例如,控制器1200可以响应于从主机1400接收的请求控制存储器装置1100的读取操作、写入操作、擦除操作和后台操作。控制器1200可以在存储器装置1100和主机1400之间提供接口。控制器1200可以运行固件以用于控制存储器装置1100。
当响应于来自主机1400的请求执行读取操作时,缓冲存储器1300可以临时存储从存储器装置1100读取的数据,并且然后将数据输出到主机1400。当执行写入操作时,缓冲存储器1300可以临时存储从主机1400接收的数据,并且然后将数据输出到存储器装置1100。在图1中,缓冲存储器1300虽然被示为与控制器1200分离的部件,但是控制器1200可以包括缓冲存储器1300。
主机1400可以控制存储器系统1000。主机1400可以包括诸如计算机、个人数字助理(PDA)、便携式多媒体播放器(PMP)、MP3播放器、摄像机、便携式摄像机或移动电话的便携式电子装置。主机1400可以使用命令来请求存储器系统1000的写入操作、读取操作、擦除操作等。
控制器1200和存储器装置1100可以被集成到单个半导体装置中。在实施例中,控制器1200和存储器装置1100可以被集成为形成诸如以下的存储卡中:个人计算机存储卡国际协会(PCMCIA)、标准闪存卡(CF)、智能媒体卡(SM或SMC)、记忆棒多媒体卡(MMC、RS-MMC或微型MMC)、SD卡(SD、迷你SD、微型SD或SDHC)或通用闪速存储装置(UFS)。
在另一实施例中,控制器1200和存储器装置1100可以被集成到单个半导体装置中以形成固态硬盘(SSD)。SSD可以包括被配置为将数据存储到半导体存储器的存储装置。当存储器系统1000用作SSD时,主机1400联接到存储器系统1000的的操作速度可以被显著提高。
在实施例中,存储器系统1000可以被设置为电子装置的诸如以下的各种元件中的一个:计算机、超移动PC(UMPC)、工作站、上网本、个人数字助理(PDA)、便携式计算机、网络平板、无线电话、移动电话、智能电话、电子书、便携式多媒体播放器(PMP)、游戏机、导航装置、黑匣子、数码相机、3维电视、数字音频记录器、数字音频播放器、数字图片记录器、数字图片播放器、数字视频记录器、数字视频播放器、能够在无线环境下传输/接收信息的装置、形成家庭网络的各种装置中的一个、形成计算机网络的各种电子装置中的一个、形成远程信息处理网络的各种电子装置中的一个、RFID装置、形成计算系统的各种元件中的一个等。
在实施例中,存储器装置1100或存储器系统1000可以嵌入在各种类型的封装中。例如,存储器装置1100或存储器系统1000可以被封装为堆叠封装(PoP)、球栅阵列(BGA)、芯片级封装(CSP)、塑料引线芯片载体(PLCC)、塑料双列直插封装(PDIP)、晶片包中管芯封装(Die in Waffle Pack)、晶片形式管芯(Die in Wafer Form)、片上芯片(COB)、陶瓷双列直插封装(CERDIP)、塑料公制四方扁平封装(MQFP)、薄四方扁平封装(TQFP)、小外形(SOIC)、收缩小外形封装(SSOP)、薄型小外形(TSOP)、薄四方扁平封装(TQFP)、系统级封装(SIP)、多芯片封装(MCP)、晶圆级制造封装(WFP)或者晶圆级处理堆叠封装(WSP)。
图2是示出图1的控制器1200的配置的示图。
参照图2,控制器1200可以包括主机控制电路1210、处理器1220、存储器缓冲电路1230、闪存控制电路1240、描述符索引管理电路1250、主机接口1260、缓冲器控制电路1270、缓冲存储器接口1280、错误校正码(ECC)电路1290、闪存接口1310和总线1320。
总线1320可以提供控制器1200的部件之间的通道。
主机控制电路1210可以控制图1的主机1400、主机接口1260与控制器缓冲存储器,即存储器缓冲器电路1230或图1的缓冲存储器1300之间的数据传输。在实施例中,主机控制电路1210可以控制缓冲从主机1400经由主机接口1260输入到存储器缓冲器电路1230或缓冲存储器1300的数据的操作。在实施例中,主机控制电路1210可以控制将缓冲到存储器缓冲器电路1230或缓冲存储器1300中的数据经由主机接口1260输出到主机1400的操作。
处理器1220可以控制控制器1200的整体操作并且可以执行逻辑操作。处理器1220可以通过主机接口1260与图1的主机1400通信,并且可以通过闪存接口1310与图1的存储器装置1100通信。处理器1220可以通过缓冲存储器接口1280与图1的缓冲存储器1300通信。处理器1220可以通过缓冲器控制电路1270控制存储器缓冲器电路1230。处理器1220可以使用存储器缓冲器电路1230作为操作存储器、高速缓冲存储器或缓冲存储器来控制存储器系统1000的操作。
此外,处理器1220可以响应于主机1400的写入请求、读取请求或擦除请求生成并输出一个或多个描述符DSC。描述符DSC可以指描述待由闪存控制电路1240处理以控制存储器装置1100的工作的工作指令。
处理器1220可以包括闪存转换层(在下文中,被称为“FTL”)1221、描述符发生器1222和坏块管理器1223。
FTL 1221可以运行存储在图1的存储器缓冲器电路1230或缓冲存储器1300中的固件。在数据写入操作期间,FTL 1221可以映射对应于从图1的主机1400输入的逻辑地址的物理地址。此外,在数据读取操作期间,FTL 1221可以检查映射到从主机1400输入的逻辑地址的物理地址。在写入操作或读取操作期间转换或检查的物理地址可以被传输到描述符发生器1222。物理地址可以被包括在生成的描述符DSC中。
描述符发生器1222可以根据在FTL 1221中运行的固件生成并输出描述待由闪存控制电路1240处理的工作的描述符DSC。描述符发生器1222可以生成并输出一个或多个描述符DSC。
当图1的存储器装置1100的操作期间在存储块中发生错误(即,坏块)时,描述符发生器1222可以将对应于错误的描述符DSC错误标记为失败描述符。此后,描述符索引管理电路1250可以将新存储块分配给对应于坏块的至少一个描述符,移除失败描述符的错误标记,并且然后将不具有错误标记的描述符DSC重新输出作为正常描述符DSC。
坏块管理器1223可以接收关于在图1的存储器装置1100的全部操作(写入操作、读取操作、擦除操作等)期间已经发生操作错误的存储块的信息,并且将已经发生错误的存储块登记为坏块并管理坏块。坏块信息可以被存储到图1的多个半导体存储器100中的任何一个。
存储器缓冲器电路1230可以用作处理器1220的操作存储器、高速缓冲存储器或缓冲存储器。存储器缓冲器电路1230可以存储待由处理器1220执行的代码和命令。存储器缓冲器电路1230可以存储待由处理器1220处理的数据。存储器缓冲器1230可以包括静态RAM(SRAM)或动态RAM(DRAM)。存储器缓冲器电路1230可以存储由处理器1220生成的多个描述符DSC,并且可以存储由描述符索引管理电路1250生成并管理的描述符索引。
闪存控制电路1240可以响应于从处理器1220输出的至少一个描述符DSC来生成并输出用于控制存储器装置1100的命令控制信号。在写入操作期间,闪存控制电路1240可以响应于描述符DSC控制将缓冲到图1的存储器缓冲器电路1230或缓冲存储器1300的数据传输并编程到存储器装置1100的操作。在实施例中,在读取操作期间,闪存控制电路1240可以响应于描述符DSC控制将从存储器装置1100读取并输出的数据缓冲到存储器缓冲器电路1230或缓冲存储器1300的操作。
描述符索引管理电路1250可以生成并管理对应于由处理器1220生成的各个描述符DSC的描述符索引。例如,如果处理器1220生成描述符DSC,则描述符索引管理电路1250可以生成对应于生成的描述符DSC的描述符索引。此外,闪存控制电路1240控制图1的存储器装置1100执行对应于描述符DSC的操作。如果在存储器装置1100已经成功完成操作之后,闪存控制电路1240报告操作完成,则描述符索引管理电路1250可以删除对应于与完成的操作相关联的描述符DSC的描述符索引。
另外,如果在存储器装置1100执行操作的同时发生错误,则描述符索引管理电路1250可以在剩余的描述符索引中搜索对应于已经发生错误的块即坏块的描述符索引并且将在搜索中找到的描述符索引传输到处理器1220。
在实施例中,描述符索引管理电路1250可以生成描述符索引,并且可以将生成的描述符索引存储到存储器缓冲器电路1230并对其进行管理。
在实施例中,描述符索引管理电路1250可以是处理器1220中的部件。
主机接口1260可以在处理器1220的控制下与图1的主机1400通信。主机接口1260可以使用诸如以下的各种通信方式中的至少一种来执行通信:通用串行总线(USB)通信方式、串行AT附件(SATA)通信方式、串列SCSI(SAS)通信方式、高速片间(HSIC)通信方式、小型计算机系统接口(SCSI)通信方式、外围组件互联(PCI)通信方式、高速PCI(PCIe)通信方式、高速非易失性存储器(NVMe)通信方式、通用闪速存储器(UFS)通信方式、安全数字(SD)通信方式、多媒体卡(MMC)通信方式、嵌入式MMC(eMMC)通信方式、双列直插式存储器模块(DIMM)通信方式、寄存式DIMM(RDIMM)通信方式和负载减少的DIMM(LRDIMM)通信方式。
缓冲器控制电路1270可以在处理器1220的控制下控制存储器缓冲器电路1230。
缓冲存储器接口1280可以在处理器1220的控制下与图1的缓冲存储器1300通信。缓冲存储器接口1280可以通过通道与缓冲存储器1300通信命令、地址和数据。
ECC电路1290可以执行错误校正。ECC电路1290可以基于通过闪存接口1310待被写入到图1的存储器装置1100的数据来执行ECC编码。ECC编码的数据可以通过闪存接口1310被传输到存储器装置1100。ECC电路1290可以通过闪存接口1310对从存储器装置1100接收的数据执行ECC解码。例如,ECC电路1290可以是闪存接口1310中的部件。
闪存接口1310可以在处理器1220的控制下与图1的存储器装置1100通信。闪存接口1310可以通过通道与存储器装置1100通信控制信号、地址和数据。在存储器装置1100已经成功完成操作或已经发生错误以致操作已经失败的情况下,闪存接口1310可以接收对应的确认信号。
图3是示出根据本公开的实施例的图1的半导体存储器100的框图。
参照图3,半导体存储器100可以包括包含多个存储块BLK1至BLKz的存储器单元阵列110以及被配置为对包括在多个存储块BLK1至BLKz的选择的页面中的存储器单元执行写入操作、读取操作或擦除操作的外围电路PERI。外围电路PERI可以包括控制电路120、电压供给电路130、页面缓冲器组140、列解码器150和输入/输出电路160。
存储器单元阵列110可以包括多个存储块BLK1至BLKz。多个存储块BLK1至BLKz中的每一个可以包括多个页面。多个页面中的每一个可以包括多个存储器单元。在实施例中,多个存储器单元可以是非易失性存储器单元。这将参照图4和图5更详细地描述。
控制电路120可以响应于通过输入/输出电路160从外部装置输入的命令信号CMD_signals来输出电压控制信号VCON以用于生成执行写入操作、读取操作或编程操作所需的电压,并且根据操作的类型输出PB控制信号PBCON以用于控制页面缓冲器组140中的页面缓冲器PB1至PBk。控制电路120可以响应于通过输入/输出电路160从外部装置输入的地址信号ADD输出行地址信号RADD和列地址信号CADD。此外,在已经执行写入操作、读取操作或擦除操作之后,控制电路120可以输出操作的结果作为确认信号CMD_confirm。换言之,在已经执行写入操作、读取操作或擦除操作之后,控制电路120可以输出确认信号CMD_confirm以用于指示执行的操作是否已经成功完成,或者在执行的操作中是否已经发生错误。
电压供给电路130可以响应于控制电路120的电压控制信号VCON将存储器单元的写入操作、读取操作和擦除操作所需的操作电压供给到选择的存储块的包括漏极选择线、字线WL和源极选择线的局部线。电压供给电路130可以包括电压生成电路和行解码器。
电压生成电路可以响应于控制电路120的电压控制信号VCON将存储器单元的写入操作、读取操作和擦除操作所需的操作电压输出到全局线。
行解码器可以响应于控制电路120的行地址信号RADD将全局线联接到局部线,使得从电压生成电路输出到全局线的操作电压可以被传输到存储器单元阵列110中的选择的存储块的局部线。
页面缓冲器组140可以包括通过位线BL1至BLk与存储器单元阵列110联接的多个页面缓冲器PB1至PBk。响应于控制电路120的PB控制信号PBCON,页面缓冲器PB1至PBk可以根据待被存储到存储器单元的输入数据选择性地对位线BL1至BLk预充电,或者可以感测位线BL1至BLk的电压以从存储器单元读出数据。
列解码器150可以响应于从控制电路120输出的列地址信号CADD选择页面缓冲器PB1至PBk。换言之,列解码器150可以响应于列地址信号CADD将待被存储到存储器单元的数据DATA连续地传输到页面缓冲器PB1至PBk。此外,在读取操作期间,列解码器150可以响应于列地址信号CADD连续地选择页面缓冲器PB1至PBk,使得锁存到页面缓冲器PB1到PBk的存储器单元的数据DATA可以被输出到外部装置。
在写入操作期间,输入/输出电路160可以在控制电路120的控制下将待被存储到存储器单元的输入数据DATA传输到列解码器150,使得数据DATA可以被输入到页面缓冲器组140。当列解码器150将从输入/输出电路160传输的数据DATA传输到页面缓冲器PB1至PBk时,页面缓冲器PB1至PBk可以将输入的数据DARA存储到其内部锁存器电路。在读取操作期间,输入/输出电路160可以通过列解码器150将从页面缓冲器PB1至PBk传输的数据DATA输出到外部装置。
图4是示出根据本公开的实施例的图3的存储器单元阵列110的框图。
参照图4,存储器单元阵列110可以包括多个存储块BLK1至BLKz。每个存储块具有三维结构。每个存储块可以包括堆叠在衬底上的多个存储器单元。存储器单元被布置在+X方向、+Y方向和+Z方向上。将参照图5更详细地描述每个存储块的结构。
图5是示出根据本公开的实施例的图4中所示的存储块的电路图。
参照图5,每个存储块可以包括联接在位线BL1至BLk与公共源极线CSL之间的多个串ST1至STk。换言之,串ST1至STk可以分别与对应的位线BL1至BLk联接并且共同与公共源极线CSL联接。每个串例如ST1可以包括具有联接到公共源极线CSL的源极的源极选择晶体管SST、多个存储器单元C01至Cn1、以及具有联接到位线BL1的漏极的漏极选择晶体管DST。存储器单元C01至Cn1可以串联地联接在选择晶体管SST和DST之间。源极选择晶体管SST的栅极可以联接到源极选择线SSL。存储器单元C01至Cn1的栅极可以分别联接到字线WL0至WLn。漏极选择晶体管DST的栅极可以联接到漏极选择线DSL。
存储块中的存储器单元可以基于物理页面或基于逻辑页面来划分。例如,联接到单个字线(例如,WL0)的存储器单元C01至C0k可以形成单个物理页面PAGE0。页面可以是编程操作或读取操作的基本单位。
图6是示出根据本公开的实施例的由描述符索引管理电路1250管理的描述符索引的示图。
图7是示出根据本公开的实施例的存储器系统1000的操作的流程图。
将参照图1至图7描述根据本公开的实施例的存储器系统1000的操作方法。
将通过示例描述从主机1400输入多个写入请求的情况。
在步骤S610处,存储器系统1000的控制器1200可以从主机1400接收一个或多个写入请求。控制器1200可以将与一个或多个写入请求一起接收的写入数据临时存储到缓冲存储器1300或存储器缓冲器电路1230。
在步骤S620处,控制器1200的处理器1220可以将与一个或多个写入请求一起接收的逻辑地址映射到物理地址,并且可以响应于一个或多个写入请求和映射的物理地址生成一个或多个描述符DSC。
描述符索引管理电路1250可以使用由处理器1220生成的一个或多个描述符DSC来生成一个或多个描述符索引。参照图2和图6,描述符索引管理电路1250可以生成对应于各个描述符DSC的多个任务Task 0至Task n,并且可以生成分别对应于多个任务Task 0至Task n的多个描述符索引index<0>至index<n>。换言之,可以生成对应于每个描述符的单个描述符索引。多个描述符索引index<0>至index<n>可以包括各个半导体存储器100的块信息BLK a至BLK x,其中,响应于对应的描述符来对各个半导体存储器100的块信息BLK a至BLK x执行操作。多个描述符索引中的一些可以具有重复的块信息(例如,BLK c)。这可以表示多个描述符对应于相同的存储块(例如,BLK c)。
响应于从处理器1220生成的描述符DSC,闪存控制电路1240可以将映射到逻辑地址的地址ADD和用于控制从存储器装置1100中的多个半导体存储器100中选择的一个或多个半导体存储器的命令控制信号CMD_signals输出到选择的一个或多个半导体存储器。此处,在步骤S640处,临时存储在缓冲存储器1300或存储器缓冲器电路1230中的写入数据也可以被输出到选择的一个或多个半导体存储器。
选择的一个或多个半导体存储器100可以响应于接收的命令控制信号CMD_signals、地址ADD和写入数据DATA执行写入操作。
如果写入操作已经完成,则每个选择的半导体存储器100的控制电路120可以基于对应的完成的写入操作的结果生成并输出确认信号CMD_confirm,从而报告写入操作是否已经通过/失败。
在步骤S650处,控制器1200可以基于从已经完成写入操作的半导体存储器100接收的确认信号CMD_confirm来检查已经完成写入操作的半导体存储器100的写入操作是否已经通过/失败。
如果从已经完成写入操作的半导体存储器100接收的确认信号CMD_confirm指示写入操作已经通过(在步骤S650处为“通过”),则在步骤S690处,描述符索引管理电路1250可以移除对应于完成的描述符的描述符索引。参照图6,如果确定选择的半导体存储器100的存储块BLK a和BLK b的写入操作已经通过,则描述符索引管理电路1250可以移除对应于确定写入操作已经通过的存储块BLK a和BLK b的描述符索引(确认索引;index<0>和index<1>)。
如果在步骤S700处成功完成了对应于选择的半导体存储器100的描述符DSC的所有操作并且在步骤S690处移除了剩余的描述符索引中的所有,则可以终止多个写入操作。
返回到步骤S650,如果从已经完成写入操作的半导体存储器100接收的确认信号CMD_confirm指示写入操作已经失败(在步骤S650处为“失败”),则在步骤S660处,处理器1220的坏块管理器1223可以将已经发生失败的半导体存储器100的存储块(例如,BLK c)登记为坏块。此外,处理器1220可以错误标记对应于失败的写入操作的描述符DSC。
在步骤S660之后,在步骤S670处,描述符索引管理电路1250可以在剩余的描述符索引中搜索对应于坏块,即,已经发生写入操作失败的存储块(例如,BLK c)的描述符索引。剩余的描述符索引可以是多个描述符索引中除了响应于对应于成功完成的写入操作的确认信号而被移除的描述符索引之外的描述符索引。参照图6,在剩余的描述符索引index<2>至index<n>中,搜索对应于坏块BLK c的描述符索引(例如,index<2>和index<m>)。
处理器1220的描述符发生器1222可以基于对应于由描述符索引管理电路1250搜索的坏块BLK c的描述符索引(例如,index<2>和index<m>)来生成并输出新描述符DSC。在实施例中,描述符发生器1222可以生成并输出对应于描述符索引index<2>和index<m>的新描述符DSC,并且在步骤S680处,可以将新存储块(例如,BLK x+1)分配给新描述符DSC。另外,描述符发生器1222可以移除在步骤S660处添加的错误标记并生成新描述符DSC,并且可以将生成的新描述符DSC输出到闪存控制电路1240。此外,进程可以返回到步骤S640并且从步骤S640重新执行。
在上述实施例中,已经通过示例描述了执行多个写入操作的情况,但是本公开不限于此。例如,本公开的实施例还可以应用于执行多个写入操作、读取操作和/或擦除操作的情况。
如上所述,根据本公开的实施例,如果在存储器系统的操作期间发生失败,则可以在对应于尚未完成操作的存储块的描述符中搜索对应于已经发生失败的存储块的描述符,并且可以将新存储块分配给在搜索中找到的描述符。因此,可以防止已经发生失败的存储块在后续操作期间被重复登记为坏块。
图8是示出根据本公开的实施例的存储器系统30000的示图。
参照图8,存储器系统30000可以被实施为蜂窝电话、智能电话、平板PC、个人数字助理(PDA)或无线通信装置。存储器系统30000可以包括存储器装置1100和能够控制存储器装置1100的操作的控制器1200。控制器1200可以在处理器3100的控制下控制存储器装置1100的数据存取操作,例如,编程操作、擦除操作或读取操作。可以包括图2的描述符索引管理电路1250作为处理器3100的部件。
编程到存储器装置1100的数据可以在控制器1200的控制下通过显示器3200输出。
无线电收发器3300可以通过天线ANT发送和接收无线电信号。例如,无线电收发器3300可以将通过天线ANT接收的无线电信号改变为能够在处理器3100中处理的信号。因此,处理器3100可以处理从无线电收发器3300输出的信号并且将处理的信号传输到控制器1200或显示器3200。控制器1200可以将由处理器3100处理的信号编程到存储器装置1100。此外,无线电收发器3300可以将从处理器3100输出的信号改变为无线电信号,并且通过天线ANT将改变的无线电信号输出到外部装置。输入装置3400可以用于输入用于控制处理器3100的操作的控制信号或者待由处理器3100处理的数据。输入装置3400可以被实施为诸如触摸板或计算机鼠标、小键盘或键盘的定点装置。处理器3100可以控制显示器3200的操作,使得从控制器1200输出的数据、从无线电收发器3300输出的数据或从输入装置3400输出的数据通过显示器3200被输出。
在实施例中,能够控制存储器装置1100的操作的控制器1200可以被实施为处理器3100的一部分或与处理器3100单独提供的芯片。可选地,控制器1200可以根据图2中示出的控制器来配置。
图9是示出根据本公开的实施例的存储器系统40000的示图。
参照图9,存储器系统40000可以被实施为个人计算机(PC)、平板PC、电子书、电子阅读器、个人数字助理(PDA)、便携式多媒体播放器(PMP)、MP3播放器或MP4播放器。
存储器系统40000可以包括存储器装置1100和能够控制存储器装置1100的数据处理操作的控制器1200。
处理器4100可以根据从输入装置4200输入的数据通过显示器4300输出存储在存储器装置1100中的数据。例如,输入装置4200可以被实施为诸如触摸板或计算机鼠标、小键盘或键盘的定点装置。
处理器4100可以控制存储器系统40000的整体操作并且控制控制器1200的操作。在实施例中,能够控制存储器装置1100的操作的控制器1200可以被实施为处理器4100的一部分或与处理器4100单独提供的芯片。可选地,控制器1200可以根据图2中示出的控制器来配置。图2的描述符索引管理电路1250可以被包括为处理器4100的部件。
图10是示出根据本公开的实施例的存储器系统50000的示图。
参照图10,存储器系统50000可以被实现为例如数码相机的图像处理装置、设置有数码相机的便携式电话、设置有数码相机的智能电话或设置有数码相机的平板PC。
存储器系统50000可以包括存储器装置1100和能够控制存储器装置1100的例如编程操作、擦除操作或读取操作的数据处理操作的控制器1200。
存储器系统50000的图像传感器5200可以将光学图像转换为数字信号。转换的数字信号可以被传输到处理器5100或控制器1200。在处理器5100的控制下,转换的数字信号可以通过显示器5300输出,或通过控制器1200存储到存储器装置1100。存储在存储器装置1100中的数据可以在处理器5100或控制器1200的控制下通过显示器5300输出。
在实施例中,能够控制存储器装置1100的操作的控制器1200可以被实施为处理器5100的一部分或与处理器5100单独提供的芯片。可选地,控制器1200可以根据图2中示出的控制器来配置。图2的描述符索引管理电路1250可以被包括为处理器5100的部件。
图11是示出根据本公开的实施例的存储器系统70000的示图。
参照图11,存储器系统70000可以被实现为存储卡或智能卡。存储器系统70000可以包括存储器装置1100、控制器1200和卡接口7100。
控制器1200可以控制存储器装置1100和卡接口7100之间的数据交换。在实施例中,卡接口7100可以是安全数字(SD)卡接口或多媒体卡(MMC)接口,但是不限于此。控制器1200可以根据图2中示出的控制器1200来配置。
卡接口7100可以根据主机60000的协议来接口连接主机60000和控制器1200之间的数据交换。在实施例中,卡接口7100可以支持通用串行总线(USB)协议和芯片间(IC)-USB协议。此处,卡接口可以指能够支持由主机60000使用的协议的硬件、安装在硬件中的软件或者信号传输方案。
当存储器系统70000连接到诸如PC、平板PC、数码相机、数字音频播放器、蜂窝电话、控制台视频游戏硬件或数字机顶盒的主机60000的主机接口6200时,主机接口6200可以在微处理器6100的控制下通过卡接口7100和存储器控制器1200执行与存储器装置1100的数据通信。
根据本公开的实施例,如果在存储器系统的操作期间发生失败,则可以在对应于尚未执行或完成操作的存储块的描述符中搜索对应于已经发生失败的存储块的描述符,并且可以将新存储块分配给在搜索中找到的描述符。因此,可以防止已经发生失败的存储块在后续操作期间被重复登记为坏块。
本文已经公开各个实施例,并且虽然采用特定术语,但是它们被用于和解释为通用和描述性的含义,而不是为了限制的目的。在一些情况下,如从提交本申请起对于本领域技术人员显而易见的是,结合特定实施例描述的特征、特性和/或元件可以单独使用或与结合其他它实施例描述的特征、特性和/或元件结合使用,除非另有具体指示。因此,本领域技术人员将理解,在不脱离如所附权利要求中阐述的本公开的精神和范围的情况下,可以进行形式和细节上的各种改变。
Claims (20)
1.一种存储器系统,包括:
存储器装置,包括多个半导体装置,每个半导体装置包括多个存储块;以及
控制器,响应于来自主机的请求生成至少一个或多个描述符,并分别基于所述至少一个或多个描述符控制所述多个半导体装置的内部操作,
其中所述控制器生成并管理分别对应于所述至少一个或多个描述符的至少一个或多个描述符索引,并且
其中,当所述多个半导体装置的内部操作期间发生失败时,使用所述至少一个或多个描述符索引来搜索对应于已经发生失败的存储块的至少一个描述符。
2.根据权利要求1所述的存储器系统,其中所述控制器将新存储块分配给对应于已经发生失败的存储块的所述至少一个描述符,并且针对所述新存储块生成新描述符。
3.根据权利要求1所述的存储器系统,其中所述控制器包括:
处理器,响应于来自所述主机的请求控制所述控制器的整体操作,并且生成所述至少一个或多个描述符;
闪存控制电路,生成用于控制所述多个半导体装置的命令控制信号,以基于所述至少一个或多个描述符执行所述内部操作;以及
描述符索引管理电路,生成并管理所述至少一个或多个描述符索引。
4.根据权利要求3所述的存储器系统,其中所述处理器包括:
闪存转换层,通过将从所述主机接收的逻辑地址映射到物理地址来生成映射地址;
描述符发生器,响应于来自所述主机的请求和所述映射地址生成所述至少一个或多个描述符;以及
坏块管理器,将已经发生失败的所述存储块登记为坏块并管理所述坏块。
5.根据权利要求4所述的存储器系统,其中,当所述内部操作期间发生失败时,所述描述符发生器在所述至少一个或多个描述符中错误标记一个描述符,其中,所述一个描述符对应于已经发生失败的所述内部操作。
6.根据权利要求5所述的存储器系统,其中所述多个半导体装置响应于所述命令控制信号执行所述内部操作,并且将所述内部操作的结果输出到所述控制器作为确认信号。
7.根据权利要求6所述的存储器系统,其中,当所述内部操作中的每一个被适当地完成时,所述描述符索引管理电路基于对应的确认信号,在所述至少一个或多个描述符索引中移除对应于已经适当地完成的内部操作的描述符索引。
8.根据权利要求7所述的存储器系统,其中,当所述内部操作中的任何一个失败时,所述描述符索引管理电路基于对应的确认信号,在剩余的描述符索引中检测对应于已经发生失败的所述存储块的至少一个描述符索引。
9.根据权利要求8所述的存储器系统,其中所述至少一个或多个描述符索引中的每一个包括关于对应的存储块的信息,其中,对所述对应的存储块待执行相关联的内部操作。
10.根据权利要求8所述的存储器系统,其中所述描述符发生器将新存储块分配给对应于已经发生失败的所述存储块的所述至少一个描述符,并且针对对应的存储块生成并输出新描述符。
11.根据权利要求10所述的存储器系统,其中所述描述符发生器从所述一个描述符中移除错误标记,并且将所述新存储块分配给所述一个描述符以生成所述新描述符。
12.一种存储器系统的操作方法,包括:
响应于从主机接收的请求,生成多个描述符和对应于所述多个描述符的多个描述符索引;
基于所述多个描述符控制多个半导体存储器执行内部操作;
当所述内部操作期间发生失败时,将已经发生失败的存储块登记为坏块;
在所述多个描述符索引中搜索对应于已经发生失败的所述存储块的至少一个描述符索引;并且
基于在搜索中找到的所述至少一个描述符索引生成至少一个新描述符。
13.根据权利要求12所述的方法,其中所述多个描述符索引中的每一个包括待执行对应的内部操作的存储块的信息。
14.根据权利要求12所述的方法,其中,当所述内部操作中的每一个被适当地完成时,在所述多个描述符索引中移除对应于已经适当地完成的每个内部操作的描述符索引。
15.根据权利要求12所述的方法,其中将新存储块分配给所述至少一个新描述符。
16.根据权利要求12所述的方法,其中在所述多个描述符中错误标记对应于已经发生失败的所述内部操作的所述描述符。
17.根据权利要求16所述的方法,其中通过将新存储块分配给所述错误标记的描述符并移除错误标记来生成所述至少一个新描述符。
18.根据权利要求12所述的方法,其中所述多个半导体存储器中的每一个包括多个存储块。
19.根据权利要求12所述的方法,其中将相同半导体存储器的相同存储块分配给所述多个描述符中的一些描述符。
20.一种存储器系统,包括:
多个存储器装置,每个存储器装置包括多个存储块;以及
控制器,生成多个描述符和分别对应的索引,以用于控制所述存储器装置对所述存储块执行操作,所述索引包括分别为所述操作分配的所述存储块的信息,
其中当操作对所述存储块中的坏块失败时,所述控制器通过使用所述索引为所述描述符中对应于所述坏块的一个或多个描述符分配另一存储块。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2018-0010854 | 2018-01-29 | ||
KR1020180010854A KR102410306B1 (ko) | 2018-01-29 | 2018-01-29 | 메모리 시스템 및 그것의 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110096222A true CN110096222A (zh) | 2019-08-06 |
CN110096222B CN110096222B (zh) | 2022-09-02 |
Family
ID=67393471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811066744.8A Active CN110096222B (zh) | 2018-01-29 | 2018-09-13 | 存储器系统及存储器系统的操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10877857B2 (zh) |
KR (1) | KR102410306B1 (zh) |
CN (1) | CN110096222B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113728383B (zh) * | 2019-02-22 | 2023-05-30 | 美光科技公司 | 存储器装置接口及方法 |
KR20220116258A (ko) | 2019-12-30 | 2022-08-22 | 마이크론 테크놀로지, 인크. | 메모리 디바이스 인터페이스 및 방법 |
WO2021138408A1 (en) | 2019-12-31 | 2021-07-08 | Micron Technology, Inc. | Memory module mutiple port buffer techniques |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6031758A (en) * | 1996-02-29 | 2000-02-29 | Hitachi, Ltd. | Semiconductor memory device having faulty cells |
US20060031710A1 (en) * | 2004-08-04 | 2006-02-09 | Jo Seong-Kue | Flash memory device for performing bad block management and method of performing bad block management of flash memory device |
CN101263462A (zh) * | 2005-08-03 | 2008-09-10 | 桑迪士克股份有限公司 | 具有区块管理的非易失性存储器 |
CN101859604A (zh) * | 2009-04-10 | 2010-10-13 | 国民技术股份有限公司 | 闪存坏块的利用方法 |
US20110063909A1 (en) * | 2009-09-16 | 2011-03-17 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory and method of testing the same |
CN104091617A (zh) * | 2014-06-17 | 2014-10-08 | 深圳市江波龙电子有限公司 | 一种闪存存储设备检测的方法及装置 |
CN104461750A (zh) * | 2013-09-25 | 2015-03-25 | 北京兆易创新科技股份有限公司 | 一种NAND flash的访问方法和装置 |
CN104750565A (zh) * | 2013-12-31 | 2015-07-01 | 重庆重邮信科通信技术有限公司 | Nand坏块处理方法及nand闪存设备 |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4933846A (en) * | 1987-04-24 | 1990-06-12 | Network Systems Corporation | Network communications adapter with dual interleaved memory banks servicing multiple processors |
US5251308A (en) * | 1987-12-22 | 1993-10-05 | Kendall Square Research Corporation | Shared memory multiprocessor with data hiding and post-store |
US5586291A (en) * | 1994-12-23 | 1996-12-17 | Emc Corporation | Disk controller with volatile and non-volatile cache memories |
US7392361B2 (en) * | 2002-04-16 | 2008-06-24 | Emc Corporation | Generic reallocation function for heap reconstitution in a multi-processor shared memory environment |
US6701393B1 (en) * | 2002-06-27 | 2004-03-02 | Emc Corporation | Systems and methods for managing storage location descriptors |
US7114016B2 (en) * | 2003-12-23 | 2006-09-26 | Intel Corporation | Page-aware descriptor management |
US20050216721A1 (en) * | 2004-03-24 | 2005-09-29 | Zimmer Vincent J | Methods and apparatus for initializing a memory |
US7263592B2 (en) * | 2004-03-29 | 2007-08-28 | International Business Machines Corporation | Method for completely lock-free user-level dynamic memory allocation |
JP4437953B2 (ja) * | 2004-12-10 | 2010-03-24 | 富士通株式会社 | データ書込み方法とチャネルアダプタ |
US8161392B1 (en) * | 2005-04-06 | 2012-04-17 | Teradici Corporation | Methods and apparatus for managing a shared GUI |
US20070214333A1 (en) * | 2006-03-10 | 2007-09-13 | Dell Products L.P. | Modifying node descriptors to reflect memory migration in an information handling system with non-uniform memory access |
KR100925523B1 (ko) * | 2007-11-02 | 2009-11-06 | 한양대학교 산학협력단 | 저장 장치의 오류 발생 방법 및 오류 발생 위치의 선택방법 |
US8176252B1 (en) * | 2007-11-23 | 2012-05-08 | Pmc-Sierra Us, Inc. | DMA address translation scheme and cache with modified scatter gather element including SG list and descriptor tables |
KR101078287B1 (ko) * | 2007-12-14 | 2011-10-31 | 한국전자통신연구원 | 다중 복제를 지원하는 분산 파일 시스템에서 데이터 서버의복구 방법 및 그에 적당한 메타데이터 스토리지 및 저장방법 |
US8478932B2 (en) * | 2008-09-15 | 2013-07-02 | Texas Instruments Incorporated | Power efficient memory management for embedded systems |
KR101624969B1 (ko) * | 2009-05-26 | 2016-05-31 | 삼성전자주식회사 | 메모리 시스템 및 그것의 배드 블록 관리 방법 |
EP2299363B1 (fr) * | 2009-09-21 | 2013-01-09 | STMicroelectronics (Rousset) SAS | Procédé de nivellement de l'usure dans une mémoire non volatile |
US8255617B2 (en) * | 2010-01-26 | 2012-08-28 | Seagate Technology Llc | Maintaining data integrity in a data storage device |
KR101635446B1 (ko) * | 2010-05-25 | 2016-07-04 | 삼성전자주식회사 | 반도체 메모리 장치의 블록 병합 방법 |
KR20120001405A (ko) * | 2010-06-29 | 2012-01-04 | 삼성전자주식회사 | 메모리 시스템 및 그것의 웨어 레벨링 방법 |
US9063836B2 (en) * | 2010-07-26 | 2015-06-23 | Intel Corporation | Methods and apparatus to protect segments of memory |
KR20120098324A (ko) * | 2011-02-28 | 2012-09-05 | 에스케이하이닉스 주식회사 | 반도체 메모리 시스템 및 그의 제어 방법 |
US8732538B2 (en) * | 2011-03-10 | 2014-05-20 | Icform, Inc. | Programmable data storage management |
KR20130023985A (ko) * | 2011-08-30 | 2013-03-08 | 삼성전자주식회사 | 개선된 랜덤 라이트 성능을 가지는 메타 데이터 그룹 구성 방법 및 그에 따른 반도체 저장 장치 |
US9003103B2 (en) | 2011-09-12 | 2015-04-07 | Microsoft Technology Licensing, Llc | Nonvolatile media dirty region tracking |
KR20130078973A (ko) | 2012-01-02 | 2013-07-10 | 삼성전자주식회사 | 메모리 장치의 불량 저장 영역 관리 방법 및 이를 이용한 저장 장치 |
US9780809B2 (en) * | 2015-04-30 | 2017-10-03 | Sandisk Technologies Llc | Tracking and use of tracked bit values for encoding and decoding data in unreliable memory |
KR102395541B1 (ko) * | 2015-07-09 | 2022-05-11 | 에스케이하이닉스 주식회사 | 메모리 컨트롤 유닛 및 그것을 포함하는 데이터 저장 장치 |
KR20170025714A (ko) * | 2015-08-31 | 2017-03-08 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR20180062062A (ko) * | 2016-11-30 | 2018-06-08 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이의 동작 방법 |
US10698819B2 (en) * | 2017-12-14 | 2020-06-30 | SK Hynix Inc. | Memory system and operating method thereof |
KR20190106005A (ko) * | 2018-03-07 | 2019-09-18 | 에스케이하이닉스 주식회사 | 메모리 시스템, 그것의 동작 방법 및 전자 장치 |
-
2018
- 2018-01-29 KR KR1020180010854A patent/KR102410306B1/ko active IP Right Grant
- 2018-08-21 US US16/107,274 patent/US10877857B2/en active Active
- 2018-09-13 CN CN201811066744.8A patent/CN110096222B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6031758A (en) * | 1996-02-29 | 2000-02-29 | Hitachi, Ltd. | Semiconductor memory device having faulty cells |
US20060031710A1 (en) * | 2004-08-04 | 2006-02-09 | Jo Seong-Kue | Flash memory device for performing bad block management and method of performing bad block management of flash memory device |
CN101263462A (zh) * | 2005-08-03 | 2008-09-10 | 桑迪士克股份有限公司 | 具有区块管理的非易失性存储器 |
CN101859604A (zh) * | 2009-04-10 | 2010-10-13 | 国民技术股份有限公司 | 闪存坏块的利用方法 |
US20110063909A1 (en) * | 2009-09-16 | 2011-03-17 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory and method of testing the same |
CN104461750A (zh) * | 2013-09-25 | 2015-03-25 | 北京兆易创新科技股份有限公司 | 一种NAND flash的访问方法和装置 |
CN104750565A (zh) * | 2013-12-31 | 2015-07-01 | 重庆重邮信科通信技术有限公司 | Nand坏块处理方法及nand闪存设备 |
CN104091617A (zh) * | 2014-06-17 | 2014-10-08 | 深圳市江波龙电子有限公司 | 一种闪存存储设备检测的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110096222B (zh) | 2022-09-02 |
KR20190091816A (ko) | 2019-08-07 |
US20190235976A1 (en) | 2019-08-01 |
US10877857B2 (en) | 2020-12-29 |
KR102410306B1 (ko) | 2022-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102503177B1 (ko) | 메모리 시스템 및 그것의 동작 방법 | |
US10970230B2 (en) | Memory system and operating method thereof | |
CN110221992A (zh) | 存储器系统以及存储器系统的操作方法 | |
US20200201571A1 (en) | Memory system and operating method thereof | |
US10698614B2 (en) | Memory system and operating method thereof | |
US11645010B2 (en) | Solid state drive (SSD) memory system improving the speed of a read operation using parallel DMA data transfers | |
CN110096222A (zh) | 存储器系统及存储器系统的操作方法 | |
KR20190092941A (ko) | 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법 | |
US20210210148A1 (en) | Memory system and operating method thereof | |
US11481122B2 (en) | Memory system and operating method thereof | |
CN110162485A (zh) | 存储系统及其操作方法 | |
US20190155700A1 (en) | Memory system and method of operating the same | |
CN109491590A (zh) | 存储器控制器、具有其的存储器系统及其操作方法 | |
US11114172B2 (en) | Memory system and method of operating the same | |
CN111209224A (zh) | 存储器系统及其操作方法 | |
US11295830B2 (en) | Memory system and operating method of the memory system | |
US11461046B2 (en) | Memory system with memory controller managing an accumulated erase count value and an open block erase count value and method of operating the same | |
US20210134383A1 (en) | Memory system and operating method of the memory system | |
US11651827B2 (en) | Semiconductor memory device and operating method thereof | |
CN109671463A (zh) | 存储器控制器和存储器系统 |
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 |