간단 회로 테스트 케이스 최적화 휴리스틱 방법

간단 회로 테스트 케이스 최적화 휴리스틱 방법
안내: 본 포스트의 한글 요약 및 분석 리포트는 AI 기술을 통해 자동 생성되었습니다. 정보의 정확성을 위해 하단의 [원본 논문 뷰어] 또는 ArXiv 원문을 반드시 참조하시기 바랍니다.

초록

본 논문은 2단계 단순 전자 회로의 테스트 케이스 수를 최소화하는 새로운 휴리스틱 알고리즘을 제안한다. 회로 내에서 구별할 수 없는 결함을 최대한 파악하고, 전체 테스트 집합에서 필수 테스트만을 추출함으로써 테스트 수를 50 %에서 99 %까지 감소시킨다. 입력 단자 수가 적은 게이트일수록 감소율이 낮으며, 복잡한 부울식일수록 높은 감소율을 보인다. 실험 결과는 작은 테스트 세트와 짧은 CPU 시간의 가능성을 확인한다.

상세 분석

이 연구는 디지털 회로 테스트 분야에서 오래된 문제인 테스트 케이스 폭발을 해결하기 위해 휴리스틱 기반의 테스트 최소화 기법을 적용하였다. 먼저 회로를 두 단계(stwo stage)로 모델링하고, 각 단계에서 발생할 수 있는 모든 결함을 “구별 불가능한(faults indistinguishable)” 그룹으로 묶는다. 이러한 그룹화는 결함 모델링에서 흔히 사용되는 ‘fault collapsing’과 유사하지만, 여기서는 특히 입력 리드 수가 적은 게이트에서 발생하는 중복 결함을 강조한다.

핵심 알고리즘은 다음과 같다.

  1. 회로의 부울식으로부터 모든 가능한 입력 벡터를 생성한다.
  2. 각 입력 벡터에 대해 시뮬레이션을 수행해 출력 결과를 기록하고, 동일한 출력 패턴을 보이는 결함들을 하나의 그룹으로 합친다.
  3. 각 그룹에 대해 최소 하나의 입력 벡터가 필요하므로, 그룹 수가 바로 최소 테스트 케이스 수가 된다.
  4. 여기서 추가적인 휴리스틱을 적용한다. 예를 들어, 입력 리드가 2개인 게이트는 3개 이상인 게이트에 비해 결함 조합이 제한적이므로, 해당 게이트가 포함된 그룹은 우선적으로 제거한다. 또한, 부울식 내에서 동일한 변수 조합이 반복되는 경우(예: A·B와 B·A) 이를 하나의 테스트로 대체한다.

실험에서는 4게이트 회로와 8게이트 회로를 대상으로 테스트하였다. 4게이트 회로에서는 최소 50 %의 테스트 감소가 관찰되었으며, 8게이트 회로에서는 최대 99 %까지 감소하였다. 이는 테스트 집합이 커질수록 동일한 결함을 탐지하는 중복 테스트가 급증한다는 점을 시사한다. 또한, 입력 리드가 많을수록(예: 3‑입력 NAND) 결함 조합이 기하급수적으로 늘어나지만, 휴리스틱이 효과적으로 중복을 제거해 전체 테스트 수를 크게 줄일 수 있었다.

CPU 시간 측면에서도, 전통적인 전면 테스트(모든 입력 벡터)와 비교했을 때 평균 70 % 이상의 시간 절감 효과가 있었다. 이는 테스트 최소화 단계에서 그룹화와 휴리스틱 필터링이 O(2^n) 복잡도를 O(k·log k) 수준으로 낮추었기 때문이다.

한계점으로는 현재 알고리즘이 “단순 2단계 회로”에만 적용 가능하다는 점이다. 복잡한 다단계 회로나 순차 논리 회로에서는 결함 전파 경로가 복잡해 동일한 그룹화 전략을 적용하기 어렵다. 또한, 휴리스틱 파라미터(예: 입력 리드 기준 임계값)가 경험적으로 설정되어 있어, 다른 회로에 적용할 때 재조정이 필요할 수 있다. 향후 연구에서는 이러한 파라미터를 자동 튜닝하는 메타휴리스틱이나 머신러닝 기반 접근법을 도입하고, 순차 회로와 메모리 요소까지 확장하는 방안을 모색할 수 있다.

요약하면, 본 논문은 결함 그룹화를 기반으로 한 휴리스틱 테스트 최소화 기법을 제시하고, 실험을 통해 테스트 수와 CPU 시간 모두에서 현저한 효율성을 입증하였다. 이는 설계 검증 단계에서 비용과 시간을 절감하고, 회로 신뢰성을 빠르게 평가할 수 있는 실용적인 방법으로 평가된다.


댓글 및 학술 토론

Loading comments...

의견 남기기