Read Retry的本质应该说是一种纠错机制,当page出现ECC不可纠正的读取错误时,通过尝试偏离正常阈值电压的方式找到最接近的阈值电压,试图正确读出数据。
Read Retry与P/E cycle密切相关,测试结果表明,随着P/E cycle的增加,阈值电压向右偏移,且电压分布的幅度更宽。通俗来讲,随着P/E cycle次数的增加,正确编程(Program)需要比阈值电压更高的电压,同时,编程时的电压精度变的更差了。
既然阈值电压已经发生了偏移,读取时仍然用正常的读取电压去读取,发生错误就在所难免,因此,读取时也需要将读取电压向右进行相应的偏移才能正确读取数据。
测试流程(参考某3D Nand Flash流程图,ReadRetry部分Parameter1的参数设定不一定完全依照datasheet)
Parameter的设定每个厂商不尽一致,请参考datasheet,一般来说,可以从01-07或者更多参数进行尝试。
测试方法:
1、在set features中,设置address为89h;
2、在sub-parameter中,将parameter1的参数从01开始进行多个参数的设定尝试,如:01,02,03,04……
3、对需要测试的Block进行一次Erase-Program操作,然后去读取写入的数据,获取在一定ECC条件下的误码率,直到相应参数对应的误码率为零。
用NFA100-E测试时,在对既定block进行program后,只需要用Read Only即可。