CN114882935A - 一种nand闪存的辐射效应实时测试方法、***及终端设备 - Google Patents
一种nand闪存的辐射效应实时测试方法、***及终端设备 Download PDFInfo
- Publication number
- CN114882935A CN114882935A CN202210433274.4A CN202210433274A CN114882935A CN 114882935 A CN114882935 A CN 114882935A CN 202210433274 A CN202210433274 A CN 202210433274A CN 114882935 A CN114882935 A CN 114882935A
- Authority
- CN
- China
- Prior art keywords
- instruction
- address
- module
- data
- execution
- 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.)
- Pending
Links
- 230000015654 memory Effects 0.000 title claims abstract description 196
- 230000000191 radiation effect Effects 0.000 title claims abstract description 48
- 238000010998 test method Methods 0.000 title description 3
- 238000012360 testing method Methods 0.000 claims abstract description 302
- 238000000034 method Methods 0.000 claims abstract description 27
- 230000008569 process Effects 0.000 claims abstract description 6
- 239000000872 buffer Substances 0.000 claims description 14
- 230000000630 rising effect Effects 0.000 claims description 9
- 230000008859 change Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 6
- 230000005855 radiation Effects 0.000 abstract description 9
- 238000011160 research Methods 0.000 abstract description 6
- 238000002474 experimental method Methods 0.000 abstract description 5
- 238000011156 evaluation Methods 0.000 abstract description 3
- 230000009977 dual effect Effects 0.000 description 11
- 230000002159 abnormal effect Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 230000001174 ascending effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
- 230000007306 turnover Effects 0.000 description 1
Images
Classifications
-
- 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/18—Address generation devices; Devices for accessing memories, e.g. details of addressing 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/56—External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明涉及一种NAND闪存的实时测试方法及***,具体涉及一种NAND闪存的辐射效应实时测试方法、***及终端设备,解决NAND闪存辐射效应实时测试***及测试流程,面对现有的NAND闪存辐射效应实验研究需求,难以灵活、高效地实现NAND闪存辐射效应实时测试,导致影响准确评估NAND闪存抗辐射性能的技术问题。本发明一种NAND闪存的辐射效应实时测试***中,指令执行模块通过指令缓存双端口RAM中缓存的执行指令序列、地址缓存双端口RAM中缓存的地址序列、数据缓存双端口RAM中缓存的数据序列以及指令执行模块、地址生成模块、控制时序生成模块和测试数据对比模块的存储器中缓存的设置指令,实现了NAND闪存测试时序、测试流程的灵活设置及NAND闪存抗辐射性能的准确评估。
Description
技术领域
本发明涉及一种NAND闪存的实时测试方法及***,具体涉及一种NAND闪存的辐射效应实时测试方法、***及终端设备。
背景技术
NAND闪存是一种非易失性存储器,具有存储密度高,功耗小,访问速度快,无机械结构的优点,在航天领域得到广泛关注,是卫星数据NAND闪存的发展趋势,涉及气象卫星、地球资源探测卫星、空间探测器数据存储、数据加密等诸多领域。随着NAND闪存特征尺寸不断缩小,NAND闪存器件的抗辐射性能也在不断降低,限制了其在空间领域的发展。因此开展NAND闪存的辐射效应实验研究,获取NAND闪存器件的敏感物理位置和辐射效应规律,将为建立NAND闪存的辐射效应评估方法,准确评估NAND闪存的抗辐射性能,实现NAND闪存在辐射环境中的可靠应用提供重要支撑。
NAND闪存的辐射效应实时测试是开展效应研究的基础。NAND闪存辐射效应实时测试具备以下特点:(1)不同实验环境条件下,测试***和被测NAND闪存之间的电缆类型、线长等均不相同,考虑到信号完整性的问题,要求可以调节测试***对被测NAND闪存的读写速度;(2)NAND闪存自身功能及相应的控制时序复杂,涉及复位、初始配置、读出、编程以及擦除等操作,需要测试***能够灵活配置测试任务;(3)受到辐照源实验机时、束流或射线同步等因素影响,测试***需要更高的测试效率。如测试图形编程方面,常规测试一般进行棋盘格写入,如授权公告号为CN 103366825B的中国发明专利“一种NAND闪存芯片及其棋盘格检查的芯片编程方法”中提出的奇偶页分别写入的方法;在开展辐射效应实验时,这种方法虽然适用于SLC类NAND闪存,但对于非SLC类的NAND闪存,一般需要研究存储单元处于不同阈值电压状态条件下的浮栅电荷泄露情况,此时由于AND Flash存储器存储单元的LSB和MSB并非固定地按照奇偶页分布,因此奇偶页单独写入和读出的方法不适用于非SLC类的NAND闪存辐射效应测试,也不利于其后续的数据分析。而按照自动测试***中测试向量的设计思路则会大大提高测试***的设计难度和成本;因此需要测试***针对辐射效应实验的需求实现一种高效的读出和编程机制。(4)进行NAND闪存辐射效应实时测试时,需要测试***具备即时故障处理能力。辐射效应实时测试一般需要记录待测参数随辐射参数的变化规律,在进行某项参数(如存储单元数据位翻转率)测试时,一旦出现影响测试的其他故障(如器件功能中断),则需要立即对被测器件NAND闪存执行复位等操作,使被测器件NAND闪存恢复至原测试状态。(5)进行辐射效应实时测试时,需要测试***具备高效执行特殊测试流程的能力。辐射效应实时测试不同于常规测试,常规测试一般是完成存储器配置后,按照一定的地址顺序对器件执行擦除、编程以及读出操作,用于实现故障器件的筛查;而开展辐射效应实验时,为了获取器件的某待测参数的变化情况,可能需要在擦除或者编程操作过程中***其他操作,或者连续执行器件配置和读出的循环操作。这些特殊要求也对测试***提出了新的更高的要求。
发明内容
本发明的目的是针对NAND闪存辐射效应实时测试***及测试流程,面对现有的NAND闪存辐射效应实验研究需求,难以灵活、高效地实现NAND闪存辐射效应实时测试,导致影响准确评估NAND闪存抗辐射性能的技术问题,而提供一种NAND闪存的辐射效应实时测试方法、***及终端设备,能够实现NAND闪存辐射效应实时测试灵活高效开展NAND闪存辐射效应实验研究,并准确评估NAND闪存抗辐射性能。
为解决上述技术问题,本发明所采用的技术方案为:
一种NAND闪存的辐射效应实时测试方法,其特殊之处在于,包括以下步骤:
S1、控制模块向主控模块发送控制帧;
S2、主控模块将控制帧中的数据分别存储到指令缓存双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM及无效块地址缓存双端口RAM中;
S3、主控模块将控制帧中的设置指令存储到指令执行模块、地址生成模块、控制时序生成模块及测试数据对比模块的寄存器中,启动指令执行模块;
S4、指令执行模块从指令缓存双端口RAM中读出执行指令,根据执行指令监测被测NAND闪存的R/B管脚电平变化,并将R/B管脚的低电平保持时间写入第一测试结果缓存FIFO中;指令执行模块在当前执行指令完成后,读出下一执行指令并执行;
或者,指令执行模块根据执行指令启动控制时序生成模块、地址生成模块、IO数据输出模块以及测试数据对比模块,并分别向控制时序生成模块、地址生成模块、IO数据输出模块以及测试数据对比模块发送状态信号、预期地址、输出数据、预期数据及其地址;测试数据对比模块启动后,将测试数据写入第二测试结果缓存FIFO中;指令执行模块在当前执行指令完成后,读出下一执行指令并执行;
或者,停止测试;
S5、主控模块将第一测试结果缓存FIFO、第二测试结果缓存FIFO中的数据打包成数据帧;
主控模块将指令执行模块的状态打包成状态帧;
主控模块将打包的数据帧与状态帧上传给控制模块;
S6、控制模块将接收到S5中的数据帧存储;
S7、控制模块接收到S5中的状态帧,判断指令执行模块的状态是否为停止测试状态;
若是,停止测试并返回S1;
否则,继续接收状态帧,直到接收到的状态帧表明指令执行模块的状态是停止测试状态时,停止测试并返回S1。
进一步地,S3中,所述启动指令执行模块具体为:
如果设置指令中的测试启动指令为直接启动,则启动指令执行模块;
如果设置指令中的测试启动指令为预启动,则指令执行模块在接收到外部触发模块发送的触发状态后,启动指令执行模块。
进一步地,S4具体为:
S4.1若执行指令为数据读出指令
4.1.1)指令执行模块启动控制时序生成模块,产生NAND闪存的CLE输入端、ALE输入端、WE输入端及RE输入端的控制信号,以实现读数据时序;
4.1.2)指令执行模块从数据缓存双端口RAM读出预期数据,发送给测试数据比较模块,启动测试数据对比模块比较预期数据与测试数据;
4.1.3)产生下一执行指令的地址;
如果,时序生成模块产生读数据时序的数量没有达到指令执行模块中循环数字段中存储的数值,下一执行指令地址为当前执行指令的循环跳转地址字段中存储的地址;
否则,下一执行指令地址为当前执行指令的地址加1;
S4.2若执行指令为数据写入指令
4.2.1)指令执行模块启动控制时序生成模块,产生NAND闪存的CLE输入端、ALE输入端、WE输入端及RE输入端的控制信号,以实现写数据时序;
4.2.2)指令执行模块从数据缓存双端口RAM中读出数据,发送给IO数据输出模块,并启动IO数据输出模块向被测NAND闪存输出数据;
4.2.3)产生下一执行指令的地址;
S4.3如果执行指令为命令写入指令
4.3.1)指令执行模块启动控制时序生成模块,产生NAND闪存的CLE输入端、ALE输入端、WE输入端及RE输入端的控制信号,以实现写命令时序;
4.3.2)指令执行模块将执行指令中写入命令字段中存储的数据发送给IO数据输出模块,启动IO数据输出模块向被测NAND闪存输出命令数据;
4.3.3)产生下一执行指令的地址,下一执行指令的地址为当前执行指令的地址加1;
S4.4若果执行指令为地址写入指令
4.4.1)指令执行模块根据执行指令中地址类型字段存储的数值、地址缓存双端口RAM读回的地址数据、执行指令中起始列地址字段存储的列地址数据以及地址生成模块发送的可执行行地址数据生成发送给NAND闪存的地址;
4.4.2)指令执行模块启动控制时序生成模块,产生NAND闪存的CLE输入端、ALE输入端、WE输入端及RE输入端的控制信号,以实现写地址时序;
4.4.3)指令执行模块将地址数据发送给IO数据输出模块,启动IO数据输出模块向被测NAND闪存输出命令数据;
4.4.4)产生下一执行指令的地址,下一执行指令的地址为当前执行指令的地址加1;
S4.5若执行指令为RB下降沿捕获指令
4.5.1)指令执行模块开始计数,并检测被测NAND闪存的R/B管脚是否为低电平;
4.5.2)如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前变为低电平,则指令执行模块不对第一测试结果缓存FIFO执行操作;
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前没有变为低电平,则指令执行模块将该结果写入第一测试结果缓存FIFO中;
4.5.3)产生下一执行指令的地址;
S4.6若执行指令为RB上升沿捕获指令
4.6.1)指令执行模块开始计数,并检测被测NAND闪存的R/B管脚是否为高电平;
4.6.2)如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前变为高电平,指令执行完成,下一执行指令的地址为当前执行指令的地址加1;
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前没有变为高电平,指令执行完成,不再检测R/B管脚是否会变为高电平,下一执行指令的地址为当前执行指令超时跳转地址字段中存储的地址;
4.6.3)产生下一执行指令的地址
当被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值时或以后变为高电平,指令执行模块将该结果写入第一测试结果缓存FIFO中;
当被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值时或以后没有变为高电平,指令执行模块将该结果不写入第一测试结果缓存FIFO中;
S4.7若执行指令为等待指令
4.7.1)指令执行模块开始计数,计数达到等待时间字段中存储的数值时停止计数,指令执行完成;
4.7.2)产生下一执行指令的地址,下一执行指令的地址为当前执行指令的地址加1;
S4.8若执行指令为新地址使能产生指令
4.8.1)指令执行模块将预期地址发送给地址生成模块,启动地址生成模块,指令执行完成;
4.8.2)产生下一执行指令的地址,下一执行指令的地址为当前执行指令的地址加1;
S4.9若执行指令为等待新地址产生指令:
4.9.1)指令执行模块判断地址生成模块生成可执行地址后,指令执行完成;
4.9.2)产生下一执行指令的地址,下一执行指令的地址为当前执行指令的地址加1;
S4.10若执行指令为测试停止指令
指令执行模块停止读出指令,直到下一次启动时从0地址读出一条指令并执行;
S4.11若执行指令为序列结束指令,若当前执行测试的行地址达到结束地址时,达到测试停止条件,指令执行模块停止读出指令,直到下一次启动时从0地址读出一条指令并执行;
否则,从0地址读出指令并执行。
进一步地,步骤4.1.2)具体为:
如果预期数据与测试数据不同,则测试数据对比模块将测试数据写入第二测试结果缓存FIFO中;
如果预期数据与测试数据相同,则测试数据对比模块不用将测试数据写入第二测试结果缓存FIFO中。
进一步地,步骤4.2.3)具体为:
如果,写数据时序的数量没有达到执行指令中循环数字段中存储的数值,下一执行指令的地址为当前执行指令的循环跳转地址字段中存储的地址;
否则,下一执行指令的地址为当前执行指令的地址加1。
进一步地,步骤4.5.3)具体为:
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前变为低电平,指令执行完成,下一执行指令的地址为当前执行指令的地址加1;
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前没有变为低电平,指令执行完成,不再检测R/B管脚是否会变为低电平,下一执行指令的地址为当前执行指令的超时跳转地址字段中存储的地址。
同时,本发明还提供一种NAND闪存的辐射效应实时测试***,其特殊之处在于:包括控制模块、主控模块、双端口RAM、指令执行模块、地址生成模块、控制时序生成模块、外部触发模块、IO数据输出模块、测试数据对比模块、第一测试结果缓存FIFO以及第二测试结果缓存FIFO;
双端口RAM包括指令存储双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM及无效块地址缓存双端口RAM;
控制模块与主控模块相互通讯;
主控模块分别与控制时序生成模块、指令存储双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM、无效块地址缓存双端口RAM、指令执行模块、地址生成模块、第一测试结果缓存FIFO、第二测试结果缓存FIFO以及测试数据对比模块相互通讯;
第一测试结果缓存FIFO、指令存储双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM及地址生成模块分别与指令执行模块相互通讯;
无效块地址缓存双端口RAM与地址生成模块相互通讯;
指令执行模块分别与控制时序生成模块、测试数据对比模块相互通讯;
控制时序生成模块的输出端分别用于与被测NAND闪存输入端连接;
指令执行模块的输入端与被测NAND闪存的R/B管脚的输出端连接;
指令执行模块的触发输入端与外部触发模块的输出端连接,指令执行模块的数据输出端与IO数据输出模块连接;
IO数据输出模块的数据输出端连接被测NAND闪存的IO输入端;
测试数据对比模块的数据输入端与被测NAND闪存的IO输出端连接,其输出端与第二测试结果缓存FIFO的输入端连接。
进一步地,所述控制模块通过TCP/IP网络通信协议与主控模块通讯。
进一步地,所述控制时序生成模块的输出端分别与被测NAND闪存的CLE输入端、ALE输入端、WE输入端、RE输入端连接;
IO数据输出模块的数据输出端通过第一缓冲器连接被测NAND闪存的IO输入端;
测试数据对比模块的数据输入端通过第二缓冲器与被测NAND闪存的IO输出端连接。
另外,本发明提供一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特殊之处在于:处理器执行所述计算机程序时实现如权利要求1至6任一所述NAND闪存的辐射效应实时测试方法的步骤。
与现有技术相比,本发明技术方案的有益效果是:
1、本发明NAND闪存辐射效应实时测试***,针对不同实验环境条件下,测试***和被测NAND闪存之间的电缆类型、线长等均不相同的情况,利用控制时序生成模块实现了读写与测试速度的控制,满足了不同辐照实验环境的需求。
2、本发明NAND闪存辐射效应实时测试***中,指令执行模块通过指令缓存双端口RAM中缓存的执行指令序列、地址缓存双端口RAM中缓存的地址序列、数据缓存双端口RAM中缓存的数据序列以及指令执行模块、地址生成模块、控制时序生成模块和测试数据对比模块的存储器中缓存的设置指令,实现了NAND闪存测试时序、测试流程的灵活设置,大大提升了NAND闪存辐射效应实时测试效率,满足了高效灵活开展NAND闪存辐射效应实验研究的需求,同时,较之于自动测试***海量测试向量的设计思路,仅通过较小的内存即可完成***开发,大大降低了测试***的设计难度和成本。
3、地址生成模块可根据无效块地址缓存双端口RAM中缓存的地址序列,产生被测NAND闪存下一个可执行测试操作的地址,自动跳过对被测NAND闪存初始无效块的测试,避免了无效块对测试结果造成影响。地址生成模块和指令执行模块为并行关系,因此本发明NAND闪存辐射效应实时测试方法、***,可以在执行当前测试的同时产生下一个可执行测试操作的地址,较之于测试人员手动设置无效块地址,或者通过上位机发送可执行地址,提高了测试效率。
附图说明
图1为本发明一种NAND闪存的辐射效应实时测试***实施例的原理示意图;
图2为本发明一种NAND闪存的辐射效应实时测试***实施例中NAND闪存读出操作流程图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的技术方案,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明一种NAND闪存的辐射效应实时测试方法,包括以下步骤:
S1、控制模块向主控模块发送控制帧;控制帧中包括数据和设置指令;
S2、主控模块将控制帧中的数据相应地存储到地址缓存双端口RAM、数据缓存双端口RAM,指令缓存双端口RAM以及无效块地址缓存双端口RAM中;
S3、主控模块将控制帧中的设置指令存储到指令执行模块、控制时序生成模块、地址生成模块及测试数据对比模块的寄存器中,启动指令执行模块。
如果设置指令中的测试启动指令为直接启动,则指令执行模块启动;
如果设置指令中的测试启动指令为预启动,则指令执行模块在接收到外部触发模块发送的触发状态后,指令执行模块启动。
S4、指令执行模块从指令缓存双端口RAM中读出执行指令,根据执行指令监测被测NAND闪存的R/B管脚的电平变化,并将R/B管脚低电平保持时间写入第一测试结果缓存FIFO中;指令执行模块在当前执行指令完成后,读出下一执行指令并执行;
或者,指令执行模块根据执行指令执行指令启动控制时序生成模块、地址生成模块、IO数据输出模块以及测试数据对比模块,并分别向控制时序生成模块、地址生成模块、IO数据输出模块以及测试数据对比模块发送状态信号、预期地址、输出数据、预期数据及其地址;测试数据对比模块启动后,将测试数据写入第二测试结果缓存FIFO中;指令执行模块在当前执行指令完成后,读出下一执行指令并执行;
或者,停止测试;
当指令执行模块检测到测试数据对比模块发送的测试异常标识时停止测试。
S 4.1)如果执行指令为数据读出指令
(a)指令执行模块启动控制时序生成模块,产生NAND闪存的CLE输入端、ALE输入端、WE输入端、RE输入端的控制信号,以实现读数据时序;
(b)指令执行模块将从数据缓存双端口RAM中读出的预期数据发送给测试数据比较模块,启动测试数据对比模块进行比较预期数据与测试数据;
如果预期数据与测试数据不同,则测试数据对比模块将测试数据和写入地址第二测试结果缓存FIFO中;
如果预期数据与测试数据相同,则测试数据对比模块不用将测试数据和写入地址第二测试结果缓存FIFO中;
当测试数据对比模块在连续地址检测到预期数据和测试数据不同时,测试数据对比模块向指令执行模块发送测试异常标识;指令执行模块检测到测试异常标识,且不对该标识进行屏蔽时,停止测试,否则继续测试。
(c)产生下一执行指令的地址
如果,时序生成模块产生的读数据时序的数量没有达到指令执行模块中循环数字段中存储的数值,下一执行指令的地址为当前执行指令的循环跳转地址字段中存储的地址;
否则,下一执行指令的地址为当前执行指令的地址加1;
S 4.2)如果执行指令为数据写入指令:
(a)指令执行模块启动控制时序生成模块,产生NAND闪存的CLE输入端、ALE输入端、WE输入端、RE输入端的控制信号,以实现写数据时序;
(b)指令执行模块将从数据缓存双端口RAM中读出的数据发送给IO数据输出模块,启动IO数据输出模块向被测NAND闪存输出数据;
(c)产生下一执行指令的地址;
如果,时序生成模块产生的写数据时序的数量没有达到指令执行模块中循环数字段中存储的数值,下一执行指令的地址为当前执行指令的循环跳转地址字段中存储的地址;
否则,下一执行指令的地址为当前执行指令的地址加1;
S4.3)如果执行指令为命令写入指令:
(a)指令执行模块启动控制时序生成模块产生NAND闪存的CLE输入端、ALE输入端、WE输入端、RE输入端的控制信号,以实现写命令时序。
(b)指令执行模块将执行指令中写入命令字段中存储的数据发送给IO数据输出模块,启动IO数据输出模块向被测NAND闪存输出命令数据。
(c)产生下一执行指令的地址,下一执行指令的地址为当前执行指令的地址加1。
S4.4)如果执行指令为地址写入指令:
(a)指令执行模块根据执行指令中地址类型字段存储的数值、地址缓存双端口RAM读回的地址数据、执行指令中起始列地址字段存储的列地址数据以及地址生成模块发送的可执行行地址数据生成发送给NAND闪存的地址;
(b)指令执行模块启动控制时序生成模块产生NAND闪存的CLE输入端、ALE输入端、WE输入端、RE输入端的控制信号,以实现写地址时序。
(c)指令执行模块将地址数据发送给IO数据输出模块,启动IO数据输出模块向被测NAND闪存输出命令数据。
(d)产生下一执行指令的地址;。
S4.5)如果执行指令为RB下降沿捕获指令:
S4.5(a)指令执行模块开始计数,并检测被测NAND闪存的R/B管脚是否为低电平。
S4.5(b)如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前变为低电平,指令执行完成,下一执行指令的地址为当前执行指令的地址加1;
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前没有变为低电平,指令执行完成,不再检测R/B管脚是否会变为低电平,下一执行指令的地址为当前执行指令超时跳转地址字段中存储的地址。
S4.5(c)产生下一执行指令的地址。
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前变为低电平,指令执行模块不对第一测试结果缓存FIFO执行操作;
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前没有变为低电平,则指令执行模块将该结果写入第一测试结果缓存FIFO中。
S4.6)如果执行指令为RB上升沿捕获指令:
S4.6(a)指令执行模块开始计数,并检测被测NAND闪存的R/B管脚是否为高电平;
S4.6(b)如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前变为高电平,指令执行完成,下一执行指令的地址为当前执行指令的地址加1;
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前没有变为高电平,指令执行完成,不再检测R/B管脚是否会变为高电平,下一执行指令的地址为当前执行指令超时跳转地址字段中存储的地址;
S4.6(c)产生下一执行指令的地址。
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值时或以后变为高电平,指令执行模块将该结果写入第一测试结果缓存FIFO中;
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值时或以后没有变为高电平,指令执行模块将该结果不写入第一测试结果缓存FIFO中;
S4.7)如果执行指令为等待指令:
(a)指令执行模块开始计数,计数达到等待时间字段中存储的数值时停止计数,指令执行完成;
(b)产生下一执行指令的地址;下一执行指令的地址为当前执行指令的地址加1。
S4.8)如果执行指令为新地址使能产生指令:
(a)指令执行模块将预期地址发送给地址生成模块,启动地址生成模块,指令执行完成。
(b)产生下一执行指令的地址;下一执行指令的地址为当前执行指令的地址加1。
S4.9)如果执行指令为新地址产生等待指令:
(a)指令执行模块判断地址生成模块生成可执行地址后,指令执行完成。
(b)产生下一执行指令的地址。
下一执行指令的地址为当前执行指令的地址加1。
S4.10)如果执行指令为测试停止指令,指令执行模块停止读出指令,直到下一次启动时从0地址读出一条指令并执行。
S4.11)如果执行指令为序列结束指令,若当前执行测试的行地址达到结束地址时,达到测试停止条件,指令执行模块停止读出指令,直到下一次启动时从0地址读出一条指令并执行;
否则,从0地址读出指令并执行。
S5、主控模块将第一测试结果缓存FIFO、第二测试结果缓存FIFO中的数据和指令执行模块的状态分别打包成数据帧和状态帧后上传给控制模块,指令执行模块的状态包括测试状态和停止状态。
S6、控制模块接收到数据帧后进行存储。
S7、控制模块接收到S5中的状态帧,判断指令执行模块的状态是否为停止测试状态;
若是,停止测试并返回S1;
否则,继续接收状态帧,直到接收到的状态帧表明指令执行模块的状态是停止测试状态时,停止测试并返回S1。
另外,如图1所示,本发明提供一种NAND闪存辐射效应实时测试***,包括控制模块、主控模块、双端口RAM、指令执行模块、地址生成模块、控制时序生成模块、外部触发模块、IO数据输出模块、测试数据对比模块、第一测试结果缓存FIFO以及第二测试结果缓存FIFO;双端口RAM包括指令存储双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM及无效块地址缓存双端口RAM;
控制模块与主控模块相互通讯;主控模块分别与控制时序生成模块、指令存储双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM、无效块地址缓存双端口RAM、指令执行模块、地址生成模块、第一测试结果缓存FIFO、第二测试结果缓存FIFO以及测试数据对比模块相互通讯;第一测试结果缓存FIFO、指令存储双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM及地址生成模块分别与指令执行模块相互通讯;无效块地址缓存双端口RAM与地址生成模块相互通讯;指令执行模块分别与控制时序生成模块、测试数据对比模块相互通讯;控制时序生成模块的输出端分别用于与被测NAND闪存输入端连接;被测NAND闪存的R/B管脚的输出端与指令执行模块的输入端相互通讯;指令执行模块的触发输入端与外部触发模块的输出端连接,指令执行模块的数据输出端与IO数据输出模块连接;IO数据输出模块的数据输出端连接被测NAND闪存的IO输入端;测试数据对比模块的数据输入端与被测NAND闪存的IO输出端连接,其输出端与第二测试结果缓存FIFO的输入端连接。本实施例中控制模块为控制计算机。控制模块通过TCP/IP网络通信协议向主控模块发送控制帧,并接收主控模块发送的数据帧和状态帧,再将数据帧和状态帧进行存储。控制时序生成模块的输出端分别与被测NAND闪存的CLE输入端、ALE输入端、WE输入端、RE输入端连接;IO数据输出模块的数据输出端通过第一缓冲器连接被测NAND闪存的IO输入端;测试数据对比模块的数据输入端通过第二缓冲器与被测NAND闪存的IO输出端连接,其输出端与第二测试结果缓存FIFO的输入端连接。
主控模块用于读出第一测试结果缓存FIFO、第二测试结果缓存FIFO中的测试数据和指令执行模块的状态,并将第一测试结果缓存FIFO、第二测试结果缓存FIFO中的测试数据打包成数据帧,将指令执行模块的状态打包成状态帧,再将数据帧与状态帧上传给控制模块;同时,将控制帧中的数据相应地存储到指令缓存双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM、无效块地址缓存双端口RAM、指令执行模块、地址生成模块、控制时序生成模块以及测试数据对比模块的寄存器中。
外部触发模块根据接收的触发信号产生相应的状态信号,发送给指令执行模块。
指令执行模块首先用于,监测被测NAND闪存的R/B管脚的电平变化状态,并将R/B管脚的低电平保持时间写入第一测试结果缓存FIFO中;其次,指令执行模块根据从指令缓存双端口RAM中读出的执行指令,启动控制时序生成模块以及IO数据输出模块、地址生成模块以及测试数据对比模块;指令执行模块还可以在检测到测试数据对比模块发送的测试异常标识时停止测试。
控制时序生成模块用于产生NAND闪存CLE输入端、ALE输入端、WE输入端、RE输入端的控制信号,以实现NAND闪存的读数据时序、写数据时序、写命令时序以及写指令时序。
IO数据输出模块用于向被测NAND闪存发送数据、地址或命令,以实现NAND闪存的读数据时序、写数据时序、写命令时序以及写指令时序。
测试数据对比模块用于对比预期数据和被测NAND闪存的测试数据。
如果,预期数据和测试数据不同,测试数据对比模块将测试数据和写入地址第二测试结果缓存FIFO中;
如果,预期数据和测试数据相同,测试数据对比模块不用将测试数据和写入地址第二测试结果缓存FIFO中;
当测试数据对比模块在连续检测到预期数据和测试数据不同时,向指令执行模块发送测试异常标识。
地址生成模块用于根据指令执行模块提供的预期地址产生下一个可以执行测试的地址,使测试流程跳过对被测NAND闪存的无效块的操作。
外部触发模块用于将接收的外部触发信号产生相对应的状态信号,发送给指令执行模块。
其中,指令执行模块、地址生成模块、控制时序生成模块和测试数据对比模块的寄存器中存储的数据是设置指令。
而双端口RAM中存储的数据具体是:
指令缓存双端口RAM中存储的数据是执行指令序列,由若干执行指令组成。
地址缓存双端口RAM中存储的数据是根据被测NAND闪存的块内页地址的执行顺序形成的页地址数组。
数据缓存双端口RAM中存储的数据是待写入被测NAND闪存的数据或待与被测NAND闪存回读的数据进行比较的数据。
无效块地址缓存双端口RAM中存储的数据是被测NAND闪存的无效块地址序列。
执行指令包括但不限于:
数据读出指令,该指令包括指令码字段、读出预期数据存储地址字段、循环数字段以及循环跳转地址字段。
数据写入指令,该指令包括指令码字段、写入数据存储地址字段、循环数字段以及循环跳转地址字段。
命令写入指令,该指令包括指令码字段和写入命令字段。
地址写入指令,该指令包括指令码字段、地址类型字段以及起始列地址字段。
RB下降沿捕获指令,该指令包括指令码字段、超时时间字段以及超时跳转地址字段。
RB上升沿捕获指令,该指令包括指令码字段、超时时间字段以及超时跳转地址字段。
等待指令,该指令包括指令码字段和等待时间字段。
新地址使能产生指令,该指令包括指令码字段和新地址产生顺序字段。
新地址产生等待指令,该指令包括指令码字段。
测试停止指令,该指令包括指令码字段。
序列结束指令,该指令包括指令码字段。
设置指令包括但不限于:
起始地址、结束地址、测试启动、屏蔽测试异常标识,存储到指令执行模块的寄存器中,用于控制测试的起始与结束。测试启动指令分为直接启动指令和预启动指令。
写脉宽计数、写周期计数、读脉宽计数、读周期计数,存储到控制时序生成模块的寄存器中,用于控制读写时序的速度。
块容量,存储到地址生成模块的寄存器中。
读出比较时机,存储到测试数据对比模块的寄存器中,用于确定进行数据比较的时机。
本发明还提供一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,处理器执行计算机程序时实现一种NAND闪存的辐射效应实时测试方法的步骤。
如图2所示,为了进一步说明本发明的技术方案,本实施例将进一步举例说明本发明一种NAND闪存的辐射效应实时测试方法;主控模块可通过带有网络通信接口的CPU或者MCU类器件实现,如ARM、DSP、单片机等。指令执行模块、指令缓存双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM、无效块地址缓存双端口RAM、第一测试结果缓存FIFO、第二测试结果缓存FIFO、地址生成模块、控制时序生成模块、外部触发模块、IO数据输出模块、测试数据对比模块均可通过FPGA实现。本发明还可以通过一些可编程的SOC类器件实现,如Zynq7000系列的SOC,该SOC既具备ARM核,也具备可编程逻辑阵列。
本实施例中,表1为一种可行执行指令的各字段位域分布,表2为各执行指令的一种可行的指令码。
表1执行指令各字段的位域分布
表2指令的指令码
指令 | 指令码 |
数据读出 | 0 |
数据写入 | 1 |
命令写入 | 2 |
地址写入 | 3 |
RB下降沿捕获 | 4 |
RB上升沿捕获 | 5 |
等待 | 6 |
新地址使能产生 | 7 |
新地址产生等待 | 8 |
测试停止 | E |
序列结束 | F |
本实施例中,被测NAND闪存每个块有4页,第2块首地址为000004h是无效块。测试***主频200MHz,计数周期5ns。
测试要求为:测量辐射导致的NAND闪存第1块、第2块、第3块的数据位翻转,第1到第3块的块地址为升序;预期数据为55h和AAh,写入和读出速度均为10个计数周期,写入和读出脉宽均为5个计数周期,并在第5个计数周期进行数据比对;块内页地址的读出顺序为第1页、第2页、第4页、第3页;直接启动测试,屏蔽测试异常;读出数据时,如果RB下降沿捕获和其RB上升沿捕获超时,则对被测NAND闪存执行复位操作;执行复位操作时,如果RB下降沿捕获和RB上升沿捕获超时,停止测试。
根据测试要求,由控制模块向主控模块发送的控制帧中包含的地址缓存双端口RAM数据,如表3所示;
表3地址缓存双端口RAM数据
RAM地址 | 数据 |
0 | 0h |
1 | 1h |
2 | 3h |
3 | 2h |
由控制模块向主控模块发送的控制帧中包含的数据缓存双端口RAM数据,如表4所示;
表4数据缓存双端口RAM数据
RAM地址 | 数据 |
0 | 55h |
1 | AAh |
由控制模块向主控模块发送的控制帧中包含的无效块地址缓存双端口RAM数据,如表5所示;
表5无效块地址缓存双端口RAM数据
RAM地址 | 数据 |
0 | 000004h |
由控制模块向主控模块发送的控制帧中包含的指令缓存双端口RAM数据,如表6所示;
表6指令缓存双端口RAM数据
由控制模块向主控模块发送的控制帧中包含的设置指令,如表7所示;
表7设置指令
本实施例中,控制模块向主控模块发送控制帧,主控模块将控制帧解包;再将控制帧中的数据相应地存储到指令缓存双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM和无效块地址缓存双端口RAM中;最后,将控制帧中的设置指令存储到指令执行模块、地址生成模块、控制时序生成模块、测试数据对比模块的寄存器中。
主控模块将解出的测试启动指令存储到指令执行模块的寄存器中,直接启动指令执行模块。
步骤1、指令执行模块启动后,从指令缓存双端口RAM的地址0读出新地址,产生等待指令。
指令执行模块开始检测地址生成模块发送的地址生成标识。
可执行地址生成,为000000h。
步骤2、指令执行模块从指令缓存双端口RAM的地址1读出命令写入指令。
指令执行模块启动控制时序生成模块和IO数据输出模块,控制时序生成模块和IO数据输出模块共同产生写指令时序,将指令00h写入被测NAND闪存。
步骤3、指令执行模块从指令缓存双端口RAM的地址2读出地址写入指令。
指令执行模块启动控制时序生成模块和IO数据输出模块,控制时序生成模块和IO数据输出模块共同产生写地址时序,将被测NAND闪存的低8位列地址数据(CA0)00h写入被测NAND闪存。
步骤4、指令执行模块从指令缓存双端口RAM的地址3读出地址写入指令。
指令执行模块启动控制时序生成模块和IO数据输出模块,控制时序生成模块和IO数据输出模块共同产生写地址时序,将被测NAND闪存的高8位列地址数据(CA1)00h写入被测NAND闪存。
步骤5、指令执行模块从指令缓存双端口RAM的地址4读出地址写入指令。
指令执行模块启动控制时序生成模块和IO数据输出模块,控制时序生成模块和IO数据输出模块共同产生写地址时序,将被测NAND闪存的低8位行地址数据(RA0)00h写入被测NAND闪存。
步骤6、指令执行模块从指令缓存双端口RAM的地址5读出地址写入指令。
指令执行模块启动控制时序生成模块和IO数据输出模块,控制时序生成模块和IO数据输出模块共同产生写地址时序,将被测NAND闪存的中间8位行地址数据(RA1)00h写入被测NAND闪存。
步骤7、指令执行模块从指令缓存双端口RAM的地址6读出地址写入指令。
指令执行模块启动控制时序生成模块和IO数据输出模块,控制时序生成模块和IO数据输出模块共同产生写地址时序,将被测NAND闪存的高8位行地址数据(RA2)00h写入被测NAND闪存。
步骤8、指令执行模块从指令缓存双端口RAM的地址7读出新地址使能产生指令。
指令执行模块读出地址缓存双端口RAM的地址1中数据,然后产生预期地址000001h发送给地址生成模块,并启动地址生成模块。
步骤9、指令执行模块从指令缓存双端口RAM的地址8读出命令写入指令。
指令执行模块启动控制时序生成模块和IO数据输出模块,控制时序生成模块和IO数据输出模块共同产生写指令时序,将指令30h写入被测NAND闪存。
步骤10、指令执行模块从指令缓存双端口RAM的地址9读出RB下降沿捕获指令。
指令执行模块检测被测NAND闪存的R/B管脚是否为低电平,并开始计数;
如果被测NAND闪存的R/B管脚在100ns内变为低电平,则指令执行模块结束指令执行,然后执行步骤11;
如果被测NAND闪存的R/B管脚在100ns内没有变为低电平,则指令执行模块结束指令执行,不再检测R/B管脚是否变为低电平,然后执行步骤17。
步骤11、指令执行模块从指令缓存双端口RAM的地址10读出等待指令。指令执行模块等待1μs。
步骤12、指令执行模块从指令缓存双端口RAM的地址11读出RB上升沿捕获指令。
指令执行模块检测被测NAND闪存的R/B管脚是否为高电平,并开始计时。
如果被测NAND闪存的R/B管脚在5ms内变为高电平,则指令执行模块结束指令执行,将计时结果写入第一测试结果缓存FIFO中,然后执行步骤13;
如果被测NAND闪存的R/B管脚在5ms内没有变为高电平,指令执行模块结束指令执行,不再检测R/B管脚是否变为高电平,将计时结果写入第一测试结果缓存FIFO中,然后执行步骤17。
步骤13、指令执行模块从指令缓存双端口RAM的地址12读出等待指令;指令执行模块等待1μs。
步骤14、指令执行模块从指令缓存双端口RAM的地址13读出数据读出指令。
指令执行模块读出数据缓存双端口RAM中的55h发送给测试数据比较模块,然后启动控制时序生成模块和测试数据对比模块,产生读数据时序。
测试数据对比模块在内部计数达到读出比较时机设置指令中缓存的数值后,将被测NAND闪存发送的数据与55h进行比较;
如果不同,则将被测NAND闪存发送的数据与写入地址第二测试结果缓存FIFO中;
如果相同,则不将被测NAND闪存发送的数据与写入地址第二测试结果缓存FIFO中。
步骤15、指令执行模块从指令缓存双端口RAM的地址14读出数据读出指令。
指令执行模块读出数据缓存双端口RAM中的AAh发送给测试数据比较模块,然后启动控制时序生成模块和测试数据对比模块,产生读数据时序。
测试数据对比模块在内部计数达到读出比较时机设置指令中缓存的数值后,将被测NAND闪存发送的测试数据与AAh进行比较;
如果不同,则将被测NAND闪存发送的数据与写入地址第二测试结果缓存FIFO中;
如果相同,则不将被测NAND闪存发送的数据与写入地址第二测试结果缓存FIFO中;
如果该读出指令执行次数未达到10次,则指令执行模块从指令缓存双端口RAM的地址13读出数据读出指令,执行步骤14。
如果该读出指令执行次数达到10次,则执行步骤16。
步骤16、指令执行模块从指令缓存双端口RAM的地址15读出序列结束指令。
由于当前执行测试的行地址为000000h,没有达到或超过结束地址00000Bh,指令执行模块将二次执行步骤1,执行从指令缓存双端口RAM地址0读出的新地址产生等待指令,针对行地址000001h进行测试。
相同的,指令执行模块将三次至第八次执行步骤1并顺序地针对行地址000003h、000002h、000008h、000009h、00000Bh、00000Ah执行测试。
行地址000004h、000005h、000006h、000007h属于无效块内的地址。在指令执行模块第四次执行步骤8,从指令缓存双端口RAM的地址7读出新地址使能产生指令后,指令执行模块读出地址缓存双端口RAM地址0数据,产生预期地址000004h发送给地址生成模块,并启动地址生成模块。地址生成模块检测到000004h属于无效块的地址,根据地址升序找到下一个可执行地址000008h。在指令执行模块第五次执行步骤1,从指令缓存双端口RAM地址0读出的新地址产生等待指令时,将行地址000008h作为本次执行测试的行地址。
指令执行模块完成针对行地址00000Ah的读出操作后,此时已达到结束地址,指令执行模块不再执行步骤1,测试结束。
步骤17、步骤10和步骤12中,如果R/B管脚在100ns内没有变为低电平,或者在5ms内没有变为高电平,指令执行模块从指令缓存双端口RAM的地址16读出命令写入指令。
指令执行模块启动控制时序生成模块和IO数据输出模块,控制时序生成模块和IO数据输出模块共同产生写指令时序,将指令FFh写入被测NAND闪存,对被测NAND闪存执行复位操作。
步骤18、指令执行模块从指令缓存双端口RAM的地址17读出RB下降沿捕获指令。
指令执行模块检测被测NAND闪存的R/B管脚是否为低电平,并开始计数。
如果被测NAND闪存的R/B管脚在100ns内变为低电平,则指令执行模块结束指令执行,然后执行步骤19。
如果被测NAND闪存的R/B管脚在100ns内没有变为低电平,则指令执行模块结束指令执行,不再检测R/B管脚是否变为低电平,然后执行步骤22。
步骤19、指令执行模块从指令缓存双端口RAM的地址18读出等待指令。指令执行模块等待1μs。
步骤20、指令执行模块从指令缓存双端口RAM的地址19读出RB上升沿捕获指令。
指令执行模块检测被测NAND闪存的R/B管脚是否为高电平,并开始计时。
如果被测NAND闪存的R/B管脚在5ms内变为高电平,则指令执行模块结束指令执行,将计时结果写入第一测试结果缓存FIFO中,然后执行步骤21。
如果被测NAND闪存的R/B管脚在5ms内没有变为高电平,指令执行模块结束指令执行,不再检测R/B管脚是否变为高电平,将计时结果写入第一测试结果缓存FIFO中,然后执行步骤22。
步骤21、指令执行模块从指令缓存双端口RAM的地址20读出序列结束指令。该步骤与步骤16类似,当前执行测试的行地址小于00000Ah时,指令执行模块将再次执行步骤1,执行从指令缓存双端口RAM地址0读出的新地址产生等待指令,针对下一行地址进行测试;当前执行测试的行地址等于00000Ah时,此时已达到结束地址,指令执行模块不再执行步骤1,测试结束。
步骤22、步骤18和步骤20中,如果R/B管脚在100ns内没有变为低电平,或者在5ms内没有变为高电平,指令执行模块从指令缓存双端口RAM的地址21读出测试停止指令,指令执行模块不再读取任何地址中存储的执行指令,测试结束。
主控模块读出第一测试结果缓存FIFO、第二测试结果缓存FIFO中的数据,并打包成数据帧后通过TCP/IP网络通信协议发送给控制模块。
主控模块用于读出指令执行模块的状态,并将其打包成状态帧后通过TCP/IP网络通信协议发送给控制模块。
控制模块接收到数据帧后进行存储。
控制模块接收到状态帧后,检测到指令执行模块停止执行后,可停止测试,也可以再次发送控制帧进行下一次测试。
以上所述仅为本发明的实施例,并非对本发明保护范围的限制,凡是利用本发明说明书以及附图内容所作的等效结构变换,或直接或间接运用在其他相关的技术领域,均包括在本发明的专利保护范围内。
Claims (10)
1.一种NAND闪存的辐射效应实时测试方法,其特征在于,包括以下步骤:
S1、控制模块向主控模块发送控制帧;
S2、主控模块将控制帧中的数据分别存储到指令缓存双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM及无效块地址缓存双端口RAM中;
S3、主控模块将控制帧中的设置指令存储到指令执行模块、地址生成模块、控制时序生成模块及测试数据对比模块的寄存器中,启动指令执行模块;
S4、指令执行模块从指令缓存双端口RAM中读出执行指令,根据执行指令监测被测NAND闪存的R/B管脚电平变化,并将R/B管脚的低电平保持时间写入第一测试结果缓存FIFO中;指令执行模块在当前执行指令完成后,读出下一执行指令并执行;
或者,指令执行模块根据执行指令启动控制时序生成模块、地址生成模块、IO数据输出模块以及测试数据对比模块,并分别向控制时序生成模块、地址生成模块、IO数据输出模块以及测试数据对比模块发送状态信号、预期地址、输出数据、预期数据及其地址;测试数据对比模块启动后,将测试数据写入第二测试结果缓存FIFO中;指令执行模块在当前执行指令完成后,读出下一执行指令并执行;
或者,停止测试;
S5、主控模块将第一测试结果缓存FIFO、第二测试结果缓存FIFO中的数据打包成数据帧;
主控模块将指令执行模块的状态打包成状态帧;
主控模块将打包的数据帧与状态帧上传给控制模块;
S6、控制模块将接收到S5中的数据帧存储;
S7、控制模块接收到S5中的状态帧,判断指令执行模块的状态是否为停止测试状态;
若是,停止测试并返回S1;
否则,继续接收状态帧,直到接收到的状态帧表明指令执行模块的状态是停止测试状态时,停止测试并返回S1。
2.根据权利要求1所述的一种NAND闪存的辐射效应实时测试方法,其特征在于,S3中,所述启动指令执行模块具体为:
如果设置指令中的测试启动指令为直接启动,则启动指令执行模块;
如果设置指令中的测试启动指令为预启动,则指令执行模块在接收到外部触发模块发送的触发状态后,启动指令执行模块。
3.根据权利要求2所述的一种NAND闪存的辐射效应实时测试方法,其特征在于,S4具体为:
S4.1若执行指令为数据读出指令
4.1.1)指令执行模块启动控制时序生成模块,产生NAND闪存的CLE输入端、ALE输入端、WE输入端及RE输入端的控制信号,以实现读数据时序;
4.1.2)指令执行模块从数据缓存双端口RAM读出预期数据,发送给测试数据比较模块,启动测试数据对比模块比较预期数据与测试数据;
4.1.3)产生下一执行指令的地址;
如果,时序生成模块产生读数据时序的数量没有达到指令执行模块中循环数字段中存储的数值,下一执行指令地址为当前执行指令的循环跳转地址字段中存储的地址;
否则,下一执行指令地址为当前执行指令的地址加1;
S4.2若执行指令为数据写入指令
4.2.1)指令执行模块启动控制时序生成模块,产生NAND闪存的CLE输入端、ALE输入端、WE输入端及RE输入端的控制信号,以实现写数据时序;
4.2.2)指令执行模块从数据缓存双端口RAM中读出数据,发送给IO数据输出模块,并启动IO数据输出模块向被测NAND闪存输出数据;
4.2.3)产生下一执行指令的地址;
S4.3如果执行指令为命令写入指令
4.3.1)指令执行模块启动控制时序生成模块,产生NAND闪存的CLE输入端、ALE输入端、WE输入端及RE输入端的控制信号,以实现写命令时序;
4.3.2)指令执行模块将执行指令中写入命令字段中存储的数据发送给IO数据输出模块,启动IO数据输出模块向被测NAND闪存输出命令数据;
4.3.3)产生下一执行指令的地址,下一执行指令的地址为当前执行指令的地址加1;
S4.4若果执行指令为地址写入指令
4.4.1)指令执行模块根据执行指令中地址类型字段存储的数值、地址缓存双端口RAM读回的地址数据、执行指令中起始列地址字段存储的列地址数据以及地址生成模块发送的可执行行地址数据生成发送给NAND闪存的地址;
4.4.2)指令执行模块启动控制时序生成模块,产生NAND闪存的CLE输入端、ALE输入端、WE输入端及RE输入端的控制信号,以实现写地址时序;
4.4.3)指令执行模块将地址数据发送给IO数据输出模块,启动IO数据输出模块向被测NAND闪存输出命令数据;
4.4.4)产生下一执行指令的地址,下一执行指令的地址为当前执行指令的地址加1;
S4.5若执行指令为RB下降沿捕获指令
4.5.1)指令执行模块开始计数,并检测被测NAND闪存的R/B管脚是否为低电平;
4.5.2)如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前变为低电平,则指令执行模块不对第一测试结果缓存FIFO执行操作;
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前没有变为低电平,则指令执行模块将该结果写入第一测试结果缓存FIFO中;
4.5.3)产生下一执行指令的地址;
S4.6若执行指令为RB上升沿捕获指令
4.6.1)指令执行模块开始计数,并检测被测NAND闪存的R/B管脚是否为高电平;
4.6.2)如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前变为高电平,指令执行完成,下一执行指令的地址为当前执行指令的地址加1;
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前没有变为高电平,指令执行完成,不再检测R/B管脚是否会变为高电平,下一执行指令的地址为当前执行指令超时跳转地址字段中存储的地址;
4.6.3)产生下一执行指令的地址
当被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值时或以后变为高电平,指令执行模块将该结果写入第一测试结果缓存FIFO中;
当被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值时或以后没有变为高电平,指令执行模块将该结果不写入第一测试结果缓存FIFO中;
S4.7若执行指令为等待指令
4.7.1)指令执行模块开始计数,计数达到等待时间字段中存储的数值时停止计数,指令执行完成;
4.7.2)产生下一执行指令的地址,下一执行指令的地址为当前执行指令的地址加1;
S4.8若执行指令为新地址使能产生指令
4.8.1)指令执行模块将预期地址发送给地址生成模块,启动地址生成模块,指令执行完成;
4.8.2)产生下一执行指令的地址,下一执行指令的地址为当前执行指令的地址加1;
S4.9若执行指令为等待新地址产生指令:
4.9.1)指令执行模块判断地址生成模块生成可执行地址后,指令执行完成;
4.9.2)产生下一执行指令的地址,下一执行指令的地址为当前执行指令的地址加1;
S4.10若执行指令为测试停止指令
指令执行模块停止读出指令,直到下一次启动时从0地址读出一条指令并执行;
S4.11若执行指令为序列结束指令,若当前执行测试的行地址达到结束地址时,达到测试停止条件,指令执行模块停止读出指令,直到下一次启动时从0地址读出一条指令并执行;
否则,从0地址读出指令并执行。
4.根据权利要求3所述的一种NAND闪存的辐射效应实时测试方法,其特征在于,步骤4.1.2)具体为:
如果预期数据与测试数据不同,则测试数据对比模块将测试数据写入第二测试结果缓存FIFO中;
如果预期数据与测试数据相同,则测试数据对比模块不用将测试数据写入第二测试结果缓存FIFO中。
5.根据权利要求4所述的一种NAND闪存的辐射效应实时测试方法,其特征在于,步骤4.2.3)具体为:
如果,写数据时序的数量没有达到执行指令中循环数字段中存储的数值,下一执行指令的地址为当前执行指令的循环跳转地址字段中存储的地址;
否则,下一执行指令的地址为当前执行指令的地址加1。
6.根据权利要求5所述的一种NAND闪存的辐射效应实时测试方法,其特征在于,步骤4.5.3)具体为:
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前变为低电平,指令执行完成,下一执行指令的地址为当前执行指令的地址加1;
如果被测NAND闪存的R/B管脚在计时达到超时时间字段中存储的数值前没有变为低电平,指令执行完成,不再检测R/B管脚是否会变为低电平,下一执行指令的地址为当前执行指令的超时跳转地址字段中存储的地址。
7.一种NAND闪存的辐射效应实时测试***,其特征在于:包括控制模块、主控模块、双端口RAM、指令执行模块、地址生成模块、控制时序生成模块、外部触发模块、IO数据输出模块、测试数据对比模块、第一测试结果缓存FIFO以及第二测试结果缓存FIFO;
所述双端口RAM包括指令存储双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM及无效块地址缓存双端口RAM;
所述控制模块与主控模块相互通讯;
所述主控模块分别与控制时序生成模块、指令存储双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM、无效块地址缓存双端口RAM、指令执行模块、地址生成模块、第一测试结果缓存FIFO、第二测试结果缓存FIFO以及测试数据对比模块相互通讯;
所述第一测试结果缓存FIFO、指令存储双端口RAM、地址缓存双端口RAM、数据缓存双端口RAM及地址生成模块分别与指令执行模块相互通讯;
所述无效块地址缓存双端口RAM与地址生成模块相互通讯;
所述指令执行模块分别与控制时序生成模块、测试数据对比模块相互通讯;
所述控制时序生成模块的输出端分别用于与被测NAND闪存输入端连接;
所述指令执行模块的输入端与被测NAND闪存的R/B管脚的输出端连接;
所述指令执行模块的触发输入端与外部触发模块的输出端连接,指令执行模块的数据输出端与IO数据输出模块连接;
所述IO数据输出模块的数据输出端连接被测NAND闪存的IO输入端;
所述测试数据对比模块的数据输入端与被测NAND闪存的IO输出端连接,其输出端与第二测试结果缓存FIFO的输入端连接。
8.根据权利要求7所述的一种NAND闪存的辐射效应实时测试***,其特征在于:所述控制模块通过TCP/IP网络通信协议与主控模块通讯。
9.根据权利要求7或8所述的一种NAND闪存的辐射效应实时测试***,其特征在于:所述控制时序生成模块的输出端分别与被测NAND闪存的CLE输入端、ALE输入端、WE输入端、RE输入端连接;
所述IO数据输出模块的数据输出端通过第一缓冲器连接被测NAND闪存的IO输入端;
所述测试数据对比模块的数据输入端通过第二缓冲器与被测NAND闪存的IO输出端连接。
10.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于:所述处理器执行所述计算机程序时实现如权利要求1至6任一所述NAND闪存的辐射效应实时测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210433274.4A CN114882935A (zh) | 2022-04-22 | 2022-04-22 | 一种nand闪存的辐射效应实时测试方法、***及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210433274.4A CN114882935A (zh) | 2022-04-22 | 2022-04-22 | 一种nand闪存的辐射效应实时测试方法、***及终端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114882935A true CN114882935A (zh) | 2022-08-09 |
Family
ID=82672283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210433274.4A Pending CN114882935A (zh) | 2022-04-22 | 2022-04-22 | 一种nand闪存的辐射效应实时测试方法、***及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114882935A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1367496A2 (en) * | 2002-05-31 | 2003-12-03 | Samsung Electronics Co., Ltd. | Interface device |
CN101221809A (zh) * | 2006-12-29 | 2008-07-16 | 三星电子株式会社 | 具有命令/地址管脚的与非闪存以及包括其的闪存*** |
CN102122271A (zh) * | 2011-03-01 | 2011-07-13 | 株洲南车时代电气股份有限公司 | 一种nand闪存控制器及其控制方法 |
CN102332311A (zh) * | 2011-10-18 | 2012-01-25 | 中国航天科技集团公司第五研究院第五一〇研究所 | 一种基于fpga的nand flash器件单粒子效应测试方法 |
RU2454739C1 (ru) * | 2011-01-12 | 2012-06-27 | Российская Федерация, от имени которой выступает Министерство обороны Российской Федерации | Способ программирования имс flash-памяти типа nand и устройство для его реализации |
CN112115006A (zh) * | 2020-08-16 | 2020-12-22 | 西安电子科技大学 | Dsp和fpga的空间辐射效应测试装置及测试方法 |
-
2022
- 2022-04-22 CN CN202210433274.4A patent/CN114882935A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1367496A2 (en) * | 2002-05-31 | 2003-12-03 | Samsung Electronics Co., Ltd. | Interface device |
CN101221809A (zh) * | 2006-12-29 | 2008-07-16 | 三星电子株式会社 | 具有命令/地址管脚的与非闪存以及包括其的闪存*** |
RU2454739C1 (ru) * | 2011-01-12 | 2012-06-27 | Российская Федерация, от имени которой выступает Министерство обороны Российской Федерации | Способ программирования имс flash-памяти типа nand и устройство для его реализации |
CN102122271A (zh) * | 2011-03-01 | 2011-07-13 | 株洲南车时代电气股份有限公司 | 一种nand闪存控制器及其控制方法 |
CN102332311A (zh) * | 2011-10-18 | 2012-01-25 | 中国航天科技集团公司第五研究院第五一〇研究所 | 一种基于fpga的nand flash器件单粒子效应测试方法 |
CN112115006A (zh) * | 2020-08-16 | 2020-12-22 | 西安电子科技大学 | Dsp和fpga的空间辐射效应测试装置及测试方法 |
Non-Patent Citations (1)
Title |
---|
张娟娟;蒲南江;: "基于闪存阵列的缓存容量确定方法", 电子测试, no. 08, 6 August 2011 (2011-08-06) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI222076B (en) | Memory testing method and memory testing apparatus | |
US7073100B2 (en) | Method for testing embedded DRAM arrays | |
US6981188B2 (en) | Non-volatile memory device with self test | |
US6504773B2 (en) | Memory testing method and memory testing apparatus | |
KR20140112349A (ko) | 비휘발성 메모리의 리텐션 로직 | |
US9564245B2 (en) | Integrated circuit defect detection and repair | |
US8250418B2 (en) | Test mode for parallel load of address dependent data to enable loading of desired data backgrounds | |
US20060020764A1 (en) | Information processing apparatus including non-volatile memory device, non-volatile memory device and methods thereof | |
US20140164856A1 (en) | pBIST ENGINE WITH REDUCED SRAM TESTING BUS WIDTH | |
US5751944A (en) | Non-volatile memory system having automatic cycling test function | |
KR100684876B1 (ko) | 독출 시간을 단축시킬 수 있는 플래시 메모리 장치 및 방법 | |
US20030070121A1 (en) | Semiconductor test apparatus and method | |
CN114882935A (zh) | 一种nand闪存的辐射效应实时测试方法、***及终端设备 | |
JP2006065961A (ja) | 不揮発性メモリの試験方法 | |
JP4366001B2 (ja) | 半導体メモリ試験方法・半導体メモリ試験装置 | |
US5579270A (en) | Flash EEPROM with auto-function for automatically writing or erasing data | |
US7028236B2 (en) | Semiconductor memory testing device | |
US8930783B2 (en) | pBIST read only memory image compression | |
CN114627958A (zh) | 一种存储设备的测试方法、装置、电子设备及可读介质 | |
US9021320B2 (en) | pBIST architecture with multiple asynchronous sub chips operating in differing voltage domains | |
JP4185642B2 (ja) | 半導体メモリ試験装置 | |
US20230314513A1 (en) | In-circuit emulator device | |
TWI783898B (zh) | 測試電路與於記憶體傾印操作中讀取記憶體裝置之資料之方法 | |
CN116312720B (zh) | 一种嵌入式eeprom的可测性设计方法、***及终端 | |
JP3777047B2 (ja) | フラッシュメモリ装置の消去方法 |
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 |