KR20170016108A - 오티피 메모리 장치의 프로그램 방법 및 이를 포함하는 반도체 집적 회로의 테스트 방법 - Google Patents

오티피 메모리 장치의 프로그램 방법 및 이를 포함하는 반도체 집적 회로의 테스트 방법 Download PDF

Info

Publication number
KR20170016108A
KR20170016108A KR1020150109466A KR20150109466A KR20170016108A KR 20170016108 A KR20170016108 A KR 20170016108A KR 1020150109466 A KR1020150109466 A KR 1020150109466A KR 20150109466 A KR20150109466 A KR 20150109466A KR 20170016108 A KR20170016108 A KR 20170016108A
Authority
KR
South Korea
Prior art keywords
program
memory device
verification result
result signal
memory
Prior art date
Application number
KR1020150109466A
Other languages
English (en)
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 삼성전자주식회사
Priority to KR1020150109466A priority Critical patent/KR20170016108A/ko
Priority to US15/099,902 priority patent/US9754678B2/en
Publication of KR20170016108A publication Critical patent/KR20170016108A/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
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/18Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2247Verification or detection of system hardware configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/16Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM using electrically-fusible links
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/027Detection or location of defective auxiliary circuits, e.g. defective refresh counters in fuses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key

Abstract

테스터로부터 오티피(OTP: One-Time Programmable) 메모리 장치를 포함하는 반도체 집적 회로로 프로그램 명령을 전달한다. 상기 오티피 메모리 장치에서, 상기 프로그램 명령에 응답하여 상기 오티피 메모리 장치의 복수의 오티피 메모리 셀들에 대하여 프로그램 및 프로그램 검증을 수행한다. 상기 오티피 메모리 장치에서, 상기 오티피 메모리 셀들에 대하여 프로그램 검증 결과를 누적하여 누적 검증 결과 신호를 발생한다. 상기 오티피 메모리 장치로부터 상기 테스터로 상기 누적 검증 결과 신호를 전달한다. 상기 테스터에서, 상기 누적 검증 결과 신호에 기초하여 상기 오티피 메모리 장치의 재프로그램 여부를 결정한다. 프로그램 검증 결과를 누적하여 테스터에 제공함으로써 오티피 메모리 장치를 포함하는 반도체 집적 회로의 테스트 시간을 감소할 수 있다.

Description

