Method and circuit using boundary scan cells for design library analysis

A boundary scan register circuit and a method of characterization testing. The boundary scan register circuit, including: a multiplicity of boundary scan cells connected in series, each boundary scan cell having a latch; means for isolating the boundary scan cells into one or more boundary scan segments, each boundary scan segment containing a different set of the boundary scan cells; and means for characterizing signal propagation through each boundary scan segment.

FIELD OF THE INVENTION

The present invention relates to the field of boundary scan testing; more specifically, it relates to a method and circuit characterization of process technology libraries and circuit implementations of latches using boundary scan registers.

BACKGROUND OF THE INVENTION

In limited volume production such as that found in the application specific integrated circuit (ASIC) realm, potential design improvements are difficult to assess because of the low volumes. While there are many techniques for testing integrated chips, current testing methodology provides little information useful to the designer of integrated circuits in terms of determining the effects of different process technology device library elements or different latch circuit implementations on integrated circuit performance. Evaluations can be performed using test chips. However test chips are expensive to design and fabricate and cannot normally be run in sufficient volume in limited volume production scenarios such as found in the ASIC realm.

Therefore, there is a need for an inexpensive methodology for characterization of process technology device library elements and latch circuits.

SUMMARY OF THE INVENTION

The present invention modifies boundary scan registers used to test interconnections of integrated circuit chips to allow process technology device library and latch circuit implementation performance characterization. Both intra (same process technology) and inter (different process technology) library elements may be characterized. The modification of boundary scan registers is done by substitution of different latch types of the same function (such different types of D-flip flops, i.e. a different circuit implementation) or by replacement of devices or groups of devices (such as transistors within a D flip-flop, i.e. having a different parametric specification) of otherwise identical latches of the boundary scan cells in different segments of the boundary scan register. The specific latch circuit implementation and process technology device library to be used in each boundary scan cell of each boundary scan segment is selected during design of the integrated circuit chip.

A first aspect of the present invention is a boundary scan register circuit, comprising: a multiplicity of boundary scan cells connected in series, each boundary scan cell having a latch; means for isolating the boundary scan cells into one or more boundary scan segments, each boundary scan segment containing a different set of the boundary scan cells; and means for characterizing signal propagation through each boundary scan segment.

A second aspect of the present invention is a method of characterizing elements of a boundary scan cell, comprising: providing a multiplicity of boundary scan cells connected in series, each boundary scan cell having a latch; isolating the boundary scan cells into one or more boundary scan segments, each boundary scan segment containing a different set of the boundary scan cells; and characterizing signal propagation through each the boundary scan segment.

A third aspect of the present invention is a method of characterizing elements of a boundary scan cell of a boundary scan register used for testing interconnections of an integrated circuit chip, comprising: providing a set of boundary scan cells connected in series to form a boundary scan register, a test data output pin of each previous boundary scan cell of the boundary scan register coupled to a test data input pin of an immediately subsequent boundary scan cell of the boundary scan register, each boundary scan cell coupled between a different integrated circuit chip input/output pad and a corresponding core logic circuit pin of the core logic circuit, each boundary scan cell having a latch, each latch having a latch mode and a flush mode; isolating the boundary scan cells into one or more boundary scan segments, each boundary scan segment containing a different sub-set of the set of boundary scan cells; and characterizing signal propagation through each the boundary scan segment.

DETAILED DESCRIPTION OF THE INVENTION

References to IEEE 1149.1 standards are to the Institute of Electrical and Electronic Engineers) IEEE standard 1149.1 which is defined by the Standard Test Access Port and Boundary Scan Architecture, Institute of Electrical and Electronics Engineers (May 21, 1990) and the 1149.1b-1994 Supplement.

For the purposes of the present invention a flip-flop is a type of latch, a pad is a physical chip structure for connecting the integrated circuit chip to the outside world and a pin is an internal chip connection point between circuits within an integrated circuit chip. The terms nominal design threshold voltage, nominal gate dielectric thickness and nominal channel length indicates a voltage, thickness or length specified for a device from a particular process technology library to meet a pre-determined device (i.e. transistor) performance specification. A latch circuit implementation is a function of the selection and interconnection of transistors, logic gates and other circuit elements used in the latch circuit and is independent of the process technology device library those circuit elements are selected from.

Boundary scan registers are used to test interconnections of integrated circuit chips to higher level packaging and between integrated circuit chips. During interconnect testing, boundary scan registers allow test patterns from a tester to be loaded into latches, be driven and from output drivers of each integrated circuit chip to receiver circuits of connected integrated circuit chips and the resultant output response captured in latches. The resultant data patterns are then compared by the tester to expected patterns. During interconnect testing, latches in boundary scan registers are connected to off-chip drivers, and paths from the core logic circuits to the off-chip drivers are disabled. During normal operation of the integrated circuit, the latches in the boundary scan registers are disconnected from the off-chip drivers, and paths from the core logic circuits to the off-chip drivers are enabled.

Since boundary scan testing is done at speeds well below normal operating speeds of the core logic circuits being tested and because in normal integrated circuit operation the boundary scan registers are not in the chip pad to core logic circuit pin path, the integrated circuit designer can select from a wide range of latch circuit implementations and process technology devices to use in designing a boundary scan chain.

FIG. 1is a schematic circuit diagram of an integrated circuit according to the present invention. InFIG. 1, an integrated circuit100includes a core logic circuit105and boundary scan segments115A,115B and115C. While three boundary scan segments (115A,115B and115C) are illustrated inFIG. 1, one or more boundary scan segments may be used to practice the present invention. Each boundary scan segment115A,115B and115C is coupled to one or more chip input/output (I/O) pads120through either a receiver125or a driver130. For bi-directional chip I/O pads, both a receiver and a driver would be coupled between the chip I/O pad and the boundary scan segment. A test data input (TDI) chip pad135, boundary scan segment115A, boundary scan segment115B, boundary scan segment115C and a test data output (TDO) chip pad140are coupled in series. Each boundary scan segment115A,115B and115C is connected to one or more core logic circuit I/O pins145. Integrated circuit chip100includes a multiplicity of additional chip pads150that may be used for supplying power to the integrated circuit chip or for connecting analog signals to the integrated circuit chip.

FIG. 2is a schematic circuit diagram of a boundary scan register according to the present invention. InFIG. 2, a boundary scan register155includes one or more boundary scan segments115coupled in series and a test data register160. Each boundary scan segment115, includes a multiplexer (MUX)165, one or more boundary scan cells170coupled in series, an inverter175, an AND gate180and a counter185. Boundary scan cells170utilize D flip-flops having a flush mode as illustrated inFIGS. 3,4and5and described infra and as taught in U.S. Pat. No. 6,567,943 to Barnhart et al. which is hereby incorporated by reference in its entirety. Other types of flushable latches may be used as well.

For each boundary scan segment115, the output of MUX165is connected to the TDI pin of a first of boundary scan cells170. A TDO pin of each boundary scan cell170is connected to the TDI pin of the next immediate boundary scan cell170. The TDO pin of a last boundary scan cell is connected to a first input of AND gate180, the input to inverter175and either the first input of MUX165of the next immediate boundary scan segment or (in the case of a last boundary scan segment) to TDO chip pad140. Thus, each boundary scan cell170of each boundary scan segment115is connected in series and each boundary scan segment115is connected in series between TDI chip pad135and TDO chip pad140. MUXes165allow isolation of each boundary scan segment115. The output of inverter175is connected to a second input of MUX165. A TEST SELECT pin is connected to the MUX select pin of each MUX165and a second input of each AND gate180. The output of AND gate180is connected to an input of a counter185, and an output of each counter185is connected to a different input of test data register160. An input (I) of each boundary scan cell170is coupled either to an I/O chip pad120through a receiver125or to a core logic circuit pin145. An output (O) of each boundary scan cell170is coupled either to a core logic circuit I/O pin145or to an I/O chip pad120through a driver130.

TDI chip pad135is connected to MUX165of a first of boundary scan segments115and to TDI pin of test data register160. TDO chip pad140is connected to a last of boundary scan cells170of a last of boundary scan segments115and to a TDO pin of test data register160. Test data register may include other inputs such as a RESET pin and a TEST pin.

For normal operation, component testing according to IEEE 1149.1 INTEST standards BS Shift operation BS Update Operation and for boundary scan interconnect testing according to IEEE 1149.1 Standard EXTEST, the TEST SELECT pin is held low. During boundary scan interconnect testing, a low signal on the TEST SELECT pin allows data on TDI chip pad135to serially propagate through all boundary scan cells170in all boundary scan segments115. Test data on chip I/O pads120connected to receivers125can then be captured in latches in boundary scan cells170and test data in the latches in boundary scan cells170controls drivers130connected to chip I/O pads120. A low signal on TEST SELECT disables output from all AND gates180.

For process technology device library characterization, latches in boundary scan cells170are set to flush mode (described infra) and a high on the TEST SELECT pin allows data on the TDO pin of the last boundary scan cell170of each boundary scan segment115to propagate through respective inverters175back to the TDI pin of the first boundary scan cell170of each boundary scan segment115. A high signal on TEST SELECT enables output from all AND gates180. Thus, each boundary scan segment115is configured as an oscillator. As each boundary scan segment115oscillates, corresponding counters185increment on each cycle. Counters185of faster oscillating boundary scan segments115will count higher in a given period of time. After a selected period of time has elapsed, the count of each counter185is captured in test data register160. The data in test data register is then accessed through TDO chip pad140.

Since the oscillation frequency is dependent upon delays through latches in the data path in each boundary scan cell170and delays through individual devices in the data path in each latch, performance testing of specific latch circuit implementations and specific process technology devices can be accomplished. In one example, all boundary scan latches in the data path in all boundary scan cells170of a given boundary scan segment115may be the same, but the specific latch circuit implementation used in each boundary scan segment may be a different. In a second example, all the latches in all boundary scan cells170of all boundary scan segments115may be the same circuit implementation but the process technology of selected transistors in the data path in the boundary scan latches of different boundary scan segments may be different.

Boundary scan register155uses a single test instruction (TEST SELECT signal) to characterize all boundary scan segments170. However, boundary scan register155can be modified to use individual test instructions for each boundary scan segment. Additionally, boundary scan register155can be modified to use a single counter185for all boundary scan segments115and a smaller test data register160.

FIG. 3is an exemplary boundary scan cell schematic circuit diagram according to the present invention. InFIG. 3, boundary scan cell170includes a first MUX190whose select pin is connected to a MODE pin, a second MUX195whose select pin is connected to a SHIFTDR pin, a first latch200responsive to a flush signal on a FLUSH pin and a clock signal on a CLKDR pin, a second latch205responsive to an update signal on an UPDATEDR pin and INPUT, OUTPUT, TDI, and TDO pins as described supra. In one example, first latch200is a flushable D flip-flop and second latch205is a D flip-flop or any suitable latch. A D flip-flop is a latch that stores the value on its data (D) input pin whenever its clock input makes a pre-defined transition (i.e. low to high or high to low) and whose data output (O) pin shows the value of the currently stored data. A first input of MUX190is connected to the INPUT pin and the output of first MUX190is connected to the OUTPUT pin and a first input of second MUX195. The TDI pin is connected to a second input of second MUX195. An output of MUX195is connected to the D pin of latch200and the Q pin of latch200is connected to the D input of latch205and the TDO pin. The Q pin of latch205is connected to a second input of MUX190.

For normal operating mode, the MODE pin held low, the flush signal on the FLUSH pin set to off and the TEST SELECT pin ofFIG. 2held low, boundary scan cell170is in normal core logic circuit operating mode and data is passed from the INPUT pin through first MUX190to the OUTPUT pin. The signal on the SHIFTDR pin may be high or low.

As described supra, there are two test modes, boundary scan interconnect test mode and process technology device library characterization mode. For boundary scan interconnect testing, the flush signal on the FLUSH pin is set to off, the test select signal is set to boundary scan interconnect test (the TEST SELECT pin ofFIG. 2is held low) and the SHIFTDR pin is held low. For cells connected to output drivers130(seeFIG. 2) the MODE pin is held high. The activated data paths of boundary scan cell170are latch205to MUX190to the OUTPUT pin and to MUX195to Latch200. For cells connected to input receivers125(seeFIG. 2) the MODE pin is held low. The activated data paths of boundary scan cell170are INPUT to MUX190to the OUTPUT pin and to MUX195to latch200.

