• 検索結果がありません。

C221 2010 7 IOLTS 最近の更新履歴 Hideo Fujiwara

N/A
N/A
Protected

Academic year: 2018

シェア "C221 2010 7 IOLTS 最近の更新履歴 Hideo Fujiwara"

Copied!
6
0
0

読み込み中.... (全文を見る)

全文

(1)

Aging Test Strategy and Adaptive Test Scheduling

for SoC Failure Prediction

Hyunbean Yi†*, Tomokazu Yoneda†*, Michiko Inoue†*, Yasuo Sato‡*, Seiji Kajihara‡*, and Hideo Fujiwara†*

Nara Institute of Science and Technology (NAIST), Kansai Science City, Japan

Kyusyu Institute of Technology (KIT), Iizuka, Japan

*Japan Science and Technology Agency, CREST, Tokyo, Japan

AbstractThis paper presents a novel failure prediction testing technique that is applicable for system-on-chips (SoCs). Highly reliable systems such as automobiles, aircraft or medical equipments would not allow any interruptive erroneous responses during a system operation, which might result in catastrophe. Therefore, we propose a failure prediction delay testing technique that is applied during the time when the system is not working, such as power-on/-off times. To achieve high reliability in the field, the proposed technique should take into consideration various types of aging mechanisms. Since the testing environment of voltage and temperature is uncontrollable in the field, an accurate delay measurement considering the variation due to voltage and temperature should be developed. Moreover, we propose an adaptive test scheduling that gives more test chances to more possible degrading parts for improving detecting efficiency.

Keywords- reliability, aging, failure prediction, power-on test, power-off test, on-line test, adaptive test scheduling, system-on-chip.

I. INTRODUCTION

Transistor aging has been known as troublesome phenomenon in the deep sub-micron process. It is well known that aging results in performance degradation and a failure [1- 4]. In applications requiring high field reliability, such as automobiles, aircrafts, medical equipment, or power plants, such performance degradation and a failure are life- threatening [5, 6]. Accordingly, thorough analysis of aging mechanisms, on-line aging monitoring and failure prediction techniques are strongly required.

NBTI, which is the dominant transistor aging mechanism in the latest process technology, increases the threshold voltage of a PMOS transistor stressed with negative gate voltages over a couple of decades. In order to improve reliability, other various aging mechanisms as well as NBTI, such as Hot Carrier Injection (HCI), Electro Migration (EM), Stress Migration (SM), and Time Dependent Dielectric Breakdown (TDDB), need to be taken into consideration [1, 6]. HCI, which increases the threshold voltage of an NMOS transistor under a source-drain voltage stress, cause gradual delay degradation like NBTI. EM and SM, which respectively occur due to an excessive current density stress or a structural stress, increase wire resistance, and thus lead to open or short faults. These phenomena cause sudden delay degradation or failure. TDDB, in which continuous stresses to a gate oxide film causes the insulating film breakdown, results in slow delay degradation up to a certain point and sudden delay degradation or a failure as shown in Fig. 1 [7]. However, delay

Path Delay

Elapsed Time NBTI and HCI

Electomigration and Stress Migration

TDDB

Figure. 1 Different Types of Delay Increase

variations are caused not only by the aging mechanisms but also by environmental conditions. Furthermore, voltage and temperature as well as workload and elapsed time affect circuit aging significantly. Accordingly, by periodically profiling voltage and temperature, more accurate failure prediction is able to be made [5, 6].

In this paper, we focus on an aging test for system-on- chips (SoCs) which are used in automobiles, aircrafts or medical equipment. On such systems many applications require hard real-time responses. If they do not meet the real- time requirements, fatal accidents can happen. During normal operation, any other additional operations such as test operations may not be allowed. Therefore, we utilize power- on/-off time to apply our aging test scheme. Like the existing failure prediction techniques to be introduced in the next section, the proposed aging test scheme performs a test scheduling, controls the test clock, and reports aging test results to the system. However, our proposed test strategy and scheduling can be differentiated from the existing methods in the following respects:

1. Various types of delay degradation are detected or predicted.

2. An accurate delay measurement is conducted by referring to the measured voltage and temperature. 3. Based on the amount of aging delay increase of each part, the proposed method dynamically changes the test schedule so that a part with high degree of aging is tested more often to reduce the possibility to miss a failure. The rest of the paper is organized as follows. Section II reviews related work. We presents the aging test architecture with the test flow for aging prediction in Section III and our adaptive aging test scheduling scheme in Section IV. A case study is shown in Section V and we conclude the paper in Section VI.

IEEE International On-Line Testing Symposium (IOLTS'10), pp. 21-26, July 2010.

(2)

II. RELATED WORK

Most of the transistor aging mechanisms can be observed by measuring delay increase. Ahmed et al. [8] proposed a scheme to measure delay of selected paths where paths in a chip are converted into ring oscillators in test mode with additional hardware. M. Agarwal et al. [9, 10] and T. Nakura et al. [11] designed an aging sensor monitoring whether the signal transition of the combinational logic output occurs out of the guard-band time interval. These techniques enable aging to be observed concurrently during normal operation by directly checking aging of actual data paths during normal operation. However, the sizes of the sensor [9, 10] and the flip-flop [11] are large. As an on-line self-test architecture, Y. Li et al. [12] introduced the concurrent autonomous chip self-test using stored test patterns (CASP) which enables a design of robust systems by testing the system on-line using the test patterns pre- stored in a non-volatile memory. They used an ordinal scheduling, where each core is selected and tested in a round- robin manner, and utilized the existing shadowed flip-flops [13] to hold and recover the normal operation state of the core- under-test. However, a simple hardware-level static round-robin scheduling method cannot give cores many chances to be tested because the hardware scheduler simply waits until the next core is idle without searching for the cores in idle. Therefore, in [5], they applied the higher-level on-line scheduling support techniques such as Virtualization-Assisted concurrent autonomous Self-Test (VAST) [14] and CASP-aware OS scheduling [15]. They took the unavailability of cores into consideration, thereby attempting to test each core as often as they can as well as minimizing the impact on application performance. O. Khan et al. [16] proposed a method that is more tightly connected to the OS. A functional test that measures the maximum frequency Fmax and minimum voltage VDDmin is applied at checkpoints that OS controls. When an illegal value is measured, system performance is tuned with a frequency or voltage control. However, they do not measure the amount of delay degradation.

We have presented a circuit failure prediction mechanism named DART which stands for Degrade factor, Accuracy, Report, and Test coverage [6]. In this paper, we propose detailed techniques to realize DART such as a delay measurement methodology and a test scheduling and show our case study.

III. AGING TEST ARCHIECTURE

A. Architecture Overview

Fig. 2 shows the proposed aging test architecture. In this SoC model, there are multiple cores including one or more processor cores and memories. In our test scheme that utilize system’s vacant time such as power-on/-off time, test patterns have to be preloaded on a memory (e.g., read only memory (ROM) or non-volatile memory (NVM)). However, in a memory, available space to hold the entire test patterns is limited. In order to reduce the data volume of test patterns, an aging path selection [17, 18] or a test compression technique is needed. Available power-on/-off time varies from milliseconds to seconds according to the systems. Therefore, we split the entire test patterns so that one or more small test pattern sets (TPSs) can be applied and their results can be observed within

SoC

Core ROM

or Nonvolatile

Memory

Core Core Core

SoC Test Controller

Decompressor

Tclk Gen. Core Test Controller

k

Protocol Interface

Compactor

k

k: # of scan chains, Tclk Gen.: Test Clock Generator, VT Sensors: Voltage and Temperature Sensors CPU

Core

Core boot_enable

External Memeory

Test Access Mechanism (TAM) Functional Interconnect (Bus or Network-on-chip (NoC))

from/to TAM

from/to Functional Interconnect

: Interconnection between Func. Intercon. and Cores : Interconnection between TAM and Cores

Core Logic clk VT Sensors

Core Test Wrapper

Figure. 2 SoC Aging Test Architecture

a limited power-on/-off time. Besides, there are voltage and temperature sensors in a core to sense voltage and temperature effects during a test mode. When the system is powered on or off, the SoC test controller selects the next TPSs and transfers them to cores-under-test (CUTs). Then, each core test controller enables its core test components such as the decompressor, the compactor, and the test clock generator to start performing a testing control. When a test with a TPS is completed, the test and measurement results are transferred to the SoC test controller. The results will include the voltage, the temperature and the measured delay values. The SoC test controller collects the information and analyzes them to figure out whether or not the part-under-test (PUT; a core or a group of gates or paths covered by a TPS) is aged. If the internal memory is too small to record the test results, an external memory may be used. Basically, the test components reuse the test infrastructure such as test access mechanisms (TAMs) and test wrappers which are used for the production test. However, since the normal operation is not conducted during a power-on/-off time, the functional interconnects can be used with modification the protocol interface logic.

B. Test Strategy for Aging Prediction

In order to measure the minimum test timing that a PUT is passed, we use a capture timing shift technique (ODCS: On-Die Clock Shrink [19]), as shown in Fig. 3. In a capture timing window, there are several steps of the launch-to-capture period (LCP) from the shortest one, LCPmin, to the longest one. We define an LCP which is selected for a delay test as LCPtest. During the test mode, the minimum LCPtest, at which a delay test for the PUT is passed, is found and reported. As aging goes on, the minimum LCPtest increases gradually. The aging delay increase of each PUT is analyzed using the recorded test results and the minimum LCPtest by SoC test controller in Fig. 2.

Test clock

LCPmin

LCPmax

Functional clock period

Launch Capture

guard-band

Figure. 3 Capture Timing Window

Delay variation is caused not only by aging mechanisms but also by environmental conditions such as voltage and

(3)

temperature variations. Fig. 4 shows an example of simulation for a delay variation according to voltage and temperature where a 27-stage ring oscillator designed using TSMC 0.18 µm parameters was used. Variety of voltage/temperature sensors have been proposed [20-22]. Selecting proper sensors, their sizes, accuracy, and design cost will be important issues. We assume that multiple sensors and the thermal aware test patterns [23], which minimize the spatial temperature variation when test patterns are shifting, are used.

Figure. 4 Delay Variation according to Voltage and Temperature

Fig. 5 is the proposed test flow to predict the aging of a PUT. In order to estimate the degree of aging due to delay degradation, we measure minimum delays of PUTs over time. However, since delay also varies with voltage and temperature at each test mode, we translate a measured delay into a delay (LCPtyp) at the typical voltage (Vtyp) and temperature (Ttyp). The translated delay is compared to the past delay values, which are stored in a log memory, and the aging delay increase is analyzed.

Start

Fail

Pass Test with the LCPmax

< Process 1 > Testing and Measuring V&T

Decide the LCPtest based on The Vinit, Tinit and the previous

LCPtyp.

< Process 3 > Deciding the LCPtest

< Process 2 > Reporting Error

< Process 4 > Testing and Measuring V&T

Fail Pass

Pass

Fail Measure Volt. & Temp.

while Testing (→ Vinit & Tinit)

Test with the LCPtest

Measure Volt. & Temp. while Testing (→ Vc & Tc)

< Process 9 > Testing and Measuring V&T

Test with the LCPtest

Measure Volt. & Temp. while Testing (→ Vc & Tc)

< Process 10 > Log Test & Meas. Results Report the LCPtest, Vc and Tc

End

< Process 8 > Increase LCP LCPtest + P → LCPtest

LCPtest - P → LCPtest

< Process 5 > Decrease LCP

Pass or Fail ?

Pass or Fail ? Pass or Fail ?

< Process 6 > Testing and Measuring V&T

Test with the LCPtest

Measure Volt. & Temp. while Testing (→ Vc & Tc)

Pass

Pass or Fail ?

< Process 7 > Log Test & Meas. Results

Report the LCPtest++ P, Vc and Tc

Fail

< Process 11 > Aging Prediction Calculate amount of aging

Aged? < Process 12 > Reporting Error

End Yes

No

Figure. 5 Test Flow for Aging Prediction

Logged test results are also used at the beginning of the test flow to decide the initial condition of the current test. Thus, we can avoid binary-search-like time-consuming tests to find the minimum launch-to-capture timing.

The test flow is able to be divided into two parts; detecting a sudden delay increase from Process 1 to 2 and measuring delay, voltage and temperature to analyze a gradual delay increase from Process 3 to 10. In this paper, a test session is defined as a round of the process steps from “Start” to “End” of the test flow. In the first process, Process 1, a selected TPS is applied to detect a sudden delay increase using the LCPmax. When the test is passed, the next processes try to find out the minimum LCPtest. In Process 3, the initial LCPtest is decided based on the voltage (Vinit) and temperature (Tinit) measured in Process 1 and the previously measured delay. To obtain a proper LCPtest, some equations or mapping tables which compute the correlation among voltage, temperature, and delay are used. The Process steps from Process 5 to 6 and Process 8 to 9 try to find out the minimum LCPtest. Since gradual delay degradation goes on over time, we expect a TPS is applied three times in one test session. The minimum LCPtest and the measured voltage (Vc) and temperature (Tc) are reported. Then, the SoC test controller translates the reported LCPtest into a delay at the typical condition and logs it in a memory with the measured voltage and temperature. Finally, based on the logged data, the amount of aging delay increase is analyzed.

IV. ADAPTIVE AGING TEST SCHEDULING SCHEME

We use a degree of aging-based weighted test scheduling where more possibly aged PUTs are tested more often. In terms of workload, once a part is aged to some degree, the part is more likely to be worn out than the other parts because a user of a system tends to repeat a similar use (e.g., automobiles). In this section, we introduce a degree of aging comparison method and describe our adaptive test scheduling scheme in detail.

A. Comparision of Degree of Aging

If α is the probability in one clock cycle that a PMOS connected to the corresponding gate input has Vgs = -Vdd, t is the total circuit operation time, and n (= 0.16) is a characteristic of the NBTI effect, then the increase in the gate delay due to NBTI aging ∆dg is

0 n n

dg A D t d

' ˜ ˜ ˜ (1) where A is a constant parameter and d0 is the time 0 delay of the gate [17, 18, 24]. A, α, and d0 are given from the design process technology used. Therefore, (1) can be simplified to ∆dg = B · tn

for some constant value B = A · αn· d0. Consequently, since a logical path is a serial connection of gates, the increase in the path delay due to NBTI aging ∆dp can be obtained as follows:

n

dp S t

' ˜ (2) where S is the sum of the constant values of the gates which are on the path and their PMOS transistors are negatively biased. Continuously, if we let dA(t) be the measured delay of a PUT, PUT A, at t, then we have

( ) (0) n

A A A

d t d  ˜S t (3)

(4)

where dA(0) is the initial delay (time 0 delay) of PUT A. We use (3) to compare degrees of aging of PUTs. Fig. 6 shows three gradual delay increases. dworst is the delay with which the PUTs are identified to be aged. We consider two cases:

Case 1. The initial delays of two PUTs are the same, but their delays increase with different speeds of aging from the beginning and their degrees of aging are not switched all the way like PUT A and B.

Case 2. Two PUTs start with different initial delays, but the delay of one with the smaller initial delay increases faster than that of the other and its degree of aging overpasses the other one at a certain point in time like PUT A and C.

Path Delay

Elapsed Time dworst

tBW

tAW

dA(0)=dB(0) dC(0)

PUT B

PUT A PUT C

tCW

ttest2

ttest1

Figure. 6 Examples of Delay Increases of PUTs

A.1. Case 1: Comparison of PUT A and PUT B

Let us assume that we found dA(ttest2) > dB(ttest2) where ttest2 is the point of time when PUT A and PUT B were tested. Then, since, from (3) and Fig. 6,

2 2

( ) (0) n

A test A A test

d t d  ˜S t , d tB(test2) dB(0) ˜SB ttestn 2, and dA(0) dB(0),

we can have

2 2 1

( ) ( ) ( ) n 0

A test B test A B test

d t d t S S ˜t ! . (4) We can let dA(ttest2) = q·dB(ttest2) and SA = q·SB for a constant q (q

> 1). If we assume that PUT A and PUT B will reach dworst at tAW and tBW, respectively, then since

( ) (0) n

A AW A A AW

d t d  ˜S t , d tB(BW) dB(0) ˜SB tBWn , (0) (0)

A B

d d , and d tA(AW) d tB(BW) dworst,

we can finally obtain the relationship between tAW and tBW as follows:

1

1 n

AW BW

t t

q

§ · ˜

¨ ¸© ¹ . (5) From (5), we can say that PUT A will reach the worst case delay (1/q)1/n times faster than PUT B, which means PUT A is much more dangerous than PUT B. For example, if we assume q = 1.5 (q > 1), then tAW 0.079tBW for n = 0.16.

A.2. Case 2: Comparison of PUT A and PUT C

Let us assume that we found dA(ttest1) = dC(ttest1) where ttest1 is the point of time when PUT A and PUT C were tested. Then, since, from (3) and Fig. 6,

1 1

( ) (0) n

A test A A test

d t d  ˜S t , d tC(test1) dC(0) ˜SC ttestn 1, and (0) (0)

A C

d d , we can have

(0) (0) ( ) n1 0

C A A C test

d d S S ˜t ! (6) If we assume that PUT A and PUT C will reach the worst case delay dworst at tAW and tCW, respectively, then since

( ) (0) n

A AW A A AW

d t d  ˜S t , d tC(CW) dC(0) ˜SC tCWn , (0) (0)

A C

d d , and d tA(AW) d tC(CW) dworst, we can obtain

(0) (0) n n

C A A AW C CW

d d ˜S t  ˜S t . (7) From (6) and (7), the increased delay of PUT A is easily driven as follows:

( ) 1

n n n

A AW A C test C CW

S ˜t S S ˜t  ˜S t . (8) We can let ttest1 = p·tCW and SA = q·SC for a parameter p (0 < p < 1) and a constant q (q > 1). Then, from (7) and (8) we can finally obtain

1 n

AW CW

t ˜r t (11) for r = ((q - 1) · pn + 1) / q. The parameter r is always positive and less than one (0 < r < 1) because q > 1 and 0 < p < 1. Therefore, from (11) we can say PUT A will reach the worst case delay r1/n times faster than PUT C, which means also PUT A is much more dangerous than PUT C. For example, let us assume that it is estimated p = 10-3 from ttest1 = p·tCW. If we let q

= 1.8, then tAW 0.1tCW for n = 0.16. This shows that PUT A becomes aged almost 10 times faster than PUT C.

B. Adaptive Aging Test Scheduling

We use a test scheduling table as shown in Fig. 7(a). The scheduling table refers to the TPS information table. A TPS is mapped to a core number (Cn) because it covers a core or a part in a core (i.e. PUT). For each TPS, the LCPmax, the test strategy (TS), and the danger flag (DF) are defined. The value of an LCPmax is decided by the worst case delay and the resolution of the test clock generator. An LCPtest will be mapped to a less value than that of the LCPmax. In this example, if TS = ‘0’, then the TPS is only tested with the LCPmax, but if TS = ‘1’, then the TPS is tested with the test and measurement flow in Fig 4. In a scheduling table, a TPS is shown at least once and the TPSs are served in a round robin manner from the top entry to the bottom. A TPS for a part which is expected to be vulnerable to aging or has a heavy workload can be listed several times. Since each part has a different speed of aging, the scheduling table needs to be updated at times to reduce the possibility to miss a failure. However, if there are many TPSs, then updating the scheduling table every time delay degradation is detected is time consuming. Therefore we use the danger flag (DF) and danger list tables.

The DF field is used to indicate whether or not the TPS is moved into a danger list table. Each danger list table has its own danger level from the lowest one Level 1 to the highest one

(5)

Level n. The number of danger levels can be decided according to the number of LCP levels. To be able to give the TPSs in the higher level danger tables more chances to be applied, the periodic counters are used. The shorter the period is, the higher the danger level is. The counters simply count the number of power-on and -off times. As time goes by, some TPSs will move to the danger list tables while the DF is set to ‘1’. Then, in the scheduling table, only the TPSs of which the DF is ‘0’ are served. TPSs in a danger list table are served when the counter is full. Once a counter is full, TPSs in the corresponding danger list table are served in a first-in first-out (FIFO) manner. If a danger list table has too many TPSs to serve in a power-on or - off time, the remaining TPSs are first served in the next power- on or -off time. When a test session starts, the next TPSs are selected based on the following priority order:

1. The remaining TPSs in the danger list table which was served in the previous test session,

2. The TPSs in the danger list table with a highest danger level of the danger list tables of which the counter is full, 3. In the scheduling table, the next TPSs of which DF is ‘0’.

Cn LCPmax TS

1 6

9 4

6 2

7 5 9 1

3 4 2 TPSn

TPSn TPSn TPSn TPSn

Level 1 Level 2 Level 3 … Level n

< Danger List Tables > 1→0

0→1

0→1 1

2 3

6 4 5 7

10 8 9

0 1

0 1 0 0

TPSn DF

0

< Scheduling Table >

Less

Dangerous DangerousMore

Tested

Less often More oftenTested

< TPS Information Table >

4

1 5

3 1

2 2

4 5

5

1

1 0

1 1

1 1

1 0

0 12 16 15 12 10 15 10 16 10 10

-. TPSn: Test Pattern Set number -. Cn: Core number

-. TS: Test Strategy (e.g., LCPmax test only) -. DF: Danger Flag

(a) TPS Info. Table & Scheduling Table (b) Danger List Tables Figure. 7 Tables for Adaptive Aging Test Scheduling

Some examples of the TPS movements are also shown in Fig. 7. According to the result of an aging analysis, a TPS can move from the scheduling table to the first level danger table like the TPS 9, but can jump to a two or more higher level table like the TPS 6 if it turned out to be more aged. The TPS 4 has already been aged and it would be shown somewhere in the danger list tables. However, TPSs are not always moved from the left to the right. We cannot guarantee that the previous analyses are 100% accurate because the estimation of degree of aging as well as the test and measurement circuits can have an error. Therefore, by the current analysis, a TPS can move back from a danger list table to the scheduling table like the TPS 1 or a lower level danger list table. When a TPS moves out of or in the scheduling table, the corresponding DF is changed from ‘0’ to ‘1’ or the other way around, respectively. In the example, the TPSs 2 and 5 are estimated that the parts covered by them are still not aged and the TPSs 7 and 3 do not move because they use the different test strategy which is the LCPmax test only.

V. CASE STUDY

For our case study, we used the ITC’02 SoC test benchmarks [25]. Each TPS is expected to be applied three times in a test session as described in the section III-B.1. The

sizes of TPSs will vary according to the size of the core the TPS is applied to, the test strategy the TPS uses, and the number of core internal scan chains. The basic environment settings and assumptions are shown in Table I. The size of a TPS is limited by the power-on/-off time, the scan shift clock frequency, and the number of scan chains in the core SCn. However, if the size of a TPS is too big, we cannot test many parts in a given test time. In this case study, we assume that at least ten test sessions can be performed in a power-on/off time. Then, the maximum size of a TPS of a core becomes SCn x 25,000 bits (= 750,000 / 10 / 3) since the total number of scan shifts is 750,000 (≒ 10 ms / 75 MHz) in a power-on/-off time, ignoring test control time, and a TPS is applied three times in a test session.

TABLE I. ENVIRONMENT SETTINGS AND ASSUMPTIONS Power-on time (= Power-off time) 10 ms

Scan Shift Clock Frequency 75 MHz Maximum Number of Scan Chains

in a Core 32

The Size of Selected Aging Test Patterns for an SoC

1/4 of the total test patterns of an SoC given Compression Ratio for Test Patterns 50x

Number of LCPtest Levels 16

Table II shows the sizes of the entire test pattern sets, TPsize, the scheduling table and the TPS information table, S&Isize, and the danger list tables, DLTsize, for each SoC test benchmark. If the size of the selected test patterns of a core is equal to or less than 25,000 bits, then only one TPS is assigned to the core. For the cores of which the size of the selected test patterns is greater than 25,000 bits, we simply divided the patterns into groups so that the size of each TPS is less than SCn x 25,000 bits and balanced. If some cores have the same numbers of inputs, outputs, flip-flops, and test patterns, we regarded them as the same cores so that they share the same TPSs.

The sizes of the scheduling table and the TPS information table mainly depend on the number of TPSs. The TPS Information table has four fields except the field for TPSn because it is built in numerical order of TPSn as shown in Fig. 7(a). The sizes of the fields TPSn and Cn are respectively determined by the number of TPSs (# of TPSs) and the number of cores (# of cores). The LCPmax field is filled with a code. Since the sizes of the fields LCPmax, TS, and DF are respectively four bits, one bit, and one bit, if we assume that each TPS appears once in the scheduling table, then the sum of sizes of the scheduling table and the TPS information table is shown in the S&Isize column. With regard to the danger list tables, if the number of danger levels is the same as the number of the LCPtest levels, it would be easier to manage the tables. Lastly, if we assume that the number of the danger levels is also sixteen and the number of TPSs which a danger list table can hold can be dynamically adjusted, then the total number of TPSs which the danger list tables handle is the same as the number of TPSs in the worst case where all the TPSs in the scheduling table are moved to the danger list tables.

The total size of the tables by and large depends on the size of test patterns. The average sizes of test patterns and tables are about 206.2 Kbytes and 437.2 bytes, respectively. The case study shows that the size of tables required in our scheduling scheme is negligibly small compared with the size of test

(6)

patterns. Thus, in order to reduce design costs, aging path selection and compression techniques to create more compact test patterns for target aging mechanisms have to precede all others.

TABLE II. SIZES OF TEST PATTERNS AND TABLES

SoC Bench.

# of cores

TPsizea

(bytes)

# of TPSs

S&Isizeb

(bits)

DLTsizec

(bits)

S&Isize

+ DLTsize

(bytes)

u226 9 23.5 K 29 435 145 72.5

d281 8 2.3 K 12 156 48 25.5

d695 10 0.4 K 10 140 40 22.5

h953 8 0.7 K 8 96 24 15

g1023 14 0.3 K 14 196 56 31.5

f2126 4 3.1 K 3 30 6 4.5

q12710 4 11.3 K 7 77 21 12.1

p22810 28 4.1 K 29 464 145 76.1

p34392 19 8.5 K 21 336 105 55.1

p93791 32 15.7 K 29 464 145 76.1

t512505 31 99.6 K 79 1422 553 246.9

a586710 7 2.3 M 1184 23680 13024 4.5 K

a. TPsize: Size of Test Patterns which are Selected and Compressed. b. S&Isize: Sum of Sizes of Scheduling Table and TPS Information Table c. DLTsize: Size of Danger List Tables

VI. CONCLUSIONS

In this paper, we proposed a test strategy and a test scheduling scheme to realize an accurate SoC failure prediction. Existing failure prediction techniques perform their aging test and scheduling methods, trying to minimize the system performance degradation. We took both the gradual delay increase and the sudden delay increase into consideration and used the capture clock shifting technique to estimate the amount of aging. To make a more accurate delay measurement, we assumed that voltage and temperature sensors are used and the delay test capture timing is adjusted according to voltage and temperature values measured. We also presented a degree of aging-based weighted test scheduling scheme. By testing the more aged parts more often, we can reduce the possibility to miss a system failure. Although the proposed test strategy and test scheduling scheme were designed to work in a power-on/- off time, they can be easily applied on-line during the test mode assigned by the system with designing an interface with the operating system.

ACKNOWLEDGMENT

The authors thank Prof. Yukiya Miura in Tokyo Metropolitan University for providing us with the simulation results on delay variation according to voltage and temperature and also thank Prof. Satoshi Ohtake in Nara Institute of Science and Technology for his invaluable comments.

REFERENCES

[1] International Technology Roadmap for Semiconductors, 2007 Edition. [2] W. Wang, V. Reddy, A. T. Krishnan, R. Vattikonda, S. Krishnan, and Y.

Cao, “Compact Modeling and Simulation of Circuit Reliability for 65- nm CMOS technology,” IEEE Trans. on Device and Material Reliability, VOL. 7, NO. 4, Dec. 2007.

[3] T. W. Chen, K. Kim, Y. M. Kim, and S. Mitra, “Gate-Oxide Early Failure Prediction,” Proc. IEEE VLSI Test Symp., 4A-1, 2008. [4] M. Noda, S. Kajihara, Y. Sato, and Y. Miura, “On Estimation of NBTI-

Induced Delay Degradation,” IEEE European Test Symp., May 2010. [5] Y. Li, Y. M. Kim, E. Mintarno, D. S. Gardner, and S. Mitra,

“Overcoming Early-Life Failure and Aging for Robust Systems,” IEEE Design & Test of Computers, Vol. 26, 06, pp. 28-39, Nov./Dec. 2009. [6] Y. Sato, S. Kajihara, Y. Miura, T. Yoneda, S. Ohtake, M. Inoue, and H.

Fujiwara, “A Circuit Failure Prediction Mechanism (DART) for High Field Reliability,” Proc. Int’l Conf. on ASIC, Oct. 2009.

[7] T. W. Chen, K. Kim, Y. M. Kim, and S. Mitra, “Gate-Oxide Early Life Failure Prediction,” Proc. IEEE VLSI Test Symp., pp. 111-118, 2008. [8] F. Ahmed and L. Milor, “Built-In Self Test Circuit for Delay

Degradation Detection,” Conf. on Design of Circuits and Integrated Systems, Nov. 2009.

[9] M. Agarwal, B. C. Paul, M. Zhang, and S. Mitra,“Circuit Failure Prediction and Its Application to Transistor Aging”, Proc. IEEE VLSI Test Symp., pp. 277-284, 2007.

[10] M. Agarwal, V. Balakrishnan, A. Bhuyan, K. Kim, B. C. Paul, Y. Cao, S. Mitra, “Optimized circuit failure prediction for aging: practicality and promise,” Proc. Int’l Test Conf., no. 26.1, 2008.

[11] T. Nakura, K. Nose, and M. Mizuno, “Fine Grain Redundant Logic Using Defect-Prediction Flip-Flops,” IEEE int’l Solid-State Circuits Conference, pp. 402-403, 2007.

[12] Y. Li, S. Makar, and S. Mitra, “CASP: Concurrent Autonomous Chip Self-Test Using Stored Test Patterns”, Proc. Design Automation and Test in Europe, pp. 885-890, 2008.

[13] V. Zyuban and S. V. Kosonocky, “Low Power Integrated Scan Retention Mechanism,” Int’l Symp. on Low Power Electronics and Design, pp. 98-102, 2002.

[14] H. Inoue, Y. Li, and S. Mitra, “VAST: Virtualization-Assisted Concurrent Autonomous Self-Test,” Proc. Int’l Test Conf., pp. 1-10, 2008.

[15] Y. Li, O. Mutlu, and S. Mitra, “Operating System Scheduling for Efficient Online Self-Test in Robust Systems,” Int’l Conf. on Computer- Aided Design, pp. 201-208, 2009.

[16] O. Khan and S. Kundu, “A Self-Adaptive System Architecture to Address transistor Aging,” Proc. Design Automation and Test in Europe, pp. 81-86, 2009.

[17] A. B. Baba and S. Mitra, “Testing for Transistor Aging,” IEEE VLSI Test Symp., pp.215-220, 2009.

[18] M. Noda, S. Kajihara, Y. Sato, and Y. Miura, “A Path Selection Method for Delay Test Targeting Transistor Aging,” IEEE Int’l Workshop on Reliability Aware System Design and Test, pp. 57-61, Jan. 2010. [19] D. D. Josephson, S. Poehlman, and V. Govan, “Debug Methodology for

the McKinley Processor,” Proc. Intl. Test Conf., pp. 451-460, 2001. [20] S. Kaxiras and P. Xekalakis, “4T-Decay Sensors: A New Class of Small,

Fast, Robust, and Low-Power, Temperature/Leakage Sensors,” Int’l Symp. on Low Power Electronics and Design, pp. 108-113, Aug. 2004. [21] A. Mason, A. V. Chavan, and K. D. Wise, “A Mixed-Voltage Sensor

Readout Circuit With On-Chip Calibration and Built-In Self-Test,” IEEE Sensors Journal, Vol. 7, Issue 9, pp. 1225-1232, Sep. 2007.

[22] S. Remarsu and S. Kundu, “On Process Variation Tolerant Low Cost Thermal Sensor Design in 32nm CMOS Technology,” IEEE Great Lakes VLSI, pp. 487-492, May 2009.

[23] T. Yoneda, M. Inoue, Y. Sato, and H. Fujiwara, “Thermal-Uniformity- Aware X-Filling to Reduce Temperature-Induced Delay Variation for Accurate At-Speed Testing,” IEEE VLSI Test Symp., April 2010. [24] S. Bhardwaj, W. Wang, R. Vattikonda, Y. Cao, and S. Vrudhula ,

“Predictive Modeling of the NBTI Effect for Reliable Design,” IEEE Custom Integrated Circuits Conf., pp. 189-192, Sep. 2006.

[25] E. J. Marinissen, V. Iyengar, and K. Chakrabarty, ITC’02 SOC Test Benchmarks. Available: http://itc02socbenchm.pratt.duke.edu/

Fig.  2  shows  the  proposed  aging  test  architecture.  In  this  SoC  model,  there  are  multiple  cores  including  one  or  more  processor  cores  and  memories
Fig. 5 is the proposed test flow to predict the aging of a PUT.  In  order  to  estimate  the  degree  of  aging  due  to  delay  degradation,  we  measure  minimum  delays  of  PUTs  over  time
Table II shows the sizes of the entire test pattern sets, TP size ,
TABLE II.   S IZES OF  T EST  P ATTERNS AND  T ABLES

参照

関連したドキュメント

In this direction, K¨ofner [17] proves that for a T 1 topological space (X,τ), the existence of a σ-interior preserving base is a neces- sary and sufficient condition for

In this work we apply the theory of disconjugate or non-oscillatory three- , four-, and n-term linear recurrence relations on the real line to equivalent problems in number

In this paper, under some conditions, we show that the so- lution of a semidiscrete form of a nonlocal parabolic problem quenches in a finite time and estimate its semidiscrete

Keywords: continuous time random walk, Brownian motion, collision time, skew Young tableaux, tandem queue.. AMS 2000 Subject Classification: Primary:

We present sufficient conditions for the existence of solutions to Neu- mann and periodic boundary-value problems for some class of quasilinear ordinary differential equations.. We

Using the multi-scale convergence method, we derive a homogenization result whose limit problem is defined on a fixed domain and is of the same type as the problem with

Then it follows immediately from a suitable version of “Hensel’s Lemma” [cf., e.g., the argument of [4], Lemma 2.1] that S may be obtained, as the notation suggests, as the m A

While conducting an experiment regarding fetal move- ments as a result of Pulsed Wave Doppler (PWD) ultrasound, [8] we encountered the severe artifacts in the acquired image2.