오티피 메모리 장치의 프로그램 방법 및 이를 포함하는 반도체 집적 회로의 테스트 방법{METHOD OF PROGRAMMING ONE-TIME PROGRAMMABLE (OTP) MEMORY DEVICE AND METHOD OF TESTING SEMICONDUCTOR INTEGRATED CIRCUIT INCLUDING THE SAME}
본 발명은 반도체 집적 회로에 관한 것으로서, 더욱 상세하게는 오티피(OTP: one-time programmable) 메모리 장치의 프로그램 방법 및 오티피 메모리 장치를 포함하는 반도체 집적 회로의 테스트 방법에 관한 것이다.
데이터를 저장하는 장치 중에서 전원의 공급이 차단되어도 저장하고 있는 데이터를 유지하는 것을 비휘발성 메모리라고 한다. 예컨대, 비휘발성 메모리는 ROM(Read Only Memory), 자기 디스크, 광학 디스크 및 플래시(Flash) 메모리 등을 포함한다. 특히, 비휘발성 메모리 가운데 데이터를 한번 기록하면 변경할 수 없는 메모리의 종류를 가리켜 오티피(OTP: one-time programmable) 메모리라고 한다. 데이터가 오티피 메모리에 프로그램 되면, 데이터의 저장단위인 메모리 셀의 구조가 비가역적(irreversible)으로 변화되고, 이를 이용하여 ‘0’ 또는 ‘1’이 저장될 수 있다. 오티피 메모리 장치는 다른 메모리 장치의 리페어, 아날로그 트리밍, 보안 코드 등을 저장하는 내장형 비휘발성 저장장치로서 다양하게 사용되고 있다.
본 발명의 일 목적은, 테스트 시간을 감소할 수 있는 오티피 메모리 장치를 포함하는 반도체 집적 회로의 테스트 방법을 제공하는 것이다.
또한 본 발명의 일 목적은, 외부 장치와 연동하여 효율적으로 수행될 수 있는 오티피 메모리 장치의 프로그램 방법을 제공하는 것이다.
상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 반도체 집적 회로의 테스트 방법은, 테스터로부터 오티피(OTP: One-Time Programmable) 메모리 장치를 포함하는 반도체 집적 회로로 프로그램 명령을 전달하는 단계, 상기 오티피 메모리 장치에서, 상기 프로그램 명령에 응답하여 상기 오티피 메모리 장치의 복수의 오티피 메모리 셀들에 대하여 프로그램 및 프로그램 검증을 수행하는 단계, 상기 오티피 메모리 장치에서, 상기 오티피 메모리 셀들에 대하여 프로그램 검증 결과를 누적하여 누적 검증 결과 신호를 발생하는 단계, 상기 오티피 메모리 장치로부터 상기 테스터로 상기 누적 검증 결과 신호를 전달하는 단계 및 상기 테스터에서, 상기 누적 검증 결과 신호에 기초하여 상기 오티피 메모리 장치의 재프로그램 여부를 결정하는 단계를 포함한다.
일 실시예에 있어서, 상기 누적 검증 결과 신호는 상기 오티피 메모리 셀들의 적어도 하나에 대하여 프로그램이 실패인 경우 제1 논리 레벨을 갖고 상기 오티피 메모리 셀들의 전부에 대하여 프로그램이 성공인 경우 제2 논리 레벨을 갖는 1비트 신호일 수 있다.
일 실시예에 있어서, 상기 오티피 메모리 장치의 재프로그램 여부를 결정하는 단계는, 상기 누적 검증 결과 신호가 제1 논리 레벨을 갖는 경우, 현재 프로그램 카운트와 최대 프로그램 카운트를 비교하는 단계, 상기 현재 프로그램 카운트가 상기 최대 프로그램 카운트보다 작은 경우, 상기 테스터로부터 상기 반도체 집적 회로로 상기 프로그램 명령을 다시 전달하는 단계 및 상기 현재 프로그램 카운트가 상기 최대 프로그램 카운트와 같은 경우, 상기 오티피 메모리 장치의 프로그램이 실패인 것으로 처리하는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 오티피 메모리 장치의 재프로그램 여부를 결정하는 단계는, 상기 누적 검증 결과 신호가 제2 논리 레벨을 갖는 경우, 상기 오티피 메모리 장치의 프로그램이 성공적으로 완료된 것으로 처리하는 단계를 더 포함할 수 있다.
일 실시예에 있어서, 상기 누적 검증 결과 신호를 발생하는 단계는, 래치를 이용하여 상기 프로그램 검증 결과를 누적하는 단계를 포함할 수 있다.
일 실시예에 있어서, 현재 프로그램 어드레스를 변경하면서 순차적으로 상기 프로그램, 상기 프로그램 검증 및 상기 프로그램 검증 결과 누적을 수행할 수 있다.
일 실시예에 있어서, 상기 누적 검증 결과 신호를 발생하는 단계는, 상기 현재 프로그램 어드레스에 대한 상기 프로그램 검증 결과를 나타내는 현재 검증 결과 신호 및 상기 누적 검증 결과 신호에 상응하는 래치의 저장 값을 논리 연산하는 단계 및 상기 논리 연산의 결과에 기초하여 상기 래치의 저장 값을 갱신하는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 프로그램 및 프로그램 검증을 수행하는 단계는, 상기 현재 프로그램 어드레스의 각각에 대하여 1 비트의 프로그램 데이터에 기초하여 하나의 오티피 메모리 셀을 프로그램하는 단계, 상기 프로그램된 하나의 오티피 메모리 셀에 저장된 값을 독출하여 1비트의 독출 데이터를 출력하는 단계, 상기 1비트의 프로그램 데이터 및 상기 1비트의 독출 데이터를 비교하여 현재 검증 결과 신호를 발생하는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 프로그램 및 프로그램 검증을 수행하는 단계는, 상기 현재 프로그램 어드레스의 각각에 대하여 N비트(N은 2 이상의 자연수)의 프로그램 데이터에 기초하여 N개의 오티피 메모리 셀들을 프로그램하는 단계, 상기 프로그램된 N개의 오티피 메모리 셀들에 저장된 값들을 독출하여 N비트의 독출 데이터를 출력하는 단계, 상기 N비트의 프로그램 데이터 및 상기 N비트의 독출 데이터를 비교하는 단계 및 상기 비교 결과를 논리 연산하여 현재의 검증 결과 신호를 발생하는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 복수의 오티피 메모리 셀들은 복수의 메인 셀들 및 복수의 리던던트 셀들을 포함하고, 동일한 어드레스에 상응하는 하나의 메인 셀 및 하나의 리던던트 셀이 1비트를 나타낼 수 있다.
일 실시예에 있어서, 상기 누적 검증 결과 신호를 발생하는 단계는,
상기 메인 셀들에 대하여 프로그램 검증 결과를 누적하여 메인 누적 신호를 발생하는 단계 및 상기 리던던트 셀들에 대하여 프로그램 검증 결과를 누적하여 리던던트 누적 신호를 발생하는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 누적 검증 결과 신호를 발생하는 단계는, 상기 메인 누적 신호 및 상기 리던던트 누적 신호를 논리 연산하여 상기 누적 검증 결과 신호를 발생하는 단계를 더 포함할 수 있다.
일 실시예에 있어서, 상기 메인 누적 신호 및 상기 리던던트 누적 신호 중 적어도 하나가 프로그램 성공을 나타내는 경우 상기 누적 프로그램 검증 결과 신호는 프로그램 성공을 나타낼 수 있다.
일 실시예에 있어서, 상기 동일한 어드레스에 상응하는 하나의 메인 셀 및 하나의 리던던트 셀은 메인 워드 라인 및 리던던트 워드 라인에 각각 독립적으로 연결되고 동일한 비트 라인에 공통으로 연결될 수 있다.
일 실시예에 있어서, 상기 동일한 어드레스에 상응하는 메인 워드 라인 및 리던던트 워드 라인은 통상의 독출시 동시에 활성화되고 상기 프로그램 및 상기 프로그램 검증을 위한 독출시 각각 독립적으로 활성화될 수 있다.
상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 오티피 메모리 장치의 프로그램 방법은, 외부 장치로부터 수신된 프로그램 명령에 응답하여 오티피 메모리 장치(OTP: One-Time Programmable)의 복수의 오티피 메모리 셀들에 대하여 프로그램 및 프로그램 검증을 수행하는 단계, 상기 오티피 메모리 셀들에 대하여 프로그램 검증 결과를 누적하여 누적 검증 결과 신호를 발생하는 단계 및 상기 누적 검증 결과 신호를 상기 외부 장치로 전송하는 단계를 포함한다.
일 실시예에 있어서, 상기 누적 검증 결과 신호를 발생하는 단계는, 래치를 이용하여 상기 프로그램 검증 결과를 누적하는 단계를 포함할 수 있다.
상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 오티피 메모리 장치는, 복수의 오티피(OTP: One-Time Programmable) 메모리 셀들을 포함하는 메모리 셀 어레이, 프로그램 데이터에 기초하여 상기 오티피 메모리 셀들을 프로그램하고 상기 오티피 메모리 셀들에 저장된 값들을 독출하여 독출 데이터를 출력하는 구동부, 상기 프로그램 데이터 및 상기 독출 데이터를 비교하여 프로그램 검증을 수행하는 검증부 및 상기 오티피 메모리 셀들에 대하여 프로그램 검증 결과를 누적하여 누적 검증 결과 신호를 발생하는 누적부를 포함한다.
일 실시예에 있어서, 상기 누적부는 상기 누적 검증 결과 신호에 상응하는 값을 저장하는 래치 및 현재 프로그램 어드레스에 대한 상기 프로그램 검증 결과를 나타내는 현재 검증 결과 신호 및 상기 래치의 저장 값을 논리 연산하여 상기 래치의 저장 값을 갱신하는 논리 게이트를 포함할 수 있다.
일 실시예에 있어서, 상기 복수의 오티피 메모리 셀들은 복수의 메인 셀들 및 복수의 리던던트 셀들을 포함하고, 동일한 어드레스에 상응하는 하나의 메인 셀 및 하나의 리던던트 셀이 1비트를 나타낼 수 있다. 상기 누적부는, 상기 메인 셀들에 대하여 프로그램 검증 결과를 누적하여 메인 누적 신호를 발생하는 제1 래치 및 상기 리던던트 셀들에 대하여 프로그램 검증 결과를 누적하여 리던던트 누적 신호를 발생하는 제2 래치를 포함할 수 있다.
본 발명의 실시예들에 따른 오티피 메모리 장치의 프로그램 방법 및 오티피 메모리 장치를 포함하는 반도체 집적 회로의 테스트 방법은, 비교적 작은 사이즈의 누적부를 이용하여 프로그램 검증 결과를 누적하여 테스터와 같은 외부 장치에 제공함으로써, 오티피 메모리 장치의 프로그램을 효율적으로 수행하고 오티피 메모리 장치를 포함하는 반도체 집적 회로의 테스트 시간을 감소할 수 있다.
도 1은 본 발명의 실시예들에 따른 오티피(OTP: one-time programmable) 메모리 장치를 포함하는 반도체 집적 회로의 테스트 방법을 나타내는 순서도이다.
도 2는 본 발명의 실시예들에 따른 테스트 시스템을 나타내는 블록도이다.
도 3은 도 2의 테스트 시스템에 포함된 테스터의 테스트 방법을 나타내는 순서도이다.
도 4는 도 2의 테스트 시스템에 포함된 오티피 메모리 장치의 프로그램 방법을 나타내는 순서도이다.
도 5는 본 발명의 실시예들에 따른 오티피 메모리 장치를 나타내는 블록도이다.
도 6은 도 5의 오티피 메모리 장치에 포함된 오티피 메모리 셀의 일 예를 나타내는 회로도이다.
도 7은 도 6의 오티피 메모리 셀의 구조의 일 예를 설명하기 위한 단면도이다.
도 8은 도 5의 오티피 메모리 장치에 포함된 오티피 메모리 셀의 다른 예를 나타내는 회로도이다.
도 9는 도 5의 오티피 메모리 장치에 포함된 메모리 셀 어레이의 일 예를 나타내는 회로도이다.
도 10은 본 발명의 일 실시예에 따른 오티피 메모리 장치를 나타내는 블록도이다.
도 11은 도 10의 오티피 메모리 장치에 포함된 누적부의 일 실시예를 나타내는 회로도이다.
도 12는 본 발명의 일 실시예에 따른 오티피 메모리 장치를 나타내는 블록도이다.
도 13은 도 12의 오티피 메모리 장치를 위한 검증부 및 누적부의 일 실시예를 나타내는 도면이다.
도 14는 본 발명의 일 실시예에 따른 오티피 메모리 장치의 프로그램 방법을 나타내는 순서도이다.
도 15는 본 발명의 일 실시예에 따른 오티피 메모리 장치를 나타내는 블록도이다.
도 16은 도 15의 오티피 메모리 장치에 포함된 누적부의 일 실시예를 나타내는 회로도이다.
도 17은 본 발명의 실시예들에 따른 테스트 시간을 설명하기 위한 도면이다.
도 18은 본 발명의 실시예들에 따른 오티피 메모리를 구비하는 메모리 장치를 나타내는 블록도이다.
도 19는 본 발명의 실시예들에 따른 오티피 메모리 장치를 모바일 시스템에 응용한 예를 나타내는 블록도이다.
도 20은 본 발명의 실시예들에 따른 오티피 메모리 장치를 컴퓨팅 시스템에 응용한 예를 나타내는 블록도이다.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되지 않는다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 해서 중복된 설명은 생략한다.
도 1은 본 발명의 실시예들에 따른 오티피(OTP: one-time programmable) 메모리 장치를 포함하는 반도체 집적 회로의 테스트 방법을 나타내는 순서도이고, 도 2는 본 발명의 실시예들에 따른 테스트 시스템을 나타내는 블록도이다.
도 1 및 도 2를 참조하면, 테스트 시스템(1000)은 테스터(10) 및 반도체 집적 회로(20)를 포함한다. 반도체 집적 회로(20)는 오티피 메모리 장치(100)를 포함한다.
테스터(10)는 오티피 메모리 장치(100)를 포함하는 반도체 집적 회로(20)로 프로그램 명령(PGM)을 전달한다(S100). 오티피 메모리 장치(100)는 프로그램 명령(PGM)에 응답하여 오티피 메모리 장치(100)의 복수의 오티피 메모리 셀들에 대하여 프로그램 및 프로그램 검증을 수행한다(S200). 테스터(10)는 프로그램 명령(PGM)과 함께 오티피 메모리 장치(100)에 기입될 프로그램 데이터, 상기 프로그램 데이터가 기입될 프로그램 어드레스 등과 같은 프로그램 정보를 반도체 집적 회로(20)로 제공할 수 있다. 일 실시예에서, 프로그램 명령(PGM) 및 프로그램 정보는 오티피 메모리 장치(100)에 직접 전달될 수 있다. 다른 실시예에서, 프로그램 명령(PGM) 및 프로그램 정보는 반도체 집적 회로(20)의 전반적인 동작을 제어하는 씨피유(CPU: central processing unit)과 같은 프로세서로 전달되고 상기 프로세서는 오티피 메모리 장치(100)를 프로그램하기 위한 내부 신호들을 발생할 수 있다.
오티피 메모리 장치(100)는 상기 오티피 메모리 셀들에 대하여 프로그램 검증 결과를 누적하여 누적 검증 결과 신호(APF)를 발생하고(S300), 오티피 메모리 장치(100)는 테스터(10)로 누적 검증 결과 신호(APF)를 전달한다(S400). 일 실시예에서, 후술하는 바와 같이 오티피 메모리 장치(100)는 래치를 이용하여 프로그램 검증 결과를 누적하고 상기 래치의 저장 값에 상응하는 누적 검증 결과 신호(APF)를 발생할 수 있다. 예를 들어, 누적 검증 결과 신호(APF)는 상기 오티피 메모리 셀들의 적어도 하나에 대하여 프로그램이 실패인 경우 제1 논리 레벨(예를 들어, 논리 하이 레벨)을 갖고 상기 오티피 메모리 셀들의 전부에 대하여 프로그램이 성공인 경우 제2 논리 레벨(예를 들어, 논리 로우 레벨)을 가질 수 있다.
테스터(10)는 누적 검증 결과 신호(APF)에 기초하여 오티피 메모리 장치(100)의 재프로그램 여부를 결정한다(S500). 종래의 테스트 방법의 경우, 프로그램 검증 없이 미리 설정된 최대 프로그램 횟수만큼 프로그램을 수행하여 과도한 테스트 시간이 소요된다. 한편, 종래의 스마트 알고리즘 프로그램의 경우, 프로그램 검증을 통해 프로그램이 성공될 때까지 필요한 횟수만큼 프로그램을 수행하여 프로그램 시간을 단축할 수 있다. 그러나 이 경우에도 오티피 메모리 장치(100)가 포함된 반도체 집적 회로(20)의 내부에서 프로그램을 제어하므로 테스터(10)의 입장에서는 프로그램의 완료 시점을 인지할 수 없으므로 실제 프로그램 시간과 무관하게 과도한 대기 시간이 소요된다. 이러한 과도한 대기 시간을 감소하기 위해 임의로 프로그램 시간을 감소하는 경우 오티피 프로그램의 신뢰성이 저하될 수 있다.
한편 반도체 집적 회로(20)마다 서로 다른 데이터를 프로그램하는 오티피 메모리의 특성상 각각의 프로그램 벡터를 확보하여 프로그램 검증을 수행해야 한다. 그러나 테스트 시간의 문제 때문에 통상적으로 오티피 데이터를 사용하는 로직을 포함하여 테스트를 수행하기 때문에 불량 발생시 오티피 메모리의 불량인지 상기 로직의 불량인지가 불분명하게 된다.
본 발명의 실시예들에 따른 오티피 메모리 장치의 프로그램 방법 및 오티피 메모리 장치를 포함하는 반도체 집적 회로의 테스트 방법은, 래치와 같은 비교적 작은 사이즈의 누적부를 이용하여 프로그램 검증 결과를 누적하여 테스터와 같은 외부 장치에 제공함으로써, 오티피 메모리 장치의 프로그램을 효율적으로 수행하고 오티피 메모리 장치를 포함하는 반도체 집적 회로의 테스트 시간을 감소할 수 있다.
도 3은 도 2의 테스트 시스템에 포함된 테스터의 테스트 방법을 나타내는 순서도이다.
도 2 및 도 3을 참조하면, 테스터(10)는 오티피 메모리 장치(100)를 프로그램하기 위한 프로그램 명령(PGM)을 반도체 집적 회로(20)로 전송하고(S110) 오티피 메모리 장치(100)로부터 누적 검증 결과 신호(APF)를 수신한다(S410). 테스터(10)는 누적 검증 결과 신호(APF)에 기초하여 프로그램의 성공 여부를 판단한다(S510). 전술한 바와 같이, 누적 검증 결과 신호(APF)는 1비트의 신호일 수 있고, 테스터(10)는 누적 검증 결과 신호(APF)의 논리 레벨에 기초하여 프로그램의 성공 또는 실패를 판단할 수 있다.
테스터(10)는 누적 검증 결과 신호(APF)가 제1 논리 레벨을 갖는 경우, 즉 누적 검증 결과 신호(APF)가 프로그램 실패를 나타내는 경우(S510: NO), 현재 프로그램 카운트(CPC)와 최대 프로그램 카운트(MPC)를 비교한다(S520). 현재 프로그램 카운트(CPC)는 현재까지 프로그램이 반복된 횟수를 나타내고 최대 프로그램 카운트(MPC)는 테스터(10)에 미리 설정되어 있는 임의의 값일 수 있다.
현재 프로그램 카운트(CPC)가 최대 프로그램 카운트(MPC)보다 작은 경우(S520: NO), 테스터(10)는 현재 프로그램 카운트(CPC)를 1만큼 증가시키고 반도체 집적 회로(20)로 프로그램 명령(PGM)을 다시 전송한다. 현재 프로그램 카운트(CPC)가 최대 프로그램 카운트(MPC)와 같은 경우, 테스터(10)는 오티피 메모리 장치(100)의 프로그램이 실패인 것으로 처리한다(S540).
누적 검증 결과 신호(APF)가 제2 논리 레벨을 갖는 경우, 즉 누적 검증 결과 신호(APF)가 프로그램 실패를 나타내는 경우(S510: YES), 테스터(10)는 오티피 메모리 장치(100)의 프로그램이 성공적으로 완료된 것으로 처리한다(S550).
이와 같이, 테스터(10)는 누적 검증 결과 신호(APF)에 기초하여 프로그램의 반복 횟수를 적응적으로 결정함으로써 오티피 메모리 장치(100) 및 이를 포함하는 반도체 집적 회로(20)의 신뢰성을 향상시키고 테스트 시간을 감소할 수 있다.
도 4는 도 2의 테스트 시스템에 포함된 오티피 메모리 장치의 프로그램 방법을 나타내는 순서도이다.
도 2 및 도 4를 참조하면, 오티피 메모리 장치(100)는 테스터(10)로부터 프로그램 명령(PGM)을 수신한다(S120). 오티피 메모리 장치(100)는 테스터(10)로부터 프로그램 명령(PGM)과 함께 프로그램 어드레스의 범위, 프로그램 데이터 등을 수신할 수 있다.
오티피 메모리 장치(100)는 현재 프로그램 어드레스(CPAD)를 시작 프로그램 어드레스(SPAD)로 설정한다(S210). 현재 프로그램 어드레스(CPAD)는 행 어드레스 및 열 어드레스를 포함할 수 있고, 상기 행 어드레스에 상응하는 워드 라인 및 상기 열 어드레스에 상응하는 비트 라인에 연결된 오티피 메모리 셀이 현재 프로그램될 오티피 메모리 셀로 결정될 수 있다.
오티피 메모리 장치(100)는 현재 프로그램 어드레스(CPAD)에 대하여 프로그램을 수행한다(S220). 프로그램은 후술하는 바와 같이 현재 프로그램 어드레스(CPAD)에 상응하는 워드 라인 및 비트 라인에 일정한 전압을 인가하는 방식으로 수행될 수 있다.
오티피 메모리 장치(100)는 프로그램 검증을 수행하여 현재 검증 결과 신호(CPF)를 발생한다(S230). 프로그램 검증은 후술하는 바와 같이 프로그램 데이터(DI)와 독출 데이터(DO)를 비교하는 방식으로 수행될 수 있다.
오티피 메모리 장치(100)는 현재 검증 결과 신호(CPF)에 기초하여 검증 결과를 누적한다(S310). 프로그램 결과의 누적은 후술하는 바와 같이 현재 프로그램 어드레스(CPAD)에 대한 프로그램 검증 결과를 나타내는 현재 검증 결과 신호(CPF) 및 누적 검증 결과 신호(APF)에 상응하는 래치의 저장 값을 논리 연산하고, 상기 논리 연산의 결과에 기초하여 상기 래치의 저장 값을 갱신하는 방식으로 수행될 수 있다.
현재 프로그램 주소(CPAD)가 마지막 프로그램 주소(LPAD)가 아닌 경우(S240: NO), 오티피 메모리 장치(100)는 현재 프로그램 주소(CPAD)를 변경하고(S550) 전술한 프로그램(S220), 프로그램 검증(S230) 및 검증 결과 누적(S31)을 반복한다. 현재 프로그램 주소(CPAD)가 마지막 프로그램 주소(LPAD)에 해당하는 경우(S240: YES), 오티피 메모리 장치(100)는 누적 검증 결과 신호(APF)를 테스터(10)로 전송하고(S420)는 테스터(10)는 누적 검증 결과 신호(APF)에 기초하여 오티피 메모리 장치(100)의 재프로그램 여부를 결정할 수 있다.
이와 같이, 오티피 메모리 장치(100)는 현재 프로그램 어드레스(CPAD)를 시작 프로그램 어드레스(SPAD)로부터 마지막 프로그램 어드레스(LPAD)까지 변경하면서 순차적으로 상기 프로그램, 상기 프로그램 검증 및 상기 프로그램 검증 결과 누적을 수행할 수 있다. 현재 프로그램 어드레스(CPAD)의 순차적인 변경은 다양한 방식으로 수행될 수 있다. 예를 들어, 한번에 하나의 오티피 메모리 셀이 프로그램되는 경우에는, 하나의 행 어드레스에 대해 어드레스를 변경하면서 1 비트씩 프로그램을 수행한 후에 행 어드레스를 변경할 수 있다. 실시예에 따라서, 도 12 및 도 13을 참조하여 후술하는 바와 같이 복수의 오티피 메모리 셀들이 동시에 프로그램될 수 있다.
도 5는 본 발명의 실시예들에 따른 오티피 메모리 장치를 나타내는 블록도이다.
도 5를 참조하면, 오티피 메모리 장치(100)는 메모리 셀 어레이(111), 구동부(120), 검증부(VER)(170) 및 누적부(ACC)(200)를 포함할 수 있다. 구동부(120)는 행 선택 회로(RSEL)(130), 열 선택 회로(CSEL)(140), 기입-독출 회로(WD-SA)(150) 및 제어부(CON)(160)를 포함할 수 있다.
메모리 셀 어레이(110)는 복수의 비트 라인들(BL) 및 복수의 워드 라인들(WL)에 각각 연결된 복수의 오티피 메모리 셀들을 포함한다. 도 6을 참조하여 후술하는 바와 같이, 각 워드 라인(WL)은 전압 워드 라인(WLP) 및 독출 워드 라인(WLR)을 포함할 수 있다.
행 선택 회로(130)는 행 어드레스에 상응하는 워드 라인(WL)을 선택하기 위한 행 디코더 및 워드 라인들(WL)에 인가하기 위한 전압들을 제공하는 전압 드라이버를 포함할 수 있다. 열 선택 회로(140)는 열 어드레스에 상응하는 비트 라인(BL)을 선택하기 위한 열 게이트 회로 및 열 디코더를 포함할 수 있다. 열 디코더는 열 어드레스 및 열 선택 인에이블 신호에 기초하여 열 선택 신호들을 발생할 수 있다. 상기 열 게이트 회로는 열 선택 신호들에 응답하여 선택적으로 턴온되는 복수의 스위치들을 포함할 수 있다. 상기 스위치들 중에서 열 어드레스에 상응하는 하나의 스위치가 턴온되어 비트 라인이 선택될 수 있다.
기입-독출 회로(150)는 독출 센스 앰프(SA) 및 기입 드라이버(WD)를 포함할 수 있다. 기입-독출 회로(150)는 열 선택 회로(140)를 통하여 비트 라인들에 연결된다. 독출 센스 앰프(SA)는 오티피 메모리 셀에 저장된 데이터를 센싱하여 독출 데이터(DO)를 제공하는 독출 동작을 수행한다. 기입 드라이버(WD)는 프로그램 데이터(DI)를 오티피 메모리 셀에 저장하는 기입 동작을 수행한다. 기입 드라이버(WD)는 독출 센스 앰프(SA)와 일체적으로 형성될 수도 있고, 독출 센스 앰프(SA)와 구별되는 별개의 회로로 형성될 수도 있다.
제어부(160)는 오티피 메모리 장치(100)의 전반적인 동작을 제어하기 위한 제어 신호들, 행 어드레스 신호, 열 어드레스 신호 등을 제공할 수 있다. 일 실시예에서, 제어부(160)는 오티피 메모리 장치(100)에 전속되는 제어 로직으로 구현될 수 있다. 다른 실시예에서, 제어부(160)의 적어도 일부는 반도체 집적 회로(20) 내의 다른 프로세서에 포함될 수 있다.
검증부(170)는 프로그램 데이터(DI) 및 독출 데이터(DO)를 비교하여 현재 검증 결과 신호(CPF)를 발생한다. 검증부(170)는 프로그램 데이터(DI) 및 독출 데이터(DO)의 상응하는 2비트들이 동일한지 여부를 판단하기 위한 적어도 하나의 비교기를 포함할 수 있다. 일 실시예에서 상기 비교기는 배타적 논리합(XOR) 게이트로 구현될 수 있다.
누적부(200)는 현재 검증 결과 신호(CPF)에 기초하여 프로그램 검증 결과를 누적하여 누적 검증 결과 신호(APF)를 발생한다. 누적부(200)는 후술하는 바와 같이 누적 검증 결과 신호(APF)에 상응하는 값을 저장하는 래치 및 논리 게이트를 포함할 수 있다. 상기 논리 게이트는 현재 프로그램 어드레스(CPAD)에 대한 프로그램 검증 결과를 나타내는 현재 검증 결과 신호(CPF) 및 상기 래치의 저장 값을 논리 연산하여 상기 래치의 저장 값을 갱신하는 방식으로 프로그램 검증 결과를 누적할 수 있다.
도 6은 도 5의 오티피 메모리 장치에 포함된 오티피 메모리 셀의 일 예를 나타내는 회로도이다.
도 6을 참조하면, 오티피 메모리 셀(UCa)은 안티 퓨즈(AF) 및 독출 트랜지스터(TR)를 포함할 수 있다.
안티 퓨즈(AF)는 전압 워드 라인(WLP)과 중간 노드(NI) 사이에 연결된다. 독출 트랜지스터(TR)는 중간 노드(NI)와 비트 라인(BL) 사이에 연결되고, 게이트 전극이 독출 워드 라인(WLP)에 연결된다.
안티 퓨즈(AF)는 모스(MOS: metal oxide semiconductor) 트랜지스터로 구현될 수 있다. 일 실시예에서, 도 6에 도시된 바와 같이, 상기 모스 트랜지스터는, 드레인 전극이 플로팅되고, 소스 전극이 중간 노드(NI)에 연결되고, 게이트 전극이 상응하는 전압 워드 라인(WLP)에 연결될 수 있다.
오티피 메모리의 셀이 포함하는 구성요소들 중 일 예인 안티-퓨즈(anti-fuse)는 퓨즈 소자와 반대되는 전기적 특성을 갖는 것으로서, 프로그램 되지 않은 상태에서는 높은 저항 값을 갖는 반면 프로그램 된 상태에서는 낮은 저항 값을 갖는 저항성 퓨즈 소자이다.
안티-퓨즈는 일반적으로 도전체 사이에 유전체가 삽입되어 있는 형태로 구성되며, 충분한 시간 동안 안티-퓨즈 양단의 도전체를 통해 고전압을 인가하여 양 도전체 사이의 유전체를 파괴함으로써 안티-퓨즈를 프로그램한다. 프로그램의 결과, 안티-퓨즈의 양 단의 도전체가 단락되어 낮은 저항 값을 가질 수 있다. 안티 퓨즈 방식의 오티피 메모리는 얇은 게이트 산화막의 MOS 캐패시터의 양단에 고전압을 인가해 퓨즈를 전기적으로 단락시켜 프로그램하는 메모리로 셀 면적이 작아 저전력의 기능 소자(IP: Intellectual Property)를 구현할 수 있고 프로그램시 전류 소모가 적어 바이트 단위의 프로그램이 가능한 장점이 있다.
프로그램 모드에서는 비교적 높은 전압 레벨의 프로그램 전압(VPGM)이 전압 워드 라인(WL)에 인가되고, 독출 모드에서는 프로그램 전압(VPGM)보다 작은 독출 전압(VRD)이 전압 워드 라인(WLP)에 인가된다. 프로그램 모드 및 독출 모드에서 독출 워드 라인(WLR)에는 행 어드레스에 따라서 독출 트랜지스터를 턴온시킬 수 있는 전압 레벨을 갖는 선택 전압이 인가된다.
프로그램 모드에서, 프로그램되는 오티피 메모리 셀이 연결된 비트 라인에는 프로그램 허용 전압(VPER)이 인가되고, 프로그램되지 않는 오티피 메모리 셀이 연결된 비트 라인에는 프로그램 허용 전압(VPER)보다 큰 프로그램 금지 전압(VINH)이 인가된다. 일 실시예에서, 프로그램 허용 전압(VPER)은 접지 전압(VSS)으로 설정될 수 있다. 한편, 프로그램 금지 전압(VINH)은 독출 전압(VRD)과 함께 전원 전압으로 설정될 수 있다. 프로그램 전압(VPGM), 독출 전압(VRD), 프로그램 허용 전압(VPER) 및 프로그램 금지 전압(VINH)과 같은 동작 전압들의 전압 레벨은 오티피 메모리 셀의 특성 및 오티피 메모리 장치의 구성에 따라서 다양하게 설정될 수 있다.
프로그램 모드에서는 전압 워드 라인(WLP)에 프로그램 전압(VPGM)이 인가되고 독출 트랜지스터(TR)가 턴온되어, 안티 퓨즈(AF)의 양단에 프로그램 전압(VPGM)과 프로그램 허용 전압(VPER)이 인가됨으로써 안티 퓨즈(AF)의 프로그램이 수행될 수 있다.
도 7은 도 6의 오티피 메모리 셀의 구조의 일 예를 설명하기 위한 단면도이다.
도 7을 참조하면, 오티피 메모리 셀(UCa)에 포함되는 안티 퓨즈(AF) 및 독출 트랜지스터(TR)는 동일한 기판(P-SUB)(150) 상에 형성된다.
독출 트랜지스터(TR)는 독출 워드 라인(WLR)에 연결되는 제1 게이트(111), 제1 게이트(111)를 기판(150)과 절연시키는 제1 게이트 절연층(GOX)(112), 제1 게이트(111)에 대해 서로 대향하여 비대칭 구조로 형성되는 제1 소스 영역(113) 및 제1 드레인 영역(114)을 포함한다. 독출 트랜지스터(TR)의 제1 소스 영역(113)은 비트 라인(BL)에 연결된다.
안티 퓨즈(AF)는 전압 워드 라인(WLP)에 연결되는 제2 게이트(121), 제2 게이트(121)를 기판(150)과 절연시키는 제2 게이트 절연층(GOX)(122), 독출 트랜지스터(TR)의 제1 드레인 영역(114)에 연결되는 제2 소스 영역(123) 및 플로팅되는 제2 드레인 영역(124)을 포함한다.
안티 퓨즈(AF)의 제2 소스 영역(123)은 배선(141)을 통해 독출 트랜지스터(TR)의 제1 드레인 영역(114)과 연결될 수 있다. 배선(141)은 상부의 메탈 라인 및 이를 기판 표면과 연결하기 위한 비아(Via)와 같은 층간 연결 구조물을 포함할 수 있다. 다른 실시예에서, 안티 퓨즈(AF)의 제2 소스 영역(123) 및 독출 트랜지스터(TR)의 제1 드레인 영역(114)은 하나의 액티브 영역으로 통합될 수 있고, 이 경우 배선(141)은 생략될 수 있다.
예를 들어, 기판(150)은 P형 불순물로 도핑(doping)되고, 제1 소스 영역(113), 제1 드레인 영역(114), 제2 소스 영역(123), 제2 드레인 영역(124)은 N형 불순물로 도핑될 수 있다.
독출 트랜지스터(TR)는 제1 게이트(111) 및 제1 게이트 절연층(112)의 양 측벽에 형성되는 제1 스페이서(spacer)(115)를 더 포함할 수 있고, 안티 퓨즈(AF)는 제2 게이트(121) 및 제2 게이트 절연층(122)의 양 측벽에 형성되는 제2 스페이서(1125)를 더 포함할 수 있다.
이하, 도 7의 오티피 메모리 셀(UCa)의 제조 방법에 대해 간략히 설명한다.
기판(150) 상에 제1 게이트 절연층(112) 및 제2 게이트 절연층(122)을 형성한다. 제1 게이트 절연층(112) 상에 제1 게이트(111)를 형성하고, 제2 게이트 절연층(122) 상에 제2 게이트(121)를 형성한다. 제1 게이트(111) 및 제2 게이트(121)의 양측에 불순물(N+)을 주입하는 이온 주입 공정을 수행하여 드레인 영역들(114, 124) 및 소스 영역들(113, 123)을 형성한다. 이후 스페이서들(115, 125) 및 배선들(141, 142)을 형성한다.
도 8은 도 5의 오티피 메모리 장치에 포함된 오티피 메모리 셀의 다른 예를 나타내는 회로도이다.
도 8을 참조하면, 오티피 메모리 셀(UCb)은 안티 퓨즈(AF) 및 독출 트랜지스터(TR)를 포함한다.
안티 퓨즈(AF)는 전압 워드 라인(WLP)과 중간 노드(NI) 사이에 연결된다. 독출 트랜지스터(TR)는 중간 노드(NI)와 비트 라인(BL) 사이에 연결되고, 게이트 전극이 독출 워드 라인(WLP)에 연결된다.
안티 퓨즈(AF)는 모스(MOS: metal oxide semiconductor) 트랜지스터로 구현될 수 있다. 일 실시예에서, 도 8에 도시된 바와 같이, 상기 모스 트랜지스터는 드레인 전극 및 소스 전극이 중간 노드(NI)에 연결되고, 게이트 전극이 상응하는 전압 워드 라인(WLP)에 연결되는 모스 트랜지스터로 구현될 수 있다.
도 8의 오티피 메모리 셀(UCb)의 구조 및 제조 방법은 도 7을 참조하여 설명한 것과 유사하다. 다만, 모스 커패시터를 구현하기 위해서 도 7에 도시된 제2 소스 영역(123) 및 제2 드레인 영역(124)을 전기적으로 연결하기 위한 배선이 추가될 수 있다.
도 9는 도 5의 오티피 메모리 장치에 포함된 메모리 셀 어레이의 일 예를 나타내는 회로도이다.
도 9를 참조하면, 메모리 셀 어레이(110)는 복수의 독출 워드 라인들(WLR1,....,WLRn), 복수의 전압 워드 라인들(WLP1,....,WLPn) 및 복수의 비트 라인들(BL1,....,BLm)에 연결되고, n*m(n, m은 양의 정수) 매트릭스(matrix) 형태로 배열된 복수의 오티피 메모리 셀들(UC1, UC2)을 포함한다.
독출 트랜지스터(TR)의 게이트는 상응하는 독출 워드 라인(WLRx)(x는 1이상 n이하의 정수)에 연결되고, 독출 트랜지스터(TR)의 소스 영역은 상응하는 비트 라인(BLy)(y는 1이상 m이하의 정수)에 연결된다.
안티 퓨즈(AF)의 제1 단은 상응하는 프로그램 워드 라인(WLPx)에 연결되고, 안티 퓨즈(AF)의 제2 단은 선택 트랜지스터(1110)의 드레인 영역에 연결된다.
전술한 바와 같이, 안티 퓨즈(AF)는 MOSFET(Metal Oxide Semiconductor Field Effect Transistor)일 수 있다. 이 경우, 안티 퓨즈(AF)의 게이트는 상기 제1 단이 되어 상응하는 전압 워드 라인(WLPx)에 연결되고, 안티 퓨즈(AF)의 소스 영역은 상기 제2 단이 되어 독출 트랜지스터(TR)의 드레인 영역에 연결되고, 안티 퓨즈(AF)의 드레인 영역은 플로팅(floating)될 수 있다.
오티피 메모리 셀들(UC1, UC2)의 각각은 안티 퓨즈(AF) 및 독출 트랜지스터(TR)를 포함한다. 도 9에는 2개의 오티피 메모리 셀들(UC1, UC2) 마다 하나의 쌍을 이루는 구성이 도시되어 있으나, 유닛 셀들의 배열은 다양하게 구현될 수 있다.
이하, 도 5 내지 도 9를 참조하여 오티피 메모리 셀의 프로그래밍 동작에 대해 설명한다.
독출 워드 라인(WLR1), 전압 워드 라인(WLP1) 및 비트 라인(BL1)에 연결되는 오티피 메모리 셀을 프로그래밍 하는 경우, 선택된 전압 워드 라인(WLP1)에 고전압인 프로그램 전압(VPGM)을 인가하고, 선택된 독출 워드 라인(WLR1)에 프로그램 전압(VPGM)보다 낮은 전위를 갖는 선택 전압을 인가하고, 선택되지 않은 프로그램 워드 라인들(WLP2,....,WLPn) 및 선택되지 않은 독출 워드 라인들(WLR2,....,WLRn)에는, 예를 들어, 0V의 전압을 인가한다. 또한, 선택된 비트 라인(BL1)에는 프로그램 허용 전압(VPER)(예를 들어, 0V)의 전압을 인가하고, 선택되지 않은 비트 라인들(BL2,....,BLm)에는 프로그램 허용 전압(VINH)을 인가한다. 예를 들어, 상기 프로그램 전압(VPGM)은 약 7V일 수 있고, 상기 선택 전압은 약 3V일 수 있다.
선택된 독출 워드 라인(WLR1)에 연결되는 독출 트랜지스터(TR)의 제1 게이트(111)에는 상기 선택 전압이 인가되고 독출 트랜지스터(TR)의 제1 소스 영역(113)에는 0V의 전압이 인가되어 독출 트랜지스터(TR)는 턴온(turn-on)되고, 독출 트랜지스터(TR)의 제1 드레인(114)은 0V가 된다. 선택된 전압 워드 라인(WLP1)에 연결되는 안티 퓨즈(AF)의 제2 게이트(121)에는 고전압인 프로그램 전압(VPGM)이 인가되고 안티 퓨즈(AF)의 제2 소스 영역(123)의 전압은 0V이므로, 안티 퓨즈(AF)의 제2 게이트 절연층(122) 양단 사이에 높은 전계가 형성된다. 이로 인해 제2 게이트 절연층(122)의 절연성이 파괴됨으로써 선택된 안티 퓨즈 메모리 셀이 프로그래밍 된다.
선택되지 않은 전압 워드 라인들(WLP2,....,WLPn) 및 선택되지 않은 독출 워드 라인들(WLR2,....,WLRn)에 연결되는 오티피 메모리 셀들의 경우, 선택되지 않은 전압 워드 라인들(WLP2,....,WLPn) 및 선택되지 않은 독출 워드 라인들(WLR2,....,WLRn)에는 0V의 전압이 인가된다. 따라서 독출 트랜지스터(TR)가 턴온되지 않고, 안티 퓨즈(1120)에 고전압인 상기 프로그램 전압이 인가되지 않으므로, 선택되지 않은 전압 워드 라인들(WLP2,....,WLPn) 및 선택되지 않은 독출 워드 라인들(WLR2,....,WLRn)에 연결되는 안티 퓨즈 메모리 셀들은 프로그래밍 되지 않을 수 있다.
한편, 선택된 전압 워드 라인(WLP1) 및 선택된 독출 워드 라인(WLR1)에 연결되고 선택되지 않은 비트 라인들(BL2,....,BLm)에 연결되는 오티피 메모리 셀들 역시 프로그래밍 되지 않는다. 선택된 전압 워드 라인(WLP1), 선택된 독출 워드 라인(WLR1) 및 선택되지 않은 비트 라인(BL2)에 연결되는 오티피 메모리 셀을 예로 들어 설명한다.
선택된 독출 워드 라인(WLR1)에는 상기 선택 전압이 인가되고 선택되지 않은 비트 라인(BL2)에는 프로그램 금지 전압(VINH)이 인가되므로, 독출 트랜지스터(TR)의 제1 게이트(111)와 제1 소스 영역(113) 사이에 전위차가 형성되지 않아 독출 트랜지스터(TR)는 턴오프(turn-off)되고, 독출 트랜지스터(TR)의 제1 드레인 영역(114)은 플로팅 상태가 된다. 선택된 전압 워드 라인(WLP1)에 연결되는 안티 퓨즈(AF)의 제2 게이트(121)에 고전압인 프로그램 전압(VPGM)이 인가되더라도 안티 퓨즈(AF)의 제2 소스 영역(123)이 플로팅 상태에 있으므로 안티 퓨즈(AF)의 제2 게이트 절연층(122) 양단 사이에는 높은 전계가 형성되지 않는다.
도 10은 본 발명의 일 실시예에 따른 오티피 메모리 장치를 나타내는 블록도이고, 도 11은 도 10의 오티피 메모리 장치에 포함된 누적부의 일 실시예를 나타내는 회로도이다.
도 10을 참조하면, 오티피 메모리 장치(101)는 메모리 셀 어레이(111), 행 선택 회로(RSEL)(131), 열 선택 회로(CSEL)(141), 센스 앰프(SA)(151), 검증부(171) 및 누적부(ACC)(210)를 포함할 수 있다. 오티피 메모리 장치(101)의 다른 구성 요소들은 편의상 생략되었으며 도 5 및 도 9와 중복되는 설명은 생략된다.
전술한 현재 프로그램 어드레스(CPAD)는 행 선택 회로(131) 및 열 선택 회로(141)에 현재 각각 인가되는 행 어드레스(XADD) 및 열 어드레스(CADD)를 포함할 수 있다. 행 선택 회로(131)는 행 어드레스(XADD)에 응답하여 복수의 워드 라인들(WL1~WLn) 중에서 하나의 워드 라인(WLs)을 선택할 수 있다. 열 선택 회로(141)는 열 어드레스(CADD)에 응답하여 복수의 비트 라인들(BL1~BLm) 중에서 하나의 비트 라인(BLs)을 선택할 수 있다. 선택 워드라인(WLs) 및 선택 비트 라인(BLs)에 연결된 오티피 메모리 셀(UC)은 현재 프로그램 어드레스(CPAD)에 상응한다.
기입 드라이버(WD)(미도시)는 현재 프로그램 어드레스(CPAD)의 각각에 대하여 1 비트의 프로그램 데이터(DI)에 기초하여 하나의 오티피 메모리 셀(UC)을 프로그램할 수 있다. 센스 앰프(151)는 프로그램 검증을 위하여 상기 프로그램된 하나의 오티피 메모리 셀(UC)에 저장된 값을 독출하여 1비트의 독출 데이터(DO)를 출력할 수 있다.
검증부(171)는 1비트의 프로그램 데이터(DI) 및 1비트의 독출 데이터(DO)를 비교하여 현재 검증 결과 신호(CPF)를 발생할 수 있다. 일 실시예에서, 도 10에 도시된 바와 같이, 검증부(171)는 프로그램 데이터(DI) 및 독출 데이터(DO)를 배타적 논리합(XOR) 연산하여 현재 검증 결과 신호(CPF)를 발생하는 배타적 논리합 게이트를 포함할 수 있다. 프로그램 데이터(DI) 및 독출 데이터(DO)의 논리 레벨이 다른 경우에는 프로그램 실패에 해당하고 현재 검증 결과 신호(CPF)는 제1 논리 레벨 즉, 논리 하이 레벨을 가질 수 있다. 프로그램 데이터(DI) 및 독출 데이터(DO)의 논리 레벨이 같은 경우에는 프로그램 성공에 해당하고 현재 검증 결과 신호(CPF)는 제2 논리 레벨 즉, 논리 로우 레벨을 가질 수 있다. 누적부(210)는 현재 검증 결과 신호(CPF)에 기초하여 프로그램의 대상이 되는 모든 오티피 메모리 셀들에 대하여 프로그램 검증 결과를 누적하여 누적 검증 결과 신호(APF)를 발생할 수 있다.
도 11을 참조하면, 누적부(210)는 래치(212) 및 논리 게이트(214)를 포함할 수 있다.
래치(212)는 제1 래치 노드(LN1) 및 제2 래치 노드(LN2) 사이에 교차하여 연결된 2개의 인버터들(INV1, INV2)을 포함할 수 있다. 예를 들어, 제1 래치 노드(LN1)의 저장 값이 누적 검증 결과 신호(APF)에 상응할 수 있다. 누적 검증 결과 신호(APF)는 도 11에 도시된 바와 같이 제2 래치 노드(LN2)에 연결된 인버터(INV3)를 통하여 제공될 수도 있고, 제1 래치 노드(LN1)으로부터 직접 제공될 수도 있다.
논리 게이트(214)는 현재 프로그램 어드레스(CPAD)에 대한 프로그램 검증 결과를 나타내는 현재 검증 결과 신호(CPF) 및 제1 래치 노드(LN1)의 저장 값을 논리 연산하여 제1 래치 노드(LN1)의 저장 값을 갱신할 수 있다. 일 실시예에서, 논리 게이트(214)는 논리합(OR) 게이트로 구현될 수 있고 현재 검증 결과 신호(CPF)가 논리 하이 레벨일 때 프로그램 실패를 나타내고 논리 로우 레벨일 때 논리 로우 레벨을 갖도록 구현될 수 있다. 도 11에 도시하지는 않았으나 누적부(210)는 래치(212)의 저장 값을 초기화할 수 있는 리셋 트랜지스터를 더 포함할 수 있고, 제1 래치 노드(LN1)는 프로그램 성공에 해당하는 논리 로우 레벨로 초기화될 수 있다. 이러한 구성을 통하여 현재 검증 결과 신호(CPF)가 프로그램 실패에 상응하는 논리 하이 레벨을 갖기 전까지는 제1 래치 노드(LN1)의 저장 값은 프로그램 성공에 상응하는 논리 로우 레벨을 유지할 수 있다. 현재 검증 결과 신호(CPF)가 논리 하이 레벨을 갖는 경우에는 그 이후의 현재 검증 결과 신호(CPF)의 논리 레벨에 관계없이 제1 래치 노드(LN1)의 저장 값은 프로그램 실패에 상응하는 논리 하이 레벨을 유지할 수 있다. 이와 같이, 래치를 이용하여 프로그램 검증 결과를 누적할 수 있고, 누적 검증 결과 신호(APF)는 프로그램의 대상이 되는 오티피 메모리 셀들의 적어도 하나에 대하여 프로그램이 실패인 경우 제1 논리 레벨을 갖고 상기 오티피 메모리 셀들의 전부에 대하여 프로그램이 성공인 경우 제2 논리 레벨을 갖는 1비트 신호로 구현될 수 있다.
도 12는 본 발명의 일 실시예에 따른 오티피 메모리 장치를 나타내는 블록도이고, 도 13은 도 12의 오티피 메모리 장치를 위한 검증부 및 누적부의 일 실시예를 나타내는 도면이다.
도 12를 참조하면, 오티피 메모리 장치(102)는 메모리 셀 어레이(BK1~BK4), 행 선택 회로들(XDEC1~XDEC4, VDR), 열 선택 회로들(CSEL) 및 기입-독출 회로들(SA, WD)을 포함할 수 있다.
도 5를 참조하여 전술한 바와 같이, 메모리 셀 어레이(BK1~BK4)는 복수의 비트 라인들(BL) 및 복수의 워드 라인들(WL)에 각각 연결된 복수의 오티피 메모리 셀들을 포함한다. 전술한 바와 같이, 각 워드 라인(WL)은 전압 워드 라인(WLP) 및 독출 워드 라인(WLR)을 포함할 수 있다. 메모리 셀 어레이의 오티피 메모리 셀들은 복수의 메모리 뱅크들(BK1~BK4)을 형성할 수 있다. 도 12에는 편의상 4개의 메모리 뱅크들(BK1~BK4)을 도시하였으나, 메모리 뱅크들의 개수는 다양하게 변경될 수 있다.
행 선택 회로들(XDEC1~XDEC4, VDR)은 행 어드레스(XADD)에 상응하는 워드 라인(WL)을 선택하기 위한 행 디코더(XDEC1~XDEC4) 및 워드 라인들(WL)에 인가하기 위한 전압들을 제공하는 전압 드라이버(VDR)를 포함할 수 있다.
열 선택 회로들(CSEL)은 열 어드레스(CADD)에 상응하는 비트 라인(BL)을 선택하기 위한 열 게이트 회로 및 열 디코더를 포함할 수 있다. 열 디코더는 열 어드레스 및 열 선택 인에이블 신호에 기초하여 열 선택 신호들을 발생할 수 있다. 상기 열 게이트 회로 열 선택 신호들에 응답하여 선택적으로 턴온되는 복수의 스위치들을 포함할 수 있다. 상기 스위치들 중에서 열 어드레스에 상응하는 하나의 스위치가 턴온되어 비트 라인이 선택될 수 있다.
기입-독출 회로들(SA, WD)은 독출 센스 앰프(SA) 및 기입 드라이버(WD)를 포함할 수 있다. 기입-독출 회로들(SA, WD)은 열 선택 회로(CSEL)를 통하여 비트 라인들에 연결된다. 독출 센스 앰프(SA)는 오티피 메모리 셀에 저장된 데이터를 센싱하여 독출 데이터를 제공하는 독출 동작을 수행한다. 기입 드라이버(WD)는 기입 데이터를 오티피 메모리 셀에 저장하는 기입 동작을 수행한다. 기입 드라이버(WD)는 독출 센스 앰프(SA)와 일체적으로 형성될 수도 있고, 독출 센스 앰프(SA)와 구별되는 별개의 회로로 형성될 수도 있다.
오티피 메모리 장치(102)는 프로그램 모드에서 메모리 뱅크들(BK1~BK4)에 포함되는 복수의 비트들, 즉 복수의 오티피 메모리 셀들을 동시에 프로그램할 수 있다. 일 실시예에서, 오티피 메모리 장치(20)는 하나의 메모리 뱅크만을 활성화하고, 상기 활성화된 하나의 메모리 뱅크에서 선택된 행의 오티피 메모리 셀들을 동시에 프로그램할 수 있다. 다른 실시예에서, 오티피 메모리 장치(102)는 전체 메모리 뱅크들(BK1~BK4) 중에서 2개 이상의 메모리 뱅크들을 활성화하고, 상기 활성화된 2개 이상의 메모리 뱅크들에서 선택된 행의 오티피 메모리 셀들을 동시에 프로그램할 수 있다. 또 다른 실시예에서, 오티피 메모리 장치(102)는 전체 메모리 뱅크들(BK1~BK4)을 모두 활성화하고 메모리 뱅크들(BK1~BK4) 각각에서 하나의 오티피 메모리 셀을 선택하여 메모리 뱅크들(BK1~BK4)의 개수에 상응하는 메모리 셀들을 동시에 프로그램할 수 있다.
기입 드라이버(WD)는 현재 프로그램 어드레스(CPAD)의 각각에 대하여 N비트(N은 2 이상의 자연수)의 프로그램 데이터(DI)에 기초하여 N개의 오티피 메모리 셀들을 프로그램할 수 있다. 독출 센스 앰프(SA)는 상기 프로그램된 N개의 오티피 메모리 셀들에 저장된 값들을 독출하여 N비트의 독출 데이터(DO)를 출력할 수 있다.
도 13을 참조하면, 검증부(172)는 N비트의(예를 들어, N=8) 프로그램 데이터(DI[7:0]) 및 N비트의 독출 데이터(DO[7:0])를 비교하기 위한 복수의 논리 게이트들(G0~G7) 및 상기 비교 결과를 논리 연산하여 현재의 검증 결과 신호를 발생하는 논리 게이트(Gt)를 포함할 수 있다. 일 실시예에서, 비교를 위한 논리 게이트들(G0~G7)은 배타적 논리합 게이트들(XOR)로 구현될 수 있고, 누적 검증 결과 신호(CPF)의 발생을 위한 논리 게이트(Gt)는 논리합(OR) 게이트로 구현될 수 있다. 도 13에는 비교를 위한 논리 게이트들(G0~G7)의 개수가 1 바이트에 해당하는 8개인 것으로 도시하였으나, 비교를 위한 논리 게이트들(G0~G7)의 도 12의 센스 앰프들(SA)의 개수에 따라서 변경될 수 있다.
도 14는 본 발명의 일 실시예에 따른 오티피 메모리 장치의 프로그램 방법을 나타내는 순서도이다.
도 2 및 도 14를 참조하면, 오티피 메모리 장치(100)는 테스터(10)로부터 프로그램 명령(PGM)을 수신한다(S130). 오티피 메모리 장치(100)는 테스터(10)로부터 프로그램 명령(PGM)과 함께 프로그램 어드레스의 범위, 프로그램 데이터 등을 수신할 수 있다.
오티피 메모리 장치(100)는 도 15를 참조하여 후술하는 바와 같이 복수의 메인 셀들 및 복수의 리던던트 셀들을 포함하고, 동일한 어드레스에 상응하는 하나의 메인 셀 및 하나의 리던던트 셀이 1비트를 나타낼 수 있다.
오티피 메모리 장치(100)는 상기 메인 셀들에 대해 프로그램 및 프로그램 검증을 수행하고(S270) 상기 메인 셀들에 대하여 프로그램 검증 결과를 누적하여 메인 누적 신호(MAPF)를 발생한다(S275). 또한 오티피 메모리 장치(100)는 상기 리던던트 셀들에 대해 프로그램 및 프로그램 검증을 수행하고(S280) 상기 리던던트 셀들에 대하여 프로그램 검증 결과를 누적하여 리던던트 누적 신호(RAPF)를 발생한다(S285). 오티피 메모리 장치(100)는 메인 누적 신호(MAPF) 및 리던던트 누적 신호(RAPF)에 기초하여 전술한 누적 검증 결과 신호(APF)를 발생하고(S290) 이를 테스터(10)로 전송한다(S430). 동일한 프로그램 데이터를 사용하는 것을 제외하고는, 상기 메인 셀들에 대한 프로그램, 프로그램 검증 및 프로그램 검증 결과의 누적은 상기 리던던트 셀들에 대한 프로그램, 프로그램 검증 및 프로그램 검증 결과의 누적과 관계 없이 독립적으로 수행될 수 있다. 동일한 어드레스에 상응하는 메인 셀 및 리던던트 셀 중에서 하나에 대해서 프로그램이 성공인 경우 소기의 결과를 달성할 수 있으므로 프로그램의 효율 및 신뢰성을 향상시킬 수 있다.
도 15는 본 발명의 일 실시예에 따른 오티피 메모리 장치를 나타내는 블록도이고, 도 16은 도 15의 오티피 메모리 장치에 포함된 누적부의 일 실시예를 나타내는 회로도이다.
도 15를 참조하면, 오티피 메모리 장치(103)는 메모리 셀 어레이(113), 메인 행 선택 회로(MRSEL)(133), 리던던트 행 선택 회로(RRSEL)(134), 열 선택 회로(CSEL)(143), 센스 앰프(SA)(153), 검증부(173) 및 누적부(ACC)(230)를 포함할 수 있다. 오티피 메모리 장치(103)의 다른 구성 요소들은 편의상 생략되었으며 도 5 및 도 9와 중복되는 설명은 생략된다.
메모리 셀 어레이(113)는 복수의 메인 셀들(MUC)을 포함하는 메인 서브 어레이(MSA) 및 복수의 리던던트 셀들(RUC)을 포함하는 리던던트 서브 어레이(RSA)를 포함할 수 있다. 도 15에 도시된 바와 같이, 동일한 어드레스에 상응하는 하나의 메인 셀(MUC) 및 하나의 리던던트 셀(RUC)은 메인 워드 라인(MWLs) 및 리던던트 워드 라인(RWLs)에 각각 독립적으로 연결되고 동일한 비트 라인(BLs)에 공통으로 연결될 수 있다.
상기 동일한 어드레스에 상응하는 메인 워드 라인(MWLs) 및 리던던트 워드 라인(RWLs)은 통상의 독출시 동시에 활성화되고 프로그램 및 프로그램 검증을 위한 독출시 각각 독립적으로 활성화될 수 있다. 이를 위하여, 도 5의 제어부(160)는 메인 서브 어레이(MSA) 및 리던던트 서브 어레이(RSA) 중 하나를 나타내는 선택 신호(SEL) 및 프로그램 모드 또는 통상의 독출 모드를 나타내는 모드 신호(MD)를 추가적으로 제공할 수 있다. 모드 신호(MD)가 프로그램 모드를 나타내는 경우에는 선택 신호(SEL)에 응답하여 메인 서브 어레이(MSA) 및 리던던트 서브 어레이(RSA) 중 하나가 인에이블될 수 있다. 모드 신호(MD)가 통상의 독출 모드를 나타내는 경우에는 선택 신호(SEL)에 관계없이 메인 서브 어레이(MSA) 및 리던던트 서브 어레이(RSA)가 동시에 인에이블될 수 있다. 프로그램 모드에서는 메인 서브 어레이(MSA) 및 리던던트 서브 어레이(RSA)에 동일한 프로그램 데이터를 독립적으로 기입하고, 통상의 독출 모드에서는 동일한 어드레스에 상응하는 하나의 메인 셀 및 하나의 리던던트 셀을 공통으로 선택하여 1비트를 독출 데이터를 출력함으로써 프로그램의 신뢰성을 향상시킬 있다.
전술한 현재 프로그램 어드레스(CPAD)는 행 선택 회로들(133, 134) 및 열 선택 회로(143)에 현재 각각 인가되는 행 어드레스(XADD) 및 열 어드레스(CADD)를 포함할 수 있다. 선택 신호(SEL)가 메인 서브 어레이(MSA)를 나타내는 경우에는 리던던트 행 선택 회로(134)는 디스에이블되고 메인 행 선택 회로(133)는 행 어드레스(XADD)에 응답하여 복수의 메인 워드 라인들(MWL1~MWLn) 중에서 하나의 메인 워드 라인(MWLs)을 선택할 수 있다. 선택 신호(SEL)가 리던던트 서브 어레이(RSA)를 나타내는 경우에는 메인 행 선택 회로(133)는 디스에이블되고 리던던트 행 선택 회로(134)는 행 어드레스(XADD)에 응답하여 복수의 리던던트 워드 라인들(RWL1~RWLn) 중에서 하나의 리던던트 워드 라인(RWLs)을 선택할 수 있다. 열 선택 회로(143)는 열 어드레스(CADD)에 응답하여 복수의 비트 라인들(BL1~BLm) 중에서 하나의 비트 라인(BLs)을 선택할 수 있다. 선택 메인 워드라인(MWLs) 및 선택 리던던트 워드 라인(RWLs)에 각각 연결되고 선택 비트 라인(BLs)에 공통으로 연결된 오티피 메모리 셀들(MUC, RUC)은 현재 프로그램 어드레스(CPAD)에 상응한다.
기입 드라이버(WD)(미도시)는 현재 프로그램 어드레스(CPAD)의 각각에 대하여 1비트의 프로그램 데이터(DI)에 기초하여 하나의 오티피 메모리 셀(MUC 또는 RUC)을 프로그램할 수 있다. 센스 앰프(153)는 프로그램 검증을 위하여 상기 프로그램된 하나의 오티피 메모리 셀(MUC 또는 RUC)에 저장된 값을 독출하여 1비트의 독출 데이터(DO)를 출력할 수 있다.
검증부(173)는 1비트의 프로그램 데이터(DI) 및 1비트의 독출 데이터(DO)를 비교하여 현재 검증 결과 신호(CPF)를 발생할 수 있다. 일 실시예에서, 도 15에 도시된 바와 같이, 검증부(173)는 프로그램 데이터(DI) 및 독출 데이터(DO)를 배타적 논리합(XOR) 연산하여 현재 검증 결과 신호(CPF)를 발생하는 배타적 논리합 게이트를 포함할 수 있다. 프로그램 데이터(DI) 및 독출 데이터(DO)의 논리 레벨이 다른 경우에는 프로그램 실패에 해당하고 현재 검증 결과 신호(CPF)는 제1 논리 레벨 즉, 논리 하이 레벨을 가질 수 있다. 프로그램 데이터(DI) 및 독출 데이터(DO)의 논리 레벨이 같은 경우에는 프로그램 성공에 해당하고 현재 검증 결과 신호(CPF)는 제2 논리 레벨 즉, 논리 로우 레벨을 가질 수 있다. 누적부(230)는 현재 검증 결과 신호(CPF)에 기초하여 프로그램의 대상이 되는 모든 오티피 메모리 셀들에 대하여 프로그램 검증 결과를 누적하여 누적 검증 결과 신호(APF)를 발생할 수 있다.
도 15 및 도 16을 참조하면, 선택부(TS1, TS2), 누적부(230)는 메인 누적부(MLAT)(240), 리던던트 누적부(RLAT)(250) 및 논리부(LOG)(260)를 포함할 수 있다.
선택부(TS1, TS2)는 선택 신호(SEL)에 응답하여 현재 검증 결과 신호(CPF)를 메인 누적부(240) 및 리던던트 누적부(250) 중 하나로 전달하는 제1 스위치(TS1), 제2 스위치 (TS2) 및 인버터(INV)를 포함할 수 있다. 선택 신호(SEL)가 메인 서브 어레이(MSA)를 나타내는 경우에는 제1 트랜지스터(TS1)가 턴온되고 제2 트랜지스터(TS2)가 턴오프되어 현재 검증 결과 신호(CPF)는 메인 현재 검증 결과 신호(MCPF)로서 메인 누적부(240)에 전달될 수 있다. 선택 신호(SEL)가 리던던트 서브 어레이(RSA)를 나타내는 경우에는 제1 트랜지스터(TS1)가 턴오프되고 제2 트랜지스터(TS2)가 턴온되어 현재 검증 결과 신호(CPF)는 리던던트 현재 검증 결과 신호(RCPF)로서 리던던트 누적부(250)에 전달될 수 있다.
메인 누적부(240)는 제1 래치(242) 및 제1 논리 게이트(244)를 포함할 수 있다. 제1 래치(242)는 제1 래치 노드(LN11) 및 제2 래치 노드(LN12) 사이에 교차하여 연결된 2개의 인버터들을 포함할 수 있다. 제1 논리 게이트(244)는 메인 현재 검증 결과 신호(MCPF) 및 제1 래치 노드(LN11)의 저장 값을 논리 연산하여 제1 래치 노드(LN11)의 저장 값을 갱신할 수 있다. 일 실시예에서, 도 11을 참조하여 전술한 바와 같이, 제1 논리 게이트(244)는 논리합(OR) 게이트로 구현될 수 있다.
리던던트 누적부(250)는 제2 래치(252) 및 제2 논리 게이트(254)를 포함할 수 있다. 제2 래치(252)는 제3 래치 노드(LN31) 및 제4 래치 노드(LN22) 사이에 교차하여 연결된 2개의 인버터들을 포함할 수 있다. 제2 논리 게이트(254)는 리던던트 현재 검증 결과 신호(RCPF) 및 제3 래치 노드(LN21)의 저장 값을 논리 연산하여 제3 래치 노드(LN31)의 저장 값을 갱신할 수 있다. 일 실시예에서, 도 11을 참조하여 전술한 바와 같이, 제2 논리 게이트(254)는 논리합(OR) 게이트로 구현될 수 있다.
논리부(260)는 제2 래치 노드(LN12)로부터 제공되는 메인 누적 신호(MAPF) 및 제4 래치 노드(LN22)로부터 제공되는 리던던트 누적 신호(RAPF)를 논리 연산하여 전술한 누적 검증 결과 신호(APF)를 발생할 수 있다. 도 16에 도시된 바와 같이, 논리부(260)는 부정 논리합(NOR) 게이트로 구현될 수 있다.
이와 같이, 래치들(242, 252)을 이용하여 프로그램 검증 결과를 누적할 수 있고, 누적 검증 결과 신호(APF)는 프로그램의 대상이 되는 오티피 메모리 셀들의 적어도 하나에 대하여 프로그램이 실패인 경우 제1 논리 레벨을 갖고 상기 오티피 메모리 셀들의 전부에 대하여 프로그램이 성공인 경우 제2 논리 레벨을 갖는 1비트 신호로 구현될 수 있다.
도 17은 본 발명의 실시예들에 따른 테스트 시간을 설명하기 위한 도면이다.
오티피 메모리 장치 및 이를 포함하는 반도체 집적 회로의 수율(yield) 향상을 위하여 1회의 프로그램에 그치지 않고 최대 프로그램 회수 이내에서 프로그램이 성공될 때까지 프로그램을 반복할 수 있다. 예를 들어, 도 7에 도시된 바와 같이, 1회의 프로그램으로 98%의 오티피 메모리 장치들이 성공적으로 프로그램되고, 2회의 프로그램으로 1.5%의 오티피 메모리 장치들이 성공적으로 프로그램되고, 3회의 프로그램으로 0.4%의 오티피 메모리 장치들이 성공적으로 프로그램되고, 4회의 프로그램으로 0.1%의 오티피 메모리 장치들이 성공적으로 프로그램될 수 있다. 이 경우, 최대 프로그램 횟수는 4회로 설정될 수 있다. 종래의 경우에는 오티피 메모리 장치 포함된 반도체 집적 회로의 내부에서 프로그램을 제어하므로 테스터의 입장에서는 프로그램의 완료 시점을 인지할 수 없으므로 실제 프로그램 시간과 무관하게 과도한 대기 시간이 소요된다. 본 발명의 실시예들에 따라서, 프로그램 검증 결과를 누적하여 테스터에 제공함으로써, 오티피 메모리 장치의 프로그램을 효율적으로 수행하고 오티피 메모리 장치를 포함하는 반도체 집적 회로의 테스트 시간을 감소할 수 있다.
도 18은 본 발명의 실시예들에 따른 오티피 메모리를 구비하는 메모리 장치를 나타내는 블록도이다.
도 18을 참조하면, 메모리 장치(500)는 제어 로직(505), 어드레스 버퍼부(550), 메모리 셀 어레이(540), 입/출력 회로(560) 및 오티피 메모리 장치(30)를 포함하여 구성될 수 있다.
제어 로직(505)은 커맨드 핀들(75)을 통하여 복수의 제어 신호들(70, /CS, /WE, /CAS, /RAS)을 수신하고, 어드레스 핀들(85)을 통하여 어드레스 신호(80, ADDR1~ADDRn)를 수신하여 수신된 제어 신호들(/CS, /WE, /CAS, /RAS)이 나타내는 커맨드 및 어드레스 신호(ADDR1~ADDRn)에 기초하여 메모리 셀 어레이(540)를 액세스하는 어드레스 디코더(530)를 제어한다. 또한 제어 로직(505)은 클럭 인에이블 신호(/CKE), 클럭 신호(CK) 및 반전 클럭 신호(/CK)를 수신할 수 있다.
어드레스 버퍼부(650)는 어드레스 핀들(85)을 통하여 어드레스 신호(80)를 수신하고 수신된 어드레스 신호(ADDR1~ADDRn)를 클럭 신호(CK) 또는 반전 클럭 신호(/CK)에 동기하여 제어 로직(500)과 어드레스 디코더(530)에 제공한다.
입/출력 회로(560)는 메모리 셀 어레이(540)에 데이터(90, DQ1~DQk)를 제공하거나 메모리 셀 어레이(540)로부터 데이터(DQ1~DQk)를 제공받아 입출력 핀들(95)을 통하여 외부로 제공한다.
제어 로직(505)은 커맨드 디코더(510) 및 모드 레지스터(520)를 포함한다. 커맨드 디코더(510)는 복수의 제어 신호들(20, /CS, /WE, /CAS, /RAS)이 나타내는 커맨드를 디코딩하여 모드 레지스터 셋(Mode register set; MRS) 커맨드(MRS_CMD)를 모드 레지스터(520)에 제공한다. 모드 레지스터(520)는 커맨드 디코더(510)로부터 제공받은 MRS 커맨드(MRS_CMD)에 응답하여 메모리 장치(500)의 동작 모드를 설정한다. 이러한 동작 모드는 MRS 모드, 테스트 모드 및 노멀 동작 모드 등을 포함할 수 있다.
테스트 모드에서 외부의 테스터(ATE)(50)는 오티피 메모리 장치(30)에 필요한 데이터를 프로그램할 수 있다. 프로그램된 데이터는 메모리 장치(500)의 동작을 제어하는 데 이용될 수 있다. 전술한 바와 같이, 오티피 메모리 장치(30)는 전술한 바와 같이 프로그램 검증 결과를 누적하기 위한 래치와 같은 누적부를 포함한다. 프로그램 검증 결과를 누적하여 테스터(50)에 제공함으로써, 오티피 메모리 장치(30)의 프로그램을 효율적으로 수행하고 오티피 메모리 장치를 포함하는 메모리 장치(500)의 테스트 시간을 감소할 수 있다.
도 19는 본 발명의 실시예들에 따른 오티피 메모리 장치를 모바일 시스템에 응용한 예를 나타내는 블록도이다.
도 19를 참조하면, 모바일 시스템(1200)은 어플리케이션 프로세서(1210), 통신(Connectivity)부(1220), 메모리 장치(1230), 비휘발성 메모리 장치(1240), 사용자 인터페이스(1250) 및 파워 서플라이(1260)를 포함한다. 실시예에 따라, 모바일 시스템(1200)은 휴대폰(Mobile Phone), 스마트 폰(Smart Phone), 개인 정보 단말기(Personal Digital Assistant; PDA), 휴대형 멀티미디어 플레이어(Portable Multimedia Player; PMP), 디지털 카메라(Digital Camera), 음악 재생기(Music Player), 휴대용 게임 콘솔(Portable Game Console), 네비게이션(Navigation) 시스템 등과 같은 임의의 모바일 시스템일 수 있다.
어플리케이션 프로세서(1210)는 인터넷 브라우저, 게임, 동영상 등을 제공하는 어플리케이션들을 실행할 수 있다. 실시예에 따라, 어플리케이션 프로세서(1210)는 하나의 프로세서 코어(Single Core)를 포함하거나, 복수의 프로세서 코어들(Multi-Core)을 포함할 수 있다. 예를 들어, 어플리케이션 프로세서(1210)는 듀얼 코어(Dual-Core), 쿼드 코어(Quad-Core), 헥사 코어(Hexa-Core) 등의 멀티 코어(Multi-Core)를 포함할 수 있다. 또한, 실시예에 따라, 어플리케이션 프로세서(1210)는 내부 또는 외부에 위치한 캐시 메모리(Cache Memory)를 더 포함할 수 있다.
통신부(1220)는 외부 장치와 무선 통신 또는 유선 통신을 수행할 수 있다. 예를 들어, 통신부(1220)는 이더넷(Ethernet) 통신, 근거리 자기장 통신(Near Field Communication; NFC), 무선 식별(Radio Frequency Identification; RFID) 통신, 이동 통신(Mobile Telecommunication), 메모리 카드 통신, 범용 직렬 버스(Universal Serial Bus; USB) 통신 등을 수행할 수 있다. 예를 들어, 통신부(1220)는 베이스밴드 칩 셋(Baseband Chipset)을 포함할 수 있고, GSM, GPRS, WCDMA, HSxPA 등의 통신을 지원할 수 있다.
메모리 장치(1230)는 어플리케이션 프로세서(1210)에 의해 처리되는 데이터를 저장하거나, 동작 메모리(Working Memory)로서 작동할 수 있다. 예를 들어, 메모리 장치(1230)는 DDR SDRAM, LPDDR SDRAM, GDDR SDRAM, RDRAM 등과 같은 동적 랜덤 액세스 메모리일 수 있다.
어플리케이션 프로세서(1210) 및/또는 메모리 장치(1230)는 오티피 메모리 장치(OTP)를 포함한다. 오티피 메모리 장치(OTP)는 전술한 바와 같이 프로그램 검증 결과를 누적하기 위한 래치와 같은 누적부를 포함한다. 프로그램 검증 결과를 누적하여 테스터와 같은 외부 장치에 제공함으로써, 오티피 메모리 장치(OTP)의 프로그램을 효율적으로 수행하고 오티피 메모리 장치를 포함하는 반도체 집적 회로의 테스트 시간을 감소할 수 있다.
비휘발성 메모리 장치(1240)는 모바일 시스템(1200)을 부팅하기 위한 부트 이미지를 저장할 수 있다. 예를 들어, 비휘발성 메모리 장치(1240)는 EEPROM(Electrically Erasable Programmable Read-Only Memory), 플래시 메모리(Flash Memory), PRAM(Phase Change Random Access Memory), RRAM(Resistance Random Access Memory), NFGM(Nano Floating Gate Memory), PoRAM(Polymer Random Access Memory), MRAM(Magnetic Random Access Memory), FRAM(Ferroelectric Random Access Memory) 또는 이와 유사한 메모리로 구현될 수 있다.
사용자 인터페이스(1250)는 키패드, 터치 스크린과 같은 하나 이상의 입력 장치, 및/또는 스피커, 디스플레이 장치와 같은 하나 이상의 출력 장치를 포함할 수 있다. 파워 서플라이(1260)는 모바일 시스템(1200)의 동작 전압을 공급할 수 있다. 또한, 실시예에 따라, 모바일 시스템(1200)은 카메라 이미지 프로세서(Camera Image Processor; CIS)를 더 포함할 수 있고, 메모리 카드(Memory Card), 솔리드 스테이트 드라이브(Solid State Drive; SSD), 하드 디스크 드라이브(Hard Disk Drive; HDD), 씨디롬(CD-ROM) 등과 같은 저장 장치를 더 포함할 수 있다.
모바일 시스템(1200) 또는 모바일 시스템(1200)의 구성요소들은 다양한 형태들의 패키지를 이용하여 실장될 수 있는데, 예를 들어, PoP(Package on Package), BGAs(Ball grid arrays), CSPs(Chip scale packages), PLCC(Plastic Leaded Chip Carrier), PDIP(Plastic Dual In-Line Package), Die in Waffle Pack, Die in Wafer Form, COB(Chip On Board), CERDIP(Ceramic Dual In-Line Package), MQFP(Plastic Metric Quad Flat Pack), TQFP(Thin Quad Flat-Pack), SOIC(Small Outline Integrated Circuit), SSOP(Shrink Small Outline Package), TSOP(Thin Small Outline Package), TQFP(Thin Quad Flat-Pack), SIP(System In Package), MCP(Multi Chip Package), WFP(Wafer-level Fabricated Package), WSP(Wafer-Level Processed Stack Package) 등과 같은 패키지들을 이용하여 실장될 수 있다.
도 20은 본 발명의 실시예들에 따른 오티피 메모리 장치를 컴퓨팅 시스템에 응용한 예를 나타내는 블록도이다.
도 20을 참조하면, 컴퓨팅 시스템(1300)은 프로세서(1310), 입출력 허브(1320), 입출력 컨트롤러 허브(1330), 적어도 하나의 메모리 모듈(1340) 및 그래픽 카드(1350)를 포함한다. 실시예에 따라, 컴퓨팅 시스템(1300)은 개인용 컴퓨터(Personal Computer; PC), 서버 컴퓨터(Server Computer), 워크스테이션(Workstation), 노트북(Laptop), 휴대폰(Mobile Phone), 스마트 폰(Smart Phone), 개인 정보 단말기(personal digital assistant; PDA), 휴대형 멀티미디어 플레이어(portable multimedia player; PMP), 디지털 카메라(Digital Camera), 디지털 TV(Digital Television), 셋-탑 박스(Set-Top Box), 음악 재생기(Music Player), 휴대용 게임 콘솔(portable game console), 네비게이션(Navigation) 시스템 등과 같은 임의의 컴퓨팅 시스템일 수 있다.
프로세서(1310)는 특정 계산들 또는 태스크들과 같은 다양한 컴퓨팅 기능들을 실행할 수 있다. 예를 들어, 프로세서(1310)는 마이크로프로세서 또는 중앙 처리 장치(Central Processing Unit; CPU)일 수 있다. 실시예에 따라, 프로세서(1310)는 하나의 프로세서 코어(Single Core)를 포함하거나, 복수의 프로세서 코어들(Multi-Core)을 포함할 수 있다. 예를 들어, 프로세서(1310)는 듀얼 코어(Dual-Core), 쿼드 코어(Quad-Core), 헥사 코어(Hexa-Core) 등의 멀티 코어(Multi-Core)를 포함할 수 있다. 또한, 도 20에는 하나의 프로세서(1310)를 포함하는 컴퓨팅 시스템(1300)이 도시되어 있으나, 실시예에 따라, 컴퓨팅 시스템(1300)은 복수의 프로세서들을 포함할 수 있다. 또한, 실시예에 따라, 프로세서(1310)는 내부 또는 외부에 위치한 캐시 메모리(Cache Memory)를 더 포함할 수 있다.
프로세서(1310)는 메모리 모듈(1340)의 동작을 제어하는 메모리 컨트롤러(1311)를 포함할 수 있다. 프로세서(1310)에 포함된 메모리 컨트롤러(1311)는 집적 메모리 컨트롤러(Integrated Memory Controller; IMC)라 불릴 수 있다. 메모리 컨트롤러(1311)와 메모리 모듈(1340) 사이의 메모리 인터페이스는 복수의 신호선들을 포함하는 하나의 채널로 구현되거나, 복수의 채널들로 구현될 수 있다. 또한, 각 채널에는 하나 이상의 메모리 모듈(1340)이 연결될 수 있다. 실시예에 따라, 메모리 컨트롤러(1311)는 입출력 허브(1320) 내에 위치할 수 있다. 메모리 컨트롤러(1311)를 포함하는 입출력 허브(1520)는 메모리 컨트롤러 허브(Memory Controller Hub; MCH)라 불릴 수 있다. 메모리 모듈(1340)은 메모리 컨트롤러(1311)로부터 제공된 데이터를 저장하는 복수의 메모리 장치들을 포함할 수 있다.
프로세서(1310) 및 메모리 모듈(1340)의 상기 메모리 장치들은 오티피 메모리 장치(OTP)를 포함한다. 오티피 메모리 장치(OTP)는 전술한 바와 같이 프로그램 검증 결과를 누적하기 위한 래치와 같은 누적부를 포함한다. 프로그램 검증 결과를 누적하여 테스터와 같은 외부 장치에 제공함으로써, 오티피 메모리 장치(OTP)의 프로그램을 효율적으로 수행하고 오티피 메모리 장치를 포함하는 반도체 집적 회로의 테스트 시간을 감소할 수 있다.
입출력 허브(1320)는 그래픽 카드(1350)와 같은 장치들과 프로세서(1310) 사이의 데이터 전송을 관리할 수 있다. 입출력 허브(1320)는 다양한 방식의 인터페이스를 통하여 프로세서(1510)에 연결될 수 있다. 예를 들어, 입출력 허브(1320)와 프로세서(1310)는, 프론트 사이드 버스(Front Side Bus; FSB), 시스템 버스(System Bus), 하이퍼트랜스포트(HyperTransport), 라이트닝 데이터 트랜스포트(Lightning Data Transport; LDT), 퀵패스 인터커넥트(QuickPath Interconnect; QPI), 공통 시스템 인터페이스(Common System Interface; CSI) 등의 다양한 표준의 인터페이스로 연결될 수 있다. 도 20에는 하나의 입출력 허브(1320)를 포함하는 컴퓨팅 시스템(1300)이 도시되어 있으나, 실시예에 따라, 컴퓨팅 시스템(1300)은 복수의 입출력 허브들을 포함할 수 있다.
입출력 허브(1320)는 장치들과의 다양한 인터페이스들을 제공할 수 있다. 예를 들어, 입출력 허브(1320)는 가속 그래픽 포트(Accelerated Graphics Port; AGP) 인터페이스, 주변 구성요소 인터페이스-익스프레스(Peripheral Component Interface-Express; PCIe), 통신 스트리밍 구조(Communications Streaming Architecture; CSA) 인터페이스 등을 제공할 수 있다.
그래픽 카드(1350)는 AGP 또는 PCIe를 통하여 입출력 허브(1320)와 연결될 수 있다. 그래픽 카드(1350)는 영상을 표시하기 위한 디스플레이 장치(미도시)를 제어할 수 있다. 그래픽 카드(1350)는 이미지 데이터 처리를 위한 내부 프로세서 및 내부 반도체 메모리 장치를 포함할 수 있다. 실시예에 따라, 입출력 허브(1320)는, 입출력 허브(1320)의 외부에 위치한 그래픽 카드(1350)와 함께, 또는 그래픽 카드(1350) 대신에 입출력 허브(1320)의 내부에 그래픽 장치를 포함할 수 있다. 입출력 허브(1520)에 포함된 그래픽 장치는 집적 그래픽(Integrated Graphics)이라 불릴 수 있다. 또한, 메모리 컨트롤러 및 그래픽 장치를 포함하는 입출력 허브(1320)는 그래픽 및 메모리 컨트롤러 허브(Graphics and Memory Controller Hub; GMCH)라 불릴 수 있다.
입출력 컨트롤러 허브(1330)는 다양한 시스템 인터페이스들이 효율적으로 동작하도록 데이터 버퍼링 및 인터페이스 중재를 수행할 수 있다. 입출력 컨트롤러 허브(1330)는 내부 버스를 통하여 입출력 허브(1320)와 연결될 수 있다. 예를 들어, 입출력 허브(1320)와 입출력 컨트롤러 허브(1330)는 다이렉트 미디어 인터페이스(Direct Media Interface; DMI), 허브 인터페이스, 엔터프라이즈 사우스브릿지 인터페이스(Enterprise Southbridge Interface; ESI), PCIe 등을 통하여 연결될 수 있다.
입출력 컨트롤러 허브(1330)는 주변 장치들과의 다양한 인터페이스들을 제공할 수 있다. 예를 들어, 입출력 컨트롤러 허브(1330)는 범용 직렬 버스(Universal Serial Bus; USB) 포트, 직렬 ATA(Serial Advanced Technology Attachment; SATA) 포트, 범용 입출력(General Purpose Input/Output; GPIO), 로우 핀 카운트(Low Pin Count; LPC) 버스, 직렬 주변 인터페이스(Serial Peripheral Interface; SPI), PCI, PCIe 등을 제공할 수 있다.
실시예에 따라, 프로세서(1310), 입출력 허브(1320) 및 입출력 컨트롤러 허브(1330)는 각각 분리된 칩셋들 또는 집적 회로들로 구현되거나, 프로세서(1310), 입출력 허브(1320) 또는 입출력 컨트롤러 허브(1330) 중 2 이상의 구성요소들이 하나의 칩셋으로 구현될 수 있다.
이와 같이 본 발명의 실시예들에 따른 오티피 메모리 장치의 프로그램 방법 및 오티피 메모리 장치를 포함하는 반도체 집적 회로의 테스트 방법은, 비교적 작은 사이즈의 누적부를 이용하여 프로그램 검증 결과를 누적하여 테스터와 같은 외부 장치에 제공함으로써, 오티피 메모리 장치의 프로그램을 효율적으로 수행하고 오티피 메모리 장치를 포함하는 반도체 집적 회로의 테스트 시간을 감소할 수 있다.
본 발명의 실시예들은 불휘발성 데이터를 저장하기 위하여 오티피 메모리 장치가 요구되는 장치 및 시스템에 유용하게 이용될 수 있다. 특히 메모리 카드, 솔리드 스테이트 드라이브(Solid State Drive; SSD), 컴퓨터(computer), 노트북(laptop), 핸드폰(cellular), 스마트폰(smart phone), MP3 플레이어, 피디에이(Personal Digital Assistants; PDA), 피엠피(Portable Multimedia Player; PMP), 디지털 TV, 디지털 카메라, 포터블 게임 콘솔(portable game console) 등과 같은 전자 기기에 더욱 유용하게 적용될 수 있다.
상기에서는 본 발명이 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.
PGM: 프로그램 명령
APF: 누적 검증 결과 신호
CPF: 현재 검증 결과 신호
CPAD: 현재 프로그램 어드레스
170, 171, 172, 173: 검증부
200, 210, 220, 230: 누적부
MSA: 메인 서브 어레이
RSA: 리던던트 서브 어레이

