KR20070120458A - 오티피 롬을 이용하여 칩 이용 피쳐들을 구성하는 방법 및시스템 - Google Patents

오티피 롬을 이용하여 칩 이용 피쳐들을 구성하는 방법 및시스템 Download PDF

Info

Publication number
KR20070120458A
KR20070120458A KR1020070059910A KR20070059910A KR20070120458A KR 20070120458 A KR20070120458 A KR 20070120458A KR 1020070059910 A KR1020070059910 A KR 1020070059910A KR 20070059910 A KR20070059910 A KR 20070059910A KR 20070120458 A KR20070120458 A KR 20070120458A
Authority
KR
South Korea
Prior art keywords
chip
otp
memory
features
feature
Prior art date
Application number
KR1020070059910A
Other languages
English (en)
Other versions
KR100885120B1 (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 KR20070120458A publication Critical patent/KR20070120458A/ko
Application granted granted Critical
Publication of KR100885120B1 publication Critical patent/KR100885120B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/10Bump connectors; Manufacturing methods related thereto
    • H01L2224/15Structure, shape, material or disposition of the bump connectors after the connecting process
    • H01L2224/16Structure, shape, material or disposition of the bump connectors after the connecting process of an individual bump connector
    • H01L2224/161Disposition
    • H01L2224/16151Disposition the bump connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive
    • H01L2224/16221Disposition the bump connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked
    • H01L2224/16225Disposition the bump connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked the item being non-metallic, e.g. insulating substrate with or without metallisation
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/26Layer connectors, e.g. plate connectors, solder or adhesive layers; Manufacturing methods related thereto
    • H01L2224/31Structure, shape, material or disposition of the layer connectors after the connecting process
    • H01L2224/32Structure, shape, material or disposition of the layer connectors after the connecting process of an individual layer connector
    • H01L2224/321Disposition
    • H01L2224/32151Disposition the layer connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive
    • H01L2224/32221Disposition the layer connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked
    • H01L2224/32225Disposition the layer connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked the item being non-metallic, e.g. insulating substrate with or without metallisation
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/42Wire connectors; Manufacturing methods related thereto
    • H01L2224/47Structure, shape, material or disposition of the wire connectors after the connecting process
    • H01L2224/48Structure, shape, material or disposition of the wire connectors after the connecting process of an individual wire connector
    • H01L2224/4805Shape
    • H01L2224/4809Loop shape
    • H01L2224/48091Arched
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/42Wire connectors; Manufacturing methods related thereto
    • H01L2224/47Structure, shape, material or disposition of the wire connectors after the connecting process
    • H01L2224/48Structure, shape, material or disposition of the wire connectors after the connecting process of an individual wire connector
    • H01L2224/481Disposition
    • H01L2224/48151Connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive
    • H01L2224/48221Connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked
    • H01L2224/48225Connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked the item being non-metallic, e.g. insulating substrate with or without metallisation
    • H01L2224/48227Connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked the item being non-metallic, e.g. insulating substrate with or without metallisation connecting the wire to a bond pad of the item
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/73Means for bonding being of different types provided for in two or more of groups H01L2224/10, H01L2224/18, H01L2224/26, H01L2224/34, H01L2224/42, H01L2224/50, H01L2224/63, H01L2224/71
    • H01L2224/732Location after the connecting process
    • H01L2224/73201Location after the connecting process on the same surface
    • H01L2224/73203Bump and layer connectors
    • H01L2224/73204Bump and layer connectors the bump connector being embedded into the layer connector
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/73Means for bonding being of different types provided for in two or more of groups H01L2224/10, H01L2224/18, H01L2224/26, H01L2224/34, H01L2224/42, H01L2224/50, H01L2224/63, H01L2224/71
    • H01L2224/732Location after the connecting process
    • H01L2224/73251Location after the connecting process on different surfaces
    • H01L2224/73265Layer and wire connectors
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2924/00Indexing scheme for arrangements or methods for connecting or disconnecting semiconductor or solid-state bodies as covered by H01L24/00
    • H01L2924/15Details of package parts other than the semiconductor or other solid state devices to be connected
    • H01L2924/181Encapsulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Stored Programmes (AREA)

Abstract

오티피(OTP: one-time programmable) 롬(ROM: read-only memory)을 이용하여 칩 이용 피쳐들(chip usage features)을 구성하는 방법 및 시스템이 개시된다. 상기 시스템의 측면들은 온-칩 모듈들에 의해 제공되는 온-칩 기능들에 대한 접근의 제어를 가능하도록 구성된 OTP 메모리를 가지는 칩을 포함할 수 있다. 상기 칩은 상기 구성된 OTP 메모리의 내용에 근거하여, 외부 활성화(activation) 또는 비활성화(deactivation) 요청의 수신에 상응하여 상기 온-칩 모듈들에 의해 제공되는 상기 온-칩 기능들의 활성화 또는 비활성화를 가능하게 할 수 있다.
칩, 피쳐, 특징, 특성, 오티피, 롬, 인에이블, 디스에이블

Description

오티피 롬을 이용하여 칩 이용 피쳐들을 구성하는 방법 및 시스템{METHOD AND SYSTEM FOR USING ONE-TIME PROGRAMMABLE(OTP) READ-ONLY MEMORY(ROM) TO CONFIGURE CHIP USAGE FEATURES}
도 1은 본 발명의 일실시예와 관련하여 활용될 수 있는 예시적인 집적 회로 와이어 본드 기술을 보여주는 다이어그램.
도 2는 본 발명의 일실시예와 관련하여 활용될 수 있는 와이어 본딩된 칩 다이에서 칩 이용 피쳐들(chip usage features)을 구성하기 위한 예시적인 시스템의 블록 다이어그램.
도 3은 본 발명의 일실시예와 관련하여 활용될 수 있는 예시적인 집적 회로 플립 칩 기술을 보여주는 다이어그램.
도 4a는 본 발명의 일실시예에 따라 칩 이용 피쳐들을 구성하기 위한 내부 오티피 롬의 예시적인 이용을 보여주는 블록 다이어그램.
도 4b는 본 발명의 일실시예에 따라 칩 이용 피쳐들을 구성하기 위한 내부 레이저 퓨즈들의 예시적인 이용을 보여주는 블록 다이어그램.
도 5는 본 발명의 일실시예에 따라 칩 이용 피쳐들을 구성하기 위한 비트들의 예시적인 생성을 보여주는 다이어그램.
도 6은 본 발명의 일실시예에 따라 칩 이용 피쳐들을 구성하기 위한 구성 비트들의 예시적인 인에이블링(enabling)을 보여주는 다이어그램.
도 7은 본 발명의 일실시예에 따라 칩 이용 피쳐들을 디스에이블링(disabling)하기 위해 오티피 롬을 활용하기 위한 예시적인 단계들을 보여주는 다이어그램.
도 8은 본 발명의 일실시예에 따라 칩 이용 피쳐들을 인에이블링하기 위해 오티피 롬을 활용하기 위한 예시적인 단계들을 보여주는 다이어그램.
도 9는 본 발명의 일실시예에 따라 칩 이용 피쳐들을 디스에이블링하기 위해 레이저 퓨즈들을 활용하기 위한 예시적인 단계들을 보여주는 다이어그램.
도 10은 본 발명의 일실시예에 따라 칩 이용 피쳐들을 인에이블링하기 위해 레이저 퓨즈들을 활용하기 위한 예시적인 단계들을 보여주는 다이어그램.
본 발명의 몇몇 실시예들은 집적 회로들(integrated circuits)에 관한 것이다. 좀더 상세하게는 본 발명의 몇몇 실시예들은 오티피(OTP: one-time programmable) 롬(ROM: read-only memory)을 이용하여 칩 이용 피쳐들(chip usage features)을 구성하는 방법 및 시스템에 관한 것이다.
점점 더 보안을 인식하는 세상에서, 원치않는 발견 또는 손상으로부터 정보 또는 시스템에 대한 접근을 보호하는 것은 소비자 및 사업자들 모두에게 주요한 사안이다. 많은 소비자 또는 사업자 시스템들은 그 시스템내에서 제공되는 보안레벨이 적절한 보호를 제공하기에 충분하지 않은 경우 원치않는 접근에 취약할 수 있다. 이러한 점에서, 예를 들어 멀티미디어 시스템들과 같은 소비자 시스템들은 원치않는 접근으로부터 필요한 보호를 제공하기 위하여 사용자 권한(right) 또는 특권(privileges)을 정의하고 관리하기 위한 보안 관리 메카니즘을 가능하게 하는 집적 아키텍쳐(integrated architecture)들을 이용할 필요가 있다.
많은 다른 사용자들에 의해 접근될 수 있는 멀티미디어 시스템의 예는 셋톱박스(set-top box)일 수 있는데, 셋톱박스에서 제조업자들, 벤더들, 오퍼레이터들(operators), 홈 사용자들은 그 시스템의 적어도 일부 제한된 기능성들에 접근하는 것에 흥미가 있을 수 있다. 일부 예에서, 예를 들어 보안 프로세서와 같은 단일 디바이스가 멀티미디어 시스템에서 관리자 보안 동작에 활용될 수 있다. 보안 프로세서는 멀티미디어 시스템에서 다양한 피쳐들(features)에 대한 다른 벤더들 및/또는 사용자들의 권한(rights) 및 특권(privileges)을 결정할 때, 멀티미디어 시스템의 다른 구성요소와 독립적으로 동작할 수 있다. 예를 들어, 벤더들은 제조업자들에 의해 접근가능한 일부의 기능들에 대한 접근을 제한할 수 있다. 홈 사용자들은 단지 벤더들의 접근 권한의 일부(subset)에 접근가능하다. 일부 예들에서, 보안 동작들은 하나의 위치(single location)에서 시스템에 의해 지원되는 각 보안 구성요소들을 위한 보안 조건들을 명시하는 것에 의해 관리될 수 있다.
그러나, 그러한 직접적인 구현에는 몇몇의 제한이 있을 수 있다. 전형적인 보안 시스템에서, 사용자 모드들 및 보안 구성요소들의 수는 충분히 클 수 있어서 보안 관리 및/또는 제어 정보의 크기는 큰 양의 메모리를 필요로 할 수 있다. 상당한 수의 접근 제어 엔트리들이 있을 수 있는데, 예를 들어, 접근 권한들이 부여되지 않은 경우, 및/또는 초기 설정(default setting)들과 같이 접근 권한들이 다중 사용자 모드들 및/ 또는 다른 보안 구성요소들에 대하여 동일한 경우에 상응하여 있을 수 있다. 사용자 모드들 또는 보안 구성요소들의 추가 또는 삭제는 다양한 구현 문제를 내포할 수 있는데, 이는 하드웨어 및/또는 소프트웨어의 복잡성을 증대시킨다. 소프트웨어 및/또는 하드웨어 복잡성이 증대됨에 따라, 보안 위반 또는 다른 관련사항들을 초래함 없이 보안 동작들을 관리하기 위해 노력중이다.
몇몇 집적회로들 또는 칩들은 칩을 정확한 고객 요구사항들 및/또는 규격(specifications)에 맞추기 위해 와이어 본드 패드들을 이용하여 다른 측면들(aspects) 또는 피쳐들(features)을 구성한다. 이들 와이어 본드 패드들은 기판상에 어느 하나 예를 들어, 로직 "1"(+3.3V 전력) 또는 로직 "0"(그라운드)에 연결된다. 이것이 대부분의 와이어-본딩된 칩들에 충분한 반면, 몇몇 칩들은 보안을 위한 다른 요구사항 및/또는 와이어 본드 패드들에 대한 대안의 활용을 필요로 하는 패키징을 위한 다른 요구사항을 가질 것이다.
와이어-본드 패키지들이 많은 현재의 칩들에 사용되는 반면, 플립칩과 같은 또 다른 패키지 옵션들은 와이어-본드 옵션들의 구현을 허용하지 않을 수 있다. 예를 들어, 패키지 어셈블리에서 칩 다이와 기판사이에 연결들을 형성(establish)하는 것에 의해 와이어 본드 옵션들은 칩 이용 피쳐들(chip usage features)을 구 성(configure)하기 위한 능력을 제공함에 반하여, 다이 어셈블리 동안에 칩 다이와 기판사이의 연결들이 형성되는 플립칩 패키징에는 이 옵션이 가능하지 않다.
나아가, 종래의 전형적인 접근들이 가지는 한계점들과 단점들은 종래의 시스템들과 본 출원의 나머지 부분들에서 도면들을 참조하여 전개될 본 발명의 몇몇 측면들의 비교를 통해 당해 기술분야의 숙련된 자에게 명백해질 것이다.
본 발명이 이루고자 하는 기술적 과제는 오티피(OTP: one-time programmable) 롬(ROM: read-only memory)을 이용하여 칩 이용 피쳐들을 구성하는 방법 및 시스템을 제공하는데 있다.
본 발명에 따른 오티피 롬을 사용하여 칩 이용 피쳐들을 구성하는 방법 및 시스템은 실질적으로 적어도 하나의 도면들과 연관하여 보여지거나 설명되는 것처럼 청구범위에서 좀더 완전하게 전개될 것이다.
본 발명의 일측면에 의하면, 온-칩 모듈들(on-chip modules)에 의해 제공되는 온-칩 기능들(on-chip functions)에 대한 접근을 안전하게 제어하기 위해 칩상에 OTP(one-time programmable) 메모리를 구성하는 단계와, 외부의 활성화 또는 비활성화 요청(request)을 수신하는 것에 대응하여, 상기 OTP 메모리의 상기 구성 단계에 의거하여 상기 온-칩 모듈들에 의해 제공된 상기 온-칩 기능들의 적어도 한 부분을 활성화 또는 비활성화하는 단계를 포함하는 집적회로 구성 방법이 제공된다.
바람직하게는(advantageously), 상기 OTP 메모리는 PROM(programmable read-only memory)이다.
바람직하게는, 상기 OTP 메모리는 적어도 하나의 레이저 퓨즈(laser fuse)를 포함한다.
바람직하게는, 상기 집적회로 구성 방법은 상기 외부의 활성화 또는 비활성화 요청에 더하여 외부적으로 입력된 보안 워드(security word)를 수신하는 단계를 포함한다.
바람직하게는, 상기 온-칩 기능들은 상기 외부적으로 입력된 보안 워드, 상기 외부 활성화 또는 비활성화 요청, 상기 구성된 OTP 메모리에 근거하여 선택적으로 활성화되거나 비활성화된다.
바람직하게는, 상기 집적회로 구성 방법은 상기 구성된 OTP 메모리에 근거하여 상기 집적회로의 상기 적어도 하나의 전기적 특성(electrical characteristic)을 위한 값을 조절하는 단계를 포함한다.
바람직하게는, 상기 적어도 하나의 전기적 특성은 저항값, 커패시턴스 값, 인덕턴스 값, 트랜스컨덕턴스 값 중 적어도 하나를 포함한다.
본 발명의 일측면에 의하면, 기계 가독 스토리지(machine-readable storage)로서, 집적회로를 구성하기 위한 적어도 하나의 코드 섹션(code section)을 가지고 있는 컴퓨터 프로그램을 저장하며, 상기 적어도 하나의 코드 섹션은 기계에 의해 실행가능한 것으로, 상기 기계로 하여금, 온-칩 모듈들(on-chip modules)에 의해 제공되는 온-칩 기능들(on-chip functions)에 대한 접근을 안전하게 제어하기 위해 칩상에 OTP(one-time programmable) 메모리를 구성하는 단계와, 외부의 활성화 또는 비활성화 요청을 수신하는 것에 대응하여 상기 OTP 메모리의 상기 구성 단계에 의거하여 상기 온-칩 모듈들에 의해 제공된 상기 온-칩 기능들의 적어도 한 부분을 활성화 또는 비활성화하는 단계를 포함하는 단계들을 실행하도록 하는 기계 가독 스토리지가 제공된다.
바람직하게는, 상기 OTP 메모리는 PROM(programmable read-only memory)이다.
바람직하게는, 상기 OTP 메모리는 적어도 하나의 레이저 퓨즈(laser fuse)를 포함한다.
바람직하게는, 상기 적어도 하나의 코드 섹션은 상기 외부의 활성화 또는 비활성화 요청에 더하여 외부적으로 입력된 보안 워드(security word)를 수신하기 위한 코드를 포함한다.
바람직하게는, 상기 온-칩 기능들은 상기 외부 활성화 또는 비활성화 요청, 상기 구성된 OTP 메모리에 근거하여 선택적으로 활성화되거나 비활성화된다.
바람직하게는, 상기 적어도 하나의 코드 섹션은 상기 구성된 OTP 메모리에 근거하여 상기 집적회로의 상기 적어도 하나의 전기적 특성(electrical characteristic)을 위한 값을 조절하기 위한 코드를 포함한다.
바람직하게는, 상기 적어도 하나의 전기적 특성은 저항값, 커패시턴스 값, 인덕턴스 값, 트랜스컨덕턴스 값 중 적어도 하나를 포함한다.
본 발명의 일측면에 의하면, 온-칩 모듈들(on-chip modules)에 의해 제공되는 온-칩 기능들(on-chip functions)에 대한 접근의 제어를 가능하도록 구성된 OTP(one-time programmable) 메모리를 가지는 칩을 포함하되, 상기 칩은 상기 구성된 OTP 메모리에 근거하여, 외부의 활성화 또는 비활성화 요청의 수신에 대응하여 상기 온-칩 모듈들에 의해 제공되는 상기 온-칩 기능들의 활성화 또는 비활성화를 가능하게 하는 집적 회로 구성 시스템이 제공된다.
바람직하게는, 상기 OTP 메모리는 PROM(programmable read-only memory)이다.
바람직하게는, 상기 OTP 메모리는 적어도 하나의 레이저 퓨즈(laser fuse)를 포함한다.
바람직하게는, 상기 칩은 상기 외부의 활성화 또는 비활성화 요청에 더하여 외부적으로 입력된 보안 워드(security word)의 수신을 가능하게 한다.
바람직하게는, 상기 온-칩 기능들은 상기 외부적으로 입력된 보안 워드, 상기 외부 활성화 또는 비활성화 요청, 상기 구성된 OTP 메모리에 근거하여 선택적으로 활성화되거나 비활성화된다.
바람직하게는, 상기 칩은 상기 구성된 OTP 메모리에 근거하여 적어도 하나의 전기적 특성(electrical characteristic)을 위한 값의 조절을 가능하게 한다.
바람직하게는, 상기 적어도 하나의 전기적 특성은 저항값, 커패시턴스 값, 인덕턴스 값, 트랜스컨덕턴스 값 중 적어도 하나를 포함한다.
본 발명의 다양한 장점들, 측면들 및 신규한 특징들은 본 발명의 도시된 실시예들의 상세한 사항들 뿐만 아니라 하기의 상세한 설명 및 도면으로부터 더 잘 이해될 것이다.
본 발명의 몇몇 실시예들은 오티피 롬을 이용하여 칩 이용 피쳐들을 구성하기 위한 방법 및 시스템일수 있다. 본 발명의 다양한 실시예들은 저장된 바이너리 정보에 근거하여 온-칩 집적 회로 기능들(functions) 또는 피쳐들(features)이 인에이블되거나 디스에이블될 수 있게 하는 수단들을 제공한다. 본 발명의 일실시예에서 IC 온-칩 피쳐들(on-chip features)은 온-칩 오티피 롬(on-chip OTP ROM)에 내부적으로 저장될 수 있는 하나 또는 그 이상의 비트들을 위한 값을 설정하는 것에 의해 인에이블될 수 있다. 인에이블된 칩 피쳐들은 외부 소스, 예를 들어 칩 프로그래밍 디바이스로부터 IC에 통신될 수 있는 구성 벡터에 하나 또는 그 이상의 비트들을 위한 값을 설정하는 것에 의해 그 결과로서 활성화(activation)될 수 있다. 칩은 이후에 동작하는 동안 그 활성화된 칩 피쳐들을 활용할 수 있다. 칩 피쳐가 상응하는 하나 또는 그 이상의 내부적으로 저장된 비트들에 의해 인에이블되지 않았을 때, 구성 벡터에 있는 하나 또는 그 이상의 비트들은 해당 칩 피쳐를 활성화시키지 않을 수 있다. 본 발명의 다른 실시예에서, 내부적으로 저장된 비트들은 하나 또는 그 이상의 레이저 퓨즈들을 활용하여 생성될 수 있다. 이 실시예에서는 칩 피쳐가 하나 또는 그 이상의 레이저 퓨즈들을 레이저 광에 노출시키는 것에 의해 인에이블링될 수 있다. 본 발명의 다양한 실시예에서 칩 피쳐들은 상술된 방법들과 실질적으로 유사한 방식으로 하나 또는 그 이상의 내부적으로 저장된 비트들 을 설정하는 것에 의해 디스에이블될 수 있다.
도 1은 본 발명의 일실시예와 관련하여 활용될 수 있는 예시적인 집적 회로 와이어 본드 기술을 보여주는 다이어그램이다. 도 1을 참조하면, 기판(102), 칩 다이(104), 와이어 본드(106), 패드(108), 칩패키지(110)가 나타나 있다. 도 1은 많은 IC 디바이스들에 활용된 종래의 패키징 기술을 보여준다. IC 웨이퍼 제작후에, 그 웨이퍼는 기판(102)에 본딩되는 개별 칩 다이(104)로 분할될 수 있다. 칩 다이(104)의 표면은 기판(102)에 본딩된 후 칩 다이(104)위의 노드들 및/또는 디바이스들에 전기적으로 결합되는 패드들로 하여금 와이어 본드들을 통해 칩 패키지안의 핀들에 전기적으로 결합되도록 보여질 수 있다. 예시적인 칩 패키지들(110)은 플라스틱 재질들 또는 세라믹 재질들로 만들어질 수 있다. 예를 들어, 예시적인 칩 패키지들(110)내의 핀들은 듀얼 인라인핀(dual in-line pin:DIP), J-리드(lead), 또는 핀 그리드 어레이(pin grid array:PGA) 구조로 배열될 수 있다.
본 발명의 다양한 실시예들은 IC 제조업자가 고객들에게 가능하지 않게 의도한 피쳐들을 고객들에 의해 인에이블하기 위해 공격당하거나(deafeated) 강타당하지(hacked) 않을 수 있는 칩 피쳐들을 인에이블링하고/거나 디스에이블하기 위한 안전한 방법을 가지는 IC 제품들을 제공할 수 있다. 또한 본 발명의 다양한 실시예들은 칩 다이(chip die)를 칩 패키지에 조립하기 전에 칩 기능성(chip functionality)을 테스트할 수 있는 수단을 제공할 수 있다. 따라서, 칩 다이가 어떻게 칩패키지에 조립되었는지에 근거하여 맞춤제작된(customized) 주어진 다이를 위하여 복수의 테스트 과정들을 생성하는 것에 반하는 것으로서, 하나의 테스트 과 정이 주어진 칩 다이를 위하여 균일하게 활용될 수 있다. 게다가 본 발명의 다양한 실시예들은 플립 칩(flip chip) 디바이스와 같이 칩 다이 표면이 기판에 본딩된 다음 눈에 보이지 않게 되었을 때 칩 피쳐들이 인에이블되거나 디스에이블되게 할 수 있다.
도 2는 본 발명의 일실시예와 관련하여 활용될 수 있는 와이어 본딩된 칩 다이에서 칩 이용 피쳐들(chip usage features)을 구성하기 위한 예시적인 시스템의 블록 다이어그램이다. 도 2를 참조하면, 호스트(202), 보안키(security key)(220), 인터페이스(204), IC 프로그래머(206), 기판(208)이 나타나 있다. 기판(208)은 칩 다이(210), 로직(logic) LO 기준(reference)(214a), 및 로직 HI 기준이 나타나 있다. 칩 다이(210)는 패드(212)를 포함할 수 있다. 기판(208)은 실질적으로 기판(102)과 유사하다. 칩 다이(210)는 실질적으로 칩 다이(104)와 유사하다. 패드(212)는 실질적으로 패드(108)와 유사하다.
로직 LO 기준(214a)은 바이너리 '0'값에 상응하는 전압, 예를 접지(ground),에 전기적으로 결합될 수 있는 칩 패지지(110)의 핀을 표현할 수 있다. 로직 HI 기준(214b)은 바이너리 '1'값에 상응하는 전압, 예를 들어 +3.3 볼트,에 전기적으로 결합되어 있을 수 있는 칩 패키지(110)의 핀을 표현할 수 있다.
호스트(220)는 IC 프로그래밍 소프트웨어를 실행시키도록 구성될 수 있는 컴퓨터일 수 있다. 보안키(220)는 예를 들어 IC 프로그래밍 소프트웨어를 활용하기 위해 사용자를 인증하는 동글(dongle) 또는 기타 적절한 하드웨어 및/ 또는 소프트웨어 디바이스를 포함할 수 있다. 또한 보안키(220)는 예를 들어 패스워드 또는 바 이오 기반 식별자를 포함할 수 있다. 호스트(220)는 그래픽 유저 인터페이스를 제공할 수 있다. 인터페이스(204)는 이더넷(Ethernet), RS-232, 또는 몇몇 다른 적절한 통신 인터페이스일 수 있다. IC 프로그래머(206)는 명령들(commands), 데이터, 타겟 IC 디바이스에 피쳐들을 프로그래밍하거나 인에이블링하거나 두가지 모두를 수행하기 위해 활용될 수 있는 구성 벡터들을 입력하고 생성하기 위한 명령들(instructions)중 어느 것이나 그 조합들을 수신할 수 있다. 또한 IC 프로그래머(206)는 보안 신호(security signal)를 생성할 수 있다. 보안 신호는 IC 프로그래머(206)를 인증하는데 타겟 IC 디바이스에 의해 활용될 수 있다.
동작에서, 패드(212)는 칩 다이(210)의 하나 또는 그 이상의 피쳐들을 인에이블하는데 활용될 수 있다. 예를 들어 와이어 본드가 패드(212)를 로직 LO(214a)에 전기적으로 결합할 때, 피쳐들은 디스에이블될 수 있다. 예를 들어 와이어 본드가 패드(212)를 로직 HI에 전기적으로 결합할 때 피쳐들은 인에이블될 수 있다.
호스트(202)는 보안키(220)에 의해 IC 프로그래밍 소프트웨어를 실행하도록 인에이블될 수 있다. 호스트(202)는 인터페이스(204)를 통하여 IC 프로그래머(206)에 통신되는 명령들(instructions), 명령들(commands), 데이터들 중 어느 것이나 그 조합을 생성할 수 있다. IC 프로그래머(206)는 칩 다이(210)에 보내질 보안 신호를 생성할 수 있다. 칩 다이(210)내의 보안 프로세서는 IC 프로그래머(206)를 인증하는데 보안 신호를 활용할 수 있는데, 그에 의해 IC 프로그래머(206)를 인에이블링하여 구성 벡터들을 칩 다이(210)에 전송한다. 칩 다이(210)에 의해 IC 프로그래머(206)로부터 수신된 구성 벡터들은 하나 또는 그 이상의 바이너리 비트들을 포 함할 수 있다. 수신된 바이너리 비트들은 해당 칩 피쳐들의 활성화를 위한 요청을 표현할 수 있다. 각 칩 피쳐 활성화 요청에 대하여, 칩 다이는 칩 피쳐가 인에이블되어 있는지 여부를 결정하기 위해 해당 패드(212)를 평가(evaluate)할 수 있다. 칩 피쳐가 인에이블되어 있고, 수신된 구성 벡터가 칩 피쳐의 활성화를 위한 요청을 포함하고 있다면, 칩 피쳐는 칩 다이(210)의 동작동안 활성화될 수 있다. 칩 피쳐가 인에이블되어 있고, 수신된 구성 벡터가 칩 피쳐의 활성화를 위한 요청을 포함하고 있지 않으면, 칩 피쳐는 비활성화된 상태로 유지되고, 이후에 활성화될 수 있다. 칩 피쳐가 인에이블되어 있지 않으면, 칩 피쳐는 수신된 구성 벡터에서 상응하는 하나 또는 그 이상의 비트들을 위한 값에 상관없이 활성화되지 않는다.
칩 피쳐 인에이블의 와이어 본드 방법과 연관된 한가지 보안 제한(security limitation)은 일단 IC 제조업자가 고객에게 IC를 선적하고 나면, 고객은 사전에 미연결된 패드(212)를 로직 LO(212a) 또는 로직 HI(214b)에 전기적으로 연결함으로써, IC 제조업자에 의해 인에이블되지 않았던 피쳐들을 이후에 인에이블시킬 수 있다. 디바이스 제조 관점(device manufacturing perspective)부터 칩 피쳐 인에이블의 와이어 본드 방법은 테스트가 실행되기 전에 칩 다이(210)가 칩 패키지(110)로 조립되어야 할 필요가 있다. 따라서, IC 제조업자는 주어진 칩 다이(210)를 위한 연결된 와이어 본드 및 연결되지 않은 와이어 본드의 각 구성을 위한 한 세트의 테스트 벡터들을 생성할 필요가 있다. 칩 피쳐 인에이블의 와이어 본드 방법은 와이어 본딩 기술들을 허용하기 위해 플립 칩 구성들에서와 같이 칩 다이(210)의 표면이 보이지 않으면 가능하지 않을 수 있다.
도 3은 본 발명의 일실시예와 관련하여 활용될 수 있는 예시적인 집적 회로 플립 칩 기술을 보여주는 다이어그램이다. 도 3을 참조하면, 기판(302), 칩 다이(304), 에폭시 언더필(epoxy underfill)(306), 솔더 본드(solder bond)(308), 칩 패키지(310)가 나타나 있다. 도 3은 몇몇의 IC 디바이스들을 위해 활용될 수 있는 플립 칩 패키징 기술을 보여주고 있다. 칩 다이(304)의 표면은 기판(308)에 본딩된 후 보이지 않을 수 있다. 플립 칩 패키징에 의해 칩 다이(304)는 기판(308)과 마주할 수 있다. 칩 다이(304)상의 노드들 및 디바이스들은 솔더 본드들(308)을 통하여 칩 패키지(310)의 핀들에 전기적으로 결합될 수 있다. 에폭시 언더필(306)은 칩 다이(304)를 인캡슐레이트(encapsulate)하는데 활용될 수 있다. 일단 봉지되면(sealed) 노드들 또는 장치들의 어느 것이나 두가지 모두는 와이어 본딩을 위해 접근할 수 없다.
본 발명의 다양한 실시예들은 칩 다이(304) 표면이 보이지 않을 때, 온-칩 오티피 롬의 저장된 바이너리 정보에 의해 칩 피쳐들이 인에이블되고 디스에이블되도록 오티피 롬을 활용하는 시스템을 포함할 수 있다. 온-칩 오티피 롬의 노드들 또는 디바이스들의 어느 것이나 두가지 모두는 솔더 본드들(308)을 통하여 칩 패키지(2310의 핀들에 전기적으로 결합될 수 있다. 따라서, PROM 프로그래머와 같은 IC 프로그래밍 디바이스는 온-칩 오티피 롬내에 바이너리 정보를 저장할 수 있게 된다. 저장된 바이너리 정보는 칩 다이(304)내의 칩 피쳐들을 인에이블하거나 디스에이블할 수 있다. 일측면에서 오티피 롬의 오티피 특성(characteristic)은 바이너리 정보를 일회적으로 롬내의 하나의 위치에 저장되도록 인에이블할 수 있다. 저장된 바이너리 값은 이후에 변동될 수 없으며, 그에 의해 IC 제조업자에 의해 인에이블되지 않은 피쳐들을 인에이블시키기 위해 오티피 롬을 해킹하려는 고객의 시도를 막을 수 있다.
도 4a는 본 발명의 일실시예에 따라 칩 이용 피쳐들을 구성하기 위한 내부 오티피 롬의 예시적인 이용을 보여주는 블록 다이어그램이다. 도 4a를 참조하면, 호스트(202), 보안키(220), 인터페이스(204), IC 프로그래머(206), 기판(408)이 나타나 있다. 기판(408)은 칩 다이(410)를 포함할 수 있다. 칩 다이(410)는 오티피 롬(412)을 포함할 수 있다. 호스트(202)는 실질적으로 도 2에 도시된 호스트와 유사하다. 보안키(220)는 실질적으로 도 2에 도시된 보안키와 유사하다. 인터페이스(204)는 실질적으로 도 2의 인터페이스(204)와 유사하다. IC 프로그래머(206)SMS 실질적으로 도 2의 IC 프로그래머(206)와 실질적으로 유사하다. 기판(408)은 실질적으로 기판(102)과 유사하다.
동작에서, 오티피 롬은 칩 다이(410)의 하나 또는 그 이상의 피쳐들을 인에이블하는데 활용될 수 있다. 예를 들어, 오티피 롬(412)내에 저장된 하나의 비트가 바이너리 값'1'인 경우, 칩 다이(410)에서의 하나 또는 그 이상의 해당 피쳐들은 인에이블될 수 있다. 예를 들어, 오티피 롬(412)내에 저장된 하나의 비트가 바이너리 값'0'인 경우, 칩 다이(410)에서의 하나 또는 그 이상의 해당 피쳐들은 디스에이블될 수 있다.
IC 프로그래머(206)는 칩 다이(410)에 보내지는 보안 신호를 생성할 수 있다. 칩 다이(410)내의 보안 프로세서는 IC 프로그래머(206)를 인증하는데 활용될 수 있는데, 그에 의해 IC 프로그래머(206)를 인에이블링하여 구성 벡터들을 칩 다이(410)에 전송한다. 칩 다이(410)에 의해 IC 프로그래머(206)로부터 수신된 구성 벡터들은 하나 또는 그 이상의 바이너리 비트들을 포함할 수 있다. 수신된 바이너리 비트들은 상응하는 칩 피쳐들의 활성화를 위한 요청을 표현할 수 있다. 각 칩 피쳐 활성화 요청에 대하여, 칩 다이(410)는 칩 피쳐가 인에이블되어 있는지 여부를 결정하기 위해 오티피 롬(412)내의 상응하는 하나 또는 그 이상의 비트들을 평가할(evaluate) 수 있다. 칩 피쳐가 인에이블되어 있고, 수신된 구성 벡터가 칩 피쳐의 활성화를 위한 요청을 포함하고 있다면, 칩 피쳐는 칩 다이(410)의 동작동안 활성화될 수 있다. 칩 피쳐가 인에이블되어 있고, 수신된 구성 벡터가 칩 피쳐의 활성화를 위한 요청을 포함하고 있지 않으면, 칩 피쳐는 비활성화된 상태로 유지되고, 이후에 활성화될 수 있다. 칩 피쳐가 인에이블되어 있지 않으면, 칩 피쳐는 수신된 구성 벡터에서 상응하는 하나 또는 그 이상의 비트들을 위한 값에 상관없이 활성화되지 않는다.
본 발명의 다양한 실시예에서, 온-칩 오티피 롬(412)에 저장된 바이너리 정보는 칩 다이(410)의 전기적인 특징들(characteristics)의 값들의 조절을 할 수 있다. 예를 들어, 저장된 바이너리 정보는 적어도 하나의 저항값을 조절할 수 있다. 저항값의 조절은 아날로그 회로의 저항 트리밍(resister trimming)을 위해 활용될 수 있다. 게다가 온-칩 오티피 롬(412)에 저장된 바이너리 정보는 적어도 하나의 커패시턴스 값을 조절할 수 있다. 예를 들어 커패시턴스 값의 조절은 신호 전파 지연(propagation delay)을 줄이도록 실행되거나, 칩 다이(410)의 전기 신호들을 전 파하는 것에서 오실레이션들(oscillations)에 응답하여 실행될 수 있다. 마찬가지로 예를 들어 온-칩 오티피 롬(412)에 저장된 바이너리 정보는 적어도 하나의 인덕턴스 값, 적어도 하나의 트랜스컨덕턴스 값(transconductance value) 중 어느 것이나 두가지 모두를 조절하는 것을 가능하게 한다. 트랜스컨덕턴스 값은 칩 다이(410)내에 있는 액티브 회로(active circuitry), 예를 들어 증폭기 디바이스들,의 가동을 수정하도록 조절될 수 있다.
도 4b는 본 발명의 일실시예에 따라 칩 이용 피쳐들을 구성하기 위한 내부 레이저 퓨즈들의 예시적인 이용을 보여주는 블록 다이어그램이다. 도 4b를 참조하면, 호스트(202), 보안키(220), 인터페이스(204), IC 프로그래머(206), 기판(408)이 나타나 있다. 기판(408)은 칩 다이(420)를 포함할 수 있다. 칩 다이(210)는 적어도 하나의 레이저 퓨즈(laser fuse)(422)를 포함할 수 있다. 호스트(202)는 실질적으로 도 2에 도시된 호스트와 유사하다. 보안키(220)는 실질적으로 도 2에 도시된 보안키와 유사하다. 인터페이스(204)는 실질적으로 도 2의 인터페이스(204)와 유사하다. IC 프로그래머(206)는 실질적으로 도 2의 IC 프로그래머(206)와 실질적으로 유사하다. 기판(408)은 실질적으로 기판(102)과 유사하다.
동작에서, 레이저 퓨즈들은 칩 다이(420)의 하나 또는 그 이상의 피쳐들을 인에이블하는데 활용될 수 있다. 레이저 퓨즈들은 탄탈륨 나이트라이드(tantalum nitride: TaN)와 같은 재질을 포함하는 레이저 퓨즈 패드(422)를 레이저광으로부터의 에너지에 노출시키는 것에 의해 바이너리 정보가 저장되게 할 수 있다. 비록 TaN 재질에 대한 초기 저항 값은 두개의 연결된 노드들 사이에 전기 전도 경로가 수립되지 않을 정도이지만, 레이저 퓨즈 패드(422)는 칩 다이(420)내의 두개 노드들을 연결할 수 있다. TaN 재질의 전기적 비전도(nonconduction)는 검출될 수 있고, 그에 따라 바이너리 값 '0'으로 저장될 수 있다. 레이저 광에 대한 노출은 TaN 재질의 저항값을 변화시킬 수 있으며, 그에 의해 두 개의 연결된 노드들간에 전기 전도 경로가 만들어진다. TaN 재질의 전기적 전도(conduction)는 검출될 수 있고, 그에 따라 바이너리 값 '1'로 저장될 수 있다. 예를 들어 레이저 퓨즈 패드(422)에 상응하는 저장된 바이너리 값 '1'이 검출되는 경우, 칩 다이(420)에서의 하나 또는 그 이상의 상응하는 피쳐들이 인에이블될 수 있다. 레이저 퓨즈 패드(422)에 상응하는 저장된 바이너리 값 '0'이 검출되는 경우, 칩 다이(420)에서의 하나 또는 그 이상의 상응하는 피쳐들이 디스에이블될 수 있다.
IC 프로그래머(206)는 칩 다이(420)에 보내질 수 있는 보안 신호를 생성할 수 있다. 칩 다이(420)내의 보안 프로세서는 IC 프로그래머(206)를 인증하는데 활용될 수 있는데, 그에 의해 IC 프로그래머(206)를 인에이블링하여 구성 벡터들을 칩 다이(420)에 전송한다. 칩 다이(420)에 의해 IC 프로그래머(206)로부터 수신된 구성 벡터들은 하나 또는 그 이상의 바이너리 비트들을 포함할 수 있다. 수신된 바이너리 비트들은 상응하는 칩 피쳐들의 활성화를 위한 요청을 표현할 수 있다. 각 칩 피쳐 활성화 요청에 대하여, 칩 다이(420)는 칩 피쳐가 인에이블되어 있는지 여부를 결정하기 위해 하나 또는 그 이상의 레이저 퓨즈 패드들(422)과 연관하여 상응하는 하나 또는 그 이상의 비트들을 계산할 수 있다. 칩 피쳐가 인에이블되어 있고, 수신된 구성 벡터가 칩 피쳐의 활성화를 위한 요청을 포함하고 있다면, 칩 피 쳐는 칩 다이(420)의 동작동안 활성화될 수 있다. 칩 피쳐가 인에이블되어 있고, 수신된 구성 벡터가 칩 피쳐의 활성화를 위한 요청을 포함하고 있지 않으면, 칩 피쳐는 비활성화된 상태로 유지되고, 이후에 활성화될 수 있다. 칩 피쳐가 인에이블되어 있지 않으면, 칩 피쳐는 수신된 구성 벡터에서 상응하는 하나 또는 그 이상의 비트들을 위한 값에 상관없이 활성화되지 않는다.
본 발명의 다양한 실시예에서, 레이저 퓨즈 패드(422)에 상응하여 저장된 바이너리 정보는 칩 다이(420)의 전기적인 특징들의 값들의 조절을 가능하게 할 수 있다. 예를 들어, 저장된 바이너리 정보는 적어도 하나의 저항값, 커패시턴스 값, 인덕턴스 값, 트랜스컨덕턴스 값 중 어느 것이나 그 조합의 조절을 가능하게 한다.
도 5는 본 발명의 일실시예에 따라 칩 이용 피쳐들을 구성하기 위해 비트들의 예시적인 생성을 보여주는 다이어그램이다. 도 5를 참조하면, 보안 프로세서(502), 구성 마스크(configuration mask)(504)가 나타나 있다. 보안 프로세서(502)는 보안 신호를 수신하고, 인증 신호(authentication signal)를 생성한다. 보안 신호는 패스워드 인증 처리의 그것과 유사한 방식으로 보안 프로세서(502)에 의해 처리된다. 인증 신호는 수신된 보안 신호가 보안 프로세서(502)에 의해 인증되었음을 표시할 수 있다.
구성 마스크(504)는 인증 신호, 오티피 벡터, 구성 벡터를 수신할 수 있다. 구성 마스크(504)는 피쳐 구성 벡터를 생성할 수 있다. 인증 신호는 하나 또는 그 이상의 구성 벡터들을 수신할 수 있음을 표시하기 위해 구성 마스크(504)에 의해 활용될 수 있다. 오티피 벡터는 칩 다이내의 저장된 바이너리 정보에 상응하는 비 트들을 포함할 수 있다. 예를 들어 저장된 바이너리 정보는 오티피 롬(412)내에 저장될 수 도 있고, 또는 하나 또는 그 이상의 레이저 퓨즈 패드(422)에 상응하여 저장된 비트들을 포함할 수 있다. 구성 벡터는 복수의 바이너리 비트들을 포함할 수 있는데, 그 각각은 상응하는 하나 또는 그 이상의 칩 피쳐들을 활성화하기 위한 요청을 표시할 수 있다. 구성 마스크는 칩 피쳐들이 인에이블되어 있는지를 결정하기 위해 오티피 벡터내의 각 비트들을 조사할 수 있다. 오티피 벡터에 근거하여 칩 피쳐가 인에이블되어 있고, 구성 벡터에 근거하여 활성화 요청이 수신되었으면, 구성 마스크(504)는 요청된 칩 피쳐의 활성화를 인에이블하는 특징 구성 벡터의 상응하는 비트들을 생성할 수 있다. 칩 피쳐가 인에이블되었지만 구성 벡터가 칩 피쳐의 활성화를 위한 요청을 포함하고 있지 않으면, 구성 마스크(504)는 요청된 칩 피쳐의 활성화를 인에이블하는 특징 구성 벡터의 상응하는 비트들을 생성하지 않을 수 있다. 그러나, 이후의 구성 벡터가 칩 피쳐를 위한 활성화 요청을 포함하면 칩 피쳐는 나중에 인에이블될 수 있다.
도 6은 본 발명의 일실시예에 따라 칩 이용 피쳐들을 구성하기 위한 구성 비트들의 예시적인 인가를 보여주는 다이어그램이다. 도 6을 참조하면, 복수의 비트 마스크들(602, 604)이 나타나 있다. 비트 마스크(602)는 구성 벡터로부터의 j번째 비트 ConfigurationBitj, 오티피 벡터로부터의 j번째 비트 OTPBitj를 수신한다. 비트 마스크(602)는 피쳐 구성벡터의 비트 FeatureBitj를 출력할 수 있다. 예시적인 비트 마스크(602)는 로직 AND 게이트 회로를 포함할 수 있다. OTPBitj의 바이너리 값은 결과적으로 바이너리 값'0'이 될 수 있고, 예시적인 비트 마스크(602)의 출력 FeatureBitj은 ConfigurationBitj를 위한 바이너리 값에 관계없이 바이너리 값'0'이 될 수 있다. 이러한 점에서 ConfigurationBitj는 디스에이블될 수 있다.
비트 마스크(604)는 구성벡터로부터 k번째 비트 ConfigurationBitk를 수신하고, 오티피 벡터로부터 k번째 비트 OTPBitk를 수신할 수 있다. 비트 마스크(604)는 특징 구성벡터의 비트 FeatureBitk를 출력할 수 있다. 예시적인 비트 마스크(604)는 논리 AND 게이트 회로를 포함할 수 있다. OTPBitk의 값은 바이너리 값은 바이너리 '1'일 수 있다. 결과적으로 예시적인 비트 마스크(604)의 출력 FeatureBitk는 비트 FeatureBitk의 바이너리 값일 수 있다. 이러한 점에서, FeatureBitk는 인에이블될 수 있다. 본 발명의 다양한 실시예에서, 예를 들어, 비트들 OTPBitj, OTPBitk와 같이 저장된 바이너리 정보는 비트들 ConfigurationBitj , ConfigurationBitk와 같이 외부적으로 입력된 바이너리 정보에 근거하여 해당 칩 피쳐들의 활성화를 인에이블하거나 디스에이블하는데 활용될 수 있다.
도 7은 본 발명의 일실시예에 따라 칩 이용 피쳐들을 디스에이블링하기 위해 오티피 롬을 활용하기 위한 예시적인 단계들을 보여주는 다이어그램이다. 도 7을 참조하면 단계 702에서 오티피 롬(412)은 선택된 칩 피쳐들을 디스에이블하도록 구성될 수 있다. 이 예시적인 실시예의 일측면에서 칩 다이(410)를 위한 초기 칩 피 쳐는 칩 다이(410)내의 모든 칩 피쳐들을 인에이블시키는 것을 포함할 수 있는데, 칩 다이(410)내에서 오티피 롬(412)은 선택된 칩 피쳐들을 디스에이블하도록 프로그램될 수 도 있다. 단계 704는 보안 신호가 보안 프로세서(502)에 의해 인증될 수 있는지 여부를 결정할 수 있다. 단계 704에서 보안 신호가 인증되지 않으면 단계 716에서 칩 다이(410)의 피쳐 구성은 인에이블되지 않을 수 있다.
단계 704에서 보안 신호가 인증되지 않으면, 단계 706에서 구성 벡터들이 IC 프로그래머(206)로부터 수신될 수 있다. 단계 708은 주어진 구성 비트가 바이너리 값 1인지 여부를 결정할 수 있다. 단계 708이 구성 비트를 위한 바이너리 값이 1이 아닌 것으로 결정하면, 단계 714에서 해당 칩 피쳐는 인에이블되지 않을 수 있다.
단계 708이 구성 비트를 위한 바이너리 비트가 1이라고 결정하면, 단계 710은 해당 오티피 비트가 바이너리 갓 1인지를 결정한다. 단계 710이 해당 오티비 비트를 위한 바이너리 값이 1이라고 결정하면, 단계 714에서 해당 칩 피쳐는 인에이블되지 않을 쉬 있다. 단계 710이 해당 오티피 비트를 위한 바이너리 값이 1이 아니라고 결정하면, 단계 712에서 해당 칩 피쳐는 인에이블되지 않을 수 있다.
도 8은 본 발명의 일실시예에 따라 칩 이용 피쳐들을 인에이블링하기 위해 오티피 롬을 활용하기 위한 예시적인 단계들을 보여주는 다이어그램이다. 도 8을 포함하면, 단계 802에서 오티피 롬(412)은 선택된 칩 피쳐들을 인에이블하도록 구성될 수 있다. 이 예시적인 실시예의 일측면에서, 칩 다이(410)를 위한 초기 칩 피쳐 구성은 칩 다이(410)내의 모든 칩 피쳐들을 디스에이블하는 것을 포함할 수 있는데, 칩 다이(410)에서 오티피 롬(412)은 선택된 칩 피쳐들을 인에이블하도록 프 로그램될 수 있다. 단계 804는 보안 신호가 보안 프로세서(502)에 의해 인증되는지 여부를 결정할 수 있다. 단계 804에서 보안 신호가 인증되지 않으면, 단계 816에서 칩 다이(410)의 피쳐 구성이 인에이블되지 않을 수 있다.
단계 804에서 보안 신호가 인증되지 않으면, 단계 806에서 구성 벡터들이 IC 프로그래머(206)로부터 수신될 수 있다. 단계 808은 주어신 구성 비트가 바이너리 값 1인지 여부를 결정할 수 있다. 단계 808이 구성 비트를 위한 바이너리 값이 1이 아니라고 결정하면, 단계 814에서 해당 칩 피쳐는 인에이블되지 않을 수 있다.
단계 808이 구성 비트를 위한 바이너리 값이 1이라고 결정하면, 단계 810은 해당 오티피 비트가 바이너리 값 1인지 여부를 결정한다. 단계 810이 해당 오티피 비트를 위한 바이너리 값이 1이 아니라고 결정하면, 단계 814에서 해당 칩 피쳐는 인에이블되지 않을 수 있다. 단계 810이 해당 오티피 비트를 위한 바이너리 값이 1이라고 결정하면, 단계 812에서 해당 칩 피쳐가 인에이블될 수 있다.
도 9는 본 발명의 일실시예에 따라 칩 이용 피쳐들을 디스에이블링하기 위해 레이저 퓨즈들을 활용하기 위한 예시적인 단계들을 보여주는 다이어그램이다. 도 9를 참조하면, 단계 902에서 하나 또는 그 이상의 레이저 퓨즈 패드들(422)은 선택된 칩 피쳐들을 디스에이블하도록 구성될 수 있다. 본 발명의 이 예시적인 실시예의 일측면에서, 칩 다이(420)를 위한 초기 칩 피쳐 구성은 칩 다이(420)내의 모든 칩 피쳐들을 인에이블링하는 것을 포함할 수 있는데, 칩 다이(420)에서 레이저 퓨즈 패드들(422)은 선택된 칩 피쳐들을 디스에이블하도록 프로그램될 수 있다. 단계 904는 보안 신호가 보안 프로세서(502)에 의해 인증되었는지 여부를 결정할 수 있 다. 단계 904에서 보안 신호가 인증되지 않으면, 단계 916에서 칩 다이(420)의 특징 구성은 인에이블되지 않을 수 있다.
단계 904에서 보안 신호가 인증되지 않으면, 단계 906에서 구성 벡터들이 IC 프로그래머(206)로부터 수신될 수 있다. 단계 908은 주어진 구성 비트가 바이너리 값 1인지를 결정할 수 있다. 단계 908이 구성 비트를 위한 바이너리 값이 1이 아니라고 결정하면, 단계 914에서 해당 칩 피쳐는 인에이블되지 않을 것이다.
단계 908이 구성 비트를 위한 바이너리 값이 1이라고 결정하면, 단계 910은 레이저 퓨즈 패드(422)에 상응하여 저장된 비트가 바이너리 값 1인지 여부를 결정한다. 단계 910이 해당 저장된 비트를 위한 바이너리 값이 1이라고 결정하면, 단계 914에서 해당 칩 피쳐는 인에이블되지 않을 수 있다. 단계 910이 해당 저장된 비트를 위한 바이너리 값이 1이 아니라고 결정하면, 단계 912에서 해당 칩 피쳐가 인에이블될 수 있다.
도 10은 본 발명의 일실시예에 따라 칩 이용 피쳐들을 인에이블링하기 위해 레이저 퓨즈들을 활용하기 위한 예시적인 단계들을 보여주는 다이어그램이다. 도 10을 참조하면, 단계 1002에서 하나 또는 그 이상의 레이저 퓨즈 패드들(422)은 선택된 칩 피쳐들을 인에이블하도록 구성될 수 있다. 본 발명의 이 예시적인 실시예의 일측면에서, 칩 다이(420)를 위한 초기 칩 피쳐 구성은 칩 다이(420)내의 모든 칩 피쳐들을 인에이블링하는 것을 포함할 수 있는데, 칩 다이(420)에서 레이저 퓨즈 패드들(422)은 선택된 칩 피쳐들을 디스에이블하도록 프로그램될 수 있다. 단계 1004는 보안 신호가 보안 프로세서(502)에 의해 인증되었는지 여부를 결정할 수 있 다. 단계 1004에서 보안 신호가 인증되지 않으면, 단계 1016에서 칩 다이(420)의 피쳐 구성은 인에이블되지 않을 수 있다.
단계 1004에서 보안 신호가 인증되면, 단계 1006에서 구성 벡터들이 IC 프로그래머(206)로부터 수신될 수 있다. 단계 1008은 주어진 구성 비트가 바이너리 값 1인지를 결정할 수 있다. 단계 1008이 구성 비트를 위한 바이너리 값이 1이 아니라고 결정하면, 단계 1014에서 해당 칩 피쳐는 인에이블되지 않을 것이다.
단계 1008이 구성 비트를 위한 바이너리 값이 1이라고 결정하면, 단계 1010은 레이저 퓨즈 패드(422)에 상응하여 저장된 비트가 바이너리 값 1인지 여부를 결정한다. 단계 1010이 해당 저장된 비트를 위한 바이너리 값이 1이 아니라고 결정하면, 단계 1014에서 해당 칩 피쳐는 인에이블되지 않을 수 있다. 단계 1010이 해당 저장된 비트를 위한 바이너리 값이 1이라고 결정하면, 단계 1012에서 해당 칩 피쳐가 인에이블될 수 있다.
오티피 롬을 이용하여 칩 이용 피쳐들을 구성하는 방법 및 시스템의 측면들은 온 칩 모듈들에 의해 제공되는 온-칩 기능들(on-chip functions)에 대한 접근의 제어가 가능하도록 구성된 칩(410)상에 오티비 메모리(412)를 포함할 수 있다. 칩(410)은 구성된 오티피 메모리(412)의 내용에 근거하여 요청된 외부 활성화 또는 비활성화의 수신에 따라 온칩 모듈들에 의해 제공되는 온-칩 기능들의 조건적인 활성화 또는 비활성화를 가능하게 한다.
오티피 메모리(412)는 PROM(programmable read-only memory)이거나 적어도 하나 이상의 레이저 퓨즈(422)일 수 있다. 칩(410)은 외부의 활성화 또는 비활성 요청 이외에도 외부적으로 입력된 보안 워드(security word)의 수신을 가능하게 할 수 있다. 온-칩 기능들은 외부적으로 입력된 보안 워드, 외부 활성화 또는 비활성화 요청, 구성된 오티피 메모리(412)에 근거하여 선택적으로 활성화되거나 비활성화될 수 있다. 칩(410)은 오티피 메모리(412)에 근거하여 적어도 하나 이상의 전기적 특징을 위한 값의 조절을 가능하게 할 수 있다. 전기적 특징들은 저항값, 커패시턴스 값, 인덕턴스 값, 트랜스컨덕턴스 값 중 어느 것이나 그 조합을 포함할 수 있다.
따라서, 본 발명은 하드웨어, 또는 소프트웨어, 또는 하드웨어 및 소프트웨어 둘 다의 조합으로 구현될 수 있다. 본 발명은 적어도 하나의 컴퓨터 시스템을 가지는 중앙 방식(centralized fashion)으로 구현될 수 있거나, 다른 구성요소들이 몇몇 서로 연결된 컴퓨터 시스템들에 흩어져 있는 분산 방식(distributed fashion)으로 구현될 수도 있다. 여기에서 기술된 방법들을 실행하기 위해 채택된 어떠한 종류의 컴퓨터 시스템이나 다른 장치도 적절하다. 하드웨어 및 소프트웨어의 전형적인 조합에는 컴퓨터 시스템에서 로딩되어 실행되었을 때, 여기에서 기술된 방법들을 실행하도록 컴퓨터 시스템을 제어하기 위한 컴퓨터 프로그램을 가지는 범용 컴퓨터 시스템이 있을 수 있다.
본 발명은 여기에서 기술된 방법들의 구현을 가능하게 하는 모든 특징들을 포함하고, 컴퓨터 시스템에 로딩되었을 때 이 방법들을 실행할 수 있는 컴퓨터 프로그램 제품에 임베디드(embeded)될 수 있다. 여기에서, 컴퓨터 프로그램은 임의의 언어, 또는 코드(code), 또는 기호(notation)에서 명령(instruction)들 집합을 표 현하는 어떤 것이라도 의미한다. 이 명령들 집합의 표현들은 직접적으로, 또는 a) 다른 언어, 코드, 또는 기호로의 변환(conversion) b) 다른 매체 형태로의 재생(reproduction)중에서 어느 하나 또는 둘 모두를 수행한 후에 시스템이 특정한 기능을 수행하기 위한 정보 처리 능력을 가지도록 의도된 것이다.
본 발명은 몇몇 실시예들을 참조하여 설명되었지만, 본 발명의 범주로부터 벗어나지 않고 다양한 변형이 이루어질 수 있으며, 균등물들이 대신될 수 있음은 당해 기술 분야에 숙련된 자들에게 이해될 것이다. 또한, 본 발명의 범주를 벗어나지 않고 특정한 상황 또는 매체를 본 발명의 기술들에 채택하기 위하여 많은 변형들이 있을 수 있다. 따라서, 본 발명은 개시된 특정 실시예들에 한정되지 않아야 하며, 첨부되는 청구항들의 범위내에 있는 모든 실시예들을 포함할 것이다.
본 발명에 의하면, 오티피(OTP: one-time programmable) 롬(ROM: read-only memory)을 이용하여 칩 이용 피쳐들(chip usage features)을 구성하는 방법 및 시스템을 제공함으로써 종래의 전형적인 접근들이 가지는 한계점들과 단점들을 해결할 수 있다.

Claims (10)

  1. 온-칩 모듈들(on-chip modules)에 의해 제공되는 온-칩 기능들(on-chip functions)에 대한 접근을 안전하게 제어하기 위해 칩상에 OTP(one-time programmable) 메모리를 구성하는 단계와,
    외부의 활성화 또는 비활성화 요청(request)을 수신하는 것에 대응하여, 상기 OTP 메모리의 상기 구성 단계에 의거하여 상기 온-칩 모듈들에 의해 제공된 상기 온-칩 기능들의 적어도 한 부분을 활성화 또는 비활성화하는 단계를 포함하는 집적회로 구성 방법.
  2. 청구항 1에 있어서, 상기 OTP 메모리는 PROM(programmable read-only memory)인 집적 회로 구성 방법.
  3. 청구항 1에 있어서, 상기 OTP 메모리는 적어도 하나의 레이저 퓨즈(laser fuse)를 포함하는 집적 회로 구성 방법.
  4. 청구항 1에 있어서, 상기 외부의 활성화 또는 비활성화 요청에 더하여 외부 적으로 입력된 보안 워드(security word)를 수신하는 단계를 포함하는 집적 회로 구성 방법.
  5. 청구항 4에 있어서, 상기 온-칩 기능들은 상기 외부적으로 입력된 보안 워드, 상기 외부 활성화 또는 비활성화 요청, 상기 구성된 OTP 메모리에 근거하여 선택적으로 활성화되거나 비활성화되는 집적 회로 구성 방법.
  6. 기계 가독 스토리지(machine-readable storage)로서, 집적회로를 구성하기 위한 적어도 하나의 코드 섹션(code section)을 가지고 있는 컴퓨터 프로그램을 저장하며, 상기 적어도 하나의 코드 섹션은 기계에 의해 실행가능한 것으로, 상기 기계로 하여금,
    온-칩 모듈들(on-chip modules)에 의해 제공되는 온-칩 기능들(on-chip functions)에 대한 접근을 안전하게 제어하기 위해 칩상에 OTP(one-time programmable) 메모리를 구성하는 단계와,
    외부의 활성화 또는 비활성화 요청을 수신하는 것에 대응하여 상기 OTP 메모리의 상기 구성 단계에 의거하여 상기 온-칩 모듈들에 의해 제공된 상기 온-칩 기능들의 적어도 한 부분을 활성화 또는 비활성화하는 단계를 포함하는 단계들을 실행하도록 하는 기계 가독 스토리지.
  7. 청구항 6에 있어서, 상기 OTP 메모리는 PROM(programmable read-only memory)인 기계 가독 스토리지.
  8. 온-칩 모듈들(on-chip modules)에 의해 제공되는 온-칩 기능들(on-chip functions)에 대한 접근의 제어를 가능하도록 구성된 OTP(one-time programmable) 메모리를 가지는 칩을 포함하되,
    상기 칩은 상기 구성된 OTP 메모리에 근거하여, 외부의 활성화 또는 비활성화 요청의 수신에 대응하여 상기 온-칩 모듈들에 의해 제공되는 상기 온-칩 기능들의 활성화 또는 비활성화를 가능하게 하는 집적 회로 구성 시스템.
  9. 청구항 8에 있어서, 상기 OTP 메모리는 PROM(programmable read-only memory)인 집적 회로 구성 시스템.
  10. 청구항 8에 있어서, 상기 OTP 메모리는 적어도 하나의 레이저 퓨즈(laser fuse)를 포함하는 집적 회로 구성 시스템.
