CN113436671B - Spi nor flash测试平台、测试方法、测试装置和电子设备 - Google Patents
Spi nor flash测试平台、测试方法、测试装置和电子设备 Download PDFInfo
- Publication number
- CN113436671B CN113436671B CN202110736016.9A CN202110736016A CN113436671B CN 113436671 B CN113436671 B CN 113436671B CN 202110736016 A CN202110736016 A CN 202110736016A CN 113436671 B CN113436671 B CN 113436671B
- Authority
- CN
- China
- Prior art keywords
- flash chip
- chip
- flash
- tested
- state information
- 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
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/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
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Read Only Memory (AREA)
Abstract
本发明提供了一种SPI NOR FLASH测试平台、测试方法、测试装置和电子设备,通过SPI总线和片选信号线把同一组的多个被测FLASH芯片连接在同一个MCU芯片上,每组被测FLASH芯片集合由一个MCU芯片进行测试,在P/E cycling测试的过程中,当一个被测FLASH芯片正在擦写时,需要等待较长时间,此时MCU芯片可访问另一个被测FLASH芯片,从而避免测试时间过长,而且与现有技术中的一拖一方式相比,需要的MCU芯片少得多,可降低设备成本和结构复杂程度,有利于提高系统稳定性并减少设备的搭建耗时。
Description
技术领域
本发明涉及半导体存储设备的测试技术领域,尤其涉及一种SPI NOR FLASH测试平台、测试方法、测试装置和电子设备。
背景技术
SPI NOR FLASH(串行非易失闪存)一般需要进行P/E cycling测试(擦写循环测试),在进行P/E cycling测试时需要对大量的FLASH芯片进行测试(通常需要77个FLASH芯片),而一般的SPI NOR FLASH测试平台是采用一拖一方式测试FLASH芯片的,即一个MCU芯片测试一个FLASH芯片。从而,整个SPI NOR FLASH测试平台需要配备大量的MCU芯片,一方面,设备配置成本高,另一方面,由于每个MCU芯片都要通过UART(异步收发传输器)连接上位机以存储测试日志,同一台上位机需要连接大量串口线,导致系统结构复杂、搭建耗时多且系统不稳定。
发明内容
鉴于上述现有技术的不足之处,本申请实施例的目的在于提供一种SPI NORFLASH测试平台、测试方法、测试装置和电子设备,可降低设备成本和结构复杂程度,有利于提高系统稳定性。
第一方面,本申请实施例提供一种SPI NOR FLASH测试平台,包括上位机,多个MCU芯片和多组被测FLASH芯片集合;所述上位机与所述MCU芯片电性连接;每组被测FLASH芯片集合包括多个被测FLASH芯片,同一组的多个被测FLASH芯片通过同一根SPI总线与一个MCU芯片的IO接口连接,且同一组的多个被测FLASH芯片的片选端各自通过片选信号线与对应的MCU芯片的GPIO接口连接;不同组被测FLASH芯片集合连接不同的MCU芯片。
本申请实施例的SPI NOR FLASH测试平台,通过SPI总线和片选信号线把同一组的多个被测FLASH芯片连接在同一个MCU芯片上,每组被测FLASH芯片集合由一个MCU芯片进行测试,由于在P/E cycling测试的过程中,当一个被测FLASH芯片正在擦写时,需要等待较长时间,此时MCU芯片可访问另一个被测FLASH芯片,从而避免测试时间过长,而且与现有技术中的一拖一方式相比,需要的MCU芯片少得多,可降低设备成本和结构复杂程度,有利于提高系统稳定性并减少设备的搭建耗时。
优选地,每组被测FLASH芯片集合包括6-12个被测FLASH芯片。
优选地,所述MCU芯片设置有7个,每组被测FLASH芯片集合包括11个被测FLASH芯片。
优选地,每根所述片选信号线上连接有一个发光二极管。
第二方面,本申请实施例提供一种SPI NOR FLASH测试方法,应用于所述的SPINOR FLASH测试平台的MCU芯片,包括循环执行以下步骤直到所有与所述MCU芯片连接的被测FLASH芯片的擦写次数达到预设的擦写次数阈值,其中各所述被测FLASH芯片的擦写次数的初始值为0,且初始的执行状态信息为空闲状态:
A1.检测目标FLASH芯片的是否处于忙碌状态;
A2.若所述目标FLASH芯片处于忙碌状态,则执行步骤A4;
A3.若所述目标FLASH芯片不是处于忙碌状态,则查询所述目标FLASH芯片的执行状态信息,并执行:
若查询到执行状态信息为空闲状态,则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态,并执行步骤A4;
若查询到执行状态信息为擦除状态,则向所述目标FLASH芯片发送查空指令,使所述目标FLASH芯片执行查空操作,并把所述执行状态信息更新为查空状态,并执行步骤A4;
若查询到执行状态信息为查空状态,则向所述目标FLASH芯片发送编程指令,使所述目标FLASH芯片执行编程操作,并把所述执行状态信息更新为编程状态,并执行步骤A4;
若查询到执行状态信息为编程状态,则向所述目标FLASH芯片发送数据校验指令,使所述目标FLASH芯片执行数据校验操作,并把所述执行状态信息更新为数据校验状态,并执行步骤A4;
若查询到执行状态信息为数据校验状态,则目标FLASH芯片的擦写次数加1,若所述擦写次数没达到则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态;并执行步骤A4;
A4.把下一个未完成测试的FLASH芯片设为目标FLASH芯片;所述未完成测试的FLASH芯片是指擦写次数小于预设的擦写次数阈值的被测FLASH芯片。
优选地,步骤A1包括:
查询目标FLASH芯片的状态寄存器的忙碌位是否为0;
若是,则判定所述目标FLASH芯片的不是处于忙碌状态;否则判定所述目标FLASH芯片处于忙碌状态。
优选地,步骤A3中,查询所述目标FLASH芯片的执行状态信息的时候:
读取所述目标FLASH芯片的ID信息;
根据所述ID信息查询对应的状态记录表,得到所述目标FLASH芯片的执行状态信息;所述状态记录表中记录的初始的执行状态信息为空闲状态;
步骤A3中,在更新所述目标FLASH芯片的执行状态信息的时候:
更新对应的状态记录表中的执行状态信息。
第三方面,本申请实施例提供一种SPI NOR FLASH测试装置,基于权所述的SPINOR FLASH测试平台的MCU芯片,包括:
检测模块,用于检测目标FLASH芯片的是否处于忙碌状态;
第一执行模块,用于在所述目标FLASH芯片处于忙碌状态的时候,令设置模块执行其功能步骤;
第二执行模块,用于在所述目标FLASH芯片不是处于忙碌状态时候,查询所述目标FLASH芯片的执行状态信息,并执行:
若查询到执行状态信息为空闲状态,则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态,并令设置模块执行其功能步骤;
若查询到执行状态信息为擦除状态,则向所述目标FLASH芯片发送查空指令,使所述目标FLASH芯片执行查空操作,并把所述执行状态信息更新为查空状态,并令设置模块执行其功能步骤;
若查询到执行状态信息为查空状态,则向所述目标FLASH芯片发送编程指令,使所述目标FLASH芯片执行编程操作,并把所述执行状态信息更新为编程状态,并令设置模块执行其功能步骤;
若查询到执行状态信息为编程状态,则向所述目标FLASH芯片发送数据校验指令,使所述目标FLASH芯片执行数据校验操作,并把所述执行状态信息更新为数据校验状态,并令设置模块执行其功能步骤;
若查询到执行状态信息为数据校验状态,则目标FLASH芯片的擦写次数加1,若所述擦写次数没达到则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态;并令设置模块执行其功能步骤;
设置模块,用于把下一个未完成测试的FLASH芯片设为目标FLASH芯片;所述未完成测试的FLASH芯片是指擦写次数小于预设的擦写次数阈值的被测FLASH芯片;
所述检测模块、第一执行模块、第二执行模块和设置模块循环执行对应的功能步骤直到所有与所述MCU芯片连接的被测FLASH芯片的擦写次数达到预设的擦写次数阈值,其中各所述被测FLASH芯片的擦写次数的初始值为0,且初始的执行状态信息为空闲状态。
优选地,检测模块在检测目标FLASH芯片的是否处于忙碌状态的时候:
查询目标FLASH芯片的状态寄存器的忙碌位是否为0;
若是,则判定所述目标FLASH芯片的不是处于忙碌状态;否则判定所述目标FLASH芯片处于忙碌状态。
第四方面,本申请实施例提供一种电子设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如所述的SPI NOR FLASH测试方法的步骤。
有益效果:
本申请实施例提供的SPI NOR FLASH测试平台、测试方法、测试装置和电子设备,通过SPI总线和片选信号线把同一组的多个被测FLASH芯片连接在同一个MCU芯片上,每组被测FLASH芯片集合由一个MCU芯片进行测试,在P/E cycling测试的过程中,当一个被测FLASH芯片正在擦写时,需要等待较长时间,此时MCU芯片可访问另一个被测FLASH芯片,从而避免测试时间过长,而且与现有技术中的一拖一方式相比,需要的MCU芯片少得多,可降低设备成本和结构复杂程度,有利于提高系统稳定性并减少设备的搭建耗时。
附图说明
图1为本申请实施例提供的SPI NOR FLASH测试平台的结构示意图。
图2为本申请实施例提供的SPI NOR FLASH测试方法的流程图。
图3为本申请实施例提供的SPI NOR FLASH测试装置的结构示意图。
图4为本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
下文的公开提供的实施方式或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本发明。此外,本发明可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。此外,本发明提供了的各种特定的工艺和材料的例子,但是本领域普通技术佩戴人员可以意识到其他工艺的应用和/或其他材料的使用。
请参阅图1,本申请实施例提供的一种SPI NOR FLASH测试平台,包括上位机1,多个MCU芯片2和多组被测FLASH芯片集合30;所述上位机1与所述MCU芯片2电性连接;每组被测FLASH芯片集合30包括多个被测FLASH芯片3,同一组的多个被测FLASH芯片3通过同一根SPI总线4与一个MCU芯片2的IO接口连接,且同一组的多个被测FLASH芯片3的片选端各自通过片选信号线5与对应的MCU芯片2的GPIO接口连接;不同组被测FLASH芯片集合30连接不同的MCU芯片2。
该SPI NOR FLASH测试平台,通过SPI总线4和片选信号线5把同一组的多个被测FLASH芯片3连接在同一个MCU芯片2上,每组被测FLASH芯片集合30由一个MCU芯片2进行测试,由于在P/E cycling测试的过程中,当一个被测FLASH芯片3正在擦写时,需要等待较长时间,此时MCU芯片2可访问另一个被测FLASH芯片3,从而避免测试时间过长,而且与现有技术中的一拖一方式相比,需要的MCU芯片2少得多,可降低设备成本和结构复杂程度,有利于提高系统稳定性并减少设备的搭建耗时。
其中,MCU芯片2的型号可根据被测FLASH芯片3的具体结构进行选择,一般的FLASH芯片3包括1个、2个或4个用于与MCU芯片2的IO接口连接的通信接口(对应的SPI总线4为单线式、双线式或四线式总线),可根据该通信接口的数量来选取MCU芯片2的型号,保证的IO接口数量不少于该通信接口的数量。在一些优选实施方式中,MCU芯片2具有四个IO接口,从而可兼容大部分被测FLASH芯片3的测试要求,适用性强。
优选地,每组被测FLASH芯片集合30包括6-12个被测FLASH芯片3。从而一个MCU芯片2负责6-12个被测FLASH芯片3的P/E cycling测试,避免由于同一组的被测FLASH芯片3过多而导致MCU芯片2的运算负荷过高,并保证测试效率,同时,避免同一组的被测FLASH芯片3过少而导致需要MCU芯片2数量过多,并充分发挥MCU芯片2的性能。虽然图1中画出的是每一组具有6个被测FLASH芯片3的情况,但不限于此。
在一些实施方式中,所述MCU芯片2设置有7个,每组被测FLASH芯片集合30包括11个被测FLASH芯片3。由于一般的P/E cycling测试需要对77个FLASH芯片进行测试,因此,该SPI NOR FLASH测试平台能够同时对77个FLASH芯片进行测试,既满足测试要求,且MCU芯片2的数量较少。
在一些优选实施方式中,见图1,每根所述片选信号线5上连接有一个发光二极管6。从而当MCU芯片2选定访问对象时,对应的发光二极管6会发光,从而使测试人员能够直观地了解当前的访问对象是哪个,进而有利于测试人员判断测试过程是否顺利。
请参阅图2,本申请实施例提供一种SPI NOR FLASH测试(P/E cycling测试)方法,应用于前述的SPI NOR FLASH测试平台的MCU芯片,包括循环执行以下步骤直到所有与所述MCU芯片连接的被测FLASH芯片的擦写次数达到预设的擦写次数阈值,其中各所述被测FLASH芯片的擦写次数的初始值为0,且初始的执行状态信息为空闲状态:
A1.检测目标FLASH芯片的是否处于忙碌状态;
A2.若所述目标FLASH芯片处于忙碌状态,则执行步骤A4;
A3.若所述目标FLASH芯片不是处于忙碌状态,则查询所述目标FLASH芯片的执行状态信息,并执行:
若查询到执行状态信息为空闲状态,则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态,并执行步骤A4;
若查询到执行状态信息为擦除状态,则向所述目标FLASH芯片发送查空指令,使所述目标FLASH芯片执行查空操作(以检查擦除操作是否成功),并把所述执行状态信息更新为查空状态,并执行步骤A4;
若查询到执行状态信息为查空状态,则向所述目标FLASH芯片发送编程指令,使所述目标FLASH芯片执行编程操作,并把所述执行状态信息更新为编程状态,并执行步骤A4;
若查询到执行状态信息为编程状态,则向所述目标FLASH芯片发送数据校验指令,使所述目标FLASH芯片执行数据校验操作(以检查编程操作是否成功),并把所述执行状态信息更新为数据校验状态,并执行步骤A4;
若查询到执行状态信息为数据校验状态,则目标FLASH芯片的擦写次数加1,若所述擦写次数没达到则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态;并执行步骤A4;
A4.把下一个未完成测试的FLASH芯片设为目标FLASH芯片;所述未完成测试的FLASH芯片是指擦写次数小于预设的擦写次数阈值的被测FLASH芯片。
该SPI NOR FLASH测试方法,把P/E cycling测试中被测FLASH芯片的擦写过程分为多个有限状态,当一个被测FLASH芯片处其中一个状态下需要等待时,MCU芯片访问下一个被测FLASH芯片,从而提高SPI总线利用率,实现了同一组的多个被测FLASH芯片的并行测试,提高了测试效率,使整体测试时间与现有技术中一拖一方式的测试时间接近。从而,在降低设备成本和结构复杂程度的同时,能够保证测试时间与现有技术接近。
优选地,步骤A1包括:
查询目标FLASH芯片的状态寄存器的忙碌位是否为0;
若是,则判定所述目标FLASH芯片的不是处于忙碌状态;否则判定所述目标FLASH芯片处于忙碌状态。
在实际应用中,当FLASH芯片正在运行过程(即处于忙碌状态)的时候其状态寄存器的忙碌位为1,否则其状态寄存器的忙碌位为0,而且在FLASH芯片正在运行过程的时候,是无法访问其内部数据的,只能访问其状态寄存器,从而通过查询目标FLASH芯片的状态寄存器的忙碌位可知道目标FLASH芯片是否处于忙碌状态。
其中,在测试过程中的第一个目标FLASH芯片可以随机选取的被测FLASH芯片,也可以是预先指定的被测FLASH芯片,或者预先对各被测FLASH芯片进行排序,并以排序第一的被测FLASH芯片为第一个目标FLASH芯片。
优选地,步骤A3中,查询所述目标FLASH芯片的执行状态信息的时候:
读取所述目标FLASH芯片的ID信息;
根据所述ID信息查询对应的状态记录表,得到所述目标FLASH芯片的执行状态信息;所述状态记录表中记录的初始的执行状态信息为空闲状态;
步骤A3中,在更新所述目标FLASH芯片的执行状态信息的时候:
更新对应的状态记录表中的执行状态信息。
在实际应用中,MCU芯片会根据各被测FLASH芯片的ID信息建立并维护对应的状态记录表,该状态记录表用于记录被测FLASH芯片的最近的运行状态的状态信息(即执行状态信息),其中执行状态信息包括空闲状态、擦除状态、查空状态、编程状态、数据校验状态中的一种,在测试开始的时候,会把所有状态记录表的执行状态信息设置为空闲状态,每当被测FLASH芯片进入一种运行状态,则把执行状态信息更新为对应的状态,从而每当被测FLASH芯片不忙碌时MCU芯片查询其状态记录表,即可知道该被测FLASH芯片的上一个运行状态是那种状态,进而发送指令使该被测FLASH芯片进入下一个运行状态,保证了每个被测FLASH芯片的测试流程不出错。
参考图3,本申请实施例提供一种SPI NOR FLASH测试装置,基于权所述的SPI NORFLASH测试平台的MCU芯片,包括:
检测模块200,用于检测目标FLASH芯片的是否处于忙碌状态;
第一执行模块300,用于在所述目标FLASH芯片处于忙碌状态的时候,令设置模块500执行其功能步骤;
第二执行模块400,用于在所述目标FLASH芯片不是处于忙碌状态时候,查询所述目标FLASH芯片的执行状态信息,并执行:
若查询到执行状态信息为空闲状态,则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态,并令设置模块500执行其功能步骤;
若查询到执行状态信息为擦除状态,则向所述目标FLASH芯片发送查空指令,使所述目标FLASH芯片执行查空操作,并把所述执行状态信息更新为查空状态,并令设置模块500执行其功能步骤;
若查询到执行状态信息为查空状态,则向所述目标FLASH芯片发送编程指令,使所述目标FLASH芯片执行编程操作,并把所述执行状态信息更新为编程状态,并令设置模块500执行其功能步骤;
若查询到执行状态信息为编程状态,则向所述目标FLASH芯片发送数据校验指令,使所述目标FLASH芯片执行数据校验操作,并把所述执行状态信息更新为数据校验状态,并令设置模块500执行其功能步骤;
若查询到执行状态信息为数据校验状态,则目标FLASH芯片的擦写次数加1,若所述擦写次数没达到则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态;并令设置模块500执行其功能步骤;
设置模块500,用于把下一个未完成测试的FLASH芯片设为目标FLASH芯片;所述未完成测试的FLASH芯片是指擦写次数小于预设的擦写次数阈值的被测FLASH芯片;
所述检测模块200、第一执行模块300、第二执行模块400和设置模块500循环执行对应的功能步骤直到所有与所述MCU芯片连接的被测FLASH芯片的擦写次数达到预设的擦写次数阈值,其中各所述被测FLASH芯片的擦写次数的初始值为0,且初始的执行状态信息为空闲状态。
该SPI NOR FLASH测试装置,把P/E cycling测试中被测FLASH芯片的擦写过程分为多个有限状态,当一个被测FLASH芯片处其中一个状态下需要等待时,MCU芯片访问下一个被测FLASH芯片,从而提高SPI总线利用率,实现了同一组的多个被测FLASH芯片的并行测试,提高了测试效率,使整体测试时间与现有技术中一拖一方式的测试时间接近。从而,在降低设备成本和结构复杂程度的同时,能够保证测试时间与现有技术接近。
优选地,检测模块在检测目标FLASH芯片的是否处于忙碌状态的时候:
查询目标FLASH芯片的状态寄存器的忙碌位是否为0;
若是,则判定所述目标FLASH芯片的不是处于忙碌状态;否则判定所述目标FLASH芯片处于忙碌状态。
其中,在测试过程中的第一个目标FLASH芯片可以随机选取的被测FLASH芯片,也可以是预先指定的被测FLASH芯片,或者预先对各被测FLASH芯片进行排序,并以排序第一的被测FLASH芯片为第一个目标FLASH芯片。
优选地,第二执行模块400在查询所述目标FLASH芯片的执行状态信息的时候:
读取所述目标FLASH芯片的ID信息;
根据所述ID信息查询对应的状态记录表,得到所述目标FLASH芯片的执行状态信息;所述状态记录表中记录的初始的执行状态信息为空闲状态;
第二执行模块400在更新所述目标FLASH芯片的执行状态信息的时候:
更新对应的状态记录表中的执行状态信息。
在实际应用中,MCU芯片会根据各被测FLASH芯片的ID信息建立并维护对应的状态记录表,该状态记录表用于记录被测FLASH芯片的最近的运行状态的状态信息(即执行状态信息),其中执行状态信息包括空闲状态、擦除状态、查空状态、编程状态、数据校验状态中的一种,在测试开始的时候,会把所有状态记录表的执行状态信息设置为空闲状态,每当被测FLASH芯片进入一种运行状态,则把执行状态信息更新为对应的状态,从而每当被测FLASH芯片不忙碌时MCU芯片查询其状态记录表,即可知道该被测FLASH芯片的上一个运行状态是那种状态,进而发送指令使该被测FLASH芯片进入下一个运行状态,保证了每个被测FLASH芯片的测试流程不出错。
请参阅图4,本申请实施例还提供一种电子设备100,包括处理器101和存储器102,存储器102中存储有计算机程序,处理器101通过调用存储器102中存储的计算机程序,用于执行如上述的SPI NOR FLASH测试方法的步骤。
其中,处理器101与存储器102电性连接。处理器101是电子设备100的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或调用存储在存储器102内的计算机程序,以及调用存储在存储器102内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。
存储器102可用于存储计算机程序和数据。存储器102存储的计算机程序中包含有可在处理器中执行的指令。计算机程序可以组成各种功能模块。处理器101通过调用存储在存储器102的计算机程序,从而执行各种功能应用以及数据处理。
在本实施例中,电子设备100中的处理器101会按照如下的步骤,将一个或一个以上的计算机程序的进程对应的指令加载到存储器102中,并由处理器101来运行存储在存储器102中的计算机程序,从而实现各种功能:循环执行以下步骤直到所有与所述MCU芯片连接的被测FLASH芯片的擦写次数达到预设的擦写次数阈值,其中各所述被测FLASH芯片的擦写次数的初始值为0,且初始的执行状态信息为空闲状态:
A1.检测目标FLASH芯片的是否处于忙碌状态;
A2.若所述目标FLASH芯片处于忙碌状态,则执行步骤A4;
A3.若所述目标FLASH芯片不是处于忙碌状态,则查询所述目标FLASH芯片的执行状态信息,并执行:
若查询到执行状态信息为空闲状态,则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态,并执行步骤A4;
若查询到执行状态信息为擦除状态,则向所述目标FLASH芯片发送查空指令,使所述目标FLASH芯片执行查空操作(以检查擦除操作是否成功),并把所述执行状态信息更新为查空状态,并执行步骤A4;
若查询到执行状态信息为查空状态,则向所述目标FLASH芯片发送编程指令,使所述目标FLASH芯片执行编程操作,并把所述执行状态信息更新为编程状态,并执行步骤A4;
若查询到执行状态信息为编程状态,则向所述目标FLASH芯片发送数据校验指令,使所述目标FLASH芯片执行数据校验操作(以检查编程操作是否成功),并把所述执行状态信息更新为数据校验状态,并执行步骤A4;
若查询到执行状态信息为数据校验状态,则目标FLASH芯片的擦写次数加1,若所述擦写次数没达到则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态;并执行步骤A4;
A4.把下一个未完成测试的FLASH芯片设为目标FLASH芯片;所述未完成测试的FLASH芯片是指擦写次数小于预设的擦写次数阈值的被测FLASH芯片。
由上可知,该电子设备,把P/E cycling测试中被测FLASH芯片的擦写过程分为多个有限状态,当一个被测FLASH芯片处其中一个状态下需要等待时,MCU芯片访问下一个被测FLASH芯片,从而提高SPI总线利用率,实现了同一组的多个被测FLASH芯片的并行测试,提高了测试效率,使整体测试时间与现有技术中一拖一方式的测试时间接近。从而,在降低设备成本和结构复杂程度的同时,能够保证测试时间与现有技术接近。
综上所述,虽然本发明已以优选实施例揭露如上,但上述优选实施例并非用以限制本发明,本领域的普通技术佩戴人员,在不脱离本发明的精神和范围内,均可作各种更动与润饰,其方案与本发明实质上相同。
Claims (6)
1.一种SPINOR FLASH测试方法,其特征在于,应用于SPINOR FLASH测试平台的MCU芯片以对多个被测FLASH芯片进行P/E cycling测试,所述SPI NOR FLASH测试平台包括上位机,多个MCU芯片和多组被测FLASH芯片集合;所述上位机与所述MCU芯片电性连接;每组被测FLASH芯片集合包括多个被测FLASH芯片,同一组的多个被测FLASH芯片通过同一根SPI总线与一个MCU芯片的IO接口连接,且同一组的多个被测FLASH芯片的片选端各自通过片选信号线与对应的MCU芯片的GPIO接口连接;不同组被测FLASH芯片集合连接不同的MCU芯片;
所述SPINOR FLASH测试方法包括循环执行以下步骤直到所有与所述MCU芯片连接的被测FLASH芯片的擦写次数达到预设的擦写次数阈值,其中各所述被测FLASH芯片的擦写次数的初始值为0,且初始的执行状态信息为空闲状态:
A1.检测目标FLASH芯片的是否处于忙碌状态;
A2.若所述目标FLASH芯片处于忙碌状态,则执行步骤A4;
A3.若所述目标FLASH芯片不是处于忙碌状态,则查询所述目标FLASH芯片的执行状态信息,并执行:
若查询到执行状态信息为空闲状态,则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态,并执行步骤A4;
若查询到执行状态信息为擦除状态,则向所述目标FLASH芯片发送查空指令,使所述目标FLASH芯片执行查空操作,并把所述执行状态信息更新为查空状态,并执行步骤A4;
若查询到执行状态信息为查空状态,则向所述目标FLASH芯片发送编程指令,使所述目标FLASH芯片执行编程操作,并把所述执行状态信息更新为编程状态,并执行步骤A4;
若查询到执行状态信息为编程状态,则向所述目标FLASH芯片发送数据校验指令,使所述目标FLASH芯片执行数据校验操作,并把所述执行状态信息更新为数据校验状态,并执行步骤A4;
若查询到执行状态信息为数据校验状态,则目标FLASH芯片的擦写次数加1,若所述擦写次数没达到则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态;并执行步骤A4;
A4.把下一个未完成测试的FLASH芯片设为目标FLASH芯片;所述未完成测试的FLASH芯片是指擦写次数小于预设的擦写次数阈值的被测FLASH芯片。
2.根据权利要求1所述的SPINOR FLASH测试方法,其特征在于,步骤A1包括:
查询目标FLASH芯片的状态寄存器的忙碌位是否为0;
若是,则判定所述目标FLASH芯片的不是处于忙碌状态;否则判定所述目标FLASH芯片处于忙碌状态。
3.根据权利要求1所述的SPINOR FLASH测试方法,其特征在于,步骤A3中,查询所述目标FLASH芯片的执行状态信息的时候:
读取所述目标FLASH芯片的ID信息;
根据所述ID信息查询对应的状态记录表,得到所述目标FLASH芯片的执行状态信息;所述状态记录表中记录的初始的执行状态信息为空闲状态;
步骤A3中,在更新所述目标FLASH芯片的执行状态信息的时候:
更新对应的状态记录表中的执行状态信息。
4.一种SPINOR FLASH测试装置,其特征在于,基于SPINOR FLASH测试平台的MCU芯片以对多个被测FLASH芯片进行P/E cycling测试,所述SPINOR FLASH测试平台包括上位机,多个MCU芯片和多组被测FLASH芯片集合;所述上位机与所述MCU芯片电性连接;每组被测FLASH芯片集合包括多个被测FLASH芯片,同一组的多个被测FLASH芯片通过同一根SPI总线与一个MCU芯片的IO接口连接,且同一组的多个被测FLASH芯片的片选端各自通过片选信号线与对应的MCU芯片的GPIO接口连接;不同组被测FLASH芯片集合连接不同的MCU芯片,
所述SPINOR FLASH测试装置包括:
检测模块,用于检测目标FLASH芯片的是否处于忙碌状态;
第一执行模块,用于在所述目标FLASH芯片处于忙碌状态的时候,令设置模块执行其功能步骤;
第二执行模块,用于在所述目标FLASH芯片不是处于忙碌状态时候,查询所述目标FLASH芯片的执行状态信息,并执行:
若查询到执行状态信息为空闲状态,则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态,并令设置模块执行其功能步骤;
若查询到执行状态信息为擦除状态,则向所述目标FLASH芯片发送查空指令,使所述目标FLASH芯片执行查空操作,并把所述执行状态信息更新为查空状态,并令设置模块执行其功能步骤;
若查询到执行状态信息为查空状态,则向所述目标FLASH芯片发送编程指令,使所述目标FLASH芯片执行编程操作,并把所述执行状态信息更新为编程状态,并令设置模块执行其功能步骤;
若查询到执行状态信息为编程状态,则向所述目标FLASH芯片发送数据校验指令,使所述目标FLASH芯片执行数据校验操作,并把所述执行状态信息更新为数据校验状态,并令设置模块执行其功能步骤;
若查询到执行状态信息为数据校验状态,则目标FLASH芯片的擦写次数加1,若所述擦写次数没达到则向所述目标FLASH芯片发送擦除指令,使所述目标FLASH芯片执行擦除操作,并把所述执行状态信息更新为擦除状态;并令设置模块执行其功能步骤;
设置模块,用于把下一个未完成测试的FLASH芯片设为目标FLASH芯片;所述未完成测试的FLASH芯片是指擦写次数小于预设的擦写次数阈值的被测FLASH芯片;
所述检测模块、第一执行模块、第二执行模块和设置模块循环执行对应的功能步骤直到所有与所述MCU芯片连接的被测FLASH芯片的擦写次数达到预设的擦写次数阈值,其中各所述被测FLASH芯片的擦写次数的初始值为0,且初始的执行状态信息为空闲状态。
5.根据权利要求4所述的SPINOR FLASH测试装置,其特征在于,检测模块在检测目标FLASH芯片的是否处于忙碌状态的时候:
查询目标FLASH芯片的状态寄存器的忙碌位是否为0;
若是,则判定所述目标FLASH芯片的不是处于忙碌状态;否则判定所述目标FLASH芯片处于忙碌状态。
6.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如权利要求1-3任一项所述的SPINOR FLASH测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110736016.9A CN113436671B (zh) | 2021-06-30 | 2021-06-30 | Spi nor flash测试平台、测试方法、测试装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110736016.9A CN113436671B (zh) | 2021-06-30 | 2021-06-30 | Spi nor flash测试平台、测试方法、测试装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113436671A CN113436671A (zh) | 2021-09-24 |
CN113436671B true CN113436671B (zh) | 2023-09-08 |
Family
ID=77758195
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110736016.9A Active CN113436671B (zh) | 2021-06-30 | 2021-06-30 | Spi nor flash测试平台、测试方法、测试装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113436671B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104658613A (zh) * | 2014-12-30 | 2015-05-27 | 中国电子科技集团公司第四十七研究所 | Eeprom耐久性试验方法及装置 |
CN109164374A (zh) * | 2018-09-28 | 2019-01-08 | 长鑫存储技术有限公司 | 芯片与芯片测试系统 |
CN111159720A (zh) * | 2020-03-27 | 2020-05-15 | 深圳市芯天下技术有限公司 | 对rpmc进行测试的系统 |
CN111261218A (zh) * | 2020-04-27 | 2020-06-09 | 深圳市芯天下技术有限公司 | 多颗Norflash样品同时测试的方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6754866B1 (en) * | 2001-09-28 | 2004-06-22 | Inapac Technology, Inc. | Testing of integrated circuit devices |
US7321951B2 (en) * | 2003-11-17 | 2008-01-22 | Micron Technology, Inc. | Method for testing flash memory power loss recovery |
DE602004032455D1 (de) * | 2004-12-15 | 2011-06-09 | St Microelectronics Srl | Ein nichtflüchtiger Speicher mit Unterstützung von hochparallelem Test auf Waferebene |
US20070088905A1 (en) * | 2005-10-17 | 2007-04-19 | Simpletech, Inc. | System and method for purging a flash storage device |
TWI401691B (zh) * | 2009-03-20 | 2013-07-11 | Phison Electronics Corp | 具快閃記憶體測試功能的控制器及其儲存系統與測試方法 |
US8400854B2 (en) * | 2009-09-11 | 2013-03-19 | Sandisk Technologies Inc. | Identifying at-risk data in non-volatile storage |
CN104598402B (zh) * | 2014-12-30 | 2017-11-10 | 北京兆易创新科技股份有限公司 | 一种闪存控制器和闪存控制器的控制方法 |
KR20200087488A (ko) * | 2019-01-11 | 2020-07-21 | 에스케이하이닉스 주식회사 | 메모리 시스템에서의 비휘발성 메모리 블록 내 데이터를 삭제하는 방법 및 장치 |
-
2021
- 2021-06-30 CN CN202110736016.9A patent/CN113436671B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104658613A (zh) * | 2014-12-30 | 2015-05-27 | 中国电子科技集团公司第四十七研究所 | Eeprom耐久性试验方法及装置 |
CN109164374A (zh) * | 2018-09-28 | 2019-01-08 | 长鑫存储技术有限公司 | 芯片与芯片测试系统 |
CN111159720A (zh) * | 2020-03-27 | 2020-05-15 | 深圳市芯天下技术有限公司 | 对rpmc进行测试的系统 |
CN111261218A (zh) * | 2020-04-27 | 2020-06-09 | 深圳市芯天下技术有限公司 | 多颗Norflash样品同时测试的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113436671A (zh) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8904082B1 (en) | Operation based polling in a memory system | |
EP2474916B1 (en) | Device identifier selection | |
CN105930186B (zh) | 多cpu的软件加载方法及基于多cpu的软件加载装置 | |
CN112463243B (zh) | 基于边界扫描的在线级联加载固件系统及其方法 | |
US20130339638A1 (en) | Status polling of memory devices using an independent status bus | |
CN103473098A (zh) | 一种boot程序的启动方法和相关装置 | |
CN101419843A (zh) | 快闪存储器识别方法、识别装置、芯片控制器 | |
CN109885857A (zh) | 指令发射控制方法、指令执行验证方法、系统及存储介质 | |
CN109254839A (zh) | 确定任务触发时间的方法、构建任务定时器的方法及系统 | |
CN101872308A (zh) | 内存条控制系统及其控制方法 | |
CN111176665B (zh) | 大容量emmc镜像制作方法和装置 | |
CN106649137B (zh) | 一种Nand Flash坏块管理方法、装置及存储器 | |
CN113436671B (zh) | Spi nor flash测试平台、测试方法、测试装置和电子设备 | |
CN113157334B (zh) | Fpga多版本程序加载方法 | |
CN103793302A (zh) | 除错装置 | |
US4580212A (en) | Computer having correctable read only memory | |
US20070073893A1 (en) | Embedded protocol selection technique, related interface and computer program product | |
CN105718396A (zh) | 一种大数据主设备传输的i2c总线装置及其通讯方法 | |
CN110704234B (zh) | 一种存控数据传输错误注入方法 | |
CN100524245C (zh) | 监控输入/输出端口数据的方法 | |
CN111596199B (zh) | 一种测试芯片、集成电路测试方法及系统和检测设备 | |
CN112306536B (zh) | 一种主板及其芯片以及芯片升级方法 | |
CN104102512B (zh) | 基于外部中断的嵌入式平台io设备动态识别系统及该系统的io设备动态识别方法 | |
CN115858256A (zh) | 一种物联网设备的测试方法、装置及电子设备 | |
CN110618794B (zh) | 一种SSD固件访问NandFlash的方法和系统 |
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 |