Claims (10)

  1. 테스터로부터 오티피(OTP: One-Time Programmable) 메모리 장치를 포함하는 반도체 집적 회로로 프로그램 명령을 전달하는 단계;
    상기 오티피 메모리 장치에서, 상기 프로그램 명령에 응답하여 상기 오티피 메모리 장치의 복수의 오티피 메모리 셀들에 대하여 프로그램 및 프로그램 검증을 수행하는 단계;
    상기 오티피 메모리 장치에서, 상기 오티피 메모리 셀들에 대하여 프로그램 검증 결과를 누적하여 누적 검증 결과 신호를 발생하는 단계;
    상기 오티피 메모리 장치로부터 상기 테스터로 상기 누적 검증 결과 신호를 전달하는 단계; 및
    상기 테스터에서, 상기 누적 검증 결과 신호에 기초하여 상기 오티피 메모리 장치의 재프로그램 여부를 결정하는 단계를 포함하는 반도체 집적 회로의 테스트 방법.
  2. 제1 항에 있어서,
    상기 누적 검증 결과 신호는 상기 오티피 메모리 셀들의 적어도 하나에 대하여 프로그램이 실패인 경우 제1 논리 레벨을 갖고 상기 오티피 메모리 셀들의 전부에 대하여 프로그램이 성공인 경우 제2 논리 레벨을 갖는 1비트 신호인 것을 특징으로 하는 반도체 집적 회로의 테스트 방법.
  3. 제1 항에 있어서,
    상기 오티피 메모리 장치의 재프로그램 여부를 결정하는 단계는,
    상기 누적 검증 결과 신호가 제1 논리 레벨을 갖는 경우, 현재 프로그램 카운트와 최대 프로그램 카운트를 비교하는 단계;
    상기 현재 프로그램 카운트가 상기 최대 프로그램 카운트보다 작은 경우, 상기 테스터로부터 상기 반도체 집적 회로로 상기 프로그램 명령을 다시 전달하는 단계; 및
    상기 현재 프로그램 카운트가 상기 최대 프로그램 카운트와 같은 경우, 상기 오티피 메모리 장치의 프로그램이 실패인 것으로 처리하는 단계를 포함하는 것을 특징으로 하는 반도체 집적 회로의 테스트 방법.
  4. 제3 항에 있어서,
    상기 오티피 메모리 장치의 재프로그램 여부를 결정하는 단계는,
    상기 누적 검증 결과 신호가 제2 논리 레벨을 갖는 경우, 상기 오티피 메모리 장치의 프로그램이 성공적으로 완료된 것으로 처리하는 단계를 더 포함하는 것을 특징으로 하는 반도체 집적 회로의 테스트 방법.
  5. 제1 항에 있어서,
    상기 누적 검증 결과 신호를 발생하는 단계는,
    래치를 이용하여 상기 프로그램 검증 결과를 누적하는 단계를 포함하는 것을 특징으로 하는 반도체 집적 회로의 테스트 방법.
  6. 제1 항에 있어서,
    현재 프로그램 어드레스를 변경하면서 순차적으로 상기 프로그램, 상기 프로그램 검증 및 상기 프로그램 검증 결과 누적을 수행하는 것을 특징으로 하는 반도체 집적 회로의 테스트 방법.
  7. 제6 항에 있어서,
    상기 누적 검증 결과 신호를 발생하는 단계는,
    상기 현재 프로그램 어드레스에 대한 상기 프로그램 검증 결과를 나타내는 현재 검증 결과 신호 및 상기 누적 검증 결과 신호에 상응하는 래치의 저장 값을 논리 연산하는 단계; 및
    상기 논리 연산의 결과에 기초하여 상기 래치의 저장 값을 갱신하는 단계를 포함하는 것을 특징으로 하는 반도체 집적 회로의 테스트 방법.
  8. 제1 항에 있어서,
    상기 복수의 오티피 메모리 셀들은 복수의 메인 셀들 및 복수의 리던던트 셀들을 포함하고, 동일한 어드레스에 상응하는 하나의 메인 셀 및 하나의 리던던트 셀이 1비트를 나타내는 것을 특징으로 하는 반도체 집적 회로의 테스트 방법.
  9. 제8 항에 있어서,
    상기 누적 검증 결과 신호를 발생하는 단계는,
    상기 메인 셀들에 대하여 프로그램 검증 결과를 누적하여 메인 누적 신호를 발생하는 단계;
    상기 리던던트 셀들에 대하여 프로그램 검증 결과를 누적하여 리던던트 누적 신호를 발생하는 단계; 및
    상기 메인 누적 신호 및 상기 리던던트 누적 신호를 논리 연산하여 상기 누적 검증 결과 신호를 발생하는 단계를 포함하는 것을 특징으로 하는 반도체 집적 회로의 테스트 방법.
  10. 제9 항에 있어서,
    상기 메인 누적 신호 및 상기 리던던트 누적 신호 중 적어도 하나가 프로그램 성공을 나타내는 경우 상기 누적 프로그램 검증 결과 신호는 프로그램 성공을 나타내는 것을 특징으로 하는 반도체 집적 회로의 테스트 방법.