KR1020070059910A 2006-06-19 2007-06-19 오티피 롬을 이용하여 칩 이용 피쳐들을 구성하는 방법 및시스템 KR100885120B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US81481506P 2006-06-19 2006-06-19
US60/814,815 2006-06-19
US11/535,912 US20070290715A1 (en) 2006-06-19 2006-09-27 Method And System For Using One-Time Programmable (OTP) Read-Only Memory (ROM) To Configure Chip Usage Features
US11/535,912 2006-09-27

Publications (2)

Publication Number Publication Date
KR20070120458A true KR20070120458A (ko) 2007-12-24
KR100885120B1 KR100885120B1 (ko) 2009-02-20

Family

ID=38621183

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070059910A KR100885120B1 (ko) 2006-06-19 2007-06-19 오티피 롬을 이용하여 칩 이용 피쳐들을 구성하는 방법 및시스템

Country Status (4)

Country Link
US (1) US20070290715A1 (ko)
EP (1) EP1870831A3 (ko)
KR (1) KR100885120B1 (ko)
TW (1) TW200817922A (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9652637B2 (en) 2005-05-23 2017-05-16 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system for allowing no code download in a code download scheme
US9904809B2 (en) 2006-02-27 2018-02-27 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system for multi-level security initialization and configuration
US9489318B2 (en) 2006-06-19 2016-11-08 Broadcom Corporation Method and system for accessing protected memory
EP2282263A1 (fr) * 2009-07-31 2011-02-09 Gemalto SA Procédé de configuration fonctionnelle d'un circuit intégré pour carte à puce en vue d'une utilisation optimale de ses ressources
US20130173469A1 (en) * 2012-01-03 2013-07-04 Intel Mobile Communications GmbH Chip customization techniques
WO2014056515A1 (en) * 2012-10-11 2014-04-17 Irdeto B.V. Chip verification
US10379785B2 (en) 2015-05-15 2019-08-13 Cryptography Research, Inc Virtual one-time programmable memory management
CN109101455A (zh) * 2018-08-01 2018-12-28 湖南国科微电子股份有限公司 共享存储系统与基于共享存储系统的待执行程序读写方法
KR20220091955A (ko) * 2020-12-24 2022-07-01 에스케이하이닉스 주식회사 메모리 시스템 폐기 방법 및 그 메모리 시스템
US20230418925A1 (en) * 2022-06-24 2023-12-28 Micron Technology, Inc. Deep learning access and authentication in a computing architecture

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2073495C (en) * 1992-07-08 1999-01-12 Michael Wright Option selection and control
US5530753A (en) * 1994-08-15 1996-06-25 International Business Machines Corporation Methods and apparatus for secure hardware configuration
US5771287A (en) * 1996-08-01 1998-06-23 Transcrypt International, Inc. Apparatus and method for secured control of feature set of a programmable device
US6317849B1 (en) * 1999-04-28 2001-11-13 Intel Corporation Method and apparatus for controlling available capabilities of a device
US6434077B1 (en) * 2001-03-13 2002-08-13 Mosaid Technologies, Inc. Method and apparatus for selectively disabling logic in a semiconductor device
US20020184512A1 (en) * 2001-05-31 2002-12-05 Cardoso Augusto C. Method and apparatus for supporting remote configuration to facilitate subscriber management
US7324450B2 (en) * 2003-03-31 2008-01-29 Intel Corporation Method and apparatus for programming a functionality of an integrated circuit (IC)
US8788996B2 (en) * 2003-09-15 2014-07-22 Nvidia Corporation System and method for configuring semiconductor functional circuits
US7064409B2 (en) * 2003-11-04 2006-06-20 International Business Machines Corporation Structure and programming of laser fuse
US7274283B2 (en) * 2004-04-29 2007-09-25 International Business Machines Corporation Method and apparatus for resisting hardware hacking through internal register interface
US7136303B2 (en) * 2004-08-31 2006-11-14 Broadcom Corporation System and method using a one-time programmable memory cell

Also Published As

Publication number Publication date
KR100885120B1 (ko) 2009-02-20
TW200817922A (en) 2008-04-16
EP1870831A2 (en) 2007-12-26
EP1870831A3 (en) 2008-01-16
US20070290715A1 (en) 2007-12-20

Similar Documents

Publication Publication Date Title
KR100885120B1 (ko) 오티피 롬을 이용하여 칩 이용 피쳐들을 구성하는 방법 및시스템
US20150310203A1 (en) Nonvolatile Memory Device Having Authentication, and Methods of Operation and Manufacture Thereof
KR102378157B1 (ko) 집적회로들에서의 보안 피쳐 및 키 관리
KR102407066B1 (ko) 집적 회로를 위한 상이한 엔티티들의 특권들의 관리
KR102419976B1 (ko) 자기-암호화 스토리지 디바이스들의 보안 제어
US7757295B1 (en) Methods and structure for serially controlled chip security
JP2022541662A (ja) 個別にプログラミング可能なセキュアアクセス特徴を有する領域を備えた不揮発性メモリ装置、関連する方法およびシステム
WO2015158772A1 (en) Root of trust
US9870488B1 (en) Method and apparatus for securing programming data of a programmable device
KR102500058B1 (ko) 보안 액세스 키를 갖는 반도체 디바이스 및 관련 방법 및 시스템
US7072722B1 (en) Digital protection and control device and method thereof
KR20230042455A (ko) 인-메모리 디바이스 액세스 제어를 위한 방법들 및 장치
TWI775033B (zh) 安全記憶體方案
CN101093728A (zh) 配置集成电路的方法和系统
CN113642050B (zh) 自配置加密硬盘及其配置方法、系统及系统的启动方法
US20220035956A1 (en) Password-based access control for programmable logic devices
CN112560121B (zh) 单调计数器及其根密钥处理方法
CN108073830A (zh) 一种集成有安全组件的终端芯片
CN115968540A (zh) 安全组件和操作方法
CN108604460B (zh) 使用多个一次可编程位控制对资源的访问的集成电路设备
US11748524B2 (en) Tamper resistant obfuscation circuit
US20240241994A1 (en) Detection of Short Resets of an Electronic Device
TW201502853A (zh) 可認證的非揮發性記憶體元件及其操作及製造方法
CN209000907U (zh) 一种半导体器件封装结构
KR20010053128A (ko) 전자 테스트 메모리 장치

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
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee