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

chapter 9 最近の更新履歴 Hideo Fujiwara

N/A
N/A
Protected

Academic year: 2018

シェア "chapter 9 最近の更新履歴 Hideo Fujiwara"

Copied!
37
0
0

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

全文

(1)

第9章 テスト生成

9.1 ブール微分

変数xi に関する関数 F のブール微分

F(x

1

, x

2

, !!! , x

n

)

dF

dx

i

= F(x

1

, !!! , x

i

, !!! , x

n

) ! F(x

1

, !!! , x

i

, !!! , x

n

)

(2)

3

9.1 ブール微分

変数xi に関する関数 F のブール微分

dF

dx

i

= F(x

1

, !!! , x

i

, !!! , x

n

) ! F(x

1

, !!! , x

i

, !!! , x

n

)

シャノンの展開定理より

F(x1, !!! , xi, !!! , xn) = xiFi(1) ! xiFi(0)

F(x

1

,

!!!

, x

i

,

!!!

, x

n

) = x

i

F

i

(1) ! x

i

F

i

(0)

F

i

(1) = F(x

1

, !!! , x

i-1

,1, x

i+1

, !!! , x

n

)

F

i

(0) = F(x

1

, !!! , x

i-1

,0, x

i+1

, !!! , x

n

)

9.1 ブール微分

dF

dx

i

= F(x

1

, !!! , x

i

, !!! , x

n

) ! F(x

1

, !!! , x

i

, !!! , x

n

)

= x

i

F

i

(1) ! x

i

F

i

(0) ! x

i

F

i

(1) ! x

i

F

i

(0)

= F

i

(1) ! F

i

(0)

(3)

5

9.1 ブール微分

F = (x

1

+ x

2

)(x

3

+ x

4

)

dF

dx

1

= F

1

(1) ! F

1

(0)

= (x 3 + x 4 ) ! x 2 (x 3 + x 4 )

= x 2 (x 3 + x 4 )

テストベクトル

F

!

(x

1

, x

2

, !!! , x

n

) = F(x

1

, !!! , x

i-1

,0, x

i+1

, !!! , x

n

)

= F

i

(0)

F(x

1

, x

2

, !!! , x

n

)

組合せ回路の出力関数を

入力線 x

iが0に縮退する故障 α の故障関数 F α

を満たす入力の組み合わせ

F(X) ! F

"

(X) = 1

故障 α を検出するテスト入力は

!!"!#$!%!$!%!&&&%!$!'

( ) *

(4)

7

テストベクトル

F(X) ! F

"

(X) = x

i

F

i

(1) ! x

i

F

i

(0) ! F

i

(0)

= x

i

F

i

(1) ! x

i

F

i

(0) ! (x

i

! x

i

)F

i

(0)

= x

i

F

i

(1) ! F

i

(0)

= x

i

dF

dx

i

故障 xi /0 を検出するテストパターンの集合は

{X | x

i

dF

dx

i

= 1}

同様に

故障 xi /1 を検出するテストパターンの集合は

{X | x

i

dF

dx

i

= 1}

テストベクトル

故障 x

i /0 を検出するテストパターンの集合は

{X | x

i

dF

dx

i

= 1}

= x

i

F

i

(1) ! F

i

(0)

= x

i

dF

dx

i

=1

x

1

x

dF/dxi =1 誤りを外部出力まで伝搬

(5)

9

テストベクトル

x

1

dF

dx

1

= x

1

x

2

(x

3

+ x

4

)

= x

1

x

2

x

3

+ x

1

x

2

x

4

x 1 =x 2 =x 3 =1 x

1

=x

2

=x

4

=1

したがって、故障 x

1/0 のテストパターンは

X s-a-0

テストベクトル

x

1

dF

dx

1

= x

1

x

2

(x

3

+ x

4

)

= x

1

x

2

x

3

+ x

1

x

2

x

4

x 1 =x 2 =x 3 =1 x

1

=x

2

=x

4

=1

したがって、故障 x

1/0 のテストパターンは

X s-a-0 1

1

1

0/1

1/0

0/1

1/-

(6)

11

経路活性化

x

1

dF

dx

1

= x

1

x

2

(x

3

+ x

4

)

= x

1

x

2

x

3

+ x

1

x

2

x

4

x 1 =x 2 =x 3 =1 x

1

=x

2

=x

4

=1

したがって、故障 x

1/0 のテストパターンは

X s-a-0 1

1

1

0/1

1/0

0/1

-

1/-

活性化された経路

多重経路活性化

x

1

dF

dx

1

= x

1

x

2

(x

3

+ x

4

)

= x

1

x

2

x

3

+ x

1

x

2

x

4

x 1 =x 2 =x 3 =1 x

1

=x

2

=x

4

=1

したがって、故障 x

1/0 のテストパターンは

(7)

13

内部信号線のテスト

故障点hで誤りを発生するために h(X) = 1

h の値を出力まで伝搬するために

h/0 の故障のテストパターンの集合は  F*(X, h) = F(X)

dF*(X, h) dh = 1 信号線 h の0縮退故障

{X | h(X) dF*(X, h)

dh = 1}

内部信号線のテスト

信号線 h の1縮退故障

F = (x

1

+ x

2

)(x

3

+ x

4

)

F*(X) = ( x

1

+ x

2

)x

4

+ h

h(X) = x

1

x

2

+ x

3

dF*(X, h)

dh = 1 ! (x1 + x2)x4

= x

1

x

2

+ x

4

h dF*

dh = (x

1

+ x

2

)x

3

x

4

= x

1

x

3

x

4

+ x

2

x

3

x

4

x

1

x

3

x

4

x

2

x

3

x

4

h/1 の故障のテストパターンは または

F*(X, h)

(8)

15

演習問題1

9.26 の回路に対して、出力関数をfとするとき、つぎのブール微分を求 めよ。

(a)  f を x1 , x2 , x3 , x4 で表現するとき、f x1に関するブール微分 (b)   f を h と x3 , x4 で表現するとき、f h に関するブール微分

演習問題1( (a)解答)

(a)  f を x1 , x2 , x3 , x4 で表現するとき、f x1に関するブール微分

f = (x

1

x

2

) (x

3

x

4

) + (x

1

x

2

) (x

3

x

4

) = (x

1

x

2

) + (x

3

x

4

)

df/dx

1

= (x

3

x

4

) + x

2

+ (x

3

x

4

) = x

2

(9)

17

演習問題1( (b)解答)

(b)  f h x

3 , x4 で表現するとき、f h に関するブール微分

f = h (x

3

x

4

) + h (x

3

x

4

) = h + (x

3

x

4

) df/dh = (x

3

x

4

) + (1 +(x

3

x

4

)) = 1

演習問題2

9.26 の回路において、 h の 0縮退故障に対するテストパターンの集合を ブール微分で求めよ

(10)

19

演習問題2(解答)

9.26 の回路において、 h の 0縮退故障に対するテストパターンの集合を ブール微分で求めよ

df/dh = (x

3

x

4

) + (1 +(x

3

x

4

)) = 1 h(df/dh) = h = x

1

x

2

x

1

= 1, x

2

= 1

演習問題2(解答)

9.26 の回路において、 h の 0縮退故障に対するテストパターンの集合を ブール微分で求めよ

x

1

= 1, x

2

= 1

1 1/0

df/dh = (x

3

x

4

) + (1 +(x

3

x

4

)) = 1 h(df/dh) = h = x

1

x

2

(11)

21

演習問題2(解答)

9.26 の回路において、 h の 0縮退故障に対するテストパターンの集合を ブール微分で求めよ

x

1

= 1, x

2

= 1

1 1

1/0

0

1

1/0

1/0 0

0

x df/dh = (x

3

x

4

) + (1 +(x

3

x

4

)) = 1 h(df/dh) = h = x

1

x

2

演習問題2(解答)

9.26 の回路において、 h の 0縮退故障に対するテストパターンの集合を ブール微分で求めよ

x

1

= 1, x

2

= 1

1 1

1/0

1

0

0/1

0

0/1

0/1

1 1 df/dh = (x

3

x

4

) + (1 +(x

3

x

4

)) = 1 h(df/dh) = h = x

1

x

2

(12)

23

9.2 組合せ回路のテスト生成

与えられた故障が冗長であるか否かを判定し 冗長でない故障であれば

それを検出するテストパターンを常に求めることができる 完全なテスト生成アルゴリズムとして

1966 IBM J.P. Roth により Dアルゴリズム(D-algorithm)が考案された

想定する縮退故障をテストするためのテストパターンを生成する

0縮退故障

D アルゴリズム

(13)

25

1 1

D

故障を活性化するために D=1/0

誤り = 正常/故障

D アルゴリズム

想定する縮退故障をテストするためのテストパターンを生成する

1 1

D

誤りを伝搬するために

0

D

D 1

D アルゴリズム

想定する縮退故障をテストするためのテストパターンを生成する

(14)

27

1 1

D

正当化するために

0

D

D 1

0

0 1

D アルゴリズム

想定する縮退故障をテストするためのテストパターンを生成する

1 1

D

テストパターン f s-a-0

D アルゴリズム

想定する縮退故障をテストするためのテストパターンを生成する

(15)

29

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

D アルゴリズム

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

/

誤り発生

D アルゴリズム

(16)

31

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

/

D アルゴリズム

テスト生成(Dアルゴリズム)

1

3

5

6

8

9

12 G2

G4

G5

G

/

1 1 /

誤り伝播

D アルゴリズム

(17)

33

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

/

1 1 /

/

/

D アルゴリズム

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

/

1 1 /

/

/

/

D アルゴリズム

(18)

35

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

/

1 1 /

/

正当化

/

/

D アルゴリズム

テスト生成(Dアルゴリズム)

1

3

5

6

8

9

12 G2

G4

G5

G

/

1 1 /

/

/

含意

D アルゴリズム

(19)

37

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

/

1 1 /

/

/

D アルゴリズム

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

/

1 1 /

/

/

/

D アルゴリズム

(20)

39

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

/

1 1 /

/

/

/

/

D アルゴリズム

テスト生成(Dアルゴリズム)

1

3

5

6

8

9

12 G2

G4

G5

G

/

1 1 /

/

/

D アルゴリズム

(21)

41

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

D アルゴリズム

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

誤り発生

D アルゴリズム

D=1/0 誤り = 正常/故障

(22)

43

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

D アルゴリズム

テスト生成(Dアルゴリズム)

1

3

5

6

8

9

12 G2

G4

G5

G

誤り伝播

D アルゴリズム

(23)

45

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

D アルゴリズム

D=0/1 誤り = 正常/故障

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

D アルゴリズム

(24)

47

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

正当化

D アルゴリズム

テスト生成(Dアルゴリズム)

1

3

5

6

8

9

12 G2

G4

G5

G

含意

D アルゴリズム

(25)

49

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

D アルゴリズム

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

D アルゴリズム

(26)

51

テスト生成(Dアルゴリズム)

1 2

3

4

5

6

7

8

9

10

11

12 G1 X

G2

G3

G4

G5

G6

G7

G8 0 縮退故障

D アルゴリズム

テスト生成(Dアルゴリズム)

1

3

5

6

8

9

12 G2

G4

G5

G

D アルゴリズム

D=0/1 誤り = 正常/故障 D=1/0

誤り = 正常/故障

(27)

53

演習問題3

9.26 の回路において、 h の 0縮退故障に対するテストパターンを Dアルゴリズムで求めよ

演習問題3(解答)

9.26 の回路において、 h の 0縮退故障に対するテストパターンを Dアルゴリズムで求めよ

D 1

1

D 1

0 D

0 0

x

(28)

55

演習問題3(解答)

9.26 の回路において、 h の 0縮退故障に対するテストパターンを Dアルゴリズムで求めよ

D 1

1

D 0

0

D 1

1

1

D

Present state at time q Initial state

is unknown

Next state at time q

fault fault fault

9.3 順序回路のテスト生成

(29)

57

9.3 順序回路のテスト生成

Stuck-at-1

  Time expansion model (3 time frames)

9.3 順序回路のテスト生成

(30)

59

  Time expansion model (3 time frames) D = 1 / 0 D = 0 / 1

D-drive Fault propagation

9.3 順序回路のテスト生成

D = 1 / 0 D = 0 / 1

State justification

9.3 順序回路のテスト生成

(31)

61

  Time expansion model (4 time frames) D = 1 / 0 D = 0 / 1

D-drive Fault propagation

9.3 順序回路のテスト生成

  Time expansion model (4 time frames) D = 1 / 0 D = 0 / 1

State justification

Initial state is (X,X)

9.3 順序回路のテスト生成

(32)

63

テスト生成アルゴリズムの歴史

Combinational ATPG

1966

D-algorithm (Roth, IBM)

1981

PODEM (Goel)

1983

FAN (Fujiwara)

1985

ISCAS-85 Benchmarks (Fujiwara & Brglez)

1988

SOCRATES (Schulz, et al.)

1990

Recursive Learning (Kunz,et al.)

1999

ITC-99 benchmarks

2001

SPIRIT (Gizdarski

& Fujiwara) 1993

NEMESIS (Larrabee)

1992

TRAN (Chakradhar, et al.)

2000

IGRAINE (Tafertshofer, et al.)

The first ATPG able to achieve 100% fault efficiency

for ISCAS’85

SAT-based ATPG

The first ATPG able to achieve 100% fault efficiency

for ITC’99

Combinational ATPG

1966

D-algorithm (Roth, IBM)

1981

PODEM (Goel)

1983

FAN (Fujiwara)

1985

ISCAS-85 Benchmarks

1988

SOCRATES (Schulz, et al.)

1990

Recursive Learning (Kunz,et al.)

1999 2001

SPIRIT (Gizdarski

& Fujiwara) 1993

NEMESIS (Larrabee)

1992

TRAN (Chakradhar, et al.)

2000

IGRAINE (Tafertshofer, et al.)

テスト生成アルゴリズムの歴史

(33)

65

9.4 故障シミュレーション

並列故障シミュレーション(parallel fault simulation

演繹故障シミュレーション(deductive fault simulation

同時故障シミュレーション(concurrent fault simulation

演繹故障シミュレーション

   L

A

= {a, e}    L

B

= {b, c}    L

C

= {a, b, c, d}    L

D = {a, d, f}   

LE = LA!LB " LC" LD

LE = LA!LB " LC" LD ! E/1

(34)

67

演繹故障シミュレーション

LA = {A/1} LB = {B/0} LC = {    LD = {D/0}

LE = LA ! LB " {E/1} ={A/1, E/1}

LH =LF ! {H/0} ={C/0, D/0, F/0, H/0} LN =LF ! {N/0} ={C/0, D/0, G/0, N/0}

LJ =LE ! {J/1} ={A/1, E/1, J/1} LK =LE ! {K/1} ={Q/1, E/1, K/1}

LL =LH ! {L/1} ={C/0, D/0, F/0, H/0, L/1}

LM =LJ ! {M/0} ={A/1, E/1, J/1, M/0} LP = LK ! LL " {P/1} ={P/1} LQ = LM ! LN ! {Q/0}

={A/1, C/0, D/0, E/1, F/0, J/1, M/0, N/0, Q/0}

L

R

= L

P

! L

Q

" {R/0}

={A/1, C/0, D/0, E/1, F/0, J/1, M/0, N/0, Q/0, R/0} LF =LC ! LD ! {F/0} ={C/0, D/0, F/0}

同時故障シミュレーション

(35)

69

同時故障シミュレーション

同時故障シミュレーション

(36)

71

同時故障シミュレーション

同時故障シミュレーション

(37)

73

演習問題4

9.27 に示すように、4入力 NAND に対して、A=B=0, C=D=1 入力パターンが与えられているとする

  故障リスト L

A , LB , LC , LD が出力 E にどのように伝搬するかを計算する 集合算を示せ

演習問題4(解答)

L

A

={A/1}, L

B

={B/1}, L

C

={C/0}, L

D

={D/0}

L

E

= (L

A

∩  L

B

∩  L

C

∩  L

D

)∪ {E/ 0}

まず、入力 A, B, C, D の故障リストはつぎのようになる。

つぎに、NANDゲートにおいて、E の故障リストは

参照

関連したドキュメント

一度登録頂ければ、次年度 4 月頃に更新のご案内をお送りいたします。平成 27 年度よ りクレジットカードでもお支払頂けるようになりました。これまで、個人・団体を合わせ

キャンパスの軸線とな るよう設計した。時計台 は永きにわたり図書館 として使 用され、学 生 の勉学の場となってい たが、9 7 年の新 大

お客さまの希望によって供給設備を変更する場合(新たに電気を使用され

ⅴ)行使することにより又は当社に取得されることにより、普通株式1株当たりの新株予約権の払

ⅴ)行使することにより又は当社に取得されることにより、普通株式1株当たりの新株予約権の払

ⅴ)行使することにより又は当社に取得されることにより、普通株式1株当たりの新株予約権の払

ⅴ)行使することにより又は当社に取得されることにより、普通株式1株当たりの新株予約権の払

ⅴ)行使することにより又は当社に取得されることにより、普通株式1株当たりの新株予約権の払