CN113961141A - 存储器***、存储器控制器以及操作存储器***的方法 - Google Patents
存储器***、存储器控制器以及操作存储器***的方法 Download PDFInfo
- Publication number
- CN113961141A CN113961141A CN202110267931.8A CN202110267931A CN113961141A CN 113961141 A CN113961141 A CN 113961141A CN 202110267931 A CN202110267931 A CN 202110267931A CN 113961141 A CN113961141 A CN 113961141A
- Authority
- CN
- China
- Prior art keywords
- memory
- level
- memory system
- memory controller
- firmware
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000015654 memory Effects 0.000 title claims abstract description 257
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000012545 processing Methods 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 6
- 238000012937 correction Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 18
- 238000001514 detection method Methods 0.000 description 15
- 239000000872 buffer Substances 0.000 description 14
- 239000010410 layer Substances 0.000 description 10
- 230000003936 working memory Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000013507 mapping Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 239000000470 constituent Substances 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 230000007257 malfunction Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000001052 transient effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000012212 insulator Substances 0.000 description 1
- 239000002346 layers by function Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
- G11C5/143—Detection of memory cassette insertion or removal; Continuity checks of supply or ground lines; Detection of supply variations, interruptions or levels ; Switching between alternative supplies
-
- 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
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- 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/0653—Monitoring storage devices or 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/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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/021—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
-
- 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/12005—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details comprising voltage or current generators
-
- 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/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- 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/50—Marginal testing, e.g. race, voltage or current testing
- G11C29/50004—Marginal testing, e.g. race, voltage or current testing of threshold voltage
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/005—Circuit means for protection against loss of information of semiconductor storage devices
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)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Power Engineering (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本公开的实施例涉及一种存储器***、存储器控制器以及操作存储器***的方法。根据本公开的实施例,当从被配置为感测供给电压的电平的压降检测器接收到指示供应到存储器***的供给电压保持在第一电平或低于第一电平第一单位时间的信息时,存储器***可以对目标代码执行完整性检查操作。因此,存储器***能够在发生位翻转的状态下最小化操作时间并且防止由于固件故障而导致在存储器装置中记录无法恢复的数据的问题。
Description
相关申请的交叉引用
本申请要求于2020年7月20日提交的申请号为10-2020-0089320的韩国专利申请的优先权,该韩国专利申请通过引用整体并入本文。
技术领域
本公开的实施例涉及一种存储器***、存储器控制器以及操作存储器***的方法。
背景技术
例如存储装置的存储器***基于来自诸如计算机、移动终端(例如,智能电话或平板电脑)或各种其他电子装置中的任意一种的主机的请求来存储数据。存储器***可以是一种在诸如硬盘驱动器(HDD)的磁盘中存储数据的装置,或者是一种在诸如固态驱动器(SSD)、通用闪存装置(UFS)或嵌入式MMC(eMMC)装置的非易失性存储器中存储数据的装置。
存储器***可以进一步包括用于控制存储器装置的存储器控制器。存储器控制器可以从主机接收命令并且可以基于所接收的命令来运行或控制在存储器***中包括的易失性存储器或非易失性存储器中读取、写入或擦除数据的操作。存储器控制器可以驱动执行用于控制这种操作的逻辑操作的固件。
同时,在存储器***执行从存储器装置读取或擦除数据或者向存储器装置写入数据时,存储器***中存在的代码中可能发生位翻转,这可能导致存储器***发生故障。可能存在各种导致位翻转的原因,但最常见的原因是由于出现瞬时峰值电流而引起的供给电压不稳定。
发明内容
本公开的实施例可以提供一种在发生位翻转的状态下能够减少或最小化操作时间的存储器***、存储器控制器以及操作存储器***的方法。
另外,本公开的实施例可以提供一种能够防止由于固件故障而导致在存储器装置中记录无法恢复的数据的问题的存储器***、存储器控制器以及操作存储器***的方法。
一方面,本公开的实施例可以提供一种包括存储器装置和存储器控制器的存储器***。
存储器控制器可以与存储器装置通信,并且可以运行固件以控制存储器装置。
当从被配置为感测供给电压的电平的压降检测器接收到指示供应到存储器***的供给电压保持在第一电平或低于第一电平第一单位时间的信息时,存储器控制器可以对存储器装置中存储的目标代码执行完整性检查操作。
在这种情况下,目标代码可以是固件代码。
当对目标代码进行完整性检查操作失败的次数大于或等于阈值数量时,存储器控制器可以执行错误处理操作以防止固件故障。
例如,错误处理操作可以包括停止运行固件。
作为另一示例,错误处理操作可以包括校正目标代码中正在发生的错误。
当从压降检测器接收到指示供给电压保持在第二电平或低于第二电平第二单位时间的信息时,存储器控制器可以执行错误处理操作。
另一方面,本公开的实施例可以提供一种存储器控制器,该存储器控制器包括:存储器接口,被配置为与存储器装置通信;以及处理器,被配置为通过存储器接口与存储器装置通信并且运行固件以控制存储器装置。
处理器可以与存储器装置通信,并且可以运行固件以控制存储器装置。
当从被配置为感测供给电压的电平的压降检测器接收到指示供应到存储器***的供给电压保持在第一电平或低于第一电平第一单位时间的信息时,处理器可以对存储器装置中存储的目标代码执行完整性检查操作。
在这种情况下,目标代码可以是固件代码。
当对目标代码进行完整性检查操作失败的次数大于或等于阈值数量时,处理器可以执行错误处理操作以防止固件故障。
例如,错误处理操作可以包括停止运行固件。
作为另一示例,错误处理操作可以包括校正目标代码中正在发生的错误。
当从压降检测器接收到指示供给电压保持在第二电平或低于第二电平第二单位时间的信息时,处理器可以执行错误处理操作。
另一方面,本公开的实施例可以提供操作包括存储器装置的存储器***的方法。
操作存储器***的方法可以包括以下步骤:通过压降检测器来检测供应到存储器***的供给电压的电平。
另外,操作存储器***的方法可以包括以下步骤:从压降检测器接收指示供给电压保持在第一电平或低于第一电平第一单位时间的信息。
另一方面,本公开的实施例可以提供控制器的操作方法。
操作方法可以包括以下步骤:当供给电压保持低于第一阈值第一时间量时,根据对固件代码的完整性检查的结果,对固件代码执行错误处理操作。
操作方法可以包括以下步骤:当供给电压保持低于第二阈值第二时间量时,执行错误处理操作,而不考虑完整性检查。
第一阈值可以高于第二阈值。
根据本公开的实施例,可以在发生位翻转的状态下最小化操作时间。
另外,根据本公开的实施例,可以防止由于固件故障而导致在存储装置中记录无法恢复的数据的问题。
附图说明
通过以下结合附图的详细描述,本公开的以上和其他方面、特征以及优点将更加明显。
图1是示出根据本公开的实施例的存储器***的配置的示意图。
图2是示意性地示出根据本公开的实施例的存储器装置的框图。
图3是示出根据本公开的实施例的存储器装置的字线和位线的结构的示图。
图4是示出根据本公开的实施例的存储器***的操作的示图。
图5是示出根据本公开的实施例的存储器控制器执行完整性检查操作的示例的流程图。
图6是示出根据本公开的实施例的存储器控制器对目标代码执行完整性检查操作的情况的示图。
图7是示出目标代码的示例的示图。
图8是示出根据本公开的实施例的存储器控制器的操作的流程图。
图9是示出根据本公开的实施例的存储器控制器执行错误处理操作的示例的流程图。
图10是示出根据本公开的实施例的存储器控制器执行错误处理操作的情况的示图。
图11是示出根据本公开的实施例的操作存储器***的方法的流程图。
图12是示出根据本公开的实施例的计算***的配置的示图。
具体实施方式
在下文中,参照附图详细描述本公开的实施例。在整个说明书中,对“实施例”、“另一实施例”等的引用不一定是仅针对一个实施例,并且对任意这种短语的不同引用不一定是针对相同的(多个)实施例。术语“实施例”在本文中使用时未必指的是所有实施例。
图1是示出根据本公开的实施例的存储器***100的示意性配置的示图。
参照图1,存储器***100可以包括:存储器装置110,被配置为存储数据;以及存储器控制器120,被配置为控制存储器装置110。
存储器装置110可以包括多个存储块。存储器装置110可以被配置为响应于从存储器控制器120接收到的控制信号而操作。存储器装置110的操作可以包括,例如,读取操作、编程操作(也被称为写入操作)、擦除操作等。
存储器装置110可以包括存储器单元阵列,该存储器单元阵列包括被配置存储数据的多个存储器单元(也简称为“单元”)。存储器单元阵列可以存在于存储块内。
例如,存储器装置110可以被实施为各种类型中的任意一种,诸如双倍数据速率同步动态随机存取存储器(DDR SDRAM)、低功率双倍数据速率4(LPDDR4)SDRAM、图形双倍数据速率(GDDR)SDRAM、低功率DDR(LPDDR)、Rambus动态随机存取存储器(RDRAM)、NAND闪速存储器、垂直NAND闪速存储器、NOR闪速存储器、电阻式随机存取存储器(RRAM)、相变随机存取存储器(PRAM)、磁阻随机存取存储器(MRAM)、铁电随机存取存储器(FRAM)或自旋转移力矩随机存取存储器(STT-RAM)。
存储器装置110可以在三维阵列结构中实施。本公开的实施例不仅可应用于具有被配置为导电浮栅的电荷存储层的闪速存储器装置,而且可应用于具有电荷撷取闪存(CTF)的闪速存储器装置,该电荷撷取闪存(CTF)具有被配置为绝缘薄膜的电荷存储层。
存储器装置110可以被配置为从存储器控制器120接收命令和地址并且访问使用该地址所选择的存储器单元阵列的区域。即,存储器装置110可以在存储器装置的存储器区域中执行与所接收的命令相对应的操作,该存储器区域具有与从存储器控制器120所接收的地址相对应的物理地址。
例如,存储器装置110可以执行编程操作、读取操作、擦除操作等。在编程操作期间,存储器装置110可以对在由该地址所选择的区域中的数据进行编程。在读取操作期间,存储器装置110可从由该地址选择的区域读取数据。在擦除操作期间,存储器装置110可以擦除由该地址选择的区域中存储的数据。
存储器控制器120可以控制对存储器装置110的写入(编程)、读取、擦除以及后台操作。后台操作可以包括,例如,垃圾收集操作(GC)、损耗均衡(WL)操作和/或坏块管理(BBM)操作。
存储器控制器120可以应主机的请求而控制存储器装置110的操作。可选地,例如,当存储器控制器120执行存储器装置的一个或多个后台操作时,存储器控制器120可以在没有相应的主机请求的情况下控制存储器装置110的操作。
存储器控制器120和主机可以是单独的装置。在一些例子中,存储器控制器120和主机可以集成并实施为单个装置。在以下描述中,存储器控制器120和主机是单独的装置。
参照图1,存储器控制器120可以包括存储器接口122、控制电路123和主机接口121。
主机接口121可以被配置为提供用于与主机通信的接口。
当从主机(HOST)接收命令时,控制电路123可以通过主机接口121接收该命令并且可以执行处理所接收的命令的操作。
存储器接口122可以连接到存储器装置110以提供与存储器装置110通信的接口。即,存储器接口122可以被配置为响应于控制电路123的控制而向存储器装置110和存储器控制器120提供接口。
控制电路123可以被配置为通过执行整体控制存储器控制器120的操作来控制存储器装置110的操作。例如,控制电路123可以包括处理器124和工作存储器125。控制电路123可以进一步包括错误检测/校正电路(ECC电路)126等。
处理器124可以控制存储器控制器120的整体操作。处理器124可以执行逻辑操作。处理器124可以通过主机接口121与主机通信。处理器124可以通过存储器接口122与存储器装置110通信。
处理器124可以执行闪存转换层(FTL)的功能。处理器124可以通过FTL将由主机提供的逻辑块地址(LBA)转换成物理块地址(PBA)。FTL可以接收LBA并且通过使用映射表将LBA转换成PBA。
根据映射单元,存在FTL可以采用的各种地址映射方法。典型的地址映射方法包括页面映射方法、块映射方法和混合映射方法。
处理器124可以被配置为使从主机接收的数据随机化。例如,处理器124可以通过使用随机化种子使从主机接收的数据随机化。经随机化的数据被提供到存储器装置110以被存储,并且被编程在存储器单元阵列中。
处理器124可以被配置为在读取操作期间使从存储器装置110接收的数据去随机化。例如,处理器124可以通过使用去随机化种子使从存储器装置110接收的数据去随机化。可以将经去随机化的数据输出到主机。
处理器124可以运行固件(FW)以控制存储器控制器120的操作。换言之,处理器124可以控制存储器控制器120的整体操作并且为了执行逻辑操作,可以运行(驱动)在启动期间加载到工作存储器125中的固件。
固件是指在存储器***100内运行的程序,并且可以包括各种功能层。
例如,固件可以包括:闪存转换层(FTL),被配置为在主机从存储器***100请求的逻辑地址与存储器装置110的物理地址之间进行转换;主机接口层(HIL),被配置为解释主机HOST发给存储器***100(存储装置)的命令并且将该命令传递到FTL;和/或闪存接口层(FIL),被配置为将FTL发出的命令传递到存储器装置110。
例如,固件可以存储在存储器装置110中,然后加载到工作存储器125中。
工作存储器125可以存储固件、程序代码、命令或数据条以驱动存储器控制器120。工作存储器125可以包括,例如,静态RAM(SRAM)、动态RAM(DRAM)和/或同步RAM(SDRAM)作为易失性存储器。
错误检测/校正电路126可以被配置为通过使用错误校正码来检测目标数据中的(多个)错误,并且校正检测到的(多个)错误位。例如,目标数据可以是在工作存储器125中存储的数据、从存储器装置110检索的数据等。
错误检测/校正电路126可以被实施以通过使用错误校正码来对数据进行解码。错误检测/校正电路126可以通过使用各种代码解码器来实施。例如,可以使用执行非***的代码解码的解码器或执行***的代码解码的解码器。
例如,错误检测/校正电路126可以对所读取的数据中的每一条逐区段地检测(多个)错误位。即,所读取的数据中的每一条可以包括多个区段。如本文中所使用的,区段可以指的是小于闪速存储器的读取单位(页面)的数据单位。组成所读取的数据中的每一条的区段可以经由地址相互对应。
错误检测/校正电路26可以计算位错误率(BER)并且确定是否可以逐区段进行校正。例如,如果BER大于参考值,错误检测/校正电路126可以确定相应的区段是无法校正的或“失败”。如果BER小于或等于参考值,错误检测/校正电路126可以确定相应的区段是可校正的或“通过”。
错误检测/校正电路126可以依次对所有所读取的数据条执行错误检测和校正操作。当所读取的数据中的区段可校正时,错误检测/校正电路126可以对下一条所读取的数据省略与相应的区段有关的错误检测和校正操作。在以这种方式对所有所读取的数据条完成错误检测和校正操作之后,错误检测/校正电路126可以检测被认为不可校正的区段。可以存在一个或多个被认为不可校正的区段。错误检测/校正电路126可以将关于被认为不可校正的区段的信息(例如,地址信息)传递到处理器124。
总线127可以被配置为提供存储器控制器120的构成元件121、122、124、125和126之间的通道。总线127可以包括,例如,传递各种类型的控制信号和命令的控制总线以及传递各种类型的数据的数据总线。
仅作为示例提供上述存储器控制器120的构成元件121、122、124、125和126。注意的是,可以省略上述存储器控制器120的构成元件121、122、124、125和126中的一个或多个,或者可以将这种构成元件中的一个或多个集成为单个元件。另外,在一些例子中,除了上述构成元件之外,可以将一个或多个其它构成元件添加到存储器控制器120。
在下文中,参照图2更详细地描述存储器装置110。
图2是示意性地示出根据本公开的实施例的存储器装置110的框图。
参照图2,根据本公开的实施例的存储器装置110可以包括存储器单元阵列210、地址解码器220、读取/写入电路230、控制逻辑240和电压生成电路250。
存储器单元阵列210可以包括多个存储块BLK1-BLKz,其中z是等于或大于2的自然数。
在多个存储块BLK1-BLKz中,可以设置多条字线WL和多条位线BL,并且可以在多条字线WL和多条位线BL的相交处布置多个存储器单元MC。
多个存储块BLK1-BLKz可以通过多条字线WL连接到地址解码器220。多个存储块BLK1-BLKz可以通过多条位线BL连接到读取/写入电路230。
多个存储块BLK1-BLKz中的每一个可以包括多个存储器单元。例如,多个存储器单元是非易失性存储器单元,并且可以包括具有垂直通道结构的非易失性存储器单元。
存储器单元阵列210可以被配置为具有二维结构的存储器单元阵列并且在一些例子中可以被配置为具有三维结构的存储器单元阵列。
存储器单元阵列210中包括的多个存储器单元中的每一个可以存储至少一位数据。例如,存储器单元阵列210中的多个存储器单元中的每一个可以是被配置为存储一位数据的单层单元(SCL)、被配置为存储两位数据的多层单元(MLC)、被配置为存储三位数据的三层单元(TLC)或被配置为存储四位数据的四层单元(QLC)。作为另一示例,存储器单元阵列210可以包括多个存储器单元,多个存储器单元中的每一个可以被配置为存储五位或更多位数据。典型地,存储器单元阵列中的所有存储器单元具有相同的层,但是这不作要求。
参照图2,地址解码器220、读取/写入电路230、控制逻辑240和电压生成电路250可以作为被配置为驱动存储器单元阵列210的***电路而共同操作。
地址解码器220可以通过多条字线WL连接到存储器单元阵列210。
地址解码器220可以被配置为响应于控制逻辑240的控制而操作。
地址解码器220可以通过存储器装置110内的输入/输出缓冲器来接收地址。地址解码器220可以被配置为对所接收的地址之中的块地址进行解码。地址解码器220可以根据经解码的块地址来选择至少一个存储块。
地址解码器220可以从电压生成电路250接收读取电压Vread和通过电压Vpass。
地址解码器220可以在读取操作期间施加读取电压时向所选择的存储块内的所选择的字线WL施加读取电压Vread,并且可以向剩余的未选择的字线WL施加通过电压Vpass。
地址解码器220可以在编程验证操作期间向所选择的存储块内的所选择的字线WL施加由电压生成电路250生成的验证电压,并且可以向剩余的未选择的字线WL施加通过电压Vpass。
地址解码器220可以被配置为对所接收的地址之中的列地址进行解码。地址解码器220可以向读取/写入电路230传输经解码的列地址。
存储器装置110可以逐页地执行读取操作和编程操作。当请求读取操作和编程操作时所接收的地址可以包括块地址、行地址和列地址中的任意一个。
地址解码器220可以根据块地址和行地址来选择一个存储块和一条字线。可以由地址解码器220对列地址进行解码并且可以向读取/写入电路230提供列地址。
地址解码器220可以包括块解码器、行解码器、列解码器和/或地址缓冲器。
读取/写入电路230可以包括多个页面缓冲器PB。当存储器单元阵列210执行读取操作时,读取/写入电路230可以作为读取电路而操作,并且当存储器单元阵列210执行写入操作时可以作为写入电路而操作。
上述读取/写入电路230也被称为包括多个页面缓冲器PB的页面缓冲器电路,或数据寄存器电路。读取/写入电路230可以包括参与数据处理功能的数据缓冲器,并且在一些例子中,可以进一步包括以高速缓存功能操作的高速缓存缓冲器。
多个页面缓冲器PB可以通过多条位线BL连接到存储器单元阵列210。为了感测存储器单元在读取操作和编程验证操作期间的阈值电压Vth,多个页面缓冲器PB可以将感测电流连续地供应到连接到存储器单元的位线BL,可以通过感测节点来感测根据相应的存储器单元的编程状态而流动的电流的量的变化,并且可以将该电流的量的变化锁存为感测数据。
读取/写入电路230可以响应于从控制逻辑240输出的页面缓冲器控制信号而操作。
在读取操作期间,读取/写入电路230感测存储器单元中的数据、临时存储所检索的数据并且将该数据(DATA)输出到存储器装置110的输入/输出缓冲器。在实施例中,除了页面缓冲器PB或页面寄存器,读取/写入电路230可以包括列选择电路。
控制逻辑240可以连接到地址解码器220、读取/写入电路230和电压生成电路250。控制逻辑240可以通过存储器装置110的输入/输出缓冲器来接收命令CMD和控制信号CTRL。
控制逻辑240可以被配置为响应于控制信号CTRL而控制存储器装置110的整体操作。控制逻辑240可以输出用于调节多个页面缓冲器PB的感测节点的预充电电势电平的控制信号。
控制逻辑240可以控制读取/写入电路230在存储器单元阵列210中执行读取操作。电压生成电路250可以响应于从控制逻辑240输出的电压生成电路控制信号而生成在读取操作期间使用的读取电压Vread和通过电压Vpass。
存储器装置110中包括的存储块BLK可以由多个页面PG和多个串组成。多个页面PG对应于多条字线WL,并且多个串STR对应于多条位线BL。
在存储块BLK中,多条字线WL和多条位线BL可以布置为相交。例如,可以沿行方向布置多条字线WL中的每一条,并且可以沿列方向布置多条位线BL中的每一条。作为另一示例,可以沿列方向布置多条字线WL中的每一条,并且可以沿行方向布置多条位线BL中的每一条。
多条字线WL和多条位线BL可以相互交叉,从而限定多个存储器单元MC。每个存储器单元MC可以具有布置在其中的晶体管TR。
例如,布置在每个存储器单元MC中的晶体管TR可以包括漏极、源极和栅极。晶体管TR的漏极(或源极)可以直接或经由另一晶体管TR连接到相应的位线BL。晶体管TR的源极(或漏极)可以直接或经由另一晶体管TR连接到源极线(其可以是接地线)。晶体管TR的栅极可以包括:浮栅(FG),由绝缘体围绕;以及控制栅(CG),栅极电压从字线WL施加到控制栅(CG)。
在多个存储块BLK1-BLKz中的每一个中,第一选择线(也被称为源极选择线或漏极选择线)可以另外布置在第一最外侧字线外,在两条最外侧字线之中,第一最外侧字线更接近读取/写入电路230,并且第二选择线(也被称为漏极选择线或源极选择线)可以另外布置在另一第二最外侧字线外。
在一些例子中,至少一条虚设字线可以另外布置在第一最外侧字线和第一选择线之间。另外,至少一条虚设字线可以另外布置在第二最外侧字线和第二选择线之间。
可以逐页面地执行存储块的读取操作和编程操作(写入操作),并且可以逐存储块地执行擦除操作。
图3是示出根据本公开的实施例的存储器装置110的字线WL和位线BL的结构的示图。
参照图3,存储器装置110具有聚集存储器单元MC的内核区域,以及对应于剩余的(非内核的)区域的辅助区域。辅助区域支持存储器单元阵列210的操作。
内核区域可以包括页面PG和串STR。在内核区域中,多条字线WL1-WL9和多条位线B相交布置。
字线WL1-WL9可以连接到行解码器310。位线BL可以连接到列解码器320。对应于图2的读取/写入电路230的数据寄存器330可以存在于多条位线BL和列解码器320之间。
多条字线WL1-WL9可以对应于多个页面PG。
例如,多条字线WL1-WL9中的每一个可以对应于如图3所示的一个页面PG。当多条字线WL1-WL9中的每一个具有较大的大小时,多条字线WL1-WL9中的每一个可以对应于至少两个(例如,两个或四个)页面PG。每个页面PG是与进行编程操作和读取操作有关的最小单元,并且相同页面PG内的所有存储器单元MC可以在进行编程操作和读取操作时执行同步操作。
多条位线BL可以连接到列解码器320,同时被区分为偶数位线BL和奇数位线BL。
为了访问存储器单元MC,可以首先通过输入/输出端然后通过行解码器310和列解码器320向内核区域输入地址,使得可以指定相应的目标存储器单元。如本文中所使用的,指定目标存储器单元是指访问在连接到行解码器310的字线WL1-WL9与连接到列解码器320的位线BL之间相交的位置处的存储器单元MC中的一个,以对在该存储器单元MC中的数据进行编程或从该存储器单元MC读取经编程的数据。
由被称为字线WL的常用线界定第一方向(例如,X-轴方向)上的页面PG,并且由被称为位线BL的公共线界定(联接)第二方向(例如,Y-轴方向)上的串STR。如本文所使用的,被公共地界定是指由相同的材料在结构上连接并且在电压施加期间同时接收相同的电压。由于跨越先前的(多个)存储器单元MC上的压降,导致施加到在串联连接的存储器单元MC之中位于上游或上行线的存储器单元MC的电压可能会与施加到下游或下行线存储器单元MC的电压稍微不同。
因为包括编程操作和读取操作的通过存储器装置110的所有数据处理经由数据寄存器330发生,所以数据寄存器330起着重要作用。如果通过数据寄存器330的数据处理延迟,则所有其它区域需要等待直到数据寄存器330完成数据处理。另外,数据寄存器330的性能下降可能会使存储器装置110的整体性能下降。
参照图3所示的示例,在一个串STR中,多个晶体管TR1-TR9可以连接到多条字线WL1-WL9。多个晶体管TR1-TR9对应于存储器单元MC。在本示例中,多个晶体管TR1-TR9包括控制栅极CG和浮栅FG。
多条字线WL1-WL9包括两条最外侧字线WL1和WL9。第一选择线DSL可以另外布置在第一最外侧字线WL1外,在两条最外侧字线WL1和WL9之中,就信号路径而言,第一最外侧字线WL1更靠近数据寄存器330。第二选择线SSL可以另外布置在第二最外侧字线WL9外。
被控制以由第一选择线DSL导通/关断的第一选择晶体管D-TR具有连接到第一选择线DSL的栅电极,但不包括浮栅FG。被控制以由第二选择线SSL导通/关断的第二选择晶体管S-TR具有连接到第二选择线SSL的栅电极,但不包括浮栅FG。
第一选择晶体管D-TR起着导通或关断相应的串STR与数据寄存器330之间的连接的开关的作用。第二选择晶体管S-TR起着导通或关断相应的串STR和源极线SL之间的连接的开关的作用。即,第一选择晶体管D-TR和第二选择晶体管S-TR起着位于相应的串STR的相对端并且传递/阻挡信号的网守(gatekeeper)的作用。
在编程操作期间,存储器***100用电子填充待编程的位线BL的目标存储器单元MC。因此,存储器***100向第一选择晶体管D-TR的栅电极施加导通电压Vcc,从而导通第一选择晶体管D-TR,并且向第二选择晶体管S-TR的栅电极施加关断电压(例如,0V),从而关断第二选择晶体管S-TR。
在读取操作或验证操作期间,存储器***100导通第一选择晶体管D-TR和第二选择晶体管S-TR两者。因此,在读取操作或验证操作期间,电流可以流经相应的串STR并流出到对应于地的源极线SL,使得可以测量位线BL的电压电平。然而,在读取操作期间,第一选择晶体管D-TR和第二选择晶体管S-TR之间的通/断定时中可能存在时间差。
在擦除操作期间,存储器***100可以通过源极线SL向衬底供应电压(例如,+20V)。在擦除操作期间,存储器***100使第一选择晶体管D-TR和第二选择晶体管S-TR两者浮置,从而生成无穷大的电阻。因此,可以移除第一选择晶体管D-TR的影响和第二选择晶体管S-TR的影响,并且由于电势差,电子可以仅在浮栅FG和衬底之间操作。
图4是示出根据本公开的实施例的存储器***的操作的示图。
参照图4,存储器***100可以包括用于检测供应到存储器***100的供给电压的电平的压降检测器VDT。尽管在图4中通过示例的方式示出压降检测器VDT设置在存储器***100内,但是本发明不限于该布置。在另一实施例中,压降检测器VDT可以在存储器***100的外部。
压降检测器VDT可以测量供给电压的电平随时间的变化。压降检测器VDT可以检测随时间变化的供给电压的电平,并且可以将供给电压的电平从模拟值转换为数字值。
另外,压降检测器VDT可以检测与供给电压的电平有关的压降模式,并且可以将关于检测到的压降模式的信息传输到存储器控制器120。
可以以设置命令或信号的形式将关于压降模式的信息传输到存储器控制器120,或者可以通过将值存储在状态寄存器中的方法来将关于压降模式的信息传输到存储器控制器120。
如上所述,存储器控制器120的处理器124可以运行(驱动)在启动时从存储器装置110加载到工作存储器125的固件,以控制存储器控制器120的整体操作并且执行逻辑操作。
存储器控制器120的处理器124可以驱动加载到工作存储器125中的固件,可以接收从压降检测器VDT传输的关于压降模式的信息,并且可以根据压降模式来运行处理操作。
图5是示出根据本公开的实施例的存储器控制器120执行完整性检查操作的示例的流程图。
存储器控制器120可以从压降检测器VDT接收指示供给电压保持在第一电平(例如,1.7V)或低于第一电平(例如,1.7V)第一单位时间的信息(S510)。
当存储器控制器120从压降检测器VDT接收指示供给电压保持在第一电平或低于第一电平第一单位时间的信息时,存储器控制器120可以对目标代码执行完整性检查操作(S520)。在这种情况下,目标代码可以是在存储器装置110中存储的代码或在单独的只读存储器(例如,ROM)中存储的代码。
在本公开的实施例中,如果供给电压在第一单位时间期间保持在第一电平或低于第一电平,则很可能由于供给电压的不稳定性而导致在读取目标代码的进程中发生位翻转,因此存储器控制器120可以执行完整性检查操作。
目标代码中的位翻转是由瞬时峰值电流消耗而导致的供给电压的不稳定性引起的,但是无法准确预测何时会出现峰值电流。因此,存储器控制器120难以准确地确定将发生位翻转的时间。另外,存储器***100不具有能够自动校正目标代码中的位翻转的硬件。
因此,当在目标代码中极有可能发生位翻转时,存储器控制器120可以对目标代码执行完整性检查操作,并且在发生位翻转时,存储器控制器120可以通过软件来校正。因此,存储器控制器120可以快速检测在目标代码中发生的位翻转,并且可以在目标代码中发生位翻转的状态下最小化或减少操作时间。
如参照图8所述,根据对目标代码的完整性检查操作的结果,可以对目标代码执行错误处理操作。例如,当作为完整性检查操作的结果确定不执行错误处理操作时,存储器控制器120可以在完成完整性检查操作之后运行目标代码。
在这种情况下,用于完整性检查操作的算法可以是,例如,使用SHA、MD5等的校验和类型的算法(checksum-type algorithm)。作为另一示例,在完整性检查操作中使用的算法可以是用于基于对目标代码的位值执行的XOR运算的结果值来计算奇偶校验的算法。
图6是示出根据本公开的实施例的存储器控制器120对目标代码执行完整性检查操作的情况的示图。
参照图6,压降检测器VDT可以检测供给电压随时间的变化。在压降检测器VDT检测到在第一单位时间T1期间测量的供给电压保持在第一电平LV_1或低于第一电平LV_1时,存储器控制器120可以对目标代码执行完整性检查操作。
然而,如果供给电压在T1期间仅暂时地等于或小于第一电平LV_1,则存储器控制器120不对目标代码执行完整性检查操作。即,除非供给电压在整个T1期间等于或小于第一电平LV_1,否则不执行完整性检查操作。在另一实施例中,T1可以大于图6所示,在这种情况下,供给电压必须保持在LV_1或低于LV_1更长的一段时间。
图7是示出目标代码的示例的示图。
参照图7,目标代码TGT_CODE可以是在存储器装置110中存储的固件代码。在本公开的实施例中,从在存储器装置110中存储的各种类型的数据(例如,用户数据、元数据等)之中选择固件代码作为目标代码TGT_CODE的原因如下。
在固件代码中发生位翻转时,固件有可能操作异常,因此异常数据将写入存储器装置110的可能性也增加。
一旦异常数据被写入到存储器装置110,被写入数据的区域不再可恢复。因此,为了防止固件故障,当在固件代码中可能发生位翻转时,存储器控制器120可以对固件代码执行完整性检查操作。
另一方面,如果在发生位翻转时停止固件的操作,则可能丢失在存储器***100中的易失性存储器中存储的数据。然而,可以在重置存储器***100之后通过设置的恢复进程来恢复数据。
图8是示出根据本公开的实施例的存储器控制器120的操作的流程图。
参照图8,存储器控制器120可以对目标代码TGT_CODE执行完整性检查操作(S810)。
此后,存储器控制器120确定对目标代码TGT_CODE的完整性检查操作是否失败(S820)。
在对目标代码TGT_CODE的完整性检查操作失败时(S820中为“是”),存储器控制器120确定对目标代码TGT_CODE的完整性检查操作失败的次数是否大于或等于设置的阈值次数,例如3或5(S830)。
在对目标代码TGT_CODE的完整性检查操作失败的次数小于设置的阈值次数时(S830中为“否”),存储器控制器120可以重复步骤S810。这是由于以下事实:因为在目标代码TGT_CODE中发生的位翻转是暂时现象,所以当存储器控制器120再次读取目标代码TGT_CODE时,很有可能目标代码TGT_CODE被正常读取而不发生位翻转。
另一方面,在对目标代码TGT_CODE的完整性检查操作失败的次数大于或等于设置的阈值次数时(S830中为“是”),存储器控制器120可以在S840中执行错误处理操作以防止固件故障。这是由于以下事实:因为在目标代码TGT_CODE中发生的位翻转不是暂时现象,所以固件故障的可能性增加。
错误处理操作可以由主机(HOST)触发。即,在存储器***100使用命令或信号向主机传输指示在固件的操作期间将发生或可能发生错误的信息时,主机可以触发特定的错误处理操作以防止固件故障。
在这种情况下,错误处理操作可以是校正错误的操作、丢弃发生错误的目标代码的操作、在存储器装置110中记录错误日志的操作、初始化存储器***100的操作等。
例如,错误处理操作可以是停止运行固件的操作。在确定无法防止固件故障时,存储器***100可以停止运行固件,并且可以执行重置操作。
作为另一示例,错误处理操作可以是校正目标代码中发生的错误的操作。在确定目标代码中发生的错误通过软件可校正时,存储器***100可以校正目标代码中发生的错误,而不是停止运行固件。
如上所述,存储器控制器120可以根据完整性检查操作失败的次数来确定是否执行错误处理操作,或者可以基于从上述压降检测器VDT接收的信息来确定是否执行错误处理操作。
图9示出根据本公开的实施例的存储器控制器120执行错误处理操作的示例的流程图。
参照图9,存储器控制器120可以从压降检测器VDT接收指示供给电压保持在第二电平(例如,1.42V)或低于第二电平(例如,1.42V)第二单位时间的信息(S910)。在这种情况下,第二电平等于或小于上述第一电平。即,S910的信息指示比S510的信息更严重的情况。
当从压降检测器VDT接收到指示供给电压保持在第二电平或低于第二电平第二单位时间的信息时,存储器控制器120可以执行上述的错误处理操作(S920)。
在供给电压保持在第二电平或低于第二电平第二单位时间时,固件有可能由于供给电压严重不稳定而发生故障,因此存储器控制器120可以执行错误处理操作以防止固件故障。
图10是示出根据本公开的实施例的存储器控制器120执行错误处理操作的情况的示图。
参照图10,压降检测器VDT可以检测供给电压随时间的变化。当压降检测器VDT检测到在长于第二单位时间TU2的第二时间T2期间测量的供给电压保持在第二电平LV_2或低于第二电平LV_2时,存储器控制器120可以执行错误处理操作。这可以与由存储器控制器120对目标代码执行的完整性检查操作分开执行。即,当对目标代码的完整性检查操作失败的次数大于或等于设置的阈值次数时,或者当压降检测器VDT检测到在第二时间T2期间测量的供给电压保持在第二电平LV_2或低于第二电平LV_2时,存储器控制器120可以执行错误处理操作。
图11是示出根据本公开的实施例的操作存储器***100的方法的流程图。
操作存储器***100的方法可以包括:检测通过压降检测器VDT供应到存储器***100的供给电压的电平(S1110)。
另外,操作存储器***100的方法可以包括:从压降检测器VDT接收指示供给电压保持在第一电平或低于第一电平第一单位时间的信息(S1120)。
另外,操作存储器***100的方法可以包括:对目标代码执行完整性检查操作(S1130)。
操作存储器***100的方法可以进一步包括:在对目标代码的完整性检查操作失败的次数大于或等于阈值次数时,执行错误处理操作,以防止固件故障。
操作存储器***100的方法可以进一步包括:在从压降检测器VDT接收到指示供给电压保持在第二电平或低于第二电平第二单位时间的信息时,进一步执行错误处理操作。在这种情况下,第二电平可以小于或等于第一电平。
上述存储器控制器120的操作可以由控制电路123来控制,并且可以由处理器124来执行,处理器124运行(驱动)被编程以控制存储器控制器120的整体操作的固件。
图12是示出根据本公开的实施例的计算***1200的配置的示图。
参照图12,计算***1200可以包括:存储器***100,与***总线1260电连接;CPU1210,被配置为控制计算***1200的整体操作;RAM 1220,被配置为存储数据和与计算***1200的操作有关的信息;用户接口/用户体验(UI/UX)模块1230,被配置为向用户提供用户环境;通信模块1240,被配置为以有线和/或无线的方式与外部装置通信;以及电源管理模块1250,被配置为管理计算***1200使用的电源。
计算***1200可以是个人计算机(PC)或者可以包括诸如智能电话、平板电脑或各种其它电子装置的移动终端。
计算***1200可以进一步包括用于供应操作电压的电池,并且可以进一步包括应用芯片组、图形相关模块、摄影图像处理器以及DRAM。对本领域技术人员将显而易见的是,可以包括其他元件。
存储器***100可以不仅包括被配置为在诸如硬盘驱动器(HDD)的磁盘中存储数据的装置,而且包括被配置为在诸如固态驱动器(SSD)、通用闪速存储装置或嵌入式MMC(eMMC)装置的非易失性存储器中存储数据的装置。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪速存储器、相变RAM(PRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)和/或铁电RAM(FRAM)。另外,存储器***100可以被实施为各种类型的存储装置中的任意一种,可以在各种电子装置中的任意一种中嵌入各种类型的存储装置中的任意一种。
根据上述本公开的实施例,可以减小或最小化存储器***的操作延迟时间。另外,根据本公开的实施例,可以减小或最小化在调用特定函数的进程中产生的开销。尽管已示出和描述了本公开的各个实施例,但本领域技术人员将领会的是,在不脱离如附图中所陈述的发明的范围和思想的情况下,可以进行各种修改、增加和替换。因此,虽然出于简洁和清楚的目的已经描述了本公开的实施例,但是本发明的范围涵盖落入权利要求范围内的所有变型,包括其等效方案。
Claims (15)
1.一种存储器***,包括:
存储器装置;以及
存储器控制器,与所述存储器装置通信并且运行固件以控制所述存储器装置,
其中当从感测供给电压的电平的压降检测器接收到指示供应到所述存储器***的供给电压保持在第一电平或低于第一电平第一单位时间的信息时,所述存储器控制器进一步对目标代码执行完整性检查操作。
2.根据权利要求1所述的存储器***,其中所述目标代码是固件代码。
3.根据权利要求1所述的存储器***,其中当对所述目标代码进行所述完整性检查操作失败的次数大于或等于阈值数量时,所述存储器控制器进一步执行错误处理操作以防止固件故障。
4.根据权利要求3所述的存储器***,其中所述错误处理操作包括停止运行所述固件。
5.根据权利要求3所述的存储器***,其中所述错误处理操作包括校正所述目标代码中正在发生的错误。
6.根据权利要求3所述的存储器***,
其中当从所述压降检测器接收到指示所述供给电压保持在第二电平或低于第二电平第二单位时间的信息时,所述存储器控制器进一步执行所述错误处理操作,并且
其中所述第二电平等于或小于所述第一电平。
7.一种存储器控制器,包括:
存储器接口,与存储器装置通信;以及
处理器,通过所述存储器接口与所述存储器装置通信并且运行固件以控制所述存储器装置,
其中当从感测供给电压的电平的压降检测器接收到指示供应到存储器***的供给电压保持在第一电平或低于第一电平第一单位时间的信息时,所述处理器进一步对目标代码执行完整性检查操作。
8.根据权利要求7所述的存储器控制器,其中所述目标代码是固件代码。
9.根据权利要求7所述的存储器控制器,其中当对所述目标代码进行所述完整性检查操作失败的次数大于或等于阈值数量时,所述处理器进一步执行错误处理操作以防止固件故障。
10.根据权利要求9所述的存储器控制器,其中所述错误处理操作包括停止运行所述固件。
11.根据权利要求9所述的存储器控制器,其中所述错误处理操作包括校正所述目标代码中正在发生的错误。
12.根据权利要求9所述的存储器控制器,
其中当从所述压降检测器接收到指示所述供给电压保持在第二电平或低于第二电平第二单位时间的信息时,所述处理器进一步执行所述错误处理操作,并且
其中所述第二电平等于或小于所述第一电平。
13.一种操作包括存储器装置的存储器***的方法,所述方法包括:
通过压降检测器检测供应到所述存储器***的供给电压的电平;
从所述压降检测器接收指示所述供给电压保持在第一电平或低于第一电平第一单位时间的信息;并且
对目标代码执行完整性检查操作。
14.根据权利要求13所述的方法,进一步包括:当对所述目标代码进行所述完整性检查操作失败的次数大于或等于阈值数量时,执行错误处理操作以防止固件故障。
15.根据权利要求14所述的方法,
进一步包括:当从所述压降检测器接收到指示所述供给电压保持在第二电平或低于第二电平第二单位时间的信息时,进一步执行所述错误处理操作,
其中所述第二电平等于或小于所述第一电平。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2020-0089320 | 2020-07-20 | ||
KR1020200089320A KR20220010789A (ko) | 2020-07-20 | 2020-07-20 | 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113961141A true CN113961141A (zh) | 2022-01-21 |
CN113961141B CN113961141B (zh) | 2024-02-27 |
Family
ID=79292831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110267931.8A Active CN113961141B (zh) | 2020-07-20 | 2021-03-12 | 存储器***、存储器控制器以及操作存储器***的方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11495319B2 (zh) |
KR (1) | KR20220010789A (zh) |
CN (1) | CN113961141B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080301498A1 (en) * | 2007-06-01 | 2008-12-04 | Holtek Semiconductor Inc. | Control device and control method |
US8742805B2 (en) * | 2012-07-26 | 2014-06-03 | Samsung Electro-Mechanics Co., Ltd. | Power on reset device and power on reset method |
US20170300252A1 (en) * | 2016-04-14 | 2017-10-19 | Hyejin YIM | Storage device including nonvolatile memory device and controller and operating method of the storage device |
CN111352756A (zh) * | 2018-12-20 | 2020-06-30 | 爱思开海力士有限公司 | 检测存储器装置中存储的数据的错误的装置及其操作方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3183337B2 (ja) | 1998-03-30 | 2001-07-09 | 日本電気株式会社 | 半導体集積装置のノイズ対策回路 |
US8634267B2 (en) | 2012-05-14 | 2014-01-21 | Sandisk Technologies Inc. | Flash memory chip power management for data reliability and methods thereof |
-
2020
- 2020-07-20 KR KR1020200089320A patent/KR20220010789A/ko unknown
-
2021
- 2021-01-29 US US17/162,544 patent/US11495319B2/en active Active
- 2021-03-12 CN CN202110267931.8A patent/CN113961141B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080301498A1 (en) * | 2007-06-01 | 2008-12-04 | Holtek Semiconductor Inc. | Control device and control method |
US8742805B2 (en) * | 2012-07-26 | 2014-06-03 | Samsung Electro-Mechanics Co., Ltd. | Power on reset device and power on reset method |
US20170300252A1 (en) * | 2016-04-14 | 2017-10-19 | Hyejin YIM | Storage device including nonvolatile memory device and controller and operating method of the storage device |
CN111352756A (zh) * | 2018-12-20 | 2020-06-30 | 爱思开海力士有限公司 | 检测存储器装置中存储的数据的错误的装置及其操作方法 |
Also Published As
Publication number | Publication date |
---|---|
US20220020447A1 (en) | 2022-01-20 |
KR20220010789A (ko) | 2022-01-27 |
US11495319B2 (en) | 2022-11-08 |
CN113961141B (zh) | 2024-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11532360B2 (en) | Memory system, memory device, and method for operating memory device | |
CN113010459A (zh) | 存储器***、存储器控制器以及操作存储器***的方法 | |
CN113806254B (zh) | 存储器***、存储器控制器及存储器***的操作方法 | |
CN114242152A (zh) | 存储器***及其操作方法 | |
CN113903384A (zh) | 存储器***、存储器控制器以及操作存储器***的方法 | |
US11467903B2 (en) | Memory system and operating method thereof | |
US12039190B2 (en) | Memory system and operating method of the memory system for calibrating a history read bias based on a number of error bits generated in a read operation | |
CN113961141B (zh) | 存储器***、存储器控制器以及操作存储器***的方法 | |
CN112925476A (zh) | 存储器***、存储器控制器及其操作方法 | |
US12050533B2 (en) | Memory system and operating method of memory system | |
US11307794B2 (en) | Memory system, memory controller, and operation method of memory system | |
US11669266B2 (en) | Memory system and operating method of memory system | |
US20230376211A1 (en) | Controller for controlling one-time programmable memory, system, and operation method thereof | |
US12015425B2 (en) | Controller and operating method thereof for determining reliability data based on syndrome weight | |
US11636007B2 (en) | Memory system and operating method thereof for flushing data in data cache with parity | |
US20230195367A1 (en) | Memory system, memory controller, and operation method of memory system | |
US11500771B2 (en) | Memory system, memory controller, and method of operating memory system | |
US11544003B2 (en) | Memory system, memory controller, and method of operating memory system | |
US11507323B2 (en) | Memory device and operating method thereof | |
US20230297502A1 (en) | Memory system, memory controller and operating method of the memory system for controlling garbage collection | |
US20230289260A1 (en) | Controller and operating method of the controller for determining reliability data based on syndrome weight | |
CN115774518A (zh) | 存储器***及存储器***的操作方法 | |
CN116301569A (zh) | 存储器***及其操作方法 | |
CN113764027A (zh) | 存储器***、存储器控制器以及存储器***的操作方法 | |
CN114764394A (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 |