A MEMORY TEST APPARATUS

Abstract: To provide a memory test apparatus enabling to test a high-performance memory having two or more memory functions, the apparatus of the present invention includes a pattern generator (l5) for generating an algorithmic pattern to be inputted to a first memory block (2) having a first memory function of a memory under test (l) having at least two memory functions, an auxiliary pattern generator (l6) for storing an output (7) from the algorithmic pattern generator (l5) and for outputting an expected value (25) to a second memory block (3) having a second memory function of the memory (l) at a preset timing based on the stored output (7), a comparator (l7) for comparing outputs (l0, ll) from the first and second memory blocks (2, 3) with expected values for the memory functions, respectively, and a memory (20) for storing an output (27, 28) from the comparator (l7). Since algorithmic pattern generator (l5) and the auxiliary pattern generator (l6) are included, the present invention has such an effect that even if the first and second memory blocks (2, 3) of the memory under test (l) operate asynchronously, the data transfer function therebetween and the performance related to the operation timing can be tested and that a highly precise memory test apparatus can be provided.

Description: BACKGROUND OF THE INVENTION The present invention relates to a memory test apparatus, and in particular, to a memory test apparatus stuitable to test a high-performance memory having at least two memory functions. Large-scale integration (LSI) memory devices have been developed in various fashions, for example, the memory capacity has been increased to 256 K bits or l M bits, the nibble mode has been introduced for a higher-speed operation, and a two-port configuration has been implemented in a video random access memory (RAM) for an improved performance. Marching and galloping patterns are well known as test patterns for a semiconductor memory. These patterns are generated by use of an algorithmic pattern generator. As shown in FIG. 3, as the memory IC becomes to have a higher performance, two kinds of memory functions are contained in the same chip. A memory unit B configured with a shift register is called a video RAM, which is used to process images. While a great amount of image data is read or written by use of an address 6 of a memory unit A and input/output data 7 and l0, a display data to a cathode-ray tube (CRT) is transferred from the memory unit A via a signal line 4 so as to be read at a high speed synchronized with a display speed of the CRT. During a read operation on the memory unit B, a data access is independently achieved on the memory unit A. Such memory functions require a memory tester to effect an independent test for the memory units A and B and a capability of checking the data transfer function therebetween. That is, when data algorithmically written in the memory unit A is read in column or row units and is transferred to the memory unit (shift register) B so as to sequentially read the data through an output data line, DOB ll, the relationships between the preceding and succeeding data thus read are no longer algorithmic; consequently the prior art tester cannot generate data expected for checking the memory. Moreover, the operation speed of the large-capacity, low-speed memory unit A and that of the small-capacity, high-speed memory unit (register) B is different from each other. In addition, these memory units A and B must be synchronized only when data is transferred therebetween. An apparatus of this kind has been described in "Testing a 3l7 K Bit High Speed Video Memory with a VSLI Test System" (l984 ITC.P., pp. 294-299). In this example, however, a CCD memory is an objective item, and hence the system is not directly related to the present invention. Although a method for testing a video memory has been described, the configuration of the system has not been discussed. In another example of an LSI memory test apparatus described in "Optimizing the Timing Architechture of a Digital LSI Test System", 1983 IEEE Int. Test Conf. paper 8.5, pp. 200-209, an external synchronization function is added to a timing signal generator to test an LSI having an integrated oscillation circuit or a minor cycle is further included in an operation cycle (test cycle) of the test apparatus to test an LSI having a clock demultiplier therein, namely, a minor cycle test cycle generator is provided in a timing generator to increase the test efficiency. In these conventional apparatuses, however, test provisions have not been considered with respect to such LSI's as a dual port memory of a multiprocessor or an image memory in which a plurality of data items are communicated in an asynchronous fashion, and hence these memory units cannot be tested in an actual operating state. In addition, the video memory has been described in "320 Rows x 700 Columns Image Dedicated Serial Inputs/Output Dynamic Memory for TV or VTR Field Memory" (Nikkei Electronics, Feb. 11, 1985); however, the configuration of the host system has not been discussed. Document US-A-4 369 511 discloses a memory test apparatus having means (11) for generating an algorithmic pattern to be inputted to a memory under test (15) and for generating an expected value for the memory. It further comprises a memory (22) for the expected value pattern in which expected value data are prestored in the case where the memory under test is a read-only memory so that it is difficult to generate the expected value data for the memory by a logic operation. Further it comprises means (19) and means (17) for storing an output from said comparator means. With such an apparatus it may be difficult to generate the expected value pattern in synchronism with the read operation, especially when memories having at least two memory functions are tested. SUMMARY OF THE INVENTION It is therefore an object of the present invention to provide a memory test apparatus capable of testing a high-performance memory such as a video RAM. This object is solved in accordance with the features of the main claim, dependent claims are directed to preferred embodiments. To achieve the object, according to the present invention, there is provided a memory test apparatus comprising means for generating an algorithmic pattern to be inputted to a first block (for example, the memory unit A of FIG. 3) of a memory to be tested and for generating an expected value for said first block of the memory, auxiliary pattern generate means for storing an output from said algorithmic pattern generate means and for outputting an expected value to a second block (for example, the memory unit B of FIG. 3) of the memory at a preset timing the preset timing being based on the stored output, means for comparing the outputs from said first and second blocks of the memory with the expected values for the first and second blocks, respectively, and memory means for storing an output from said compare means. A preferred embodiment of the apparatus according to the present invention is further characterized by means for generating a timing cycle corresponding to the algorithm and auxiliary pattern generate means. BRIEF DESCRIPTION OF THE DRAWINGS The present invention will be apparent from the following detailed description taken in conjunction with the accompanying drawings in which: FIG. 1 is a schematic block diagram illustrating the basic configuration of the memory test apparatus according to the present invention; FIG. 2 is a block diagram illustrating the configuration of the auxiliary pattern generate means according to the present invention; FIG. 3 is a schematic diagram illustrating the configuration of a high-performance memory as an example of the memory to be tested. FIG. 4 is a block diagram depicting the configuration of the timing generate means according to the present invention; FIG. 5 is a timing chart depicting the operation of a timing generate means according to the present invention; FIG. 6 is a schematic block diagram showing a configuration of the master timing generator section according to the present invention; FIG. 7 is a schematic block diagram showing the configuration of the slave timing generator section according to the present invention; FIG. 8 is a schematic block diagram showing another configuration of the master timing generator section according to the present invention; and FIG. 9 is a schematic block diagram illustrating another configuration of the timing generate means according to the present invention. DESCRIPTION OF THE PREFERRED EMBODIMENTS Referring to FIG. l, an embodiment of the present invention will be described. FIG. l is a schematic block diagram showing the basic configuration of the present invention. In the following description, a memory under test l is assumed to include a memory unit B having the video RAM function constituted from a shift register (for example, a plurality of store and logical functions and a data transfer function to be independently conducted or to be conducted therebetween are provided). In this embodiment, to control an auxiliary pattern generator l6 and a slave timing generator l4, a pattern generator l5 is so designed to receive a generation completion signal 29 notifying that a series of expected values have been completely generated by the auxiliary pattern generator l6. The operations of the respective sections will be described. The pattern generator l5 is configured, according to the same idea applied to the prior art memory tester, as a function like a master to control the overall operation of the apparatus configuration in the embodiment. According to a timing select signal 3l, a clock A for testing a memory A in the memory under test (MUT) l is inputted from a master timing generator l3; thereafter as a test program is executed, the system determines an address 6, an input data 7, a control signal 5 for the memory A, an expected value (A) 24 to be compared with a data item read from the memory A, a control line 8 for controlling the entire MUT, and an operation timing of the shift register 3. The master timing generator l3 outputs a control signal l05 for initiating or terminating the operation described above. When a data item is written in the memory unit A of the MUT l by the pattern generator l5 and the data is transferred from the memory unit A to the shift register 3 according to the control line 8, then the data is read from the shift register 3. At this read timing the auxiliary pattern generator l6 generates an expected value in synchronism with the read operation. This is naturally controlled by use of the control line 8 to the MUT l, however, a control line dedicated to the control may also be used. Timing, for example, for the read speed is supplied from the slave timing generator l4. Since the shift register 3 of the MUT l is associated with the column or row of the memory unit A and the data is considered to be of a finite length, the completion of shift operation must be determined, which is accomplished by the auxiliary pattern generator l6. That is, the generation completion signal 29 is transmitted to the pattern generator l5 to indicate the completion of a series of shift operations. Consequently, until the generator l5 can concurrently conduct a test on the memory unit A of the MUT l. On the other hand, an output from a control line 9 used as an MUT shift clock is so designed to be automatically stopped by use of a clock counter contained in the slave timing generator l4. A comparator section l7 containing comparators (A) l8 and (B) l9 and a fail memory 20 including fail memory units (A) 2l and (B) 22 are respectively separated because the output from the MUT l or the video RAM is of the two-port configuration having two ports, DOA l0 and DOB ll. The comparator (A) l8 and the fail memory unit (A) 2l are the same as those used in the prior art memory tester corresponding to the memory unit A of the MUT l, whereas the comparator (B) l9 and the fail memory unit (B) 22 are provided to compare the output DOB ll from the shift register 3 of the MUT l. According to a fail memory address (B) 26 is fed from the auxiliary pattern generator l6, a fail result 28 from the comparator (B) l7 is written in the fail memory unit (B) 22. Various control operations such as for writing the initial data in the control memory prepared to control registers in the respective sections are effected by a CPU 23 via a CPU control line 32 connected to the respective sections. FIG. 2 is a schematic block diagram illustrating an embodiment of the auxiliary pattern generator l6 of FIG. l. Since the input/output lines have the same names and function as those of FIG. l, the explanation will be omitted if duplicated. For the address, however, a two-dimensional MUT is usually applicable, the outputs from the pattern generator l6 are represented as X and Y addresses. Accordingly, the fail memory address (B) 26 and the generation completion signal 29 are also represented with X and Y components, respectively. In the video RAM l or MUT of FIG. 3, data of the memory unit A 2 is subjected to a parallel transfer to the shift register in column or row units, and then the data is shifted and outputted in response to a shift clock input (the control line 9 of FIG. l). The auxiliary pattern generator l6 has a memory configuration in which data is continually rewritten so as to be identical to the data of the memory unit A, so that the same data can be immediately outputted by a shift output operation. The pattern memory units l-n operate at a high speed to cope with the shift operation of the MUT l. Each memory unit has a capacity corresponding to the Y address and the number (n) of these memory units is derived according to the X address 6. Preset down counters 39-40 enable the pattern memory to execute a pseudo shift operation only by use of a clock input when the MUT l performs a shift operation. The preset input data items to the counter 39-40 are X and Y addresses 6, respectively and are used to preset the start address for a shift operation. The setting of the start address is achieved by use of the control line 8 of the pattern generator (l5 of FIG. l), and therefore a count-down operation is executed depending on the slave phase signal 9. Multiplexers 37-38 are provided to enable the X and Y addresses to be respectively selected because the memory unit B of the MUT l indicates the outputs from the counters 39-40 in the shift register configuration as shown in this example and an address must be directly specified in a case of an RAM. A decoder 36 decodes the X address 6 or the data from the preset down counter 39 to select one of the pattern memory units l-n. An arbitrary address on the X or Y side is thus fixed by use of the configuration described above, thereby enabling the scan output operation with respect to the remaining side. The fail memory X and Y addresses (B) 26 are outputted from the multiplexers 37 and 38, respectively, and the X and Y components of the generation completion signal 29 are independently delivered. These signals are selected or combined as a control signal in the pattern generator l5 and the slave timing generator l4. The control input to the multiplexer 37 is set by the CPU control 32 according to the internal configuration of the MUT prior to the start of the test. On the other hand, if the read operation for the expected value B astrides address  of the X or Y address; a counter, a scan end address setting register, and a comprator for comparing the data items outputted from the counter and the register, respectively need only be provided in place of the preset down counter, thereby enabling to cope with such a condition. Although the hardware configuration is increased in size, this method can enhance the utilization of the present invention. Although not described in conjunction with the present invention, if the memory unit B has an input function, the processing can be effected by connecting the expected value 25 of FIG. 2 to the pertinent input of the memory B. According to the present embodiment, the following concrete advantages are obtained. (l) All expected value data can be generated only by describing an algorithmic pattern program for the master pattern generator, which unnecessitates the creation of expected value data prior to a test and hence enables a highly flexible memory test free from restrictions of the hardware. (2) Since the pattern memory has a capacity equivalent to the MUT capacity, the test apparatus has a high freedom also for a memory which will appear with a higher function in future. (3) The scanning can be conducted along the column or row direction or the combination thereof, which enables to cope with the MUT having a higher function. Next, a description will be given of an embodiment of the timing generate means unique to the present invention which is shown as the master timing generator l3 and the slave timing generator l4 in FIG. l. FIG. 4 is a block diagram illustrating an embodiment of the timing generate means according to the present invention in which an oscillator l' outputs a basic clock l02 for generating timing signals l03-l05. A master timing generator l3 generates the master test cycle signal l03, the master cycle signal l04, and the slave control signal l05 according to a timing select signal 3l. A slave timing generator l4 is characteristic to the present invention and is activated by the slave control signal l05 to generate an arbitrary number of slave phase signals 9. Referring now to the timing chart of FIG. 5, the overall operation of the embodiment will be described. The master timing generator l3 receives the timing select signal 3l at a rising edge of the master test cycle signal l03. Assume here that the n-th timing select signal, TS(n) is to be received. Based on the received timing select signal TS(n), the master timing generator l3 counts the basic clock l02 to generate the master test cycle signal l03 delayed from TS(n) by one master test cycle and having a cycle of T MR (n) and the master cycle signal l04 delayed by T MD (n) from the start point of the master test cycle signal l03. Moreover, if the slave timing generator l4 is indicated to be started by the timing select signal 3l, TS(n), a pulse at the start point of the master test cycle signal l03 having the cycle of T MR (n) is outputted as the slave control signal l05. The slave timing generator l4 is initiated by the slave control signal l05, and when a preset period of time is elapsed thereafter, a first pulse T SD of the slave phase signal 9 is outputted. After the first pulse is delivered, m-l pulses are outputted with the cycle of T SR . That is, when initiated by the slave control signal l05, the slave timing generator l4 outputs m slave cycle signals 9 with the cycle of T SR . Next, the respective components will be described in detail. FIG. 6 is a schematic diagram illustrating an embodiment of the master timing generator l3 which includes a test cycle counter l00 for generating the master test cycle signal l03, a latch lll for keeping the timing select signal 3l, a test cycle memory l20 storing the setting value of the master test cycle signal l03, a phase counter l30 for generating the master phase signal l04, a phase memory l40 for storing the setting value of the master phase signal l04 to be set to the phase counter l30, and a slave control memory l50 storing information to control whether or not the slave control signal l05 is to be generated. In this embodiment, when the test cycle counter l00 counts the basic clock l02 and generates a master test cycle signal l03, the timing select signal 3l is fetched into the latch lll at the rising edge of the cycle signal l03. The latched timing select signal ll0 is outputted as an address for accessing the test cycle memory l20, the phase memory l40, and the slave control memory l50, and the setting value T MR (n) of the master test cycle signal l03 delayed by one master test cycle, the setting value T MD (n) of the master phase signal l04, and the control data a of the slave control signal l05 are read. Among these data items, the setting value T MR (n) and T MD (n) are preset to the test cycle counter l00 and the phase counter l30, respectively by use of the master test cycle signal l03. Consequently, the test cycle counter l00 counts the basic clock l02 according to the setting value T MR (n) and then outputs the master test cycle signal l03. Similarly, the phase counter l30 also counts the basic clock l02 according to the setting value T MD (n) and then outputs the master phase cycle signal l04. On the other hand, the control data a is set to the slave control memory l50 in advance so that if the inputted select signal 3l indicates to output the slave phase signal 9, the control data a becomes to be l; otherwise, the control data a become to be . As a consequence, when outputting the slave phase signal 9, the master test cycle signal l03 is outputted as a salve control signal l05 via an AND gate l60. The operation described above is repeatedly effected by the master timing generator l3, which thereby generates the master test cycle signal l03, the master phase signal l04, and the slave control signal l05 according to the indication of the timing select signal 3l. FIG. 7 is a schematic block diagram illustrating an embodiment of the slave timing generator l4 comprising a phase counter 200 for generating the slave phase signal 9, an AND gate 2l0, an OR gate 220, a delay register 230 for storing a delay time T SD indicating a delay from the slave control signal l05 to the first pulse of the slave phase signal 9, a cycle register 240 for storing the cycle setting value T SR after the first pulse of the slave phase signal 9, a multiplexer 250 for selecting the delay T SD or the cycle setting value T SR and for outputting the selected data to the phase counter 200, a number register 270 for storing the number of slave phase signals 9, a number counter 280 for controlling the number of the generated slave phase signals 9, a flip-flop 260 for controlling the multiplexer 250, an OR gate 290, and a delay element 300. In this configuration, the slave timing generator l4 is activated by the slave control signal l05. That is, when the slave control signal l05 is inputted, the flip-flop 260 is set and the multiplexer 250 outputs the delay T SD stored in the delay register 230 to the phase counter 200. The delay T SD is supplied via the OR gate 220 to a PR terminal of the phase counter 200 continues counting the basic clock until the counted value reaches the preset value. When the counting is completed, the first pulse of the slave phase signal 9 is outputted via the AND gate 2l0. Concurrently, when the slave control signal l05 is inputted to the PR terminal of the number counter 280, the number of slave phase signals, m is preset to the number counter 280. Thereafter, the slave phase signal 9 is counted up to the number m , and then the AND gate 2l0 is closed to control the number of the generated slave phase signals 9. On the other hand, the flip-flop 260 is rest by the first output pulse of the slave phase signal 9 and the multiplexer 250 outputs the content T SR of the cycle register 240 to the phase counter 200. At the same time, the first output pulse is applied via the OR gate 220 to the PR terminal of the phase counter 200 and the content T SR of the cycle register 240 is preset to the phase counter 200. The phase counter 200 counts the basic clock l02 up to the preset value T SR , and when the counting is finished, the second output pulse of the slave phase signal 9 is outputted. The third and subsequent output pulses are generated in the same fashion until the AND gate 2l0 is closed. According to the embodiment as described above, a timing signal having a cycle different from the master test cycle can be generated beginning from a certain point of the master test cycle, which facilitates the test of devices such as a dual port memory. This system, however, cannot cope with a case where a plurality of slave timing signals are necessary. For example, if a memory including two or more memory units B shown in the high-performance memory of FIG. 3 is to be tested, the number of auxiliary pattern generate means required for the test must be identical to that of the memory units B, namely, the slave phase signals are required to be outputted to the auxiliary pattern generate means, respectively. FIGs. 8-9 are schematic diagrams showing another embodiment which solves the problem. That is, a master timing generator l30 of this embodiment is configured as shown in FIG. 8. The capacitor of a slave control memory l50a is increased and a plurality of AND gates are provided as compared with the master timing generator l3 of FIG. 6. Assume that the slave memory l50a stores information indicating to activate one of the slave timing generators l4a-l4f. When the content is read by use of the select signal 3l, one of the slave control signals l05a-l05c associated with the slave timing generator to be activated is turned on. In the configuration of FIG. 9, one of the slave timing generator l4a-l4f (each configured as shown in FIG. 7) corresponding to the slave control signal thus turned on is activated, thereby obtaining the necessary number of test signals. It should be noted that the number of the slave control signals l05a-l05c is here three and each slave control signal is assumed to activate two slave timing generators. Although only one master phase signal l04 is obtained from the master timing generator l3 in the embodiments for the simplification of description, a plurality of master phase signals are used in ordinary cases, which can be however easily implemented without imposing any restriction on the present invention. As described hereabove, the memory test apparatus of the present invention has such an effect that a memory having a higher function can be tested.

Claims: A memory test apparatus comprising: means (15) for generating an algorithmic pattern to be inputted to a first block (2) of a memory under test (1) and for generating an expected value (24) for said first block of the memory; auxiliary pattern generate means (16) for storing an output from said algorithmic pattern generate means (15) and for outputting an expected value for a second block (3) of the memory (1) at a preset timing, the preset timing being based on the stored output; means (17) for comparing outputs from said first and second blocks (2, 3) of the memory (1) with said expected values for said first and second blocks (2, 3), respectively; and memory means (20) for storing an output from said compare means (17). A memory test apparatus according to claim 1, further comprising master timing generate means (13) for outputting a clock (13, 14) used to test said first block (2) to said algorithmic pattern generate means (15); and slave timing generate means (14) for outputting a slave phase signal (9) to test said second block (3) to said auxiliary pattern generate means (16). A memory test apparatus according to claim 1 or 2, wherein said second block (3) of the memory (1) is a shift register. A memory test apparatus according to claim 1 or 2, wherein said auxiliary pattern generate means (16) receives an address signal and an input data outputted from said algorithmic pattern generate means (15) and includes a plurality of pattern memory units (33-35) for storing the input data. A memory test apparatus according to claim 4, wherein said address signal comprises an X address signal and a Y address signal (6). A memory test apparatus according to claim 1 or 2, wherein said auxiliary pattern generate means (16) receives an address signal and an input data outputted from said algorithmic pattern generate means (15), outputs a fail memory address signal (26) to a memory (20) in which the output from said compare means (17) is stored, and outputs a generation completion signal (29) indicating a completion of generation of a series of expected values for said second block (3) to said algorithmic pattern generate means (15). A memory test apparatus according to claim 2, wherein said master timing generate means (13) comprises: a test cycle counter (100) and a phase counter (130) each for receiving a basic clock (102) from an oscillator (1) and a latch (111) for receiving a timing select signal (31) outputted from said algorithmic pattern generate means (15). A memory test means according to claim 2, wherein said slave timing generate means (14) comprises: a phase counter (130) for receiving a basic clock (102) from an oscillator (1') and an OR gate (220) and a flip-flop circuit (260) each for receiving a slave control signal (105) from said master timing generate means (13). A memory test apparatus according to claim 2, further comprising at least a second slave timing generate means (14a-14f) in addition to said slave timing generate means (14) wherein: slave control signals (105a-105c) from said master timing generate means (13, 13a) are inputted to said slave timing generate means (14) and said at least a second slave timing generate means (14a-14b).

Inventors: HAYASHI, YOSHIHIKO, KAWAGUCHI, IKUO
Applicants: HITACHI, LTD.
Application year: 1986
Main classification: G11C29
IPC codes: G11C29