KR100977675B1 - 집적 회로 보안과 그 방법 - Google Patents

집적 회로 보안과 그 방법 Download PDF

Info

Publication number
KR100977675B1
KR100977675B1 KR1020047014723A KR20047014723A KR100977675B1 KR 100977675 B1 KR100977675 B1 KR 100977675B1 KR 1020047014723 A KR1020047014723 A KR 1020047014723A KR 20047014723 A KR20047014723 A KR 20047014723A KR 100977675 B1 KR100977675 B1 KR 100977675B1
Authority
KR
South Korea
Prior art keywords
circuit
security key
input
debug
security
Prior art date
Application number
KR1020047014723A
Other languages
English (en)
Other versions
KR20040093741A (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 KR20040093741A publication Critical patent/KR20040093741A/ko
Application granted granted Critical
Publication of KR100977675B1 publication Critical patent/KR100977675B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • 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

Abstract

본 발명은 집적 회로(IC)에 관한 것이며, 특히 허가되지 않은 액세스들로부터 IC(10)를 보호하는 보안에 관한 것이다. 일 실시예에서, 식별자는 IC(10)의 외부에 제공된다. 대응하는 입력 IC 보안키(52)가 이후에 IC(10)로 제공되고, 저장 IC 보안키(30)와 비교된다. 입력 IC 보안키(52)와 저장 IC 보안키(30)가 일치하지 않는 경우, 보호 기능 회로(12)에 대한 액세스가 금지된다. 본 발명은, IEEE에 의해서 정의된 JTAG 1149.1 인터페이스를 사용하는 표준 디버그 인터페이스들을 포함하는 어떠한 디버그 인터페이스도 사용할 수 있다.
Figure R1020047014723
집적 회로, 비교 회로, IC, 보안

Description

집적 회로 보안과 그 방법{Integrated circuit security and method therefor}
본 발명은 집적 회로, 특히 집적 회로의 보안에 관한 것이다.
집적 회로들이 점점 더 보안을 의식하는 용도에 사용됨에 따라 집적 회로들의 보안이 점점 더 중요하게 되고 있다. 이러한 용도의 몇몇 예들로는 스마트 카드들, 셀룰러 폰들, 인터넷 통신 장치들 등이 있다. 특히, 집적 회로의 하나 이상의 부분들로의 부정한 또는 허가되지 않은 액세스에 대해서는 보안을 제공하는 것이 종종 바람직하다. 많은 집적 회로들은 집적 회로에 정보를 입력 및/또는 집적 회로로부터 정보를 출력하는데 사용될 수 있는 단자들을 포함한다. 이러한 입력/출력 단자들은 집적 회로의 하나 이상의 부분들로의 허가되지 않은 액세스에 경로를 제공할 수 있다. 또한, 집적 회로의 몇몇 입력/출력 단자들은 디버그, 에뮬레이션, 및/또는 테스트 목적으로 사용될 수 있고, 또한 집적 회로의 하나 이상의 부분들로의 허가되지 않은 액세스에 경로를 제공할 수 있다.
집적 회로의 디버그, 에뮬레이션, 및/또는 테스트 목적에 사용되는 하나의 공통 표준은 잘 알려진 JTAG(Joint Test Action Group) IEEE(Institute of Electrical and Electronic Engineers) 1194.1 테스트 액세스 포트 및 경계 주사(boundary scan) 아키텍처이다. 표준 JTAG 인터페이스 외에, 다양한 유형의 다른 디버그, 에뮬레이션, 및/또는 테스트 인터페이스들이 집적 회로들에 사용된다.
디버그, 에뮬레이션, 또는 테스트 인터페이스들을 이용하는 시스템들에서, 내부 IC 자원들로의 허가되지 않은 액세스는 이러한 자원들을 보호하기 위하여 방지되어야 한다. 따라서, IC 장치들에 대한 디버그, 에뮬레이션, 및 테스트 능력을 지속적으로 제공하면서, 허가되지 않은 액세스에 대해서는 보안을 제공하는 방법이 필요하다.
본 발명은 예로써 설명되며, 첨부한 도면들에 의해 제한되지 않으며, 도면들에서 동일한 참조 번호는 동일한 요소를 나타낸다.
당업자들은, 도면들의 요소들이 단순 및 명료화를 위해 도시되었고, 반드시 축적대로 도시되지 않았다는 것을 이해할 것이다. 예를 들면, 도면들에서의 일부 요소들의 치수는 본 발명의 실시예들의 이해 증진을 돕기 위해 다른 요소들에 비해 과장될 수 있다.
도 1은 본 발명의 일 실시예에 따른 집적 회로(10)를 설명하는 블록도.
도 2는 본 발명의 일 실시예에 따른 도 1의 디버그 포트(20)의 일부를 설명하는 블록도.
도 3은 본 발명의 일 실시예에 따라 집적 회로에 보안을 제공하는 방법을 설명하는 흐름도.
도 4는 본 발명의 대안적인 실시예에 따라 집적 회로에 보안을 제공하는 방법을 설명하는 흐름도.
본 명세서에서 사용되는 용어 "버스"는 복수의 신호들 또는 도전체들을 나타내는데 사용되며, 이는 데이터, 주소, 제어, 또는 상태와 같은 하나 이상의 여러 가지 타입의 정보들을 전송하는데 사용된다. 용어 "단언(assert)"과 "부정(negate)"은 신호, 상태 비트, 또는 동일한 장치를 각각 논리적으로 참 또는 논리적으로 거짓 상태로 나타낼 때 사용된다. 논리적으로 참 상태가 논리 레벨 1이면, 논리적으로 거짓 상태는 논리 레벨 0이다. 그리고 논리적으로 참 상태가 논리 레벨 0이면, 논리적으로 거짓 상태는 논리 레벨 1이다. 본 명세서에서 사용되는 용어 "디버그"는 매우 포괄적인 의미를 나타내고, 에뮬레이션 및 테스트 기능들도 포함할 것이다.
도 1은 본 발명의 일 실시예에 따른 집적 회로(IC)(10)를 블록도 형태로 도시한다. 일 실시예에서, IC(10)는 디버그 포트(20) 및 보호 기능 회로(12)를 포함한다. 일 실시예에서, 보호 기능 회로(12)는 프로세서(14), 다른 회로(16), 및 입력/출력(I/O) 회로(18)를 포함하며, 이들은 통신 신호들(26)을 통해서 서로 양방향으로 그리고 디버그 포트(20)에 연결된다. 일 실시예에서, 프로세서(14)는 예를 들어, 중앙 처리 장치, 디지털 신호 프로세서, 타이머 처리 장치 등과 같은 어떠한 타입의 명령들도 실행하는 프로세서일 수 있다. 일 실시예에서, 다른 회로(16)는 IC(10)의 하나 이상의 의도된 기능들을 수행하는 회로일 수도 있지만, 의도된 기능을 수행하기 위한 명령들을 반드시 실행할 필요는 없는, 예를 들면, MPEG 인코더, 디코더, 영상 처리 장치, 또는 배선에 의해 접속된(hardwired) 데이터 처리 소자일 수도 있다. 보호 기능 회로(12)의 대안적인 실시예들은 프로세서(14)만, 또는 다른 회로(16)만, 또는 프로세서(14)와 다른 회로(16) 둘 다를 포함할 수 있다. 일 실시예에서, I/O 회로(18)는 IC(10)의 외부의 회로(도시하지 않음)와 통신하기 위하여 하나 이상의 IC 단자들(24)과 연결된다. 본 발명의 대안적인 실시예들에서, I/O 회로(18)는 데이터/주소/제어 버스 구조를 포함하는 임의의 타입의 외부 버스 구조를 포함할 수 있다. IC(10)의 또 다른 실시예들은, I/O 회로(18) 및 IC 단자들(24) 마저도 갖지 않을 수 있으며, 예를 들어 외부 버스를 갖지 않는 단일의 칩 모드에서 동작하는 IC(10)일 수 있다. 본 발명의 일 실시예에서, 디버그 포트(20)는, 디버그 포트(20)가 IC(10)의 외부에 있는 장치들(도시하지 않음)과 통신할 수 있게 하는 하나 이상의 IC 단자들(22)에 양방향으로 연결된다.
도 2는 본 발명의 일 실시예에 따른 도 1의 디버그 포트(20)의 일부를 블록도의 형태로 도시한다. 일 실시예에서, 디버그 포트(20)는, 하나 이상의 디버그 신호들을 IC(10)의 외부에 있는 장치들(도시하지 않음)로부터 수신 및/또는 IC(10)의 외부에 있는 장치들에 하나 이상의 디버그 신호들을 제공하기 위해서 신호들(58)을 통해서 IC 단자들(22)에 양방향으로 연결되는 디버그 회로(41)를 포함한다. 디버그 회로(41)는 신호들(50)을 통해서 액세스 보호 회로(40)에 양방향으로 연결되는 다른 디버그 회로(42)를 포함한다. 다른 디버그 회로(42)는 하나 이상의 신호들(48)을 식별자 저장 회로(32)에 제공하여, 언제 식별자 저장 회로(32)가 하나 이상의 도전체들(56) 및 하나 이상의 단자들(22)을 통해서 저장 식별자 값을 IC(10)의 외부에 제공하는지를 나타낸다. 대안적으로, 디버그 회로(41)는 신호들(48)을 통해서 식별자 저장 회로(32)로부터 저장 식별자 값을 수신하고, 하나 이상의 도전체들(58) 및 하나 이상의 단자들(22)을 통해서 저장 식별자 값을 IC(10)의 외부에 제공할 수 있다. 액세스 보호 회로(40)는 디버그 목적들에 사용될 수 있는 정보를 전송하기 위해서 도전체들(60)을 통해서 보호 기능 회로(12)에 양방향으로 연결된다.
본 발명의 일 실시예에서, 식별자 저장 회로(32)에 저장된 식별자 값은 제조되는 각 집적 회로(10)에 고유한 것이다. 하지만, 대안적인 실시예는 식별자 값들과 IC들 사이의 임의의 원하는 매핑을 사용할 수 있다. 예컨대 1:1 매핑과 같은 고유 매핑은 일부 실시예들에서는 바람직하지 않을 수도 있다. 식별자 값은, 퓨즈(fuse)와 같은 1회 프로그램 가능한 비휘발성 저장 회로들(one time programmable non-volatile storage circuit)에 저장되거나, 마스크 프로그램되거나, 또는 디버그 포트(20)의 외부 논리에 의해서 제공될 수 있다. 식별자 값은 다양한 목적들을 위하여 IC를 추적하는데 사용될 수 있을 뿐만 아니라, 식별자 값들을 IC(10)의 외부에 제공할 수 있다. IC(10)의 제조업자는 식별자 값들 및 대응하는 IC 보안키 값들의 기밀 리스트를 IC(10)의 외부에서 유지할 수 있다. 한편, 각 IC(10)는 또한 식별자(식별자 저장 회로(32)에)와 저장 IC 보안키(IC 보안키 저장 회로(30)에) 둘 다를 저장한다.
IC(10)의 외부의 허가된 디버그 장치(도시되지 않음)가 단자들(22)을 통해서 IC(10)로부터 식별자 값을 수신하면, 허가된 디버그 장치는 적합한 입력 IC 보안키 값을 결정하기 위해서 식별자 값들 및 대응하는 IC 보안키 값들의 기밀 리스트를 체크하여 IC 단자들(22)과 하나 이상의 도전체(52)을 통해서 IC(10)에 입력한다. 식별자의 길이는, 개개의 IC들에 대해 원하는 매핑을 만들기에 충분한 수의 비트가 있는 한, 임의의 적합한 길이로 선택될 수 있음에 유의하라. 유사하게, IC 보안키의 길이는, 보호 기능 회로(12)로 허가되지 않은 액세스를 허용하는 시행착오를 막기 위해 충분한 수의 비트들이 있는 한, 임의의 적합한 길이가 될 수 있다. 일 실시예에서, 식별자의 길이는 16비트이고 IC 보안키의 길이는 48비트이다. 본 발명의 대안적인 실시예들은 식별자 값들의 제공을 필요로 하지 않고, 따라서 식별자 저장 회로(32)를 포함하지 않을 수 있다.
일 실시예에서, 디버그 포트(20)는 하나 이상의 신호들(54)을 통해서 저장 IC 보안키를 비교 회로(38)에 제공하는 IC 보안키 저장 회로(30)를 포함한다. 일 실시예에서, 키 검증 회로(34)는 비교 회로(38)뿐만 아니라, 카운터 회로(36)를 선택적으로 포함한다. 본 발명의 대안적인 실시예들에서, 카운터(36)는 보호 인에이블 신호(46)의 부정(negation)을 막기 위하여 사용될 수 있다. 본 발명의 일 실시예에서, 카운터(36)는, 미리 선택된 이벤트 후에 미리 결정된 시간이 경과했다면, 보호 인에이블 신호(46)의 부정을 방지할 수 있다. 미리 선택된 이벤트가 임의의 원하는 이벤트일지라도, 몇몇의 가능한 이벤트들은 리셋(44)의 단언(assertion)이며, 대안적으로 IC 단자들(22)로부터의 제 1 입력 IC 보안키의 수신이다. 일부 실시예들에서, 비교가 미리 결정된 시간대에서 일치하지 않는다면, 보호 기능 회로(12)로의 액세스는 인에이블되지 않는다. 대안적인 실시예들에서, 카운터(36)는 비교 회로(38)에 의해 실행되는 불성공 비교들의 수를 세고, 리셋 신호(44)의 최종 단언 이래로 미리 결정된 수의 불성공 비교가 수행되었다면, 보호 인에이블 신호(46)의 부정을 막는다. 본 발명의 일 실시예에서, 보호 인에이블 신호(46)는 보호 기능 회로(12)로의 액세스를 막기 위하여 키 검증 회로(34)의 파워업 또는 리셋시 단언 상태로 초기화된다. 다른 실시예들에서, 보호 인에이블 신호(46)는 IC(10)의 내부 또는 외부의 다른 이벤트들에 의해서 단언될 수 있다.
본 발명의 일 실시예에서, 키 검증 회로(34)는 하나 이상의 IC 단자들(22) 및 하나 이상의 도전체들(52)을 통해 IC(10)의 외부로부터 수신된 입력 IC 보안키를 수신한다. 이후 비교 회로(38)는 단자들(22)로부터 받은 입력 IC 보안키를 회로(30)에 저장된 저장 IC 보안키와 비교한다. 비교 회로(38)는 도전체들(54)을 통해 회로(30)로부터 저장된 저장 IC 보안키를 수신한다. 본 발명의 일 실시예에서, 비교 회로(38)는, 입력 IC 보안키의 각 비트가 비교 회로(38)에 의해서 수신될 때 비트단위의 비교를 수행한다. 본 발명의 대안적인 실시예들은 입력 IC 보안키를 임시로 저장하고, 이후에 입력 IC 보안키의 모든 비트들이 수신되면, 저장 IC 보안키와의 비교를 수행할 수 있다.
입력 IC 보안키가 저장 IC 보안키와 일치하는 경우, 비교 회로(38)는 보호 인에이블 신호(46)를 부정한다. 보호 인에이블 신호(46)의 부정은, 액세스 보호 회로(40)로 하여금 다른 디버그 회로(42)를 통해 보호 기능 회로(12)로의 액세스를 허용하게 한다. 본 발명의 일부 실시예들에서, 보호 인에이블 신호(46)의 단언은 다른 디버그 회로(42)의 하나 이상의 부분들이 디스에이블되게 하지만, 디버그 회로(42)의 다른 부분들은 보호 인에이블 신호(46)의 상태와는 무관하게 인에이블 상태로 남는다.
본 발명의 일부 실시예들에서, 강제 인에이블 회로(45)는 비교 회로(38)의 기능을 무효로 하는데 사용될 수 있고, 입력 IC 보안키 및 저장 IC 보안키의 값들에 상관없이 보호 인에이블 신호(46)를 부정하도록 할 수 있다. 강제 인에이블 회로(45)의 한가지 가능한 사용은 제조자에 의한 IC(10)의 디버깅 및 테스팅 동안 디버그 회로(41)가 인에이블되도록 하는 것이다. 일단 IC(10)상의 회로 설계가 확인되었다면, 키 검증 회로(34)가 다시 바이패스하지 않도록 강제 인에이블 회로(45)가 영구히 디스에이블될 수 있다. 이것을 구현하는 한가지 방법은 퓨즈들과 같은 하나 이상의 1회 프로그램 가능한 비휘발성 저장 회로들을 사용하는 것이다. 예를 들면, 일 실시예에서, 강제 인에이블 회로(45)내의 하나 이상의 퓨즈들을 용단하는 것(browing)은 강제 인에이블 회로(45)가 키 확인 회로(34)를 더 이상 무효로 하지 못하게 할 수 있다.
본 발명의 일부 실시예들에서, 리셋 신호(44)는 키 확인 회로(34) 및 IC(10)의 다른 부분들에 제공된다. 이후 리셋 신호(44)는 IC(10)의 전체 또는 일부를 리셋하기 위하여 IC(10)의 내부나 외부의 회로 또는 다른 회로(16)(도 1 참조)에서 리셋 단언 회로에 의해서 단언되어야만 한다. 일부 실시예들에서, 카운터(36)가 미리 결정된 시간이 경과되었거나 미리 결정된 수의 시도들이 이루어진 것을 결정한 후에, 비교 회로(38)는 디스에이블되고 더 이상의 비교들은 허용되지 않는다. 리셋 신호(44)는 키 확인 회로에 의해서 카운터(36)를 리셋 및/또는 비교 회로(38)를 인에이블하는데 임의로 사용되어 비교들의 수행을 개시 또는 재개시킬 수 있다.
다른 디버그 회로(42)는 하나 이상의 표준 디버그, 에뮬레이션, 또는 예를 들면, JTAG 인터페이스와 프로토콜과 같은 인터페이스들과 프로토콜들을 구현하는 회로들을 포함할 수 있다. 일 실시예에서, IC 단자들(22)은 JTAG TDO(테스트 데이터 출력) 및 TDI(테스트 데이터 입력) 신호들을 포함할 수 있다. 본 발명의 일부 실시예들에 대하여, 보호 인에이블 신호(46)는 다른 디버그 회로(42)에 의해서 수행되는 선택된 JTAG 기능들에 영향을 미치지 않는다. 이것은, 보호 인에이블 회로(46)가 단언되어 보호 기능 회로(12)로의 액세스가 디버그 회로(41)에 의해서 차단되는 경우에도, 다른 디버그 회로(42)가 JTAG에 준거하는 방식을 수행하는 것을 허용한다.
본 발명의 일부 실시예들에서, IC 단자들(22) 중 하나는 신호들(52)을 통해서 입력 IC 보안키를 비교 회로(38)에 제공하고 또한 디버그 회로(41)를 통해서 보호 기능 회로(12)와 통신하기 위해서 디버그 IC 단자로도 기능하는 디버그 IC 단자로서 사용될 수 있다는 것에 유의하라. 본 발명의 일부 실시예들에서, 신호(52) 및 하나 이상의 신호들(58 및 60)은 JTAG TDI 신호일 수 있다.
유사하게, 본 발명의 일부 실시예들에서, IC 단자들(22) 중 하나는 신호들(56)을 통해서 회로(32)로부터 IC(10)의 외부의 회로(도시하지 않음)로 식별자 값을 제공하는 디버그 IC 단자로서 사용된다. IC 단자들(22) 중 이와 동일한 하나는 액세스 보호 회로(40)를 통해서 보호 기능 회로(12)로부터 IC(10)의 외부의 다른 회로(도시하지 않음)로 통신하기 위해서 디버그 IC 단자로서 기능한다. 일 실시예에서, 신호(56) 및 하나 이상의 신호들(58 및 60)은 JTAG TDO 신호일 수 있다.
도 3은 본 발명의 일 실시예에 따라 집적 회로에 보안을 제공하는 방법을 흐름도의 형태로 설명한다. 일 실시예에서, 도 3의 흐름은 도 1의 IC(10)에 보안을 제공하기 위해 사용될 수 있다. 도 3의 흐름은, 타원(100)에서 시작하여, 식별자가 IC의 외부에 제공되는 단계(102)로 진행한다. 단계(102)는 원 A(104)를 통해서 단계(106)로 진행한다. 단계(106)는 IC의 외부로부터 입력 IC 보안키를 받는다. 단계(106)에서, 흐름은 입력 IC 보안키가 저장 IC 보안키와 비교되는 단계(108)로 진행한다. 단계(108)에서, 흐름은 입력 IC 보안키와 저장 IC 보안키 사이에 일치가 발생하는지 여부를 결정하는 결정 다이아몬드(110)로 진행한다.
일치가 발생하면, 흐름은 보호 기능 회로(12)로의 액세스가 인에이블되는 선택 단계(112)로 진행한다. 단계(112)로부터, 흐름은 다른 디버그 회로(42)의 적어도 일부로의 액세스가 인에이블되는 선택 단계(114)로 진행한다. 본 발명의 대안적인 실시예들은 선택 단계(114)를 건너뛸 수 있고, 다른 디버그 회로(42)의 임의의 회로에 영향을 미치는 일치 결과를 사용하지 않을 수 있음을 유의하라. 단계(114)로부터, 흐름은 흐름이 끝나는 타원(124)으로 진행한다.
결정 다이아몬드(110)에서 일치가 발생하지 않는 경우, 흐름은 보호 기능 회로(12)로의 액세스가 거절되는 단계(116)로 계속된다. 단계(116)로부터, 흐름은 다른 디버그 회로(42)의 적어도 일부로의 액세스가 거절되는 선택 단계(118)로 진행한다. 본 발명의 대안적인 실시예들은 선택 단계(118)를 건너뛸 수 있고, 다른 디버그 회로(42)의 임의의 회로에 영향을 미치는 일치 결과를 사용하지 않을 수 있음에 유의하라. 대안적으로, 다른 디버그 회로(42)의 하나 이상의 부분들이 지속적으로 인에이블하게 유지되어, 보호 인에이블 회로(46)에 영향을 받지 않을 수도 있다. 단계(118)에서, 흐름은 다른 입력 IC 보안키를 받아서 평가하도록 허용되는지를 체크하는 결정 다이아몬드(120)로 진행한다. 다른 입력 IC 보안키를 받아서 평가하는 것이 허용되지 않는 경우, 흐름은 흐름이 끝나는 타원(124)으로 진행한다. 그러나, 다른 입력 IC 보안키를 받아서 평가하는 것이 허용되는 경우, 흐름은 임의 지연이 선택적으로 삽입될 수 있는 단계(122)로 진행한다. 임의 지연을 제공하는 것은 본 발명에 의해 제공되는 보안 메카니즘들을 방해하기 위한 시도들의 수를 제한하면서, 부정확한 입력을 정정하기 위한 합리적인 기회들을 허용한다는 점에서 유익하다. 임의 지연의 길이는 임의의 적합한 방법으로 결정될 수 있다. 일부 실시예들은 임의 지연 단계(122)를 생략할 수 있다. 단계(122)에서, 흐름은 다른 입력 보안키가 수신될 수 있도록 원 A(104)로 진행한다. 대안적인 실시예들은 결정 다이아몬드(120)를 변경함으로써 입력 IC 보안키의 입력 시도 회수 제한을 제공할 수 있다. 결정 다이아몬드(120)는 입력 시도 회수를 계수하여 미리 결정된 임계값과 시도 회수를 비교하고, 시도 회수가 임계값과 같거나 초과하면, 원 A(104)로의 복귀를 거절하는 것에 기초할 수 있다. 다른 실시예들에서, 결정 다이아몬드(120)는 임의의 다른 값, 알고리즘, 또는 IC(10)의 내부 또는 외부의 상태에 기초할 수 있다.
도 4는 본 발명의 대안적인 실시예에 따라 집적 회로에 보안을 제공하는 방법을 흐름도의 형태로 설명한다. 일 실시예에서, 도 4의 흐름은 도 1의 IC(10)의 보안을 제공하는데 사용될 수 있으며, IC(10)는 JTAG 테스트 액세스 포트를 사용하여 입력 IC 보안키의 수신을 제공한다. 도 4에서 실행하는 단계들이 도 3에서 대응하는 단계와 동일한 기능을 실행할 때, 도 4는 도 3과 동일한 참조 번호들을 사용한다. 도 3의 흐름과 비교하면, 도 4의 흐름은 JTAG 테스트 액세스 포트 및 경계 주사 아키텍처를 이용하는 본 발명의 일 실시예에 관한 상세를 제공한다.
도 4의 흐름은 타원(100)에서 시작하여, JTAG 상태 머신이 SHIFT_IR 상태에 놓이고 식별자(PART_ID)가 이 상태로 남아있는 다음 클록 사이클 동안 TDO 신호로 출력되는 단계(102)로 진행한다. 일 실시예에서, TDO 신호는 SHIFT_IR 상태 동안 일련의 이진 01과 연결된 식별자(PART_ID)를 제공한다. TDO 신호는 IC의 외부에 제공된다. 단계(102)는 원 A(104)을 통해서 단계(201)로 진행한다. 단계(201)에서, JTAG 상태 머신이 SHIFT_IR 상태에 남아있거나 재위치 하는 동안, ENABLE_DEBUG 명령과 같은 사용자 정의 명령의 이진 표시가 TDI 신호상에 입력된다. 단계(201)에서, 흐름은 JTAG 상태 머신이 UPDATE_IR 상태에 위치하고, JTAG IR(명령 레지스터)이 ENABLE_DEBUG 명령의 이진 표시와 함께 로드되는 단계(202)로 진행한다. 단계(202)에서, 흐름은 ENABLE_DEBUG 명령이 실행되는 단계(106 및 108)로 진행한다. 단계(106 및 108) 동안, 입력 IC 보안키를 IC의 외부로부터 받는다. 입력 IC 보안키의 비트가 수신되면, 비트단위로 저장 IC 보안키와 비교한다. 본 발명의 대안적인 실시예들은 대신에 비교가 병렬 방법으로 행해질 수 있도록 모든 비트들을 받을 때까지 입력 IC 보안키를 일시적으로 저장할 수 있다. 단계(106 및 108)에서, 모든 입력 IC 보안키와 저장 IC 보안키의 비교 후에, 흐름은 도 3의 결정 다이아몬드(110)의 흐름과 유사한 방법으로 진행한다.
전술한 명세서에서, 본 발명은 특정 실시예들을 참조하여 기술되었다. 그러나, 당업자는 이하의 청구항들에 기술된 바와 같이 본 발명의 범위를 벗어나지 않고도 다양한 변경들과 변화들을 행할 수 있음을 이해할 것이다. 따라서, 명세서와 도면들은 제한적인 의미라기보다는 오히려 예시적인 의미로 생각되며, 이러한 모든 변경들은 본 발명의 범위 내에 포함되도록 의도된다. 예를 들면, 본 발명이 IC(10)의 외부의 자원들로부터 IC로의 허가되지 않은 액세스에 대한 보안의 관점에서 기술되었다 하더라도, 본 발명의 대안적인 실시예들은 IC(10)의 회로의 하나 이상의 부분들을 동일한 IC(10)의 회로의 다른 허가되지 않은 부분들에 의한 액세스로부터 보호할 수 있다.
이익들, 다른 이점들, 및 문제에 대한 해결책들이 특정 실시예들과 관련하여 상기에 기술되었다. 그러나, 이익들, 다른 이점들, 문제에 대한 해결책들, 및 임의의 이익, 이점 또는 해결책이 나타나거나 또는 좀더 명백해질 수 있게 하는 임의의 요소(들)는 임의의 또는 모든 청구항들의 중요한, 필요한, 또는 필수의 특징이거나 요소로서 해석되어서는 안 된다. 본 명세서에서 사용된 바와 같은, 용어 "포함한다(comprises)", "포함하는(comprising)" 또는 그들의 임의의 다른 변형들은 요소들의 리스트를 포함하는 프로세스, 방법, 제품, 또는 장치가 단지 이러한 요소들만 포함하는 것이 아니라, 명백하게 리스트되지 않았거나 이러한 프로세스, 방법, 제품, 또는 장치에 고유하지 않은 다른 요소들을 포함할 수 있도록, 비배타적인 포함을 커버하도록 의도된다.

Claims (10)

  1. 집적 회로(IC)(10)에 있어서:
    보호 기능 회로(protected functional circuitry; 12);
    저장 IC 보안키를 저장하기 위한 저장 회로(30);
    입력 보안키를 수신하도록 구성된 IC 디버그 인터페이스(52 & 58);
    상기 IC 디버그 인터페이스에 연결되고, IC 식별자를 저장하는 식별자 저장 회로(32);
    비교 회로(38)로서, 상기 저장 회로(30)에 연결되는 제 1 입력, 상기 IC 디버그 인터페이스(52)에 연결되는 제 2 입력, 및 보호 인에이블 신호(protection enable signal; 46)를 제공하는 출력을 구비하며, 상기 IC 디버그 인터페이스(52 & 58)를 통해서 수신된 입력 IC 보안키와 상기 저장 IC 보안키의 비교에 응답하여 상기 보호 인에이블 신호를 제공하는, 상기 비교 회로(38); 및
    상기 보호 기능 회로(12)에 연결되고, 상기 보호 인에이블 신호를 수신하기 위한 입력을 갖는 액세스 보호 회로(40)를 포함하는, 집적 회로.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 IC 디버그 인터페이스는 다수의 IC 디버그 단자들을 포함하고, 상기 액세스 보호 회로는 상기 보호 인에이블 신호에 기초하여 상기 보호 기능 회로와 상기 다수의 IC 디버그 단자들 사이의 통신을 선택적으로 허용하는, 집적 회로.
  4. 삭제
  5. 제 1 항에 있어서,
    상기 IC 식별자는 상기 IC 디버그 인터페이스를 통해서 상기 IC의 외부에 제공되는, 집적 회로.
  6. 제 1 항에 있어서,
    상기 비교 회로에 연결되고, 강제 인에이블값을 저장하는 강제 인에이블 저장 회로(45)를 더 포함하고, 상기 강제 인에이블값이 제 1 상태를 갖는 경우, 액세스 보호 회로는 상기 IC 디버그 인터페이스와 보호 기능 회로 사이의 통신을 허용하고, 상기 강제 인에이블값이 제 2 상태를 갖는 경우, 액세스 보호 회로는 상기 보호 인에이블 신호에 기초하여 상기 IC 디버그 인터페이스와 상기 보호 기능 회로 사이의 통신을 선택적으로 허용하는, 집적 회로.
  7. 보호 기능 회로(12) 및 상기 보호 기능 회로에 연결되는 적어도 하나의 IC 단자(52)를 갖는 IC(10)에 보안을 제공하는 방법에 있어서:
    적어도 하나의 상기 IC 단자를 통해서 입력 IC 보안키를 수신하는 단계(106)로서, 상기 입력 IC 보안키는 디버그 장치에 의해서 상기 IC의 외부에 제공되며, 상기 디버그 장치는, 상기 입력 IC 보안키를 제공하기 전에, 한 세트의 IC 식별자들 및 한 세트의 IC 보안키들을 평가하여 상기 IC 보안키를 결정하는, 상기 수신 단계(106);
    상기 IC에서, 상기 입력 IC 보안키를 저장 IC 보안키와 비교하는 단계(108); 및
    적어도 하나의 상기 IC 단자를 통해서 상기 보호 기능 회로로의 액세스를 선택적으로 인에이블하는 단계(112 및 116)를 포함하는, 보안 제공 방법.
  8. JTAG 인터페이스 및 보호 기능 회로를 갖는 IC에 보안을 제공하는 방법에 있어서:
    제 1 JTAG 상태에서, 상기 JTAG 인터페이스를 통해서 사용자 정의 명령을 수신하는 단계(201);
    제 2 JTAG 상태에서, 상기 JTAG 입력 인터페이스를 통해서 입력 IC 보안키를 수신하고, 상기 입력 IC 보안키를 저장 IC 보안키와 비교하는 단계(106 및 108)로서, 상기 입력 IC 보안키는 디버그 장치에 의해 상기 IC의 외부에 제공되고, 상기 디버그 장치는, 상기 입력 IC 보안키를 제공하기 전에, 한 세트의 IC 식별자들 및 한 세트의 IC 보안키들을 평가하여 상기 IC 보안키를 결정하는, 상기 수신 및 비교 단계(106, 108);
    상기 JTAG 인터페이스를 통해서 상기 보호 기능 회로로의 액세스를 선택적으로 인에이블하는 단계(112 및 116)를 포함하는, 보안 제공 방법.
  9. 제 8 항에 있어서,
    상기 제 1 JTAG 상태(201)는 SHIFT_IR 상태에 대응하는, 보안 제공 방법.
  10. 보호 기능 회로 및 상기 보호 기능 회로에 연결되는 적어도 하나의 IC 단자를 갖는 IC에 보안을 제공하는 방법에 있어서:
    상기 적어도 하나의 IC 단자를 통해서 상기 보호 기능 회로에 액세스하는 단계;
    비교 회로를 인에이블하도록 강제 인에이블 지시자를 프로그래밍하는 단계로서, 상기 비교 회로는 입력 IC 보안키를 저장 IC 보안키와 비교하고, 상기 입력 IC 보안키는 디버그 장치에 의해서 상기 IC의 외부에 제공되며, 상기 디버그 장치는, 상기 입력 IC 보안키를 제공하기 전에, 한 세트의 IC 식별자들 및 한 세트의 IC 보안키들을 평가하여 상기 IC 보안키를 결정하고, 비교에 응답하여 상기 적어도 하나의 IC 단자를 통해서 상기 보호 기능 회로로의 액세스를 선택적으로 인에이블하는, 상기 프로그래밍 단계를 포함하는, 보안 제공 방법.
KR1020047014723A 2002-03-18 2003-03-14 집적 회로 보안과 그 방법 KR100977675B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/100,462 US7266848B2 (en) 2002-03-18 2002-03-18 Integrated circuit security and method therefor
US10/100,462 2002-03-18
PCT/US2003/007839 WO2003081400A2 (en) 2002-03-18 2003-03-14 Integrated circuit security and method therefor

Publications (2)

Publication Number Publication Date
KR20040093741A KR20040093741A (ko) 2004-11-08
KR100977675B1 true KR100977675B1 (ko) 2010-08-25

Family

ID=28039826

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020047014723A KR100977675B1 (ko) 2002-03-18 2003-03-14 집적 회로 보안과 그 방법

Country Status (8)

Country Link
US (1) US7266848B2 (ko)
EP (1) EP1485778A2 (ko)
JP (1) JP2006505022A (ko)
KR (1) KR100977675B1 (ko)
CN (1) CN1306355C (ko)
AU (1) AU2003225794A1 (ko)
TW (1) TWI313123B (ko)
WO (1) WO2003081400A2 (ko)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10229704A1 (de) * 2002-07-02 2004-01-29 Endress + Hauser Process Solutions Ag Verfahren zum Schutz vor unerlaubtem Zugriff auf ein Feldgerät in der Prozessautomatisierungstechnik
JP3705255B2 (ja) * 2002-08-27 2005-10-12 セイコーエプソン株式会社 半導体装置及びそれを用いたインサーキットエミュレータ
US7231552B2 (en) * 2002-10-24 2007-06-12 Intel Corporation Method and apparatus for independent control of devices under test connected in parallel
US7681046B1 (en) * 2003-09-26 2010-03-16 Andrew Morgan System with secure cryptographic capabilities using a hardware specific digital secret
US7321957B2 (en) * 2003-10-24 2008-01-22 Intel Corporation Debugging a trusted component in a system
US7694151B1 (en) 2003-11-20 2010-04-06 Johnson Richard C Architecture, system, and method for operating on encrypted and/or hidden information
TWI235599B (en) * 2004-01-16 2005-07-01 Sunplus Technology Co Ltd Device and method for transmitting hidden signal in boundary scan testing interface
TWI229741B (en) * 2004-01-16 2005-03-21 Sunplus Technology Co Ltd Device and method for accessing hidden data in boundary scan test interface
CA2536610C (en) 2004-02-05 2013-04-30 Research In Motion Limited Debugging port security interface
CA2462495A1 (en) * 2004-03-30 2005-09-30 Dspfactory Ltd. Method and system for protecting content in a programmable system
US8255700B2 (en) * 2004-06-29 2012-08-28 Qualcomm Incorporated Lockstep mechanism to ensure security in hardware at power-up
FR2875949A1 (fr) * 2004-09-28 2006-03-31 St Microelectronics Sa Verrouillage d'un circuit integre
US8379861B2 (en) * 2004-11-22 2013-02-19 Freescale Semiconductor, Inc. Integrated circuit and a method for secure testing
US20100131729A1 (en) * 2004-12-21 2010-05-27 Koninklijke Philips Electronics N.V. Integrated circuit with improved device security
US7757295B1 (en) * 2005-02-09 2010-07-13 Lsi Corporation Methods and structure for serially controlled chip security
KR100666328B1 (ko) * 2005-02-11 2007-01-09 삼성전자주식회사 온 칩 메모리를 이용한 기밀 정보 보안 장치 및 보안 방법
US8011005B2 (en) * 2005-04-20 2011-08-30 Honeywell International Inc. Hardware encryption key for use in anti-tamper system
US7900064B2 (en) * 2005-04-20 2011-03-01 Honeywell International Inc. Encrypted debug interface
US7961885B2 (en) * 2005-04-20 2011-06-14 Honeywell International Inc. Encrypted JTAG interface
US8397081B2 (en) * 2005-06-22 2013-03-12 Freescale Semiconductor, Inc. Device and method for securing software
FR2888433A1 (fr) * 2005-07-05 2007-01-12 St Microelectronics Sa Protection d'une quantite numerique contenue dans un circuit integre comportant une interface jtag
JP2007026051A (ja) * 2005-07-15 2007-02-01 Matsushita Electric Ind Co Ltd 情報処理装置および情報処理システム
JP2007094632A (ja) * 2005-09-28 2007-04-12 Fujitsu Ltd セキュリティ保護装置
US7693596B2 (en) * 2005-12-14 2010-04-06 Dell Products L.P. System and method for configuring information handling system integrated circuits
US7844997B2 (en) * 2006-01-12 2010-11-30 Honeywell International Inc. Securing standard test access port with an independent security key interface
CN101021885B (zh) * 2006-05-24 2010-05-12 杭州晟元芯片技术有限公司 一种基于jtag端口控制的保护芯片内部信息安全的方法
GB0615392D0 (en) * 2006-08-03 2006-09-13 Wivenhoe Technology Ltd Pseudo random number circuitry
US9069990B2 (en) * 2007-11-28 2015-06-30 Nvidia Corporation Secure information storage system and method
US8719585B2 (en) * 2008-02-11 2014-05-06 Nvidia Corporation Secure update of boot image without knowledge of secure key
US20090204803A1 (en) * 2008-02-11 2009-08-13 Nvidia Corporation Handling of secure storage key in always on domain
US9069706B2 (en) * 2008-02-11 2015-06-30 Nvidia Corporation Confidential information protection system and method
US9158896B2 (en) * 2008-02-11 2015-10-13 Nvidia Corporation Method and system for generating a secure key
US20090204801A1 (en) * 2008-02-11 2009-08-13 Nvidia Corporation Mechanism for secure download of code to a locked system
US9613215B2 (en) 2008-04-10 2017-04-04 Nvidia Corporation Method and system for implementing a secure chain of trust
US8689012B1 (en) * 2008-10-17 2014-04-01 Sprint Communications Company L.P. Diagnostics for secure elements in a mobile device
KR101112205B1 (ko) * 2008-12-02 2012-02-24 한국전자통신연구원 집적회로의 보안 향상을 위한 장치 및 방법
KR20100070027A (ko) * 2008-12-17 2010-06-25 삼성전자주식회사 제이태그 인증 기능을 구비하는 장치 및 제이태그 인증방법
US8332641B2 (en) 2009-01-30 2012-12-11 Freescale Semiconductor, Inc. Authenticated debug access for field returns
US8230495B2 (en) * 2009-03-27 2012-07-24 International Business Machines Corporation Method for security in electronically fused encryption keys
EP2251813A1 (en) * 2009-05-13 2010-11-17 Nagravision S.A. Method for authenticating access to a secured chip by a test device
KR101554326B1 (ko) * 2009-05-21 2015-09-18 삼성전자주식회사 저장 장치 및 그것의 동작 방법
US20120303533A1 (en) * 2011-05-26 2012-11-29 Michael Collins Pinkus System and method for securing, distributing and enforcing for-hire vehicle operating parameters
US9037852B2 (en) 2011-09-02 2015-05-19 Ivsc Ip Llc System and method for independent control of for-hire vehicles
US20130060721A1 (en) 2011-09-02 2013-03-07 Frias Transportation Infrastructure, Llc Systems and methods for pairing of for-hire vehicle meters and medallions
US9489924B2 (en) 2012-04-19 2016-11-08 Nvidia Corporation Boot display device detection and selection techniques in multi-GPU devices
EP2677327A1 (en) * 2012-06-21 2013-12-25 Gemalto SA Method for producing an electronic device with a disabled sensitive mode, and method for transforming such an electronic device to re-activate its sensitive mode
JP2014059635A (ja) * 2012-09-14 2014-04-03 Fuji Electric Co Ltd 制御装置および制御装置のデータ漏洩防止方法
US9736181B2 (en) * 2013-07-26 2017-08-15 Intel Corporation Hardening data transmissions against power side channel analysis
DE102013216692A1 (de) * 2013-08-22 2015-02-26 Siemens Ag Österreich Verfahren zur Absicherung einer integrierten Schaltung gegen unberechtigte Zugriffe
US9832027B2 (en) * 2014-10-01 2017-11-28 Maxim Integrated Products, Inc. Tamper detection systems and methods for industrial and metering devices not requiring a battery
US10395227B2 (en) 2015-01-14 2019-08-27 Tactilis Pte. Limited System and method for reconciling electronic transaction records for enhanced security
US10037528B2 (en) 2015-01-14 2018-07-31 Tactilis Sdn Bhd Biometric device utilizing finger sequence for authentication
US9607189B2 (en) 2015-01-14 2017-03-28 Tactilis Sdn Bhd Smart card system comprising a card and a carrier
KR102251812B1 (ko) 2015-01-26 2021-05-13 삼성전자주식회사 반도체 장치 및 반도체 장치의 동작 방법
KR101711926B1 (ko) * 2015-07-07 2017-03-06 (주)이더블유비엠 보안기능을 가지는 SoC 및 SoC의 보안방법
KR101954439B1 (ko) * 2016-07-13 2019-03-06 (주)이더블유비엠 이중보안기능을 가지는 SoC 및 SoC의 이중보안방법
FR3072195B1 (fr) * 2017-10-11 2019-10-18 Stmicroelectronics (Rousset) Sas Procede de gestion d'un retour de produit pour analyse et produit correspondant
US10622345B2 (en) 2018-01-24 2020-04-14 Honeywell International Inc. Wafer trust via location locked circuit layout with measurable integrity

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0855023A (ja) * 1994-07-25 1996-02-27 Motorola Inc データ処理システムおよびその方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0484348A (ja) * 1990-07-27 1992-03-17 Nec Corp Romデータ保護方式
FR2668274B1 (fr) * 1990-10-19 1992-12-31 Gemplus Card Int Circuit integre a securite d'acces amelioree.
US5978937A (en) * 1994-12-28 1999-11-02 Kabushiki Kaisha Toshiba Microprocessor and debug system
US5594227A (en) * 1995-03-28 1997-01-14 Microsoft Corporation System and method for protecting unauthorized access to data contents
US5838901A (en) * 1996-08-05 1998-11-17 Xilinx, Inc. Overridable data protection mechanism for PLDs
US5784577A (en) * 1996-08-05 1998-07-21 Xilinx Inc Automated control system for programming PLDs
JP3656869B2 (ja) * 1996-09-11 2005-06-08 株式会社リコー 画像読取装置
JP3421526B2 (ja) * 1997-02-14 2003-06-30 モトローラ株式会社 デ−タ処理装置
US6266721B1 (en) * 1997-05-13 2001-07-24 Micron Electronics, Inc. System architecture for remote access and control of environmental management
US6158032A (en) * 1998-03-27 2000-12-05 International Business Machines Corporation Data processing system, circuit arrangement and program product including multi-path scan interface and methods thereof
US6754784B1 (en) 2000-02-01 2004-06-22 Cirrus Logic, Inc. Methods and circuits for securing encached information
US6957340B1 (en) * 2000-11-28 2005-10-18 Xilinx, Inc. Encryption key for multi-key encryption in programmable logic device
US6622208B2 (en) * 2001-03-30 2003-09-16 Cirrus Logic, Inc. System and methods using a system-on-a-chip with soft cache
US20030005335A1 (en) * 2001-06-28 2003-01-02 Hidekazu Watanabe Protecting secured codes and circuits in an integrated circuit

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0855023A (ja) * 1994-07-25 1996-02-27 Motorola Inc データ処理システムおよびその方法

Also Published As

Publication number Publication date
KR20040093741A (ko) 2004-11-08
AU2003225794A1 (en) 2003-10-08
TWI313123B (en) 2009-08-01
JP2006505022A (ja) 2006-02-09
CN1639663A (zh) 2005-07-13
TW200306107A (en) 2003-11-01
US20030177373A1 (en) 2003-09-18
WO2003081400A2 (en) 2003-10-02
EP1485778A2 (en) 2004-12-15
US7266848B2 (en) 2007-09-04
CN1306355C (zh) 2007-03-21
WO2003081400A3 (en) 2003-12-18
AU2003225794A8 (en) 2003-10-08

Similar Documents

Publication Publication Date Title
KR100977675B1 (ko) 집적 회로 보안과 그 방법
KR101022639B1 (ko) 디버그 회로에 안전성을 제공하는 방법 및 장치
EP1499906B1 (en) Method and apparatus for secure scan testing
EP3543881B1 (en) Chip access method, security control module, chip and debugging device
US7757295B1 (en) Methods and structure for serially controlled chip security
US7218567B1 (en) Method and apparatus for the protection of sensitive data within an integrated circuit
US8379861B2 (en) Integrated circuit and a method for secure testing
US8051345B2 (en) Method and apparatus for securing digital information on an integrated circuit during test operating modes
EP1763715A1 (en) Method and apparatus for resisting hardware hacking through internal register interface
Pierce et al. Enhanced secure architecture for joint action test group systems
EP1066555A1 (en) Integration of security modules in an integrated circuit
US6499092B1 (en) Method and apparatus for performing access censorship in a data processing system
US7657722B1 (en) Method and apparatus for automatically securing non-volatile (NV) storage in an integrated circuit
JP4182740B2 (ja) マイクロコンピュータ
US20090307502A1 (en) Method and apparatus for securing digital information on an integrated circuit read only memory during test operating modes
US8196215B2 (en) Security circuit for power up
US7058980B1 (en) Device and method for protecting memory data against illicit access
CN106935266B (zh) 从存储器中读取配置信息的控制方法、装置和系统
US20210390180A1 (en) Devices and methods to secure a system on a chip
US20220301649A1 (en) Protection of the content of a fuse memory
CN111857301A (zh) 具有时限除错模式的装置及其时限除错方法
US20170227982A1 (en) Secure clock switch circuit

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
N231 Notification of change of applicant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130808

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140805

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee