Anda di halaman 1dari 4

A Hardware Based Low Temperature Solution for

VLSI Testing using Decompressor Side Masking


Arpita Dutta1, Subhadip Kundu2, Santanu Chattopadhyay1, Bijit Kumar Das1
Dept. of E&ECE, Indian Institute of Technology Kharagpur, India1, Synopsys India Pvt. Ltd2.
dutta.arpita2011@gmail.com1,subhadip@synopsys.com2, santanu@ece.iitkgp.ernet.in1, bijitbijit@gmail.com1

Abstract— The temperature of a block (a region in the chip) in between the on-chip decompressor and every scan chain
depends on both heat generation (caused by power to control values that are applied to chains. Similar
consumption) and heat dissipation among neighbors. Power structure, using only AND gate, has been proposed in [13]
aware test solutions targeting low power consumption during to reduce power during testing. Another structure has been
testing, may not produce an acceptable thermal aware
proposed in [14] for low power BIST scheme.
solution. In this paper, a hardware based solution using an
AND-OR block between the decompressor and each scan In this paper, we have evaluated the AND-OR block
chain, has been utilized to deactivate some scan chains [11] for low temperature solutions. Initially, scan flip-flops
during loading to reduce peak temperature during testing. are distributed among scan chains in order to distribute the
The proposed schemes require negligible hardware overhead input cone of scan flip-flops for each output over a
and do not require any special patterns. Experimental results minimum number of chains. Then, a thermal aware mask
of our proposed approach on ISCAS’89 and ITC’99 generation algorithm for the AND-OR block has been
benchmark circuits show a good reduction in peak described. The mask generation utilises the fact that a
temperature. compressed test set has redundancy in fault detection. For
Keywords— HotSpot, AND-OR block, Decompressor side example, a single fault may be detected by multiple
masking, Scan Cell Clustering. patterns at multiple outputs; out of which, detection by
only one test pattern at any one output is sufficient. This
I. Introduction redundancy can be intelligently used to deactivate some
High test power may lead to permanent or temporal chains during shifting. Since the AND-OR block can feed
malfunction of a good chip leading to yield loss. Excessive a constant zero or a constant one to any chain, it can be
switching activity increases the overall circuit temperature used to mask the chains which are not required to detect
important faults for the pattern. Thus the strategy is to
and creates localized heating, called hotspots [1].
identify the chains required to detect only the important
Advanced cooling techniques are effective to solve the
faults for a test pattern. The remaining chains can be fed
high temperature problems, but they substantially increase
the overall system cost and/or require larger area. with constant zero or one using the AND-OR block. So,
Minimizing power consumption can reduce the overall there will not be any transition in those chains during
temperature of the circuit under test (CUT). However this loading, leading to a significant reduction in power as well
as temperature with no loss in fault coverage. It is to be
need not necessarily minimize the peak [2], as it may lead
noted that scan out power reduction requires special
to localized heating called hotspots due to non-uniformity
circuitry to control the individual scan clocks, so that they
in the spatial power distribution. The peak temperature of a
block depends on its own power density, as well as heat can be turned off during unloading which in turn increases
transfer or heat exchange between the adjacent blocks [2]. hardware overhead and design complexity. Most of
Reducing power consumption can control heat generated, the work [11], [14] have not controlled unloading process.
In this work as our objective is to evaluate the AND-OR
but heat dissipation is a function of the thermal gradient
based architecture proposed in [11] for a low temperature
between CUT and the ambient air resulting temperature
differences across the circuit. Thus with increasing chip mask generation, controlling unloading process has not
density, power aware testing has proven inadequate and been taken into consideration.
has to be replaced by thermal aware strategies. The rest of the paper is organized as follows. Section II
presents the AND-OR architecture, which is used in the
Several temperature aware techniques are described in
work. Section III details low temperature mask generation
the literature. PEAKASO algorithm of [3] minimizes the
algorithm. Experimental results have been presented in
peak temperature by scan vector reordering based on
overheat pre-compensation. [4], [5], [6], [8] describe Section IV. Section V summarizes our conclusion.
thermal safe test scheduling techniques. Several thermal II. AND-OR based Decompressor Side Masking
aware X filling techniques such as [7], [9] concentrate In [11], an “AND” and an “OR” gate are inserted in
more on minimizing peak temperature and thermal between the on-chip decompressor and every scan chain.
variance as well as circuit power. The AND-OR network is controlled using pairs of control
In [11], a design for diagnosis (DFD) architecture to signals (C11, C12) to (Cn1 and Cn2) which are generated
diagnose single and multiple faults in a scan chain has based on flush (chain) test result by an interactive ATE.
been proposed which inserts an “AND" and an “OR" gate The test patterns go through the AND-OR network before

*This work is partially supported by the research project “Thermal Aware Testing of VLSI Circuits and Systems”, sponsored by the DeitY, Govt. of India.

978-1-4799-8391-9/15/$31.00 ©2015 IEEE 637


being loaded into the scan chains and are modified leading to a significant reduction in temperature. In the
according to the control values. The structure is given in following, each step has been discussed in details.
Figure 1. A. Grouping of DFFs into Scan chains
In the tester, along with each pattern, their low A hypergraph is built by choosing an output for a
temperature mask signals will be stored in a compressed particular fault and finding its input cone. A hyperedge is
format. First flush patterns will be applied. If the flush test constructed by considering the flip-flops present in the
passes, stored low temperature mask signals will be output’s input cone of influence. Once the hypergraph has
applied to the chains. Otherwise, the FSM will generate the been created, the partitioning has been performed using:
diagnostic mask signals for each pattern based on the flush the heuristic given in [12]. It is based on a linear time
test responses [11]. The multiplexer will select the low heuristic to partition the hypergraph. The heuristic
temperature mask signals and apply it to the CUT. There algorithm is divided into three major steps: initial
will be an on chip decompressor which will decode the configuration, graph partitioning, and post processing.
compressed mask signal and apply it to the AND-OR block The proposed heuristic given in [12] is test set
of different chains. The basic block diagram of the tester is independent and does not imply any scan chain reordering.
shown in Figure 2. Scan chain clustering by the method does not introduce
any additional impact in the tool flow.
B. Low Temperature MASK Generation
We have proposed two masking techniques in this paper.
I. Maximum number of chains masking
II. Thermal aware masking
The following variables are used in the proposed
algorithms.
Detection Count: Detection count for a fault is the count
for the number of patterns (including the current one) that
still detect that fault.
Essential Faults: Essential faults for a pattern are those
faults detected by only this pattern (Detection Count 1).
Essential Outputs: The outputs in which at least one
Fig.1. Proposed Masking Scheme essential fault has been detected by a pattern are termed as
essential outputs for that pattern.
Scan Distribution List: List of chains in which DFFs of an
output’s cone of influence are distributed. The number of
the chains in an output’s Scan Distribution List is stored in
the variable Distribution Count.
Weight of an output: We have used this term for the
generation of mask for maximum chain masking. It
depends on the faults detected at an output by a test pattern
and on the output’s Distribution Count.
Let k faults be detected in an output Oj by a test pattern ti.
Let each fault’s Detection Count be denoted by Dl (1 ≤ l ≤
k). Let the Distribution Count for the output Oj be Distrij .
Let Max Distri be the maximum of Distribution Count
over all the outputs.The weight of an output is given by the
following equation:

Fig.2: Proposed Architecture W(Oij) = …(Eq. 1)
III. Low Temperature Scan Chain Masking _

The technique first tries to group the scan flip-flops into The weight of an output indicates how important that
scan chains in order to distribute the input cone of flip- output is for the current test pattern. The importance not
flops for each output over a minimum number of chains. only depends on how many faults are detected on that
Then an algorithm has been proposed to select some output but also on the faults’ detection count. When an
outputs based on its importance for each pattern. Chains output detects faults with the lower detection count, its
containing the flip-flops in the input cone of the selected weight goes up. For the chosen output, all chains in its scan
outputs are observed. The rest of the chains are fed with distribution list, are kept unmasked, while the remaining
either constant one or zero using the AND-OR block chains are masked off. Since, we are trying to mask as

638
many chains as possible, output’s distribution count should Distribution Count for each output has been restored to
also be accounted for. An output with higher distribution its original value. All chains are unmarked and the
count will have lower weight. Max Distri is used to procedure continues for the rest of the patterns.
normalize the denominator.
Peak Temperature of an output: We have used this term Algorithm 1: Maximum Number of Chains Masking
for generation of low temperature mask. It depends upon and Low Temperature MASK Generation
the Scan Distribution List of a particular output. The 1. Begin
floorplan of the circuit has been divided into number of 2. for all patterns ti in TS do
blocks. When all the chains in its Scan Distribution List are 3. Unmark all the chains;
active together, the block temperatures have been found 4. Perform fault simulation;
out by simulating in thermal tool HotSpot [10]. Then the 5. Find the essential faults and in turn essential
maximum temperature has been found out. This maximum outputs for the pattern;
temperature is termed as Peak Temperature of that 6. while there is an essential fault still to be
particular output. detected do
The peak temperature of an output indicates how “hot” 7. Find weight according to Eqn. 1 and the
the circuit can be due to simultaneous activation of the peak temperature of essential outputs which
scan chains in its Scan Distribution List. are not selected yet for (I) masking scheme
The algorithm (given in Algorithm 1) first performs and for (II) masking scheme respectively;
fault simulation and finds the essential faults and essential 8. Find maximum weight output for (I) scheme
outputs for a pattern. For the first masking technique and the minimum peak temperature output
termed as (I), it calculates the weight of each essential for (II) scheme and mark the chains in the
output and finds the output with maximum weight. For the Scan Distribution List of the selected one as
second masking scheme termed as (II), it calculates the unchanged;
peak temperature of each essential output and selects the 9. Drop the faults detected on the output by the
output with minimum peak temperature. Then, the chains pattern on other output;
in the selected output’s Scan Distribution List are marked. 10. Change the Detection Count of other essential
Faults detected on this output are dropped from the rest. outputs according to the selected one;
Now, usually, Scan Distribution List of the other essential 11. end while;
outputs has some common chains with the selected one’s. 12. Mask the unmarked chains and modify the pattern
Since the marked chains will not be masked anyway, their according to the mask signals and perform fault
presence on the other chain’s Distribution Count can be simulation;
removed. So, Distribution Count for all the other chains is 13. Drop the detected faults from the fault list;
modified. The weight for each output is calculated again 14. Restore the original Distribution Count for each
taking account of the fault dropping and modified output;
Distribution Count. The same procedure continues until all 15. Modify the Detection Count for the faults
the essential faults are detected. according to the detection status;
All the marked chains are kept unmasked. The rest of 16. end for;
the chains are masked with either feeding all zeros or all 17. end;
ones. For the first pattern, all the unmarked chains are IV. Experimental Results
masked to load all zero. For all other patterns, loading We have obtained results on ISCAS’89 and ITC’99 full
values to the masked chains are selected to minimize scan benchmark circuits. The scan cells are distributed
temperature. over multiple chains. Fully compressed test patterns are
Once the mask signals have been decided for all the generated using Synopsys TetraMAX tool. Circuits are
chains, the pattern is modified according to it. A fault synthesized using Design Vision logic synthesis tool using
simulation has been performed with the modified pattern. the Faraday 90nm library (fsd0a generic core, best case).
Faults detected by the pattern are dropped. The Detection Floorplan have been generated by Cadence Encounter and
Count of the faults which are not detected by the modified converted into blocks. Thermal simulation has been
pattern but were detected by the original one, are reduced performed by the tool HotSpot [10] feeding the total shift
by one. This step ensures that even if a fault is not an power of the circuit blocks using the mask signal
essential one in the start of the process, it can become generated. Table 1 reports the peak temperature in degree
essential for some pattern later in the process. When it Kelvin attained by the proposed methods as well as the
becomes essential, it has to get detected - ensuring that the percentage reduction achieved over a normal compressed
fault coverage remains same. test set. Results are reported in the pairs (a, b), where a

639
holds the peak temperature of the circuit and b represents [2] N. Nicolici and X. Wen., “Embedded tutorial on low power test,”
Proc. 12th IEEE European Test Symp., pp. 202-210,2007.
the corresponding percentage reduction.
[3] Minsik Cho and David Z. Pan. ,“PEAKASO: Peak-temperature
The second column holds the peak temperature attained aware scan-vector optimization,” Proceedings 24th IEEE VLSI Test
with the normal compressed test set. The third column of Symp., pp. 52-57, 2006.
Table 1 reports peak temperature and percentage reduction [4] P. Rosinger, B. Al-hashimi and K. Chakrabarty, “Thermal-safe test
caused by our first proposed masking scheme termed as (I) scheduling for core-based system-on-a-chip integrated circuits,”
with scan cell clustering. Similar results for our proposed IEEE Transactions on Computer Aided Design, vol.25, no.11, pp.
2502-2512, 2006.
second masking scheme termed as (II) with scan cell
[5] T.E. Yu, T. Yoneda , K. Chakrabarty and H. Fujiwara, “Thermal-safe
clustering are noted in the fifth column. As (I) masking test access mechanism and wrapper co-optimization for system-
scheme was intended to mask maximum number of chains, onchip,” Proc. 16th Asian Test Symp., pp. 187-192,2007.
it effects temperature like (II) masking scheme. [6] Z. He, Z. Peng and P. Eles, “A heuristic for thermal-safe SOC test
To check the effect of the scan partitioning approach, we scheduling,” Proc. IEEE Int’l. Test Conf., pp. 1-10, 2007.
have generated mask signals in the same way for the scan [7] T. Yoneda, I. Inoue, Y. Sato and H. Fujiwara, “Thermal uniformity-
chains given by the DFT Compiler in Design Vision aware X-filling to reduce temperature-induced delay variation for
accurate at-speed testing,” Proc. 28th IEEE VLSI Test Symp., pp.
without any constraint. The results obtained by this 188-193, 2010.
approach are reported under the heading of “Normal [8] Liu. Chunsheng , K. Veeraraghavan and V. Iyengar, “Thermal-aware
Partitioning”. The mask generation process still able to test scheduling and hot spot temperature minimization for core-
mask some chains in this case also leading to a moderate based systems,” Proc. 20th IEEE Int’l Symp. On Defect and Fault
reduction in temperature over the compressed test set. But, Tolerance in VLSI Systems, pp. 552- 560, 2005.
[9] T. Yoneda, M. Nakao, I. Inoue, Y. Sato and H. Fujiwara,
as expected, the reduction is not as good as it is with the
“Temperature-Variation-Aware Test Pattern Optimization” Proc.
proper partitioning. European Test Symposium, pp.214,2011.
The average peak temperature reduction is around 10- [10]M.R. Stan, K. Skadron, M. Barcella, W. Huang, K.
12% for the proposed methods, which is sufficient for the Sankaranarayanan and S. Velusamy, “HotSpot: A dynamic compact
thermal safe test for most of the cases. It also reduces thermal model at the processor-architecture level,” Microelectronics
Journal, vol. 34, issue 12, pp. 1153-1165, 2003.
thermal variances across the chip and thus minimizes the
[11] S. Kundu, S. Chattopadhyay, I. SenGupta, R. Kapur, "An ATE
probability of hotspots. Due to space limit, we have not assisted DFD technique for Volume Diagnosis of scan chains,"
reported it. Design Automation Conference (DAC), vol., no., pp.1,6, 2013.
V. Conclusion [12] M. Elm, H. Wunderlich, M. Imhof, C. Zoellin, J. Leenstra and N.
Maeding, “Scan chain clustering for test power reduction,” in
In this paper we have proposed a hardware based Proceedings of 45th ACM/IEEE Design Automation Conference,
architecture with two scan chain masking schemes to pp. 828–833, 2008.
reduce peak temperature during testing which produces a [13] M.Filipek, Y.Fukui, H. Iwata, G. Mrugalski, J.Rajski, M. Takakura,
good reduction in peak temperature with negligible J.Tyszer, "Low Power Decompressor and PRPG with Constant
Value Broadcast," Asian Test Symposium (ATS), vol., no.,
hardware overhead. The future works include test set pp.84,89, 2011.
selection and customization, thermal aware BIST etc. [14] J. Rajski, J. Tyszer, G. Mrugalski, B. Nadeau-Dostie, "Test
generator with preselected toggling for low power built-in self-
REFERENCES test," VLSI Test Symposium (VTS), vol., no., pp.1,6, 2012.
[1] P. Girard, N. Nicolici and X. Wen, “Power- aware Testing and Test
Strategies for Low Power Devices,” 1st Edition. Springer, 2010.
Table 1: Peak Temperature in degree Kelvin (K) and % Reduction in Peak Temperature for Proposed Masking Techniques
over Normal Test Set
Normal (I) Masking Scheme (II) Masking Scheme
Circuit Compressed Proposed Normal Proposed Normal
Test Set Partitioning Partitioning Partitioning Partitioning
s5378 700.72 624.86, 10.83% 664.00, 5.24% 615.86, 12.11% 660.24, 5.78%
s9234 772.66 730.72, 5.43% 765.79, 0.89% 712.84, 7.74% 760.00,1.64%
s13207 840.90 768.44, 8.62% 823.08, 2.12% 758.48, 9.80% 811.83, 3.46%
s15850 835.89 767.21, 8.22% 823.39, 1.50% 759.41, 9.15% 817.49, 2.20%
s38417 821.81 759.59, 7.57% 752.60, 8.42% 747.55, 9.04% 746.66, 9.14%
s38584 993.93 920.88, 7.35% 982.67, 1.13% 903.34, 9.11% 975.03, 1.90%
b13 748.10 643.03, 14.04% 705.18, 5.74% 640.03, 14.45% 700.18, 6.41%
b14 737.13 646.26, 12.33% 703.25, 4.60% 638.07, 13.44% 698.34, 5.26%
b15 722.09 568.20,21.31% 644.16, 10.79% 556.19, 22.97% 640.41, 11.31%
b20 790.39 724.98, 8.28% 746.60, 5.54% 715.28, 9.50% 739.33, 6.46%
b21 793.18 753.35, 5.02% 764.33, 3.64% 740.67, 6.62% 758.58, 4.36%
Avg. % Reduction 9.91 4.51 11.27 5.27

640

Anda mungkin juga menyukai