KR1020150109466A 2015-08-03 2015-08-03 오티피 메모리 장치의 프로그램 방법 및 이를 포함하는 반도체 집적 회로의 테스트 방법 KR20170016108A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150109466A KR20170016108A (ko) 2015-08-03 2015-08-03 오티피 메모리 장치의 프로그램 방법 및 이를 포함하는 반도체 집적 회로의 테스트 방법
US15/099,902 US9754678B2 (en) 2015-08-03 2016-04-15 Method of programming one-time programmable (OTP) memory device and method of testing semiconductor integrated circuit including the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150109466A KR20170016108A (ko) 2015-08-03 2015-08-03 오티피 메모리 장치의 프로그램 방법 및 이를 포함하는 반도체 집적 회로의 테스트 방법

Publications (1)

Publication Number Publication Date
KR20170016108A true KR20170016108A (ko) 2017-02-13

Family

ID=58053743

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150109466A KR20170016108A (ko) 2015-08-03 2015-08-03 오티피 메모리 장치의 프로그램 방법 및 이를 포함하는 반도체 집적 회로의 테스트 방법

Country Status (2)

Country Link
US (1) US9754678B2 (ko)
KR (1) KR20170016108A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170100724A (ko) * 2016-02-26 2017-09-05 삼성전자주식회사 메모리 장치 진단 시스템
KR20180135365A (ko) * 2017-06-12 2018-12-20 삼성전자주식회사 오티피 메모리 셀을 포함하는 메모리 장치 및 그것의 프로그램 방법

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106293747A (zh) * 2016-08-12 2017-01-04 京东方科技集团股份有限公司 电子设备以及电子设备的驱动方法
CN110392838B (zh) * 2017-03-07 2022-02-18 斯坦福国际研究院 用于集成电路的设备、系统和方法
CN106875974B (zh) * 2017-03-16 2023-12-12 成都信息工程大学 一种otp存储装置以及访问otp存储器的方法
CN106952665B (zh) * 2017-03-16 2023-07-14 成都信息工程大学 一种访问otp存储器的电路
KR102524804B1 (ko) * 2019-01-04 2023-04-24 삼성전자주식회사 원-타임 프로그램가능한 메모리 셀, 및 이를 구비하는 otp 메모리 및 메모리 시스템
US11145344B1 (en) * 2020-08-06 2021-10-12 Synopsys, Inc. One time programmable anti-fuse physical unclonable function
CN114078548A (zh) * 2020-08-18 2022-02-22 上海华力微电子有限公司 可编程存储器
US11783905B2 (en) * 2020-12-18 2023-10-10 Ememory Technology Inc. Anti-fuse memory device, memory array, and programming method of an anti-fuse memory device for preventing leakage current and program disturbance
US11495313B1 (en) 2021-09-01 2022-11-08 Nuvoton Technology Corporation Fail-safe IC production testing

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4282529B2 (ja) 2004-04-07 2009-06-24 株式会社東芝 半導体集積回路装置及びそのプログラム方法
JP4302049B2 (ja) 2004-12-17 2009-07-22 株式会社東芝 不揮発性半導体記憶装置
KR100816160B1 (ko) 2005-12-15 2008-03-21 주식회사 하이닉스반도체 원 타임 프로그래머블 메모리 소자 및 프로그램 방법
US7508693B2 (en) 2006-03-24 2009-03-24 Macronix International Co., Ltd. One-time-programmable (OTP) memory device and method for testing the same
EP2814037B1 (en) 2006-12-22 2016-10-26 Sidense Corp. Power up test system for a memory device
TWI430275B (zh) 2008-04-16 2014-03-11 Magnachip Semiconductor Ltd 用於程式化非揮發性記憶體裝置之方法
CA2690237C (en) 2009-02-06 2011-03-15 Sidense Corp. High reliability otp memory
US8254186B2 (en) * 2010-04-30 2012-08-28 Freescale Semiconductor, Inc. Circuit for verifying the write enable of a one time programmable memory
US8508972B2 (en) * 2010-07-23 2013-08-13 Analog Devices, Inc. Built-in self test for one-time-programmable memory
US8913449B2 (en) 2012-03-11 2014-12-16 Shine C. Chung System and method of in-system repairs or configurations for memories
US8917533B2 (en) 2012-02-06 2014-12-23 Shine C. Chung Circuit and system for testing a one-time programmable (OTP) memory
KR20140110579A (ko) 2013-03-08 2014-09-17 창원대학교 산학협력단 이퓨즈 otp 메모리 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170100724A (ko) * 2016-02-26 2017-09-05 삼성전자주식회사 메모리 장치 진단 시스템
KR20180135365A (ko) * 2017-06-12 2018-12-20 삼성전자주식회사 오티피 메모리 셀을 포함하는 메모리 장치 및 그것의 프로그램 방법

