Design for Testability(DFT) - Controllability & Observability (01)
DFT란?칩 제조 공정시 다양한 결함이 발생한다. 이러한 결함들을 실제 실리콘상에서 감지 가능하면 Testable하다 말한다.다시 말해 의도적으로 결함들을 출력하도록 설계하는 기법을 DFT라 한다 이
whehdud2.tistory.com
앞선 내용들에서 DFT란 잠재적인 결함들을 감지하기 위한 설계 기법이라 말했다. 테스트에 사용하는 패턴들은 특정 결함을 가정하고 생성된다. 결함을 가정하고 테스트해야 정확한 diagnosis할 수 있기 때문이다.
테스트에 사용하는 결함들을 Fault Model이라 한다. 이 모델들은 아래와 같은 종류가 있다.
- Functional : 칩이 설계한 logic대로 동작하는지 확인하는 것이다.
- IDDQ : CMOS의 정적 전류를 확인하는 것이다. 정적인 상태에서는 전류가 거의 0이여야 한다.
- At-speed : 칩의 동작 속도가 실제 동작 속도와 일치하는지 확인하는 것이다.
이 외에도 다양한 결함들이 있지만 이중 대표적인 Stuck-at Fault와 Transition Fault에 대해 다루겠다.
1. Stuck-at Fault
Stuck-at Fault란 회로의 노드가 VDD, GND로 고정되는 결함을 말한다. 각 결함을 SA1, SA0로 부른다. 이 결함은 게이트의 입,출력에 발생할 수 있다.
위 예시를 보자. 이는 1stage에 AND Gate의 Output이 SA0인 경우이다. 이 결함에서는 출력은 항상 0으로 고정 된다. 이를 감지하기 위해서는 2stage에 AND Gate의 Input으로 (1, 1)이 입력되어야 한다. 이 경우를 위한 입력 패턴은 전체 8가지 경우의 수 중에서 (0, 1, 1) , (1, 1, 1)만 가능하다.
ATPG가 위 같은 방법으로 테스트 패턴을 형성하는 것이다. 만약 일부 결함에 대해 테스트 패턴을 형성하지 못하면 해당 결함은 테스트 불가능 으로 분류한다.
2. Transition Fault
Transition Fault란 회로의 입,출력이 0 > 1 OR 1 > 0 속도가 너무 느린 결함을 말한다. 각 경우를 Slow-to-rise, Slow-to-fall이라 부른다.
1stage에 AND Gate의 Output에 Slow-to-fall Fault가 있다 가정하자. 참고로 이 결함은 입력이 (0, 1, 0)이고 Flop1의 초기 상태가 1인 경우만 감지 가능하다.
위 경우 첫 CLK때 Flop1에는 0이 실리고 Flop2에는 1이 실린다. 다음 CLK에서는 Flop1에 실린 0에의해 Flop2에는 0이 실려야 한다. 하지만 AND Gate Output의 하강 속도가 느려졌기 때문에 CLK Edge에서 Capture 되는 순간은 0이 아닌 1이 된다. 이로 인해서 실제값은 0이 아닌 1이 되게 된다. 즉 결함을 감지한 것이다.
Fault Model은 ATPG의 효율적인 테스트 패턴 생성을 위해 필수적인 사항이다.
'Test engineer > DFT' 카테고리의 다른 글
Design for Testability(DFT) - Scan Operation (03) (0) | 2025.05.22 |
---|---|
Design for Testability(DFT) - Scan Flip/Flop (02) (0) | 2025.05.22 |
Design for Testability(DFT) - Scan (Controllability & Observability) (01) (0) | 2025.05.22 |