WO2023019658A1 - 一种存储器测试方法、设备及装置 - Google Patents

一种存储器测试方法、设备及装置 Download PDF

Info

Publication number
WO2023019658A1
WO2023019658A1 PCT/CN2021/117150 CN2021117150W WO2023019658A1 WO 2023019658 A1 WO2023019658 A1 WO 2023019658A1 CN 2021117150 W CN2021117150 W CN 2021117150W WO 2023019658 A1 WO2023019658 A1 WO 2023019658A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
memory
command
storage area
sub
Prior art date
Application number
PCT/CN2021/117150
Other languages
English (en)
French (fr)
Inventor
陈鑫旺
马茂松
刘建斌
Original Assignee
长鑫存储技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 长鑫存储技术有限公司 filed Critical 长鑫存储技术有限公司
Publication of WO2023019658A1 publication Critical patent/WO2023019658A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor

Definitions

  • the present application relates to the technical field of semiconductors, and in particular to a memory testing method, equipment and device.
  • memory testing mainly relies on machines for testing, but machine testing methods are costly and inflexible.
  • Embodiments of the present application provide a memory testing method, device and device, which can be applied to debugging and testing of back-end memory products, have low cost, high flexibility, and support instructions that cannot be directly decoded.
  • the first aspect of the present application provides a memory testing method, the method comprising:
  • test instructions including control commands
  • the second aspect of the present application provides a memory testing device, the device comprising:
  • a receiving module configured to receive test instructions, where the test instructions include control commands;
  • a parsing module configured to parse the command type to which the control command belongs
  • a conversion module configured to convert the control command into a corresponding control signal when the parsing module parses that the command type to which the control command belongs belongs to the first command type
  • An execution module configured to output the corresponding first data in the preset storage area to the corresponding pins of the memory to be tested at the falling edge of the command clock according to the control signal; and/or, output the corresponding pins of the memory to be tested to The second data of the pin is read into the preset storage area.
  • the third aspect of the present application provides a memory testing device, the device includes the memory testing device described in any one of the above, and the device also includes:
  • An instruction sending device configured to send the test instruction to the memory testing device.
  • the instruction sending device is a CPU.
  • the device further includes a Universal Asynchronous Receiver Transmitter
  • the CPU is connected to the user terminal through the Universal Asynchronous Receiver Transmitter, so as to receive the operation information corresponding to the test instruction input by the user terminal.
  • the present application analyzes the control command in the received test command, and when it is analyzed that the command type to which the control command belongs is the first command type, the control command is converted into a corresponding control signal, and then driven by the control signal Perform a memory test.
  • This application can analyze and convert control commands that cannot be directly decoded, so that corresponding test commands can be implemented, such as test commands that do not meet the JEDEC specification, and for other conventional test commands, memory tests can be directly implemented according to the test commands. No control command conversion operation is required.
  • the application can be applied to the debugging and testing of back-end memory products, and has low cost and high flexibility. In addition to the test commands required by the JEDEC specification, it can also realize all the test commands that do not meet the JEDEC specification.
  • Fig. 1 is a schematic flow chart of an embodiment of the memory testing method provided by the present application.
  • Fig. 2 is a schematic diagram of the timing relationship of an embodiment of the Read Chipid instruction provided by the present application
  • Fig. 3 is a schematic diagram of data flow of an embodiment of the memory testing equipment provided by the present application.
  • FIG. 4 is a schematic structural connection diagram of an embodiment of a memory testing device provided by the present application.
  • the memory test mode is a super mode that can only be accessed by the original factory, and it is usually not open to customers.
  • DRAM Dynamic Random Access Memory, dynamic random access memory
  • the method of SLT test (system level test) is adopted to enter the memory test mode, and the memory is tested by the CPU main board by installing the memory on the CPU main board.
  • This way needs to have the complete bottom code of the CPU motherboard and the control code of the PHY (physical layer) that can correctly modify the memory, and the cost is too high.
  • some test instructions in the memory test mode cannot be directly decoded, such as test instructions that do not meet the JEDEC specification, that is, test instructions that do not belong to the JEDEC specification, and the CPU motherboard cannot implement these test instructions.
  • test instructions that do not meet the JEDEC specification that is, test instructions that do not belong to the JEDEC specification
  • the CPU motherboard cannot implement these test instructions.
  • the external output information of the DRAM chip is usually realized by using the DQ pin, and there is no transition of the DQS signal. This has led to the inability to perform operations such as reading the chip ID after entering the DRAM chip test mode using the CPU motherboard.
  • the embodiment of the present application provides a memory testing method, as shown in Figure 1, including the following steps:
  • test instruction includes a control command.
  • the test instruction can be an instruction that can be directly decoded by the device executing the method, such as a test instruction defined in the JEDEC specification, or an instruction that cannot be directly decoded, such as a test instruction that does not belong to the JEDEC specification.
  • the test instructions that do not meet the JEDEC specification are generally customized by the original memory manufacturer, and are used to complete functions such as debugging and testing.
  • the Read Chipid (read chip identification) command is not defined in the JEDEC specification. It is used to read the ID of the DRAM chip. The ID stores information such as the production date of the DRAM chip and the packaging and testing manufacturer.
  • the control command in the test instruction is the command defined in the JEDEC specification; otherwise, the control command is considered not to be the command defined in the JEDEC specification.
  • S2 analyzes the command type to which the control command belongs.
  • S3 converts the control command into a corresponding control signal when analyzing that the command type to which the control command belongs belongs to the first command type.
  • S4 outputs the corresponding first data in the preset storage area to the corresponding pin of the memory to be tested at the falling edge of the command clock according to the control signal; and/or, outputs the first data of the corresponding pin of the memory to be tested
  • the second data is read into the preset storage area.
  • step S4 specifically, when the test operation corresponding to the test instruction only needs to output relevant data to the memory to be tested, the corresponding first outputting data to corresponding pins of the memory to be tested;
  • test operation corresponding to the test instruction only needs to read data from the memory to be tested, read the second data of the corresponding pin of the memory to be tested into the preset storage area;
  • test operation corresponding to the test instruction needs to output relevant data to the memory to be tested and read data from the memory to be tested, then output the corresponding first data in the preset storage area on the falling edge of the command clock according to the corresponding control signal to the corresponding pins of the memory to be tested, and read the second data of the corresponding pins of the memory to be tested into the preset storage area.
  • the first command type is a command that cannot be directly decoded to obtain a corresponding control signal, for example, a command that does not meet JEDEC specifications, and conversion/interpretation of such control commands is required.
  • the command information corresponding to the test command that does not meet the JEDEC specification can be pre-stored, and the type analysis of the control command is performed according to the stored command information.
  • the embodiment of the present application can implement corresponding operations on the test instructions that do not meet the JEDEC specification.
  • the converting the control command into a corresponding control signal specifically includes:
  • the signal generation data corresponding to the control command is searched in the stored command list, and the converted control signal is generated according to the signal generation data.
  • the command list includes a plurality of preset control commands, each control command corresponds to one or more signal generation data, and the signal generation data is used to generate corresponding control signals.
  • the test instruction further includes a type identifier of the memory to be tested. Therefore, after receiving the test instruction, according to the type identification of the memory to be tested carried by the test instruction, the signal generation data conforming to the type of the memory to be tested can be selected from the plurality of signal generation data to generate corresponding control signals.
  • the type identification is used to distinguish different memory to be tested, for example, to distinguish different types of memory, or to distinguish different types of memory of the same type.
  • information for prompting to select the type of the memory to be tested may be output, and the signal generation data may be determined according to the type identification of the memory to be tested selected by the tester.
  • the method also includes:
  • the method also includes:
  • the control command is decoded to obtain a corresponding control signal.
  • the second command type is a command meeting the JEDEC specification.
  • the embodiment of this application directly decodes the command satisfying the JEDEC standard, and realizes the test operation of the test instruction satisfying the JEDEC standard.
  • the first data is local data pre-stored in the preset storage area, so as to shorten the processing time of the test instruction.
  • the first data is received together with the control command, that is, the test instruction also includes the first data, and the device stores the first data in the preset storage area when receiving the control command.
  • the corresponding address data and/or control data are generally input to the pins of the memory.
  • the first data is partitioned and stored according to different data types.
  • the first data includes address data.
  • the address data includes a storage cell array address, a group address, a row address and a column address
  • the preset storage area includes a first sub-storage area and a second sub-storage area
  • the address of the memory cell array is stored in a first sub-storage area therein, and the group address, row address and column address are stored in a second sub-storage area therein.
  • the address of the storage cell array is the bank address
  • each memory has a plurality of storage cell arrays (i.e. banks), and each data bit is independently stored in the storage cells addressed by the row address and the column address of the specified bank .
  • the preset storage area further includes a third sub-storage area
  • the first data also includes control data
  • the method further includes:
  • the preset storage area includes a fourth sub-storage area
  • the method includes:
  • the first sub-storage area, the second sub-storage area, the third sub-storage area and the fourth sub-storage area are storage areas composed of a memory that can be read and written at any time, and the memory can be advanced Out (FIFO) memory, BRAM memory, etc., the embodiment of the present application is not limited thereto.
  • FIFO advanced Out
  • the first sub-storage area, the second sub-storage area, the third sub-storage area and the fourth sub-storage area are all FIFO storage areas.
  • the FIFO storage area is a storage area composed of first-in-first-out memory.
  • the execution device of the method will control the first sub-storage area, the second sub-storage area and the third sub-storage area under the drive of the control signal.
  • the data is read from the sub-storage areas and output to the memory pins at the same time until the first sub-storage area, the second sub-storage area and the third sub-storage area are empty.
  • the first sub-storage area, the second sub-storage area, the third sub-storage area and the fourth sub-storage area are all asynchronous first-in-first-out memories.
  • the data corresponding to the test instruction is cached through the asynchronous first-in-first-out memory, so that the timing of the device sending the test instruction and the device controlling the memory according to the test instruction will not affect the memory.
  • the output data is a waveform signal.
  • the output of the waveform signal is preferably realized by using RTL (Register Transfer Level), so that timing accuracy and flexibility of the output waveform can be taken into account.
  • the memory to be tested is a DRAM chip, and may also be other memory devices capable of storing information, such as SRAM (static memory).
  • SRAM static memory
  • the methods in the foregoing embodiments of the present application may be executed by an FPGA or other programmable logic devices.
  • FPGA Field Programmable Gate Array
  • Field Programmable Gate Array is a product of further development on the basis of programmable devices such as PAL, GAL, and CPLD.
  • PAL Field Programmable Gate Array
  • CPLD programmable logic circuitry
  • the test instruction is sent by the CPU.
  • the CPU here refers to a processor that can use high-level language such as C language for software development, including but not limited to central processing unit, MPU (microprocessor), MCU (micro control unit), DSP (digital signal Processing), GPU (graphics processing unit) and CPU cores inside the FPGA, etc.
  • C language for software development
  • MPU microprocessor
  • MCU micro control unit
  • DSP digital signal Processing
  • GPU graphics processing unit
  • CPU use C language codes to write related control programs for the memory.
  • the CPU can receive relevant operation information input by the user through the serial port terminal software from the serial port analysis unit, and then use C language code to generate the test instruction.
  • the CPU is provided with a corresponding serial port command parsing module for receiving the relevant operation information.
  • the CPU is also provided with a corresponding communication module to issue the test instruction information.
  • the communication module may include a communication unit with the FPGA, and the communication unit with the FPGA is used to send test instructions to the FPGA according to the communication mode agreed with the FPGA, and then the FPGA receives the instructions through the interface communicating with the CPU. Test instructions.
  • the method of the above-mentioned embodiments of the present application enters the test mode of the memory by setting a corresponding device (such as FPGA) between the device sending the test instruction (such as CPU) and the memory, and further realizes the analysis of irregular commands.
  • a corresponding device such as FPGA
  • the test instruction such as CPU
  • the modification/adjustment of the relevant parameters of the memory can be completed, such as adjusting the voltage and/or timing inside the memory, modifying the memory Parameters of interfaces available for debugging, etc.
  • this embodiment sets the method execution device as an FPGA, and the CPU sends the Read Chipid command to the FPGA as an example to analyze the execution of the above method.
  • the Read Chipid command is the command used to read the ID of the DRAM chip.
  • the ID stores information such as the production date of the DRAM chip and the packaging and testing manufacturer.
  • the timing diagram of the Read Chipid command is shown in Figure 2.
  • CK_t, CK_c represent the differential clock (signal) input
  • Dummy-A represents that no reading and writing is performed under the corresponding differential clock
  • the DQ5 (data bus 5) pins have not changed
  • DATA1...DATAn is composed of Chipid (chip identification) information bits. It can be seen from FIG. 2 that this instruction has no change of DQS (data strobe signal), and belongs to an instruction that does not meet the JEDEC specification.
  • the FPGA parses the control command into the first type command, and then converts the control command to obtain a corresponding control signal.
  • the receiving module of the FPGA receives the first data synchronously, the first data includes control data and address data, wherein the control data are 3'b111, 3'b101, 3'b111, 3' from front to back b111, ..., 3'b111, a total of 63 3-bit binary data, the address data includes BANK signal and address signal, among which, the BANK signal has 63 4-bit binary data 4'b0000 from front to back; the address signal is 0x1FFFF from front to back , 0x0008A, 0x1FFFF, 0x1FFFF, ..., 0x1FFFF, a total of 63 17bit binary data;
  • the FPGA then stores the control data, BANK signal, and address signal in the corresponding first FIFO memory, second FIFO memory, and third FIFO memory, respectively.
  • These three FIFO memories store 63 3-bit binary data, 63 4-bit binary data and 63 17-bit binary data;
  • the execution module of the FPGA controls to read data from the three FIFO memories and output them to the corresponding DRAM chip pins at the same time until the three FIFO memories are empty. At the same time, it detects that the next When the Read Chipid command is issued, the signals of all DQ (strobe data) pins of the DRAM chip are immediately read out and stored in the corresponding fourth FIFO memory, a total of 60 data, of which only the data of DQ5 is what we need Chipid data;
  • the data in the fourth FIFO memory is not empty, read out the data in the fourth FIFO memory and send it to the CPU. After the CPU receives the data, it will extract the data of the DQ5 pin separately and send it to the serial port. Print.
  • the second aspect of the present application provides a memory testing device, the memory testing device has the following program modules built in:
  • the receiving module 1 is configured to receive a test instruction, and the test instruction includes a control command;
  • Parsing module 2 configured to parse the command type to which the control command belongs
  • the conversion module 3 is configured to convert the control command into a corresponding control signal when the parsing module 2 parses that the command type to which the control command belongs belongs to the first command type;
  • the execution module 4 is configured to output the corresponding first data in the preset storage area to the corresponding pins of the memory to be tested at the falling edge of the command clock according to the control signal; and/or, the memory to be tested The second data of the corresponding pin is read into the preset storage area.
  • the first command type is a command that does not meet the JEDEC specification.
  • the conversion module 3 is specifically used for:
  • the signal generation data corresponding to the control command is searched in the stored command list, and the converted control signal is generated according to the signal generation data.
  • the conversion module 3 is also specifically used for:
  • the device also includes:
  • the first prompt module is configured to output information for prompting that the test command is an error command when the signal generation data corresponding to the control command cannot be found according to the stored command list.
  • the device also includes:
  • the decoding module is configured to decode the control command to obtain a corresponding control signal when the parsing module 2 parses that the command type to which the control command belongs belongs to the second command type.
  • the second command type is a command meeting the JEDEC specification.
  • the execution module 4 includes:
  • an output unit configured to output the corresponding first data in the preset storage area to corresponding pins of the memory to be tested
  • the reading unit is used to read the second data of the corresponding pins of the memory to be tested into the preset storage area.
  • test instruction also includes the first data
  • device further includes:
  • a storage module configured to store the first data in the preset storage area.
  • the first data includes address data.
  • the address data includes a memory cell array address, a group address, a row address and a column address
  • the preset storage area includes a first sub-storage area and a second sub-storage area
  • the storage module specifically includes :
  • a first storage unit configured to store the address of the storage unit array into a first sub-storage area therein;
  • the second storage unit is used to store the group address, row address and column address into the second sub-storage area therein.
  • the preset storage area further includes a third sub-storage area
  • the first data also includes control data
  • the storage module further includes:
  • a third storage unit configured to store the control data in the third sub-storage area.
  • the memory testing device includes a processor, wherein the processor is used to execute the above-mentioned program modules and units of the memory testing device, including: a receiving module 1, an analyzing module 2, a converting module 3, and an executing module 4 , a first prompt module, a decoding module and a storage module.
  • the preset storage area includes a fourth sub-storage area, and the reading unit is specifically used for:
  • the first sub-storage area, the second sub-storage area, the third sub-storage area and the fourth sub-storage area are all FIFO storage areas.
  • the memory to be tested is a DRAM chip.
  • the third aspect of the present application provides a memory testing device, the device includes the memory testing equipment according to any one of the above, and the device also includes:
  • An instruction sending device configured to send the test instruction to the memory testing device.
  • the instruction sending device is a CPU.
  • the device also includes a universal asynchronous transceiver transmitter
  • the CPU is connected to the user terminal through the Universal Asynchronous Receiver Transmitter, so as to receive the operation information corresponding to the test instruction input by the user terminal.