Core logic testing is not affected by the present invention. The TEST SELECT pin ofFIG. 2is set to low and the flush signal on the FLUSH pin is set to off. The chip can then be tested using the IEEE 1149.1 INTEST standard or by other means.

For process technology device library characterization, the flush signal is set to on, the test select signal is set to characterization test (high on TEST SELECT pin ofFIG. 2) and the SHIFTDR pin is held high. With flush mode activated, data at the D pin of latch200is immediately propagated (flushed) to the Q pin. The data path in design library characterization is from the TDI pin, through second MUX195, first latch200, to the TDO pin.

We will now turn to some examples of process technology device library characterization. Two different latch circuit designs will be illustrated and two different methods of modifying the latches will be illustrated.

FIG. 4is a first exemplary flushable D-flip flop according to the present invention. InFIG. 4a latch200A includes NFETs T1, T2, T3, T4, T5, T6, T7and T8and inverters I1. I2, I3, I4, I5, I6and I7. Latch200A is a D flip-flop. With a high on the FLUSH pin, data is propagated (flushed) from the D input pin to the Q output pin. The data path in latch200A is from the D pin, serially through NFETs T1, T2, T3and T4, and inverters I1, I2, I3, I5, I6and I4to output pin Q. In one example, each boundary scan cell170of each boundary scan segment115(seeFIG. 2) uses latch200A in place of latch200ofFIG. 3, however, one or more of NFETs T1, T2, T3and T4are selected from different process technology device libraries for the boundary scan cell latches of each boundary scan segment. In one example, all the boundary scan cells in boundary scan segments115A,115B and115C ofFIG. 1use latch200A, but one or more of NFETs T1, T2, T3and T4in boundary scan cells of boundary scan segment115A (seeFIG. 1) is different from the corresponding NFET T1, T2, T3or T4in boundary scan cells of boundary scan segments115B (seeFIG. 1) and 115C(seeFIG. 1). Additionally, one or more of NFETs T1, T2, T3and T4in boundary scan cells of boundary scan segment115B (seeFIG. 1) is different from the corresponding NFET T1, T2, T3or T4in boundary scan segments115A (seeFIG. 1) and 115C(seeFIG. 1). Thus, the performance (transistor switching speed) of different process technology transistors can be compared.

Examples of different process technology device libraries include libraries wherein transistors of each library have different threshold voltages, different gate dielectric thickness or different channel length. Examples of different threshold voltages include nominal design threshold voltage, low (i.e. sub-nominal) threshold voltage and high threshold (i.e. super-nominal) voltage. Examples of different gate dielectric thickness include nominal design gate dielectric thickness, thin (i.e. sub-nominal) gate dielectric thickness and thick (i.e. super-nominal) gate dielectric thickness. Examples of different channel lengths include nominal design channel length, short (i.e. sub-nominal) channel length, and long (i.e. super-nominal) channel length.

It should be noted that some process technology device libraries may include combinations of different parameters found in two or more process device technology libraries. In a first example a transistor may have a nominal gate dielectric thickness, a nominal channel length and a nominal threshold voltage. In a second example, a transistor may have a nominal gate dielectric thickness, a nominal channel length and a low threshold voltage. In a third example a transistor may have a nominal gate dielectric thickness, a short channel length and a low threshold voltage. In fourth example, a transistor may have a thin or thick gate dielectric thickness, a nominal channel length and a low or high threshold voltage. In the most general example, a transistor may have a nominal, thin or thick gate dielectric thickness; a nominal, short or long channel length; and a nominal, low or high threshold voltage. The salient point is that there is at least one difference between devices (i.e. transistors) in latches of boundary scan cells in different boundary scan segments.

FIG. 5is a second exemplary flushable D-flip flop according to the present invention. InFIG. 5a latch200B includes gated inverters I1, I2, I3and I4, inverters I5, I6, I7, I8and I9, and NOR gates N1and N2. Latch200B is a D flip-flop. With a high on the FLUSH pin, data is propagated (flushed) from the D input pin to the Q output pin. The data path in latch200B is from the D pin, serially through gated inverter I1, gated inverter I3, inverter I7and inverter I8to output pin Q. In one example, each boundary scan cell170of each boundary scan segment115(seeFIG. 2) uses a latch200B in place of latch200ofFIG. 3, however, one or both of gated inverters are selected from identical function, but different inverter circuit implementations from the same process technology device library for the boundary scan cell latches of each boundary scan segment.

