半导体存储装置以及读出方法与流程

文档序号:26937530发布日期:2021-10-12 12:16阅读:159来源:国知局
半导体存储装置以及读出方法与流程

1.本发明涉及一种与非nand型快闪存储器等半导体存储装置与读出方法,尤其涉及读出时的错误检测/纠正。


背景技术:

2.在搭载有与外部时钟信号同步地输入/输出数据的串行外设接口(serial peripheral interface,spi)的nand型快闪存储器中,有的具备连续读出页面的功能。在页面的连续读出时,在将从存储胞元阵列的选择页面读出的数据保持在页面缓冲器/读出电路的其中一个锁存器的期间,能够输出保持在另一个锁存电路中的前页面的读出数据,例如专利文献1(日本专利5323170号公报)、专利文献2(日本专利5667143号公报)、专利文献3(美国专利申请us2014/0104947a1)。


技术实现要素:

3.nand型快闪存储器中,由于反复进行数据的编程或擦除,会因隧穿绝缘膜的劣化等而导致电荷保持特性发生恶化,或者因被隧穿绝缘膜捕获的电荷而产生阈值变动,引起位错误。作为此种位错误的对策,搭载有错误检测纠正(error correcting code,ecc)电路。
4.图1表示以往的搭载芯片上ecc功能的nand型快闪存储器的概略结构。快闪存储器10包括存储胞元阵列20、页面缓冲器/读出电路30、错误检测纠正电路(以下称作ecc电路)40以及输入/输出电路50。ecc电路40包括传输电路42、ecc核心44、错误寄存器46及写入电路48。
5.在读出动作中,将从存储胞元阵列20的选择页面读出的数据保持在页面缓冲器/读出电路30,并将保持在页面缓冲器/读出电路30的以字节(byte)为单位的数据经由传输电路42而传输至ecc核心44。ecc核心44进行所传输的数据的ecc运算,将由此运算获得的错误信息保持在错误寄存器46。写入电路48基于保持在错误寄存器46的错误信息,将经纠正的数据写回页面缓冲器/读出电路30。在一页面的ecc处理结束后,依据列地址将保持在页面缓冲器/读出电路30的数据读出到数据总线60,并将所读出的数据提供给外部输入/输出电路50。输入/输出电路50从未图示的输入/输出端子输出读出数据。
6.图2a、图2b表示进行页面的连续读出时的时间图。页面缓冲器/读出电路30包括两个锁存器l1、l2(一个锁存器保持例如2kb的页面数据),锁存器l1、锁存器l2分别包含第一高速缓冲存储器(cache)c0及第二高速缓冲存储器c1(一个高速缓冲存储器例如为1kb)。由锁存器l1的第一高速缓冲存储器c0及第二高速缓冲存储器c1所保持的数据被分别独立地传输给锁存器l2的第一高速缓冲存储器c0及第二高速缓冲存储器c1。
7.一开始,进行页面0的阵列读出,将页面0的数据保持在锁存器l1的第一高速缓冲存储器c0及第二高速缓冲存储器c1(p0c0、p0c1)。接下来,将锁存器l1的第一高速缓冲存储器c0及第二高速缓冲存储器c1的数据传输至锁存器l2的第一高速缓冲存储器c0及第二高
速缓冲存储器c1,由ecc核心42来对第一高速缓冲存储器c0及第二高速缓冲存储器c1的数据进行ecc处理。若检测到错误,则写入电路48依据保持在错误寄存器46中的错误信息,将经纠正的数据写入至锁存器l2的第一高速缓冲存储器c0、第二高速缓冲存储器c1。
8.在连续读出中,行地址计数器自动地进行增量,进行下个页面1的读出,并将所读出的数据传输至锁存器l1的第一高速缓冲存储器c0及第二高速缓冲存储器c1。在此期间,将锁存器l2的第一高速缓冲存储器c0的数据传输至输入/输出电路50,由输入/输出电路50所保持的数据是与从外部供给的外部时钟信号exclk同步地输出。接下来,从输入/输出电路50,与外部时钟信号exclk同步地输出锁存器l2的第二高速缓冲存储器c1的数据,在此期间,将锁存器l1的第一高速缓冲存储器c0的数据传输至锁存器l2,且由ecc电路40进行ecc处理。
9.将锁存器l1的第二高速缓冲存储器c1的数据传输至锁存器l2,在从输入/输出电路50输出锁存器l2的第一高速缓冲存储器c0的数据的期间,对第二锁存器l2的第二高速缓冲存储器c1的数据进行ecc处理,接下来,在从输入/输出电路50输出锁存器l2的第二高速缓冲存储器c1的数据的期间,从阵列读出下个页面2,并传输至锁存器l1的第一高速缓冲存储器c0及第二高速缓冲存储器c1,且将第一高速缓冲存储器c0的数据传输至锁存器l2并进行ecc处理。
10.一边从锁存器l2输出数据,一边进行存储胞元阵列的页面的连续读出,在此期间,在输出第一高速缓冲存储器c0的数据的期间,进行第二高速缓冲存储器c1的ecc处理,在输出第二高速缓冲存储器c1的数据的期间,进行第一高速缓冲存储器c0的ecc处理。
11.存储胞元阵列的读出是根据经决定的时机而与内部时钟信号同步地进行,另一方面,读出数据的输出是与跟内部时钟信号不同步的外部时钟信号exclk同步地进行。因此,在页面的连续读出动作中,存在以下的数式(1)所示的限制。
12.tpre+tdis+tecc<tdout

(1)
13.tpre:位线的预充电时间,
14.tdis:存储胞元的放电时间
15.tecc:1/2页面的ecc处理时间
16.tdout:一页面的数据输出时间。
17.tpre与tdis是固定的,若为了高速读出而提高外部时钟信号exclk的频率,则tdout变小,与此相应地,必须减小tecc。例如,在读出2kb的页面数据时,tpre+tdis为约16.2μs。外部时钟信号exclk的频率为166mhz,当从
×
4的外部端子输出一页面的数据时,tdout为约24.6μs。
18.根据数式(1),ecc处理时间具有数式(2)的限制。
19.tecc<8.4μs

(2)
20.在ecc电路进行1位的错误检测/纠正的情况下,能够使用汉明码(hamming code),其处理时间相对较短,因此外部时钟信号exclk的频率存在余裕。另一方面,在进行多位的错误检测/纠正的情况下,需要博斯

雷查得胡里

霍昆格姆(bose

chaudhuri

hocquenghem,bch)码,在bch码的处理中,需要比汉明码的处理长的时间。此时,数式(2)的ecc处理时间(tecc)可能成为瓶颈。
21.图3例示以往的对bch码进行解码时的流程。作为一例,一页面(2kb)包含两个高速
缓冲存储器c0、c1,一个高速缓冲存储器包含两个扇区(sector)。ecc是以扇区为单位(例如512字节)来进行,一个高速缓冲存储器需要两次ecc处理,通过bch码,可实现每一高速缓冲存储器为四位的错误检测/纠正。而且,ecc处理是与ecc时钟信号同步地进行,将其时钟频率设为50mhz。
22.步骤1:对从第一扇区及第二扇区读取的数据的校验子(syndrome)进行评估。此步骤包含下述处理,即,经由传输电路42来对页面缓冲器/读出电路30进行存取,从其中读出数据,每一扇区需要140个时钟周期(clock cycle)。
23.步骤2:在第一扇区的校验子的评估后,计算第一扇区的错误位置多项式(elp),在第二扇区的校验子的评估后,计算第二扇区的第二错误位置多项式(elp)。所述计算分别需要81个时钟周期。
24.步骤3:计算第一扇区的elp的根,决定其错误位置,计算第二扇区的elp的根,决定其错误位置。这些计算分别需要135个时钟周期。
25.步骤4:基于错误位置,将经纠正的数据写回页面缓冲器/读出电路。此处理需要20个时钟周期。
26.只要同一步骤不重复,第一扇区及第二扇区的步骤1至步骤4的处理便能够并行地进行。一个高速缓冲存储器的ecc处理需要516个时钟周期,若换算成时间,则tecc=10.32μs。
27.在使用汉明码的情况下,不需要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未满足限制的状态。
28.当在以往的快闪存储器中进行连续读出时,存在下述问题:若ecc处理时间长,则外部时钟信号exclk的频率产生限制,从而无法进行高速读出。
29.本发明的目的在于解决此种以往的问题,提供一种能够实现读出动作时的ecc处理时间的缩短的半导体存储装置以及读出方法。
30.本发明的半导体存储装置包括:存储胞元阵列;页面缓冲器/读出电路,保持从所述存储胞元阵列的选择页面读出的数据;错误检测纠正电路,接收保持在页面缓冲器/读出电路中的数据,对所述数据进行检测,并保持所检测出的错误位置相关的错误位置信息;输出电路,基于列地址来从所述页面缓冲器/读出电路选择数据,并将所选择的数据输出至数据总线;以及错误纠正部件,基于所述错误位置信息来纠正所述数据总线上的数据。
31.本发明的快闪存储器的读出方法包括下述步骤:在读出动作时,接收保持在页面缓冲器/读出电路中的数据,对所述数据进行检测;保持所检测出的错误位置相关的错误位置信息;基于列地址来从所述页面缓冲器/读出电路选择数据,并将所选择的数据输出至数据总线;基于所述错误位置信息来对所述数据总线上的数据进行纠正;以及将经纠正的数据输出至外部。
32.根据本发明,基于错误位置信息来对从页面缓冲器/读出电路输出的数据总线上的数据进行纠正,因此与以往相比,能够缩短错误检测/纠正所需的时间,由此,能够缩短读
出时间。而且,在进行页面的连续读出时,与以往相比,能够提高读出速度。
附图说明
33.图1是表示以往的搭载芯片上ecc的nand型快闪存储器的概略结构的图;
34.图2a是以往的nand型快闪存储器中进行连续读出时的时间图;
35.图2b是以往的nand型快闪存储器中进行连续读出时的时间图;
36.图3是例示以往的ecc电路的bch的解码流程的图;
37.图4是表示本发明的实施例的nand型快闪存储器的结构的框图;
38.图5是表示本发明的第一实施例的ecc电路的概略结构的图;
39.图6是说明本发明的第一实施例的ecc电路的错误纠正部件的详细的图;
40.图7是例示本发明的第一实施例的ecc电路的bch的解码流程的图;
41.图8是进行本发明的第一实施例的连续读出时的时间图;
42.图9是说明本发明的第二实施例的错误检测/纠正方法的图;
43.图10是本发明的第二实施例的错误检测/纠正方法的动作流程。
44.[符号的说明]
[0045]
10:快闪存储器
[0046]
20:存储胞元阵列
[0047]
30:页面缓冲器/读出电路
[0048]
40:错误检测纠正电路(ecc电路)
[0049]
42:传输电路
[0050]
44:ecc核心
[0051]
46:错误寄存器
[0052]
48:写入电路
[0053]
50:输入/输出电路
[0054]
60:数据总线
[0055]
100:快闪存储器
[0056]
110:存储胞元阵列
[0057]
120:输入/输出电路
[0058]
122:驱动器
[0059]
130:ecc电路
[0060]
132:传输电路
[0061]
134:ecc核心
[0062]
136:错误寄存器
[0063]
138:错误纠正部件
[0064]
138a:地址比较部
[0065]
138b:反转电路
[0066]
139:写入电路
[0067]
140:地址寄存器
[0068]
150:控制器
[0069]
160:字线选择电路
[0070]
170:页面缓冲器/读出电路
[0071]
180:列选择电路
[0072]
182:列解码器
[0073]
184:差动读出放大器
[0074]
190:内部电压产生电路
[0075]
200:数据总线
[0076]
ax:行地址信息
[0077]
ay:列地址信息
[0078]
bt/bb:位线对
[0079]
c0:第一高速缓冲存储器
[0080]
c1:第二高速缓冲存储器
[0081]
en1、en2:使能信号
[0082]
l1、l2:锁存器
[0083]
s100~s130:步骤
[0084]
tdis:存储胞元的放电时间
[0085]
tdout:一页面的数据输出时间
[0086]
tecc:1/2页面的ecc处理时间
[0087]
tecc_bg:后台的处理时间
[0088]
tecc_fg:前台的处理时间
[0089]
tpre:位线的预充电时间
[0090]
vpgm:写入电压
[0091]
vread:读出通过电压
[0092]
ys:列选择信号
具体实施方式
[0093]
接下来,参照附图来详细说明本发明的实施方式。本发明的半导体存储装置例如是nand型快闪存储器、或者嵌入此种快闪存储器的微处理器(micro processor)、微控制器(micro controller)、逻辑、专用集成电路(application specific integrated circuit,asic)、对图像或声音进行处理的处理器、对无线信号等信号进行处理的处理器等。
[0094]
图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等)。
[0095]
存储胞元阵列110包含m个区块blk(0)、blk(1)、

、blk(m

1)。在一个区块中,形成有多个nand串(string)。存储胞元阵列110既可二维地形成在基板表面,也可从基板表面沿垂直方向三维地形成。而且,存储胞元既可为存储1位(2值数据)的单层胞元(single

level cell,slc)型,也可为存储多位的多层胞元(multi

level cell,mlc)型。
[0096]
ecc电路130可通过命令或出货时的设定等来设为动作或非动作。ecc电路130进行从存储胞元阵列110读出的数据的错误检测/纠正,或者进行应对存储胞元阵列110编程的数据的码生成。ecc电路130既可进行单位(single bit)的错误检测/纠正,也可进行多位(multi bit)的错误检测/纠正。ecc电路130的详细将后述。
[0097]
控制器150包含状态机(state machine)或者微控制器,控制快闪存储器的各动作。在读出动作中,对位线施加某正电压,对选择字线施加某电压(例如0v),对非选择字线施加通过电压,使位线侧选择晶体管及源极线侧选择晶体管导通,对源极线施加0v。在编程动作中,对选择字线施加高电压的编程电压vpgm,对非选择的字线施加中间电位,使位线侧选择晶体管导通,使源极线侧选择晶体管断开,对位线供给与数据“0”或“1”相应的电位。在擦除动作中,对区块内的所有选择字线施加0v,对p阱施加高电压的擦除电压,将浮动栅极的电子抽出至基板,以区块为单位来擦除数据。
[0098]
如图2a及图2b所示,页面缓冲器/读出电路170包含两个锁存器l1、l2,锁存器l1、锁存器l2分别包含可独立地运行的第一高速缓冲存储器c0与第二高速缓冲存储器c1而构成。在锁存器l1与锁存器l2之间,连接有可进行双向数据传输的传输闸,通过将传输闸导通,从锁存器l1向锁存器l2、或者从锁存器l2向锁存器l1传输数据。
[0099]
从存储胞元阵列的选择页面读出的数据在读出节点被读出,所读出的数据被传输至锁存器l1,并被保持在其中。在进行页面的连续读出时,存储胞元阵列的读出及锁存器l1与锁存器l2之间的数据传输是与内部时钟信号同步地进行,锁存器l2与输入/输出电路120之间的数据传输、从输入/输出电路120的数据输出是与从外部供给的外部时钟信号exclk同步地进行,锁存器l2与ecc电路130之间的数据传输以及ecc电路的动作是与另一内部时钟信号或者对从外部供给的外部时钟信号exclk进行分频所得的时钟同步地进行。
[0100]
列选择电路180基于列地址ay来选择页面内的数据的读出开始位置,或者不使用列地址而从页面的先头位置自动读出数据。进而,列选择电路180也可包含列地址计数器,所述列地址计数器响应时钟信号而对列地址进行增量。
[0101]
图5表示本实施例的ecc电路130的结构。ecc电路130包含:传输电路132,用于读出由页面缓冲器/读出电路170所保持的数据;ecc核心134,对由传输电路132所读出的数据进行处理,以检测错误;错误寄存器136,保持由ecc核心134所检测出的错误的错误位置信息;以及错误纠正部件138,基于由错误寄存器136所保持的错误位置信息,对输出至数据总线200上的数据进行纠正。错误寄存器136所保持的错误位置信息是能够识别错误所处的列(column)位置与位位置的信息。
[0102]
本实施例的ecc电路130并非如以往那样,对页面缓冲器/读出电路进行存取,并通过写入电路将经纠正的数据写入页面缓冲器/读出电路170,由此来进行纠正,而是不对页面缓冲器/读出电路进行存取,而通过对从页面缓冲器/读出电路170输出至数据总线200的
数据进行反转来进行纠正。
[0103]
图6表示错误纠正部件138的结构例。错误纠正部件138包括:地址比较部138a,对列地址ay与错误寄存器136所保持的错误位置信息进行比较;以及反转电路138b,具备下述功能,基于从地址比较部138a输出的反转控制信号来对数据总线200上的数据进行反转。
[0104]
当输出由页面缓冲器/读出电路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的反转控制信号。
[0105]
地址比较部138a对错误寄存器136的错误位置信息、与从页面缓冲器/读出电路170输出数据时的列地址ay进行比较,若两地址一致,则对与错误寄存器136的错误位位置对应的位(exor)输出h电平的反转控制信号,对不与错误位位置对应的位(exor),输出l电平的反转控制信号。而且,若两地址不一致,则对所有的位(exor)输出l电平的反转控制信号。从页面缓冲器/读出电路170读出的数据若存在错误,则通过利用反转电路138b来进行反转而进行错误的纠正,若所读出的数据无错误,则不利用反转电路138b来进行反转而直接输出。
[0106]
从反转电路138b的exor输出的n位数据被供给至输入/输出电路120。输入/输出电路120包含连接有多个触发器(flip flop)的并行/串行(parallel/serial)转换电路,并行/串行转换电路将所输入的n位数据转换为m个串行数据,经转换的串行数据经由驱动器122而从m位的输入/输出端子i/o输出至外部。
[0107]
在页面的连续读出中,对时钟端子供给外部时钟信号exclk,外部时钟信号exclk被供给至未图示的时机控制电路。时机控制电路生成与外部时钟信号exclk同步的内部时钟信号,所述内部时钟信号被供给至输入/输出电路120或差动读出放大器184等。
[0108]
由列解码器182一次选择的位数n等于数据总线200的位宽即位线对bt/bb的数量。i/o的端子数为任意,但当i/o的端子数为m位时,m≦n,且,n处于m的k倍的关系(m、k分别为1以上的整数)。
[0109]
图7例示本实施例的ecc电路130对bch码进行解码的流程。此流程对应于图3所示的以往的bch码的解码流程,ecc电路130使用50mhz的时钟信号来执行ecc处理,一个高速缓冲存储器包含第一扇区及第二扇区。步骤1至步骤3与图3的流程同样,但在本实施例中不进行步骤4而实施步骤5。
[0110]
步骤5:对从页面缓冲器/读出电路170输出至数据总线200的数据进行反转,由此来实施错误纠正。
[0111]
本实施例中不进行步骤4的对页面缓冲器/读出电路的写回。即,不对页面缓冲器/读出电路170进行存取。因此,ecc电路130能够在前台(foreground)进行步骤3的直至第一扇区的elp的根为止的处理,且在第一扇区的错误纠正期间内,在后台(background)进行第二扇区的elp的根的处理。在步骤1中对页面缓冲器/读出电路170进行存取后,不进行对页面缓冲器/读出电路170的写入,因此从页面缓冲器/读出电路的数据读出不会与由ecc电路
所进行的存取发生冲突。进而,只要在步骤3中决定了第一扇区的错误位置,便能够使用此错误位置信息来立即对数据总线上的数据进行纠正。因而,在前台处理步骤3的直至第一扇区的错误位置的计算为止的操作,随后,从页面缓冲器/读出电路170向数据总线200输出第一扇区的数据,在进行错误纠正的期间,在后台处理步骤3的第二扇区的错误位置的计算。
[0112]
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,一边进行页面的连续读出。
[0113]
图8是表示进行本实施例的页面的连续读出时的时间图的图。控制器150在经由输入/输出电路120而收到连续读出动作的命令时,从开始地址控制多个页面的连续读出动作,当收到连续读出动作结束的命令时,在结束地址结束连续读出动作。在连续读出动作中,在从页面缓冲器/读出电路170的其中一个锁存器l2输出数据的期间,将从存储胞元阵列的选择页面读出的数据传输至另一个锁存器l1。从锁存器l1向锁存器l2的数据传输是利用第一高速缓冲存储器c0或第二高速缓冲存储器c1来进行,在将锁存器l2的其中一个高速缓冲存储器的数据传输至输入/输出电路120的期间,利用ecc电路130来对锁存器l2的另一个高速缓冲存储器的数据进行处理。传输至输入/输出电路120的数据是与外部时钟信号exclk同步地从外部输入/输出端子输出。
[0114]
如本图所示,外部时钟信号exclk为166mhz时的tdout为24.6μs,本实施例的读出时间(tpre+tdis+tecc)小于tdout。图中的影线所示的矩形区域表示ecc电路130的后台处理(第二扇区的elp的处理等)。
[0115]
根据本实施例,对从页面缓冲器/读出电路170输出至数据总线200的数据进行纠正,因此为了错误纠正,不需要对页面缓冲器/读出电路的存取,能够在后台执行ecc电路的处理的一部分,作为结果,能够缩短ecc电路的处理时间。由此,能够实现连续读出的高速化。所述实施例中,表示了在连续读出动作中适用ecc电路130的示例,但并不限于此,当然也能够将ecc电路130适用于通常的页面读出。
[0116]
接下来,对本发明的第二实施例进行说明。图9是表示第二实施例的快闪存储器的ecc电路的图。如本图所示,ecc电路130除了第一实施例的结构以外,还包含写入电路139。控制器150基于所输入的读出命令来识别页面读出或连续读出,基于识别结果,经由使能信号en1、使能信号en2来使错误纠正部件138或写入电路139选择性地运行。
[0117]
图10是第二实施例的ecc电路的动作流程。控制器150在收到读出命令时(s100),识别是连续读出还是页面读出(s110)。若是连续读出,则控制器150经由使能信号en1来启用错误纠正部件138,并经由使能信号en2来禁用(disable)写入电路139。由此,与第一实施例时同样地,错误纠正部件138对从页面缓冲器/读出电路170输出至数据总线200的数据进行纠正(s120)。
[0118]
另一方面,若是页面读出,则控制器150经由使能信号en1来禁用错误纠正部件138,并经由使能信号en2来启用写入电路139。错误纠正部件138在被禁用时,将反转控制信号全部设为l电平,使数据总线200的数据直接通过。另一方面,如图1所示,写入电路139基
于错误位置信息来将经纠正的数据写回页面缓冲器/读出电路170(s130)。
[0119]
根据本实施例,若是连续读出,则进行重视读出速度的ecc处理,若是页面读出,则能够实现利用idm(internal date move)功能的、数据可靠性的提高。idm是将页面缓冲器/读出电路的页面数据复制到其他区块的页面中的功能,在对由页面缓冲器/读出电路所保持的数据进行ecc处理后,写回至页面缓冲器/读出电路,并将所述经ecc处理的页面数据编程到其他区块的页面。即,页面缓冲器/读出电路必须保持经ecc电路纠正的数据。
[0120]
所述实施例中,将由多位ecc所进行的对bch码进行解码的流程示于图3、图7,但这些流程(算法)是例示,也可通过其他的流程来对bch码进行解码。进而,本发明并不限定于多位ecc,也能够适用于进行1位的错误检测/纠正的ecc电路或者使用bch码以外的码的错误检测/纠正。
[0121]
对本发明的优选实施方式进行了详述,但本发明并不限定于特定的实施方式,在权利要求所记载的本发明的主旨的范围内,能够进行各种变形/变更。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1