用于减少半导体测试中错误日志所需空间的系统和方法技术领域
本发明涉及用于易失性和非易失性存储器的动态重构半导体测试器的设备、系统和方法,尤其涉及减少半导体测试中错误日志所需空间的系统和方法。
背景技术
计算机系统利用易失性和非易失性存储器来存储和检索数据。易失性存储器是有利的,因为相比于传统的硬盘驱动器(Hard Disk Drive,HDD)或固态驱动器(Solid StateDrive,SSD)设备,它们实现了更快的访问时间。通常,易失性存储器的访问时间比传统HDD或SSD设备快至少一个数量级。易失性存储器通常用于存储和检索较短持续时间的数据,因为它们在失去/移除电源时会丢失数据。
非易失性存储器的优势在于,即使在失去/移除电源后,它们仍能保留数据。因此,非易失性存储器通常用于存储和检索更长持续时间的数据,并允许其他计算机系统访问数据。
由于当前对更高访问速度的持续需求,大多数计算机系统利用易失性存储器临时存储数据,和非易失性存储器在更长的时间段(包括例如,秒、分钟、小时、天、月甚至年)内存储和检索数据的组合。
易失性和非易失性存储器通常由特定光刻工艺制造的半导体晶片的单个裸片(die)组装而成。通常,根据给定的电压(直流(direct current,DC)电平)和定时(交流(alternating current,AC)电平)参数规范,测试这些晶片及其裸片的适当的电气操作和功能。一旦在晶片内识别出一个或更多个已知良好的裸片,则这些裸片将通过封装工艺,从而可以使用单个易失性和非易失性存储器设备封装构建最终产品。
易失性和非易失性存储器都可以使用单个裸片,也可以使用双裸片、四裸片和八裸片以及更多进行封装和组装。在某些情况下,封装包括布置在子系统中的单片的或多个裸片。
制造商和供应商希望易失性和/或非易失性存储器在产品的使用寿命内都是可靠、稳健和可操作的。为了帮助确保这些质量,存储器部件通常要经过严格的测试。考虑到易失性和非易失性封装的复杂性,可以想象稳健性测试对于构建子系统和最终完全组装的系统的重要性。由于易失性和/或非易失性存储器封装内的一个或更多个裸片可能存在与制造相关的问题(例如由于封装的组装和制造期间的工艺和设置变化而导致的开路或短路),因此需要测试和检测开路信号(即,未连接到预期点)或短路(即,错误地连接到附近的电源、接地或其他信号),导致不期望的行为。由于机械应力、制造问题、热问题、电气问题或任何其他与制造相关的工艺变体,也可能存在与存储器模块印刷电路板(printed circuitboard,PCB)的不良连接。应用适当的直流电平测试可以检测这些错误的开路、短路和连接问题。
许多公司提供通用半导体测试设备,所述设备定制使用专用集成电路(application-specific integrated circuit,ASIC)或现场可编程门阵列(Fieldprogrammable Gate Arrays,FPGA)测试特定存储器的电压、频率和温度。
一般而言,此类通用测试器仅限于测试易失性存储器或非易失性存储器,但不能同时测试两者。通用测试人员也受到限制,因为他们只能使用自动测试模式生成(Automatic Test Pattern Generation,ATPG)模式根据现有行业标准实现固定的功能测试模式。总之,这些限制是有问题的,因为在运行终端用户软件的终端用户产品中没有测试过存储器。它们也不能复制终端用户产品中发生存储器故障的情况。因此,没有办法使用通用测试器来有效地预测终端用户的需求,或者修复许多终端用户的问题。
Volkerink的US 7,707,468描述了一种测试设备,其中存储器控制器呈星形布置,其中多个接口板中的每一个并行工作以测试多个存储器模块。该布置允许以不同的操作速率同时测试各种存储器模块,但该专利对关于易失性和/或非易失性存储器的同时测试保持沉默。此外,接口板不是智能的,因此它们不能根据从存储器控制器下载的多个不同测试模式运行。在存储器模块运行应用软件时,也没有教导、建议或动机来测试存储器模块。
因此,存在对半导体测试系统的需求(1)能够测试易失性和非易失性存储器设备,(2)在封装中具有一个或多个裸片,以及(3)在精密模拟终端用户的主机系统(即个人计算机(personal computer,PC)、笔记本电脑、服务器、云等)和软件的测试环境中。理想情况下,这样的系统将提供详细的AC和DC电平测试覆盖范围,以及在正常运行温度、高温和低温、高标称低电压电平和高标称低工作频率下的功能测试,以在主机系统的运行速度下充分应力、锻炼和执行真实世界的功能测试。这样的系统应该能够在能够执行一个或多个应用程序的本地操作系统(operating system,OS)上运行终端客户应用程序,以模拟目标主机应用程序环境。
发明内容
本文描述的本发明主题为易失性和非易失性存储器阵列提供了动态实时测试。在所设想的设备、系统和方法中,存储器测试器单元能够动态地重新配置(a)其输入和输出(Input and Output,I/O)引脚电压电平,以及(b)其工作频率,而无需任何系统重新启动要求,并且针对不同的易失性产品系列和/或不同的非易失性产品系列执行不同的实时测试模式。
预期的存储器测试器单元包括如下所述的几个部件。主控制器单元(MasterController Unit,MCU)管理能够测试易失性和非易失性存储器的一个或更多个从控制器单元(Slave Controller Unit,SCU)。每一个SCU能够在相同或不同类型存储器的一个或更多个完全隔离的存储器通道上执行一个或更多个不同的实时测试模式。通过利用这种模块化方法,MCU可以并行地编程一个或更多个SCU,以对一个或更多个存储器设备执行成组(gang)/并行测试,这提高了生产率和测试速度,并降低了总测试成本。单个操作员可以将适当的测试模式加载到一个MCU中,并且MCU可以将测试模式上传到一个或更多个SCU中,每一个SCU以所需的实时测试模式运行,并且每一个SCU存储器通道测试一个或更多个存储器设备,而不管被测试的单个存储器是否具有单片、双片、四片、八片或其他数量的裸片。
主控制单元
如本文所述,MCU可以通过传统的有线或无线方法连接到每一个SCU,以编程和初始化SCU单元。MCU可以有利地使用智能的、全自动的扫描器方法来自动加载适当的MCU程序以加载和执行每一个SCU。该自动化过程旨在进一步提高利用率,减少人为错误,并改善总体测试成本。
如上所述,每一个存储器测试器单元可以具有一个或更多个MCU,其中每一个MCU连接到一个或更多个SCU,并且每一个SCU可以寻址一个或更多个存储器通道。还可以设想,每一个存储器通道可以具有一个或更多个被测设备板(Device Under Test,DUT),其中DUT中的每一个具有一个或更多个插口以测试易失性存储器或者非易失性存储器的单个存储器封装。对于具有该领域专业知识的人来说,在了解本应用程序后,显而易见的是,可以使用单个扫描程序在任何给定时间测试数百个存储器封装。
在开始测试配置文件时,MCU可以将一个或更多个操作任务、程序、功能或算法应用于一个或更多个SCU,以检测具有开路和短路的易失性和/或非易失性存储器封装的一个或更多个裸片的不期望的制造、组装或封装缺陷。SCU以及模拟和数字逻辑可以使用各种设备来检测易失性和/或非易失性存储器封装中的这些异常和错误故障。在本发明的一个实施例中,SCU可以将电流注入并控制到每个被测设备插口(DUT)引脚及其相关联的易失性和/或非易失性存储器封装中,以测量来自每个易失性或非易失性存储器封装引脚的内部保护电路二极管的其对应读取电压,以查看是否存在从SCU输入/输出引脚到连接到DUT插口的易失性和/或非易失性存储器设备的电流连续性。如果设备具有正确的连接,则SCU将能够读取内部保护二极管上的正确电压降并检测正确的连接。否则,如果读数为零,则SCU知道该引脚开路且有故障。在另一个实施例中,SCU可以在具有易失性或非易失性存储器封装的DUT的一个引脚中注入电流,并读取相同易失性或非易失存储器封装的相邻引脚位置中的适当电压降,以检测对附近电源短路、接地或者其他相邻附近引脚信号,从而检测潜在短路和故障的易失性和非易失性存储器封装。
MCU可以连接到电源管理单元(Power Management Unit,PMU),该电源管理单元被配置为增加和减少SCU I/O引脚、DUT存储器插口的电压轨以及电路的其余部分的输入电压和电流。这种灵活性允许MCU能够使同一生态系统测试需要不同工作电压电平的不同存储器设备封装。(即,动态随机存取存储器(Dynamic Random Access Memory,DRAM)5.0V、同步动态随机存储器(Synchronous Dynamic Random Access Memory,SDRAM)3.3V、DDR(DoubleData Rate SDRAM)-I 2.5V、DDR-II 1.8V、DDR-III 1.5V、DDR-IV 1.2V等)
MCU也可以连接到时钟管理单元(Clock Management Unit,CMU),该时钟管理单元被配置为与SCU I/O引脚和DUT存储器插口的时钟引脚一起为SCU核心频率运行提供宽时钟间隔范围。该功能允许SCU支持需要不同工作频率的许多不同存储器技术。(即,SDRAM100Mhz、DDR-I 200Mhz、DDR-II 400Mhz、DDR-III 800Mhz和DDR-IV 1600Mhz)
MCU也可以被配置为对板载温度管理单元(Temperature Management Unit,TMU)室进行编程,以提供标称室温、低温和高温(即,-50℃至+155℃),来进一步对被测设备施加压力,从而更好地分选和分离测试中的良好的设备和边缘设备。
MCU也可以被配置为改变电压、频率和温度,以在应用客户存储器测试模式时执行固态三角测试(solid 3corner testing),并在类似目标客户系统等实时操作下运行DUT设备。
MCU也可以被配置作为现成的个人计算机(PC)或嵌入式PC来执行其任务。运行MCU的软件可以有利地与SCU一起执行控制电压、频率、温度的所有任务管理。在一些实施例中,MCU可以是由一个或更多个微控制器、微处理器或处理器单元组成的专用处理单元(processing unit,PU),具有或不具有运行一个或更多个固件(firmware,FW)以共同控制SCU、PMU、CMU和TMU单元的操作系统(OS)。
从控制单元
SCU可以以多种方式配置,包括SCU可以使用PC上运行的软件、ASIC上运行的硬件或FPGA上运行的动态硬件的任何组合的实施例。SCU可以被配置为具有固态模拟和数字逻辑、有限状态机(Finite State Machine,FSM)、一个或更多个处理单元(即微控制器、微处理器、处理器等)或这些方法中的一个或更多个的组合。
在一些实施例中,SCU 516、521被配置为运行一个或更多个FW,以管理每一个SCU的一个或更多个通道上的一个或更多个任务,这些SCU可以连接到一个或更多个DUT,并将一个或更多个系列的易失性和/或非易失性存储器测试模式应用到连接到每一个DUT单元的一个或更多个插口。这种配置共同地允许SCU在每个SCU通道上完全执行到每个连接的DUT的每个连接的插口的参数测试、功能测试。
在根据本发明主题的一个实施例中,SCU具有用于测试易失性存储器设备的DUT和插口。
在根据本发明主题的另一实施例中,SCU具有用于测试非易失性存储器设备的DUT和插口。
在根据本发明主题的又一实施例中,SCU具有用于测试易失性双列直插式存储器模块(Dual Inline Memory Modules,DIMM)设备的DUT和插口。
在根据本发明主题的再一实施例中,SCU具有用于测试非易失性模块设备的DUT和插口。
预期的SCU处理单元可以使用任何独立裸机(bare metal)固件(FW)、迷你操作系统、成熟的(full blow)嵌入式操作系统或实时操作系统(real-time operating system,RTOS)运行一个或更多个微控制器、微处理器或处理器。
通常,本文所述的发明主题旨在通过将一种配置加载到MCU中以动态编程和执行一个或许多个SCU、PMU、CMU和TMU,来解决动态编程高度灵活的测试器单元以测试半导体易失性和非易失性存储器的整个生态系统。所设想的设备、系统和方法创建了一种完全灵活的、动态的、可编程的半导体测试系统,以在不同电压、不同频率和不同热振荡下测试不同代的易失性和非易失性存储器以充分施压。定制的全功能测试可与实时应用程序一起运行,使用户能够检测整个可接受电压、温度和频率范围内的任何AC和DC电平参数,包括标准现成半导体测试器无法检测到的错误。
固件
在一些实施例中,SCU可以使用通过使用一个或更多个内部处理单元的一个或更多个固件(FW)代码,也可以作为独立固件、调度器、操作系统或RTOS来执行特定的操作任务、程序、功能或算法,以测试易失性和非易失性存储器封装。FW可以执行任何写入、读取、修改、读取-修改-写入或比较活动。
在SCU处理单元上运行的固件可以作为一个或更多个编程代码系列,也可以作为单个固件程序,或者作为模块化方法来完成,以提供预期功能的有效和高效执行。FW可以使用低级编程语言(如汇编语言或机器代码)或如C语言(即,C、C++、C#等)的更高抽象级别或面向对象编程(object-oriented programming,OOP)完成。
固件还可以实现一个或更多个操作任务(即内部内务任务,以确保连接到SCU的所有硬件块始终初始化、启动并正常工作,并不时检查每个硬件块的健康状态)、一个或多个过程(即,确保当前手头任务和/或排队任务的硬件块状态都是已知的,并收集任何相关信息来监测、微调和向MCU单元报告所有相关活动的内部操作过程)、一个或多个功能(即,执行性能评估、硬件和固件操作延迟、硬件功耗等的内部功能)以及一个或多个算法(即任何易失性和/或非易失性存储器测试、交流和/或直流电平测试、功能测试、客户交流和/或者直流测试、功能测试、客户交流和/或直流测试、客户功能测试、客户应用测试以提高性能、减少延迟和降低功耗),由一个或更多个微控制器、微处理器、或处理器使用具有一个或多个处理单元(PU)的独立裸机固件(FW)、小型操作系统、成熟(full blow)嵌入式操作系统或实时操作系统(RTOS)中的任何一个执行,也可以作为数字或模拟逻辑、ASIC、FPGA或FSM。
任何固件算法都可以转换为它的用于由一个或更多个处理单元(PU)运行的任何操作任务、过程、功能或算法的等效硬件算法,可以通过在纯数字逻辑、模拟逻辑、ASIC或FPGA中实现来进一步改进硬件算法,以提高速度、减少延迟和降低功耗。这样的硬件实现必然在速度、大小和功率方面更高效,这可以显著提高测试器单元的性能。
减小错误日志的大小
固件可以执行一系列普通存储器事务,以访问易失性或非易失性存储器封装,从而执行固件写入、固件读取、固件修改、固件读取-修改-写入或固件比较活动。在某些方法中,固件将从开始(即地址零“0”)或结束(即地址N-1)开始访问地址大小为“N”的易失性或非易失性存储器封装,以执行包括写入、读取、修改或比较的任何任务、程序、功能或算法。这可以通过访问每条数据线(即x4位、x8位、x16位、x32位、x64位、x72位、x-80位等)按顺序(即一个地址接一个地址)或随机(即地址可以跳到“0”到“N-1”的有效地址范围内的任何位置)完成
可通过将线性存储器地址转换为行和列地址来测试易失性或非易失性存储器封装的存储器。在存储器封装具有多个裸片的情况下,可以为每个裸片将线性存储器地址转换为行和列地址,以便主机可以方便地写入、读取、修改或比较任何大小的数据中的地址。
传统的测试设备和方法可以创建非常大的错误日志。一个普通的易失性存储器可以具有8Gbit的容量(即内部排列在行、列和内存库(bank)中的1Gbit x 8或10亿个8位位置)。大型实现具有多个封装,例如8Gbit(1Gbit x 8)配置的8个易失性封装,通常用于具有至少64位数据总线访问的现代处理器中。如果一个或更多个封装存在与制造工艺相关的潜在接触问题,则存储器测试必须测试给定存储器模块的所有行、所有列、所有内存库、所有封装以及所有内部裸片,以产生所有可能的错误。由于传统的测试仪以64位的方式访问存储器模块,因此普通测试器单元内所需的错误日志存储器必须具有保留最大行x最大列x最大内存库x裸片位置数量的能力,每个位置都能够保存64位数据。这转换为1Gig位置x 64位或1Gig x 8字节=8GB(8Gig字节)错误日志位置。
本发明可以大幅减少该错误日志,并通过几个因素改进与制造相关的错误检测日志。在一个方面,针对单个数据位(测试数据位)测试所有可能的行x列x内存库x裸片,针对所有已知的制造相关问题(例如开路、短路或不良接触)对错误数据进行后处理。然后在所有可能的地址位置上对下一个测试数据位数据重复该过程,直到每个测试数据位已经被测试为止。
一旦收集并后处理了所有行x所有列x所有存储库x所有裸片x每个数据位,就可以将错误的最终根本原因放入错误日志中。根据错误的类型,错误日志可能小到几百个字节。例如,遍历多个行、列、存储库和裸片的测试数据位的故障清楚地表明,该测试数据位要么为OPEN(即,意味着没有实际的预期测试数据写入所有相关地址,因此故障遍历所有地址),要么对电源、接地或附近的相邻信号短路(即,意思是对电源短路“卡在故障逻辑1处”,对地短路“卡在故障逻辑0处”)。因此,通过执行固件写入、固件读取、固件比较,测试任务、程序、功能或算法将检测到这些众所周知的问题,并将此测试数据位标记为故障。对于行、列、存储库和裸片地址位置的每个组合,不需要在错误日志文件中记录相同的重复错误。这将大大减少与制造相关的错误日志,与其他冗长的错误日志相比,节省存储空间、处理和功耗。
总的来说,这些功能将帮助用户降低操作成本、减少人为错误、提高产量、减少系统错误和提高系统性能。
附图说明
图1是现有技术易失性存储器设备测试器的示意图。
图2是现有技术非易失性存储器设备测试器的示意图。
图3是现有技术易失性存储器DIMM测试器的示意图。
图4是现有技术非易失性存储器模块测试器的示意图。
图5是根据本发明概念的设备的测试器架构示意图。
图6是本发明所设想的方法中的步骤示意图。
具体实施方式
图1是现有技术易失性存储器设备测试器100的示意图,其通常包括通过连接102连接到被测设备(DUT)103的易失性存储器测试器单元101。DUT 103包括被配置为与易失性存储器设备(未示出)通信的一个或更多个插口104#0–104#n。易失性存储器设备测试器100允许终端用户对分别插入到插口104#0–104#n的一个或更多个易失性存储器设备执行标准成品参数测试。
图2是现有技术非易失性存储器设备测试器200的示意图,其通常包括通过连接202连接到被测设备(DUT)203的易失性存储器测试器单元201。DUT 203包括被配置为与非易失性存储器设备(未示出)通信的一个或更多个插口204#0–204#n。非易失性存储器设备测试器200允许终端用户对分别插入到插口204#0–204#n的一个或更多个非易失存储器设备执行标准成品参数测试。
图3是现有技术易失性存储器DIMM测试器300的示意图,其通常包括通过连接302连接到被测设备(DUT)303的易失性存储器测试器单元301。DUT 303包括被配置为与易失性存储器DIMM模块(未示出)通信的一个或更多个DIMM插口304#0–304#n。易失性存储器DIMM测试器300允许终端用户对分别插入到DIMM插口304#0–304#n的一个或更多个易失性存储器DIMM模块执行标准成品参数测试。
图4是现有技术非易失性存储器模块测试器400的示意图,其通常包括通过连接402连接到被测设备(DUT)403的易失性存储器测试器单元401。DUT 403包括被配置为与非易失性存储器模块(未示出)通信的一个或更多个模块插口404#0–404#n。非易失性存储器模块测试器400允许终端用户对分别插入到模块插口404#0–404#n的一个或更多个非易失存储器设备执行标准成品参数测试。
图5是根据本发明概念的设备500的测试器架构的一个实施例的示意图。设备500能够测试易失性和非易失性存储器设备单元两者、DIMM和模块单元。设备500通常包括易失性和非易失性存储器测试模式的测试配置文件501、网络503、MCU 505、PMU 509、CMU 510和TMU 511、SCU 516、521以及多个DUT 519、520、522、523。
测试配置文件501通过通信线路502与网络503通信,并且网络503经由通信线路504与MCU 505通信,通信线路502可以是有线的或无线的。网络可以是任何合适的网络,包括例如内联网或外联网。
MCU 505被配置为通过通信线路515向一个或更多个SCU 516、521发送任何测试配置文件501的副本。MCU 505通过通信总线(未示出)分别通过通信线路506、507和508连接到PMU 509、CMU 510和TMU 511。
MCU 505被配置为根据测试配置文件501的需要,单独地编程和单独地、串行地或并行地改变PMU 509、CMU 510和TMU 511中的每一个。PMU 509经由通信线路512连接到一个或更多个SCU 516、521。CMU 510经由通信线路513连接到一个或更多个SCU 516、521。TMU511经由通信线路514连接到一个或更多个SCU 516、521。该架构允许PMU、CMU和TMU单元分别能够并行编程和控制一个或更多个SCU 516、521。
SCU 518并联连接到DUT 519和DUT 520,其中SCU 516通过通信总线518连接到一个或更多个DUT。DUT 519代表n1个DUT中的第一个,DUT 520代表由SCU 518控制的n1个DUT中的最后一个。
SCU 521并联连接到DUT 522和DUT 523,其中SCU 521通过通信总线521连接到一个或更多个DUT。DUT 522代表n2个DUT中的第一个,DUT 523代表由SCU 521控制的n2个DUT板中的最后一个DUT。由于连接之间有许多专用的内部总线,本发明的架构应被解释为促进高度的并行性。
通信线路515和517提供了如图所示的附加通信。
在处理易失性存储器的简单示例中,MCU 505通过网络503仅将测试配置文件501中的一个应用于一个或更多个SCU 516、521,并使用标称PMU、CMU和TMU设置执行所有所需的测试,其中SCU 516和521将所需的AC和DC电平信号和测试模式应用于所有DUT 519、520、522、523,并且DUT 519、520、522、523中的每一个执行所需的任务。可以将具有每一个存储器裸片部分的单个存储器地址位置的测试结果以及数据错误日志记录在相应的SCU中,并且可以将聚合的日志提供给MCU 505,并且存储在网络503中用于进一步分析。在该示例中,MCU 505可以编程和测试所有插口,以测试在标称水平的一种类型的易失性存储器。在另一个示例中,相同的程序可以编程和测试相同的易失性存储器插口,但具有使用PMU 509的电压变化、或者使用CMU 510的时钟频率变化、或者使用TMU 511的温度变化,或者PMU 509、CMU 510和TMU 511的一个或更多个变体的组合,以使用多角测试来测试相同的易失性存储器插口。
在处理非易失性存储器的另一实施例中,MCU 505通过网络503仅将测试配置文件501中的一个应用于一个或更多个SCU 516、521,并使用标称PMU、CMU和TMU设置执行所有所需测试,其中SCU 516和521将所需的AC和DC电平信号和测试模式应用于所有DUT 519、520、522、523,并且DUT 519、520、522、523中的每一个执行所需的任务。可以将具有每一个存储器裸片部分的单个存储器地址位置的测试结果以及数据错误日志记录在相应的SCU中,并且可以将聚合的日志提供给MCU 505,并且存储在网络503中用于进一步分析。在该示例中,MCU 505可以编程和测试所有插口,以测试在标称水平的一种类型的非易失性存储器。在另一个示例中,相同的程序可以编程和测试相同的非易失性存储器插口,但具有使用PMU 509的电压变化、或者使用CMU 510的时钟频率变化、或者使用TMU 511的温度变化,或者PMU509、CMU 510和TMU 511的一个或更多个变体的组合,以使用多角测试来测试相同的易失性存储器插口。
在处理易失性和非易失性存储器的另一个实施例中,MCU 505通过网络503仅将测试配置文件501中的一个应用于一个或更多个SCU 516、521,并使用标称PMU、CMU和TMU设置执行所有所需测试,其中SCU 516和521将所需的AC和DC电平信号和测试模式应用于所有DUT 519、520、522、523,并且DUT 519、520、522、523中的每一个执行所需的任务。可以将具有每一个存储器裸片部分的单个存储器地址位置的测试结果以及数据错误日志记录在相应的SCU中,并且可以将聚合的日志提供给MCU 505,并且存储在网络503中用于进一步分析。在该示例中,MCU 505可以编程和测试一些插口以测试一种类型的易失性存储器,以及可以编程和测试一些插口以测试在标称水平的一种类型的非易失性存储器。在另一示例中,相同的程序可以应用于相同的易失性和非易失性存储器插口,但是具有使用PMU的电压变化、或者使用CMU的时钟频率变化、或者使用TMU的温度变化或PMU、CMU和TMU的一个或更多个变化的组合,以使用多角测试来测试相同的易失性与非易失存储器插口。
一个或更多个SCU是智能的。在一些实施例中,例如,SCU被配置为在DUT正在运行主机应用时运行功能测试模式。在一些实施例中,SCU甚至能够使用DUT的存储器运行一些或所有主机应用。
图6是本发明所设想的方法中的步骤示意图。步骤601,将易失性存储器和/或非易失性存储器的存储器地址转换为矩阵;602通过遍历矩阵的多个单元测试存储器的测试位来累积错误数据;步骤603对累积的错误数据进行后处理,以确定测试位是否有故障;604,对于其他测试位重复步骤602和603;605评估后处理的错误数据以将测试位中的一个或更多个识别为开路或短路;以及步骤606,在测试日志中包括与故障测试数据位中的每一个相对应的存储器地址的示例性实例(优选地仅一个)。
尽管上文讨论了某些优选实施例和示例,但应理解,本发明的主题超出了具体公开的实施例,扩展到本发明的其他替代实施例和/或用途及其显而易见的修改和等同物。这里公开的发明的范围不应受到特定公开实施例的限制。因此,例如,在本文公开的任何方法或过程中,构成方法/过程的动作或操作可以以任何合适的顺序执行,并且不一定限于任何特定公开的顺序。
优先权
本申请是于2022年11月10日提交的未决美国专利申请序列号17/985037的部分续案。