Examples of different gated inverter circuit implementations are illustrated inFIGS. 6A through 6D.FIG. 6Ais a logical description of andFIGS. 6B,6C and6D are exemplary implementations of gated inverters I1and I3ofFIG. 5. InFIG. 6A, a gated inverter210has a data input pin D, a data output pin Z and complementary control pins C and NC. Logic table215illustrates that with a low signal on pin C and a high signal on pin NC, pin Z will be in a high-impedance (High Z) state and that with a high signal on pin C and a low signal on pin NC, an inverted D signal will appear on output pin Z.

InFIG. 6B, a gated inverter210A includes PFETs T1and T2and NFETS T3and T4. InFIG. 6B, input pin D is connected to the gates of PFET T1and NFET T3. The source of PFET T1is connected to VDD and the source of NFET T3is connected to ground. The gate of PFET T2is connected to pin NC and the gate of NFET T4is connected to pin C. The drains of PFET T1and NFET T3are connected to the sources of PFET T2and NFET T4. The drains of PFET T2and NFET T4are connected to pin Z.

InFIG. 6C, a gated inverter210B includes PFETs T1and T2and NFETS T3and T4. Input pin D is connected to the gates of PFET T1and NFET T3. The source of PFET T1is connected to VDD and the source of NFET T3is connected to ground. The gate of PFET T2is connected to pin NC and the gate of NFET T4is connected to pin C. The source of PFET T2is connected to the drain of PFET T1and the source of NFET T4is connected to the drain of NFET T3. The drains of PFET T2and NFET T4are connected to pin Z.

InFIG. 6D, a gated inverter210C includes PFETs T1and T2and NFETS T3and T4. Input pin D is connected to the gates of PFET T2and NFET T3. The source of PFET T2is connected to the drain of PFET T1and the source of PFET T1is connected to VDD. The source of NFET T3is connected to the drain of NFET T4and the source of NFET T4is connected to ground. The gate of PFET T1is connected to pin NC and the gate of NFET T4is connected to pin C. The drains of PFET T2and NFET T3are connected to pin Z.

Returning toFIG. 5, in one example, all the boundary scan cells in boundary scan segments115A,115B and115C ofFIG. 1use latch200B, but one or both of gated inverters I1and I3in boundary scan cells of boundary scan segment115A (seeFIG. 1) is a gated inverter210A, one or both of gated inverters I1and I3in boundary scan cells of boundary scan segment115B (seeFIG. 1) is a gated inverter210B and one or both of gated inverters I1and I3in boundary scan cells of boundary scan segment115C (seeFIG. 1) is a gated inverter210C. Thus, the performance (signal propagation speed) of different circuit implementation of gated inverters can be compared.

Other examples of circuit implementations that may be characterized according to the present invention include AND gates, OR gates, NAND gates, NOR gates and logical combinations thereof, including combinations including inverters and gated inverters.

It is also possible, according to the present invention to utilize simply different latches in each boundary scan segment. For example, each boundary scan cell in boundary scan segment115A ofFIG. 1may use latch200A ofFIG. 4while each boundary scan cell in boundary scan segment115B ofFIG. 1may use latch200B ofFIG. 5. Additionally each boundary scan cell in boundary scan segment115C ofFIG. 1may use a latch different from latch200A ofFIG. 4or latch200B ofFIG. 5. Thus, the performance (signal propagation speed) of different latch implementations can be compared.

It is also within the scope of the present invention that the combinations of one or more segments using different latch circuit implementations may be used with one or more segments using devices in the latches selected from different process technology device libraries.

Boundary scan register155and boundary scan cells170have been illustrated in an IEEE 1149.1 standard implementation. However, the present invention may be modified for use with other scan implementations such as Level Sensitive Scan Design (LSSD) or MUX scan.

Thus, the present invention provides an inexpensive methodology for characterization of process technology device library elements and latch circuits.