A PROCESSING PULSE CONTROL CIRCUIT

Abstract: A pulse control circuit (200) for use in treating in­ determinate signature increments in an apparatus pro­ ducing Random Pattern Testing (RPT) signature analysis of digital circuits. A circuit to control clock pulses to processing devices is provided. The circuit in­ cludes a counter (210) to produce a count correspond­ ing to the number of clock pulses received, and also a memory (240) which stores clock count values where indeterminate signature increments will be encoun­ tered. A comparator (230) compares the actual clock count values with the stored clock count values to produce a control signal. In response to this control signal, clock pulses are normally allowed to pass to a processing device during clock pulse counts at which determinate signature increments are encountered, but are blocked where indeterminate signature increments are encountered.

Description: The present invention relates to a pulse control circuit for use in devices performing signature analysis of digital circuits. Parallel with the recent exponential growth in the use of Large Scale Integrated (LSI) digital circuits has come the development of a number of different approaches directed toward testing for the correct operation of these digital circuits. U. S. Pat. No. 4,441,074, issued to Bockett-Pugh et al, discloses a digital circuit tester for performing signature analysis, whereby faults in the signature analysis can be exactly located and recorded for subsequent inspection. U. S. Pat. No. 4,510,572, issued to Reece et al, discloses an entire complex digital system analyzer wherein the data signature at different nodes in a device under test can be tested. Other examples of different prior art approaches include: U. S. Pat. No. 4,513,418 issued to Bardell, Jr.; U. S. Pat. No. 4,534,028 issued to Trischler; and U. S. Pat. No. 4,357,703 issued to Van Brunt. The general test approach to which the present invention is directed is that of signature analysis of a device in response to a digital test pattern. A description of a simplified form of such a signature analysis system follows. In the simplified signature analysis approach shown in Fig. 1A, a clock pulse is applied along lines 10 to a test pattern generator 20. A graph of the clock pulses applied to the device along lines 10 is shown in Fig. 1D. The test pattern generator 20 outputs a digital test pattern to be inputted to a device under test (DUT), to facilitate signature analysis of that device. The test pattern is outputted along lines 30, 31, 32 ... 30+N, and is in the form of binary logic values (i.e. 1's and 0's). The number of bits in the test pattern outputted per clock pulse corresponds to the number of bits processed by the device under test. Every time a clock pulse is received along lines 10, a test pattern increment is outputted as indicated in Fig. 1B. The overall sequence of these test pattern increments corresponds to the test pattern. The test pattern increments outputted along the lines 30, 31, 32, ... 30+N are fed to the inputs of a device under test (DUT) 40. The clock pulses are also fed to the device under test 40 along lines 10. Upon receipt of the next clock pulse along lines 10, the device under test 40 inputs the test pattern increment available at its inputs. The test pattern increment is then processed by the device under test 40 in synchronization with the clock pulses received along lines 10, and a signature pattern increment is generated in response thereto. The signature pattern increment outputted along the signature pattern bit lines 50, 51, 52... 50+N is also of the form of logical 1's and 0's as indicated in Fig. 1C. The number of bits in a signature pattern increment is unique to each type of device 40, and may vary from one bit to eight bits, or more. Several aspects should be noted about Fig. 1C. First, the clock pulse counts D, D+1, D+2, etc. in Fig. 1C correspond to the clock pulse counts 1, 2, 3, etc. in Fig. 1B. D is the delay time which corresponds to the number of clock pulses required for the first signature pattern increment to emerge from the device under test 40. This delay occurs because it takes several clock pulses for the test pattern increment to be inputted to the device under test 40, and then it may take several more clock pulses for the device under test 40 to process the test pattern increment and output the signature pattern increment. The signature pattern increments outputted by the device 40 along signature pattern bit lines 50, 51, 52 ... 50+N are fed to the inputs of a signature recording device 60 which also has a clock input fed by lines 10. In this prior art device shown in Fig. 1A, the recording pulses applied to the signature recording device 60 correspond to the clock pulses applied to the device 40 along lines 10. There is a one-to-one correspondence between the clock pulses shown in Fig. 1D and the recording pulses shown in Fig. 1E. Upon receipt of each clock pulse along lines 10, the signature recording device 60 records all signature pattern increments available at its inputs. The signature recording device 60 may be of a Multiple Input Shift Register (MISR) type construction, or any other suitable construction which facilitates the recording of the signature pattern increments. Once recorded in the signature recording device 60, the entire signature pattern of the device under test 40 is compared to the signature pattern of a known good device. If the signatures are found to match, the device under test 40 is considered a good device. If the signatures differ, the device under test 40 is considered defective. In the past, the digital test pattern was a unique series of digital inputs which was especially formulated to correspond to completely test a particular type of device. This approach has been found very expensive and time consuming in this age of Very Large Scale Integrated Circuits (VLSIC), because the digital test pattern for a VLSIC often encompasses a series of millions of digital inputs which must be formulated and, then, supplied to the testing site to be input to the test pattern generator 20. As a result, there has been a trend in the semiconductor testing industry toward conducting Random Pattern Testing (RPT) of VLSIC devices. In this approach, a pseudo-random digital pattern is used as a test pattern in testing VLSIC devices. The testing pattern is described as pseudo-random because the pattern used is actually known, and is permanently stored in the testing equipment to be generically applied in the testing of all types of VLSIC devices. Although the RPT testing approach is advantageous in that a unique testing pattern need not be formulated and input for each type of device to be tested, there is a tradeoff with corresponding disadvantages. The major disadvantage is that the pseudo-random test pattern may not be an ideal testing pattern to test a particular type of VLSIC device. One result which often occurs is that many signature pattern increments may be worthless for signature analysis because they represent "indeterminate" signature increments. An "indeterminate" signature increment, as opposed to a "determinate" signature increment, will now be further explained with reference to Figure 1C. A signature pattern increment of a device under test 40 is "determinate" when the output signature pattern increment for a given test pattern increment would be stable if repeatedly tested. In Fig. 1C, for example, clock pulse counts D, D+2 and D+3 all have normal determinate signature pattern increments, and are represented by 1's and 0's along the signature pattern bit lines 50, 51, 52 ... 50+N. In contrast, a signature pattern increment of a device under test 40 is "indeterminate" when the output signature pattern increment for a given test pattern increment would be unstable (i.e.unpredictable) if repeatedly tested. A term often used synonomously for "indeterminate signature pattern increment" is "X-state". Fig. 1C also includes indeterminate signature pattern bits (indicated by *'s) along the signature pattern bit lines 50, 51 and 51, 50+N for clock pulse counts D+1 and D+4, respectively. Thus, the signature pattern increments at clock pulse counts D+1 and D+4 represent counts where indeterminate signature pattern increments will occur. The above described signature analysis system of Fig. 1A has been found disadvantageous in that indeterminate signature pattern increments, which are useless in signature comparison, are also recorded by the signature recording device 60. Therefore, such a signature analysis system is indeterminate in terms of device signature recording. One prior art device which attempts to overcome this inefficiency is that disclosed by McMahon in U.S. Pat. 3,740,646, and it will be described with reference to Fig. 2A of the present application. Elements with functions matching those shown in Fig. 1A are given the same reference numerals. Figs. 2B and 2C exactly correspond to Figs. 1A and 1B. Turning now to Fig. 2A, there is shown a signature analysis system which is similar to that in Fig. 1A, with additional elements being shown within the dashed area 70. A clock line 80 receives the clock pulses along lines 10 and applies these pulses to the count input of an increment counter 90. The clock pulses applied to the device 40 via lines 10 and to the increment counter via line 80 are shown in Fig. 2D which exactly corresponds to Fig. 1D. Increment counter 90 produces a count which corresponds to the number of clock pulses which has been received along clock line 80. The count output from increment counter 90 is applied along lines 100 to the address inputs of a memory 110 to address a memory location corresponding to the count output. The contents at this memory location are outputted as 1's and 0's bits on lines 120, 121, 122 ... 120+N. As will become clear in the discussion to follow, both the number of memory 110 output bits and the number of bit lines 120, 121, 122 ... 120+N must exactly match the number of signature pattern bit lines 50, 51, 52 ... 50+N. The output bits on lines 120, 121, 122 ... 120+N are applied to the control inputs of gates 130, 131, 132 ... 130+N, respectively. Thus, the memory bits of 1's and 0's in the memory 110 are used to control the gating action of the gates 130, 131, 132 ... 130+N. Gates 130, 131, 132 ... 130+N, in turn, receive as inputs the bits of the signature pattern increments on the signature pattern bit lines 50, 51, 52 ... 50+N, respectively. If the appropriate control bit has been applied to a respective gate 130, 131, 132 ... or 130+N, the bit of the signature pattern increment will be allowed to pass through the gate. The chart of Fig. 2F shows examples of the gate outputs which are applied to parallel adder 140 along lines 150, 151, 152, ...150+N. Note that the symbol "-" indicates an indeterminate signature pattern bit which has not been allowed to pass through a gate 130, 131, 132, ... or 130+N. An example is shown in Fig. 2F for the gate output line 150 at the clock pulse count D+1 (directly corresponding to the indeterminate signature pattern bit at line 50 and clock pulse count D+1 in Fig. 2C). As shown in Fig. 2A, the parallel adder 140 adds the number of logical 1 bits received during a signature pattern increment, and this signature increment bit total is applied via lines 160 to the inputs of a signature recording device 60. As was the case for the device described with respect to Fig. 1A, the signature recording device 60 in Fig. 2A also receives recording pulses (Fig. 2E) which exactly correspond to the clock pulse applied via lines 10 (Fig. 2D). Upon receipt of a recording pulse, the signature recording device 60 records any signature increment bit total available at its input. Fig. 2G is a chart showing examples of the recorded signature increment bit totals corresponding to the gate outputs shown in Fig. 2F. Note that indeterminate signature pattern bits are effectively blocked from being received by the parallel adder 140, and are therefore ignored in arriving at the recorded signature increment bit totals. Thus, the way in which this prior art device addresses the indeterminate signature pattern problem is to use the gates 130, 131, 132 ... 130+N to prevent any indeterminate signature pattern bits from reaching the parallel adder 140 and, thus, from being included in the increment total. Although this approach addresses the indeterminate signature increment problem to avoid faulty signature recording, it also has been found disadvantageous in that the treating of individual indeterminate signature bits requires complicated construction and programming. In regard to the programming, note that a control pattern increment must be provided to control the gating action of the gates 130, 131, 131, ... 130+N for each signature pattern increment. This is expensive and time consuming, because a control pattern must be formulated, possibly for millions of signature pattern increments, and then input into the gate control memory 110. As a result of the complicated construction and programming, many signature analysis users have opted to ignore this approach and, instead, to utilize the cheaper, but still disadvantageous, approach which was described with reference to Figure 1A. From US-A- 4 340 857 a device for testing digital electronic circuits using built-in logic block observers is known. It comprises a first built-in logic block observer for generating a pseudo-random test pattern, a second built-in logic block observer for analyzing a parallel-input signature, a decoder and at least one status indicator for indicating the status of a circuit under test. In operation of this known testing device the circuit to be tested is placed in the test mode. The first built-in logic block observer generates a pseudo-random test pattern to stimulate the circuit. The second built-in logic block observer receives the response data or signature from the circuit under test via a parallel-data bus and stores these data. The response data are then decoded by the decoder to verify the correctness of the performance of the circuit under test. The status indicator gives a fault-free/faulty status signal concerning the status of the circuit under test. - This known solution follows different principles and does not solve the problems that are subject of the present invention. Consequently, there exists a need for an improved approach in dealing with indeterminate signature pattern increments in signature analysis testing of digital devices. More specifically, there exists a need for improvements which are neither complicated nor expensive in construction or programming. The present invention provides a unique method and device for satisfying the aforementioned needs. More specifically, the present invention addresses the indeterminate signature increment problem by using a control pattern which provides the clock count values at which it is known that an indeterminate signature increment will occur. Rather than attempting to control a plurality of gates to mask out individual bits, the present invention simply inhibits the recording or processing clock pulse during clock count values where an indeterminate increment occurs. This result is accomplished by using a comparator to compare the sequential clock count values of the control pattern to the actual clock count, and inhibiting the clock pulses when a match occurs. Since a single recording pulse is controlled, rather than a plurality of gates, the method, circuitry and programming needed are less complicated, less expensive and easily implemented. It is, therefore, an important object of this invention to provide a simple and inexpensive method for treating the indeterminate signature pattern increments in an RPT signature testing system. Another object of this invention is to provide a device of simple and inexpensive construction for treating the indeterminate signature pattern increments in an RPT signature testing system. A further object of this invention is to provide a method to treat indeterminate signature pattern increments, wherein the programming to implement the method is simple and inexpensive. An additional object is to provide a device to treat indeterminate signature pattern increments, wherein the required programming is simple and inexpensive to implement. Still another object of the present invention is to provide control over a single pulse rather than over individual signature pattern bits. These and other objects and advantages of the invention will become more fully apparent from the following description made in connection with the accompanying drawings, wherein: Fig. 1A is a simplified circuit diagram of a prior art device which produces signature analysis of devices under test. Fig. 1B is a chart showing examples of the test pattern increments used in the device shown in Fig. 1A. Fig. 1C is a chart showing examples of signature pattern increments produced by the device under test shown in Fig. 1A. Fig. 1D is a diagram of the clock pulses applied to the device described in Fig. 1A. Fig. 1E is a diagram of the clock pulses applied to the signature recording device in the device described in Fig. 1A. Fig. 2A is a simplified circuit diagram of prior art signature analysis device which treats individual indeterminate signature pattern bits. Fig. 2B is a chart showing examples of the test pattern increments used in the device shown in Fig. 2A. Fig. 2C is a chart showing examples of signature pattern increments produced by the device under test shown in Fig. 2A. Fig. 2D is a graph showing the clock pulses applied to the device shown in Fig. 2A. Fig. 2E is a graph showing the recording pulses applied to the signature recording device in the device shown in Fig. 2A. Fig. 2F is a chart showing examples of the gate outputs of the device shown in Fig. 2A. Fig. 2G is a chart showing examples of the recorded signature bit totals produced by the device shown in Fig. 2A. Fig. 3A is a simplified circuit diagram of a signature analysis device utilizing a preferred embodiment of the present invention. Fig. 3B is a chart showing examples of test pattern increments used in the device shown in Fig. 3A. Fig. 3C is a chart showing examples of the signature pattern increments produced by the device under test shown in Fig. 3A. Fig. 3D is a graph showing the clock pulses applied to the device shown in Fig. 3A. Fig. 3E is a graph showing the recording pulses applied to the signature recording device in the device shown in Fig. 3A. Fig. 3F is a chart showing an examples of the signature pattern increments recorded by the device shown in Fig. 3A. Fig. 4 is a circuit diagram of a circuit analysis device utilizing an alternative preferred embodiment of the present invention. Fig.3A shows a simplified circuit diagram of a signature analysis device utilizing a preferred embodiment of the present invention. Again, circuit elements having functions similar to circuit elements in Fig. 1A and 2A have been assigned the same reference numerals. Before turning to a detailed description of the preferred embodiment shown in Fig. 3A, it should be mentioned that Figs. 3B, 3C and 3D correspond, respectively, to the test pattern increments, signature pattern increments, and the clock pulses encountered in the Fig. 3A device. These figures correspond exactly to Figs. 1B, 1C and 1D, and to Figs. 2B, 2C, and 2D as described with respect to the devices shown in Figs. 1A and 2A, respectively. In Fig. 3A, there is shown a signature analysis system which is similar to that of Fig. 1A, but with the addition of a preferred embodiment of the present invention as shown within the dashed area 200. In Fig.3A a counter 210 is connected to receive the clock pulses applied along lines 10. The counter 210 produces a clock pulse count which corresponds to the number of clock pulses received from lines 10. Fig. 3D is a graph showing the clock pulses applied along lines 10. The clock pulse count output along line 220 is applied to the first input of a comparator 230. The second input of the comparator 230 receives the output of a memory 240 along line 250. The contents of the memory 240 are values of successive clock pulse counts at which a known indeterminate signature pattern increment will be encountered. When the clock pulse count at the first input of the comparator 230 matches the known indeterminate count value at the second input to the comparator 230, the comparator 230 outputs a signal along line 260 to reflect an indeterminate state. This signal is fed back to the memory 240 to cause the memory 240 to increment to the next indeterminate count value. The signal on line 260 is also fed to the first input of an AND gate 270. The second input of the AND gate 270 receives from line 10 the clock pulses which have been delayed by a delay element 280. During clock pulse counts at which determinate signature pattern increments will be encountered at the inputs to the signature recording device 60, a match will not be encountered at the inputs to the comparator 230. During these clock pulse counts, the signal from the comparator 230 to the first input of the AND gate 270 is such that the delayed clock pulses at the second input are allowed to pass through the AND gate 270 and be outputted as recording pulses. Fig. 3E is a graph showing recording pulses occurring at times D, D+2 and D+3 which exactly correspond to the determinate signature pattern increments at clock pulse counts D, D+2 and D+3 in Fig. 3C. These recording pulses are applied to the clock input of the signature recording device 60 along a line 300. Thus, during clock pulse counts where determinate signature pattern increments are encountered at the inputs of the signature recording device 60, the signature recording device 60 will receive a recording pulse along line 300, and will record the determinate signature pattern increment. At clock pulse counts during which indeterminate signature pattern increments will be encountered at the inputs to the signature recording device 60, a match will be encountered at the inputs to the comparator 230. During these clock pulse counts, the signal reflecting an indeterminate state from the comparator 230 to the first input of the AND gate 270 is such that the delayed clock pulses at the second input are not allowed to pass through the AND gate 270. Fig. 3E indicates an absence of recording pulses at times D+1 and D+4 which exactly correspond to the indeterminate signature pattern increments at clock pulse counts D+1 and D+4 in Fig. 3C. Thus, during clock pulse counts where indeterminate signature pattern increments are encountered at the inputs of the signature recording device 60, the signature recording device 60 will not receive a recording pulse along line 300 and, therefore, will not record the indeterminate signature pattern increment. Fig. 3E shows a graph of the recording pulses received by the signature recording device 60 in Fig. 3A. Since the present invention uses the approach of controlling the recording pulse to treat indeterminate signature pattern increments, there are two major differences between the recording pulses of the present invention and the recording pulses of the prior art devices previously described. First, time D corresponds to the first possible time when a recording pulse can be generated, as can be seen in Fig. 3E. This time D exactly corresponds to the delay time D required for the first signature pattern increment to appear at the inputs of the signature recording device 60. Thus, the treatment of the first occurrence of the recording pulses in the present invention is different from the treatment of recording pulses in the previously described prior art devices where the time of first occurrence is irrelevant. Second, since the present invention uses the recording pulses to address the indeterminate increment problem, there is an absence of recording pulses at any clock pulse counts where an indeterminate signature pattern increment appears at the inputs of the signature recording device 60, a feature which is in sharp contrast to the previously described prior art devices where the continuous clock pulses applied to lines 10 are also used as recording pulses. These two differences can easily be seen from a comparison of the recording pulses in Figs. 1E and 2E with the recording pulses in Fig. 3E. Fig. 3F is a chart showing the recorded signature pattern increments which have been recorded as a result of the processing described above. From the chart in Fig. 3F, it can seen that signature pattern increments have been recorded by the signature recording device 60 at times D, D+2 and D+3 which exactly correspond to the determinate signature pattern increments of Fig. 3C. Thus, the present invention treats each signature pattern increment as a whole, resulting in the recording of only determinate signature pattern increments, while indeterminate signatures are ignored and not recorded. In addition to being simpler in circuit construction, the present invention is also advantageous over the prior art approach of Fig.2A with regard to programming. As mentioned previously, programming with the prior art approach requires that a control pattern increment be provided to control the gating action for each signature pattern increment; thus, if the digital test pattern is a million increments long, the control pattern must also be a million increments long. In contrast, programming with the present invention requires only that there be provided sequential clock count values where indeterminate increments will occur. This control pattern program can be easily formulated by fault simulating a good device model with the pseudo-random RPT test pattern, and then recording the resulting clock pulse counts during which an indeterminate increment occurs. Although a digital test pattern may be millions of increments long, indeterminate states might occur during only a hundred increments, whereupon the control pattern need be only a corresponding hundred increments long. Thus, the present invention provides tremendous time savings in regard to the formulation and inputting of a much shorter control program. It should be noted at this point that the signature recording device 60 may be replaced with some other form of processing device, without departing from the scope of this invention. For example, it may be desired that a comparison device make an immediate comparison of the signature pattern increment with a known good signature pattern increment, rather than recording the signature pattern increment for a later comparison. Thus, the recording pulse described above can more generally be called a pulse (i.e., recording being just one form of processing that may be implemented.). Fig. 4 shows a simplified circuit diagram of another preferred embodiment of the present invention as shown in the dashed area 200. Clock pulses received by the signature analysis device along lines 10 are fed to a counter 210. The counter 210 produces a clock pulse count which is applied along a line 400 to the address inputs of a one-bit memory 410 to increment through the memory array. The 1's and 0's in the successive one-bit memory locations are applied to a first input of an AND gate 270 along line 240 to control the gating of the clock pulses through the AND gate 270. Thus, the one-bit memory 410 is loaded, and its outputs cause the AND gate to be gated on during clock pulse counts where the signature pattern increment is determinate, and gated off during clock pulse counts where the signature pattern increment is indeterminate. Again, the delay of the clock pulses through the device 200 is chosen such that recording pulses will be outputted by the AND gate 270 along line 300 at the exact times when a determinate signature pattern is being applied to the input of the signature recording device 60. Figures 3A through 3F also apply to Fig. 4. Although the embodiment of Fig.4 represents a further simplification of the pulse control circuit, note that there is a programming tradeoff in that the control pattern must have as many increments as the RPT test pattern, as was the case for the prior art device of Fig.2. However, note that this embodiment is still advantageous over the prior art approach in that only one bit per increment is needed, as opposed to a plurality of bits to control a plurality of gates. Thus, the described embodiments of the present invention provide a simple method and device having inexpensive construction and programming, such that indeterminate signature pattern increments can be efficiently treated in a signature analysis testing device.

Claims: A pulse control circuit for use in treating indeterminate signature increments in an apparatus for producing signature analysis of digital circuits, said pulse control circuit comprising clock source means for providing clock pulses (10) and being characterized by pulse output means (270) for outputting said clock pulses (10) during clock pulse counts where a signature is determinate, and pulse control means (210, 230, 240), connected to said clock source means and said pulse output means, for normally passing clock pulses from said clock source means to said pulse output means during clock pulse counts at which the signature is determinate, and not passing clock pulses (10) during clock pulse counts where the signature is indeterminate. A pulse control circuit as claimed in claim 1, wherein said pulse control means comprises: counter (210) means receiving the clock pulses from said clock source means and producing a count in response thereto; memory (240) means for supplying indeterminate count values where indeterminate signature increment will be encountered; comparator (230) means for producing a control signal in response to a comparison of the count from said counter (210) means with the indeterminate count values from said memory (240) means, said control signal reflecting a determinate state when the comparison does not result in a match, and reflecting an indeterminate state when the comparison does result in a match; and switch means (270) having an input terminal connected to receive the clock pulses from said clock source means, an output terminal which corresponds to said pulse output means, and a control terminal receiving the control signal from said comparator (230) means, said switch means for passing the clock pulses from said clock source means to said pulse output means when said control signal reflects a determinate state, and not passing the clock pulses when said control signal reflects an indeterminate state. A pulse control circuit as claimed in claim 2, wherein said switch means is an AND gate (270) having a first input terminal connected to receive the clock pulses from said clock source means, a second input terminal connected to receive the control signal from said comparator (230) means, and an output terminal which corresponds to said pulse output means. A pulse control circuit as claimed in one of the claims 1 - 3, wherein said clock source means comprises a terminal receiving system clock pulses from said apparatus for producing signature analysis. A pulse control circuit as claimed in claim 1, wherein said pulse control means comprises a memory means (410) which receives the count from said counter means (210) as an address input for outputting the addressed memory location and wherein the control terminal of the switch means (270) receives the control signal from said memory means. A pulse control circuit as claimed in one of the claims 1 - 5, wherein said clock pulses outputted by said pulse output means are used as recording pulses to control recording or processing of the signature increments. A method for controlling pulses for treating indeterminate signature increments in devices which produce signature analysis of digital circuits, said method comprising the steps of: providing a source of clock pulses; and allowing said clock pulses (10) to be outputted during clock pulse counts where the signature is determinate, and not allowing said clock pulses to be outputted during clock pulse counts where the signature is indeterminate. A method as claimed in claim 7, wherein the outputted pulses are processing pulses or recording pulses.

Inventors: SAVAGLIO, ROBERT J., TWOMBLY, PETER A.
Applicants: INTERNATIONAL BUSINESS MACHINES CORPORATION
Application year: 1988
Main classification: G01R31
IPC codes: G06F11, G01R31