Abstract

本申请涉及动态存储器技术领域,公开了一种存储器测试方法、设备及装置。该存储器测试方法、设备及装置通过将不能直接解码的命令转换成相应的控制信号,进而根据控制信号执行存储器的测试操作。本申请可应用于后端存储器产品的调试和测试,成本低,灵活性高,同时支持不能直接解码的测试指令。

Description

一种存储器测试方法、设备及装置
相关申请
本申请基于申请号为202110941212.X,申请日为2021年08月16日,申请名称为“一种存储器测试方法、设备及装置”的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。
技术领域
本申请涉及半导体技术领域,尤其涉及一种存储器测试方法、设备及装置。
背景技术
目前,存储器的测试主要依靠机台进行测试,但机台测试方法成本高,不灵活。
相关技术中还采用SLT测试(系统级测试)的方式进入存储器测试模式,其使用CPU主板来对存储器进行测试,但对于存储器测试模式中不能直接解码的测试指令,例如不满足JEDEC(Joint Electron Device Engineering Council,电子器件工程联合委员会)规范的测试指令,CPU主板并不能实现测试。
发明内容
本申请实施例提供一种存储器测试方法、设备及装置,可应用于后端存储器产品的调试和测试,成本低,灵活性高,同时支持不能直接解码的指令。
根据一些实施例,本申请第一方面提供一种存储器测试方法,所述方法包括:
接收测试指令,所述测试指令包括控制命令;
解析所述控制命令所属的命令类型;
解析到所述控制命令所属的命令类型属于第一命令类型时,将所述控制命令转换为对应的控制信号;
根据所述控制信号在命令时钟的下降沿将预置存储区内对应的第一数据输出到所述待测试存储器的对应管脚;和/或,将所述待测试存储器相应管脚的第二数据读取到所述预置存储区。
本申请第二方面提供了一种存储器测试设备,所述设备包括:
接收模块,用于接收测试指令,所述测试指令包括控制命令;
解析模块,用于解析所述控制命令所属的命令类型;
转换模块,用于在所述解析模块解析到所述控制命令所属的命令类型属于第一命令类型时,将所述控制命令转换为对应的控制信号;
执行模块,用于根据所述控制信号在命令时钟的下降沿将预置存储区内对应的第一数据输出到所述待测试存储器的对应管脚;和/或,将所述待测试存储器相应管脚的第二数据读取到所述预置存储区。
本申请第三方面提供了一种存储器测试装置,所述装置包括如上任意一项所述的存储器测试设备,所述装置还包括:
指令发送设备,用于向所述存储器测试设备发送所述测试指令。
根据本申请第三方面的一种能够实现的方式,所述指令发送设备为CPU。
根据本申请第三方面的一种能够实现的方式,所述装置还包括通用异步收发传输器;
所述CPU通过所述通用异步收发传输器连接用户终端,以接收所述用户终端输入的与所述测试指令对应的操作信息。
本申请对接收的测试指令中的控制命令进行解析,当解析到所述控制命令所属的命令类型为第一命令类型时,将控制命令转换为对应的控制信号,进而在该控制信号的驱动下进行存储器的测试。本申请能够对不能直接解码的控制命令进行解析转换,因此能够实现相应的测试指令,例如不满足JEDEC规范的测试指令,而对于其他常规的测试指令,可以直接根据该测试指令实现存储器的测试,无需进行控制命令转换操作。本申请可应用于后端存储器产品的调试和测试,成本低,灵活性高,除能实现JEDEC规范要求的测试指令外,还能实现所有不满足JEDEC规范的测试指令。
附图说明
图1是本申请提供的存储器测试方法的一个实施例的流程示意图;
图2是本申请提供的Read Chipid指令的一个实施例的时序关系示意图;
图3是本申请提供的存储器测试设备的一个实施例的数据流向示意图;
图4是本申请提供的存储器测试设备的一个实施例的结构连接示意图。
附图标记:
1、接收模块;2、解析模块;3、转换模块;4、执行模块。
具体实施方式
本申请描述了多个实施例,但是该描述是示例性的,而不是限制性的,并且对于本领域的普通技术人员来说显而易见的是,在本申请所描述的实施例包含的范围内可以有更多的实施例和实现方案。尽管在附图中示出了许多可能的特征组合,并在具体实施方式中进行了讨论,但是所公开的特征的许多其它组合方式也是可能的。除非特意加以限制的情况以外,任何实施例的任何特征或元件可以与任何其它实施例中的任何其他特征或元件结合使用,或可以替代任何其它实施例中的任何其他特征或元件。
本申请包括并设想了与本领域普通技术人员已知的特征和元件的组合。本申请已经公开的实施例、特征和元件也可以与任何常规特征或元件组合,以形成由权利要求限定的独特的发明方案。任何实施例的任何特征或元件也可以与来自其它发明方案的特征或元件组合,以形成另一个由权利要求限定的独特的发明方案。因此,应当理解,在本申请中示出和/或讨论的任何特征可以单独地或以任何适当的组合来实现。因此,除了根据所附权利要求及其等同替换所做的限制以外,实施例不受其它限制。此外,可以在所附权利要求的保护范围内进行各种修改和改变。
此外,在描述具有代表性的实施例时,说明书可能已经将方法和/或过程呈现为特定的步骤序列。然而,在该方法或过程不依赖于本文所述步骤的特定顺 序的程度上,该方法或过程不应限于所述的特定顺序的步骤。如本领域普通技术人员将理解的,其它的步骤顺序也是可能的。因此,说明书中阐述的步骤的特定顺序不应被解释为对权利要求的限制。此外,针对该方法和/或过程的权利要求不应限于按照所写顺序执行它们的步骤,本领域技术人员可以容易地理解,这些顺序可以变化,并且仍然保持在本申请实施例的精神和范围内。
存储器测试模式是一种原厂才能访问的超级模式,通常不开放给客户使用。例如DRAM(Dynamic Random Access Memory,动态随机存取存储器)芯片,在DRAM芯片流片封装完成后,可以通过进入DRAM芯片测试模式访问并修改DRAM芯片内部的DFT寄存器,从而更改DRAM芯片内部的部分电源电压、I/O时序以及可供调试用的接口参数等,这有利于提高DRAM芯片调试的效率,加快定位错误,使整个DRAM芯片测试流程快速收敛。
相关技术中采用SLT测试(系统级测试)的方式进入存储器测试模式,其通过把存储器安装到CPU主板上,由CPU主板来对存储器进行测试。这种方式需要拥有完整的CPU主板底层代码以及能正确修改存储器的PHY(物理层)的控制代码,成本过高。而且,存储器测试模式的测试指令有部分不能够被直接解码,例如是不满足JEDEC规范的测试指令,即不属于JEDEC规范中定义的测试指令,对于这部分测试指令CPU主板不能实现。例如,对于DRAM芯片,在测试模式下,DRAM芯片对外输出的信息通常使用DQ管脚来实现,没有DQS信号的跳变。这就导致了使用CPU主板进入DRAM芯片测试模式后不能进行读取芯片ID等操作。
本申请实施例提供了一种存储器测试方法,该方法如图1所示,包括如下步骤:
S1接收测试指令,所述测试指令包括控制命令。
其中,测试指令可以为执行该方法的器件能够直接解码的指令,例如属于JEDEC规范中定义的测试指令,也可以为不能够直接解码的指令,例如不属于JEDEC规范中定义的测试指令。不满足JEDEC规范的测试指令一般为存储器生产原厂自定义的测试指令,用于完成调试、测试等功能。例如Read Chipid(读 芯片标识)指令,在JEDEC规范里并没有定义,其用于读取DRAM芯片的ID,ID里存储了DRAM芯片的生产日期、封测厂商等信息。当该测试指令为属于JEDEC规范中定义的测试指令时,则测试指令中的控制命令即为JEDEC规范定义的命令,反之,则认为该控制命令不为JEDEC规范定义的命令。
S2解析所述控制命令所属的命令类型。
S3解析到所述控制命令所属的命令类型属于第一命令类型时,将所述控制命令转换为对应的控制信号。
S4根据所述控制信号在命令时钟的下降沿将预置存储区内对应的第一数据输出到所述待测试存储器的对应管脚;和/或,将所述待测试存储器相应管脚的第二数据读取到所述预置存储区。
执行该步骤S4时,具体地,当测试指令对应的测试操作仅需将相关数据输出到待测试存储器时,则根据对应的控制信号在命令时钟的下降沿将预置存储区内对应的第一数据输出到所述待测试存储器的对应管脚;
当测试指令对应的测试操作仅需从待测试存储器读取数据时,则将所述待测试存储器相应管脚的第二数据读取到所述预置存储区;
当测试指令对应的测试操作需将相关数据输出到待测试存储器并从待测试存储器读取数据时,则根据对应的控制信号在命令时钟的下降沿将预置存储区内对应的第一数据输出到所述待测试存储器的对应管脚,并将所述待测试存储器相应管脚的第二数据读取到所述预置存储区。
根据一些实施例,第一命令类型为不能直接解码获取对应控制信号的命令,例如为不满足JEDEC规范的命令,需要对这种控制命令进行转换/解释。
为实现不满足JEDEC规范的命令的解析,可以预存储不满足JEDEC规范的测试指令所对应的命令信息,根据存储的命令信息进行控制命令的类型解析。通过对不满足JEDEC规范的命令转换为对应的控制信号,进而根据该控制信号执行对存储器的测试操作,本申请实施例能够实现对不满足JEDEC规范的测试指令的相应操作。
在一些实施例中,所述将所述控制命令转换为对应的控制信号,具体包括:
在存储的命令列表查找所述控制命令对应的信号生成数据,根据所述信号生成数据生成转换的控制信号。
其中,该命令列表包括多个预置的控制命令,每个控制命令对应一个或者多个信号生成数据,该信号生成数据用于生成相应的控制信号。
具体地,在一种实施方式中,若在存储的命令列表查找到对应所述控制命令的多条信号生成数据,所述测试指令还包括待测试存储器的类型标识。从而在接收到测试指令后,可以根据测试指令携带的待测试存储器的类型标识在多条信号生成数据中选取符合待测试存储器类型的信号生成数据,以生成相应的控制信号。
其中,该类型标识用于区别不同的待测试存储器,例如区别不同种类的存储器,或者区别同一种类的不同型号的存储器。
在又一种实施方式中,可以在查找到多条信号生成数据时,输出用于提示选择待测试存储器的类型的信息,根据测试人员所选择的待测试存储器的类型标识确定信号生成数据。
在一些实施例中,所述方法还包括:
根据存储的命令列表查找不到所述控制命令对应的信号生成数据时,输出用于提示所述测试指令为错误指令的信息。此实施例可以实现对测试指令的合法性检测。
在一些实施例中,所述方法还包括:
解析到所述控制命令所属的命令类型属于第二命令类型时,对所述控制命令进行解码以得到对应的控制信号。
在一些实施方式中,所述第二命令类型为满足JEDEC规范的命令。
此申请实施例对满足JEDEC规范的命令直接进行解码,实现了对满足JEDEC规范的测试指令的测试操作。
在一些实施例中,该第一数据为预先存储在预置存储区中的本地数据,以缩短对测试指令的处理时长。
在另一些实施例中,所述第一数据随着控制命令一起接收,即测试指令还 包括第一数据,由设备在接收控制命令时将该第一数据存储到该预置存储区。
执行测试指令时,一般会向存储器的管脚输入对应的地址数据和/或控制数据。本申请实施例根据不同的数据类型对第一数据进行分区存储。
在一些实施例中,所述第一数据包括地址数据。
其中,所述地址数据包括存储单元阵列地址、组地址、行地址和列地址,所述预置存储区包括第一子存储区和第二子存储区,所述方法包括:
将所述存储单元阵列地址存储至其内的第一子存储区,将所述组地址、行地址和列地址存储至其内的第二子存储区。
其中,所述存储单元阵列地址即bank地址,通常每个存储器具有多个存储单元阵列(即bank),每个数据位独立存储在指定bank的由行地址和列地址寻址的存储单元格内。
在一些实施例中,所述预置存储区还包括第三子存储区,所述第一数据还包括控制数据,所述方法还包括:
将所述控制数据存储至所述第三子存储区。
在一些实施例中,所述预置存储区包括第四子存储区,所述方法包括:
将所述存储器相应管脚的第二数据读取到所述第四子存储区。
在一些实施例中,所述第一子存储区、第二子存储区、第三子存储区和第四子存储区为由能够随时读写的存储器构成的存储区,该存储器可以是先进先出(FIFO)存储器、BRAM存储器等,本申请实施例不限定于此。
在一种可选施方式中,所述第一子存储区、第二子存储区、第三子存储区和第四子存储区皆为FIFO存储区。
FIFO存储区为由先进先出存储器构成的存储区,根据上述实施例的方法,该方法的执行设备在控制信号的驱动下,会控制从第一子存储区、第二子存储区和第三子存储区中读取数据并同时输出到存储器管脚,直到第一子存储区、第二子存储区和第三子存储区为空。
在实现每个测试指令过程中,由于发送测试指令的设备与根据测试指令控制存储器的设备的时钟不同,该第一子存储区、第二子存储区、第三子存储区 和第四子存储区皆为异步的先进先出存储器。通过该异步的先进先出存储器来缓存测试指令对应的数据,使得发送测试指令的设备与根据测试指令控制存储器的设备的时序如何并不会影响到存储器。
在一些实施例中,将数据输出到存储器管脚时,输出的数据为波形信号。该波形信号输出优选使用RTL(寄存器传输级)来实现,进而能够兼顾输出波形的时序准确性和灵活性。
上述实施例中,所述待测试存储器为DRAM芯片,还可以是其他能够保存信息的记忆设备,例如SRAM(静态存储器)。
一些示例性实施例中,本申请上述实施例的方法可以由FPGA或者其他可编程逻辑器件执行。需要说明的是,FPGA(Field Programmable Gate Array,现场可编程门阵列),它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。需要说明的是,上述的预置存储区设置于本申请方法的执行器件内。
一些示例性实施例中,该测试指令由CPU进行发送。需要说明的是,这里的CPU是指能够使用C语言等高级语言进行软件开发的处理器,包括但不限于中央处理器、MPU(微处理器)、MCU(微控制单元)、DSP(数字信号处理)、GPU(图形处理器)和FPGA内部的CPU内核等。在CPU中,使用C语言代码来编写针对存储器的相关控制程序。该CPU可以从串口解析单元中接收用户通过串口终端软件输入的相关操作信息,进而使用C语言代码生成该测试指令。作为优选,该CPU设置相应的串口命令解析模块,用于接收该相关操作信息。该CPU还设置有相应的通信模块,以下发该测试指令信息。该存储器测试方法由FPGA执行时,该通信模块可以包括与FPGA通信单元,与FPGA通信单元用于将测试指令按照跟FPGA约定的通信方式下发给FPGA,进而FPGA通过与CPU通信的接口接收该测试指令。
本申请上述实施例的方法通过在发送测试指令的设备(例如CPU)和存储器之间设置相应的设备(例如FPGA)来进入存储器的测试模式,并进一步实现对不规范命令的解析。通过将测试指令转换为适用的控制信号,进而在控制信号的驱动下对存储器进行测试操作,能够完成对存储器相关参数的修改/调节, 例如对存储器内部的电压和/或时序进行调节、修改存储器可供调试用的接口的参数等等。
为更好地理解本发明申请,本实施例设定该方法执行设备为FPGA,由CPU向FPGA发送Read Chipid指令为例来解析上述方法的执行。Read Chipid指令,如上所述,即用于读取DRAM芯片的ID的指令,ID里存储了DRAM芯片的生产日期、封测厂商等信息。Read Chipid指令的时序图如图2所示。其中,CK_t,CK_c表示差分时钟(信号)输入,Dummy-A表示对应差分时钟下没有进行读写,该DQ5(数据总线5)管脚没有变化,DATA1……DATAn是组成Chipid(芯片标识)信息的位。根据该图2可知,此指令没有DQS(数据选通信号)的变化,属于不满足JEDEC规范的指令。
此场景中,CPU发送测试指令后,FPGA解析到其中的控制命令为第一类型命令,进而对控制命令进行转换得到相应的控制信号。
如图3所示,FPGA的接收模块同步接收到第一数据,该第一数据包括控制数据和地址数据,其中控制数据从前到后分别是3′b111,3′b101,3′b111,3′b111,……,3′b111,共63个3bit二进制数据,地址数据包括BANK信号和地址信号,其中,BANK信号从前到后共63个4bit二进制数据4′b0000;地址信号从前到后分别是0x1FFFF,0x0008A,0x1FFFF,0x1FFFF,…,0x1FFFF,共63个17bit二进制数据;
FPGA进而将控制数据、BANK信号、地址信号分别存储到相应的第一先进先出存储器、第二先进先出存储器、第三先进先出存储器,这三个先进先出存储器里分别存入了63个3bit二进制数据、63个4bit二进制数据和63个17bit二进制数据;
FPGA的执行模块在控制信号的驱动下,控制从三个先进先出存储器里读取数据并同时输出到对应的DRAM芯片管脚,直到这三个先进先出存储器为空,同时,检测到下发的是Read Chipid指令时,立即将DRAM芯片所有DQ(选通数据)管脚的信号读取出来存入对应的第四先进先出存储器,共60个数据,其中只有DQ5的数据是我们需要的Chipid数据;
如果第四先进先出存储器里的数据不为空,则将第四先进先出存储器里的数据读空并发送给CPU,CPU收到数据后将DQ5管脚的数据单独提取出来并在串口里打印。
本申请第二方面提供了一种存储器测试设备,所述存储器测试设备内置有以下程序模块:
接收模块1,用于接收测试指令,所述测试指令包括控制命令;
解析模块2,用于解析所述控制命令所属的命令类型;
转换模块3,用于在所述解析模块2解析到所述控制命令所属的命令类型属于第一命令类型时,将所述控制命令转换为对应的控制信号;
执行模块4,用于根据所述控制信号在命令时钟的下降沿将预置存储区内对应的第一数据输出到所述待测试存储器的对应管脚;和/或,将所述待测试存储器相应管脚的第二数据读取到所述预置存储区。
在一些实施例中,所述第一命令类型为不满足JEDEC规范的命令。
在一些实施例中,所述转换模块3具体用于:
在存储的命令列表查找所述控制命令对应的信号生成数据,根据所述信号生成数据生成转换的控制信号。
在一些实施例中,所述转换模块3还具体用于:
若在存储的命令列表查找到对应所述控制命令的多条信号生成数据,从中选取与所述待测试存储器的类型标识对应的信号生成数据进行控制信号生成。
在一些实施例中,所述设备还包括:
第一提示模块,用于在根据存储的命令列表查找不到所述控制命令对应的信号生成数据时,输出用于提示所述测试指令为错误指令的信息。
在一些实施例中,所述设备还包括:
解码模块,用于在所述解析模块2解析到所述控制命令所属的命令类型属于第二命令类型时,对所述控制命令进行解码以得到对应的控制信号。
在一些实施例中,所述第二命令类型为满足JEDEC规范的命令。
在一些实施例中,所述执行模块4包括:
输出单元,用于将预置存储区内对应的第一数据输出到所述待测试存储器的对应管脚;
和/或,
读取单元,用于将所述待测试存储器相应管脚的第二数据读取到所述预置存储区。
在一些实施例中,所述测试指令还包括所述第一数据,所述设备还包括:
存储模块,用于将所述第一数据存储到所述预置存储区。
在一些实施例中,所述第一数据包括地址数据。
在一些实施例中,所述地址数据包括存储单元阵列地址、组地址、行地址和列地址,所述预置存储区包括第一子存储区和第二子存储区,所述存储模块具体包括:
第一存储单元,用于将所述存储单元阵列地址存储至其内的第一子存储区;
第二存储单元,用于将所述组地址、行地址和列地址存储至其内的第二子存储区。
在一些实施例中,所述预置存储区还包括第三子存储区,所述第一数据还包括控制数据,所述存储模块还包括:
第三存储单元,用于将所述控制数据存储至所述第三子存储区。
在一个实施示例中,所述存储器测试设备包括处理器,其中所述处理器用于执行存在存储器测试设备的上述程序模块和单元,包括:接收模块1、解析模块2、转换模块3、执行模块4、第一提示模块、解码模块和存储模块。
在一些实施例中,所述预置存储区包括第四子存储区,所述读取单元具体用于:
将所述存储器相应管脚的第二数据读取到所述第四子存储区。
在一些实施例中,所述第一子存储区、第二子存储区、第三子存储区和第四子存储区皆为FIFO存储区。
在一些实施例中,所述待测试存储器为DRAM芯片。
本申请第三方面提供了一种存储器测试装置,所述装置包括如上任一项所 述的存储器测试设备,所述装置还包括:
指令发送设备,用于向所述存储器测试设备发送所述测试指令。
在一些实施例中,所述指令发送设备为CPU。
其中,所述装置还包括通用异步收发传输器;
所述CPU通过所述通用异步收发传输器连接用户终端,以接收所述用户终端输入的与所述测试指令对应的操作信息。
本申请设备上述实施例各单元或模块的功能及实现方式与上述存储器测试方法的实施例相同,具体解析可以参照上述存储器测试方法的实施例,为了避免重复,在此不再赘述。
以上所述是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本申请的保护范围。

