Ãëàâíàÿ   
Îò÷åò î ïîèñêå   
Ññûëêè   
Áèáëèîòåêà   
Àâòîðåôåðàò   
Èíäèâèäóàëüíîå çàäàíèå   
ÄîíÍÒÓ   
Ïîðòàë ìàãèñòðîâ ÄîíÍÒÓ   
  

 


Burnell West and Tom Napier
Schlumberger Technologies -ATE Division
1601 Technology Dr.
San Jose, CA 95110-1397


ABSTRACT


This paper describes a novel digital functional test sys­tem architecture in which the timing and waveform generation hardware work with a sequence of events in the same manner as an IC timing/logic simulator.

INTRODUCTION


As the complexity and pin count of VLSI integrated cir­cuits have exploded, test program generation has be­come immensely more complicated. VLSI semiconductor manufacturers are using the data from the simulation of these complex IC's to generate timing information and test vectors for the test program. In most cases either the input data to, or output data from the simulator must be modified, before timing and test vectors can be generated with this simulation data. This is primarily due to the difference in the technique in which the simulator and test systems handle wave-form generation.
Timing/logic simulators work with transitions in the in­put and output waveforms to the IC which are called events (i.e. event driven simulation). Test systems gen­erate waveforms by trying to fit a certain format around these transitions and then programming the time at which these transitions are to occur with edges from a timing generator. The IC simulation is not restricted to using formats or limiting the number of transitions that occur in a period of time. Often a simulation will con­tain waveforms that the test system can not produce. One solution is to perform a special simulation in which the input data to the simulator has been modified so that the simulation will not contain waveforms that can­not be produced on the test system. Another approach is to modify the simulation output to make the data fit the test system. Modifying the input or output of the simulation has several negative effects:

  1. Increases test program generation time.
  2. Reduces the accuracy of the test by diverging from the intent of the simulation.
  3. Increases debug time if modifications to the simulation output create errors.

This paper introduces a new and novel ATE architec­ture, Sequencer Per Pin, in which waveforms are


generated in the same manner as a timing/logic simu­lator. We will describe how the Sequencer Per Pin architecture allows waveforms to be generated from the simulation data using an event sequence concept. Because this is the same concept as used by the sim­ulator no modifications are necessary to make the sim­ulation fit the test system architecture. This architecture reduces the test program generation time, while insuring that the intent of the simulation is per­formed during testing. The Sequencer Per Pin archi­tecture also makes generating hand coded test programs more straight forward and faster.


BACKGROUND

When digital functional automatic test equipment first became popular in the latter part of the 60's, its archi­tecture was very straightforward. Latches written by controllers formed the stimulus for the device under test, and comparators on the outputs would verify the device response. The standard paradigm for digital functional test was embedded in the ATLAS language statement "DO_DIGITAL_TEST", with the logical im­age of test functionality represented by the diagram of Figure 1.


fig1


The device is driven by FDrv if enabled by I/O. Other­wise the device output is compared to FExp as long as the signal Mask (or Strobe) permits. Each succeeding digital functional test consists of the following se­quence of events:

  1. Establish the device inputs.
  2. Wait for the device to respond.
  3. Check the device outputs.


For each device pin, at any given instant in time at most one of the following state changes can occur:

  1. Drive to HIGH
  2. Drive to LOW
  3. Drive OFF
  4. Begin Test for HIGH
  5. Begin Test for LOW
  6. Begin Test for Z-State
  7. End Test

