KR101079310B1 - 반도체 집적회로와 그 시험방법 - Google Patents

반도체 집적회로와 그 시험방법 Download PDF

Info

Publication number
KR101079310B1
KR101079310B1 KR1020030057606A KR20030057606A KR101079310B1 KR 101079310 B1 KR101079310 B1 KR 101079310B1 KR 1020030057606 A KR1020030057606 A KR 1020030057606A KR 20030057606 A KR20030057606 A KR 20030057606A KR 101079310 B1 KR101079310 B1 KR 101079310B1
Authority
KR
South Korea
Prior art keywords
scan
flip
test
mode
flops
Prior art date
Application number
KR1020030057606A
Other languages
English (en)
Other versions
KR20040026597A (ko
Inventor
카유카와요시타카
아오키데츠야
하마구찌다카히로
오시마노리유키
Original Assignee
소니 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 소니 주식회사 filed Critical 소니 주식회사
Publication of KR20040026597A publication Critical patent/KR20040026597A/ko
Application granted granted Critical
Publication of KR101079310B1 publication Critical patent/KR101079310B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31719Security aspects, e.g. preventing unauthorised access during test
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318536Scan chain arrangements, e.g. connections, test bus, analog signals

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Testing Or Measuring Of Semiconductors Or The Like (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

보안에 손상을 끼치지 않고 스캔시험을 가능하게 하는 LSI가 제공된다. 스캔 체인(scan chain)을 구성하는 플립플롭은, 정상동작과 스캔 시험간의 스위칭을 위한 모드(mode)신호의 단부(edge)에 의해 스캔 시험이 개시 또는 종료될 때, 리세트(reset)된다. 또한, 스캔 시험동안에는, 내부 메모리 수단에 액세스하는 것이 불가능하다. 더욱이, 스캔 시험동안에만 동작하는 더미(dummy) 플립플롭은 스캔 체인에 접속되며, 정상동작 동안에 스캔 체인에 의한 밖으로의 이동(shifting out)은 불가능하게 된다.

Description

반도체 집적회로와 그 시험방법{Semiconductor integrated circuit and method for testing same}
도 1은 본 발명의 실시예에 따르는 LSI의 주요부의 회로도이다.
도 2는 본 발명의 실시예의 스캔 체인의 리세트동작을 도시한 파형도이다.
도 3은 본 발명의 실시예의 스캔 패턴의 생성에 대한 움직임을 도시한 파형도이다.
도 4는 스캔 동작을 도시한 도면이다.
본 발명은 2002년 9월 24일에 일본 특허청에 출원된, 특허번호 JP2002-277285호에 대한 우선권과, 법으로 허용된 범위를 참조하여 여기에 포함되어 있는 전체 내용을 주장한다.
본 발명은 LSI와 같은 반도체 집적회로에 관한 것이며, 특히 스캔 회로가 제공되는 반도체 집적회로와 그것을 시험하는 방법에 관한 것이다.
종래에, 스캔시험은 LSI를 시험하는 방법으로 알려져왔다.
도 4는 스캔시험이 수행될 수 있는 반도체 집적회로의 모델을 도시하고 있다. 각종 논리회로가 LSI내에서 내부회로(60)로 구성되어 있으며, 예를 들면 입력 단자(1-4)로부터의 입력 데이터가 내부회로(60)에 의해 연산된다. 그리고 그 연산결과는 출력단자(1-4)로부터 출력된다.
이러한 LSI에서는, 스캔시험을 가능하도록 하기 위해서, 스캔 플립플롭(이하 FF라고 함)(61-68)이 도면에 도시된 바와 같이 제공된다. 이러한 스캔 FF(61-68)는, 예를 들면, 다중화기(multiplexer)의 기능을 가지는 플립플롭이며, 소정의 스캔 플립플롭이 스캔입력단자(scan in)와 스캔출력단자(scan out) 사이에 직렬로 연결되어 있다. 이러한 직렬연결은 스캔 체인(scan chain)이라고 한다.
스캔입력단자(scan in)로부터 스캔 데이터 패턴을 입력함으로써, 스캔 플립플롭(61-64)은 내부회로(60)에 대한 입력으로서 임의의 값으로 설정된다. 설정된 값은 내부회로(60)에 의해 처리되며, 그 결과 데이터는 스캔 플립플롭(65-68)으로 출력된다. 그 다음에, 스캔 체인의 데이터는 이동되며, 스캔출력단자(scan out)로부터 출력되는 결과 데이터가 검사된다. 이러한 방법을 통해, LSI의 결점이 검사된다.
도 4는 스캔시험의 단순화된 모델을 도시하고 있다. 각종 스캔시험 방법은 예를 들면, 이하 특허문헌에 기재되어 있다.
[특허문헌 1] 일본특허 출원공개번호 소-63-134970
[특허문헌 2] 일본특허 출원공개번호 평-4-72583
[특허문헌 3] 일본특허 출원공개번호 평-5-172897
[특허문헌 4] 일본특허 출원공개번호 평-4-287510
그러나, 상기한 스캔체인과 같은 스캔회로가 삽입되어 있는 LSI에서는, 동작중인 LSI내에서 레지스터(register)의 값이 외부로 출력될 수 있고, 데이터가 외부로부터 레지스터로 입력될 수 있으므로, 다음과 같은 불편한 점이 발생할 수 있다.
예를 들면, 암호코드와 같은 보안 데이터를 처리하는 LSI를 살펴보면, 데이터가 전송/수신되며 레지스터에 로드되는 동안에 스캔동작이 수행될 때에, 보안 데이터가 스캔체인을 통해 외부로 출력될 수도 있을 가능성이 있다. 즉, 스캔체인의 구성을 이용하게 되면, 보안 데이터가 유출될 위험성이 있다.
마찬가지로, 수신 등에 관련된 보안 데이터가 내부 RAM내에 기록되는 동안에 스캔동작을 수행함으로써, 보안 데이터가 스캔체인을 통해 외부로 출력될 수도 있을 가능성이 있다.
또, 정상모드에서는, 몇 가지 방법에 의해 이동구동신호(shift enable signal)를 제어하고 스캔체인 이동동작을 수행함으로써 데이터가 유출될 위험성이 있다.
또한, 스캔체인을 사용하여 데이터를 입력하는 것이 가능하므로, 스캔체인을 통해 내부 레지스터 또는 RAM내에 데이터를 기입함으로써, 암호코드와 같은 데이터를 변경하는 "스푸핑(spoofing)"이라고 불리는, 비인가된 LSI 동작이 발생하지 않는다고 아무도 확실하게 말할 수 없다.
즉, 특히 암호코드와 같은 보안 데이터를 처리하는 LSI에 관해서, 스캔체인을 제공하고 스캔시험을 가능하게 한다는 것은, 보안 데이터에 대한 비인가된 액세스, 암호코드의 훼손 또는 데이터 조작을 통한 스푸핑의 발생의 위험성을 수반하고 있다.
한편, 스캔시험이 수행되지 않으면, 고품질의 LSI시험이 어려워지며, 제조상에 문제가 된다.
이러한 문제들을 고려하여, 본 발명은 LSI의 내부에 저장된 보안 데이터에 대한 비인가된 액세스나 또는 보안 데이터의 변경을 방지하면서 스캔시험을 가능하게 하는 반도체 집적회로를 제공하고자 하는 것이다.
즉, 본 발명의 실시예에 따르는 반도체 집적회로는 정상동작모드와, 내부논리회로를 스캔 시험하기 위한 시험모드를 가지는 반도체 집적회로이다. 반도체 집적회로는, 상기 내부논리회로에 대한 스캔시험을 수행하기 위해 배열된 복수의 플립플롭과, 모드신호의 논리레벨에 의해 정상동작모드나 또는 시험모드를 선택적으로 지정하기 위한 하나의 모드 신호에 따라 상기 정상모드에서 상기 시험모드로 천이(遷移)될 때에 상기 복수의 플립플롭을 리세트하는 리세트 수단을 구성하고 있다.
상기 모드 신호에 따라 시험모드에서 정상동작모드로 천이될 때에 상기 리세트 수단은 상기 복수의 플립플롭을 또한 리세트한다.
반도체 집적회로는 상기 복수의 플립플롭에 직렬로 접속되어 있고, 시험모드 동안에 공급되는 데이터를 출력하며, 정상동작모드 동안에 공급되는 데이터의 출력을 금지하는 출력제어수단을 더 구성할 수 있다.
반도체 집적회로는, 상기 복수의 플립플롭에 접속된 메모리 수단과, 상기 모드신호에 따라 시험모드 동안에 상기 메모리 수단에 액세스하는 것을 금지하는 액세스 제어수단을 더 구성할 수 있다.
반도체 집적회로는, 모드 신호의 상기 논리레벨의 천이 타이밍을 검출하기 위한 천이검출수단을 더 구성할 수 있으며, 천이검출수단이 천이 타이밍을 검출할 때에 상기 리세트 수단은 복수의 플립플롭을 리세트한다.
본 발명의 한 실시예에 따르는 반도체 집적회로는 내부논리회로를 스캔 시험하기 위한 시험모드와 정상동작모드를 가지는 반도체 집적회로이며, 상기 내부논리회로에 대한 스캔시험을 수행하기 위해 배열된 복수의 플립플롭과, 모드신호의 논리레벨에 의해 상기 정상동작모드나 또는 시험모드를 선택적으로 지정하기 위한 하나의 모드 신호에 따라 시험모드에서 정상동작모드로 천이될 때에 상기 복수의 플립플롭을 리세트하는 리세트 수단을 구성하고 있다.
반도체 집적회로는, 모드 신호의 상기 논리레벨의 천이 타이밍을 검출하기 위한 천이검출수단을 더 구성할 수 있으며, 천이검출수단이 천이 타이밍을 검출할 때에 상기 리세트 수단은 복수의 플립플롭을 리세트한다.
본 발명의 한 실시예에 따르는 반도체 집적회로는 내부논리회로를 스캔 시험하기 위한 시험모드와 정상동작모드를 가지는 반도체 집적회로이며, 상기 내부논리회로에 대한 스캔시험을 수행하기 위해 배열된 복수의 플립플롭과, 상기 복수의 플립플롭에 직렬로 접속되어 있으며, 시험모드 동안에는 공급되는 데이터를 출력하고, 정상동작모드 동안에는 공급되는 데이터의 출력을 금지하는 출력제어수단을 구성하고 있다.
본 발명의 한 실시예에 따르는 반도체 집적회로는 내부논리회로를 스캔 시험하기 위한 시험모드와 정상동작모드를 가지는 반도체 집적회로이며, 상기 내부논리회로에 대한 스캔시험을 수행하기 위해 배열된 복수의 플립플롭과, 상기 복수의 플립플롭에 접속된 메모리 수단과, 모드신호의 논리레벨에 의해 정상동작모드나 또는 시험모드를 선택적으로 지정하기 위한 하나의 모드 신호에 따라 상기 시험모드 동안에 상기 메모리 수단에 액세스하는 것을 금지하는 액세스 제어수단을 구성하고 있다.
본 발명의 한 실시예에 따르는 시험방법은 스캔시험을 수행하기 위한 시험모드와 정상모드를 가지는 집적회로에 대한 시험방법이며, 이 집적회로는 내부 논리회로와 내부 논리회로를 스캔시험하기 위한 복수의 플립플롭을 구성하고 있다. 이 시험방법은 정상동작모드에서 시험모드로 천이할 때에 상기 복수의 플립플롭을 리세트한다.
또한, 이 시험방법은 시험모드에서 정상동작모드로 천이할 때에 상기 복수의 플립플롭을 리세트한다.
본 발명의 한 실시예에 따르는 시험방법은, 내부논리회로와 상기 내부회로를 스캔 시험하기 위한 복수의 플립플롭 및 상기 플립플롭에 접속된 메모리 수단을 포함하는 집적회로에 대한 시험방법이며, 상기 스캔시험을 수행하기 위한 시험모드와 정상동작모드를 가진다. 시험모드 동안에 상기 메모리 수단에 대한 액세스가 금지된다.
상기 본 발명의 한 실시예에 따르면, 스캔체인을 구성하는 플립플롭은 스캔 시험이 정상동작상태와 스캔동작상태 사이의 스위칭을 위한 모드신호에 의해 개시 또는 종료될 때에 리세트된다. 즉, 스캔동작은 플립플롭내에 데이터가 남아 있지 않는 상태에서 개시 또는 종료된다.
또, 스캔시험동안에 스캔시험동작을 이용하여 내부 메모리 수단을 액세스하는 것이 불가능하게 된다.
더욱이, 상기 본 발명의 한 실시예에 따르면, 복수의 플립플롭에 직렬로 접속된 출력제어수단은 스캔시험 동안에만 데이터를 출력하고, 정상동작 동안에는 스캔 체인에 의해 데이터를 출력 또는 이동시킬 수 없다.
상기 설명에서 알 수 있듯이, 다음과 같은 장점들이 본 발명의 실시예로부터 얻어질 수 있다.
정상동작모드나 또는 시험모드를 선택적으로 지정하기 위한 모드 신호에 따라 스캔시험이 개시될 때에 스캔 체인을 구성하는 플립플롭이 리세트된다. 따라서, 스캔동작은 정상동작모드 동안에 플립플롭에 의해 보존되어 있었던 데이터가 남아 있지 않은 상태에서 개시되기 때문에, 정상동작모드 동안에 스캔시험동작을 이용하여 데이터를 추출하는 것이 불가능하게 된다.
또, 스캔체인을 구성하는 플립플롭은 스캔시험이 종료되었을 때에 리세트되기 때문에, 스캔시험동작 동안에 플립플롭에 로드되어 있었던 데이터가 남아 있는 상태에서 정상동작모드로 천이되는 것이 방지된다. 그러므로, 스캔시험동작을 이용하여 데이터를 로드하는 것과 정상동작을 수행하는 것이 방지될 수 있다.
게다가, 내부메모리 수단은 스캔시험동안에 스캔시험동작을 이용하여 액세스될 수 없다. 이러한 이유 때문에, 스캔시험 동안에 스캔시험동작을 이용하여, RAM 등과 같은 메모리 수단에 액세스하여, 그것에 의해 스캔체인을 통해 메모리 수단의 데이터를 판독하거나 또는 메모리 수단에 임의의 값을 기록하고 정상동작으로 천이하는 것이 불가능하게 된다. 따라서, 암호화 코드 등과 같은 보안 데이터를 추출하거나 또는 데이터를 손상시켜 속여넘기는 것이 방지된다.
또, 스캔체인에 직렬로 접속되어 있으며, 시험모드 동안에 공급되는 데이터를 출력하는 출력제어수단을 구비함으로써, 정상동작모드 동안에 공급되는 데이터의 출력을 금지하면서 정상동작모드 동안에 스캔체인에 의한 이동이 불가능하게 된다. 이러한 이유 때문에, 정상동작모드 동안에 단지 스캔 인에이블 신호만을 변경시킴으로써 스캔체인을 이용하는 이동(shift out)에 의해 내부 플립플롭의 값을 판독하는 것이 방지될 수 있다.
따라서, 스캔체인 또는 스캔시험동작을 이용하는 LSI(반도체 집적회로)의 내부 레지스터의 값의 누출이 방지될 수 있고, 또한 스캔시험동작을 이용하는 LSI 내부 레지스터 또는 메모리내에 값을 설정한 후에 정상동작을 수행하는 일이 방지될 수 있다. 그러므로, 암호화 키 등과 같은 보안 데이터를 처리하는 LSI라도 보안문제를 발생시키지 않고 스캔시험 가능하도록 구성된 회로를 가질 수 있다. 즉, 제조하기에 적합하고 보안레벨을 저하시키지 않으면서 스캔시험될 수 있는 반도체 집적회로(LSI)가 실현될 수 있다.
본 발명의 반도체 집적회로의 한 실시형태로서, 본 발명의 시험방법을 수행하는 LSI(1)가 이하에서 설명된다.
LSI(1)의 주요부의 구성은 도 1에 도시되어 있다. 도 1에서는, 도 4를 참조하여 기술된 내부회로(60)에 대응하는 회로 시스템, 즉 LSI(1)의 주요 논리회로 시스템이 도시되어 있지 않으며, 단지 본 발명과 직접 관련된 부분만이 도시되어 있다는 점을 주목하자.
LSI(1)에는, 스캔입력단자(5)와 스캔출력단자(6)가 제공되어 있다. 스캔 플립플롭(41-1 ~ 41-n)과 더미 플립플롭(32)을 포함하는 스캔체인은 스캔입력단자(5)와 스캔출력단자(6) 사이에 형성된다.
스캔 플립플롭(41-1 ~ 41-n)의 각각은 다중화기의 기능을 가지는 플립플롭이며, 도 4에 도시된 내부회로(60)에 대한 스캔 플립플롭(61~68)에서와 같이, 현재 도시되어 있는 내부회로에 연결되어 있으며, 스캔시험을 가능하게 하도록 구성되어 있다. 따라서, 도 1에서는, 단지 도 4의 파선으로 도시된 스캔 이동경로만이 도시되어 있다.
스캔시험동안에는, 스캔패턴이 스캔입력단자(5)로부터 스캔 플립플롭(41-1 ~ 41-n)으로 입력된다. 스캔체인의 이동에 의해, 스캔시험을 위해 검사되어지는 데이터가 스캔출력단자(6)로부터 이동되어진다.
비동기 리세트를 가지는 플립플롭은 스캔 플립플롭(41-1 ~ 41-n)과 더미 플립플롭(32)을 위해 이용된다.
스캔모드신호는 스캔모드 입력단자(2)에 입력된다. 스캔모드신호는 정상동작상태와 스캔동작상태 사이에서 LSI(1)를 스위칭하기 위한 신호이다. 본 예에서는, 스캔모드신호가 "L"일 경우, LSI(1)는 정상동작상태로 되며, 스캔모드신호가 "H"일 경우, LSI(1)는 스캔동작상태로 된다.
LSI(1)의 시스템클락은 클락입력단자(3)로 입력된다. 본 예에서는, 시스템클락이 또한 스캔동작 동안에 스캔클락으로 사용된다. 즉, 클락입력단자(3)로부터의 시스템클락은 스캔 플립플롭(41-1 ~ 41-n)을 위한 동작클락으로서 직접 사용된다.
LSI(1)를 내부적으로 리세트하기 위한 리세트 신호는 리세트 입력단자(4)로부터 입력된다. 도면에 도시되지 않은 내부회로는 외부로부터 공급되는 리세트 신호에 따라 리세트된다.
도 1의 LSI(1)는, 그 구성으로 인해, 다음과 같은 3가지 특징을 가진다.
(1) 스캔체인의 플립플롭을 위한 리세트 제어
(2) 스캔동작 동안에 내부 메모리수단(RAM 1)에 대한 액세스 금지 제어
(3) 더미플립플롭(32)에 의한 출력제어
이 점들은 이하에 기술될 것이다.
<(1) 스캔체인의 플립플롭을 위한 리세트 제어>
도면에 도시된 바와 같이, 플립플롭(21, 22), EX-OR 게이트(23)와 AND 게이트(24)가 리세트 제어블록으로서 제공된다.
플립플롭(21, 22)과 EX-OR 게이트(23)는 스캔모드신호의 논리레벨의 천이 타이밍을 검출하도록 제공된다.
플립플롭(21, 22)은 입력단자(3)로부터의 시스템 클락으로 동작한다. 제 1단의 플립플롭(21)은 스캔모드신호를 래치(latch)하고 그 다음 단의 플립플롭(22)은 플립플롭(21)의 래치된 출력을 래치한다.
EX-OR게이트(23)에서는, 플립플롭(21, 22)의 각각의 래치된 출력의 XOR(inverted output)이 얻어지며, AND게이트(24)에 공급된다. AND게이트(24)의 또 다른 단자는 리세트 입력단자(4)에 접속되며, 외부 리세트신호는 AND게이트(24)에 공급된다.
AND게이트(24)의 AND출력은 스캔 플립플롭(41-1 ~ 41-n)과 더미 플립플롭(32)을 위한 리세트 신호로 선택된다.
리세트 제어블록(20)의 동작은 도 2를 참조하여 설명된다.
도 2a는 스캔모드신호를 도시하고 있다. LSI는 스캔모드신호가 "H"일 경우에 스캔동작모드로 된다.
리세트 제어블록(20)에서는, 상술한 바와 같이, 플립플롭(21, 22)이 도 2b에 도시된 시스템 클락으로 동작하여, 스캔모드신호를 래치하고, EX-OR게이트(23)를 통해 출력하기 때문에, 도 2c에 도시된 단부(edge) 검출신호가 스캔모드신호의 상승 단부 및 하강 단부에 따라 얻어진다.
게다가, 2개 단의 플립플롭(21, 22)의 래치된 출력이 Ex-OR게이트(23)를 통해 출력되는 구성을 채택함으로써, 출력된 단부 검출신호(L 레벨)는 시스템 클락의 한 클락주기보다 최소한 동일하거나 또는 더 큰 펄스 길이를 가지게 된다.
단부 검출신호(edge detection signal)가 AND게이트(24)를 통해 스캔 플립플롭(41-1 ~ 41-n)과 더미 플립플롭(32)에 공급되기 때문에, 스캔 플립플롭(41-1 ~ 41-n)과 더미 플립플롭(32)은 L 레벨의 단부 검출신호에 의해 도 2e에 도시된 바와 같이 스캔모드신호의 상승 및 하강에 따라 리세트된다.
게다가, 도 2d에 도시된 바와 같이, 리세트 신호(L 레벨)가 리세트 입력단자(4)로부터 입력될 때에, 이 리세트 신호는 AND게이트(24)를 통해 스캔 플립플롭(41-1 ~ 41-n)과 더미 플립플롭(32)으로 공급되기 때문에, 이들 플립플롭은 도 2e에 도시된 바와 같이 마찬가지로 외부 리세트 입력과 함께 리세트된다.
따라서, 스캔 플립플롭(41-1 ~ 41-n)과 더미 플립플롭(32)은 스캔모드신호의 단부 타이밍에 따라, 즉 스캔동작상태에서 정상동작상태로뿐만 아니라 정상동작상태에서 스캔동작상태로 천이 시에 리세트된다.
그러므로, 스캔동작을 개시하는 시점에서 리세트하지 않고 스캔동작을 수행하거나 또는 스캔동작의 종료시에 리세트되지 않고 LSI(1)가 정상동작을 수행하도록 하는 것이 불가능하게 된다.
스캔회로가 삽입되어 있는 본 발명의 LSI(1)에서는, 정상동작에서 스캔동작으로 들어갈 때에 스캔체인을 이용하여 스캔 플립플롭(41-1 ~ 41-n)의 데이터를 이동시킴으로써, 스캔동작으로 들어가기 전에 정상동작 동안에 스캔 플립플롭(41-1 ~ 41-n)의 상태가 외부로 출력되어질 위험이 있다. 이것은 암호화 키 등과 같은 보안 데이터가 누출될 수도 있을 가능성이 있다는 것을 의미한다.
이와 같이, 본 예에서는, 상술한 바와 같이 스캔모드신호의 상승 단부에 의한 스캔모드로 진입 시 리세트하여 LSI의 내부를 초기화함으로써, 정상동작 동안에 유지되는 데이터를 이동시키는 것이 불가능하게 될 수 있다.
게다가, 스캔회로를 삽입하여, 스캔동작 동안에 외부로부터 스캔체인을 통해 스캔 플립플롭(41-1 ~ 41-n)에 데이터를 로드하는 것이 가능하게 된다. 만약 정상동작으로의 천이가 이루어지면, LSI(1)가 로드된 데이터를 이용하여 정상동작을 수행하는 것이 가능하게 된다. 결과적으로, 암호화 키 등과 같은 보안 데이터가 변경되어 사용될 가능성이 있다.
이와 같이, 본 예에서, 이것은 상술한 바와 같이 스캔모드신호의 하강 단부에 의한 스캔모드의 종료시 리세트하여 LSI(1)의 내부를 초기화함으로써 방지된다.
리세트 신호로서 역할하는 단부 검출신호는 상술한 바와 같이, 시스템 클락의 한 클락주기보다 최소한 동일하거나 또는 더 큰 펄스 길이를 가지게 된다. 따라서, 스캔 플립플롭(41-1 ~ 41-n)은 확실하게 리세트된다.
본 예에서, 시스템 클락은 스캔클락으로서 직접 사용되며, 시스템 클락은 또한 리세트 제어블록(20) 내에서 단부 검출을 위해 사용된다. 이것에 대한 이유는 이하에 기술된다.
예를 들면, 만약 스캔 클락과 시스템 클락이 구별되고, 스캔모드신호에 대한 상승/하강 단부 검출회로(플립플롭(21, 22)과 EX-OR게이트(23))가 스캔동작 동안에 사용되지 않는 클락(예를 들면, 시스템 클락)을 사용하여 구성되어 있다면, 정상동작에서 스캔동작으로 천이가 한번 이루어지면, 단부 검출회로에 클락을 입력시키지 않고 스캔동작이 수행될 수 있다. 이 이유로, 스캔동작을 개시하는 시점에서는 리세트가 실행되지 않고, 내부 레지스터의 값을 외부로 출력시킬 수 있게 할 위험을 일으킨다.
다른 한편, 만약 스캔모드신호에 대한 상승/하강 단부 검출회로가 정상동작 동안에 사용되지 않는 클락(예를 들면, 스캔 클락)을 사용하여 구성되어 있다면, 스캔동작이 종료될 때, 단부 검출회로에 클락을 입력시키지 않고도 정상동작이 수행될 수 있다. 결과적으로, LSI는 외부로부터 레지스터내에 설정된 임의의 값에 의해 동작이 될 수도 있다.
본 예에서는, 이러한 문제를 방지하기 위해서, 시스템 동작과 스캔동작 동안에 모두 같은 클락이 사용되고, 이 클락(시스템 클락)은 모드신호에 대한 상승/하강 단부 검출회로에 입력된다.
본 보예에서는, 스캔패턴을 생성할 때, 스캔모드가 한번 되면 시스템 클락중 2개의 클락이 입력될 수도 있다. 도 2a 내지 도 2e의 파형과 유사한 파형이 도 3a 내지 도 3e에 도시되어 있다. 그러나, 시스템 클락중 2개의 클락이 입력될 때에 리세트가 이루어지지 않기 때문에 스캔동작은 그 후, 즉 T1 후에 수행될 수 있다.
따라서, 2개의 클락은 스캔패턴을 생성하는 본 방법으로 초기에 입력된다.
<(2) 스캔동작 동안에 내부 메모리수단(RAM 1)에 대한 액세스 금지제어>
다음에는, 스캔동작 동안에 내부 메모리수단에 대한 액세스 금지제어가 기술될 것이다.
도 1에 도시된 RAM제어블록(10)과 같이, RAM(11)과 OR게이트(12)가 제공된다. RAM(11)은 예를 들면, 보안 데이터가 저장되어 있는 메모리부라고 가정한다. RAM(11)은 칩인에이블단자(11a)에 입력된 칩인에이블신호(XCE)에 의해 액세스가능 또는 불가능하게 되도록 제어된다. 이 경우, 칩인에이블신호(XCE)가 저레벨에서 작동한다.
정상동작 동안에는, LSI(1)의 내부회로에 의해 생성된 칩인에이블신호(XCE)가 OR게이트(12)를 통해 칩인에이블단자(11a)에 공급되며, RAM(11)의 액세스 제어가 수행된다.
더욱이, 본 예에서는, 스캔모드신호가 OR게이트(12)를 통해 칩인에이블단자(11a)에 공급된다.
상술한 바와 같이, "H" 스캔모드신호에 의해, LSI(1)는 스캔모드로 놓여진다. 칩인에이블단자(11a)가 저레벨에서 작동 가능한 구성을 가지고 있으므로, 스캔동작 구간 동안에, RAM(11)에 대한 액세스 금지제어가 유지된다.
본 예에서와 같이, 스캔회로가 삽입되어 있는 LSI에서는, 스캔동작 동안에, 스캔동작을 활용하여 내부 RAM을 액세스함으로써 내부 RAM에 있는 데이터가 스캔 체인을 통해 판독될 수도 있거나 또는 내부 RAM내에 임의의 값을 기록한 후에 정상 동작이 수행될 가능성이 있다. 따라서, 본 예에서는, 스캔모드신호를 칩인에이블신호로서 이용함으로써, RAM(11)은 스캔동작 동안에 액세스 불가능하게 된다.
도 1에서는, RAM(11)이 일례로서 이용되었지만, LSI 내부 ROM과 플래시 메모리 등도 비슷한 방법에 의해 스캔동작 동안에 액세스 불가능하게 되어, 저장된 보안 데이터 등을 보호하게 된다.
<(3) 더미 플립플롭(32)에 의한 출력제어>
다음에는, 더미 플립플롭(32)에 의한 출력제어가 기술된다.
도 1에 도시된 더미 플립플롭 제어블록(30)은 스캔 플립플롭(41-1 ~ 41-n)으로 구성된 스캔체인에 대한 출력제어수단으로서 제공된다.
도 1에 도시된 바와 같이, AND게이트(31)는 더미 플립플롭 제어블록(30)으로서 제공되며, AND게이트(31)의 출력은 더미 플립플롭(32)의 클락으로 선택된다.
AND게이트(31)는 시스템 클락과 스캔모드신호에 대해서 논리 AND 동작을 수행한다.
LSI는 스캔모드신호가 "H"일 경우에 스캔모드가 되기 때문에, AND게이트(31)는 스캔동작 구간 동안에만 더미 플립플롭(32)으로 시스템 클락을 제공한다.
즉, 정상동작상태 동안에 클락은 더미 플립플롭(32)에 제공되지 않으므로 동작하지 않는다.
더미 플립플롭(32)은 스캔체인의 마지막 단에 접속되어 있다. 그러므로, 더미 플립플롭(32)이 정상동작 동안에 동작하지 않는다는 사실은 스캔체인을 이용하여 이동시키는 작업이 정상동작 동안에 이루어질 수 없다는 것을 의미한다.
상기 스캔모드신호의 검출된 단부에 의한 리세트는 정상동작 동안에 수행되는 이동에 대한 보안대책은 아니다.
게다가, 정상동작 동안에 단지 스캔인에이블신호만을 스위칭하여 스캔 이동됨으로써, 스캔체인을 사용하여 내부 스캔 플립플롭(41-1 ~ 41-n)의 값이 판독될 수 있을 가능성이 있다.
정상동작 동안에 이러한 승인되지않은 데이터의 판독을 방지하기 위해서, 본 예에서는, 단지 스캔동작 동안에만 동작하는 더미 플립플롭(32)을 스캔체인의 마지막 단에 접속함으로써 정상동작 동안에 이동하는 것이 불가능하게 되어 있다.
본 발명에서는, 한 개의 더미 플립플롭(32)이 스캔체인의 마지막 단에 연결되도록 구성되어 있지만, 더미 플립플롭(32)에 대한 다른 접속위치와 갯수도 가능하다.
즉, 예를 들면, 더미 플립플롭(32)은 단지 보안 데이터만을 보호하기 위해서 보안 데이터를 처리하는 플립플롭의 다음단에 배치될 수도 있다.
게다가, 출력제어수단은 더미 플립플롭(32) 대신에, AND게이트들을 적절한 방법으로 배치함으로써 구성될 수도 있으며, 정상동작 동안에 데이터가 스캔출력단자(6)로 출력되는 것을 방지함으로써 유사한 장점들이 얻어질 수 있다.
그러므로, 본 실시예의 3가지 특징적인 구성이 기술되었다. 이러한 구성으로, 스캔체인을 가지는 LSI가 제공되어, 스캔동작이 가능하게 되며, 스캔체인에 의한 데이터 누출이나, 또는 외부로부터 승인되지 않은 데이터의 재기록도 방지하게 된다. 그러므로, LSI는 보안 레벨을 낮추지 않고 스캔방법을 이용하여 검사될 수 있으며, 보안 데이터를 사용상 처리하기에 적합한 LSI가 제공될 수 있다.
도 1에는, (1) 스캔체인의 리세트 제어, (2) 스캔동작 동안에 내부 메모리수단에 대한 액세스 금지제어, (3) 더미플립플롭(32)에 의한 출력제어,의 3가지 기능이 실현되는 구성이 도시되어 있다. 그러나, 3가지 기능중 적어도 한 가지 기능을 단순히 제공함으로써, 스캔회로를 갖추고 높은 보안기능을 가진 LSI가 제공될 수 있다.
3가지 기능중 어느 기능이 제공되어야 하는지는 설계되어질 LSI의 응용분야, 회로구성 또는 규모, 처리되어질 데이터, 요구되는 보안레벨 등에 따라 정해질 수 있다.
더욱이, 리세트 제어블록(20), RAM제어블록(10)과 더미 플립플롭 제어블록(30)을 위해, 사용할 레지스터와 게이트의 종류 또는 갯수와 같은 여러가지 구성이 가능하다는 것이 명백함은 물론이다.
여기에 나타내어진 본 발명은 그 정신 또는 그것의 일반 특성에서 일탈하지 않고 다른 특정 형태로도 구현실시될 수 있기 때문에, 지시되어진 형태의 어떤 것은 여기에 기술된 실시형태가 모든 관점에서 설명되어야 하는 제한적이 아니라는 점이 고려되어져야 한다.
본 발명의 영역은 상술한 설명보다는 첨부된 청구항에 의해 지시되어지며, 청구항의 의미와 범위내에서 발생하는 모든 변경들은 청구항내에 포함되어져 있다.

Claims (12)

  1. 정상동작모드와 내부논리회로를 스캔 시험하기 위한 시험모드를 가지는 반도체 집적회로에 있어서,
    상기 내부논리회로에 대한 스캔시험을 수행하기 위해 배열된 복수의 플립플롭과,
    모드 신호의 논리레벨에 의해 상기 정상동작모드와 상기 시험모드중 하나를 선택적으로 지정하기 위한 상기 모드 신호에 따라 상기 정상동작모드에서 상기 시험모드로 천이될 때에 상기 복수의 플립플롭을 리세트하는 리세트 수단을 구성하는 것을 특징으로 하는 반도체 집적회로.
  2. 제 1항에 있어서,
    상기 모드 신호에 따라 상기 시험모드에서 상기 정상동작모드로 천이될 때에 상기 리세트 수단은 상기 복수의 플립플롭을 리세트하는 것을 특징으로 하는 반도체 집적회로.
  3. 제 2항에 있어서,
    상기 복수의 플립플롭에 직렬로 접속되어 있으며, 상기 정상동작모드 동안에 공급되는 데이터의 출력을 금지하면서 상기 시험모드 동안에 공급되는 데이터를 출력하는 출력제어수단을 더 구성하는 것을 특징으로 하는 반도체 집적회로.
  4. 제 3항에 있어서,
    상기 복수의 플립플롭에 접속된 메모리 수단과,
    상기 모드 신호에 따라 상기 시험모드 동안에 상기 메모리 수단에 액세스하는 것을 금지하는 액세스 제어수단을 더 구성하는 것을 특징으로 하는 반도체 집적회로.
  5. 정상동작모드와 내부논리회로를 스캔 시험하기 위한 시험모드를 가지는 반도체 집적회로에 있어서,
    상기 내부논리회로에 대한 스캔시험을 수행하기 위해 배열된 복수의 플립플롭과,
    모드 신호의 논리레벨에 의해 상기 정상동작모드와 상기 시험모드중 하나를 선택적으로 지정하기 위한 상기 모드 신호에 따라 상기 시험모드에서 상기 정상동작모드로 천이될 때에 상기 복수의 플립플롭을 리세트하는 리세트 수단을 구성하는 것을 특징으로 하는 반도체 집적회로.
  6. 제 1항에 있어서,
    상기 모드 신호의 상기 논리레벨의 천이 타이밍을 검출하기 위한 천이검출수단을 더 구성하며,
    상기 천이검출수단이 상기 천이 타이밍을 검출할 때에 상기 리세트 수단은 상기 복수의 플립플롭을 리세트하는 것을 특징으로 하는 반도체 집적회로.
  7. 제 5항에 있어서,
    상기 모드 신호의 상기 논리레벨의 천이 타이밍을 검출하기 위한 천이검출수단을 더 구성하며,
    상기 천이검출수단이 상기 천이 타이밍을 검출할 때에 상기 리세트 수단은 상기 복수의 플립플롭을 리세트하는 것을 특징으로 하는 반도체 집적회로.
  8. 정상동작모드와 내부논리회로를 스캔 시험하기 위한 시험모드를 가지는 반도체 집적회로에 있어서,
    상기 내부논리회로에 대한 스캔시험을 수행하기 위해 배열된 복수의 플립플롭과,
    상기 복수의 플립플롭에 직렬로 접속되어 있으며, 상기 정상동작모드 동안에 공급되는 데이터의 출력을 금지하면서 상기 시험모드 동안에 공급되는 데이터를 출력하는 출력제어수단을 구성하는 것을 특징으로 하는 반도체 집적회로.
  9. 정상동작모드와 내부논리회로를 스캔 시험하기 위한 시험모드를 가지는 반도체 집적회로에 있어서,
    상기 내부논리회로에 대한 스캔시험을 수행하기 위해 배열된 복수의 플립플롭과,
    상기 복수의 플립플롭에 접속된 메모리 수단과,
    모드 신호의 논리레벨에 의해 상기 정상동작모드와 상기 시험모드중 하나를 선택적으로 지정하기 위한 상기 모드 신호에 따라 상기 시험모드 동안에 상기 메모리 수단에 액세스하는 것을 금지하는 액세스 제어수단을 구성하는 것을 특징으로 하는 반도체 집적회로.
  10. 내부논리회로와, 상기 내부논리회로를 스캔 시험하기 위한 복수의 플립플롭을 가지며, 정상동작모드와 상기 스캔시험을 수행하기 위한 시험모드를 가지는 반도체 집적회로를 시험하는 방법이며,
    상기 정상동작모드에서 상기 시험모드로 천이할 때에 상기 복수의 플립플롭이 리세트되는 것을 특징으로 하는 반도체 집적회로를 시험하는 방법.
  11. 내부논리회로와, 상기 내부논리회로를 스캔 시험하기 위한 복수의 플립플롭을 가지며, 정상동작모드와 상기 스캔시험을 수행하기 위한 시험모드를 가지는 반도체 집적회로를 시험하는 방법이며,
    상기 시험모드에서 상기 정상동작모드로 천이할 때에 상기 복수의 플립플롭이 리세트되는 것을 특징으로 하는 반도체 집적회로를 시험하는 방법.
  12. 내부논리회로와, 상기 내부논리회로를 스캔 시험하기 위한 복수의 플립플롭 및 상기 복수의 플립플롭에 접속된 메모리 수단을 가지며, 정상동작모드와 상기 스캔시험을 수행하기 위한 시험모드를 가지는 반도체 집적회로를 시험하는 방법이며,
    상기 시험모드 동안에 상기 메모리 수단에 액세스가 금지되는 것을 특징으로 하는 반도체 집적회로를 시험하는 방법.
KR1020030057606A 2002-09-24 2003-08-20 반도체 집적회로와 그 시험방법 KR101079310B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2002-00277285 2002-09-24
JP2002277285A JP3671948B2 (ja) 2002-09-24 2002-09-24 半導体集積回路とその試験方法

Publications (2)

Publication Number Publication Date
KR20040026597A KR20040026597A (ko) 2004-03-31
KR101079310B1 true KR101079310B1 (ko) 2011-11-04

Family

ID=32272927

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030057606A KR101079310B1 (ko) 2002-09-24 2003-08-20 반도체 집적회로와 그 시험방법

Country Status (3)

Country Link
US (1) US7487418B2 (ko)
JP (1) JP3671948B2 (ko)
KR (1) KR101079310B1 (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6972592B2 (en) * 2003-11-24 2005-12-06 Lsi Logic Corporation Self-timed scan circuit for ASIC fault testing
US8683426B2 (en) 2005-06-28 2014-03-25 The Mathworks, Inc. Systems and methods for modeling execution behavior
US8793602B2 (en) * 2004-01-15 2014-07-29 The Mathworks, Inc. System and method for scheduling the execution of model components using model events
US7519883B1 (en) * 2005-04-05 2009-04-14 Advanced Micro Devices, Inc. Method of configuring a system and system therefor
JP4262265B2 (ja) * 2006-06-20 2009-05-13 キヤノン株式会社 半導体集積回路
JP4992791B2 (ja) * 2008-03-28 2012-08-08 富士通株式会社 スキャン制御方法及び装置
JP4309949B1 (ja) 2008-05-28 2009-08-05 株式会社東芝 半導体集積装置及び半導体集積装置のテスト方法
US8051345B2 (en) * 2008-06-04 2011-11-01 Ati Technologies Ulc Method and apparatus for securing digital information on an integrated circuit during test operating modes
US8707443B2 (en) * 2008-08-08 2014-04-22 Nxp B.V. Circuit with testable circuit coupled to privileged information supply circuit
US8074132B2 (en) * 2008-10-28 2011-12-06 Broadcom Corporation Protecting data on integrated circuit
JP2010261768A (ja) * 2009-05-01 2010-11-18 Sony Corp 半導体集積回路、情報処理装置、および出力データ拡散方法、並びにプログラム
WO2011033564A1 (ja) 2009-09-16 2011-03-24 株式会社アドバンテスト プローブ回路、マルチプローブ回路、試験装置、および電子デバイス
US9746519B2 (en) * 2011-03-25 2017-08-29 Nxp B.V. Circuit for securing scan chain data
JP5793978B2 (ja) * 2011-06-13 2015-10-14 富士通セミコンダクター株式会社 半導体装置
KR102190469B1 (ko) 2013-12-05 2020-12-11 삼성전자주식회사 보안 회로 및 이를 포함하는 보안 시스템
US10445500B2 (en) * 2017-06-28 2019-10-15 Arm Limited Reset attack detection
US10540299B2 (en) * 2017-06-30 2020-01-21 Arm Limited Resetting operating state holding element
CN110020558A (zh) * 2019-04-09 2019-07-16 长沙理工大学 边界扫描设计环境下一种安全的密码芯片可测试性设计结构
US11320482B2 (en) * 2020-02-26 2022-05-03 Silicon Laboratories Inc. Secure scan entry

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3961254A (en) * 1974-12-20 1976-06-01 International Business Machines Corporation Testing embedded arrays
JP2614216B2 (ja) 1986-11-26 1997-05-28 富士通株式会社 スキャンテスト回路生成装置
DE69016509T2 (de) * 1989-05-31 1995-06-01 Fujitsu Ltd Integrierte Halbleiterschaltungsanordnung mit Testschaltung.
US5283889A (en) * 1989-12-29 1994-02-01 Zenith Data Systems Corporation Hardware based interface for mode switching to access memory above one megabyte
JP2945103B2 (ja) 1990-05-15 1999-09-06 株式会社リコー テスト用スキャン回路装置
JP2785506B2 (ja) 1991-03-18 1998-08-13 松下電器産業株式会社 スキャン用回路
JP2918730B2 (ja) 1991-12-25 1999-07-12 株式会社日立製作所 デジタル論理装置のスキャン回路
JP3291198B2 (ja) * 1996-05-08 2002-06-10 富士通株式会社 半導体集積回路
JP4294159B2 (ja) * 1999-05-06 2009-07-08 株式会社ルネサステクノロジ 半導体集積回路装置
KR20010011641A (ko) * 1999-07-29 2001-02-15 김영환 반도체장치의 테스트를 위한 내부 클럭 발생장치

Also Published As

Publication number Publication date
JP2004117029A (ja) 2004-04-15
JP3671948B2 (ja) 2005-07-13
US7487418B2 (en) 2009-02-03
KR20040026597A (ko) 2004-03-31
US20040153801A1 (en) 2004-08-05

Similar Documents

Publication Publication Date Title
KR101079310B1 (ko) 반도체 집적회로와 그 시험방법
EP1499906B1 (en) Method and apparatus for secure scan testing
Wang et al. IIPS: Infrastructure IP for secure SoC design
KR100897975B1 (ko) 반도체 집적회로
US9727754B2 (en) Protecting chip settings using secured scan chains
US7404126B2 (en) Scan tests tolerant to indeterminate states when employing signature analysis to analyze test outputs
US20080005634A1 (en) Scan chain circuitry that enables scan testing at functional clock speed
US11023623B2 (en) Method for triggering and detecting a malicious circuit in an integrated circuit device
US8195995B2 (en) Integrated circuit and method of protecting a circuit part of an integrated circuit
EP3893008A1 (en) Method and apparatus for performing a secure test mode of a soc
US11100219B2 (en) Method and device for detecting a malicious circuit on an integrated circuit
US7962766B2 (en) Method and system for encryption-based design obfuscation for an integrated circuit
EP1443338A1 (en) Secure test arrangement
US7966535B2 (en) Secure scan design
Vinta et al. Modeling and test generation for combinational hardware trojans
EP1766428B1 (en) Testing a pipeline in an ic
US20050073788A1 (en) Integrated circuit outputs protection during JTAG board tests
US20240241174A1 (en) Secured scan access for a device including a scan chain
JP3809444B2 (ja) 境界走査試験インタフェース中の内蔵データアクセス装置及び方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee