Test circuit and memory
By designing a test circuit that utilizes preset data topology and indication signals, the efficiency and high quality of memory testing are achieved, the problem of insufficient testing efficiency and coverage in the prior art is solved, and the self-diagnosis and self-repair of memory is supported.
Patent Information
- Application Number
- CN202310706738.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-13
- Publication Date
- 2024-12-20
- Estimated Expiration
- 2043-06-13
AI Technical Summary
The existing memory testing methods, especially the built-in self-test (MBIST) method of DDR5, have shortcomings in testing efficiency and coverage, making it difficult to efficiently detect defects in the memory, and the test time is relatively long.
A test circuit is designed to use multiple preset data topology to read and write the storage array, and automatically complete the read and write operations of the preset data topology through address jump pulses, parity indication signals, flip indication signals and topology indication signals. , realize automatic data flip and loop control of test data, ensuring that all preset data topology tests are completed.
Improves the efficiency and coverage of memory testing, shortens testing time, enables high-quality testing on low-cost devices, and supports self-diagnosis and self-repair functions of each storage unit.
Smart Images

Figure CN119170083A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the technical field of semiconductor memory, and in particular to a test circuit and a memory. Background Art
[0002] Dynamic Random Access Memory (DRAM) is a semiconductor memory, especially the 5th generation DDR (5th Double Data Rate, DDR5), which is widely used in various electronic products due to its high efficiency and low cost. At present, the most commonly used test method for memory is the memory built in self-test (MBIST) method. The MBIST circuit takes the memory as the target, automatically generates the test circuit of the memory, and detects certain defects in the memory by executing a specific test algorithm. Summary of the invention
[0003] The present disclosure provides a test circuit and a memory.
[0004] The technical solution of the present disclosure is achieved as follows:
[0005] In a first aspect, an embodiment of the present disclosure provides a test circuit, wherein the test circuit performs a read and write test on a storage array using a plurality of preset data topologies; the test circuit comprises:
[0006] A first control module is configured to generate and output a parity indication signal, a flip indication signal and a topology indication signal based on a received address jump pulse; wherein the address jump pulse indicates that the count value of the row address of the target operation has reached the even highest bit or the odd highest bit, and the target operation is a read operation or a write operation;
[0007] A state decoding module, connected to the first control module, configured to count and decode the topology indication signal to obtain an intermediate decoding signal;
[0008] A second control module, connected to the first control module and the state decoding module, configured to generate and output a first state signal and a second state signal based on the parity indication signal, the flip indication signal and the intermediate decoding signal;
[0009] The first state signal is used to select one of the first data sequence and the second data sequence as the target data sequence, the second state signal indicates whether each data of the target data sequence is flipped, and the target data sequence or the flipped target data sequence is used to form the preset data topology.
[0010] In some embodiments, the preset data topology has A groups, each group of the preset data topology includes a first data topology and a second data topology, and each of the first data topology and the second data topology includes an odd data topology and an even data topology;
[0011] The odd-even indication signal indicates that the row address of the storage unit corresponding to the target operation is an odd row address or an even row address, and generates the corresponding odd data topology or the even data topology;
[0012] The topology indication signal indicates the group number of the preset data topology corresponding to the target operation; the flip indication signal indicates the first data topology or the second data topology corresponding to the target operation.
[0013] In some embodiments, the first control module is further configured to generate and output a read / write indication signal based on receiving the address jump pulse; wherein the read / write indication signal indicates a read operation or a write operation.
[0014] In some embodiments, the test circuit further comprises a test module;
[0015] The test module is connected to both the first control module and the second control module, and is configured to receive the read / write indication signal, the first status signal, and the second status signal; when the read / write indication signal indicates a write operation, write the corresponding preset data topology to the storage array based on the first status signal and the second status signal; or, when the read / write indication signal indicates a read operation, read the data of the storage array, and compare the read data based on the first status signal and the second status signal.
[0016] In some embodiments, the first control module is specifically configured to control the level state of the parity indication signal to flip once every time one address jump pulse is received; control the level state of the read / write indication signal to flip once every time two address jump pulses are received; control the level state of the flip indication signal to flip once every time four address jump pulses are received; and generate one topology indication signal every time eight address jump pulses are received.
[0017] In some embodiments, the first control module includes:
[0018] A first signal unit is configured to sample and process the inverted signal of the parity indication signal using the address jump pulse to generate a new parity indication signal;
[0019] a second signal unit connected to the first signal unit, configured to perform logic processing on the parity indication signal and the read / write indication signal to generate a first intermediate signal; and to sample the first intermediate signal based on the address jump pulse to generate a new read / write indication signal;
[0020] a third signal unit connected to the second signal unit, configured to perform logic processing on the parity indication signal, the read / write indication signal and the flip indication signal to generate a second intermediate signal; and to sample the second intermediate signal based on the address jump pulse to generate a new flip indication signal;
[0021] A fourth signal unit is connected to the third signal unit and is configured to perform logical processing on the parity indication signal, the read / write indication signal and the flip indication signal to obtain a third intermediate signal; and to generate the topology indication signal based on the third intermediate signal, the address jump pulse and the preset system clock signal.
[0022] In some embodiments, the state decoding module includes a counting unit and C decoding units, and the number of the intermediate decoding signals is C;
[0023] The counting unit is connected to the first control module and is configured to count the pulses of the topology indication signal to generate a first counting value;
[0024] The jth decoding unit is connected to the counting unit and is configured to control the jth intermediate decoding signal to be in the first state when the first counting value meets the jth decoding condition; and to control the jth intermediate decoding signal to be in the second state when the first counting value does not meet the jth decoding condition; wherein j is an integer greater than or equal to 1 and less than or equal to C; C≤A; the first counting value includes a B-bit sub-parameter, 2B≥A.
[0025] In some embodiments, the second control module includes:
[0026] A first logic unit is configured to perform logic processing on the C intermediate decoded signals and output a first state even signal, a first state odd signal, a second state even signal, and a second state odd signal;
[0027] a second logic unit configured to output one of the first state even signal and the first state odd signal as a first preselected signal based on the parity indication signal; and output one of the second state even signal and the second state odd signal as a second preselected signal based on the parity indication signal;
[0028] The output unit is configured to output the first preselected signal as the first state signal; and, based on the flip indication signal, output one of the second preselected signal and an inverted signal of the second preselected signal as the second state signal.
[0029] In some embodiments, the first logic unit includes:
[0030] a preprocessing unit configured to perform logic processing on the C intermediate decoded signals and output a first selected even signal, a first selected odd signal, a second selected even signal, and a second selected odd signal;
[0031] A selection unit configured to output one of a standard 0 signal and a standard 1 signal as the first state even signal based on the first selection even signal;
[0032] Based on the first selection odd signal, outputting one of the standard 0 signal and the standard 1 signal as the first state odd signal;
[0033] Based on the second selection even signal, outputting one of the standard 0 signal and the standard 1 signal as the second state even signal;
[0034] Based on the second selection odd signal, one of a standard 0 signal and a standard 1 signal is output as the second state odd signal.
[0035] In some embodiments, the first signal unit includes a first trigger: a clock terminal of the first trigger receives the address jump pulse, an input terminal of the first trigger is connected to an inverting output terminal thereof, and a positive output terminal of the first trigger outputs the parity indication signal;
[0036] The second signal unit includes a first XOR gate and a second trigger; the first input end of the first XOR gate receives the parity indication signal, the second input end of the first XOR gate is connected to the positive phase output end of the second trigger, the output end of the first XOR gate outputs the first intermediate signal, the input end of the second trigger receives the first intermediate signal, the clock end of the second trigger receives the address jump pulse, and the positive phase output end of the second trigger outputs the read / write indication signal;
[0037] The third signal unit includes a first AND gate, a second XOR gate and a third flip-flop; the first input end of the first AND gate receives the read / write indication signal, the second input end of the first AND gate receives the parity indication signal, the output end of the first AND gate is connected to the first input end of the second XOR gate, the second input end of the second XOR gate is connected to the positive phase output end of the third flip-flop, the output end of the second XOR gate outputs the second intermediate signal, the input end of the third flip-flop receives the second intermediate signal, the clock end of the third flip-flop receives the address jump pulse, and the positive phase output end of the third flip-flop outputs the flip indication signal;
[0038] The fourth signal unit includes a second AND gate, a third XOR gate, a fourth trigger, a fifth trigger and a fourth XOR gate; the first input end of the second AND gate is connected to the output end of the first AND gate, the second input end of the second AND gate receives the flip indication signal, the output end of the second AND gate is connected to the first input end of the third XOR gate, the second input end of the third XOR gate is connected to the positive phase output end of the fourth trigger, the output end of the third XOR gate outputs the third intermediate signal, the input end of the fourth trigger receives the third intermediate signal, the clock end of the fourth trigger receives the address jump pulse, the positive phase output end of the fourth trigger is connected to the input end of the fifth trigger, the clock end of the fifth trigger receives the preset system clock signal, the positive phase output end of the fifth trigger is connected to the first input end of the fourth XOR gate, the second input end of the fourth XOR gate is connected to the positive phase output end of the fourth trigger, and the output end of the fourth XOR gate outputs the topology indication signal.
[0039] In some embodiments, when 2A=12, B=3, C=5;
[0040] Correspondingly, the counting unit includes a sixth trigger, a fifth XOR gate, a seventh trigger, a third AND gate, a sixth XOR gate and an eighth trigger;
[0041] The clock ends of the sixth flip-flop, the seventh flip-flop and the eighth flip-flop receive the topology indication signal, the input end of the sixth flip-flop is connected to its inverting output end, the positive phase output end of the sixth flip-flop is connected to the first input end of the fifth XOR gate, the second input end of the fifth XOR gate is connected to the positive phase output end of the seventh flip-flop, the output end of the fifth XOR gate is connected to the input end of the seventh flip-flop, the positive phase output end of the seventh flip-flop is connected to the first input end of the third AND gate, the second input end of the third AND gate is connected to the positive phase output end of the sixth flip-flop, the output end of the third AND gate is connected to the first input end of the sixth XOR gate, the second input end of the sixth XOR gate is connected to the positive phase output end of the eighth flip-flop, and the output end of the sixth XOR gate is connected to the input end of the eighth flip-flop; the positive phase output end of the sixth flip-flop outputs the first bit sub-parameter of the first count value, the positive phase output end of the seventh flip-flop outputs the second bit sub-parameter of the first count value, and the positive phase output end of the eighth flip-flop outputs the third bit sub-parameter of the first count value.
[0042] In some embodiments, the pre-processing unit includes a first logic unit, a second logic unit, a third logic unit, and a fourth logic unit;
[0043] The input end of the first logic device receives partial signals of C intermediate decoded signals, and the output end of the first logic device outputs the first selected even signal;
[0044] The input end of the second logic device receives partial signals of C intermediate decoded signals, and the output end of the second logic device outputs the first selected odd signal;
[0045] The input end of the third logic device receives partial signals of C intermediate decoded signals, and the output end of the third logic device outputs the second selected even signal;
[0046] The input end of the fourth logic device receives partial signals of C intermediate decoded signals, and the output end of the fourth logic device outputs the second selected odd signal;
[0047] Wherein, when the intermediate decoding signals are different, the first selected even signal, the first selected odd signal, the second selected even signal and the second selected even signal are not completely the same.
[0048] In some embodiments, the selection unit includes a first selector, a second selector, a third selector, and a fourth selector;
[0049] The first input end of the first selector receives the standard 1 signal, the second input end of the first selector receives the standard 0 signal, the control end of the first selector receives the first selection even signal, and the output end of the first selector outputs the first state even signal;
[0050] The first input terminal of the second selector receives the standard 1 signal, the second input terminal of the second selector receives the standard 0 signal, the control terminal of the second selector receives the first selection odd signal, and the output terminal of the second selector outputs the first state odd signal;
[0051] The first input end of the third selector receives the standard 0 signal, the second input end of the first selector receives the standard 1 signal, the control end of the third selector receives the second selection even signal, and the output end of the third selector outputs the second state even signal;
[0052] The first input end of the fourth selector receives the standard 0 signal, the second input end of the fourth selector receives the standard 1 signal, the control end of the fourth selector receives the second selection odd signal, and the output end of the fourth selector outputs the second state odd signal.
[0053] In some embodiments,
[0054] The second logic unit includes a fifth selector and a sixth selector; the first input end of the fifth selector receives the first state even signal, the second input end of the fifth selector receives the first state odd signal, the control end of the fifth selector receives the odd-even indication signal, and the output end of the fifth selector outputs the first pre-selected signal; the first input end of the sixth selector receives the second state even signal, the second input end of the sixth selector receives the second state odd signal, the control end of the sixth selector receives the odd-even indication signal, and the output end of the sixth selector outputs the second pre-selected signal;
[0055] The output unit includes a buffer, a third NOT gate and a seventh selector; the input end of the buffer receives the first pre-selection signal, and the output end of the buffer outputs the first state signal; the input end of the third NOT gate receives the second pre-selection signal, the output end of the third NOT gate is connected to the first input end of the seventh selector, the second input end of the seventh selector receives the second pre-selection signal, the control end of the seventh selector receives the flip indication signal, and the output end of the seventh selector outputs the second state signal.
[0056] In some embodiments, all reset terminals of the first to eighth triggers receive a start signal; wherein, if the start signal indicates that the test circuit starts to work, the first to eighth triggers all perform a reset operation.
[0057] In a second aspect, an embodiment of the present disclosure provides a memory, comprising a test circuit as described in any one of the first aspect.
[0058] The embodiments of the present disclosure provide a test circuit and a memory, wherein the test circuit can automatically complete the read and write operations of a preset data topology after receiving an address jump pulse, a parity indication signal, a flip indication signal, and a topology indication signal; moreover, the test circuit can change the input data when the odd or even count reaches the highest bit, change the read and write state after the address traversal is completed, and after completing the test of one preset data topology, implement the test of another preset data topology by flipping the test data, and perform loop control until all preset data topology tests are completed. BRIEF DESCRIPTION OF THE DRAWINGS
[0059] Figure 1 A schematic diagram of a data topology provided in an embodiment of the present disclosure;
[0060] Figure 2 A schematic diagram of the structure of a test circuit provided in an embodiment of the present disclosure;
[0061] Figure 3 A schematic diagram of the composition structure of another test circuit provided in an embodiment of the present disclosure;
[0062] Figure 4 A control schematic diagram of a test circuit provided in an embodiment of the present disclosure;
[0063] Figure 5 A signal timing provided by the embodiment of the present disclosure Figure 1 ;
[0064] Figure 6 A signal timing provided by the embodiment of the present disclosure Figure 2 ;
[0065] Figure 7 A schematic diagram of the structure of a first control module provided in an embodiment of the present disclosure;
[0066] Figure 8 A schematic diagram of the structure of a state decoding module provided in an embodiment of the present disclosure;
[0067] Fig. 9 A schematic diagram of the structure of a counting unit provided in an embodiment of the present disclosure;
[0068] Fig.10A schematic diagram of the structure of a decoding unit provided in an embodiment of the present disclosure;
[0069] Fig.11 A schematic diagram of the structure of a second control module provided in an embodiment of the present disclosure;
[0070] Fig.12 A schematic diagram of the structure of a first logic unit provided in an embodiment of the present disclosure;
[0071] Fig.13 A schematic diagram of the structure of a pre-processing unit provided in an embodiment of the present disclosure;
[0072] Fig.14 A structural schematic diagram of a selection unit provided in an embodiment of the present disclosure;
[0073] Fig.15 A schematic diagram of the structure of a second logic unit provided in an embodiment of the present disclosure
[0074] Fig.16 A schematic diagram of the structure of an output unit provided in an embodiment of the present disclosure;
[0075] Fig.17 A schematic diagram of the structure of a memory provided in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0076] The following will be combined with the drawings in the embodiments of the present disclosure to clearly and completely describe the technical solutions in the embodiments of the present disclosure. It is understood that the specific embodiments described herein are only used to explain the relevant application, rather than to limit the application. It should also be noted that, for the convenience of description, only the parts related to the relevant application are shown in the drawings.
[0077] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which the present disclosure belongs. The terms used herein are only for the purpose of describing the embodiments of the present disclosure and are not intended to limit the present disclosure.
[0078] In the following description, reference is made to “some embodiments”, which describe a subset of all possible embodiments, but it will be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.
[0079] It should be pointed out that the terms "first\second\third" involved in the embodiments of the present disclosure are only used to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that "first\second\third" can be interchanged in a specific order or sequence where permitted, so that the embodiments of the present disclosure described here can be implemented in an order other than that illustrated or described here.
[0080] The testable technologies of memory include direct testing, testing with embedded CPU and built-in self-test technology (MBIST). Compared with the other two technologies, MBIST has many advantages. First, it can realize the automation of testability design and automatically implement the general memory test algorithm to achieve the purpose of high test quality and low test cost; second, the MBIST circuit can use the system clock to perform "full speed" testing, thereby covering more generation defects and reducing test time; finally, it can provide self-diagnosis and self-repair functions for each storage unit. In addition, the initialization test vector of MBIST can be performed on very low-cost test equipment. Therefore, from the perspective of high test quality and low test cost, MBIST is the mainstream technology for embedded memory test design.
[0081] For DDR5, according to the Joint Electron Device Engineering Council (JEDEC), MBIST is activated by the mode register MR23:OP[4] and the guard key of 4 groups of MR24, and then the MBIST operation is performed. The self-test time (tSELFTEST) of DDR5 with a storage capacity of 8 / 16 Gigabyte (Gb) does not exceed 9 seconds, and the data topology tested during this period is designed by the designer according to actual needs.
[0082] The currently designed MBIST includes the following when running on the host side: Figure 1 When MBIST receives the enable signal from the host, it will automatically execute Figure 1 The data in two adjacent Data topologies in the 12 data topologies are inverted. For example, for Datatopo2, the data corresponding to each storage unit is the inverted data corresponding to the corresponding storage unit in Datatopo1. It should be understood that Figure 1 The WL on the diagram represents a word line, and the BL represents a bit line. The intersection of a bit line and a corresponding word line is a memory cell, and each memory cell stores "0" or "1".
[0083] That is, see Figure 1 When MBIST receives the enable signal sent by the host, it first uses Datatopo1 and Data topo2 for testing. The specific process is as follows:
[0084] (1) Start counting the even row addresses and write the even data topology in Data topo1 (i.e., 00000000 corresponding to WL0 / WL2WL4 / WL6 in Data topo1) into the even row addresses such as WL0 / WL2WL4 / WL6...
[0085] (2) After counting to the highest bit of the even number, start counting the odd row address and write the odd data topology in Data topo1 (i.e., 10101010 corresponding to WL1 / WL3WL5 / WL76 in Data topo1) into the odd row address such as WL1 / WL3WL5 / WL7…
[0086] (3) After the odd-numbered row address count reaches the highest bit, the read operation begins and the read data is compared with the written data;
[0087] (4) Start counting the even-numbered row addresses and write the even data topology in Data topo2 (i.e., 11111111 corresponding to WL0 / WL2WL4 / WL6 in Data topo2) into the even-numbered row addresses such as WL0 / WL2WL4 / WL6...
[0088] (5) After counting to the highest bit of the even number, start counting the odd row address and write the odd data topology in Data topo2 (i.e., 01010101 corresponding to WL1 / WL3WL5 / WL76 in Data topo2) into the odd row address such as WL1 / WL3WL5 / WL7…
[0089] (6) After the odd-numbered row address is counted to the highest bit, the read operation is started and the read data is compared with the written data, thereby completing the test of Data topo1 and Data topo2.
[0090] Continue to follow the above steps to complete the testing of Data topo3 and Data topo4, the testing of Data topo6 and Datatopo6, the testing of Data topo7 and Data topo8, the testing of Data topo9 and Data topo10, and the testing of Datatopo11 and Data topo12.
[0091] Based on this, the embodiment of the present disclosure provides a test circuit, which can automatically complete the read and write operations of the above 12 Data topo after receiving the enable signal from the host; it can switch to the even row address when the odd row address counts to the highest bit, or count the odd row address when the even row address counts to the highest bit, and change the corresponding input data, and change the read and write state after the row address of one Data topo is traversed, until all Data topo tests are completed. In this way, it can save test time and improve test efficiency.
[0092] In one embodiment of the present disclosure, Figure 2 As shown, it shows a composition structure of a test circuit 10, and the test circuit 10 uses multiple preset data topologies Data topo to perform read and write tests on the storage array; the test circuit 10 includes:
[0093] The first control module 11 is configured to generate and output a parity indication signal, a flip indication signal and a topology indication signal based on a received address jump pulse; wherein the address jump pulse indicates that the count value of the row address for which the target operation has been performed has reached the even highest bit or the odd highest bit, and the target operation refers to a read operation or a write operation;
[0094] The state decoding module 12 is connected to the first control module 11 and is configured to count and decode the topology indication signal to obtain an intermediate decoding signal;
[0095] The second control module 13 is connected to the first control module 11 and the state decoding module 12, and is configured to generate and output a first state signal and a second state signal based on the parity indication signal, the flip indication signal and the intermediate decoding signal;
[0096] The first state signal is used to select one of the first data sequence and the second data sequence as the target data sequence, the second state signal indicates whether each data of the target data sequence is flipped, and the target data sequence or the flipped target data sequence is used to form a preset data topology Data topo.
[0097] The disclosed embodiments relate to a memory built-in self-test circuit design in an integrated circuit design, and more particularly to a state machine design of a 16GbDDR5 built-in self-test circuit when running on a host side. The design is applied to the automatic generation and change of control signals when performing various data topology tests in a 16Gb DDR5 chip, but is not limited to this scope. Other command planning and generation circuits and counting timing control circuits may adopt this design.
[0098] It should be noted that the first state signal and the second state signal jointly determine the type of the data sequence. Specifically, the first state signal has a first state and a second state, the first state corresponds to the first data sequence, and the second state corresponds to the second data sequence. The first data sequence or the second data sequence is selected as the target data sequence for testing according to the state of the first state signal; the second state signal has a third state and a fourth state, when the second state signal is in the third state, the target data sequence remains unchanged, and when the second state signal is in the fourth state, the target data sequence is flipped. In this way, automatic data flipping can be achieved, and the read and write test of Data topo can be completed more efficiently.
[0099] In some embodiments, the preset data topology has A groups, each group of preset data topologies Data topo includes a first data topology and a second data topology, each of the first data topology and the second data topology includes an odd data topology and an even data topology; the odd-even indication signal indicates that the row address of the storage unit corresponding to the target operation is an odd row address or an even row address, and generates the corresponding odd data topology or even data topology; the topology indication signal indicates the group number of the preset data topology corresponding to the target operation; the flip indication signal indicates the first data topology or the second data topology corresponding to the target operation.
[0100] It should also be noted that the parity indication signal will select the odd row address or the even row address for reading operation according to the level state. For example, when the parity indication signal is in the first level state, the target operation is performed on the data array with the even row address in the Data topo; when the target operation is performed on the last even row address in the Data topo, the parity indication signal changes from the first level state to the second level state, and the target operation is continued to be performed on the data array with the odd row address in the Data topo.
[0101] Simply put, the parity indication signal corresponds to the switching between odd data topology and even data topology in the same preset data topology, the flip indication signal corresponds to the switching between the first data topology and the second data topology in the same group of preset data topologies, and the topology indication signal corresponds to the switching between different groups of preset data topology groups.
[0102] See also Figure 1 Since the data of every two Data topo are reversed, two Data topo are taken as a group, for a total of 6 groups of Data topo, that is, A=6.
[0103] In some embodiments, see Figure 4The first control module 11 is further configured to generate and output a read / write indication signal (WR_RD) based on receiving an address jump pulse; wherein the read / write indication signal (WR_RD) indicates a read operation or a write operation.
[0104] It should be noted that the embodiment of the present disclosure adopts a jump addressing (JUMP) method. When the first control module 11 receives an address jump pulse, it indicates that the count value of the odd row address or the even row address in a certain Data topo has reached the highest bit. At this time, the input target data sequence will be changed. When all row addresses of a Data topo are traversed, the read-write state will be changed through the read-write indication signal. In other words, the data sequences of the odd row address and the even row address are different.
[0105] In some embodiments, Figure 3 As shown, the test circuit 10 also includes a test module 14;
[0106] The test module 14 is connected to both the first control module 11 and the second control module 13, and is configured to receive a read / write indication signal, a first state signal, and a second state signal; when the read / write indication signal indicates a write operation, the corresponding Data topo is written to the storage array based on the first state signal and the second state signal; or, when the read / write indication signal indicates a read operation, the data of the storage array is read, and the read data is compared and processed based on the first state signal and the second state signal.
[0107] It should be noted that during the test, the data topo is written into the storage array or the data in the storage array is read according to the read / write indication signal. Specifically, when the read / write indication signal is in the first level state, the corresponding data topo is written into the storage array; when the read / write indication signal is in the second level state, the data in the storage array is read. At the same time, by comparing the written data with the read data, it is possible to determine which data has an error so that it can be processed in a timely manner, thereby improving the test efficiency.
[0108] In some embodiments, see Figures 4 to 6 The first control module 11 is specifically configured to control the level state of the parity indication signal Data_change to flip once every time one address jump pulse EVEN_ODD is received; control the level state of the read / write indication signal WR_RD to flip once every time two address jump pulses EVEN_ODD are received; control the level state of the inversion indication signal INVERT to flip once every time four address jump pulses EVEN_ODD are received; and generate one topology indication signal S_CLK every time eight address jump pulses EVEN_ODD are received.
[0109] It should be noted that Figure 4 When testing the state machine, different signals need to be controlled. <0> is the first preselected signal, DATA <1> is the second preselection signal, the first preselection signal DATA <0> and the second preselect signal DATA <1> decide what data to input to Data topo. <0> The first state signal and the second preselection signal DATA <0> After flipping, it becomes the second state signal. ADDR represents the addressing control signal, and default is the default value of the state machine. From the above description, it can be seen that the addressing methods used in the embodiments of the present disclosure are all jump addressing (JUMP) that distinguishes between odd and even.
[0110] according to Figure 4 The different values of the control signal are Figure 1 The Data topo1 and Data topo2 in the example are used to illustrate the corresponding timing diagram. Figure 5 As shown:
[0111] (1) The flip indication signal = 0 (no flip), the read / write indication signal WR_RD = 0 (write phase), and the parity indication signal Data_change = 0. At this time, the input preselection signal DATA<1:0> is 00, so that the corresponding even data topology is written into the even row address;
[0112] (2) When the flip indication signal = 0 (no flip), the read / write indication signal WR_RD = 0 (write phase), and the parity indication signal Data_change = 1, the input preselection signal DATA<1:0> is 01, thereby writing the corresponding odd data topology into the odd row address; thus writing a complete Data topo;
[0113] (3) Flip indication signal = 0 (no flip), read / write indication signal WR_RD = 1 (read phase), parity indication signal Data_change = 0. At this time, the data of the even row address is read out, and the read data is compared with the even data topology corresponding to the preselection signal DATA<1:0> being 00;
[0114] (4) The flip indication signal = 0 (no flip), the read / write indication signal WR_RD = 1 (read phase), and the parity indication signal Data_change = 1. At this time, the data of the odd row address is read out, and the read data is compared with the odd data topology corresponding to the pre-selected signal DATA<1:0> being 01 to complete the test of the Data topo.
[0115] (5) Flip indication signal = 1 (flip), read / write indication signal WR_RD = 0 (write phase), parity indication signal Data_change = 0. At this time, the input preselection signal DATA<1:0> is 11, so that the corresponding even data topology is written into the even row address;
[0116] (6) When the flip indication signal = 1 (flip), the read / write indication signal WR_RD = 0 (write phase), and the parity indication signal Data_change = 1, the input preselection signal DATA<1:0> is 10, thereby writing the corresponding odd data topology into the odd row address; thus writing a complete Data topo;
[0117] (7) Flip signal = 1 (flip), read / write indication signal WR_RD = 1 (read phase), so as to read out the corresponding data result. At the same time, the two sets of pre-selection signals DATA<1:0> input are 11, and the parity indication signal Data_change = 0. At this time, the data of the even row address is read out, and the read data is compared with the even data topology corresponding to the pre-selection signal DATA<1:0> being 11;
[0118] (4) Flip indication signal = 1 (flip), read / write indication signal WR_RD = 1 (read phase), parity indication signal Data_change = 1. At this time, the data of the odd row address is read out, and the read data is compared with the odd data topology corresponding to the pre-selected signal DATA<1:0> being 10, thus completing the test of the Data topo and also completing the test of this group of Data topo.
[0119] It should be noted that, since the address jump pulse EVEN_ODD indicates that the count value of the row address on which the target operation has been executed has reached the highest even bit or the highest odd bit, once the first control module 11 receives an address jump pulse EVEN_ODD, it indicates that the test circuit 10 has completed counting the even row addresses of Data topo; if the previous parity indication signal Data_change is in the first level state, the parity indication signal Data_change will switch to the second level state at this time, and start to execute the test of the storage unit corresponding to the odd row address.
[0120] It should be noted that when the first control module 11 receives two address jump pulses EVEN_ODD, it means that a certain Data topo has been written, and at this time, the level state of the read-write indication signal switches from the original write operation to the read operation. In other words, when the first control module 11 receives two address jump pulses EVEN_ODD, it means that the write operation on a Datatopo is completed; when the first control module 11 receives four address jump pulses EVEN_ODD, the read operation on the above Datatopo is completed. In other words, when the first control module 11 receives four address jump pulses EVEN_ODD, the test of the Data topo is completed, and the next Data topo needs to be tested. Since the data between two adjacent Data topo (a group of Data topo) are inverted, the flip indication signal INVERT flips the data of the previous Data topo to obtain the next Data topo.
[0121] As mentioned above, when the first control module 11 receives 4 address jump pulses EVEN_ODD, the test of the Data topo is completed. Then, when the first control module 11 receives 8 address jump pulses EVEN_ODD, it means that the test of two adjacent Data topo is completed, and a topology indication signal S_CLK is generated. Figure 6 As shown, every two Datatopos need to control the change of the preselection signal DATA<1:0> once, so add another level of counter after the data inversion signal INVERT, so that it is inverted once every 8 address jump pulses EVEN_ODD (i.e., a group of Data topo), and then generate the topology indication signal S_CLK by XOR after shifting, and count the number of groups of Data topo (every two Data topo is a group). Therefore, a topology indication signal S_CLK indicates that the test of 2 adjacent Data topo is completed. The embodiment of the present disclosure groups the 12 Data topo into two groups. When the test circuit 10 generates 6 topology indication signals S_CLK, it means that the test of all 12 Data topo is completed.
[0122] In this way, splitting the signals to be controlled layer by layer can more conveniently realize the control of the host side and make it easier to adjust.
[0123] In some embodiments, Figure 7 As shown, the first control module 11 includes:
[0124] The first signal unit 111 is configured to sample and process the inverted signal of the parity indication signal Data_change by using the address jump pulse EVEN_ODD to generate a new parity indication signal;
[0125] The second signal unit 112 is connected to the first signal unit 111 and configured to perform logic processing on the parity indication signal Data_change and the read / write indication signal WR_RD to generate a first intermediate signal; and to sample the first intermediate signal based on the address jump pulse EVEN_ODD to generate a new read / write indication signal;
[0126] The third signal unit 113 is connected to the second signal unit 112 and is configured to perform logic processing on the parity indication signal Data_change, the read / write indication signal WR_RD and the flip indication signal INVERT to generate a second intermediate signal; and to sample the second intermediate signal based on the address jump pulse EVEN_ODD to generate a new flip indication signal;
[0127] The fourth signal unit 114 is connected to the third signal unit 113, and is configured to perform logic processing on the parity indication signal Data_change, the read / write indication signal WR_RD and the inversion indication signal INVERT to obtain a third intermediate signal; and generate a topology indication signal S_CLK based on the third intermediate signal, the address jump pulse EVEN_ODD and the preset system clock signal BIST_CLK.
[0128] Specifically, see Figure 7 , the first signal unit 111 includes a first trigger 21: the clock terminal CLK of the first trigger 21 receives the address jump pulse EVEN_ODD, the input terminal of the first trigger 21 is connected to its inverting output terminal, and the positive output terminal of the first trigger 21 outputs the parity indication signal Data_change;
[0129] The second signal unit 112 includes a first XOR gate 22 and a second flip-flop 23; the first input end of the first XOR gate 22 receives the parity indication signal Data_change, the second input end of the first XOR gate 22 is connected to the positive phase output end of the second flip-flop 23, the output end of the first XOR gate 22 outputs the first intermediate signal, the input end of the second flip-flop 23 receives the first intermediate signal, the clock end CLK of the second flip-flop 23 receives the address jump pulse EVEN_ODD, and the positive phase output end of the second flip-flop 23 outputs the read-write indication signal WR_RD;
[0130] The third signal unit 113 includes a first AND gate 24, a second XOR gate 25 and a third flip-flop 26; the first input end of the first AND gate 24 receives the read / write indication signal WR_RD, the second input end of the first AND gate 24 receives the parity indication signal Data_change, the output end of the first AND gate 24 is connected to the first input end of the second XOR gate 25, the second input end of the second XOR gate 25 is connected to the positive phase output end of the third flip-flop 26, the output end of the second XOR gate 25 outputs the second intermediate signal, the input end of the third flip-flop 26 receives the second intermediate signal, the clock end CLK of the third flip-flop 26 receives the address jump pulse EVEN_ODD, and the positive phase output end of the third flip-flop 26 outputs the flip indication signal INVERT;
[0131] The fourth signal unit 114 includes a second AND gate 27, a third XOR gate 28, a fourth flip-flop 29, a fifth flip-flop 30 and a fourth XOR gate 31; the first input end of the second AND gate 27 is connected to the output end of the first AND gate 24, the second input end of the second AND gate 27 receives the flip indication signal INVERT, the output end of the second AND gate 27 is connected to the first input end of the third XOR gate 28, the second input end of the third XOR gate 28 is connected to the positive phase output end of the fourth flip-flop 29, the output end of the third XOR gate 28 outputs the third intermediate signal, and the output end of the fourth flip-flop 29 outputs the third intermediate signal. The input end receives the third intermediate signal, the clock end CLK of the fourth trigger 29 receives the address jump pulse EVEN_ODD, the positive phase output end of the fourth trigger 29 is connected to the input end of the fifth trigger 30, the clock end CLK of the fifth trigger 30 receives the preset system clock signal BIST_CLK, the positive phase output end of the fifth trigger 30 is connected to the first input end of the fourth XOR gate 31, the second input end of the fourth XOR gate 31 is connected to the positive phase output end of the fourth trigger 29, and the output end of the fourth XOR gate 31 outputs the topology indication signal S_CLK.
[0132] It should be noted that the first signal unit 111, the second signal unit 112, the third signal unit 113 and the fourth signal unit 114 together form a synchronous counter, and each signal unit 111 outputs a corresponding indication signal. The first signal unit 111 outputs a parity indication signal Data_change, the second signal unit 112 outputs a read / write indication signal WR_RD, the third signal unit 113 outputs an inversion indication signal INVERT, and the fourth signal unit 114 outputs a topology indication signal S_CLK.
[0133] It should also be noted that the address jump pulse EVEN_ODD and the preset system clock signal BIST_CLK do not both sample the third intermediate signal. The preset system clock signal BIST_CLK samples the output of the previous stage trigger (the fourth trigger 29).
[0134] In some embodiments, Figure 8 As shown, the state decoding module 12 includes a counting unit 121 and C decoding units 122, and the number of intermediate decoding signals is C;
[0135] The counting unit 121 is connected to the first control module 11 and configured to count the pulses of the topology indication signal S_CLK to generate a first counting value;
[0136] The j-th decoding unit 122 is connected to the counting unit 121, and is configured to control the j-th intermediate decoding signal to be in a first state when the first counting value meets the j-th decoding condition; and to control the j-th intermediate decoding signal to be in a second state when the first counting value does not meet the j-th decoding condition; wherein j is an integer greater than or equal to 1 and less than or equal to C; C≤A; the first counting value includes a B-bit sub-parameter, 2B≥A.
[0137] It should be noted that the first count value is the number of topology indication signals S_CLK, so if the first count value includes B as a sub-parameter, B topology indication signals S_CLK are generated. Every two Data topo will generate one topology indication signal S_CLK, so 2B must be greater than or equal to the number of Data topo A to ensure that all Data topo are tested.
[0138] Specifically, Fig. 9 As shown, when 2A=12, B=3, C=5;
[0139] Correspondingly, the counting unit 121 includes a sixth trigger 32, a fifth XOR gate 33, a seventh trigger 34, a third AND gate 35, a sixth XOR gate 36 and an eighth trigger 37;
[0140] The clock terminals CLK of the sixth trigger 32, the seventh trigger 34 and the eighth trigger 37 receive the topology indication signal S_CLK, the input terminal of the sixth trigger 32 is connected to its inverting output terminal, the positive phase output terminal of the sixth trigger 32 is connected to the first input terminal of the fifth XOR gate 33, the second input terminal of the fifth XOR gate 33 is connected to the positive phase output terminal of the seventh trigger 34, the output terminal of the fifth XOR gate 33 is connected to the input terminal of the seventh trigger 34, the positive phase output terminal of the seventh trigger 34 is connected to the first input terminal of the third AND gate 35, the second input terminal of the third AND gate 35 is connected to the positive phase output terminal of the sixth trigger 32, the output terminal of the third AND gate 35 is connected to the first input terminal of the sixth XOR gate 36, the second input terminal of the sixth XOR gate 36 is connected to the positive phase output terminal of the eighth trigger 37, and the output terminal of the sixth XOR gate 36 is connected to the input terminal of the eighth trigger 37; the positive phase output terminal of the sixth trigger 32 outputs the first bit sub-parameter S of the first count value. <0> The positive phase output terminal of the seventh trigger 34 outputs the second bit sub-parameter S of the first count value. <1> The positive phase output terminal of the eighth trigger 37 outputs the third bit sub-parameter S of the first count value. <3> .
[0141] It should be noted that the value of the first count value S<2:0> is also the state of the state machine. The first control module 11 and the counting unit 121 in the embodiment of the present disclosure both use synchronous counters, which have faster counting speed and better clock synchronization. Of course, in other embodiments, asynchronous counters can also be used to implement related functions, which is determined according to circuit design and actual needs.
[0142] In some embodiments, Fig.10 As shown, the j-th decoding unit 122 includes a first NOR gate 38, a first NOT gate 39, a first NAND gate 40 and a second NOT gate 41. The second input terminal of the first NOR gate 38 receives the first bit sub-parameter S of the first count value. <0> The first input terminal of the first NOR gate 38 receives the second bit sub-parameter S of the first count value. <1> The input end of the first NOT gate 39 receives the third bit sub-parameter S of the first count value. <2> The first input terminal of the first NAND gate 40 is connected to the output terminal of the first NOT gate 39, the second input terminal of the first NAND gate 40 is connected to the output terminal of the first NOR gate 38, the output terminal of the first NAND gate 40 is connected to the input terminal of the second NOT gate 41, and the output terminal of the second NOT gate 41 outputs the jth intermediate decoding signal.
[0143] It should be noted that when 2A=12, that is, A=6, the maximum value of the corresponding topology indication signal S_CLK is 6. When B=3, the maximum value of the first count is 8, and the counting range of the counting unit 121 is 000-111. As described above, the topology indication signal S_CLK indicates the group number of the Data topo corresponding to the target operation. Figure 1The 12 Data topos can obtain 6 preset data topology groups, so the first count value can be used to indicate the state of the state machine. The relationship between the state of the state machine and DATA_IN<1:0> is shown in Table 1:
[0144] Table 1
[0145]
[0146] It should be understood that TOPO CNT is the state machine S<2:0>, and S<2:0> is the first count value. Since there are 6 groups of Data topo in the embodiment of the present disclosure, Table 1 lists the 6 states of the state machine S<2:0>. Here DATA_IN <0> It is the first state signal, DATA_IN <1> It is the second state signal. Among them, the first state signal DATA_IN <0> The first preselection signal and the second state signal DATA_IN are <1> It is the second pre-selected signal DATA after flipping <1> .
[0147] The first row in Table 1 is now used as an example for explanation, and the other rows can be understood with reference to the first row.
[0148] The first row is the first group of data topo, which is also the first state of the state machine. When DATA_IN<1:0> is 00 / 01 / 00 / 01, the corresponding Figure 1 Data topo1 in Table 1; the first two 00 / 01 correspond to the write operation of Data topo1, and the second two 00 / 01 correspond to the read operation of Data topo1, so the test of Data topo1 is completed. Then, the high bit of DATA_IN<1:0> is flipped by the flip indication signal INVERT to get 10 / 11 / 10 / 11, which is DATA_IN<1:0> corresponding to Datatopo2; similarly, the first two 10 / 11 correspond to the write operation of Data topo2, and the second two 10 / 11 correspond to the read operation of Data topo2. Therefore, the first row in Table 1 completes the test of Data topo1 and Data topo2. During this period, the automatic flip of Data topo is completed.
[0149] Now, taking the first row in Table 1 as an example, the first state signal DATA_IN <0> and the second state signal DATA_IN <1> A brief explanation of how to get the corresponding Data topo. Figure 4As shown in Table 1, when DATA_IN<1:0> is 00, that is, the first state signal DATA_IN <0> and the second state signal DATA_IN <1> When DATA_IN<1:0> is 01, the corresponding data sequence is 00000000; when DATA_IN<1:0> is 01, that is, the first state signal DATA_IN <0> is 1, the second state signal DATA_IN <1> is 0, the corresponding data sequence is 10101010. Figure 1 , the data topo of the even number data sequence is 00000000 and the odd number data sequence is 10101010 is Data topo1. Similarly, when the first state signal DATA_IN <0> is 0, the second state signal DATA_IN <1> Both are 1, because DATA_IN <1> When 1, DATA_IN <0> The corresponding data sequence needs to be flipped when DATA_IN <0> When DATA_IN<1:0> is 11, the corresponding data sequence is 11111111. <0> and the second state signal DATA_IN <1> is 1, and the corresponding data sequence is 01010101; the Data topo with the even data sequence of 11111111 and the odd data sequence of 01010101 is Data topo2.
[0150] That is, the embodiment of the present disclosure controls the first state signal DATA_IN <0> and the second state signal DATA_IN <0> To control the automatic input and testing of 12 types of Data topo.
[0151] In other words, referring to Table 1, it can be considered that the state machine has 6 states: TOPO CNT0, TOPO CNT1, TOPOCNT2, TOPO CNT3, TOPO CNT4, and TOPO CNT5.
[0152] In one design, it is possible to find (1) DATA_IN <1> =0, DATA_IN <0> =0, the state of the state machine, at this time, it is necessary to determine the states of TOPO CNT0~TOPO CNT5;
[0153] In another design, we can find (1) DATA_IN <1> =0, DATA_IN <0> =1, the state of the state machine, at this time, it is also necessary to determine the states of TOPO CNT0~TOPO CNT5;
[0154] In yet another design, it is possible to find (1) DATA_IN <1> =1, DATA_IN <0> =1, the state of the state machine. At this time, it is also necessary to determine the states of TOPO CNT0~TOPO CNT5.
[0155] In another design, it is possible to find (1) DATA_IN <1> =1, DATA_IN <0> =0, the state of the state machine. At this time, it is also necessary to determine the states of TOPO CNT0, TOPO CNT1, TOPO CNT2, TOPO CNT3, and TOPO CNT5; there is no need to find the state of TOPO CNT4, which can be defined by the inverse of other states.
[0156] Therefore, with the last design, only five states of the state machine need to be found, thus reducing the number of decoding devices.
[0157] Specifically, Fig.10 As shown, find DATA_IN in Table 1 <0> 0 and DATA_IN <1> When it is 1, the state machine is in the state and decoded to generate the intermediate decoding signal DATA0 (indicating whether the state machine is in the TOPO CNT0 state), DATA1 (indicating whether the state machine is in the TOPO CNT1 state), DATA2 (indicating whether the state machine is in the TOPO CNT2 state), DATA3 (indicating whether the state machine is in the TOPO CNT3 state) and DATA5 (indicating whether the state machine is in the TOPO CNT5 state), which is used to subsequently generate the pre-selection signal DATA<1:0>.
[0158] In some embodiments, Figure 11 to Figure 14 As shown, the second control module 13 includes:
[0159] The first logic unit 131 is configured to perform logic processing on the C intermediate decoded signals (DATA0, DATA1, DATA2, DATA3 and DATA5), and output a first state even signal DATA0_EVEN, a first state odd signal DATA0_ODD, a second state even signal DATA1_EVEN and a second state odd signal DATA1_ODD;
[0160] The second logic unit 132 is configured to output one of the first state even signal DATA0_EVEN and the first state odd signal DATA0_ODD as the first pre-selected signal DATA based on the parity indication signal Data_change. <0> and, based on the parity indication signal Data_change, outputting one of the second state even signal DATA1_EVEN and the second state odd signal DATA1_ODD as the second preselected signal DATA <1> ;
[0161] The output unit 133 is configured to output the first preselected signal DATA <0> Output is the first state signal DATA_IN <0> and, based on the flip indication signal INVERT, the second preselected signal DATA <1> One of the two signals, an inverted signal of the second preselected signal, is output as the second state signal DATA_IN <1> .
[0162] For details, see Fig.12 , the first logic unit 131 includes:
[0163] The pre-processing unit 1311 is configured to perform logic processing on the C intermediate decoded signals (DATA0, DATA1, DATA2, DATA3 and DATA5), and output a first selected even signal EVEN_DATA0_EN, a first selected odd signal ODD_DATA0_EN, a second selected even signal EVEN_DATA1_EN and a second selected odd signal ODD_DATA1_EN;
[0164] The selection unit 1312 is configured to output one of the standard 0 signal and the standard 1 signal as the first state even signal DATA0_EVEN based on the first selection even signal EVEN_DATA0_EN;
[0165] Based on the first selection odd signal ODD_DATA0_EN, one of the standard 0 signal and the standard 1 signal is output as the first state odd signal DATA0_ODD;
[0166] Based on the second selection even signal EVEN_DATA1_EN, outputting one of the standard 0 signal and the standard 1 signal as the second state even signal DATA1_EVEN;
[0167] Based on the second selection odd signal ODD_DATA1_EN, one of the standard 0 signal and the standard 1 signal is output as the second state odd signal DATA1_ODD.
[0168] like Fig.13 As shown, the pre-processing unit 1311 includes a first logic unit 42, a second logic unit 43, a third logic unit 44 and a fourth logic unit 45;
[0169] An input terminal of the first logic unit 42 receives partial signals of C intermediate decoded signals, and an output terminal of the first logic unit 42 outputs a first selection even signal EVEN_DATA0_EN;
[0170] The input end of the second logic unit 43 receives partial signals of C intermediate decoded signals, and the output end of the second logic unit 43 outputs the first selection odd signal ODD_DATA0_EN;
[0171] An input terminal of the third logic unit 44 receives partial signals of the C intermediate decoded signals, and an output terminal of the third logic unit 44 outputs a second selection even signal EVEN_DATA1_EN;
[0172] An input terminal of the fourth logic unit 45 receives a partial signal of the C intermediate decoded signals, and an output terminal of the fourth logic unit 45 outputs a second selection odd signal ODD_DATA1_EN;
[0173] When the intermediate decoding signals are different, the first selection even signal EVEN_DATA0_EN, the first selection odd signal ODD_DATA0_EN, the second selection even signal EVEN_DATA1_EN and the second selection even signal ODD_DATA1_EN are not completely the same.
[0174] It should be noted that Fig.13 Taking the example that the first logic device 42, the second logic device 43 and the third logic device 44 are all OR gates and the fourth logic device 45 is two NOT gates, of course, in the specific design, other logic gates or logic circuit combinations can also be used to replace the OR gate.
[0175] It should also be noted that, taking the first selection even signal EVEN_DATA0_EN as an example, it indicates the first state signal DATA_IN when even addressing is performed. <0> is 0, find out the first state signal DATA_IN from the intermediate decoded signals DATA0, DATA1, DATA2, DATA3 and DATA5 <0> The value of 0 can be generated by OR logic to generate the first selected even signal EVEN_DATA0_EN, and the first selected odd signal ODD_DATA0_EN, the second selected even signal EVEN_DATA1_EN and the second selected odd signal ODD_DATA1_EN. Since the first column of DATA_IN<1:0> in Table 1 corresponds to the even data sequence in Data topo, and the second column corresponds to the odd data sequence in Data topo, the subsequent columns are recursive. Take the first and second columns in Table 1 as an example:
[0176] When performing even addressing (column 1 of Table 1), the first state signal DATA_IN is found from the intermediate decoded signals DATA0, DATA1, DATA2, DATA3 and DATA5. <0> The value of 0 is DATA0, DATA1 and DATA3. Through the OR logic, the first selection even signal EVEN_DATA0_EN can be generated; then find the second state signal DATA_IN <1> The value of 1 is DATA2 and DATA5, and the second selection even signal EVEN_DATA1_EN can be generated through OR logic.
[0177] Similarly, when odd addressing is performed (column 2 of Table 1), the first state signal DATA_IN is found from the intermediate decoded signals DATA0, DATA1, DATA2, DATA3 and DATA5. <0> The value of 0 is DATA1, DATA3 and DATA5. Through the OR logic, the first selection odd signal ODD_DATA0_EN can be generated; then find the second state signal DATA_IN <1> The value of 1 is DATA3, and the second selection odd signal ODD_DATA1_EN can be generated by two inversion processes.
[0178] It should be understood that the data written when traversing the odd-numbered row addresses and the even-numbered row addresses are different, and since address addressing is divided into odd and even, it is also necessary to divide the odd and even here. In this way, the addressing method is unified and the control logic is clear.
[0179] Correspondingly, such as Fig.14 As shown, the selection unit 1312 includes a first selector 46, a second selector 47, a third selector 48 and a fourth selector 49;
[0180] The first input terminal of the first selector 46 receives the standard 1 signal, the second input terminal of the first selector 46 receives the standard 0 signal, the control terminal of the first selector 46 receives the first selection even signal EVEN_DATA0_EN, and the output terminal of the first selector 46 outputs the first state even signal DATA0_EVEN;
[0181] The first input terminal of the second selector 47 receives the standard 1 signal, the second input terminal of the second selector 47 receives the standard 0 signal, the control terminal of the second selector 47 receives the first selection odd signal ODD_DATA0_EN, and the output terminal of the second selector 47 outputs the first state odd signal DATA0_ODD;
[0182] The first input terminal of the third selector 48 receives the standard 0 signal, the second input terminal of the first selector 48 receives the standard 1 signal, the control terminal of the third selector 48 receives the second selection even signal DATA1_EVEN, and the output terminal of the third selector 48 outputs the second state even signal DATA1_EVEN;
[0183] The first input terminal of the fourth selector 49 receives the standard 0 signal, the second input terminal of the fourth selector 49 receives the standard 1 signal, the control terminal of the fourth selector 49 receives the second selection odd signal DATA1_ODD, and the output terminal of the fourth selector 49 outputs the second state odd signal DATA1_ODD.
[0184] It should be noted that the values of the first state even signal DATA0_EVEN, the first state odd signal DATA0_ODD, the second state even signal DATA1_EVEN and the second state odd signal DATA1_ODD are selected by using the first selection even signal EVEN_DATA0_EN, the first selection odd signal ODD_DATA0_EN, the second selection even signal DATA1_EVEN and the second selection odd signal DATA1_ODD generated by the processing unit 1311. Exemplarily, when the first selection even signal EVEN_DATA0_EN is 1, the first state even signal DATA0_EVEN takes 0, otherwise it takes 1. The other three can be understood by reference, and will not be repeated here.
[0185] In some embodiments, Fig.15 As shown, the second logic unit 132 includes a fifth selector 50 and a sixth selector 51; the first input end of the fifth selector 50 receives the first state even signal DATA0_EVEN, the second input end of the fifth selector 50 receives the first state odd signal DATA0_ODD, the control end of the fifth selector 50 receives the odd-even indication signal Data_change, and the output end of the fifth selector 50 outputs the first preselection signal DATA <0> The first input terminal of the sixth selector 51 receives the second state even signal DATA1_EVEN, the second input terminal of the sixth selector 51 receives the second state odd signal DATA1_ODD, the control terminal of the sixth selector 51 receives the odd-even indication signal Data_change, and the output terminal of the sixth selector 51 outputs the second preselection signal DATA <1> .
[0186] like Fig.16 As shown, the output unit 133 includes a buffer 52, a third NOT gate 53 and a seventh selector 54; the input end of the buffer 52 receives the first preselection signal DATA <0> , the output terminal of the buffer 52 outputs the first state signal DATA_IN <0> The input terminal of the third NOT gate 53 receives the second preselection signal DATA <1> The output end of the third NOT gate 53 is connected to the first input end of the seventh selector 54, and the second input end of the seventh selector 54 receives the second preselection signal DATA <1> , the control end of the seventh selector 54 receives the inversion indication signal INVERT, and the output end of the seventh selector 54 outputs the second state signal DATA_IN <1> .
[0187] It should be noted that the buffer 52 is composed of two NOT gates, namely, the first preselected signal DATA <0> The first state signal DATA_IN can be obtained by inverting twice. <0> That is, in the embodiment of the present disclosure, the first preselection signal DATA <0> It is the first state signal DATA_IN <0> , the second state signal DATA_IN <1> The second preselect signal DATA <1> The inverted signal.
[0188] At the same time, the odd-even indication signal Data_change can be used to select whether the specific output DATA<1:0> is an odd row address or an even row address, and the inversion indication signal INVERT determines whether DATA<1:0> is an odd row address or an even row address. <1> Whether the value needs to be flipped.
[0189] For the state machine, at the beginning of the test, the state machine S<2:0> is 0, and the decoding unit 122 decodes DATA0 to be 1, and DATA1, DATA2, DATA3 and DATA5 to be 0. Since DATA0 is 1, the first selected even signal EVEN_DATA0_EN obtained by the preprocessing unit 1311 is 1, and the first selected odd signal ODD_DATA0_EN, the second selected even signal EVEN_DATA1_EN and the second selected odd signal ODD_DATA1_EN are all 0. Then, the selection unit 1312 selects the first state even signal DATA0_EVEN to be 0, the first state odd signal DATA0_ODD to be 1, the second state even signal DATA1_EVEN to be 0, and the second state odd signal DATA1_ODD to be 0. At this time, the parity indication signal Data_change and the inversion indication signal INVERT maintain the initialized values, and the first preselected signal DATA <0> is the first state even signal DATA0_EVEN, the second preselected signal DATA <1> is the second state even signal DATA1_EVEN, the second state signal DATA_IN <1> The second preselect signal DATA <1> , no flip occurs, that is, DATA_IN<1:0> is 00; when the even address reaches the maximum value, the parity indication signal Data_change flips, the flip indication signal INVERT remains unchanged, and the first pre-selected signal DATA is selected <0> is the first state odd signal DATA0_ODD, the second preselect signal DATA <1> is the second state odd signal DATA1_ODD, the second state signal DATA_IN <1> The second preselect signal DATA <1> , that is, DATA_IN<1:0> is 01. At this point, the odd-row address and even-row address of a Data topo have been traversed, that is, the full address has been written, and then the full address is read, and the data changes are the same as above. When the read and write operations of a Data topo are completed, the next Data topo will be written and read. At this time, the inversion indication signal INVERT will be flipped, and the other changes remain unchanged, so DATA_IN<1:0> changes to 10 / 11 / 10 / 11; the second Data topo read and write traversal will pass through the first control module 11 and the counting unit 121, so that the topology indication signal S_CLK generates a pulse, so that the state of the state machine changes from 0 to 1, and the corresponding write data will also produce the same change as state 0, and this cycle will be repeated until 6 states, that is, 12 types of Data topo, are traversed.
[0190] In some embodiments, all reset terminals of the first to eighth triggers 21 to 37 receive the start signal Rst; wherein, if the start signal Rst indicates that the test circuit 10 starts to work, the first to eighth triggers 21 to 37 all perform a reset operation.
[0191] In addition, when the first count value counts to 110 (the next state after DATA5), the reset signal is also generated to start the next cycle.
[0192] That is to say, in order to achieve the aforementioned test requirements, the present disclosure provides a test circuit 10, which needs to include: Figure 4 The following functions are shown:
[0193] 1. Control the addressing mode. When MBIST receives the enable signal sent by the host, it will use the jump addressing method and select the data sequence corresponding to the even row address or the data sequence corresponding to the odd row address in Data topo for read and write operations through the parity indication signal Data_change.
[0194] 2. Control the selection of test input data (preselect signal DATA<1:0>). The first preselect signal DATA <0> and the second preselect signal DATA <1> Together they determine the data sequence that is input to the MBIST circuit each time. For example, when the first preselection signal DATA <0> =0, the second preselection signal DATA <1> = 0, the data sequence is 00000000; when the first preselect signal DATA <0> =0, the second preselection signal DATA <1> =1, the data sequence is 11111111; when the first preselect signal DATA <0> =1, second preselection signal DATA <1> =0, the data sequence is 10101010; when the first preselect signal DATA <0> =1, second preselection signal DATA <1> When =1, the data sequence is 01010101.
[0195] 3. Control the read and write (WR_RD) commands. When the MBIST circuit is testing, the data sequence changes every time the odd row address or the even row address reaches the highest bit. Moreover, the read and write states will change each time the row address is traversed (i.e., the read and write operations of one Data topo are completed). In other words, for one Data topo, the write operation (WR) is performed first, and then the read operation (RD) is performed. When the read and write operations in the Data topo are completed, the flip indication signal INVERT will be activated. It should be understood that the flip indication signal INVERT and the second pre-selected signal DATA <1> The invert signal INVERT is different from the invert signal in the previous example. The invert signal INVERT is used to control the input of the next Data topo, while the second preselect signal DATA <1> The invert in is used to control the input in the same Data topo.
[0196] In another embodiment of the present disclosure, Fig.17As shown, a memory 60 provided in an embodiment of the present disclosure is shown, and the memory 60 includes the test circuit 10 described in any one of the aforementioned embodiments.
[0197] The above are only preferred embodiments of the present disclosure and are not intended to limit the protection scope of the present disclosure.
[0198] It should be noted that in the present disclosure, the terms "include", "comprises" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "includes a ..." does not exclude the existence of other identical elements in the process, method, article or device including the element.
[0199] The serial numbers of the above-mentioned embodiments of the present disclosure are only for description and do not represent the advantages or disadvantages of the embodiments.
[0200] The methods disclosed in several method embodiments provided in the present disclosure can be arbitrarily combined without conflict to obtain new method embodiments.
[0201] The features disclosed in several product embodiments provided in the present disclosure can be arbitrarily combined without conflict to obtain new product embodiments.
[0202] The features disclosed in several method or device embodiments provided in the present disclosure may be arbitrarily combined without conflict to obtain new method embodiments or device embodiments.
[0203] The above are only specific embodiments of the present disclosure, but the protection scope of the present disclosure is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present disclosure, which should be included in the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure should be based on the protection scope of the claims.
Claims
1. A test circuit, characterized in that: The test circuit performs a read and write test on the storage array using a plurality of preset data topologies; the test circuit comprises: A first control module is configured to generate and output a parity indication signal, a flip indication signal and a topology indication signal based on a received address jump pulse; wherein the address jump pulse indicates that the count value of the row address of the target operation has reached the even highest bit or the odd highest bit, and the target operation is a read operation or a write operation; A state decoding module, connected to the first control module, configured to count and decode the topology indication signal to obtain an intermediate decoding signal; A second control module, connected to the first control module and the state decoding module, configured to generate and output a first state signal and a second state signal based on the parity indication signal, the flip indication signal and the intermediate decoding signal; The first state signal is used to select one of the first data sequence and the second data sequence as the target data sequence, the second state signal indicates whether each data of the target data sequence is flipped, and the target data sequence or the flipped target data sequence is used to form the preset data topology.
2. The test circuit according to claim 1, characterized in that: The preset data topology has A groups, each group of the preset data topology includes a first data topology and a second data topology, and each of the first data topology and the second data topology includes an odd data topology and an even data topology; The odd-even indication signal indicates that the row address of the storage unit corresponding to the target operation is an odd row address or an even row address, and generates the corresponding odd data topology or the even data topology; The topology indication signal indicates the group number of the preset data topology corresponding to executing the target operation; The flip indication signal indicates whether to execute the first data topology or the second data topology corresponding to the target operation.
3. The test circuit according to claim 2, characterized in that: The first control module is further configured to generate and output a read / write indication signal based on receiving the address jump pulse; The read / write indication signal indicates a read operation or a write operation.
4. The test circuit according to claim 3, characterized in that: The test circuit also includes a test module; The test module is connected to both the first control module and the second control module, and is configured to receive the read / write indication signal, the first status signal, and the second status signal; when the read / write indication signal indicates a write operation, write the corresponding preset data topology to the storage array based on the first status signal and the second status signal; or, when the read / write indication signal indicates a read operation, read the data of the storage array, and compare the read data based on the first status signal and the second status signal.
5. The test circuit according to claim 4, characterized in that: The first control module is specifically configured to control the level state of the parity indication signal to flip once every time one address jump pulse is received; control the level state of the read / write indication signal to flip once every time two address jump pulses are received; control the level state of the flip indication signal to flip once every time four address jump pulses are received; and generate one topology indication signal every time eight address jump pulses are received.
6. The test circuit according to claim 3, characterized in that: The first control module comprises: A first signal unit is configured to sample and process the inverted signal of the parity indication signal using the address jump pulse to generate a new parity indication signal; a second signal unit connected to the first signal unit, configured to perform logic processing on the parity indication signal and the read / write indication signal to generate a first intermediate signal; and to sample the first intermediate signal based on the address jump pulse to generate a new read / write indication signal; a third signal unit connected to the second signal unit, configured to perform logic processing on the parity indication signal, the read / write indication signal and the flip indication signal to generate a second intermediate signal; and to sample the second intermediate signal based on the address jump pulse to generate a new flip indication signal; A fourth signal unit is connected to the third signal unit and is configured to perform logical processing on the parity indication signal, the read / write indication signal and the flip indication signal to obtain a third intermediate signal; and to generate the topology indication signal based on the third intermediate signal, the address jump pulse and the preset system clock signal.
7. The test circuit according to claim 1, characterized in that: The state decoding module includes a counting unit and C decoding units, and the number of the intermediate decoding signals is C; The counting unit is connected to the first control module and is configured to count the pulses of the topology indication signal to generate a first counting value; The j-th decoding unit is connected to the counting unit and is configured to control the j-th intermediate decoding signal to be in the first state when the first counting value meets the j-th decoding condition; and control the j-th intermediate decoding signal to be in the second state when the first counting value does not meet the j-th decoding condition; wherein j is an integer greater than or equal to 1 and less than or equal to C; C≤A; the first counting value includes a B-bit sub-parameter, 2 B ≥A.
8. The test circuit according to claim 7, characterized in that: The second control module includes: A first logic unit is configured to perform logic processing on the C intermediate decoded signals and output a first state even signal, a first state odd signal, a second state even signal, and a second state odd signal; a second logic unit configured to output one of the first state even signal and the first state odd signal as a first preselected signal based on the parity indication signal; and output one of the second state even signal and the second state odd signal as a second preselected signal based on the parity indication signal; The output unit is configured to output the first preselected signal as the first state signal; and, based on the flip indication signal, output one of the second preselected signal and an inverted signal of the second preselected signal as the second state signal.
9. The test circuit according to claim 8, characterized in that: The first logic unit includes: a preprocessing unit configured to perform logic processing on the C intermediate decoded signals and output a first selected even signal, a first selected odd signal, a second selected even signal, and a second selected odd signal; A selection unit configured to output one of a standard 0 signal and a standard 1 signal as the first state even signal based on the first selection even signal; Based on the first selection odd signal, outputting one of the standard 0 signal and the standard 1 signal as the first state odd signal; Based on the second selection even signal, outputting one of the standard 0 signal and the standard 1 signal as the second state even signal; Based on the second selection odd signal, one of a standard 0 signal and a standard 1 signal is output as the second state odd signal.
10. The test circuit according to claim 6, characterized in that: The first signal unit comprises a first trigger: a clock terminal of the first trigger receives the address jump pulse, an input terminal of the first trigger is connected to an inverting output terminal thereof, and a positive output terminal of the first trigger outputs the parity indication signal; The second signal unit includes a first XOR gate and a second trigger; the first input end of the first XOR gate receives the parity indication signal, the second input end of the first XOR gate is connected to the positive phase output end of the second trigger, the output end of the first XOR gate outputs the first intermediate signal, the input end of the second trigger receives the first intermediate signal, the clock end of the second trigger receives the address jump pulse, and the positive phase output end of the second trigger outputs the read / write indication signal; The third signal unit includes a first AND gate, a second XOR gate and a third flip-flop; the first input end of the first AND gate receives the read / write indication signal, the second input end of the first AND gate receives the parity indication signal, the output end of the first AND gate is connected to the first input end of the second XOR gate, the second input end of the second XOR gate is connected to the positive phase output end of the third flip-flop, the output end of the second XOR gate outputs the second intermediate signal, the input end of the third flip-flop receives the second intermediate signal, the clock end of the third flip-flop receives the address jump pulse, and the positive phase output end of the third flip-flop outputs the flip indication signal; The fourth signal unit includes a second AND gate, a third XOR gate, a fourth trigger, a fifth trigger and a fourth XOR gate; the first input end of the second AND gate is connected to the output end of the first AND gate, the second input end of the second AND gate receives the flip indication signal, the output end of the second AND gate is connected to the first input end of the third XOR gate, the second input end of the third XOR gate is connected to the positive phase output end of the fourth trigger, the output end of the third XOR gate outputs the third intermediate signal, the input end of the fourth trigger receives the third intermediate signal, the clock end of the fourth trigger receives the address jump pulse, the positive phase output end of the fourth trigger is connected to the input end of the fifth trigger, the clock end of the fifth trigger receives the preset system clock signal, the positive phase output end of the fifth trigger is connected to the first input end of the fourth XOR gate, the second input end of the fourth XOR gate is connected to the positive phase output end of the fourth trigger, and the output end of the fourth XOR gate outputs the topology indication signal.
11. The test circuit according to claim 7, characterized in that: In the case of 2A=12, B=3, C=5; Correspondingly, the counting unit includes a sixth trigger, a fifth XOR gate, a seventh trigger, a third AND gate, a sixth XOR gate and an eighth trigger; The clock ends of the sixth trigger, the seventh trigger and the eighth trigger receive the topology indication signal, the input end of the sixth trigger is connected to the inverting output end thereof, the positive phase output end of the sixth trigger is connected to the first input end of the fifth XOR gate, the second input end of the fifth XOR gate is connected to the positive phase output end of the seventh trigger, the output end of the fifth XOR gate is connected to the input end of the seventh trigger, the positive phase output end of the seventh trigger is connected to the first input end of the third AND gate, the second input end of the third AND gate is connected to the positive phase output end of the sixth trigger, the output end of the third AND gate is connected to the first input end of the sixth XOR gate, the second input end of the sixth XOR gate is connected to the positive phase output end of the eighth trigger, and the output end of the sixth XOR gate is connected to the input end of the eighth trigger; The positive phase output terminal of the sixth flip-flop outputs the first sub-parameter of the first count value, the positive phase output terminal of the seventh flip-flop outputs the second sub-parameter of the first count value, and the positive phase output terminal of the eighth flip-flop outputs the third sub-parameter of the first count value.
12. The test circuit according to claim 9, characterized in that: The pre-processing unit includes a first logic unit, a second logic unit, a third logic unit and a fourth logic unit; The input end of the first logic device receives partial signals of C intermediate decoded signals, and the output end of the first logic device outputs the first selected even signal; The input end of the second logic device receives partial signals of C intermediate decoded signals, and the output end of the second logic device outputs the first selected odd signal; The input end of the third logic device receives partial signals of C intermediate decoded signals, and the output end of the third logic device outputs the second selected even signal; The input end of the fourth logic device receives partial signals of C intermediate decoded signals, and the output end of the fourth logic device outputs the second selected odd signal; Wherein, when the intermediate decoding signals are different, the first selected even signal, the first selected odd signal, the second selected even signal and the second selected even signal are not completely the same.
13. The test circuit according to claim 9, characterized in that: The selection unit includes a first selector, a second selector, a third selector and a fourth selector; The first input end of the first selector receives the standard 1 signal, the second input end of the first selector receives the standard 0 signal, the control end of the first selector receives the first selection even signal, and the output end of the first selector outputs the first state even signal; The first input terminal of the second selector receives the standard 1 signal, the second input terminal of the second selector receives the standard 0 signal, the control terminal of the second selector receives the first selection odd signal, and the output terminal of the second selector outputs the first state odd signal; The first input terminal of the third selector receives the standard 0 signal, the second input terminal of the first selector receives the standard 1 signal, the control terminal of the third selector receives the second selection even signal, and the output terminal of the third selector outputs the second state even signal; The first input terminal of the fourth selector receives the standard 0 signal, the second input terminal of the fourth selector receives the standard 1 signal, the control terminal of the fourth selector receives the second selection odd signal, and the output terminal of the fourth selector outputs the second state odd signal.
14. The test circuit according to claim 8, characterized in that: The second logic unit includes a fifth selector and a sixth selector; the first input end of the fifth selector receives the first state even signal, the second input end of the fifth selector receives the first state odd signal, the control end of the fifth selector receives the odd-even indication signal, and the output end of the fifth selector outputs the first pre-selected signal; the first input end of the sixth selector receives the second state even signal, the second input end of the sixth selector receives the second state odd signal, the control end of the sixth selector receives the odd-even indication signal, and the output end of the sixth selector outputs the second pre-selected signal; The output unit includes a buffer, a third NOT gate and a seventh selector; the input end of the buffer receives the first pre-selection signal, and the output end of the buffer outputs the first state signal; the input end of the third NOT gate receives the second pre-selection signal, the output end of the third NOT gate is connected to the first input end of the seventh selector, the second input end of the seventh selector receives the second pre-selection signal, the control end of the seventh selector receives the flip indication signal, and the output end of the seventh selector outputs the second state signal.
15. The test circuit according to any one of claims 1 to 14, characterized in that: All reset terminals of the first trigger to the eighth trigger receive a start signal; If the start signal instructs the test circuit to start working, the first trigger to the eighth trigger all perform a reset operation.
16. A memory, characterized in that: Comprising a test circuit as claimed in any one of claims 1 to 15.
Citation Information
Patent Citations
Test method and device of memory array, equipment and storage medium
CN114187955A
Semiconductor storing device with time delay of shorter data transmission
CN1404148A
Error detection in a circuit module
EP1482411A1
Memory integrated circuit chip, its preparation and its testing method
JP1997147597A
Memory device
KR1020180035066A
Cited By
Test waveform generation method and digital board card
CN122525348A