Claims (15)

  1. 一种存储器测试方法,所述方法包括:
    接收测试指令,所述测试指令包括控制命令;
    解析所述控制命令所属的命令类型;
    解析到所述控制命令所属的命令类型属于第一命令类型时,将所述控制命令转换为对应的控制信号;
    根据所述控制信号在命令时钟的下降沿将预置存储区内对应的第一数据输出到所述待测试存储器的对应管脚;和/或,将所述待测试存储器相应管脚的第二数据读取到所述预置存储区。
  2. 根据权利要求1所述的一种存储器测试方法,其中,
    所述第一命令类型为不满足JEDEC规范的命令。
  3. 根据权利要求1所述的一种存储器测试方法,其中,所述将所述控制命令转换为对应的控制信号,具体包括:
    在存储的命令列表查找所述控制命令对应的信号生成数据,根据所述信号生成数据生成控制信号。
  4. 根据权利要求1所述的存储器测试方法,其中,所述方法还包括:
    解析到所述控制命令所属的命令类型属于第二命令类型时,对所述控制命令进行解码以得到对应的控制信号。
  5. 根据权利要求1所述的存储器测试方法,其中,所述测试指令还包括所述第一数据,所述方法还包括:
    将所述第一数据存储到所述预置存储区。
  6. 根据权利要求5所述的存储器测试方法,其中,所述第一数据包括地址数据和控制数据,所述地址数据包括存储单元阵列地址、组地址、行地址和列地址,所述预置存储区包括第一子存储区、第二子存储区和第三子存储区,所述方法包括:
    将所述存储单元阵列地址存储至其内的第一子存储区,将所述组地址、行 地址和列地址存储至其内的第二子存储区,将所述控制数据存储至所述第三子存储区。
  7. 一种存储器测试设备,其中,所述设备包括:
    接收模块,用于接收测试指令,所述测试指令包括控制命令;
    解析模块,用于解析所述控制命令所属的命令类型;
    转换模块,用于在所述解析模块解析到所述控制命令所属的命令类型属于第一命令类型时,将所述控制命令转换为对应的控制信号;
    执行模块,用于根据所述控制信号在命令时钟的下降沿将预置存储区内对应的第一数据输出到所述待测试存储器的对应管脚;和/或,将所述待测试存储器相应管脚的第二数据读取到所述预置存储区。
  8. 根据权利要求7所述的存储器测试设备,其中,
    所述第一命令类型为不满足JEDEC规范的命令。
  9. 根据权利要求8所述的存储器测试设备,其中,所述转换模块具体用于:
    在存储的命令列表查找所述控制命令对应的信号生成数据,根据所述信号生成数据生成控制信号。
  10. 根据权利要求7所述的存储器测试设备,其中,所述设备还包括:
    解码模块,用于在所述解析模块解析到所述控制命令所属的命令类型属于第二命令类型时,对所述控制命令进行解码以得到对应的控制信号。
  11. 根据权利要求7所述的存储器测试设备,其中,所述测试指令还包括所述第一数据,所述设备还包括:
    存储模块,用于将所述第一数据存储到所述预置存储区。
  12. 根据权利要求11所述的存储器测试设备,其中,
    所述第一数据包括地址数据和控制数据,所述地址数据包括存储单元阵列地址、组地址、行地址和列地址,所述预置存储区包括第一子存储区、第二子存储区和第三子存储区,所述存储模块具体包括:
    第一存储单元,用于将所述存储单元阵列地址存储至其内的第一子存储区;
    第二存储单元,用于将所述组地址、行地址和列地址存储至其内的第二子 存储区;
    第三存储单元,用于将所述控制数据存储至所述第三子存储区。
  13. 一种存储器测试装置,其中,所述装置包括如权利要求7-12任意一项所述的存储器测试设备,所述装置还包括:
    指令发送设备,用于向所述存储器测试设备发送所述测试指令。
  14. 根据权利要求13所述的存储器测试装置,其中,所述指令发送设备为CPU。
  15. 根据权利要求14所述的存储器测试装置,其中,
    所述装置还包括通用异步收发传输器;
    所述CPU通过所述通用异步收发传输器连接用户终端,以接收所述用户终端输入的与所述测试指令对应的操作信息。