Also Published As

Publication number Publication date
US9754678B2 (en) 2017-09-05
US20170040067A1 (en) 2017-02-09

Similar Documents

Publication Publication Date Title
US9754678B2 (en) Method of programming one-time programmable (OTP) memory device and method of testing semiconductor integrated circuit including the same
KR102274259B1 (ko) 멀티 비트 프로그램을 위한 오티피 메모리 셀 및 오티피 메모리 장치
KR102116980B1 (ko) 리던던시 메모리 셀의 리프레쉬 동작을 제어하는 반도체 메모리 장치
US9870293B2 (en) Memory device performing post package repair (PPR) operation
US10235258B2 (en) Memory device capable of quickly repairing fail cell
US9727412B2 (en) Memory device having error notification function
US9646718B2 (en) Semiconductor memory device having selective ECC function
US10199118B2 (en) One-time programmable (OTP) memory device for reading multiple fuse bits
KR102048765B1 (ko) 메모리 시스템의 동작 방법 및 메모리 시스템
KR101878972B1 (ko) 안티퓨즈 선택 방법 및 안티퓨즈 모니터링 방법
US20150043288A1 (en) Semiconductor memory device having fuse cell array
US9362004B2 (en) Semiconductor device, semiconductor memory device and memory system
KR20080102635A (ko) 불휘발성 반도체 메모리 장치 및 그것의 프로그램 방법
US8918683B2 (en) One-time program cell array circuit and memory device including the same
KR20140100139A (ko) 보호 영역을 갖는 오티피 셀 어레이, 이를 포함하는 반도체 메모리 장치, 및 오티피 셀 어레이의 프로그램 방법
US20150049546A1 (en) Method of programming fuse cells and repairing memory device using the programmed fuse cells
US9489147B2 (en) Semiconductor device, memory device, and system including the same
US9589669B1 (en) Semiconductor devices and semiconductor systems
US9507663B1 (en) Memory device and operation method

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right