(19)
(11) EP 0 218 261 A2

(12) EUROPEAN PATENT APPLICATION

(43) Date of publication:
15.04.1987 Bulletin 1987/16

(21) Application number: 86114074.7

(22) Date of filing: 10.10.1986
(51) International Patent Classification (IPC)4G01R 31/28, G06F 11/26
(84) Designated Contracting States:
DE FR GB

(30) Priority: 11.10.1985 JP 224859/85

(71) Applicant: HITACHI, LTD.
Chiyoda-ku, Tokyo 100 (JP)

(72) Inventor:
  • Yamaguchi, Kazuo
    Sagamihara-shi (JP)

(74) Representative: Strehl Schübel-Hopf Groening & Partner 
Maximilianstrasse 54
80538 München
80538 München (DE)


(56) References cited: : 
   
       


    (54) Test pattern generator


    (57) A test pattern generator includes: an algorithmic pattern generator (l), a sequential pattern generator (2), a selector (9, l0, ll, l2) for selecting one of pattern data of an algorithmic pattern and a sequential pattern for use with a concerned pin of an object device to be tested; and a pattern controller (6) for controlling the selecter, whereby data to be supplied to a pin or pin block can be assigned in real time by the pattern controller.




    Description

    BACKGROUND OF THE INVENTION



    [0001] The present invention relates to a test pattern generator, and more particularly to a test pattern generator suitable for testing a complex device having a memory unit and a logical unit.

    [0002] Various complex devices such as LSI devices having both memory units and logical units, multichips and the like have been developed with the help of high integration and high performance of recent LSI devices.

    [0003] Generally, a test of specific functions of complex devices is carried out with a memory tester for a memory unit and with a logic tester for a logic unit. Otherwise, if a memory unit is tested with a logic tester, test patterns for a memory unit are stored beforehand in a pattern memory of the logic tester.

    [0004] A test pattern generator of this type is known, for example, as disclosed in JP-A-55-52967. With this test pattern generator, patterns of two types are selectively generated by subjecting a support memory under the control of microprograms which also control a pattern generator used for producing regular address sequences for a memory unit test, the support memory being used for producing random address sequences for a logic unit test.

    [0005] With this test pattern generator, however, it is difficult to obtain a perfect test result, such as in a consecutive operation/function test of a multiport section of a complex device as shown in Fig. 6 between its memory unit 20 and its logic unit, in a consecutive switching and reading test of multimemory cells, or in other tests. Further, each of a plurality of test patterns must be changed frequently for each pin or for each block of plural pins, so that it is impossible to efficiently perform pin assignment to each test pattern.

    [0006] Another prior art technology changing test pat­terns for each pin of an LSI device in real time is disclosed in "Model GRl8, General Purpose Complex VLSI Test System, Standard Product Description and Specification" by General Semiconductor Test Inc. According to this tech­nology, the problem associated with pin assignment to each test pattern can be solved. However, in this publication, there is not disclosed a particular construction of the test pattern selector for changing sequential pattern data for each pin in real time. Moreover, the pin control table for use in controlling the test pattern selector is a memory array of 4k × 4 bits. Since the pin control table is requried to produce control signals for changing the test pattern data in real time, the amount of data stored in the memory becomes very large. Further, if the data is differ­ent for each pin, it is necessary to prepare a pin control table for each pin, thus resulting in a large system of pin control tables. Apart from the above, there is a tendency nowadays of increasing the number of test pins to reduce test tiem. Thus, the scale of pin control tables becomes very large.

    SUMMARY OF THE INVENTION



    [0007] It is an object of the present invention to eliminate the above problems and provide a compact test pattern generator capable of supplying a plurality of different pattern data to a desired pin or pin block at a desired test cycle.

    [0008] To achieve the above object, the characteristic feature of the present invention resides in that the test pattern generator comprises means for generating an algorithmic pattern; means for generating a sequential pat­tern and said sequential pattern for use with a concerned pin of an object device to be tested; and a pattern control­ler for controlling said selecting means, whereby data to be supplied to a pin or pin block can be assigned in real time by said pattern controller. A specific feature of the present invention resides in that the pattern controller is not constructed using a memory which stores data for the control of said selecting means, but micro control codes are skillfully employed to make the scale of the controller small.

    BRIEF DESCRIPTION OF THE DRAWINGS



    [0009] 

    Fig. l is a block diagram showing the construc­tion of a test pattern generator according to an embodiment of the present invention;

    Fig. 2 is a block diagram showing a detailed construction of the pattern controller;

    Fig. 3 is a schematic diagram illustrating the input/output response of the pattern controller;

    Fig. 4 is a table showing an A/D output signal status of the pattern controller referenced to the address/­data control signal and an input to the outer setting register;

    Fig. 5 is a block diagram showing the entire system wherein the test pattern generator of the invention is used as a test equipment; and

    Fig. 6 shows an example of the configuration of a complex device to which the test pattern generator of the present invention is applicable.


    DESCRIPTION OF THE PREFERRED EMBODIMENTS



    [0010] The preferred embodiment of the present invention will now be described with reference to the accompanying drawings.

    [0011] Referring to Fig. l, reference numeral l denotes an algorithmic pattern generator (hereinafter abbreviated as ALPG) which generates an algorithmic pattern, while reference numeral 2 denotes a sequential pattern generator (hereinafter abbreviated as SQPG) which generates a sequential pattern. SQPG 2 is mainly constructed of a test sequence controller 3 for controlling each pin-module unit l6, an address register provided for each pin-module unit l6, and a pattern memory 5. The test sequence controller 3 gives an address to an address register 4 of the pin-module unit l6 via an address bus c. An output of the address register 4 is supplied to a pattern memory 5 storing a data pattern. The test sequence controller 3 further sends a micro control code to a pattern controller 6 via a bus line d. The pattern controller 6 controls to select a pattern. In this embodiment, the test sequence controller 3 provides micro control codes in order for the pattern controller to output four signals. The first one is a pattern mode generating signal S/A for switching between ALPG l and SQPG 2 in accordance with a pattern combination mode in the direction of pins. The second one is an address/data control signal A/D for selecting an address or data (includ­ing control data) of ALPG l. The third one is an X/Y address control signal X/Y for selecting an X address or Y address of addresses of ALPG l. The fourth one is a hold signal SH for controlling to output a hold pattern of SQPG 2, signal SH being inputted to an address register 4.

    [0012] ALPG l gives an address to an X/Y address register l7 of each pin-module l6 via an address bus a and sends data to a data register l8 via a data bus b. The X/Y address register l7 inputs X address data and Y address data via bus line e, respectively to an X address multiplexer 7 and an Y address multiplexer 8. An externally set value from an outer setting register l3 is inputted to the X address multiplexer to select a desired bit of the X address, while an externally set value from an outer setting register l4 is inputted to the Y address multiplexer to select a desired bit of the Y address. An X address value selected by the X address multiplexer 7 and an Y address value selected by the Y address multiplexer 8 are inputted to an X/Y address multiplexer l0 to which X/Y address control signal X/Y is inputted from the pattern controller 6. The data register l8 sends data to a data multiplexer 9 via a bus line f. An externally set value from an outer setting register l5 is inputted to the data multiplexer 9 to select a desired data bit on the bus line f. Data selected by the data multiplexer 9 and an address signal selected by the X/Y address multiplexer l0 are sent to an address/data multiplexer ll which selects either the data or the address in accordance with address/data control signal A/D from the pattern controller 6 and sends it to a pattern multiplexer l2. The pattern multiplexer l2, which receives a pattern signal from the pattern memory and an address or data signal of ALPG l from the address/data multiplexer ll, selects a pattern in accordance with pattern generating mode signal S/A from the pattern controller 6 and outputs it.

    [0013] The construction of a single pin-module unit l6 is shown in the embodiment of Fig. l, which unit is provided in one-to-one correspondence with each pin or pin block to readily assign each test pattern to a desired pin. However, the type of pattern applied to a pin or pin block is usually different depending on the type of device such as LSI device to be tested, the construction of a pin-module unit may be varied with each pin or pin block.

    [0014] The operation of the test pattern generator of the embodiment will be described with reference to Figs. 2 to 6. In this embodiment performing multipurpose tests, a pin is supplied either with a data pattern, including address and data (including control data) patterns ALPG l and a data pattern read from the pattern memory 5 under control of the sequence controller 3, or with a hold pattern one cycle before the data pattern.

    [0015] A complex device as shown in Fig. 6 differs from a conventional device constructed of a memory unit or a logic unit alone, instead it is constructed in such a manner that a memory unit 20 and a logic unit composed of an arithmetic unit 30 and a shift register 40 operate in mutual association with each other. Therefore, for example, data of data input signal Din is subjected to arithmetic opera­tion with data in the memory unit and the result is written in the memory unit 20. As a result, a read-out memory signal M

    is not necessarily the same as the data input signal Din, which leads to a hardship is generating an expected value pattern if a conventional memory pattern generator ALPG l is used. For this reason, a logic pattern is required for an expected value pattern which is used for comparison with a memory output signal M

    or an output data of the shift register 40.

    [0016] Further, an address input signal A applied to a memory address input is used in part as a signal for set­ting an arithmetic mode of the arithmetic unit 30, and also as a signal for designating an output bit length mode of the shift register 40. Consequently, it becomes necessary to switch the address input signal A between the memory unit pattern and the logic unit pattern, even in such a test mode as an operation test using a path through the memory unit and the arithmetic unit, a consecutive test of the memory and the shift register, or other tests. Further, in a paralle operation test (disturb test) of the memory unit and the shift register, it becomes necessary to generate a memory unit pattern and a logic unit pattern in parallel, which leads to a necessity of selecting in real time either an algorithmic pattern or a sequential pattern for each pin.

    [0017] Pattern selection is controlled by the pattern controller 6 the detail of which will first be described with reference to Fig. 2. In the figure, a microcontrol code generated by the test sequence controller 3 is loaded in a code register 6l. As previously described, in order to output four types of signals from the pattern controller 6, the micro control codes of the code register 6l, together with the outputs from outer setting registers 63 and 64, are inputted to control gates 65 and 66. The outputs of the control gates 65 and 66 control the multiplexers l0, ll and l2 and the address register 4 to select a pattern in real time. The outer setting register 63 is used for designating pattern assignment of ALPG l or SQPG 2 for each corresponging pattern generating mode. The type of pattern selected by the control gate 65, which is inputted with pattern generating mode signals decoded by a decoder and values set by the outer setting register 63, is shown in Fig. 3. In particular, if the bit value of the outer set­ting register 63 is "l", output signal S/A of the control gate 65 becomes "l" to select an algorithmic pattern (hereinafter abbreviated as ALP) only in a pattern generat­ing mode (hereinafter abbreviated as PG mode) corresponding to that bit. Whereas if the bit value of the outer setting register 63 is "0", output signal S/A becomes "0" to select a sequential pattern (hereinafter abbreviated as SQP) only in PG mode corresponding to that bit. Thus, for a repetitive pattern assignemtn of ALP → SQP → ALP → SQP of each test cycle for pin l, bit data "0l0l" = (5) in hexadecimal notation is set in the outer setting register 63 and the PG mode signals mode 0 → mode l → mode 3 → mode 0 are sequentially generated in this order, to thereby perform pattern assignment in real time. In this case, for a repetitive pattern assignment of ALP SQP for respective two test cycles, bit data "00ll" = (3) in hexadecimal notation is set in the outer setting register 63.

    [0018] Address/data control signal A/D of an ALP pattern is shown in Fig. 4 which signal varies with an address data control bit from the code register 6l and two bit data of the outer setting register 64, respectively inputted to the control gate 66. That is, three modes are obtained as address data control signal A/D. The first one is a mode selecting an address of ALPG l during the entire test cycle irrespective of the address/data control bit from the code register 6l. The second one is a mode selecting in real time an address or data for each test cycle, depending upon the address/data control bit from the code register 6l. The third one is a mode selecting data of ALPG l during the entire test cycle irrespective of the address/data control bit from the code register 6l. In more particular, for the first mode the 2⁰ bit of the outer setting register 64 is set at "0" to make the address/data control signal A/D of the control gate 66 as of "0". Thus, the output pattern from the address/data multiplexer ll is changed to an address. For the second mode the 2⁰ bit and 2¹ bit of the outer setting register 64 are set respectively at "l" and "0" so that the value of the address/data control bit per se from the code register 6l is directly outputted as address/data control signal A/D. The value obtained at that time is used to change the output pattern of the address/data multiplexer ll to an address or data. For the third mode both the 2⁰ bit and 2¹ bit of the outer setting register 64 are both set at "l" to make address/data control signal A/D as of "l" and change the output pattern of the address/data multiplexer ll to data.

    [0019] Selection control for an X or Y address of an ALP pattern is executed using an X/Y address control bit exactly in the same manner as selection control for an address or data of an ALP pattern shown in Fig. 4. Hold pattern control for an SQP pattern is also the same as with Fig. 4, wherein signal SH outputted from the control gate 66 inhibits loading an address to the address register 4 to thereby enable outputting from the pattern memory 5 a pattern used one cycle before. It is apparent that in the case of selecting an X/Y address of an ALP pattern, address/­data selecting signal A/D is set to an address, and pattern selecting mode signal S/A is set to an ALP pattern. It is also apparent that in case of outputting a hold pattern of an SQP pattern, besides signal SH, pattern selecting mode signal S/A is set to an SQP pattern.

    [0020] The pattern controller described in the above embodiment has an advantageous effect that the size is reduced about one half of that of a conventional pin control table.

    [0021] Fig. 5 shows the entire arrangement of the test pattern generator of the present invention applied to a test equipment. In the figure, the algorithmic pattern generator l is used for generating a test pattern for a memory unit of a device 300 to be tested. The generator l delivers onto an internal bus l00 a memory address a and b including data to be written in a memory and a memory control signal. The test sequence controller 3 delivers onto the internal bus l00 a memory address c for use in out­putting pattern data for a logic unit and a micro control code d of pin assignment information. Various pattern data and control data on the internal bus l00 are supplied to pin-module units l6a to l6n whose number exceeds at least the number of pins of the test device 300. In each of the pin-module unit l6a to l6n, various pattern assignments are attained in real time independently for each pin. In the pin-module, a waveform shaper (although not shown in Fig. l) for shaping a waveform after pin assignment, is provided. Each of output patterns is supplied to drivers and compa­rators of a pin circuitry 200 at a tester heading portion and thereafter is supplied to the test device 300 as a test pattern. The algorithmic pattern generator l is started under the control of the micro program of the test sequence controller 3 and stops its operation upon reception of a signal from the algorithmic pattern generator l itself.

    [0022] In the above embodiment, the number of combina­tion patterns in the direction of pin is mode four by using the PG mode signal. However, if the number (m bit) of PG mode signals is increased, it is possible to increase the number of combination patterns to 2m. The outer setting registers l3, l4 and l5 select beforehand an optional one bit for each pin-module unit l6a since the X/Y address and data of ALPG l have a specific bit length. Performing such selection in real time may be made by increasing the number of micro control codes of the test sequence controller 3 and by the use of the control gate 66.

    [0023] Further, in the above embodiment, although a pair of ALPG l and the sequence controller 3 has been used for all of the pin-module units l6, plural pairs of ALPG l and the sequence controller may be used if bus selectors and bus distributers are provided to share the pattern supply to the pin-module units.

    [0024] The present invention enables to provide a compact test pattern generator capable of supplying a desired test pattern among a plurality of different patterns to a desired pin or pin block.


    Claims

    1. A test pattern generator comprising:
    means (l) for generating an algorithmic pattern;
    means (2) for generating a sequential pattern;
    means (9, l0, ll, l2) for selecting one of pattern data of said algorithmic pattern and said sequential pattern for use with a concerned pin or pin block of an object device to be tested; and
    a pattern controller (6) for controlling said selecting means, whereby data to be supplied to a pin or pin block can be assigned in real time by said pattern controller.
     
    2. A test pattern generator according to claim l, wherein said sequential test pattern generating means has a test sequence controller (3) for controlling a test sequence, and said pattern controller is controlled in accordance with a micro control code outputted from said test sequence controller.
     
    3. A test pattern generator according to claim l or claim 2, wherein said pattern controller outputs: a pattern generat­ing mode signal S/A which instructs to select either said algorithmic pattern or said sequential pattern; an address/­data control signal A/D which instructs to select either an address or data of said algorithmic pattern; an X/Y address control signal X/Y which instructs to select either an X address or Y address of said algorithmic pattern; and a hold signal SH which controls to output a hold pattern of said sequential pattern.
     
    4. A test pattern generator according to any of the claims l to 3, wherein sequential pattern generating means comprises an address register (4) for inputting an address designating signal from said test sequence controller, and a pattern memory (5) for storing an output of said address register.
     
    5. A test pattern generator according to any of the claims l to 4, wherein said selecting means comprises: an X/Y address multiplexer (l0) for selecting an address signal from said algorithmic pattern generating means; a data multiplexer (9) for selecting a data signal from said algorithmic pattern generating means; an address/data multiplexer (ll) receiving the outputs from said X/Y address multiplexer and said data multiplexer for selecting one of said outputs; and a pattern multiplexer (l2) receiving the outputs from said address/data multiplexer and said sequential pattern generating means for selecting one of the outputs.
     
    6. A test pattern generator according to any of the claims l to 5, wherein said pattern controller comprises: a code register (6l) to which a micro control code is inputted; a decoder (62) to which a pattern generating mode signal outputted from said code register is inputted; a control gate (65, 66) to which an address/data control bit, an X/Y address control bit and a hold control bit respectively outputted from said code register, and the output signal from said decoder, are inputted; and an outer setting register (63, 64) for supplying a set value to said control gate.
     
    7. A test pattern generator comprising:
    means (l) for generating an algorithmic pattern;
    a test sequence controller (3) for generating an address signal and a micro control code which are used for outputting pattern data for a logic unit test; and
    a plurality of pin-module units (l6) provided in correspondence to a plurality of pins for receiving the outputs from said algorithmic pattern generating means and said test sequence controller, said pin-module unit compris­ing means (9, l0, ll, l2) for selecting pattern data of said algorithmic pattern or sequential pattern generated in accordance with the output from said test sequence controller, and a pattern controller (6) for controlling said selecting means in accordance with said micro control code.
     
    8. A test pattern generator according to claim 7, wherein said pattern controller outputs: a pattern generat­ing mode signal S/A which instructs to select either said algorithmic pattern or said sequential pattern; an address/­data control signal A/D which instructs to select either an address or data of said algorithmic pattern; an X/Y address control signal X/Y which instructs to select either an X address or Y address of said algorithmic pattern; and a hold signal SH which controls to output a hold pattern of said sequential pattern.
     
    9. A test pattern generator according to claim 7 or 8, wherein said selecting means comprises: an X/Y address multiplexer (l0) for selecting an address signal from said algorighmic pattern generating means; a data multiplexer (9) for selecting a data signal from said algorithmic pattern generating means; an address/data multiplexer (ll) receiving the outputs from said X/Y address multiplexer and said data multiplexer for selecting one of said outputs; and a pattern multiplexer (l2) receiving the output from said address/data multiplexer and said sequential pattern for selecting said output or said sequential pattern.
     
    l0. A test pattern generator according to any of the claims 7 to 9, wherein said pattern controller comprises: a code register (6l) to which a micro control code is inputted; a decoder (62) to which a pattern generating mode signal outputted from said code register is iuputted; a control gate (65, 66) which an address/data control bit, an X/Y address control bit and a hold control bit respectively outputted from said code register, and the output signal from said decoder are inputted; and an outer setting register (63, 64) for supplying a set value to said control gate.
     




    Drawing