PCT/CN2021/117150 2021-08-16 2021-09-08 一种存储器测试方法、设备及装置 WO2023019658A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110941212.X 2021-08-16
CN202110941212.XA CN115938455A (zh) 2021-08-16 2021-08-16 一种存储器测试方法、设备及装置

Publications (1)

Publication Number Publication Date
WO2023019658A1 true WO2023019658A1 (zh) 2023-02-23

Family

ID=85239791

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/117150 WO2023019658A1 (zh) 2021-08-16 2021-09-08 一种存储器测试方法、设备及装置

Country Status (2)

Country Link
CN (1) CN115938455A (zh)
WO (1) WO2023019658A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493762A (zh) * 2008-01-23 2009-07-29 Arm有限公司 多指令集的指令预解码
CN109087686A (zh) * 2018-08-30 2018-12-25 武汉精鸿电子技术有限公司 一种半导体存储器老化测试系统及方法
US20190121570A1 (en) * 2017-10-24 2019-04-25 Samsung Electronics Co., Ltd. Storage system including host device and storage device configured to perform selective purge operation
CN110956998A (zh) * 2019-12-02 2020-04-03 江苏芯盛智能科技有限公司 一种存储器测试装置与系统
CN111552475A (zh) * 2020-04-20 2020-08-18 武汉精测电子集团股份有限公司 一种半导体存储器老化测试的Workload测试文件编译方法、测试方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493762A (zh) * 2008-01-23 2009-07-29 Arm有限公司 多指令集的指令预解码
US20190121570A1 (en) * 2017-10-24 2019-04-25 Samsung Electronics Co., Ltd. Storage system including host device and storage device configured to perform selective purge operation
CN109087686A (zh) * 2018-08-30 2018-12-25 武汉精鸿电子技术有限公司 一种半导体存储器老化测试系统及方法
CN110956998A (zh) * 2019-12-02 2020-04-03 江苏芯盛智能科技有限公司 一种存储器测试装置与系统
CN111552475A (zh) * 2020-04-20 2020-08-18 武汉精测电子集团股份有限公司 一种半导体存储器老化测试的Workload测试文件编译方法、测试方法及系统

Also Published As

Publication number Publication date
CN115938455A (zh) 2023-04-07

Similar Documents

Publication Publication Date Title
CN113553277B (zh) 一种ddr5 sdram的高吞吐率、低延迟phy接口电路装置
US6434660B1 (en) Emulating one tape protocol of flash memory to a different type protocol of flash memory
CN101105980B (zh) 具有自测试功能的存储器控制器及其测试方法
CN101512362A (zh) 自动测试设备的数字波形产生及测量
US11675716B2 (en) Techniques for command bus training to a memory device
US7765442B2 (en) Memory device testable without using data and dataless test method
CN107797821A (zh) 重试读取方法以及使用该方法的装置
CN102053936B (zh) Fpga通过ddr2接口与dsp通信的方法及装置
CN116662240A (zh) 一种协议转换电路及方法、芯片、测试装置、存储介质
US8392768B2 (en) Memory test system with advance features for completed memory system
WO2023019658A1 (zh) 一种存储器测试方法、设备及装置
KR20170126270A (ko) 데이터 출력 회로 및 그를 포함하는 반도체 메모리 장치
US7042777B2 (en) Memory device with non-variable write latency
TW201437812A (zh) 記憶體存取方法、記憶體存取控制方法、記憶體裝置與記憶體控制器
CN206975631U (zh) 一种通用输入输出时序处理器
US11574661B1 (en) Shared command shifter systems and methods
CN113470554B (zh) 一种led显示驱动芯片开路检测回读方法
US6948014B2 (en) Register for the parallel-serial conversion of data
CN213459060U (zh) 存储器和存储器测试系统
KR101429257B1 (ko) 메모리 테스터에서 레이트 및 타이밍 발생장치
US6975559B2 (en) Device and method for reading non-volatile memories having at least one pseudo-parallel communication interface
US20240125851A1 (en) Multi-modal memory apparatuses and systems
Che FPGA-based memory test system design and test algorithm implementation
US11120851B1 (en) Memory apparatus and burst read and burst write method thereof
US20230326504A1 (en) Semiconductor devices capable of performing write training without read training, and memory system including the same

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21953894

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE