WO1999056142A1 - Method for generating a shmoo plot contour for integrated circuit tester - Google Patents

Method for generating a shmoo plot contour for integrated circuit tester Download PDF

Info

Publication number
WO1999056142A1
WO1999056142A1 PCT/US1999/008741 US9908741W WO9956142A1 WO 1999056142 A1 WO1999056142 A1 WO 1999056142A1 US 9908741 W US9908741 W US 9908741W WO 9956142 A1 WO9956142 A1 WO 9956142A1
Authority
WO
WIPO (PCT)
Prior art keywords
parameter
test
values
combination
value
Prior art date
Application number
PCT/US1999/008741
Other languages
French (fr)
Inventor
Robert Huston
Daniel J. Bedell
Original Assignee
Credence Systems Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Credence Systems Corporation filed Critical Credence Systems Corporation
Priority to KR1020007009269A priority Critical patent/KR20010041197A/en
Priority to EP99918747A priority patent/EP1078272A4/en
Priority to JP2000546249A priority patent/JP2002513158A/en
Publication of WO1999056142A1 publication Critical patent/WO1999056142A1/en

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31708Analysis of signal quality
    • G01R31/31711Evaluation methods, e.g. shmoo plots
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318342Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31901Analysis of tester Performance; Tester characterization
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31903Tester hardware, i.e. output processing circuits tester configuration
    • G01R31/31908Tester set-up, e.g. configuring the tester to the device under test [DUT], down loading test patterns
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31903Tester hardware, i.e. output processing circuits tester configuration
    • G01R31/31908Tester set-up, e.g. configuring the tester to the device under test [DUT], down loading test patterns
    • G01R31/3191Calibration
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/3193Tester hardware, i.e. output processing circuits with comparison between actual response and known fault free response
    • G01R31/31937Timing aspects, e.g. measuring propagation delay

Definitions

  • the present invention relates in general to integrated circuit (IC) testers and in particular to an IC tester that rapidly locates points along an IC ' s boundaries of operability with respect to two variable operating parameters.
  • IC integrated circuit
  • FIG. 1 illustrates a typical Shmoo plot.
  • the horizontal (X) axis of the Shmoo plot represents the value of one test operating parameter, for example supply voltage
  • the vertical (Y) axis represents the value of another test operating level parameter, for example clock frequency.
  • an IC tester must test an IC at every combination of X and Y parameters values within a range of interest bounded by X MIN , X MAX , Y MIN and Y ⁇ with some given resolution in X and Y step size. The tester then displays or prints a Shmoo plot graph representing test results for each combination of X and Y values. The tester plots a "pass" symbol (represented in FIG.
  • FIGS. 2 and 3 illustrate a method IC testers have commonly used to locate the boundaries of a Shmoo plot.
  • the tester performs a first IC test to produce a pass/fail symbol at one corner of the area of interest bounded by Y ⁇ , M ⁇ N , X MAX n( X MIN -
  • the tester performs the first IC test with X and Y parameters set to X MIN and Y ⁇ . Since the IC fails the test, the tester plots a fail symbol 20 at the appropriate plot coordinates. The tester then increments the X parameter and repeats the test. Since the IC again fails, the tester plots a fail symbol at the current X,Y coordinates, position 21. The tester continues to increment X and to test the IC and to plot fail symbols until X reaches X ⁇ at position 22.
  • the tester then decrements Y, resets X to X MIN , tests the IC and plots a fail symbol at position 23.
  • the tester continues to test the IC for each successively lower value of Y at all values of X in the range of interest thereby producing complete rows of symbols 24- 26 .
  • the tester encounters a combination of X and Y values on the Shmoo plot contour for which the IC passes the test. It then produces a "pass" symbol 18 at the current X,Y coordinates.
  • the tester stops traversing row 27, decrements Y, resets X to X MIN and begins producing symbols along the next row 28.
  • the tester continues to repeat the process producing a row of symbols for each successively smaller value of Y with each row ending either at (Y,X m ) if the IC does not pass the test for any value of X along that row or at the first X position of the row for which the IC passes a test.
  • the tester may halt the procedure when it first encounters a row 29 for which the IC once again fails at all X positions.
  • the tester looks for points along the right side of Shmoo plot contour by performing tests starting at the right side of the plot, for example at the rightmost point 30 of the uppermost row 27 not already fully tested and working its way leftward along the row until it reaches a point 31 on the Shmoo plot contour.
  • the tester repeats this process for each lower row to locate points along the right side of the Shmoo plot contour.
  • the tester stops testing when it reaches row 29 for which the IC fails at all points. As may be seen in FIG.
  • the tester has not yet located every point of the actual Shmoo plot contour because it has not performed a test at every (X,Y) point along the contour.
  • the contour is therefore indeterminate in certain areas, for example in areas 32-34.
  • a tester could locate most of these areas of the Shmoo plot contour by performing two other sets of tests in which it moves along symbol columns toward the Shmoo contour starting both from above and below the contour.
  • testers typically do not often perform those additional tests .
  • FIG. 4 illustrates a Shmoo contour plot that a tester might produce based on the pass/fail data of FIG. 3. Note that the Shmoo plot contour shown in FIG. 4 is not complete. Nonetheless the Shmoo contour plot of FIG. 4 is useful as a rough approximation of the true contour of the Shmoo plot of FIG. 1 and the tester performs only about half as many tests to produce the Shmoo contour plot of FIG. 4 than it would have to perform to produce the full Shmoo plot of FIG. 1. Note that most of the tests performed are "fails". Since an IC tester can quickly stop a test when the IC fails, most of the time-consuming "pass" tests are avoided by performing a contour test rather than a full Shmoo plot test.
  • IC performance on and near the X,Y Shmoo plot contour is normally of primary interest because that's where the IC's problems normally lie. It would be helpful, however, if a tester were able to locate a Shmoo plot contour by testing an IC at fewer combinations of X and Y parameter values and yet produce a more accurate depiction of the true Shmoo plot contour.
  • a test is repeatedly performed on an integrated circuit (IC) with the IC operating under each of several combinations of values of two IC operating parameters (X and Y) within a range of values of interest bounded by minimum and maximum values of X and Y: X MIN , M ⁇ N , MAX and Y ⁇ .
  • the pass/ fail results of the tests define a Shmoo plot contour representing the boundary of a two-dimensional range of combinations of values of the X and Y parameters for which the IC passes the test.
  • the tests are conducted in four phases .
  • the combinations of values of the X and Y on the left side of the Shmoo plot contour are located.
  • the value of the X parameter is initially set to X MIN and the value of the Y parameter is initially set Y ⁇ and the integrated circuit device under test (DUT) is tested at those values of X and Y. If the DUT fails the test, the value of the X parameter is repeatedly incremented until the DUT passes the test. That combination of values of X and Y lies on the Shmoo plot contour. (If X reaches X ⁇ before the DUT passes the test, Y is decremented and the process of repeatedly incrementing X and testing the DUT is repeated until a passing X,Y combination is found.)
  • Y is decremented while X is held at its current value. If the DUT initially passes the test for the lower value of Y, X is repeatedly decremented until a value of X is found for which the DUT fails the test (or until X reaches X MIN ) , at which point Y is decremented. On the other hand if the DUT initially fails the test for a value of Y, X is repeatedly incremented until a value of X is found for which the DUT passes the test (or until X reaches X ⁇ ) , at which point Y is decremented again. This process is repeated for each successively lower value of Y until Y reaches Y M1N .
  • a second test phase combinations of values of X and Y on the side of the Shmoo plot contour facing right (the +X direction) are located.
  • the X parameter is initially set to X ⁇ and Y is initially set to Y MAX - If the DUT then fails the test X is repeatedly decremented and the DUT retested until a value of X is found for which the DUT passes the test, at which point Y is decremented. If the DUT initially passes the test, X is repeatedly incremented until a value of X is found for which the DUT fails the test (or until X reaches X ⁇ ) , at which point the value of Y is decremented.
  • the DUT fails the test Y is repeatedly decremented and the DUT retested until a value of Y is found for which the DUT passes the test, at which point X is decremented. If the DUT initially passes the test, Y is repeatedly incremented until a value of Y is found for which 6 the DUT fails the test (or until Y reaches Y MAX ) , at which point the value of X is decremented. On the other hand, if the DUT initially fails the test for a value of X, Y is repeatedly decremented until a value of Y is found for which the DUT passes the test (or Y reaches Y MIN ) , at which point X is decremented again. This process is repeated for each successively lower value of X until X reaches X MIN .
  • a fourth test phase combinations of values of X and Y on the side of the Shmoo plot contour facing downward (the -Y direction) are located.
  • the X parameter is initially set to X MIN and Y is initially set to Y MIN . If the DUT then fails the test Y is repeatedly incremented and the DUT retested until a value of Y is found for which the DUT passes the test, at which point X is incremented. If the DUT initially passes the test, Y is repeatedly decremented until a value of Y is found for which the DUT fails the test (or until Y reaches Y MIN ) , at which point the value of X is incremented.
  • FIG. 1 illustrates a prior art Shmoo plot
  • FIGS. 2-4 illustrate stages of development of a Shmoo contour plot created in accordance with a prior art method
  • FIG. 5 illustrates in block diagram form an apparatus for generating a Shmoo contour plot in accordance with the present invention
  • FIGS. 6-10 illustrate stages of development of a Shmoo contour plot created in accordance with the present invention
  • FIGS. 11-14 illustrate in flow chart diagram form steps carried out by the host computer of FIG. 5 in creating the Shmoo contour plot of FIGS. 6-10;
  • FIGS. 15 and 16 illustrate stages of development of a Shmoo contour plot created in accordance with an alternative embodiment of the present invention
  • FIG. 17 illustrates in flow chart diagram form steps carried out by the host computer of FIG. 5 in creating the Shmoo contour plot of FIGS. 15 and 16.
  • FIG. 5 illustrates an apparatus 40 in accordance with the present invention for producing a Shmoo plot contour graph indicating a range of values of a pair of operating parameters under which an integrated circuit device under test (DUT) 42 can pass a test.
  • Apparatus 40 includes a conventional integrated circuit tester 44 controlled by a host computer 46 via programming data and control signals sent to tester 44 via a bus 47. The programming data tells tester 44 how to test DUT 42 and indicates how tester 44 is to set values of various DUT operating parameters for the test.
  • Such operating parameters may include, for example, the power supply voltage provided to DUT 42, the level of load current DUT 42 is to drive at its output terminals, the frequency of a clock signal input to DUT 42, and the like.
  • tester 44 After carrying out the test indicated by its programming data, tester 44 transmits pass/fail data back to host computer 46 via bus 47 indicating whether DUT 42 passed or failed the test.
  • host computer 46 tells tester 44 to repeatedly perform the same test on DUT 42 using different combinations of values of two operating parameters, host computer 46 can generate a Shmoo plot on display monitor 48 or paper printer by a printer 45. A "Shmoo plot", as illustrated, for example, in FIG.
  • the Shmoo plot has a horizontal X axis representing one of the operating parameters and a vertical Y axis representing the other operating parameter. (The "X" or "Y" parameter of a Shmoo plot may also be some mathematical combination of several operating parameters . ) A color or other characteristic of a symbol appearing at each position of the Shmoo plot defined by coordinates X and Y indicates whether DUT 42 passed or failed a test conducted with operating parameter values indicated by the symbol's X and Y coordinates. In FIG. 1 each square containing a small circle represents a passed DUT test while each square not containing a small circle represents a failed DUT test.
  • Host computer 46 could acquire all data it needs to produce the full Shmoo plot of FIG. 1 by configuring tester 44 to test DUT 42 for every combination of X and Y operating parameters values within an area of interest bounded by minimum and maximum values of X and Y: X MIN , Y MIN , X ⁇ and Y, ⁇ .
  • tester 44 has to carry out a large number of tests in order to provide host computer 46 with enough data to produce a full Shmoo plot.
  • DUTs usually perform correctly at every point within a bounded area of a Shmoo plot, the DUT's behavior with respect to its X and Y operating parameters can be adequately represented by a plot of the Shmoo 's contour.
  • host computer 46 chooses successive combinations of X and Y parameter values for which DUT 42 is to be tested in a manner requiring tester 44 to perform only a relatively small number of DUT tests.
  • the algorithm host computer 46 carries out to determine how to set the X and Y parameter values has four phases as described below.
  • FIGS. 6-10 illustrate the progression of the Shmoo contour plot as the algorithm proceeds through the four phases.
  • FIGS. 11-14 respectively illustrate the four phases of the Shmoo contour plotting algorithm in flow chart form.
  • FIG. 6 illustrates the portion of the Shmoo plot contour produced during the Phase 1 of the algorithm when looking for the contour of the Shmoo plot of FIG. 1.
  • Each small square in FIG. 6 represents a test performed using the values of X and Y parameters indicated by the square's X and Y coordinates .
  • a circle within a square indicates that the DUT passed a test using the value of X and Y parameters indicated by the square's coordinates.
  • the order in which the algorithm directs computer 44 to plot the Shmoo contour is indicated by bold black lines 49 passing through the squares .
  • FIG. 11 illustrates Phase 1 of the algorithm. Referring to FIGS.
  • host computer 46 initially commands tester 44 to set the value of Y to Y ⁇ and to set the value of X to X MIN (step 100) and then commands tester 44 to indicate if the DUT passes a test using those X and Y parameter values (step 101) . If tester 44 reports that the DUT did not pass the test, host computer 46 plots a fail symbol 50 in the Shmoo contour plot at the intersection of Y ⁇ and X MIN (step 102) .
  • step 103 Since X is not yet at its maximum level X ⁇ (step 103), host computer 46 increments X by a predetermined X step size (step 104) and returns to step 101 where it commands tester 44 to repeat the test for the new value of X. Host computer 46 continues to repeat steps 101-104 making a rightward (+X direction) traverse of row 51 of FIG. 6. Since X reaches X M ⁇ Y 10 at step 103 before the DUT passes a test, and since Y is not yet at its minimum value Y MIN (step 105), host computer 46 decrements Y and resets X to X MIN (step 106) . Host computer 46 also sets Y ⁇ equal to Y since the DUT has failed for all values of Y above the current value of Y.
  • Host computer 46 then returns to step 101 to begin a rightward traverse the next lower row. Host computer 46 continues to loop through steps 101-107 traversing each successively lower row rightward until in row 52 it finds a combination of X and Y parameter values for which the DUT passes the test (step 101) . At the appropriate X,Y coordinate of row 52, host computer 46 plots a pass symbol 53 (step 108) . Host computer 46 also sets the value of a X PASS variable to the current value of X (step 109).
  • the X PASS variable is used to keep track of the smallest value of X for which the DUT passes the test.
  • Host computer 46 the decrements the value of Y by a predetermined step size (step 110) and commands tester 44 to test the DUT with the current values of X and Y (step 112) . Since the DUT passes the test, host computer 46 plots a pass symbol 54 at the current X,Y coordinates of Shmoo plot row 56 (step 113), sets the value of the X PASS variable to the lesser of the current value of X and the current value of X PASS (step 114), decrements X (step 115) and commands tester 44 to perform the test (step 116) .
  • the host computer 46 Since the DUT again passes the test, the host computer 46 plots a pass symbol at position 55 (step 117) . Since the value of X has not reached X MIN (step 118) , host computer 46 returns to step 114. Host computer 46 continues to loop through steps 114-118, thereby traversing row 56 of the Shmoo plot in the leftward (-X) direction until at step 116 the tester reports that the DUT has failed the test. Host computer 46 then plots a fail symbol 58 at the appropriate X,Y coordinates of the Shmoo plot (step 119) .
  • step 120 host computer 46 determines whether Y has yet reached Y MIN (step 120) . Since Y has not reached Y MIN , host computer 46 returns to step 110 to decrement Y. After decrementing Y at step 110, if host computer 46 detects at 11 step 112 that the DUT does not pass the test, host computer 46 plots a fail symbol at the current X,Y coordinates (step 122) and begins traversing the current row to the right looking for a DUT pass.
  • step 123 increments X (step 123), tests the DUT (step 124) , plots a fail symbol when the DUT fails (step 125) and reverts to step 123.
  • Host computer 44 continues to loop through steps 123-126 traversing the Shmoo plot rightward plotting fail symbols until at step 124 the DUT passes the test. At that point host computer 44 plots a pass symbol at the current X,Y coordinates (step 119), and if Y is not yet equal to Y MIN (step 120), decrements Y (step 110) and begins traversing the next Shmoo plot row.
  • Y When at step 120, Y reaches Y MIN , the plotting process has gone out of the range of interest. Host computer 46 therefore sets X MIN equal to X PASS and Y MIN equal to Y (step 128) . Also if at step 126 X has reached X ⁇ on some row, then the plotting process has gone below the lowest (smallest Y) point of the Shmoo plot contour. In such case computer 44 increments Y (step 127) before it sets Y MIN equal to the current value of Y and sets X MIN equals to X PAS ⁇ (step 128) .
  • step 1208 host computer 44 moves on to Phase 2 of the algorithm.
  • FIG. 7 illustrates how Phase 2 of the algorithm fills in additional portions of the Shmoo contour plot.
  • FIG. 12 illustrates operation of host computer 46 during Phase 2 of the algorithm. Note that the Y MIN and X MIN values are higher at the start of Phase 2 than they were at the start of Phase 1 because they were raised at step 128 of the Phase 1 algorithm of FIG. 11. Also the value of Y ⁇ is lower at the start of Phase 2 than it was at the start of Phase 1 because it was reduced at step 107 of the Phase 1 algorithm of FIG. 11. Referring to FIGS. 7 and 12, computer 46 first initializes X PASS variable to X MIN , sets X equal to X ⁇ , and sets Y equal to Y ⁇ (step 140) .
  • the X PASS variable is used to keep track of the maximum value of X for 12 which the DUT passes the test.
  • the DUT is then tested (step 142) and since the DUT fails the test computer 46 plots a fail symbol 64 at the current X,Y position (step 143), decrements X (step 144), and repeats the test (step 145) .
  • Computer 46 continues to loop through steps 143-145 traversing row 66 of the Shmoo plot of FIG. 7 to the left ( -X direction) plotting fail symbols until at step 145 tester 44 indicates that the DUT has passed the test.
  • Computer 46 then plots a pass symbol 68 at the Shmoo plot position corresponding to the current X,Y values (step 146) .
  • step 147 computer 44 decrements Y (step 148) and returns to step 142 to test the DUT. Since the DUT passes the test (step 142), computer 46 plots a pass symbol at position 70 (step 154), sets X PASS equal to the maximum of X and X PASS (step 155), increments X (step 157) and tests the DUT (step 158) . Computer 46 continues to loop through steps 154-158 traversing row 72 of the Shmoo plot of FIG. 7 to the right plotting pass symbols until at step 158 tester 44 indicates that the DUT has failed the test. Computer 46 then plots a fail symbol 74 at the Shmoo plot position corresponding to the current X,Y values (step 146) .
  • step 158 or after step 156 if X had reached X, ⁇ before the DUT failed the test, computer 46 compares the current value of Y to Y MIN (step 147) . Since Y has not yet decreased to Y MIN , computer 46 again decrements Y by the unit Y step size (step 148) and repeats steps 142-146, thereby traversing row 76 to the left plotting fail symbols and looking for a DUT pass. The Phase 2 process continues row by row until at step 147, Y reaches Y MIN . At that point computer 46 sets X ⁇ equal to X PASS (step 159) and moves to Phase 3 of the process .
  • FIG. 8 illustrates how Phase 3 of the algorithm fills in additional portions of the Shmoo contour plot. Note that the X MAX value is lower at the start of Phase 3 than it was at the start of Phase 2 because it was lowered at step 159 of the Phase 2 algorithm of FIG. 12. This limits the range of X 13 values of interest so as to reduce the number of tests that must be performed during Phases 3 and 4.
  • FIG. 13 is a flow chart illustrating operation of host computer 46 during Phase 3 of the algorithm.
  • computer 46 first sets X equal to X ⁇ and Y equal to Y, ⁇ (step 160) and then signals tester 44 to test the DUT (step 162) . Since the DUT fails the test at (X MAX/ MAX )' computer 46 plots a fail symbol 80 at that X,Y position (step 164), decrements Y (step 165), and repeats the test (step 166) .
  • Computer 46 continues to loop through steps 164-166 traversing downward (-Y direction) along column 82 of the Shmoo plot of FIG. 8 until at step 166 tester 44 indicates that the DUT has passed the test.
  • Computer 46 then plots a pass symbol 84 at the Shmoo plot position corresponding to the current X,Y values (step 167) . If X is not yet equal to X MIN (step 168), computer 46 decrements X (step 169) and returns to step 162 to test the DUT. Since the DUT passes the test (step 162) computer 46 plots a pass symbol 86 at the current X,Y position (step 174). Since Y has not yet reached Y ⁇ (step 175), computer 46 increments Y (step 176) and tests the DUT (step 178) . Computer 46 continues to loop through steps 174-178 traversing column 88 upward (+Y direction) until at step 178 tester 44 indicates the DUT has failed the test.
  • Computer 46 then plots a fail symbol 90 at the current X,Y position (step 167) .
  • step 167 or after step 175 if Y reaches Y ra before the DUT fails a test, computer 46 compares the current value of X to X MIN (step 168) . Since X has not yet decreased to X MIN , computer 46 decrements X (step 169) and loops through steps 162-166, traversing column 92 downward (-Y direction) looking for a DUT pass. The process continues column by column following path 93 along the Shmoo plot until X reaches X MIN at step 168. At that point computer 46 moves to Phase 4 of the process.
  • FIG. 9 illustrates how Phase 4 of the algorithm fills in remaining portions of the Shmoo contour plot.
  • FIG. 14 is a flow chart illustrating operation of host computer 46 during 14
  • Phase 4 of the algorithm Referring to FIGS. 9 and 14, computer 46 first sets X equal to X MIN and Y equal to Y MIN (step 180) , and then signals tester 44 to test the DUT (step 181). Since the DUT fails the test at (X MIN ,Y MIN ), computer 46 plots a fail symbol 95 at the current X,Y position (step 182), increments Y (step 183), and repeats the test (step 184). Computer 46 continues to loop through steps 182-184 traversing upward (+Y direction) along column 96 of the Shmoo plot of FIG. 9 until at step 184 tester 44 indicates that the DUT has passed the test.
  • Computer 46 then plots a pass symbol at the Shmoo plot position 97 corresponding to the current X,Y values (step 185) . Since X is not yet equal to X MAX (step 186), computer 46 increments X (step 187) and signals tester 44 to test the DUT (step 181) . Since the DUT passes the test computer 46 plots a pass symbol at the appropriate position on column 98 (step 188) . Since Y has not yet reached Y MIN (step 189), computer 46 decrements Y (step 190) and tests the DUT (step 191). Computer 46 continues to loop through steps 188-191 traversing column 98 downward (-Y direction) until at step 191 tester 44 indicates the DUT has failed the test.
  • Computer 46 then plots a fail symbol at the Shmoo plot position corresponding to the current X,Y values (step 185). After step 185, or after step 189 if Y reaches Y MIN before the DUT failed the test, computer 46 compares the current value of X to X, ⁇ (step 186) . Since X has not yet increased to X ⁇ , computer 46 increments X (step 187) and returns to step 181. Phase 4 of the process continues column by column until at step 186, X reaches X ⁇ . At that point computer 46 terminates the Shmoo plot contour algorithm.
  • FIG. 10 illustrates the Shmoo contour plot computer 44 produces on printer 45 or display monitor 48 of FIG. 5 after carrying out the above described method. Note that the Shmoo plot contour of FIG. 10 produced in accordance with the present invention is much more complete than the Shmoo contour plot of FIG. 4 produced in accordance with the prior art method. Note also, by comparing FIG. 3 with FIG. 9, that the prior art contour plotting method requires a tester to 15 perform many more tests than the contour plotting method of the present invention.
  • FIGS. 15 and 16 illustrate development of a Shmoo contour plot created in accordance with an alternative embodiment of the present invention.
  • FIG. 17 illustrates in flow chart diagram form the steps carried out by host computer 46 of FIG. 5 in creating the Shmoo contour plot of FIGS. 15 and 16.
  • host computer 5 initially (step 220 of FIG. 17) sets a pair of variables RIGHT_COUNT and LEFT_COUNT to 0.
  • Computer 46 locates and plots (step 222) a first combination of X and Y values for which the DUT passes the test using the algorithm indicated in steps 100-108 of FIG. 11.
  • Computer 46 scans rows 200-203 plotting DUT test fails until it finds an X,Y coordinate for which the DUT passes a test. At that point it plots a pass symbol at the current X,Y coordinate 204.
  • the flow chart of FIG. 17 assumes a "direction" of movement as computer 46 moves from coordinate to coordinate.
  • computer 46 moves" from X,Y coordinate to coordinate testing the DUT at each coordinate is passes through.
  • computer 46 may only move either horizontally or vertically by 1 unit X or Y step and may not move diagonally.
  • the computer 46 may only move either horizontally or vertically by 1 unit X or Y step and may not move diagonally.
  • it follows two rules in choosing the next coordinate:
  • Computer 46 then tests the DUT at coordinate 205 (step 226) and since the DUT passes the test, it plots a pass symbol at the new X,Y coordinates (step 230) . (If the LEFT_COUNT parameter is not already 0 at step 230, computer 46 resets it to 0.) Since the DUT passes at coordinate 205, computer 46 moves to the right once again to coordinate 206 and increments the RIGHT_COUNT parameter once again (step 234) . Since it has not yet returned to the first passing X,Y coordinate 204 (step 236), since the RIGHT_COUNT parameter has not yet reached 3 (step 240), and since the current X,Y coordinates are not out of bounds (step 242) computer 46 returns to step 226 to retest the DUT.
  • step 2248 Since the DUT passes the test at current coordinates 206 (step 228), computer 46 plots the pass symbol at coordinate 206 and then moves to the right and increments the RIGHT_COUNT parameter (step 234) . After determining that it has not returned to coordinate 204, computer 46 finds that the RIGHT_COUNT parameter has reached 3. This means that it has moved to an X,Y coordinate 207 for which the DUT has already been tested and failed. At this point, computer 46 moves to step 246 where it plots a fail symbol and resets the RIGHT_COUNT parameter to 0. It then moves left to X,Y coordinate 208 and increments the LEFT_COUNT parameter (step 248) .
  • test fails at coordinate 208, it plots the fail (step 246), moves left to coordinate 209 and increments the LEFT_COUNT parameter (step 248) and returns to step 226 via steps 252 and 254 to retest the DUT at coordinate 209.
  • computer 46 finds at step 250 that it has moved left three times in a row and has returned to a coordinate 206 for which the DUT has already been tested and has passed. At that point program flow switches to step 230 where a pass symbol is plotted and the LEFT_COUNT parameter is reset to zero.
  • FIG. 16 illustrates the resulting Shmoo plot contour.
  • step 242 or 254 was always a "NO" .
  • computer 46 has moved to an X,Y coordinate that had been out of bounds, it would have treated that X,Y coordinate as a "fail" by moving to step 246.
  • the alternative embodiment of the Shmoo plot contour method illustrated in FIG. 17 can require tester 40 to conduct more tests on the DUT than the embodiment of the Shmoo plot contour method illustrated in FIGS. 11-14 but under some circumstances can provide a more complete picture of the Shmoo plot contour.
  • the Shmoo plot contour of FIG. 16 is substantially similar to the Shmoo plot contour of FIG. 10 except that a small gap 212 in the Shmoo plot contour of FIG. 10 does not appear in the Shmoo plot contour of FIG. 17. While Phases 1-4 of the method illustrated in FIGS.
  • 11- 14 locate the points along the Shmoo plot facing the -X, +X, +Y and -Y directions, respectively, those skilled in the art will appreciate that the method can be easily modified to locate points along the Shmoo plot contour faces in any order .
  • the algorithm for each phase could be modified so that the computer traverses a face in a direction opposite to that illustrated.
  • the Phase 2 flow chart of FIG. 12 starts the process at X ⁇ , Y ⁇ and works its way down the +x face of the Shmoo contour plot in the -Y direction
  • the Phase 2 process could also have started at X ⁇ , Y MIN and worked its way up the +X face of the Shmoo contour plot in the +Y direction.
  • the present invention locates the contour of a Shmoo plot having two axes (X,Y), the invention could be employed to locate the contour of a Shmoo plot having three or more axes when three or more variable test parameters are of interest.
  • a three-axis (X,Y,Z) Shmoo plot contour would appear as a solid surface.
  • the present invention could be used to quickly locate the contour of a three-dimensional Shmoo plot by locating the two-dimensional (X,Y) contour of a Shmoo plot for each value of interest of Z.
  • the contour of an N- dimensional Shmoo plot may be located by locating the contour of an N-l dimensional Shmoo plot for each value of the parameter corresponding to the Nth dimension.

Abstract

A method of operating an integrated circuit (IC) tester is disclosed in which an IC is repeatedly tested with respect to a limited number of combinations of values of two variable IC operating parameters (X and Y) to determine the boundary of a two-dimensional range of combinations of values of the X and Y parameters for which the IC passes a test. After finding a combination of X and Y parameter values on the boundary, each combination of parameter values to be tested thereafter is selected by altering either the X or Y parameter value, with the decision based on whether the IC passed the last test and on the manner in which a last tested combination of X and Y parameter values was selected.

Description

1
METHOD FOR GENERATING A SHMOO PLOT CONTOUR FOR INTEGRATED CIRCUIT TESTER
Background of the Invention Field of the Invention
The present invention relates in general to integrated circuit (IC) testers and in particular to an IC tester that rapidly locates points along an IC ' s boundaries of operability with respect to two variable operating parameters.
Description of Related Art The newspaper comic strip Lil' Abner was occasionally populated with characters called "Shmoos" noted for their somewhat amorphous shape. The integrated circuit (IC) test industry borrowed the term "Shmoo" as a name for a type of plot produced by some IC testers. A "Shmoo plot" is a graphical representation of an IC's ability to operate properly in response to various combinations of values of two variable operating parameters. For example one might repeatedly test an IC using different combinations of supply voltage and input clock signal frequency for each test to determine the various combinations of values of those operating parameters for which the IC operates properly. FIG. 1 illustrates a typical Shmoo plot. The horizontal (X) axis of the Shmoo plot represents the value of one test operating parameter, for example supply voltage, and the vertical (Y) axis represents the value of another test operating level parameter, for example clock frequency. To produce enough data for a Shmoo plot, an IC tester must test an IC at every combination of X and Y parameters values within a range of interest bounded by XMIN, XMAX, YMIN and Y^ with some given resolution in X and Y step size. The tester then displays or prints a Shmoo plot graph representing test results for each combination of X and Y values. The tester plots a "pass" symbol (represented in FIG. 1 by a square containing a small circle) when the IC passes a test performed under the combination of test parameters indicated by the symbol's (X,Y) coordinates. The tester plots a "fail" symbol (represented in FIG. 1 by an empty square) when the IC fails a test performed under the combination of test parameters indicated by the symbol's (X,Y) coordinates. Like its namesake, a Shmoo plot often has an irregular shape. But a Shmoo plot is very useful because it clearly depicts the operating limits of an IC with respect to the various combinations of two test parameters .
Though Shmoo plots are useful, they require a lot of tester time to produce the necessary data because the tester has to perform so many tests on the IC . However since ICs usually perform correctly at every point within the Shmoo plot's contour, a tester need not test every combination of parameters within the range of interest if it can perform enough tests to locate the Shmoo plot's contour, the boundary between areas of pass and fail. FIGS. 2 and 3 illustrate a method IC testers have commonly used to locate the boundaries of a Shmoo plot.
Referring to FIG. 2, the tester performs a first IC test to produce a pass/fail symbol at one corner of the area of interest bounded by Y^, MιN, XMAX n( X MIN- In the example of FIG. 2 the tester performs the first IC test with X and Y parameters set to XMIN and Y^. Since the IC fails the test, the tester plots a fail symbol 20 at the appropriate plot coordinates. The tester then increments the X parameter and repeats the test. Since the IC again fails, the tester plots a fail symbol at the current X,Y coordinates, position 21. The tester continues to increment X and to test the IC and to plot fail symbols until X reaches X^ at position 22. The tester then decrements Y, resets X to XMIN, tests the IC and plots a fail symbol at position 23. The tester continues to test the IC for each successively lower value of Y at all values of X in the range of interest thereby producing complete rows of symbols 24- 26 . However while traversing row 27, the tester encounters a combination of X and Y values on the Shmoo plot contour for which the IC passes the test. It then produces a "pass" symbol 18 at the current X,Y coordinates. At this point, since it has located a point on left side of the Shmoo plot contour, the tester stops traversing row 27, decrements Y, resets X to XMIN and begins producing symbols along the next row 28. The tester continues to repeat the process producing a row of symbols for each successively smaller value of Y with each row ending either at (Y,Xm) if the IC does not pass the test for any value of X along that row or at the first X position of the row for which the IC passes a test. The tester may halt the procedure when it first encounters a row 29 for which the IC once again fails at all X positions.
By this time the tester has discovered several points along the left side of the Shmoo plot contour of FIG. 1. As illustrated in FIG. 3, the tester looks for points along the right side of Shmoo plot contour by performing tests starting at the right side of the plot, for example at the rightmost point 30 of the uppermost row 27 not already fully tested and working its way leftward along the row until it reaches a point 31 on the Shmoo plot contour. The tester repeats this process for each lower row to locate points along the right side of the Shmoo plot contour. The tester stops testing when it reaches row 29 for which the IC fails at all points. As may be seen in FIG. 3 the tester has not yet located every point of the actual Shmoo plot contour because it has not performed a test at every (X,Y) point along the contour. The contour is therefore indeterminate in certain areas, for example in areas 32-34. A tester could locate most of these areas of the Shmoo plot contour by performing two other sets of tests in which it moves along symbol columns toward the Shmoo contour starting both from above and below the contour. However since the additional tests add more time to the testing process, testers typically do not often perform those additional tests .
FIG. 4 illustrates a Shmoo contour plot that a tester might produce based on the pass/fail data of FIG. 3. Note that the Shmoo plot contour shown in FIG. 4 is not complete. Nonetheless the Shmoo contour plot of FIG. 4 is useful as a rough approximation of the true contour of the Shmoo plot of FIG. 1 and the tester performs only about half as many tests to produce the Shmoo contour plot of FIG. 4 than it would have to perform to produce the full Shmoo plot of FIG. 1. Note that most of the tests performed are "fails". Since an IC tester can quickly stop a test when the IC fails, most of the time-consuming "pass" tests are avoided by performing a contour test rather than a full Shmoo plot test. In any case, IC performance on and near the X,Y Shmoo plot contour is normally of primary interest because that's where the IC's problems normally lie. It would be helpful, however, if a tester were able to locate a Shmoo plot contour by testing an IC at fewer combinations of X and Y parameter values and yet produce a more accurate depiction of the true Shmoo plot contour.
Summary of the Invention
In accordance with the present invention, a test is repeatedly performed on an integrated circuit (IC) with the IC operating under each of several combinations of values of two IC operating parameters (X and Y) within a range of values of interest bounded by minimum and maximum values of X and Y: XMIN, MιN, MAX and Y^. The pass/ fail results of the tests define a Shmoo plot contour representing the boundary of a two-dimensional range of combinations of values of the X and Y parameters for which the IC passes the test. In accordance with the invention, the tests are conducted in four phases .
During a first test phase, the combinations of values of the X and Y on the left side of the Shmoo plot contour (the side facing the -X direction) are located. The value of the X parameter is initially set to XMIN and the value of the Y parameter is initially set Y^^ and the integrated circuit device under test (DUT) is tested at those values of X and Y. If the DUT fails the test, the value of the X parameter is repeatedly incremented until the DUT passes the test. That combination of values of X and Y lies on the Shmoo plot contour. (If X reaches X^ before the DUT passes the test, Y is decremented and the process of repeatedly incrementing X and testing the DUT is repeated until a passing X,Y combination is found.)
After the first passing combination of values of X and Y is found, Y is decremented while X is held at its current value. If the DUT initially passes the test for the lower value of Y, X is repeatedly decremented until a value of X is found for which the DUT fails the test (or until X reaches XMIN) , at which point Y is decremented. On the other hand if the DUT initially fails the test for a value of Y, X is repeatedly incremented until a value of X is found for which the DUT passes the test (or until X reaches X^) , at which point Y is decremented again. This process is repeated for each successively lower value of Y until Y reaches YM1N.
During a second test phase, combinations of values of X and Y on the side of the Shmoo plot contour facing right (the +X direction) are located. At the start of the second phase, the X parameter is initially set to X^ and Y is initially set to YMAX- If the DUT then fails the test X is repeatedly decremented and the DUT retested until a value of X is found for which the DUT passes the test, at which point Y is decremented. If the DUT initially passes the test, X is repeatedly incremented until a value of X is found for which the DUT fails the test (or until X reaches X^) , at which point the value of Y is decremented. On the other hand, if the DUT initially fails the test for a value of Y, X is repeatedly decremented until a value of X is found for which the DUT passes the test (or X reaches XMIN) , at which point Y is decremented again. This process is repeated for each successively lower value of Y until Y reaches YMIN. During a third test phase, combinations of values of X and Y on the side of the Shmoo plot contour facing upward (the +Y direction) are located. At the start of the third phase, the X parameter is initially set to X^ and Y is initially set to Y^. If the DUT then fails the test Y is repeatedly decremented and the DUT retested until a value of Y is found for which the DUT passes the test, at which point X is decremented. If the DUT initially passes the test, Y is repeatedly incremented until a value of Y is found for which 6 the DUT fails the test (or until Y reaches YMAX) , at which point the value of X is decremented. On the other hand, if the DUT initially fails the test for a value of X, Y is repeatedly decremented until a value of Y is found for which the DUT passes the test (or Y reaches YMIN) , at which point X is decremented again. This process is repeated for each successively lower value of X until X reaches XMIN.
During a fourth test phase, combinations of values of X and Y on the side of the Shmoo plot contour facing downward (the -Y direction) are located. At the start of the fourth phase, the X parameter is initially set to XMIN and Y is initially set to YMIN. If the DUT then fails the test Y is repeatedly incremented and the DUT retested until a value of Y is found for which the DUT passes the test, at which point X is incremented. If the DUT initially passes the test, Y is repeatedly decremented until a value of Y is found for which the DUT fails the test (or until Y reaches YMIN) , at which point the value of X is incremented. On the other hand, if the DUT initially fails the test for a value of X, Y is repeatedly incremented until a value of Y is found for which the DUT passes the test (or Y reaches YMAX) , at which point X is incremented. This process is repeated for each successively higher value of X until X reaches XMAX-
It is accordingly an object of the invention to produce a Shmoo contour plot representing the boundary of a two-dimensional range of combinations of values of two operating parameters for which an IC passes a test.
It is another object of the invention to limit the number of times the IC must be tested in order to produce sufficient data create a Shmoo contour plot.
The concluding portion of this specification particularly points out and distinctly claims the subject matter of the present invention. However those skilled in the art will best understand both the organization and method of operation of the invention, together with further advantages and objects thereof, by reading the remaining portions of the specification in view of the accompanying 7 drawing (s) wherein like reference characters refer to like elements .
Brief Description of the Drawing (s) FIG. 1 illustrates a prior art Shmoo plot;
FIGS. 2-4 illustrate stages of development of a Shmoo contour plot created in accordance with a prior art method; FIG. 5 illustrates in block diagram form an apparatus for generating a Shmoo contour plot in accordance with the present invention;
FIGS. 6-10 illustrate stages of development of a Shmoo contour plot created in accordance with the present invention;
FIGS. 11-14 illustrate in flow chart diagram form steps carried out by the host computer of FIG. 5 in creating the Shmoo contour plot of FIGS. 6-10;
FIGS. 15 and 16 illustrate stages of development of a Shmoo contour plot created in accordance with an alternative embodiment of the present invention; and FIG. 17 illustrates in flow chart diagram form steps carried out by the host computer of FIG. 5 in creating the Shmoo contour plot of FIGS. 15 and 16.
Description of the Preferred Embodiment ( s ) FIG. 5 illustrates an apparatus 40 in accordance with the present invention for producing a Shmoo plot contour graph indicating a range of values of a pair of operating parameters under which an integrated circuit device under test (DUT) 42 can pass a test. Apparatus 40 includes a conventional integrated circuit tester 44 controlled by a host computer 46 via programming data and control signals sent to tester 44 via a bus 47. The programming data tells tester 44 how to test DUT 42 and indicates how tester 44 is to set values of various DUT operating parameters for the test. Such operating parameters may include, for example, the power supply voltage provided to DUT 42, the level of load current DUT 42 is to drive at its output terminals, the frequency of a clock signal input to DUT 42, and the like. After carrying out the test indicated by its programming data, tester 44 transmits pass/fail data back to host computer 46 via bus 47 indicating whether DUT 42 passed or failed the test. When host computer 46 tells tester 44 to repeatedly perform the same test on DUT 42 using different combinations of values of two operating parameters, host computer 46 can generate a Shmoo plot on display monitor 48 or paper printer by a printer 45. A "Shmoo plot", as illustrated, for example, in FIG. 1, graphically distinguishes the combinations of operating parameter values for which DUT 42 can operate correctly from the combinations of operating parameter values for which DUT 42 fails to operate correctly. The Shmoo plot has a horizontal X axis representing one of the operating parameters and a vertical Y axis representing the other operating parameter. (The "X" or "Y" parameter of a Shmoo plot may also be some mathematical combination of several operating parameters . ) A color or other characteristic of a symbol appearing at each position of the Shmoo plot defined by coordinates X and Y indicates whether DUT 42 passed or failed a test conducted with operating parameter values indicated by the symbol's X and Y coordinates. In FIG. 1 each square containing a small circle represents a passed DUT test while each square not containing a small circle represents a failed DUT test.
Host computer 46 could acquire all data it needs to produce the full Shmoo plot of FIG. 1 by configuring tester 44 to test DUT 42 for every combination of X and Y operating parameters values within an area of interest bounded by minimum and maximum values of X and Y: XMIN, YMIN, X^ and Y,^. However tester 44 has to carry out a large number of tests in order to provide host computer 46 with enough data to produce a full Shmoo plot. Fortunately, however, since DUTs usually perform correctly at every point within a bounded area of a Shmoo plot, the DUT's behavior with respect to its X and Y operating parameters can be adequately represented by a plot of the Shmoo 's contour. To produce a Shmoo contour plot it isn't necessary to test the DUT for every combination of X and Y parameters within the range of interest. In accordance with the invention, host computer 46 chooses successive combinations of X and Y parameter values for which DUT 42 is to be tested in a manner requiring tester 44 to perform only a relatively small number of DUT tests. The algorithm host computer 46 carries out to determine how to set the X and Y parameter values has four phases as described below. FIGS. 6-10 illustrate the progression of the Shmoo contour plot as the algorithm proceeds through the four phases. FIGS. 11-14 respectively illustrate the four phases of the Shmoo contour plotting algorithm in flow chart form.
Phase 1
FIG. 6 illustrates the portion of the Shmoo plot contour produced during the Phase 1 of the algorithm when looking for the contour of the Shmoo plot of FIG. 1. Each small square in FIG. 6 represents a test performed using the values of X and Y parameters indicated by the square's X and Y coordinates . A circle within a square indicates that the DUT passed a test using the value of X and Y parameters indicated by the square's coordinates. The order in which the algorithm directs computer 44 to plot the Shmoo contour is indicated by bold black lines 49 passing through the squares . FIG. 11 illustrates Phase 1 of the algorithm. Referring to FIGS. 6 and 11, at the start of the Phase 1, host computer 46 initially commands tester 44 to set the value of Y to Y^ and to set the value of X to XMIN (step 100) and then commands tester 44 to indicate if the DUT passes a test using those X and Y parameter values (step 101) . If tester 44 reports that the DUT did not pass the test, host computer 46 plots a fail symbol 50 in the Shmoo contour plot at the intersection of Y^ and XMIN (step 102) .
Since X is not yet at its maximum level X^ (step 103), host computer 46 increments X by a predetermined X step size (step 104) and returns to step 101 where it commands tester 44 to repeat the test for the new value of X. Host computer 46 continues to repeat steps 101-104 making a rightward (+X direction) traverse of row 51 of FIG. 6. Since X reaches XMΛY 10 at step 103 before the DUT passes a test, and since Y is not yet at its minimum value YMIN (step 105), host computer 46 decrements Y and resets X to XMIN (step 106) . Host computer 46 also sets Y^ equal to Y since the DUT has failed for all values of Y above the current value of Y. Host computer 46 then returns to step 101 to begin a rightward traverse the next lower row. Host computer 46 continues to loop through steps 101-107 traversing each successively lower row rightward until in row 52 it finds a combination of X and Y parameter values for which the DUT passes the test (step 101) . At the appropriate X,Y coordinate of row 52, host computer 46 plots a pass symbol 53 (step 108) . Host computer 46 also sets the value of a XPASS variable to the current value of X (step 109). (During Phase 1, the XPASS variable is used to keep track of the smallest value of X for which the DUT passes the test.) Host computer 46 the decrements the value of Y by a predetermined step size (step 110) and commands tester 44 to test the DUT with the current values of X and Y (step 112) . Since the DUT passes the test, host computer 46 plots a pass symbol 54 at the current X,Y coordinates of Shmoo plot row 56 (step 113), sets the value of the XPASS variable to the lesser of the current value of X and the current value of XPASS (step 114), decrements X (step 115) and commands tester 44 to perform the test (step 116) . Since the DUT again passes the test, the host computer 46 plots a pass symbol at position 55 (step 117) . Since the value of X has not reached XMIN (step 118) , host computer 46 returns to step 114. Host computer 46 continues to loop through steps 114-118, thereby traversing row 56 of the Shmoo plot in the leftward (-X) direction until at step 116 the tester reports that the DUT has failed the test. Host computer 46 then plots a fail symbol 58 at the appropriate X,Y coordinates of the Shmoo plot (step 119) .
After step 119, or after step 118 if X has reached XM1N at that point, host computer 46 determines whether Y has yet reached YMIN (step 120) . Since Y has not reached YMIN, host computer 46 returns to step 110 to decrement Y. After decrementing Y at step 110, if host computer 46 detects at 11 step 112 that the DUT does not pass the test, host computer 46 plots a fail symbol at the current X,Y coordinates (step 122) and begins traversing the current row to the right looking for a DUT pass. To do so it increments X (step 123), tests the DUT (step 124) , plots a fail symbol when the DUT fails (step 125) and reverts to step 123. Host computer 44 continues to loop through steps 123-126 traversing the Shmoo plot rightward plotting fail symbols until at step 124 the DUT passes the test. At that point host computer 44 plots a pass symbol at the current X,Y coordinates (step 119), and if Y is not yet equal to YMIN (step 120), decrements Y (step 110) and begins traversing the next Shmoo plot row.
When at step 120, Y reaches YMIN, the plotting process has gone out of the range of interest. Host computer 46 therefore sets XMIN equal to XPASS and YMIN equal to Y (step 128) . Also if at step 126 X has reached X^^ on some row, then the plotting process has gone below the lowest (smallest Y) point of the Shmoo plot contour. In such case computer 44 increments Y (step 127) before it sets YMIN equal to the current value of Y and sets XMIN equals to XPASΞ (step 128) .
After step 128, host computer 44 moves on to Phase 2 of the algorithm.
Phase 2 FIG. 7 illustrates how Phase 2 of the algorithm fills in additional portions of the Shmoo contour plot. FIG. 12 illustrates operation of host computer 46 during Phase 2 of the algorithm. Note that the YMIN and XMIN values are higher at the start of Phase 2 than they were at the start of Phase 1 because they were raised at step 128 of the Phase 1 algorithm of FIG. 11. Also the value of Y^ is lower at the start of Phase 2 than it was at the start of Phase 1 because it was reduced at step 107 of the Phase 1 algorithm of FIG. 11. Referring to FIGS. 7 and 12, computer 46 first initializes XPASS variable to XMIN, sets X equal to X^, and sets Y equal to Y^ (step 140) . (During Phase 2, the XPASS variable is used to keep track of the maximum value of X for 12 which the DUT passes the test.) The DUT is then tested (step 142) and since the DUT fails the test computer 46 plots a fail symbol 64 at the current X,Y position (step 143), decrements X (step 144), and repeats the test (step 145) . Computer 46 continues to loop through steps 143-145 traversing row 66 of the Shmoo plot of FIG. 7 to the left ( -X direction) plotting fail symbols until at step 145 tester 44 indicates that the DUT has passed the test. Computer 46 then plots a pass symbol 68 at the Shmoo plot position corresponding to the current X,Y values (step 146) . Since Y is not yet equal to YMIN (step 147), computer 44 decrements Y (step 148) and returns to step 142 to test the DUT. Since the DUT passes the test (step 142), computer 46 plots a pass symbol at position 70 (step 154), sets XPASS equal to the maximum of X and XPASS (step 155), increments X (step 157) and tests the DUT (step 158) . Computer 46 continues to loop through steps 154-158 traversing row 72 of the Shmoo plot of FIG. 7 to the right plotting pass symbols until at step 158 tester 44 indicates that the DUT has failed the test. Computer 46 then plots a fail symbol 74 at the Shmoo plot position corresponding to the current X,Y values (step 146) .
After step 158, or after step 156 if X had reached X,^ before the DUT failed the test, computer 46 compares the current value of Y to YMIN (step 147) . Since Y has not yet decreased to YMIN, computer 46 again decrements Y by the unit Y step size (step 148) and repeats steps 142-146, thereby traversing row 76 to the left plotting fail symbols and looking for a DUT pass. The Phase 2 process continues row by row until at step 147, Y reaches YMIN. At that point computer 46 sets X^ equal to XPASS (step 159) and moves to Phase 3 of the process .
Phase 3
FIG. 8 illustrates how Phase 3 of the algorithm fills in additional portions of the Shmoo contour plot. Note that the X MAX value is lower at the start of Phase 3 than it was at the start of Phase 2 because it was lowered at step 159 of the Phase 2 algorithm of FIG. 12. This limits the range of X 13 values of interest so as to reduce the number of tests that must be performed during Phases 3 and 4.
FIG. 13 is a flow chart illustrating operation of host computer 46 during Phase 3 of the algorithm. Referring to FIGS. 8 and 13, computer 46 first sets X equal to X^^ and Y equal to Y,^ (step 160) and then signals tester 44 to test the DUT (step 162) . Since the DUT fails the test at (XMAX/ MAX)' computer 46 plots a fail symbol 80 at that X,Y position (step 164), decrements Y (step 165), and repeats the test (step 166) . Computer 46 continues to loop through steps 164-166 traversing downward (-Y direction) along column 82 of the Shmoo plot of FIG. 8 until at step 166 tester 44 indicates that the DUT has passed the test. Computer 46 then plots a pass symbol 84 at the Shmoo plot position corresponding to the current X,Y values (step 167) . If X is not yet equal to XMIN (step 168), computer 46 decrements X (step 169) and returns to step 162 to test the DUT. Since the DUT passes the test (step 162) computer 46 plots a pass symbol 86 at the current X,Y position (step 174). Since Y has not yet reached Y^ (step 175), computer 46 increments Y (step 176) and tests the DUT (step 178) . Computer 46 continues to loop through steps 174-178 traversing column 88 upward (+Y direction) until at step 178 tester 44 indicates the DUT has failed the test. Computer 46 then plots a fail symbol 90 at the current X,Y position (step 167) . After step 167, or after step 175 if Y reaches Yra before the DUT fails a test, computer 46 compares the current value of X to XMIN (step 168) . Since X has not yet decreased to XMIN, computer 46 decrements X (step 169) and loops through steps 162-166, traversing column 92 downward (-Y direction) looking for a DUT pass. The process continues column by column following path 93 along the Shmoo plot until X reaches XMIN at step 168. At that point computer 46 moves to Phase 4 of the process.
Phase 4
FIG. 9 illustrates how Phase 4 of the algorithm fills in remaining portions of the Shmoo contour plot. FIG. 14 is a flow chart illustrating operation of host computer 46 during 14
Phase 4 of the algorithm. Referring to FIGS. 9 and 14, computer 46 first sets X equal to XMIN and Y equal to YMIN (step 180) , and then signals tester 44 to test the DUT (step 181). Since the DUT fails the test at (XMIN,YMIN), computer 46 plots a fail symbol 95 at the current X,Y position (step 182), increments Y (step 183), and repeats the test (step 184). Computer 46 continues to loop through steps 182-184 traversing upward (+Y direction) along column 96 of the Shmoo plot of FIG. 9 until at step 184 tester 44 indicates that the DUT has passed the test. Computer 46 then plots a pass symbol at the Shmoo plot position 97 corresponding to the current X,Y values (step 185) . Since X is not yet equal to X MAX (step 186), computer 46 increments X (step 187) and signals tester 44 to test the DUT (step 181) . Since the DUT passes the test computer 46 plots a pass symbol at the appropriate position on column 98 (step 188) . Since Y has not yet reached YMIN (step 189), computer 46 decrements Y (step 190) and tests the DUT (step 191). Computer 46 continues to loop through steps 188-191 traversing column 98 downward (-Y direction) until at step 191 tester 44 indicates the DUT has failed the test. Computer 46 then plots a fail symbol at the Shmoo plot position corresponding to the current X,Y values (step 185). After step 185, or after step 189 if Y reaches YMIN before the DUT failed the test, computer 46 compares the current value of X to X,^ (step 186) . Since X has not yet increased to X^, computer 46 increments X (step 187) and returns to step 181. Phase 4 of the process continues column by column until at step 186, X reaches X^. At that point computer 46 terminates the Shmoo plot contour algorithm.
FIG. 10 illustrates the Shmoo contour plot computer 44 produces on printer 45 or display monitor 48 of FIG. 5 after carrying out the above described method. Note that the Shmoo plot contour of FIG. 10 produced in accordance with the present invention is much more complete than the Shmoo contour plot of FIG. 4 produced in accordance with the prior art method. Note also, by comparing FIG. 3 with FIG. 9, that the prior art contour plotting method requires a tester to 15 perform many more tests than the contour plotting method of the present invention.
Alternative Embodiment FIGS. 15 and 16 illustrate development of a Shmoo contour plot created in accordance with an alternative embodiment of the present invention. FIG. 17 illustrates in flow chart diagram form the steps carried out by host computer 46 of FIG. 5 in creating the Shmoo contour plot of FIGS. 15 and 16.
Referring to FIGS. 15-17, host computer 5 initially (step 220 of FIG. 17) sets a pair of variables RIGHT_COUNT and LEFT_COUNT to 0. Computer 46 then locates and plots (step 222) a first combination of X and Y values for which the DUT passes the test using the algorithm indicated in steps 100-108 of FIG. 11. Thus Computer 46 scans rows 200-203 plotting DUT test fails until it finds an X,Y coordinate for which the DUT passes a test. At that point it plots a pass symbol at the current X,Y coordinate 204. The flow chart of FIG. 17 assumes a "direction" of movement as computer 46 moves from coordinate to coordinate.
Hence forward, computer 46 "moves" from X,Y coordinate to coordinate testing the DUT at each coordinate is passes through. To move from one X,Y coordinate to the next, computer 46 may only move either horizontally or vertically by 1 unit X or Y step and may not move diagonally. In particular, if we consider the computer 46 as having a "direction" of movement as it enters any particular X,Y coordinate, then it follows two rules in choosing the next coordinate:
1. if computer 46 moves into a X,Y coordinate for which the DUT passes the test, then it moves to the next X,Y coordinate to the right relative to its last direction of movement , and
2. if computer 46 moves into an X,Y coordinate for which the DUT fails the test or for which the X,Y coordinate is out 16 of the bounds defined by X^, XMιN' Y MAX> and YMIN, then it moves to the next X,Y coordinate to the left relative to its last direction of movement.
When computer 46 moved to X,Y coordinates 204, its direction of movement was in the +X direction. Thus after detecting that the DUT passed the test at coordinate 204 (step 222), computer 46 moves to the next coordinate 205 the "right" relative to the +X direction of movement by decrementing Y (step 224) . Computer 46 also increments the RIGHT_COUNT parameter at step 224.
Computer 46 then tests the DUT at coordinate 205 (step 226) and since the DUT passes the test, it plots a pass symbol at the new X,Y coordinates (step 230) . (If the LEFT_COUNT parameter is not already 0 at step 230, computer 46 resets it to 0.) Since the DUT passes at coordinate 205, computer 46 moves to the right once again to coordinate 206 and increments the RIGHT_COUNT parameter once again (step 234) . Since it has not yet returned to the first passing X,Y coordinate 204 (step 236), since the RIGHT_COUNT parameter has not yet reached 3 (step 240), and since the current X,Y coordinates are not out of bounds (step 242) computer 46 returns to step 226 to retest the DUT. Since the DUT passes the test at current coordinates 206 (step 228), computer 46 plots the pass symbol at coordinate 206 and then moves to the right and increments the RIGHT_COUNT parameter (step 234) . After determining that it has not returned to coordinate 204, computer 46 finds that the RIGHT_COUNT parameter has reached 3. This means that it has moved to an X,Y coordinate 207 for which the DUT has already been tested and failed. At this point, computer 46 moves to step 246 where it plots a fail symbol and resets the RIGHT_COUNT parameter to 0. It then moves left to X,Y coordinate 208 and increments the LEFT_COUNT parameter (step 248) . Since computer 46 has not returned to the first passing X,Y coordinate 204 (step 250), since LEFT_COUNT has not reached 3 (step 252) and since the current X,Y coordinate 208 is not out of bounds (step 254), computer 46 tests the DUT at coordinate 208 (step 226) . 17
Since the test fails at coordinate 208, it plots the fail (step 246), moves left to coordinate 209 and increments the LEFT_COUNT parameter (step 248) and returns to step 226 via steps 252 and 254 to retest the DUT at coordinate 209. After plotting a fail symbol (step 246) and moving left (step 248) computer 46 finds at step 250 that it has moved left three times in a row and has returned to a coordinate 206 for which the DUT has already been tested and has passed. At that point program flow switches to step 230 where a pass symbol is plotted and the LEFT_COUNT parameter is reset to zero. As computer 46 progresses from coordinate-to-coordinate, it moves around the Shmoo contour in the manner indicated by the bold black line 210 until at step 236 it finds that it has returned to the first passing X,Y coordinate 204. At that point the Shmoo plot contour routine of FIG. 17 ends. FIG. 16 illustrates the resulting Shmoo plot contour.
In the example of FIG. 15, since all coordinates tested were within the boundaries defined by X^, XMIN, Y , and YMIN, the result of step 242 or 254 was always a "NO" . However if computer 46 has moved to an X,Y coordinate that had been out of bounds, it would have treated that X,Y coordinate as a "fail" by moving to step 246.
The alternative embodiment of the Shmoo plot contour method illustrated in FIG. 17 can require tester 40 to conduct more tests on the DUT than the embodiment of the Shmoo plot contour method illustrated in FIGS. 11-14 but under some circumstances can provide a more complete picture of the Shmoo plot contour. Note that the Shmoo plot contour of FIG. 16 is substantially similar to the Shmoo plot contour of FIG. 10 except that a small gap 212 in the Shmoo plot contour of FIG. 10 does not appear in the Shmoo plot contour of FIG. 17. While Phases 1-4 of the method illustrated in FIGS. 11- 14 locate the points along the Shmoo plot facing the -X, +X, +Y and -Y directions, respectively, those skilled in the art will appreciate that the method can be easily modified to locate points along the Shmoo plot contour faces in any order . Those skilled in the art will appreciate that the algorithm for each phase could be modified so that the computer traverses a face in a direction opposite to that illustrated. For example the Phase 2 flow chart of FIG. 12 starts the process at X^^, Y^^ and works its way down the +x face of the Shmoo contour plot in the -Y direction, the Phase 2 process could also have started at X^, YMIN and worked its way up the +X face of the Shmoo contour plot in the +Y direction. With regard to the alternative embodiment illustrated in FIG. 17, those skilled in the art will appreciate that the method could be easily modified to allow host computer to circumnavigate the Shmoo contour in a generally clockwise manner instead of the illustrated counter-clockwise manner by turning "left" on passes and "right" on fails.
While the present invention locates the contour of a Shmoo plot having two axes (X,Y), the invention could be employed to locate the contour of a Shmoo plot having three or more axes when three or more variable test parameters are of interest. For example, a three-axis (X,Y,Z) Shmoo plot contour would appear as a solid surface. The present invention could be used to quickly locate the contour of a three-dimensional Shmoo plot by locating the two-dimensional (X,Y) contour of a Shmoo plot for each value of interest of Z. By extention, the contour of an N- dimensional Shmoo plot may be located by locating the contour of an N-l dimensional Shmoo plot for each value of the parameter corresponding to the Nth dimension.
Thus while the forgoing specification has described preferred embodiment ( s ) of the present invention, one skilled in the art may make many modifications to the preferred embodiment without departing from the invention in its broader aspects. For example, The appended claims therefore are intended to cover all such modifications as fall within the true scope and spirit of the invention.

Claims

19Claim(s) What is claimed is:
1. A method of testing an integrated circuit (IC) with respect to various combinations of values of a first variable IC operating parameter (X) and a second variable IC operating parameter (Y) to rapidly determine a boundary of a two-dimensional range of combinations of values of the X and Y parameters for which the IC operates properly, the method comprising the steps of: a. setting a first combination of values of said X and Y parameters ; b. performing a test of said IC operating under said first combination of values of said X and Y parameters; c. if said IC fails the test performed at step b, repeatedly altering the value of the X parameter monotonically in a first direction to provide a first succession of combinations of values of said X and Y parameters and performing the test on the IC operating under each combination of said first succession until said IC passes said test; d. if said IC passes the test performed at step b, repeatedly altering the value of the X parameter monotonically in a second direction opposite of said first direction to form a second succession of combinations of values of said X and Y parameters, and performing the test on the IC operating under each combination of said second succession until said IC fails said test.
2. The method in accordance with claim 1 comprising the further steps of : e. altering the value of said Y parameter, and f. repeating steps b through d.
3. The method in accordance with claim 2 comprising the additional step of performing a plurality of repetitions of steps e and f with the value of the Y parameter being monotonically altered during each repetition of step e. 20
4. The method in accordance with claim 3 further comprising the steps of: g. setting a second combination of values of said X and Y parameters ; h. performing a test of said IC operating under said second combination of values of said X and Y parameters; i. if said IC fails the test performed at step h, repeatedly altering the value of the X parameter monotonically in said second direction to provide a third succession of combinations of values of said X and Y parameters and performing the test on the IC operating under each combination of said third succession until said IC passes said test; j . if said IC passes the test performed at step h, repeatedly altering the value of the X parameter monotonically in a first direction to form a fourth succession of combinations of values of said X and Y parameters, and performing the test on the IC operating under each combination of said fourth succession until said IC fails said test.
5. The method in accordance with claim 4 comprising the further steps of : k. altering the value of said Y parameter, and 1. repeating steps h through j.
6. The method in accordance with claim 5 comprising the additional step of performing a plurality of repetitions of steps k and 1 with the value of the Y parameter being monotonically altered during each repetition of step k.
7. The method in accordance with claim 6 further comprising the steps of: m. setting a third combination of values of said X and Y parameters;
n. performing a test of said IC operating under said third combination of values of said X and Y parameters; 21 o. if said IC fails the test performed at step n, repeatedly altering the value of the Y parameter monotonically in a third direction to provide a fifth succession of combinations of values of said X and Y parameters and performing the test on the IC operating under each combination of said fifth succession until said IC passes said test; p. if said IC passes the test performed at step n, repeatedly altering the value of the Y parameter monotonically in a fourth direction opposite of said fifth direction to form a sixth succession of combinations of values of said X and Y parameters, and performing the test on the IC operating under each combination of said sixth succession until said IC fails said test.
8. The method in accordance with claim 7 comprising the further steps of : q. altering the value of said X parameter, and r. repeating steps n through p.
9. The method in accordance with claim 8 comprising the additional step of performing a plurality of repetitions of steps q and r with the value of the X parameter being monotonically altered during each repetition of step q.
10. The method in accordance with claim 9 further comprising the steps of: s. setting a fourth combination of values of said X and Y parameters; t. performing a test of said IC operating under said fourth combination of values of said X and Y parameters; u. if said IC fails the test performed at step t, repeatedly altering the value of the Y parameter monotonically in said fourth direction to provide a seventh succession of combinations of values of said X and Y parameters and performing the test on the IC operating under each combination of said seventh succession until said IC passes said test; 22 v. if said IC passes the test performed at step t, repeatedly altering the value of the Y parameter monotonically in said third direction to form an eighth succession of combinations of values of said X and Y parameters, and performing the test on the IC operating under each combination of said eighth succession until said IC fails said test.
11. The method in accordance with claim 10 comprising the further steps of : w. altering the value of said X parameter, and x. repeating steps t through v.
12. The method in accordance with claim 11 comprising the additional step of performing a plurality of repetitions of steps w and x with the value of the X parameter being monotonically altered during each repetition of step w.
13. The method in accordance with claim 1 further comprising the step of generating a graph having a horizontal coordinate representing X parameter values and a vertical coordinate representing Y parameter values and displaying a symbol at an X,Y coordinate of said graph corresponding to each combination of X and Y parameter values for which said IC passes said test conducted while said IC is operating on said combination of X and Y parameter values .
14. The method in accordance with claim 2 further comprising the step of generating a graph having a horizontal coordinate representing X parameter values and a vertical coordinate representing Y parameter values and displaying a symbol at an X,Y coordinate of said graph corresponding to each combination of X and Y parameter values for which said IC passes said test conducted while said IC is operating on said combination of X and Y parameter values.
15. The method in accordance with claim 3 further comprising the step of generating a graph having a horizontal 23 coordinate representing X parameter values and a vertical coordinate representing Y parameter values and displaying a symbol at an X,Y coordinate of said graph corresponding to each combination of X and Y parameter values for which said IC passes said test conducted while said IC is operating on said combination of X and Y parameter values .
16. The method in accordance with claim 12 further comprising the step of generating a graph having a horizontal coordinate representing X parameter values and a vertical coordinate representing Y parameter values and displaying a symbol at an X,Y coordinate of said graph corresponding to each combination of X and Y parameter values for which said IC passes said test conducted while said IC is operating on said combination of X and Y parameter values .
17. An apparatus for testing an integrated circuit (IC) with respect to various combinations of values of a first variable IC operating parameter (X) and a second variable IC operating parameter (Y) to rapidly determine a boundary of a two-dimensional range of combinations of values of the X and Y parameters for which the IC operates properly, the apparatus comprising: tester means responsive to input control data indicating a combination of values of said X and Y parameter for performing a test on said IC operating on said combination of values and for producing output data indicating whether said IC passes said test; and control means for generating and transmitting said input control data to said tester means, said input control data indicating a first combination of values of said X and Y parameters such that said tester means performs said test of said IC operating under said first combination of values of said X and Y parameters, for receiving the output data produced by said tester means, and if said output data indicates said IC fails the test of said IC operating under said first combination of values of said X and Y parameters, for repeatedly generating and transmitting input altering the 24 value of the X parameter monotonically in a first direction to provide a first succession of combinations of values of said X and Y parameters so that said tester means repeatedly performs the test on the IC operating under each combination of said first succession until said output data produced by said tester means indicates said IC passes said test, and if said output data indicates said IC passes the test of said IC operating under said first combination of values of said X and Y parameters, repeatedly altering the value of the X parameter monotonically in a second direction opposite of said first direction to form a second succession of combinations of values of said X and Y parameters, so that said tester performs the test on the IC operating under each combination of said second succession until said output data produced by said tester means indicates said IC fails said test .
18. The apparatus in accordance with claim 17 further comprising means for generating a graph having a horizontal coordinate representing X parameter values and a vertical coordinate representing Y parameter values and displaying a symbol at an X,Y coordinate of said graph corresponding to each combination of X and Y parameter values for which said output data of said tester means indicates said IC passed said test while operating on said combination of X and Y parameter values .
19. A method of testing an integrated circuit (IC) with respect to various combinations of values of a first variable IC operating parameter (X) and a second variable IC operating parameter (Y) to rapidly determine a boundary of a two-dimensional range of combinations of values of the X and Y parameters for which the IC operates properly after having located a combination of X and Y parameter values on said boundary, the method comprising the steps of: a. altering said Y parameter by a Y step amount to produce a current combination of X and Y parameter values, 25 b. performing a test of said IC operating under said current combination of X and Y parameter values; c . if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by increasing said Y parameter value, and the IC passed the test last performed at step b, then decreasing the X parameter value to produce a new current combination of X and Y parameter values, d. if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by decreasing the Y parameter value, and the IC passed the test last performed at step b, then increasing the X parameter value in a fourth direction opposite to said third direction to produce a new current combination of X and Y parameter values, e. if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by decreasing the X parameter value, and the IC passed the test last performed at step b, then increasing the Y parameter value to produce a new current combination of X and Y parameter values and returning to step b, f . if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by increasing the X parameter value, and the IC passed the test last performed at step b, then decreasing the X parameter value to produce a new current combination of X and Y parameter values and returning to step b, g. if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by decreasing the Y parameter value, and the IC failed the test last performed at step b, then increasing the X parameter value to produce a new current combination of X and Y parameter values and returning to step b, h. if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by increasing the Y parameter value, and the IC failed the test last performed at step b, then decreasing the 26
X parameter value to produce a new current combination of X and Y parameter values and returning to step b, i. if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by decreasing the X parameter value, and the IC failed the test last performed at step b, then decreasing the
Y parameter value to produce a new current combination of X and Y parameter values and returning to step b, j . if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by increasing the X parameter value, and the IC failed the test last performed at step b, then increasing the X parameter value to produce a new current combination of X and Y parameter values and returning to step b.
20. The method in accordance with claim 19 further comprising the step of: k. repeating steps b-j until producing at one of steps c-j a current combination of X and Y parameter values matching the combination of X and Y parameter values produced at step a.
21. A method of testing an integrated circuit (IC) with respect to various combinations of values of a first variable IC operating parameter (X) and a second variable IC operating parameter (Y) to rapidly determine a boundary of a two-dimensional range of combinations of values of the X and
Y parameters for which the IC operates properly after having located a combination of X and Y parameter values on said boundary, the method comprising the steps of: a. altering said Y parameter by a Y step amount to produce a current combination of X and Y parameter values, b. performing a test of said IC operating under said current combination of X and Y parameter values; c. if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by increasing said Y parameter value, and the IC failed the test last performed at step b, then decreasing the 27
X parameter value to produce a new current combination of X and Y parameter values, d. if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by decreasing the Y parameter value, and the IC failed the test last performed at step b, then increasing the X parameter value in a fourth direction opposite to said third direction to produce a new current combination of X and
Y parameter values, e. if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by decreasing the X parameter value, and the IC failed the test last performed at step b, then increasing the
Y parameter value to produce a new current combination of X and Y parameter values and returning to step b, f . if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by increasing the X parameter value, and the IC failed the test last performed at step b, then decreasing the X parameter value to produce a new current combination of X and Y parameter values and returning to step b, g. if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by decreasing the Y parameter value, and the IC passed the test last performed at step b, then increasing the X parameter value to produce a new current combination of X and Y parameter values and returning to step b, h. if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by increasing the Y parameter value, and the IC passed the test last performed at step b, then decreasing the X parameter value to produce a new current combination of X and Y parameter values and returning to step b, i. if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by decreasing the X parameter value, and the IC passed the test last performed at step b, then decreasing the 28
Y parameter value to produce a new current combination of X and Y parameter values and returning to step b, . if the current combination of X and Y parameter values for which the IC was last tested at step b was produced by increasing the X parameter value, and the IC passed the test last performed at step b, then increasing the X parameter value to produce a new current combination of X and Y parameter values and returning to step b, and
22. The method in accordance with claim 20 further comprising the step of: k. repeating steps b-j until producing at one of steps c-j a current combination of X and Y parameter values matching the combination of X and Y parameter values produced at step a.
PCT/US1999/008741 1998-04-24 1999-04-20 Method for generating a shmoo plot contour for integrated circuit tester WO1999056142A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020007009269A KR20010041197A (en) 1998-04-24 1999-04-20 Method for generating a shmoo plot contour for integrated circuit tester
EP99918747A EP1078272A4 (en) 1998-04-24 1999-04-20 Method for generating a shmoo plot contour for integrated circuit tester
JP2000546249A JP2002513158A (en) 1998-04-24 1999-04-20 Method for generating shmoo plot contours for integrated circuit testers

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/065,754 US6079038A (en) 1998-04-24 1998-04-24 Method for generating a Shmoo plot contour for integrated circuit tester
US09/065,754 1998-04-24

Publications (1)

Publication Number Publication Date
WO1999056142A1 true WO1999056142A1 (en) 1999-11-04

Family

ID=22064876

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1999/008741 WO1999056142A1 (en) 1998-04-24 1999-04-20 Method for generating a shmoo plot contour for integrated circuit tester

Country Status (5)

Country Link
US (1) US6079038A (en)
EP (1) EP1078272A4 (en)
JP (1) JP2002513158A (en)
KR (1) KR20010041197A (en)
WO (1) WO1999056142A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113049943A (en) * 2021-03-09 2021-06-29 普冉半导体(上海)股份有限公司 Test method for adjusting chip parameters

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6418387B1 (en) * 1999-06-28 2002-07-09 Ltx Corporation Method of and system for generating a binary shmoo plot in N-dimensional space
US6795788B2 (en) * 2000-06-06 2004-09-21 Hewlett-Packard Development Company, L.P. Method and apparatus for discovery of operational boundaries for shmoo tests
US20030093737A1 (en) * 2001-11-13 2003-05-15 Michael Purtell Event based test system having improved semiconductor characterization map
US6820021B2 (en) * 2002-11-01 2004-11-16 Hewlett-Packard Development Company, L.P. System and method for generating a shmoo plot by varying the resolution thereof
US6847909B2 (en) 2002-11-01 2005-01-25 Hewlett-Packard Development Company, L.P. System and method for generating a shmoo plot by tracking the edge of the passing region
US6820027B2 (en) 2002-11-01 2004-11-16 Hewlett-Packard Development Company, L.P. System and method for generating a shmoo plot by avoiding testing in failing regions
US20040098644A1 (en) * 2002-11-18 2004-05-20 John Wuu System and method for generating a graphical representation of fault data of a memory device under test
US6876207B2 (en) * 2003-08-01 2005-04-05 Hewlett-Packard Development Company, L.P. System and method for testing devices
US7519878B2 (en) * 2005-08-04 2009-04-14 Teradyne, Inc. Obtaining test data for a device
US7711524B2 (en) * 2005-12-19 2010-05-04 Verigy (Singapore) Pte. Ltd. Estimating boundaries of Schmoo plots
WO2010082330A1 (en) * 2009-01-15 2010-07-22 株式会社アドバンテスト Method and program for detecting characteristics of device under test (dut) and storage medium containing the program
CN102288901B (en) * 2011-09-01 2016-05-11 上海华虹宏力半导体制造有限公司 A kind of processing method of emulated data
US10068634B2 (en) 2016-03-16 2018-09-04 International Business Machines Corporation Simultaneous write and read calibration of an interface within a circuit
US10090065B1 (en) 2017-03-14 2018-10-02 International Business Machines Corporation Simultaneous write, read, and command-address-control calibration of an interface within a circuit
US11176010B2 (en) * 2019-04-15 2021-11-16 International Business Machines Corporation Circuit-cycle reproduction

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04236372A (en) * 1991-01-18 1992-08-25 Mitsubishi Electric Corp Testing apparatus for semiconductor integrated circuit

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
BAKER K, BEERS VAN J: "SHMOO PLOTTING: THE BLACK ART OF IC TESTING", IEEE DESIGN & TEST OF COMPUTERS., IEEE SERVICE CENTER, NEW YORK, NY., US, vol. 14, no. 03, 1 July 1997 (1997-07-01), US, pages 90 - 97, XP002919602, ISSN: 0740-7475, DOI: 10.1109/54.606005 *
HAMADA M, ET AL.: "A HIGH-SPEED BOUNDARY SEARCH SHMOO PLOT FOR ULSI MEMORIES", RECORDS OF THE INTERNATIONAL WORKSHOP ON MEMORY TECHNOLOGY,DESIGN AND TESTING, XX, XX, 9 August 1993 (1993-08-09), XX, pages 04 - 09, XP002919600, DOI: 10.1109/MT.1993.263158 *
HICKLING R L: "EXTENDING BINARY SEARCHES TO 2 AND 3 DIMENSIONS", PROCEEDINGS OF THE INTERNATIONAL TEST CONFERENCE. WASHINGTON, SEPT. 10 - 14, 1990., NEW YORK, IEEE., US, vol. CONF. 21, 10 September 1990 (1990-09-10), US, pages 721 - 725, XP002919603, ISBN: 978-0-8186-9064-8, DOI: 10.1109/TEST.1990.114088 *
NIEWCZAS M, MALY W, STROJWAS A: "A PATTERN MATCHING ALGORITHM FOR VERIFICATION AND ANALYSIS OF VERY LARGE IC LAYOUTS", PROCEEDINGS 1998 INTERNATIONAL SYMPOSIUM ON PHYSICAL DESIGN. ISPD 98. MONTEREY, CA, APRIL 6 - 8, 1998., NEW YORK, NY : ACM., US, 1 April 1998 (1998-04-01), US, pages 129 - 134, XP002919601, ISBN: 978-1-58113-021-8, DOI: 10.1145/274535.274554 *
See also references of EP1078272A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113049943A (en) * 2021-03-09 2021-06-29 普冉半导体(上海)股份有限公司 Test method for adjusting chip parameters

Also Published As

Publication number Publication date
US6079038A (en) 2000-06-20
EP1078272A4 (en) 2004-11-24
JP2002513158A (en) 2002-05-08
KR20010041197A (en) 2001-05-15
EP1078272A1 (en) 2001-02-28

Similar Documents

Publication Publication Date Title
US6079038A (en) Method for generating a Shmoo plot contour for integrated circuit tester
US6809534B2 (en) Semiconductor device test method and semiconductor device tester
US7519878B2 (en) Obtaining test data for a device
EP0226494A2 (en) Electron beam test probe system for analyzing integrated circuits
JP3262281B2 (en) Test method and test equipment for electronic circuits
US5256975A (en) Manually-operated continuity/shorts test probe for bare interconnection packages
US5127064A (en) High resolution image compression methods and apparatus
US5363048A (en) Method and system for ensuring interconnect integrity in a micro-chip-module
EP1007981B1 (en) Robotic twin probe for measurement on printed circuit boards and electrical and electronic assemblies
US5107205A (en) Semiconductor device tester with a test waveform monitoring circuit
US5499194A (en) Method for scanning the surface of an object
US4774461A (en) System for inspecting exposure pattern data of semiconductor integrated circuit device
US6870388B2 (en) System and method for generating a SHMOO plot by varying the resolution thereof
US5404360A (en) Simulator for simulating circuit operation
US7529994B2 (en) Analysis apparatus and analysis method
US6014033A (en) Method of identifying the point at which an integrated circuit fails a functional test
US6105156A (en) LSI tester for use in LSI fault analysis
Mahlstedt et al. CURRENT: a test generation system for I/sub DDQ/testing
JPH11257939A (en) Measuring method for pattern dimension
US5206862A (en) Method and apparatus for locally deriving test signals from previous response signals
US5872795A (en) Method and apparatus for scan testing of multi-phase logic
US6850860B2 (en) Semiconductor device testing apparatus and test method therefor
JP2957073B2 (en) Semiconductor integrated circuit device and test method for semiconductor integrated circuit device
JP2812008B2 (en) Test sequence generator
JPH03267779A (en) Integrated circuit testing device

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP KR

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 1999918747

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020007009269

Country of ref document: KR

ENP Entry into the national phase

Ref country code: JP

Ref document number: 2000 546249

Kind code of ref document: A

Format of ref document f/p: F

WWP Wipo information: published in national office

Ref document number: 1999918747

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020007009269

Country of ref document: KR

WWW Wipo information: withdrawn in national office

Ref document number: 1999918747

Country of ref document: EP

WWR Wipo information: refused in national office

Ref document number: 1020007009269

Country of ref document: KR