CN113496755B - 半导体存储装置以及读出方法 - Google Patents
半导体存储装置以及读出方法 Download PDFInfo
- Publication number
- CN113496755B CN113496755B CN202110201670.XA CN202110201670A CN113496755B CN 113496755 B CN113496755 B CN 113496755B CN 202110201670 A CN202110201670 A CN 202110201670A CN 113496755 B CN113496755 B CN 113496755B
- Authority
- CN
- China
- Prior art keywords
- data
- circuit
- read
- error
- page
- 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
- 239000004065 semiconductor Substances 0.000 title claims abstract description 17
- 238000000034 method Methods 0.000 title claims abstract description 16
- 230000015654 memory Effects 0.000 claims abstract description 86
- 238000012937 correction Methods 0.000 claims abstract description 46
- 238000001514 detection method Methods 0.000 claims abstract description 20
- 238000012546 transfer Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 abstract description 38
- 238000004904 shortening Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 208000011580 syndromic disease Diseases 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 239000000758 substrate Substances 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 2
- 230000012447 hatching Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
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/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
- G06F11/1068—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 in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
-
- 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
- G06F11/1048—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 using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/24—Bit-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/32—Timing circuits
-
- 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
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/06—Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
- G11C7/065—Differential amplifiers of latching type
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Detection And Correction Of Errors (AREA)
- Transforming Light Signals Into Electric Signals (AREA)
- Measurement Of Radiation (AREA)
Abstract
本发明提供一种能够实现读出动作时的ECC处理时间的缩短的半导体存储装置与读出方法。本发明的快闪存储器包括:存储胞元阵列;页面缓冲器/读出电路,保持从存储胞元阵列的选择页面读出的数据;错误检测纠正电路,从页面缓冲器/读出电路接收数据,并保持所述数据的错误位置信息;输出电路,基于列地址来从页面缓冲器/读出电路选择数据,并将所选择的数据输出至数据总线;以及错误纠正部件,基于错误位置信息来纠正数据总线的数据。
Description
技术领域
本发明涉及一种与非NAND型快闪存储器等半导体存储装置与读出方法,尤其涉及读出时的错误检测/纠正。
背景技术
在搭载有与外部时钟信号同步地输入/输出数据的串行外设接口(SerialPeripheral Interface,SPI)的NAND型快闪存储器中,有的具备连续读出页面的功能。在页面的连续读出时,在将从存储胞元阵列的选择页面读出的数据保持在页面缓冲器/读出电路的其中一个锁存器的期间,能够输出保持在另一个锁存电路中的前页面的读出数据,例如专利文献1(日本专利5323170号公报)、专利文献2(日本专利5667143号公报)、专利文献3(美国专利申请US2014/0104947A1)。
发明内容
NAND型快闪存储器中,由于反复进行数据的编程或擦除,会因隧穿绝缘膜的劣化等而导致电荷保持特性发生恶化,或者因被隧穿绝缘膜捕获的电荷而产生阈值变动,引起位错误。作为此种位错误的对策,搭载有错误检测纠正(Error Correcting Code,ECC)电路。
图1表示以往的搭载芯片上ECC功能的NAND型快闪存储器的概略结构。快闪存储器10包括存储胞元阵列20、页面缓冲器/读出电路30、错误检测纠正电路(以下称作ECC电路)40以及输入/输出电路50。ECC电路40包括传输电路42、ECC核心44、错误寄存器46及写入电路48。
在读出动作中,将从存储胞元阵列20的选择页面读出的数据保持在页面缓冲器/读出电路30,并将保持在页面缓冲器/读出电路30的以字节(byte)为单位的数据经由传输电路42而传输至ECC核心44。ECC核心44进行所传输的数据的ECC运算,将由此运算获得的错误信息保持在错误寄存器46。写入电路48基于保持在错误寄存器46的错误信息,将经纠正的数据写回页面缓冲器/读出电路30。在一页面的ECC处理结束后,依据列地址将保持在页面缓冲器/读出电路30的数据读出到数据总线60,并将所读出的数据提供给外部输入/输出电路50。输入/输出电路50从未图示的输入/输出端子输出读出数据。
图2A、图2B表示进行页面的连续读出时的时间图。页面缓冲器/读出电路30包括两个锁存器L1、L2(一个锁存器保持例如2KB的页面数据),锁存器L1、锁存器L2分别包含第一高速缓冲存储器(cache)C0及第二高速缓冲存储器C1(一个高速缓冲存储器例如为1KB)。由锁存器L1的第一高速缓冲存储器C0及第二高速缓冲存储器C1所保持的数据被分别独立地传输给锁存器L2的第一高速缓冲存储器C0及第二高速缓冲存储器C1。
一开始,进行页面0的阵列读出,将页面0的数据保持在锁存器L1的第一高速缓冲存储器C0及第二高速缓冲存储器C1(P0C0、P0C1)。接下来,将锁存器L1的第一高速缓冲存储器C0及第二高速缓冲存储器C1的数据传输至锁存器L2的第一高速缓冲存储器C0及第二高速缓冲存储器C1,由ECC核心42来对第一高速缓冲存储器C0及第二高速缓冲存储器C1的数据进行ECC处理。若检测到错误,则写入电路48依据保持在错误寄存器46中的错误信息,将经纠正的数据写入至锁存器L2的第一高速缓冲存储器C0、第二高速缓冲存储器C1。
在连续读出中,行地址计数器自动地进行增量,进行下个页面1的读出,并将所读出的数据传输至锁存器L1的第一高速缓冲存储器C0及第二高速缓冲存储器C1。在此期间,将锁存器L2的第一高速缓冲存储器C0的数据传输至输入/输出电路50,由输入/输出电路50所保持的数据是与从外部供给的外部时钟信号ExCLK同步地输出。接下来,从输入/输出电路50,与外部时钟信号ExCLK同步地输出锁存器L2的第二高速缓冲存储器C1的数据,在此期间,将锁存器L1的第一高速缓冲存储器C0的数据传输至锁存器L2,且由ECC电路40进行ECC处理。
将锁存器L1的第二高速缓冲存储器C1的数据传输至锁存器L2,在从输入/输出电路50输出锁存器L2的第一高速缓冲存储器C0的数据的期间,对第二锁存器L2的第二高速缓冲存储器C1的数据进行ECC处理,接下来,在从输入/输出电路50输出锁存器L2的第二高速缓冲存储器C1的数据的期间,从阵列读出下个页面2,并传输至锁存器L1的第一高速缓冲存储器C0及第二高速缓冲存储器C1,且将第一高速缓冲存储器C0的数据传输至锁存器L2并进行ECC处理。
一边从锁存器L2输出数据,一边进行存储胞元阵列的页面的连续读出,在此期间,在输出第一高速缓冲存储器C0的数据的期间,进行第二高速缓冲存储器C1的ECC处理,在输出第二高速缓冲存储器C1的数据的期间,进行第一高速缓冲存储器C0的ECC处理。
存储胞元阵列的读出是根据经决定的时机而与内部时钟信号同步地进行,另一方面,读出数据的输出是与跟内部时钟信号不同步的外部时钟信号ExCLK同步地进行。因此,在页面的连续读出动作中,存在以下的数式(1)所示的限制。
tPRE+tDIS+tECC<tDOUT…(1)
tPRE:位线的预充电时间,
tDIS:存储胞元的放电时间
tECC:1/2页面的ECC处理时间
tDOUT:一页面的数据输出时间。
tPRE与tDIS是固定的,若为了高速读出而提高外部时钟信号ExCLK的频率,则tDOUT变小,与此相应地,必须减小tECC。例如,在读出2KB的页面数据时,tPRE+tDIS为约16.2μs。外部时钟信号ExCLK的频率为166MHz,当从×4的外部端子输出一页面的数据时,tDOUT为约24.6μs。
根据数式(1),ECC处理时间具有数式(2)的限制。
tECC<8.4μs…(2)
在ECC电路进行1位的错误检测/纠正的情况下,能够使用汉明码(Hamming code),其处理时间相对较短,因此外部时钟信号ExCLK的频率存在余裕。另一方面,在进行多位的错误检测/纠正的情况下,需要博斯-雷查得胡里-霍昆格姆(Bose-Chaudhuri-Hocquenghem,BCH)码,在BCH码的处理中,需要比汉明码的处理长的时间。此时,数式(2)的ECC处理时间(tECC)可能成为瓶颈。
图3例示以往的对BCH码进行解码时的流程。作为一例,一页面(2KB)包含两个高速缓冲存储器C0、C1,一个高速缓冲存储器包含两个扇区(sector)。ECC是以扇区为单位(例如512字节)来进行,一个高速缓冲存储器需要两次ECC处理,通过BCH码,可实现每一高速缓冲存储器为四位的错误检测/纠正。而且,ECC处理是与ECC时钟信号同步地进行,将其时钟频率设为50MHz。
步骤1:对从第一扇区及第二扇区读取的数据的校验子(syndrome)进行评估。此步骤包含下述处理,即,经由传输电路42来对页面缓冲器/读出电路30进行存取,从其中读出数据,每一扇区需要140个时钟周期(clock cycle)。
步骤2:在第一扇区的校验子的评估后,计算第一扇区的错误位置多项式(ELP),在第二扇区的校验子的评估后,计算第二扇区的第二错误位置多项式(ELP)。所述计算分别需要81个时钟周期。
步骤3:计算第一扇区的ELP的根,决定其错误位置,计算第二扇区的ELP的根,决定其错误位置。这些计算分别需要135个时钟周期。
步骤4:基于错误位置,将经纠正的数据写回页面缓冲器/读出电路。此处理需要20个时钟周期。
只要同一步骤不重复,第一扇区及第二扇区的步骤1至步骤4的处理便能够并行地进行。一个高速缓冲存储器的ECC处理需要516个时钟周期,若换算成时间,则tECC=10.32μs。
在使用汉明码的情况下,不需要BCH码时的步骤2、步骤3,整体上需要288个时钟周期(ECC=5.8μs)。因而,若是汉明码,则能够满足数式(2)所示的tECC<8.4μs的限制。但是,在BCH码的情况下变为tECC(=10.32)>8.4μs,无法满足tECC<8.4μs的限制。即,tECC=10.32μs时的外部时钟信号ExCLK的最大频率为154.4MHz,无法进行使用166MHz外部时钟信号ExCLK的高速读出。图2B所示的影线所示的矩形区域表示了tECC=10.32μs未满足限制的状态。
当在以往的快闪存储器中进行连续读出时,存在下述问题:若ECC处理时间长,则外部时钟信号ExCLK的频率产生限制,从而无法进行高速读出。
本发明的目的在于解决此种以往的问题,提供一种能够实现读出动作时的ECC处理时间的缩短的半导体存储装置以及读出方法。
本发明的半导体存储装置包括:存储胞元阵列;页面缓冲器/读出电路,保持从所述存储胞元阵列的选择页面读出的数据;错误检测纠正电路,接收保持在页面缓冲器/读出电路中的数据,对所述数据进行检测,并保持所检测出的错误位置相关的错误位置信息;输出电路,基于列地址来从所述页面缓冲器/读出电路选择数据,并将所选择的数据输出至数据总线;以及错误纠正部件,基于所述错误位置信息来纠正所述数据总线上的数据。
本发明的快闪存储器的读出方法包括下述步骤:在读出动作时,接收保持在页面缓冲器/读出电路中的数据,对所述数据进行检测;保持所检测出的错误位置相关的错误位置信息;基于列地址来从所述页面缓冲器/读出电路选择数据,并将所选择的数据输出至数据总线;基于所述错误位置信息来对所述数据总线上的数据进行纠正;以及将经纠正的数据输出至外部。
根据本发明,基于错误位置信息来对从页面缓冲器/读出电路输出的数据总线上的数据进行纠正,因此与以往相比,能够缩短错误检测/纠正所需的时间,由此,能够缩短读出时间。而且,在进行页面的连续读出时,与以往相比,能够提高读出速度。
附图说明
图1是表示以往的搭载芯片上ECC的NAND型快闪存储器的概略结构的图;
图2A是以往的NAND型快闪存储器中进行连续读出时的时间图;
图2B是以往的NAND型快闪存储器中进行连续读出时的时间图;
图3是例示以往的ECC电路的BCH的解码流程的图;
图4是表示本发明的实施例的NAND型快闪存储器的结构的框图;
图5是表示本发明的第一实施例的ECC电路的概略结构的图;
图6是说明本发明的第一实施例的ECC电路的错误纠正部件的详细的图;
图7是例示本发明的第一实施例的ECC电路的BCH的解码流程的图;
图8是进行本发明的第一实施例的连续读出时的时间图;
图9是说明本发明的第二实施例的错误检测/纠正方法的图;
图10是本发明的第二实施例的错误检测/纠正方法的动作流程。
[符号的说明]
10:快闪存储器
20:存储胞元阵列
30:页面缓冲器/读出电路
40:错误检测纠正电路(ECC电路)
42:传输电路
44:ECC核心
46:错误寄存器
48:写入电路
50:输入/输出电路
60:数据总线
100:快闪存储器
110:存储胞元阵列
120:输入/输出电路
122:驱动器
130:ECC电路
132:传输电路
134:ECC核心
136:错误寄存器
138:错误纠正部件
138A:地址比较部
138B:反转电路
139:写入电路
140:地址寄存器
150:控制器
160:字线选择电路
170:页面缓冲器/读出电路
180:列选择电路
182:列解码器
184:差动读出放大器
190:内部电压产生电路
200:数据总线
Ax:行地址信息
Ay:列地址信息
BT/BB:位线对
C0:第一高速缓冲存储器
C1:第二高速缓冲存储器
EN1、EN2:使能信号
L1、L2:锁存器
S100~S130:步骤
tDIS:存储胞元的放电时间
tDOUT:一页面的数据输出时间
tECC:1/2页面的ECC处理时间
tECC_BG:后台的处理时间
tECC_FG:前台的处理时间
tPRE:位线的预充电时间
Vpgm:写入电压
Vread:读出通过电压
YS:列选择信号
具体实施方式
接下来,参照附图来详细说明本发明的实施方式。本发明的半导体存储装置例如是NAND型快闪存储器、或者嵌入此种快闪存储器的微处理器(micro processor)、微控制器(micro controller)、逻辑、专用集成电路(Application Specific Integrated Circuit,ASIC)、对图像或声音进行处理的处理器、对无线信号等信号进行处理的处理器等。
图4是表示本发明的实施例的NAND型快闪存储器的结构的图。本实施例的快闪存储器100是包含下述部分而构成:存储器阵列110,呈矩阵状地排列有多个存储胞元;输入/输出电路120,可进行与SPI对应的数据的输入/输出;ECC电路130,进行应编程的数据或所读出的数据的错误检测/纠正;地址寄存器140,经由输入/输出电路120来接收地址数据;控制器150,基于经由输入/输出电路120而接收的命令数据或对控制端子施加的控制信号来控制各部;字线选择电路160,从地址寄存器140接收行地址信息Ax,并基于行地址信息Ax的解码结果来进行区块(block)的选择或字线的选择等;页面缓冲器/读出电路170,保持从由字线选择电路160所选择的页面读出的数据,或者保持对所选择的页面编程的数据;列选择电路180,基于来自地址寄存器140的列地址信息Ay的解码结果,进行页面缓冲器/读出电路170内的列的选择等;以及内部电压生成电路190,生成数据的读出、编程及擦除等所需的各种电压(写入电压Vpgm、通过电压Vpass、读出通过电压Vread、擦除电压Vers等)。
存储胞元阵列110包含m个区块BLK(0)、BLK(1)、…、BLK(m-1)。在一个区块中,形成有多个NAND串(string)。存储胞元阵列110既可二维地形成在基板表面,也可从基板表面沿垂直方向三维地形成。而且,存储胞元既可为存储1位(2值数据)的单层胞元(Single-LevelCell,SLC)型,也可为存储多位的多层胞元(Multi-Level Cell,MLC)型。
ECC电路130可通过命令或出货时的设定等来设为动作或非动作。ECC电路130进行从存储胞元阵列110读出的数据的错误检测/纠正,或者进行应对存储胞元阵列110编程的数据的码生成。ECC电路130既可进行单位(single bit)的错误检测/纠正,也可进行多位(multi bit)的错误检测/纠正。ECC电路130的详细将后述。
控制器150包含状态机(state machine)或者微控制器,控制快闪存储器的各动作。在读出动作中,对位线施加某正电压,对选择字线施加某电压(例如0V),对非选择字线施加通过电压,使位线侧选择晶体管及源极线侧选择晶体管导通,对源极线施加0V。在编程动作中,对选择字线施加高电压的编程电压Vpgm,对非选择的字线施加中间电位,使位线侧选择晶体管导通,使源极线侧选择晶体管断开,对位线供给与数据“0”或“1”相应的电位。在擦除动作中,对区块内的所有选择字线施加0V,对P阱施加高电压的擦除电压,将浮动栅极的电子抽出至基板,以区块为单位来擦除数据。
如图2A及图2B所示,页面缓冲器/读出电路170包含两个锁存器L1、L2,锁存器L1、锁存器L2分别包含可独立地运行的第一高速缓冲存储器C0与第二高速缓冲存储器C1而构成。在锁存器L1与锁存器L2之间,连接有可进行双向数据传输的传输闸,通过将传输闸导通,从锁存器L1向锁存器L2、或者从锁存器L2向锁存器L1传输数据。
从存储胞元阵列的选择页面读出的数据在读出节点被读出,所读出的数据被传输至锁存器L1,并被保持在其中。在进行页面的连续读出时,存储胞元阵列的读出及锁存器L1与锁存器L2之间的数据传输是与内部时钟信号同步地进行,锁存器L2与输入/输出电路120之间的数据传输、从输入/输出电路120的数据输出是与从外部供给的外部时钟信号ExCLK同步地进行,锁存器L2与ECC电路130之间的数据传输以及ECC电路的动作是与另一内部时钟信号或者对从外部供给的外部时钟信号ExCLK进行分频所得的时钟同步地进行。
列选择电路180基于列地址Ay来选择页面内的数据的读出开始位置,或者不使用列地址而从页面的先头位置自动读出数据。进而,列选择电路180也可包含列地址计数器,所述列地址计数器响应时钟信号而对列地址进行增量。
图5表示本实施例的ECC电路130的结构。ECC电路130包含:传输电路132,用于读出由页面缓冲器/读出电路170所保持的数据;ECC核心134,对由传输电路132所读出的数据进行处理,以检测错误;错误寄存器136,保持由ECC核心134所检测出的错误的错误位置信息;以及错误纠正部件138,基于由错误寄存器136所保持的错误位置信息,对输出至数据总线200上的数据进行纠正。错误寄存器136所保持的错误位置信息是能够识别错误所处的列(column)位置与位位置的信息。
本实施例的ECC电路130并非如以往那样,对页面缓冲器/读出电路进行存取,并通过写入电路将经纠正的数据写入页面缓冲器/读出电路170,由此来进行纠正,而是不对页面缓冲器/读出电路进行存取,而通过对从页面缓冲器/读出电路170输出至数据总线200的数据进行反转来进行纠正。
图6表示错误纠正部件138的结构例。错误纠正部件138包括:地址比较部138A,对列地址Ay与错误寄存器136所保持的错误位置信息进行比较;以及反转电路138B,具备下述功能,基于从地址比较部138A输出的反转控制信号来对数据总线200上的数据进行反转。
当输出由页面缓冲器/读出电路170所保持的数据时,根据对列地址Ay进行解码所得的列选择信号YS,从由页面缓冲器/读出电路170所保持的页面数据中选择n位数据。列选择信号YS是由列选择电路180的列解码器182所生成。从页面缓冲器/读出电路170所选择的n位数据作为差动数据而输入至n个差动读出放大器184的位线对BT/BB,差动读出放大器184读出(sense)位线对BT/BB的差动数据。由差动读出放大器184所读出的n位数据被分别输入至反转电路138B的对应的n个互斥或闸(ExOR)电路的其中一个。对于ExOR的另一个输入,分别输入来自地址比较部138A的反转控制信号。
地址比较部138A对错误寄存器136的错误位置信息、与从页面缓冲器/读出电路170输出数据时的列地址Ay进行比较,若两地址一致,则对与错误寄存器136的错误位位置对应的位(ExOR)输出H电平的反转控制信号,对不与错误位位置对应的位(ExOR),输出L电平的反转控制信号。而且,若两地址不一致,则对所有的位(ExOR)输出L电平的反转控制信号。从页面缓冲器/读出电路170读出的数据若存在错误,则通过利用反转电路138B来进行反转而进行错误的纠正,若所读出的数据无错误,则不利用反转电路138B来进行反转而直接输出。
从反转电路138B的ExOR输出的n位数据被供给至输入/输出电路120。输入/输出电路120包含连接有多个触发器(flip flop)的并行/串行(parallel/serial)转换电路,并行/串行转换电路将所输入的n位数据转换为m个串行数据,经转换的串行数据经由驱动器122而从m位的输入/输出端子I/O输出至外部。
在页面的连续读出中,对时钟端子供给外部时钟信号ExCLK,外部时钟信号ExCLK被供给至未图示的时机控制电路。时机控制电路生成与外部时钟信号ExCLK同步的内部时钟信号,所述内部时钟信号被供给至输入/输出电路120或差动读出放大器184等。
由列解码器182一次选择的位数n等于数据总线200的位宽即位线对BT/BB的数量。I/O的端子数为任意,但当I/O的端子数为m位时,m≦n,且,n处于m的k倍的关系(m、k分别为1以上的整数)。
图7例示本实施例的ECC电路130对BCH码进行解码的流程。此流程对应于图3所示的以往的BCH码的解码流程,ECC电路130使用50MHz的时钟信号来执行ECC处理,一个高速缓冲存储器包含第一扇区及第二扇区。步骤1至步骤3与图3的流程同样,但在本实施例中不进行步骤4而实施步骤5。
步骤5:对从页面缓冲器/读出电路170输出至数据总线200的数据进行反转,由此来实施错误纠正。
本实施例中不进行步骤4的对页面缓冲器/读出电路的写回。即,不对页面缓冲器/读出电路170进行存取。因此,ECC电路130能够在前台(foreground)进行步骤3的直至第一扇区的ELP的根为止的处理,且在第一扇区的错误纠正期间内,在后台(background)进行第二扇区的ELP的根的处理。在步骤1中对页面缓冲器/读出电路170进行存取后,不进行对页面缓冲器/读出电路170的写入,因此从页面缓冲器/读出电路的数据读出不会与由ECC电路所进行的存取发生冲突。进而,只要在步骤3中决定了第一扇区的错误位置,便能够使用此错误位置信息来立即对数据总线上的数据进行纠正。因而,在前台处理步骤3的直至第一扇区的错误位置的计算为止的操作,随后,从页面缓冲器/读出电路170向数据总线200输出第一扇区的数据,在进行错误纠正的期间,在后台处理步骤3的第二扇区的错误位置的计算。
ECC电路130的前台的处理时间tECC_FG需要356时钟周期,为tECC_FG=7.12μs,后台的处理时间tECC_BG需要140周期,为tECC_BG=2.8μs。tECC_FG=7.12μs满足数式(2)所示的tECC<8.4μs的限制。当tECC_FG=7.12μs时,为tPRE+tDIS+tECC_FG=23.32μs,若将其换算成外部时钟信号ExCLK的频率,则能够将外部时钟信号ExCLK的频率加快至175.6MHz为止。换言之,能够一边使用175.6MHz的外部时钟信号ExCLK来进行多位ECC,一边进行页面的连续读出。
图8是表示进行本实施例的页面的连续读出时的时间图的图。控制器150在经由输入/输出电路120而收到连续读出动作的命令时,从开始地址控制多个页面的连续读出动作,当收到连续读出动作结束的命令时,在结束地址结束连续读出动作。在连续读出动作中,在从页面缓冲器/读出电路170的其中一个锁存器L2输出数据的期间,将从存储胞元阵列的选择页面读出的数据传输至另一个锁存器L1。从锁存器L1向锁存器L2的数据传输是利用第一高速缓冲存储器C0或第二高速缓冲存储器C1来进行,在将锁存器L2的其中一个高速缓冲存储器的数据传输至输入/输出电路120的期间,利用ECC电路130来对锁存器L2的另一个高速缓冲存储器的数据进行处理。传输至输入/输出电路120的数据是与外部时钟信号ExCLK同步地从外部输入/输出端子输出。
如本图所示,外部时钟信号ExCLK为166MHz时的tDOUT为24.6μs,本实施例的读出时间(tPRE+tDIS+tECC)小于tDOUT。图中的影线所示的矩形区域表示ECC电路130的后台处理(第二扇区的ELP的处理等)。
根据本实施例,对从页面缓冲器/读出电路170输出至数据总线200的数据进行纠正,因此为了错误纠正,不需要对页面缓冲器/读出电路的存取,能够在后台执行ECC电路的处理的一部分,作为结果,能够缩短ECC电路的处理时间。由此,能够实现连续读出的高速化。所述实施例中,表示了在连续读出动作中适用ECC电路130的示例,但并不限于此,当然也能够将ECC电路130适用于通常的页面读出。
接下来,对本发明的第二实施例进行说明。图9是表示第二实施例的快闪存储器的ECC电路的图。如本图所示,ECC电路130除了第一实施例的结构以外,还包含写入电路139。控制器150基于所输入的读出命令来识别页面读出或连续读出,基于识别结果,经由使能信号EN1、使能信号EN2来使错误纠正部件138或写入电路139选择性地运行。
图10是第二实施例的ECC电路的动作流程。控制器150在收到读出命令时(S100),识别是连续读出还是页面读出(S110)。若是连续读出,则控制器150经由使能信号EN1来启用错误纠正部件138,并经由使能信号EN2来禁用(disable)写入电路139。由此,与第一实施例时同样地,错误纠正部件138对从页面缓冲器/读出电路170输出至数据总线200的数据进行纠正(S120)。
另一方面,若是页面读出,则控制器150经由使能信号EN1来禁用错误纠正部件138,并经由使能信号EN2来启用写入电路139。错误纠正部件138在被禁用时,将反转控制信号全部设为L电平,使数据总线200的数据直接通过。另一方面,如图1所示,写入电路139基于错误位置信息来将经纠正的数据写回页面缓冲器/读出电路170(S130)。
根据本实施例,若是连续读出,则进行重视读出速度的ECC处理,若是页面读出,则能够实现利用IDM(Internal Date Move)功能的、数据可靠性的提高。IDM是将页面缓冲器/读出电路的页面数据复制到其他区块的页面中的功能,在对由页面缓冲器/读出电路所保持的数据进行ECC处理后,写回至页面缓冲器/读出电路,并将所述经ECC处理的页面数据编程到其他区块的页面。即,页面缓冲器/读出电路必须保持经ECC电路纠正的数据。
所述实施例中,将由多位ECC所进行的对BCH码进行解码的流程示于图3、图7,但这些流程(算法)是例示,也可通过其他的流程来对BCH码进行解码。进而,本发明并不限定于多位ECC,也能够适用于进行1位的错误检测/纠正的ECC电路或者使用BCH码以外的码的错误检测/纠正。
对本发明的优选实施方式进行了详述,但本发明并不限定于特定的实施方式,在权利要求所记载的本发明的主旨的范围内,能够进行各种变形/变更。
Claims (14)
1.一种半导体存储装置,包括:
存储胞元阵列;
页面缓冲器/读出电路,保持从所述存储胞元阵列的选择页面读出的数据;
错误检测纠正电路,接收保持在所述页面缓冲器/读出电路中的数据,对所述数据进行检测,并保持所检测出的错误位置相关的错误位置信息;
输出电路,基于列地址来从所述页面缓冲器/读出电路选择数据,并将所选择的数据输出至数据总线;以及
错误纠正部件,基于所述错误位置信息来纠正所述数据总线上的数据。
2.根据权利要求1所述的半导体存储装置,其中
所述错误纠正部件包括反转电路,所述反转电路基于所述错误位置信息来反转所述数据总线上的数据。
3.根据权利要求2所述的半导体存储装置,其中
所述错误纠正部件包括地址比较部,所述地址比较部对所述错误位置信息与所述列地址进行比较,基于比较结果来对与错误位置对应的所述数据总线上的数据进行纠正。
4.根据权利要求1所述的半导体存储装置,其中
所述错误检测纠正电路对多位的错误的位置进行检测。
5.根据权利要求1所述的半导体存储装置,其中
所述错误纠正部件是在进行页面的连续读出时实施。
6.根据权利要求5所述的半导体存储装置,其中
所述页面缓冲器/读出电路具有对从所述存储胞元阵列读出的页面数据进行保持的第一锁存器、及接收由第一锁存器所保持的页面数据的第二锁存器,第一锁存器及第二锁存器各自包含能够独立地进行数据传输的第一部分与第二部分,第一部分及第二部分能够保持1/2页面的数据,
在进行页面的连续读出时,在将所述第二锁存器的第一部分的数据输出至外部的期间,进行所述第二锁存器的第二部分的数据的错误检测及纠正,在将所述第二锁存器的第二部分的数据输出至外部的期间,进行所述第二锁存器的第一部分的数据的错误检测及纠正。
7.根据权利要求6所述的半导体存储装置,其中
在进行页面的连续读出时,与从外部输入的时钟信号同步地将数据输出至外部。
8.根据权利要求7所述的半导体存储装置,其中
页面的连续读出满足tPRE+tDIS+tECC<tDOUT的条件,其中tPRE是位线的预充电时间,tDIS是存储胞元的放电时间,tECC是1/2页面的错误检测及纠正的时间,tDOUT是一页面的数据输出时间。
9.根据权利要求3所述的半导体存储装置,其中
所述输出电路将从页面缓冲器/读出电路选择的n位数据提供给n个差动读出放大器,所述错误纠正部件对从所述n个差动读出放大器输出的数据进行反转。
10.根据权利要求9所述的半导体存储装置,其中
由所述n个差动读出放大器所读出的n位数据分别输入至所述反转电路的n个互斥或闸的一个输入,所述n个互斥或闸的另一个输入分别输入来自所述地址比较部的反转控制信号。
11.一种读出方法,是快闪存储器的读出方法,所述读出方法包括下述步骤:
在读出动作时,接收保持在页面缓冲器/读出电路中的数据,对所述数据进行检测;
保持所检测出的错误位置相关的错误位置信息;
基于列地址来从所述页面缓冲器/读出电路选择数据,并将所选择的数据输出至数据总线;
基于所述错误位置信息来对所述数据总线上的数据进行纠正;以及
将经纠正的数据输出至外部。
12.根据权利要求11所述的读出方法,其中
所述纠正步骤是对所述错误位置信息与所述列地址进行比较,并基于比较结果来反转与错误位位置对应的所述数据总线上的数据。
13.根据权利要求11所述的读出方法,其中
在收到读出命令时,识别是连续读出还是页面读出,若是所述连续读出,则控制器经由第一使能信号来启用错误纠正部件对从所述页面缓冲器/读出电路输出至所述数据总线的数据进行纠正。
14.根据权利要求13所述的读出方法,其中
若是所述页面读出,则所述控制器经由所述第一使能信号来禁用所述错误纠正部件,并经由第二使能信号来启用写入电路,所述错误纠正部件在被禁用时,将反转控制信号全部设为第一电平,使所述数据总线的数据直接通过。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020066573A JP7018089B2 (ja) | 2020-04-02 | 2020-04-02 | 半導体記憶装置および読出し方法 |
JP2020-066573 | 2020-04-02 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113496755A CN113496755A (zh) | 2021-10-12 |
CN113496755B true CN113496755B (zh) | 2024-03-22 |
Family
ID=77921613
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110201670.XA Active CN113496755B (zh) | 2020-04-02 | 2021-02-23 | 半导体存储装置以及读出方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11487614B2 (zh) |
JP (1) | JP7018089B2 (zh) |
KR (1) | KR102560902B1 (zh) |
CN (1) | CN113496755B (zh) |
TW (1) | TWI792168B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI748507B (zh) * | 2020-06-08 | 2021-12-01 | 瑞昱半導體股份有限公司 | 資料存取系統及操作資料存取系統的方法 |
JP2022047393A (ja) * | 2020-09-11 | 2022-03-24 | キオクシア株式会社 | メモリシステム、半導体記憶装置及びデータ読み出し方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1389872A (zh) * | 2001-06-04 | 2003-01-08 | 株式会社东芝 | 半导体存储器 |
CN1595812A (zh) * | 2003-09-10 | 2005-03-16 | 发那科株式会社 | 纠错译码电路、数据总线控制方法以及数据总线系统 |
CN101404184A (zh) * | 2007-10-04 | 2009-04-08 | 松下电器产业株式会社 | 半导体存储装置 |
CN104246898A (zh) * | 2012-05-31 | 2014-12-24 | 惠普发展公司,有限责任合伙企业 | 局部错误检测和全局错误纠正 |
CN107833589A (zh) * | 2016-09-15 | 2018-03-23 | 华邦电子股份有限公司 | 非易失性半导体存储装置 |
CN110085277A (zh) * | 2018-01-25 | 2019-08-02 | 三星电子株式会社 | 存储器装置、存储器系统和操作存储器装置的方法 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5323170B2 (zh) | 1973-08-20 | 1978-07-13 | ||
JPS5543183Y2 (zh) | 1976-08-05 | 1980-10-09 | ||
JP4643667B2 (ja) | 2008-03-01 | 2011-03-02 | 株式会社東芝 | メモリシステム |
KR101655306B1 (ko) * | 2010-02-24 | 2016-09-07 | 삼성전자주식회사 | 메모리 시스템 및 그것의 액세스 방법 |
CN102693758B (zh) * | 2011-03-22 | 2015-05-06 | 群联电子股份有限公司 | 数据读取方法、存储器储存装置及其存储器控制器 |
JP5323170B2 (ja) | 2011-12-05 | 2013-10-23 | ウィンボンド エレクトロニクス コーポレーション | 不揮発性半導体メモリおよびそのデータの読出し方法 |
TWI497495B (zh) | 2012-07-02 | 2015-08-21 | Winbond Electronics Corp | 用於讀取nand快閃記憶體的方法和設備 |
US8990667B2 (en) * | 2012-08-03 | 2015-03-24 | Samsung Electronics Co., Ltd. | Error check and correction circuit, method, and memory device |
JP2014033364A (ja) * | 2012-08-03 | 2014-02-20 | Samsung Electronics Co Ltd | 誤り検出訂正回路、及びメモリ装置 |
JP5667143B2 (ja) * | 2012-10-11 | 2015-02-12 | ウィンボンド エレクトロニクス コーポレーション | 不揮発性半導体メモリ |
JP6131207B2 (ja) * | 2014-03-14 | 2017-05-17 | ウィンボンド エレクトロニクス コーポレーション | 半導体記憶装置 |
US9367392B2 (en) * | 2014-08-01 | 2016-06-14 | Winbond Electronics Corporation | NAND flash memory having internal ECC processing and method of operation thereof |
US9952925B2 (en) * | 2016-01-06 | 2018-04-24 | Micron Technology, Inc. | Error code calculation on sensing circuitry |
TWI625620B (zh) | 2017-05-12 | 2018-06-01 | 威盛電子股份有限公司 | 非揮發性記憶體裝置及其讀取方法 |
KR102326659B1 (ko) * | 2017-07-19 | 2021-11-16 | 삼성전자주식회사 | 비휘발성 메모리의 ecc 제어 방법 및 이를 수행하는 메모리 시스템 |
KR20190088790A (ko) * | 2018-01-19 | 2019-07-29 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
KR102442216B1 (ko) * | 2018-04-19 | 2022-09-08 | 에스케이하이닉스 주식회사 | 메모리 장치 및 그 동작 방법 |
US10877687B2 (en) * | 2018-06-29 | 2020-12-29 | Micron Technology, Inc. | Erasure of multiple blocks in memory devices |
KR102461099B1 (ko) * | 2018-08-07 | 2022-11-01 | 에스케이하이닉스 주식회사 | 메모리 장치 및 이를 포함하는 저장 장치 및 그 동작 방법 |
-
2020
- 2020-04-02 JP JP2020066573A patent/JP7018089B2/ja active Active
-
2021
- 2021-02-02 TW TW110103826A patent/TWI792168B/zh active
- 2021-02-23 CN CN202110201670.XA patent/CN113496755B/zh active Active
- 2021-03-02 KR KR1020210027392A patent/KR102560902B1/ko active IP Right Grant
- 2021-03-03 US US17/191,670 patent/US11487614B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1389872A (zh) * | 2001-06-04 | 2003-01-08 | 株式会社东芝 | 半导体存储器 |
CN1595812A (zh) * | 2003-09-10 | 2005-03-16 | 发那科株式会社 | 纠错译码电路、数据总线控制方法以及数据总线系统 |
CN101404184A (zh) * | 2007-10-04 | 2009-04-08 | 松下电器产业株式会社 | 半导体存储装置 |
CN104246898A (zh) * | 2012-05-31 | 2014-12-24 | 惠普发展公司,有限责任合伙企业 | 局部错误检测和全局错误纠正 |
CN107833589A (zh) * | 2016-09-15 | 2018-03-23 | 华邦电子股份有限公司 | 非易失性半导体存储装置 |
CN110085277A (zh) * | 2018-01-25 | 2019-08-02 | 三星电子株式会社 | 存储器装置、存储器系统和操作存储器装置的方法 |
Non-Patent Citations (4)
Title |
---|
1G比特内嵌自检自修复DDR3 DRAM存储器芯片设计;谈杰;王嵩;李进;龙晓东;王小光;;中国集成电路(09);全文 * |
Memory mapped ECC: low-cost error protection for last level caches;Doe Hyun Yoon;《Proceedings of the 36th annual international symposium on Computer architecture》;全文 * |
基于CPLD的容错存储器的设计实现;汪友宝, 马佩军, 郝跃;现代电子技术(04);全文 * |
基于固态存储器的ECC算法分析及实现;贾红恩;刘瑞竹;罗丰;;电子科技(10);全文 * |
Also Published As
Publication number | Publication date |
---|---|
JP7018089B2 (ja) | 2022-02-09 |
US20210311826A1 (en) | 2021-10-07 |
TW202139005A (zh) | 2021-10-16 |
KR20210124030A (ko) | 2021-10-14 |
JP2021163352A (ja) | 2021-10-11 |
CN113496755A (zh) | 2021-10-12 |
US11487614B2 (en) | 2022-11-01 |
KR102560902B1 (ko) | 2023-07-28 |
TWI792168B (zh) | 2023-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5864569A (en) | Method and apparatus for performing error correction on data read from a multistate memory | |
JP4105819B2 (ja) | 記憶装置およびメモリカード | |
US8214725B2 (en) | Memory access system | |
US20170117050A1 (en) | Memory chip, memory device, and reading method | |
KR102281441B1 (ko) | 반도체 장치 및 연속 독출 방법 | |
US8607120B2 (en) | Semiconductor memory device for performing additional ECC correction according to cell pattern and electronic system including the same | |
US9293209B2 (en) | Semiconductor memory device performing read retry mode and operating method of the same | |
JP2020155180A (ja) | メモリ読み出し方法及びメモリシステム並びにコンピュータ・プログラム | |
CN111986724B (zh) | 半导体装置及连续读出方法 | |
CN113496755B (zh) | 半导体存储装置以及读出方法 | |
US7684239B2 (en) | Flash memory device for over-sampling read and interfacing method thereof | |
CN112309478A (zh) | 半导体装置及连续读出方法 | |
US20080170435A1 (en) | Semiconductor storage device | |
US9953709B2 (en) | Semiconductor memory device and memory system | |
JP2023120450A (ja) | 半導体記憶装置および誤り検出訂正方法 | |
TWI753814B (zh) | 半導體儲存裝置以及錯誤檢測糾正相關資訊的讀出方法 | |
US20220262444A1 (en) | Semiconductor storage device | |
US11990188B2 (en) | Semiconductor apparatus and continuous readout method | |
TW201532060A (zh) | 半導體儲存裝置及其冗餘方法 | |
KR20040073170A (ko) | 에러 정정을 위한 데이터 기입 방법 |
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 |