1. Field of the Invention
The present invention relates to the field of design of integrated circuit and more specifically to a method and apparatus for reducing power dissipation while testing integrated circuits using sequential scan techniques.
2. Related Art
Sequential scan techniques are often used to test integrated circuits, and characterized by two modes of operation—functional mode and test mode. In functional mode, elements (both combinatorial and sequential) in an integrated circuit are connected according to a desired design and to provide a desired utility for which the integrated circuit is primarily designed.
On the other hand, in test mode, various sequential elements (such as flip-flops) of an integrated circuit are connected in a sequence (i.e., the output of one element is connected as an input to the next element) referred to as a “scan chain”. The remaining circuit portions, not part of the scan chain and generally containing several combinatorial logic elements, are conveniently referred to as functional circuit portions.
In a typical sequential scan test scenario, a number of bits in a particular pattern of zeros and ones (“scan vector”) are sequentially (one bit at every clock cycle) loaded (scanned-in) into a scan chain through the first element of the scan chain. The number of bits contained in the scan vector generally equals the number of memory elements in a corresponding scan chain.
Once a scan chain is loaded with a scan vector, the functional circuit portions (generally the combinatorial logic) of the integrated circuit are evaluated based on the scanned in bits. The flip-flops (contained in the scan cell) are designed to latch the results of the evaluation, and the bits latched in the scan chain are sequentially scanned out (scan-out) (one bit at every clock cycle) through the last scan cell in the scan chain. The received scan out is compared with an expected scan out corresponding to the scan vector to determine the various faults within the integrated circuit. The scan-in and scan-out operations are generally referred to as scan operations.
From the above, it may be appreciated that each sequential element (of a scan chain) may need to receive input from two paths, one in functional mode and another in scan mode. Such dual connectivity is generally obtained by using a scan cell containing a multiplexer along with a sequential element. The multiplexer selectively connects either a functional mode input or a scan mode input to the input of the sequential element depending on whether the integrated circuit is operating in functional mode or test mode.
One general requirement in performing sequential tests is reducing power dissipation during test time. Reduction of power dissipation is often of concern, for example, since substantially more power dissipation can occur in test mode compared to functional mode, and integrated circuits may be designed with a power dissipation specification corresponding to only the functional mode.
What is therefore needed is reducing power dissipation while testing the integrated circuits using sequential scan techniques.
The present invention will be described with reference to the following accompanying drawings, which are described briefly below.
In the drawings, like reference numbers generally indicate identical, functionally similar, and/or structurally similar elements. The drawing in which an element first appears is indicated by the leftmost digit(s) in the corresponding reference number.
1. Overview
An aspect of the present invention reduces power consumption during sequential scan testing of integrated circuits. The power reduction is achieved by isolating the functional circuit portion from the output of sequential elements during scan (in and out) operations of the integrated circuit. As a result, toggling of gates within the functional portion is avoided during scan operations, thereby reducing the overall power dissipation of integrated circuits.
In one embodiment, the isolation is achieved by using an AND gate, which blocks the output of the corresponding sequential element from being provided to the functional portion during the scan operation. The AND gate passes the output of the sequential element to the functional portion during evaluation mode as well as normal operation (functional mode).
A scan cell provided according to an aspect of the present invention accordingly contains two data outputs, with a first output for the functional portions and the second (other) output for the next sequential element(s) in the scan chain. The AND gate noted above is provide associated with the first output such that the output of the sequential element is provided to the functional portions only during functional mode, thereby preventing transitions to the functional portions.
Due to such prevention, switching of gates/transistors is avoided in the functional portions during scan operations, thereby reducing power dissipation during sequential scan tests.
Various aspects of the present invention will be clearer in comparison to a prior integrated circuit in which at least some features of the present invention are not implemented. Accordingly, the details of such a prior integrated circuit are described below first.
2. Example Prior Integrated Circuit
Each scan cell 110, 120, and 130 is shown with four input terminals D, SD, SE, CLK and one output terminal Q. Terminal D is designed to receive data in functional mode according to functional mode circuit design. Terminal SD is designed to receive data in test (scan) mode from a preceding scan cell (not shown) in the scan chain. Terminal SE receives a logic high to indicate scan operation logic low to indicate a functional mode of operation. Terminal CLK receives a clock signal for timing the latch operations of the scan cells.
Scan cells 110, 120, 130 are provided for connection as a scan chain, with scan cell 110 as first element and scan cell 130 as last element in the scan chain. Accordingly, scan cell 110 is shown receiving a functional data on path 141 (terminal D) from the output of AND gate 140 and scan data on path 105 from an external interface SI (scan in) on terminal SD. Data output (Q) of scan cell 110 is provided to OR gate 170 and also to SD terminal of scan cell 120 on path 112.
Similarly, scan cell 120 is shown receiving functional data on path 152 (from AND gate 150) and scan data on path 112 (from preceding scan cell 110). The output of scan cell 120 is provided to AND gates 150/160 and SD input of scan cell 130 on path 123. Scan cell 130 is shown receiving functional data on path 163 (from AND gate 160) and scan data on path 123 (from preceding scan cell 120). The output of scan cell 130 is provided to external interface SO (scan out) on path 199.
Each or a combination of connected combinatorial elements (AND gates 140, 150 and 160 and OR gate 170) represents a functional circuit portion connected to provide a desired functionality.
A source of power dissipation during sequential scan testing is the toggling of inputs to the gates (which may cause transistors forming gates to switch, dissipating energy) as illustrated with reference to the timing diagram of
SE signal is shown logic high at rising edges 201-203 and 205-207 (representing the aggregate scan duration). Thus the duration 201-203 corresponds to a scan-in operation (of bits 100 on IS), 204 corresponds to evaluation, and duration 205-207 corresponds to scan-out operation. The dark areas (in durations up to 201, up to 202 and 203 respectively for Q112, Q123, and Q199) represent that the logic levels are unknown (depending on previous bits scanned).
As can be readily observed, the logic 0 scanned in at time point 202 following a 1 at time point 201 causes respective transitions on Q112 (at time point 215), on Q123 (at time point 225) and on Q199 (at time point 235). Similarly, during the scan out operation, transitions are observed at time points 216 (on Q112), 226 (on Q123). Such transitions cause a toggle at the inputs of combinational logics (140, 150, 160 and 170).
The aggregate number of such toggles (in the entire integrated circuit) per clock cycle is generally more than when the integrated circuits operate in functional mode. Accordingly, the power dissipation is typically more during sequential scan operation in the circuit of
The problem may be alleviated by using a higher clock period (lower frequency for scan operation). However, the lower speed can lead to correspondingly more test time, and thus to the overall cost of testing integrated circuits. This might be particularly problematic as the complexity of the integrated circuits increase (due to longer scan chains as well as more gates in combinatorial logic). Various aspect of present invention overcome at least some of the limitations described above.
Several aspects of the invention are described below with reference to examples for illustration. It should be understood that numerous specific details, relationships, and methods are set forth to provide a full understanding of the invention. One skilled in the relevant art, however, will readily recognize that the invention can be practiced without one or more of the specific details, or with other methods, etc. In other instances, well known structures or operations are not shown in detail to avoid obscuring the features of the invention.
3. Novel Scan Cell
D, SD, SE and CLK signals are similar to those described above with respect to
Broadly, the output Q provides functional data to be routed (connected) to functional circuit portion and SQ provides a scan data to be routed to scan chain path in an integrated circuit. By isolating the transitions at the output of flip-flop 330 from Q output during scan mode, the toggling of functional circuit portion (thereby power dissipation) while performing scan operation may be avoided. Each component is described below in further detail.
Input terminals 321 and 322 of MUX 320 receive functional data and scan data respectively. Terminal 321 receiving functional data is represented as D, and terminal 322 receiving scan data is represented as SD. Select terminal 325 of MUX 320 receives scan enable (SE) signal. Hence, one logic level (logic high) of the scan enable connects data (scan data) on terminal 322 to input of the flip-flop 330, and another logic level (logic low) connects data (functional data) on terminal 321 to input of flip-flop 330.
Flip-flop 330 receives output of MUX 320 on terminal D (data terminal) and a clock signal on CLK (304) terminal. Flip-flop 330 latches the received data on to the output terminal (Q1) on occurrence of a clock signal (rising/falling edge). The output (Q1) from flip-flop 330 is provided on path 397 as scan data output terminal (SQ). It should be appreciated that other types of sequential elements can be used in place of flip-flop 330, as suited in specific designs.
AND gate 360 receives the output of flip-flop (Q1) on one of the terminals and a control signal (QEN) (305) on other terminal. The output of AND gate 360 is provided as functional data output terminal (Q). An inverted out put of (Q) is provided on path 398 (QZ) using a NOT gate 380 for design convenience. Accordingly, when the control signal (QEN) is at logic low, AND gate 360 prevents the output of flip-flop 330 from being propagated to functional path 399, thereby avoiding the unneeded togglings in functional portion.
Thus, AND gate 360 represents an example circuit which isolates the output of flip-flop 330 from the functional portion connected to the Q output of scan cell 300. However, various alternative embodiments of such isolation circuits will be apparent to one skilled in the relevant arts by reading the disclosure provided herein. Such alternative embodiments are contemplated to be within the scope and spirit of the present invention.
The embodiments thus provided can be used in various integrated circuits. For illustration, the manner in which the circuit of
4. Design of Integrated circuits With Reduced Power Consumption
For conciseness, the same circuit elements of
As can be readily observed, the Q output of scan cell 420 is connected as the respective inputs of AND gates 150 and 160 (functional portion(s)). Assuming that QEN is maintained low in scan mode, Q output would be maintained at logic low during the entire scan operations. As a result, the undesired toggling of the inputs of AND gates 150 and 160 would be avoided. However, Q output would be connected to AND gates 150 and 160 when QEN is at logic high (in functional mode), as desired.
On the other hand, SQ output of scan cell 420 is shown connecting to the SD terminal of scan cell 430. By observing
The operation of the circuit of
It should be appreciated that the AND gate provided in each scan cell operates as a desired isolation circuit. However, isolation circuits can be provided external to the scan cells, at points (typically before high fan out points) external to the scan cells are well.
5. Conclusion
While various embodiments of the present invention have been described above, it should be understood that they have been presented by way of example only, and not limitation. Thus, the breadth and scope of the present invention should not be limited by any of the above described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.