Professional Documents
Culture Documents
= + + 2
2
= + (1 +
2
2
+
)
where m, M, and l are the seed number, scan chain number,
and the maximum scan length, respectively. The number of
DFFs does not vary with the CUTs sizes. For example, as
will be shown in Table II, for ISCAS89 benchmarks, when
the seed number increases from 20 to 38 and the maximum
scan length increases from 54 to 87, their area overheads
change only from 397.40 to 488.29 m
2
.
D. Test-Per-Clock in MSIC-TPG
The MSIC-TPG for test-per-clock schemes is illustrated in
Fig. 4(a). The CUTs PIs X
1
X
mn
are arranged as an n m
SRAM-like grid structure. Each grid has a two-input XOR
gate whose inputs are tapped from a seed output and an output
of the Johnson counter. The outputs of the XOR gates are
applied to the CUTs PIs. A seed generator is an m-stage
conventional LFSR, and operates at low frequency CLK1. The
test procedure is as follows.
1) The seed generator generates a new seed by clocking
CLK1 one time.
2) The Johnson counter generates a new vector by clocking
CLK2 one time.
3) Repeat 2 until 2l Johnson vectors are generated.
4) Repeat 13 until the expected fault coverage or test
length is achieved.
E. Test-Per-Scan in MSIC-TPG
The MSIC-TPG for test-per-scan schemes is illustrated in Fig.
4(b). The stage of the SIC generator is the same as the
maximum scan length, and the width of a seed generator is not
smaller than the scan chain number. The inputs of the XOR
gates come from the seed generator and the SIC counter, and
their outputs are applied to M scan chains, respectively. The
outputs of the seed generator and XOR gates are applied to the
CUTs PIs, respectively. The test procedure is as follows.
(a)
(b)
Fig. 4. MSIC-TPGs for (a) Test-per-clock and (b) Test-per-scan schemes.
1) The seed circuit generates a new seed by clocking
CLK1 one time.
2) RJ_Mode is set to 0. The reconfigurable Johnson
counter will operate in the Johnson counter mode and
generate a Johnson vector by clocking CLK2 one time.
3) After a new Johnson vector is generated, RJ_Mode and
Init are set to 1. The reconfigurable Johnson counter
operates as a circular shift register, and generates l
codewords by clocking CLK2 l times. Then, a capture
operation is inserted.
4) Repeat 23 until 2l Johnson vectors are generated.
5) Repeat 14 until the expected fault coverage or test
length is achieved.
III. DESIGN OF SCAN CHAIN REORDERING
ARCHITECTURE
This work proposes a novel scan architecture that is referred
to as the Scan Chain Reordering Architecture. Essentially,
introduction of scan cells in the circuit, is one of the most
widely used and accepted way of testing. Re-ordering of these
scan cells significantly reduces the power consumption during
the testing. In this project, to minimize the power by the
application of a two-phase heuristic procedure which can be
exploited by any chip-layout program during the placement
and routing of scan cells. For a given a sequential circuit (in
Verilog netlist form) and a set of test vectors, reorder the flip-
flops in the scan chain, so that power consumption becomes
minimum. Power can be estimated by computing the number
of signal transitions occurring in the various lines of the
circuit.
A. Assumptions and Objective
In this project assume that the entire ordered test-set and the
circuit is given. And also assume that there is a single scan
chain in the circuit. As there exists a high correlation between
the switching activities in the internal nodes of the circuit with
the transitions taking place in the scan cells , further assume
that the primary inputs are directly controllable and all the
switching activities in the circuit is due to transitions in the
scan cells. Main objective is two-fold. They are the following.
To determine the order of interconnection between the scan
cells such that the total power consumption due to toggling
is minimized.
To identify the input and output scan cells in the scan chain.
B. Determination of chain-order of the scan cells
First determine the ordering of the scan cells followed by
identification of the scan-in and scan-out cells. Consider the
circuit with four flip-flops. And consider four test cases and
their corresponding responses. Construct an acyclic graph
from the test-sequence and their respective responses. The
vertices in the graph represent the flip-flops and the edges
represent the transitions between each pair of flip-flops. The
edge-weights represent the total bit -difference between them
as obtained from the table. Hence the problem reduces to
determination of a Hamiltonian cycle in the constructed
acyclic graph.
This problem is Traveling Salesman Problem, which is
well known to be NP-hard (the number of possible solutions is
(n-1)!/2 , n being the scan chain length). Among the number
of polynomial-time approximation algorithms, choose the
greedy algorithm.
Fig 5.Test sequence example and weighted graph
The greedy algorithm starts from any scan cell which is ff1
in this case, as the choice of initial state is not so crucial when
the number of scan cells in the graph is considerably high.
From any given node the algorithm chooses the least weighted
edge leading to an undiscovered flip -flop. The final series in
this case is ff1-ff4-ff2-ff3-ff1. The complexity of the
algorithm is O(n
2
), as for each node all its incident edges are
considered.
C. Identification of Scan-in and Scan-out cells
Let us consider the oriented cyclic graph reflecting the
obtained order from the previous step of the heuristic, shown
in fig 5.At this stage cutting the cyclic graph at each edge will
give us the scan-in and scan-out flip-flops. Each cutting
solution differs in number of transitions and propagation and
the one with least number of transitions will give the optimal
solution to our problem. Here defining a new metric for
counting cost of transition and propagation of a given test-
vector. Consider the example shown in fig 3. We define the
metric of weighted transition
as the following,
Weighted Transitions = (Size of scan chain position of
transition)
Fig 6. Oriented cyclic graph
It was shown that this metric is good measure for estimating
the power dissipation in DUT while testing is done through
scan cells. Considering the first test vector, we get the
weighted transition for V
1
, (4-3) + (4-1) = 4, and that of R
1
,
(4-1) + (4-2) = 5. Similarly we get 6, 3, 1, 5 for V
2
, R
2
, V
3
, R
3
respectively. Assuming that the initial state was 0000, the
total number of weighted transitions produced by the test
vectors and their responses, (4 + 5 + 6 + 3 + 1 + 5) + 4 = 28.
Fig 7. Example set of test vectors and their responses
This measure of this metric gives us an estimate of the
power consumption due to toggling. So if the value of
weighted transition is high, the associated power consumed is
also bound to be high. Following this idea, computing the
weighted transition for each cutting solution.
Table 1 Number of weighted transitions
The following result are obtained .Hence, the ordering ff1-
ff4-ff2-ff3 gives the optimal solution in this case, with ff1
and ff3 being the scan-in and scan-out cells respectively. This
heuristic has a complexity of O(n), n being the number of
flip-flops in the circuit. So the overall time complexity of the
two-step heuristic is O(n
2
).
IV ALGORITHM
A. Cell reordering algorithm:
1) Simulate the CUT for the test patterns generated by the
MSIC vector.
2) Identify the group of vectors and responses that violate the
peak power.
3) In these vectors, identify the cells that mostly change their
values in the test cycle and cause the peak-power
violation.
4) For each cell found in step 3), identify the cells that play
the key role in the value of this cell in the test cycle.
5) If it is found that, when two cells have a similar value in the
applied test vector, the concerned cell will most probably
have no transition in the test cycle, then connect these cells
together. If it is found that, when two cells have a different
value, the cell under consideration will most probably have
no transitions in the test cycle, then connect these cells
together through an inverter. By using this scan chain
reordering we can further reduce number of transition so
power is reduce without extra hardware.
V. SIMULATION RESULT
MODEL SIM simulations of Johnson counter and scalable
SIC counter are simulated and test patterns are generated.
(a)
(b)
Fig 8. (a)Waveform of Johnson counter.(b)Waveform of Scalable SIC
counter.
VI. CONCLUSION
In low-power test pattern generation method that could be
easily implemented by hardware. Analysis results showed that
Order of Flip Flop Weighted Transitions
ff1-ff4-ff2-ff3 19+4=23
ff3-ff1-ff4-ff2 21+4=25
ff2-ff3-ff1-ff4 23+4=27
ff4-ff2-ff3-ff1 25+4=29
an MSIC sequence had the favorable features of uniform
distribution, low input transition density, and low dependency
relationship between the test length and the TPGs initial
states. Combined with the proposed reconfigurable Johnson
counter or scalable SIC counter, the MSIC-TPG can be easily
implemented, and is flexible to test-per-clock schemes and
test-per-scan schemes. This paper has proposed a scan
architecture that considerably improves SoC testing in terms
of power and time. The proposed method have implemented
smart ordering of test-vectors. Scan cell ordering has been
addressed in, where a random ordering heuristic and
simulated annealing had been applied. The major advantage in
this methodology is, there is no penalty in the circuit
performance. The area overhead due to routing area can be
kept reasonably low when managed by a efficient layout
synthesis program. Also, due to its very low time complexity
it is suitable and easy to use during fast design-space
verification.
REFERENCES
[1] P. Girard, Survey of low-power testing of VLSI circuits, IEEE Design
Test Comput., vol. 19, no. 3, pp. 8090, MayJun. 2002.
[2] A. Abu-Issa and S. Quigley, Bit-swapping LFSR and scan-chain
ordering: A novel technique for peak- and average-power reduction in
scan-based BIST, IEEE Trans. Comput.-Aided Design Integr. Circuits
Syst., vol. 28, no. 5, pp. 755759, May 2009.
[3] S. Wang and S. Gupta, DS-LFSR: A BIST TPG for low switching
activity, IEEE Trans. Comput.-Aided Design Integr. Circuits Syst., vol.
21, no. 7, pp. 842851, Jul. 2002.
[4] F. Corno,M. Rebaudengo, M.Reorda,G.Squillero, and M.Violante,Low
power BIST via non linear hybrid cellular automata,in proc.18
th
IEEE
VLSI Test symp., Apr-May 2000, pp 29-34.
[5] D. Gizopoulos, N. Krantitis, A. Paschalis, M. Psarakis, and Y. Zorian,
Low power/energy BIST scheme for datapaths, in Proc. 18th IEEE
VLSI Test Symp., Apr.May 2000, pp. 2328.
[6] Y. Bonhomme, P. Girard, L. Guiller, C. Landrault, and S. Pravos-
soudovitch, A gated clock scheme for low power scan testing of logic
ICs or embedded cores, in Proc. 10th Asian Test Symp., Nov. 2001, pp.
253258.
[7] C. Laoudias and D. Nikolos, A new test pattern generator for high
defect coverage in a BIST environment, in Proc. 14th ACM Great
Lakes Symp. VLSI, Apr. 2004, pp. 417420.
[8] S.Bhunia, H. Mahmoodi, D. Ghosh, S. Mukhopadhyay, and K. Roy,
Low-power scan design using first-level supply gating, IEEE Trans.
Very Large Scale Integr. (VLSI) Syst., vol. 13, no. 3, pp. 384395, Mar.
2005.
[9] X. Kavousianos, D. Bakalis, and D. Nikolos, Efficient partial scan
cell gating for low-power scan-based testing, ACM Trans. Design
Autom. Electron. Syst., vol. 14, no. 2, pp. 28-128-15, Mar. 2009.
[10] S.Gerstendorfer and H.-J. Wunderlich, Minimized power consumption
for scan-based BIST, in Proc. Int. Test Conf., Sep. 1999, pp. 7784.
[11] A. Hertwing and H. Wunderlich, Low power serial built-in self-test,
in Proc. Eur. Test Workshop, 1998, pp. 4953.
[12] S. Wang and W. Wei, A technique to reduce peak current and average
power dissipation in scan designs by limited capture, in Proc. Asia
South Pacific Design Autom. Conf., Jan. 2007, pp. 810816.
[13] N. Basturkmen, S. Reddy, and I. Pomeranz, A low power pseudo-
random BIST technique, in Proc. IEEE Int. Conf. Comput. Design:
VLSI Comput. Process., Sep. 2002, pp. 468473.
[14] Y. Bonhomme, P. Girard, C. Landrault, S. Pravossoudovitch, Power
Driven Chaining of Flip-flops in Scan Architecture
[15] P. Girard, L. Guiller, C. Landrault and S. Pravossoudovitch, "A Test
Vector Ordering Technique for Switching Activity Reduction during
Test Operation ", IEEE Great Lakes Symp. on VLSI, pp. 24-27, 1999.