Complexity arises because different pins require differ­ent sequences of events, and the timing at which the state changes are to occur will in general vary from pin to pin.
Test system architectures in the sixties and seventies evolved to minimize the hardware required to effective­ly produce large sequences of pin events. This was necessary, because good test hardware is costly. The principal architectural innovation of that period was the separation of functional data from timing, resulting in the development of very deep pattern memory applied with shared timing generators (TG's).[1] The functional data appeared as tables of 1's and O's (test vectors). Very effective functional tests could be produced for complex devices with just a few timing generators con­nected to pattern data by multiplexers and formatters. But this architectural construction, effective as it was at that time, introduced difficulties of its own. As devices became more complex, the process of parsing the test requirement into the pattern table and the timing be­came increasingly difficult. Limited numbers of timing resources inevitably imposed increasingly stringent re­strictions on their use. The translation from the simula­tor output to the test program became increasingly more obscure and problematical. At the same time, de­vice speeds dramatically increased, which made test margins ever more difficult to obtain. Pin skew and tim­ing generator distribution skew began to dominate tester performance considerations.[2]
During the last decade, TG-per-pin test systems were introduced to help alleviate some of these problems.[3-6] As more and more resources are applied indepen­dently to each of the device pins, fewer and fewer ma­chine restrictions are imposed on the functional test program. But simply applying a TG per pin does not eliminate the translation problem. The need to modify the simulation data exists regardless of whether the test system has shared resource timing or TG-per-pin timing architecture. The TG-per-pin architecture allows the flexibility to generate independent waveforms on


every device pin, but still restricts the waveforms with tester oriented formats and limited transitions. Further­more, many of the available TG-per-pin systems do not provide calibrated edge placement on all functions. Thus manual changes to the timing are still required to get adequate yields. These restrictions are removed by providing each pin with a full test event sequence ca­pability.


SEQUENCER PER PIN

We define an 'event' to be a pair (s,t), where 's' is a state and T is the time associated with a transition to 's'. An 'event sequence' is a time-ordered list of such pairs. For example, the waveform in Figure 2 here:


fig2

is defined by the event sequence (D1,1),(D0,8),(D1,13),(D0,18), interpreted as:

  1. Drive to HIGH at T=1
  2. Drive to LOW at T=8
  3. Drive to HIGH at T=13
  4. Drive to LOW at T= 18

The seven event types identified earlier are sufficient to define any digital test completely. Clearly, such a list can be derived directly from a simulator output. The goal is to apply this simulator data directly to the de­vice. This goal is achieved simply by applying appropri­ate event sequences, as defined by the simulator output, to each pin independently. For this, we need a full sequencer for each pin. A Sequencer Per Pin cir­cuit contains the local memory, local memory address­ing, event timing generation, drive and strobe edge generation, event sequence memory, hardware cali­bration circuitry, strobe comparison, and fail storage logic. Each Sequencer Per Pin circuit is independent of all other pins.
For convenience in pattern storage and human com­prehension of the test sequence, we do not dispense with the concept of F-data entirely. Also to reduce the amount of storage allocated to time values, the con­cept of global test period is reintroduced. However, the global test period is no longer a statement of how fast the device is running; it becomes nothing more than a convenient method of subdividing the test. This results in the architecture shown in Figure 3.


fig3


The Sequencer Per Pin circuit receives a global period marker and global event selection. The global event takes on the appearance of a 'test vector' as defined by the test systems of earlier architectures. We will use these terms interchangeably, but the reader is cau­tioned to keep in mind the distinction. These signals, together with the master clock, keep all pins synchro­nized. The stimulus waveforms generated by each Se­quencer Per Pin are sent to the pin electronics in the test head. Each Sequencer Per Pin also receives the DUT output data for comparison after it has been com­pared to preset thresholds by the pin electronics in the test head. The period marker consists of a period time zero event which is synchronized with the master clock, together with a period vernier value which tells the Sequencer Per Pin precisely when within the clock period the event sequence is to begin. The resolution of the period vernier is the test period resolution (not, as in many earlier architectures, the master clock it-self). Clearly, with this arrangement, there is no need to manipulate the master clock frequency to achieve desired stimulus pattern rates, with the consequent test program complications.

IMPLEMENTATION


The Sequencer Per Pin circuit is implemented in a total of eight custom integrated circuits. The heart of the cir­cuit is an ASIC which performs the event generation and timing. Six calibratable linear delay elements us­ing ECL technology for speed and stability are used to achieve the required high resolution and accuracy. A local memory control IC is implemented in CMOS. A pin slice PCB contains four Sequencer Per Pin chan-nels.[7-8]
Since the local memory, timing, waveform generation, and calibration circuits are all contained on a single board the configuration of the system is very modular and easily configured to the user's needs. Also, this partitioning minimizes the number of system intercon­nections and therefore improves the overall reliability.
The high speed sections of the system are liquid cooled to insure their reliability and stability. A cold plate is attached to each card and a specially designed heat sink transfers the heat from each component on a board to the cold plate. The cold plate is cooled by re­frigerated FC77 liquid circulating through copper tub­ing. This ensures that the junction temperature on any IC will never exceed 85° C. A low stable junction tem­perature will greatly decrease component failure and improve accuracy by preventing component timing from drifting due to temperature changes.[9]

CONCLUSION


A revolutionary tester architecture, the Sequencer Per Pin architecture, has been described. This architecture implements tests as sequences of events for each pin, synchronized by global period markers. This allows for performing complex tests on VLSI integrated circuits without requiring extensive program development and debug efforts. The automatic generation of these com­plex waveforms and strobe placement from timing sim­ulators was not possible on the prior generations of ATE. In addition, this architecture is more flexible than previous designs, permitting more precise implemen­tations of simulation data with fewer restrictions. The Sequencer Per Pin architecture will decrease the time needed to generate test programs by reducing the manual intervention required to generate timing and test vectors from timing/logic simulation data. The event sequence concept allows significant reduction in test pattern storage requirements, and optimizes this feature even further by permitting run-time assignment of pin data, avoiding duplications of test patterns and test programs for different package configurations.

Reference:

  • Herlein, R.,'Optimizing the Timing Architecture of a Digital LSI Test System', \TC Proceedings, pp. 200-205, 1983.
  • Sugamori, S., Yoshida, K., Maruyama, H., Kamata, S. 'Anaylsis and Definition of Overall Timing Accu­racy in VLSI Test System', ITC Proceedings, pp. 143-153,1981.
  • Bisset, S., The Development of a Tester-Per-Pin VLSI Test System Architecture', ITC Proceedings, pp. 151-155, 1983.
  • Sudo, T, Yoshii, A., Tamama, T, Narumi, N., Sak-agawa, Y. '"ULTIMATE": A 500-MHz VLSI Test System with High Timing Accuracy', ITC Proceed­ings, pp. 206-213, 1987.
  • Chang, Y, Hoffman, D., Gruodis, A., Dickol, J., 'A 250 MHZ Advanced Test System' ITC Proceed­ings, pp. 68-75, 1987.
  • Grasso, L.J., Morgan, C, Peloquin, M., Rajan, F., 'A 250 MHz Test System's Timing and Automatic Calibration', ITC Proceedings, pp. 76-84,1987.
  • Tamama, T, Narumi, N., Otsuji, T., Suzuki, M., Sudo, T, 'Key Technologies for 500-MHz VLSI Test System "ULTIMATE"', ITC Proceedings, pp. 108-113, 1988.
  • Muething, R., Saikley, C, 'Integrated Pin Electron­ics: A Path Toward Affordable Testing of High-Pin Count ASIC Devices', ITC Proceedings, pp. 883-887, 1987.
  • Sakagawa, Y, Akazawa, Y, Narume, N., Yoshii, A., Sudo, T, 'Packaging Technologies for 500-MHz VLSI Test System "ULTIMATE"', ITC Pro­ceedings, pp. 120-124, 1988.

[èñòî÷íèê]