用于闪存装置的错误更正码单元、自我测试方法及控制器的制造方法_3

文档序号:8362701阅读:来源:国知局
码单元130进入自我测试模式时,工程师会将一自我测试开始信号fb_strt输入至图2的自我测试电路220中,而当自我测试电路220接收到自我测试开始信号fb_strt后,控制信号有限状态机228便会产生一第一种子数据至随机数据产生器222中的种子储存单元420,于本实施例中,所述第一种子数据可以为“0000000000001”,且这13个位值分别储存于正反器FFl?FF13中。接着,加扰器410便会开始依据所述第一种子数据来循序产生第一笔随机数据,且在产生第一笔随机数据的过程中,正反器FFl?FF13中所储存的种子信息也会持续变化。
[0061]随机数据产生器222所产生的第一笔随机数据接着进入编码器210以及噪声产生器224中,其中编码器210会将第一笔随机数据进行编码以产生相对应的错误更正码(Error Correct1n Code)ECC之后,再输入至噪声产生器224。简单来说,噪声产生器224所接收到的数据即为第一笔随机数据及其相对应的错误更正码,而于本发明一实施例中,噪声产生器224所接收到的数据类似于闪存120中一个数据页中的数据内容(包括多组数据即相对应的错误更正码),举例来说,假设闪存120中一个数据页包括8个区段,且每一个区段为IKB (kilobyte),且这IKB的数据包括120为元的错误更正码,则噪声产生器224所接收到的数据就类似上述这个数据页的内容。接着,噪声产生器224将所接收到的第一笔随机数据及其相对应的错误更正码加上噪声成分(亦即加上一个错误量),以模拟实际在读取闪存120时的状况,举例来说,噪声产生器224可以是一个加性白高斯噪声(AdditiveWhite Gaussian Noise)电路,其可以改变所接收到数据的少部分内容,以使得所接收到数据具有一定比例的错误量,例如使上述一个数据页具有0.01%的列位错误率(row biterrorrate),亦即一个数据页中大约具有90个错误位值。
[0062]如上所述,噪声产生器224所产生的数据即可被视为图3中使用电压Vl来读取一数据页的结果,而噪声产生器224所产生的数据通过缓冲器226、控制信号有限状态机228与多任务器230输入至数字信号处理器240中的缓冲器242。
[0063]此外,噪声产生器224会将所输出的数据中错误位的位置及其位值记录下来(举例来说,可以记录至控制信号有限状态机228中),以供后续使用。
[0064]接着,控制信号有限状态机228再次产生所述第一种子数据(亦即上述的“0000000000001”)至随机数据产生器222中的种子储存单元420,同样地,随机数据产生器222依据所述第一种子数据产生第二笔随机数据,其中由于第二笔随机数据与上述的第一笔随机数据是使用相同的种子数据来产生,因此,第二笔随机数据实际上会完全等于第一笔随机数据。接着,随机数据产生器222将所产生的所述第二笔随机数据输入至编码器210中以产生相对应的错误更正码,而噪声产生器224接着接收第二笔随机数据及其相对应的错误更正码。噪声产生器224接着对第二笔随机数据及其相对应的错误更正码加入噪声以仿真图3中使用电压V2来读取数据页的结果,由于噪声产生器224此时是仿真使用电压V2来读取同一个数据页,因此其错误位值的位置与先前仿真使用电压Vl来读取数据页时的错误位值位置具有相依性,因此,控制信号有限状态机228会将先前所储存的错误位的位置其位值传送给噪声产生器224,而噪声产生器224则利用这些信息来将第二笔随机数据及其错误更正码加上噪声后输出。
[0065]如上所述,噪声产生器224所产生的数据即可被视为图3中使用电压V2来读取一数据页的结果,而噪声产生器224所产生的数据通过缓冲器226、控制信号有限状态机228与多任务器230输入至数字信号处理器240中的缓冲器242。
[0066]此外,噪声产生器224会将所输出的数据中错误位的位置及其位值记录下来(举例来说,可以记录至控制信号有限状态机228中),以供后续使用。
[0067]以此类推,随机数据产生器222会再次利用所述第一种子数据分别产生第三笔随机数据、第四笔随机数据、第五笔随机数据、第六笔随机数据、第七笔随机数据,其分别被编码器210与噪声产生器224处理以模拟类似图3中使用电压V3、V4、V5、V6、V7来读取同一数据页的结果。噪声产生器224所产生的这些数据通过缓冲器226、控制信号有限状态机228与多任务器230输入至数字信号处理器240中的缓冲器242。
[0068]在数字信号处理器240接收到模拟类似图3中使用电压Vl?V7来读取同一数据页的结果后,译码器244对这些数据进行类似使用低密度校验码(LowDensity ParityCheck, LDPC)译码的软译码操作,以测试是否可以解码成功。
[0069]上述有关于自我测试电路220与数字信号处理器240的操作可视为仿真内存控制器110实际在读取闪存120中一数据页的数据(软信息),并加以解码的操作。
[0070]接着,自我测试电路220重复以上的操作,并模拟产生多个不同数据页的软信息至译码器244进行译码。详细来说,控制信号有限状态机228可以产生一第二种子数据(例如“0000000000010”)至随机数据产生器222中的种子储存单元420,并依照上述步骤以产生另一数据页的软信息至译码器244进行译码;接着控制信号有限状态机228可以产生一第三种子数据(例如“0000000000011”)至随机数据产生器222中的种子储存单元420,并依照上述步骤以产生另一数据页的软信息至译码器244进行译码,…,以此类推,自我测试电路220可以依据工程师的设定来仿真产生多个不同数据页(例如I万个数据页)的软信息至译码器244进行译码。
[0071]当工程师认为需要停止测试时,可以通过输入一自我测试结束信号fb_stop至自我测试电路220中以停止产生数据至数字信号处理器240,而此时自我测试电路220会输出一测试结束信号fb_done、一测试区段数量fb_cdwd_cnt以及区段解码失败数量fb_fail_cnt以供工程师参考。
[0072]如上所述,由于图2中的自我测试电路220仅需要数据量很低的种子数据便可以仿真产生很大量的数据页数据,因此,自我测试电路220的芯片面积便可以大幅度的减少以节省成本,且由于所仿真产生的数据具有很高的真实性,因此也可以增加测试的可靠度。
[0073]另一方面,当错误更正码单元130处于正常操作模式时,自我测试电路220的全部或部分功能会关闭,但此时图2中的编码器210与译码器244仍会正常操作,亦即编码器210会将所需要写入至闪存120中的数据进行编码后再写入至闪存120中,而译码器244则用来接收输入控制信号Vc_n0rmal,并对自闪存120中所读取的数据进行译码。
[0074]另外,请参考图5,图5为依据本发明一实施例的应用于一闪存装置的自我测试方法的流程图。参考以上针对2?4图的叙述,本发明的自我测试方法的流程如下所示:
[0075]步骤500:产生一输入数据;
[0076]步骤502:对所述输入数据进行编码以产生相对应的一错误更正码;
[0077]步骤504:使用所述输入数据与所述错误更正码来模拟产生读取所述闪存装置中一闪存的一数据页所得到的一软信息
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1