KR20160030925A - 반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법 - Google Patents

반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법 Download PDF

Info

Publication number
KR20160030925A
KR20160030925A KR1020160027275A KR20160027275A KR20160030925A KR 20160030925 A KR20160030925 A KR 20160030925A KR 1020160027275 A KR1020160027275 A KR 1020160027275A KR 20160027275 A KR20160027275 A KR 20160027275A KR 20160030925 A KR20160030925 A KR 20160030925A
Authority
KR
South Korea
Prior art keywords
bit
memory cell
resistor
resistive memory
write
Prior art date
Application number
KR1020160027275A
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 KR1020160027275A priority Critical patent/KR20160030925A/ko
Publication of KR20160030925A publication Critical patent/KR20160030925A/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure

Landscapes

  • Read Only Memory (AREA)

Abstract

반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법이 개시된다. 상기 저항성 메모리 셀의 프로그램 방법은 제1 기준 저항값에 기초하여 메모리 셀에 저장되는 데이터의 제1 비트를 기입하는 단계; 및 제2 기준 저항값에 기초하여 상기 데이터의 제2 비트를 기입하는 단계를 포함할 수 있다.

Description

반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법{Semiconductor device, semiconductor system having the same, and programming method of resistive memory cell}
본 발명은 반도체 장치에 관한 것으로, 보다 상세하게는 프로그램을 빠르게 할 수 있는 반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법에 관한 것이다.
메모리는 휘발성 메모리와 불휘발성 메모리로 분류된다. DRAM과 SRAM은 휘발성 메모리이고, 플래시 메모리, 저항성 메모리, 및 상 변화 메모리는 불휘발성 메모리이다. 저항성 메모리(resistive memory)는 데이터의 한 비트 또는 그 이상의 비트들을 저장하기 위하여 메모리 소자의 저항값을 이용한다.
따라서, 본 발명이 이루고자 하는 기술적 과제는 프로그램을 빠르게 할 수 있는 반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법을 제공하는 것이다.
상기 기술적 과제를 해결하기 위한 반도체 장치의 프로그램 방법은, 제1 기준 저항값에 기초하여 메모리 셀에 저장되는 데이터의 제1 비트를 기입하는 단계; 및 제2 기준 저항값에 기초하여 상기 데이터의 제2 비트를 기입하는 단계를 포함할 수 있다.
상기 제2 기준 저항값은 상기 제1 기준 저항값보다 크거나 작을 수 있다.
상기 제1 비트는 상기 데이터의 상위비트이고, 상기 제2 비트는 상기 데이터의 하위비트일 수 있다.
상기 제1 비트는 제1 및 제2 저항 산포에 기초하여 기입되고, 상기 제2 비트는 제3 내지 제6 저항 산포에 기초하여 기입되며, 상기 제1 및 제2 저항 산포는 상기 제1 기준 저항값을 기준으로 좌우로 배치되고, 상기 제3 저항 산포는 상기 제1 저항 산포의 최소값을 포함하고, 상기 제4 저항 산포는 상기 제1 저항 산포의 최대값을 포함하고, 상기 제5 저항 산포는 상기 제2 저항 산포의 최소값을 포함하고, 상기 제6 저항 산포는 상기 제2 저항 산포의 최대값을 포함할 수 있다.
상기 제1 비트는 제1 및 제2 저항 산포에 기초하여 기입되고, 상기 제2 비트는 상기 제1 및 제2 저항 산포와 제3 및 제4 저항 산포에 기초하여 기입되며, 상기 제3 저항 산포는 제1 저항 산포의 최대값과 상기 제1 기준 저항값 사이에 위치하고, 상기 제4 저항 산포는 상기 제1 기준 저항값과 제2 저항 산포의 최소값 사이에 위치할 수 있다.
상기 제1 비트는 제1 및 제2 저항 산포에 기초하여 기입되고, 상기 제2 비트는 상기 제1 및 제2 저항 산포와 제3 및 제4 저항 산포에 기초하여 기입되며, 상기 제1 및 제2 저항 산포는 상기 제1 기준 저항값을 기준으로 좌우로 배치되고, 상기 제3 저항 산포의 최대값은 상기 제1 저항 산포의 최소값보다 작고, 상기 제4 저항 산포의 최소값은 상기 제2 저항 산포의 최대값보다 클 수 있다.
상기 제1 비트는 제1 및 제2 저항 산포에 기초하여 기입되고, 상기 제2 비트는 상기 제1 및 제2 저항 산포와 제3 및 제4 저항 산포에 기초하여 기입되며, 상기 제1 및 제2 저항 산포는 상기 제1 기준 저항값을 기준으로 좌우로 배치되고, 상기 제3 저항 산포의 최소값은 상기 제1 저항 산포의 최대값보다 크고 상기 제1 기준 저항값 보다 작으며, 상기 제4 저항 산포의 최소값은 상기 제2 저항 산포의 최대값보다 클 수 있다.
상기 제1 비트는 제1 및 제2 저항 산포에 기초하여 기입되고, 상기 제2 비트는 상기 제1 및 제2 저항 산포와 제3 및 제4 저항 산포에 기초하여 기입되며, 상기 제1 및 제2 저항 산포는 상기 제1 기준 저항값을 기준으로 좌우로 배치되고, 상기 제3 저항 산포의 최대값은 상기 제1 저항 산포의 최소값보다 작고, 상기 제4 저항 산포는 상기 제1 기준 저항값과 상기 제2 저항 산포의 최소값 사이에 위치할 수 있다.
상기 메모리 셀의 상기 프로그램 방법은, 상기 제1 비트를 기입하는 단계 후에, 제1 검증전압을 이용하여 상기 제1 비트의 기입검증을 수행하는 단계를 더 포함할 수 있다.
상기 메모리 셀의 상기 프로그램 방법은, 상기 제2 비트를 기입하는 단계 후에, 제2 검증전압을 이용하여 상기 제2 비트의 기입검증을 수행하는 단계를 더 포함할 수 있다.
상기 제1 비트를 기입하는 단계는, 상기 제1 비트의 값을 제1 논리레벨로 기입하는 갖는 경우 상기 메모리 셀의 저항값을 상기 제1 기준 저항값보다 작게하고, 상기 제1 비트의 값을 제2 논리레벨로 기입하는 경우 상기 메모리 셀의 저항값을 상기 제1 기준 저항값보다 크게할 수 있다.
상기 제2 비트를 기입하는 단계는, 상기 제2 비트의 값을 상기 제1 논리레벨로 기입하는 경우 상기 메모리 셀의 저항값을 상기 제2 기준 저항값보다 작고 상기 제1 기준저항보다 작게하고, 상기 제2 비트의 값을 상기 제2 논리레벨로 기입하는 경우 상기 메모리셀의 상기 저항값을 상기 제2 기준저항보다 크게할 수 있다.
상기 메모리 셀은 각각이 상기 제1 비트 및 상기 제2 비트로 구성되는 제1 내지 제4 데이터 중에서 어느 하나의 데이터를 저장하며, 상기 제1 내지 제4 데이터 각각의 저항 산포는 순차적으로 증가하는 순으로 위치하고, 상기 제1 내지 제4 데이터는 다음의 표 1에서 제1 케이스 내지 제8 케이스 중에서 어느 하나의 케이스의 데이터와 상응할 수 있다.
제1 데이터 제2 데이터 제3 데이터 제4 데이터
제1 케이스 00 10 01 11
제2 케이스 10 00 01 11
제3 케이스 00 10 11 01
제4 케이스 10 00 11 01
제5 케이스 01 11 00 10
제6 케이스 11 01 00 10
제7 케이스 01 11 10 00
제8 케이스 11 01 10 00
상기 반도체 장치의 프로그램 방법은, 제3 기준 저항값에 기초하여 상기 메모리 셀에 저장되는 데이터의 제3 비트를 기입하는 단계를 더 포함하며, 상기 제3 기준 저항값은 상기 제1 기준 저항값 또는 상기 제2 기준 저항값보다 크거나 작을 수 있다.
상기 제1 비트는 상기 데이터의 최상위 비트이고, 상기 제3 비트는 최하위비트일 수 있고, 상기 메모리 셀은, 저항성 메모리 셀일 수 있다.
상기 기술적 과제를 해결하기 위한 반도체 장치는, 적어도 하나의 메모리 셀을 포함하는 메모리 셀 어레이; 및 제1 기준 저항값에 기초하여 상기 적어도 하나의 메모리 셀에 저장되는 데이터의 제1 비트를 기입하고, 제2 기준 저항값에 기초하여 상기 데이터의 제2 비트를 기입하는 기입회로를 포함할 수 있다.
상기 기입회로는, 제1 및 제2 저항 산포에 기초하여 상기 제1 비트를 기입하고, 제3 내지 제6 저항 산포에 기초하여 상기 제2 비트를 기입하며, 상기 제1 및 제2 저항 산포는 상기 제1 기준 저항값을 기준으로 좌우로 배치되고, 상기 제3 저항 산포는 상기 제1 저항 산포의 최소값을 포함하고, 상기 제4 저항 산포는 상기 제1 저항 산포의 최대값을 포함하고, 상기 제5 저항 산포는 상기 제2 저항 산포의 최소값을 포함하고, 상기 제6 저항 산포는 상기 제2 저항 산포의 최대값을 포함할 수 있다.
상기 기입회로는, 제1 및 제2 저항 산포에 기초하여 상기 제1 비트를 기입하고, 상기 제1 및 제2 저항 산포와 제3 및 제4 저항 산포에 기초하여 상기 제2 비트를 기입하며, 상기 제3 저항 산포는 제1 저항 산포의 최대값과 상기 제1 기준 저항값 사이에 위치하고, 상기 제4 저항 산포는 상기 제1 기준 저항값과 제2 저항 산포의 최소값 사이에 위치할 수 있다.
상기 기입회로는, 제1 및 제2 저항 산포에 기초하여 상기 제1 비트를 기입하고, 상기 제1 및 제2 저항 산포와 제3 및 제4 저항 산포에 기초하여 상기 제2 비트를 기입하며, 상기 제1 및 제2 저항 산포는 상기 제1 기준 저항값을 기준으로 좌우로 배치되고, 상기 제3 저항 산포의 최대값은 상기 제1 저항 산포의 최소값보다 작고, 상기 제4 저항 산포의 최소값은 상기 제2 저항 산포의 최대값보다 클 수 있다.
상기 기입회로는, 제1 및 제2 저항 산포에 기초하여 상기 제1 비트를 기입하고, 상기 제1 및 제2 저항 산포와 제3 및 제4 저항 산포에 기초하여 상기 제2 비트를 기입하며, 상기 제1 및 제2 저항 산포는 상기 제1 기준 저항값을 기준으로 좌우로 배치되고, 상기 제3 저항 산포의 최소값은 상기 제1 저항 산포의 최대값보다 크고 상기 제1 기준 저항값 보다 작으며, 상기 제4 저항 산포의 최소값은 상기 제2 저항 산포의 최대값보다 클 수 있다.
상기 기입회로는, 제1 및 제2 저항 산포에 기초하여 상기 제1 비트를 기입하고, 상기 제1 및 제2 저항 산포와 제3 및 제4 저항 산포에 기초하여 상기 제2 비트를 기입하며, 상기 제1 및 제2 저항 산포는 상기 제1 기준 저항값을 기준으로 좌우로 배치되고, 상기 제3 저항 산포의 최대값은 상기 제1 저항 산포의 최소값보다 작고, 상기 제4 저항 산포는 상기 제1 기준 저항값과 상기 제2 저항 산포의 최소값 사이에 위치할 수 있다.
상기 반도체 메모리 장치는, 상기 기입회로의 상기 제1 비트의 기입이 끝난후에, 제1 검증전압을 이용하여 상기 제1 비트의 기입검증을 수행하는 독출회로를 더 포함할 수 있다.
상기 반도체 시스템은 상기 반도체 장치와 상기 프로세서에 동작 전원을 공급하기 위한 배터리를 더 포함할 수 있으며, 상기 반도체 시스템은 상기 프로세서와 접속된 무선 인터페이스를 더 포함할 수 있다.
상기 반도체 시스템은 상기 프로세서와 접속된 입/출력 (I/O) 인터페이스를 더 포함할 수 있으며, 상기 반도체 시스템은 상기 프로세서와 접속된 이미지 센서를 더 포함할 수 있다.
본 발명의 실시 예에 따른 반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법은 프로그램을 빠르게 할 수 있는 효과가 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 실시 예에 따른 반도체 장치의 개념적인 블록도를 나타낸다.
도 2는 도 1에 도시된 메모리 셀블록의 회로도이다.
도 3은 도 2의 "W" 부분에 대한 상세 회로도이다.
도 4는 본 발명의 제1 실시 예에 따른 메모리 셀의 프로그램을 위한 저항 산포도이다.
도 5는 도 4의 저항 산포도에 기초하여 메모리 셀이 프로그램되는 과정을 설명하기 위한 도면이다.
도 6은 본 발명의 제2 실시 예에 따른 메모리 셀의 프로그램을 위한 저항 산포도이다.
도 7은 도 6의 저항 산포도에 기초하여 메모리 셀이 프로그램되는 과정을 설명하기 위한 도면이다.
도 8은 본 발명의 제3 실시 예에 따른 메모리 셀의 프로그램을 위한 저항 산포도이다.
도 9는 도 8의 저항 산포도에 기초하여 메모리 셀이 프로그램되는 과정을 설명하기 위한 도면이다.
도 10은 본 발명의 제4 실시 예에 따른 메모리 셀의 프로그램을 위한 저항 산포도이다.
도 11은 도 10의 저항 산포도에 기초하여 메모리 셀이 프로그램되는 과정을 설명하기 위한 도면이다.
도 12는 본 발명의 제5 실시 예에 따른 메모리 셀의 프로그램을 위한 저항 산포도이다.
도 13은 도 12의 저항 산포도에 기초하여 메모리 셀이 프로그램되는 과정을 설명하기 위한 도면이다.
도 14는 본 발명의 실시 예에 따른 메모리 셀에 기입될 수 있는 데이터의 케이스를 나타낸다.
도 15는 본 발명의 제7 실시 예에 따른 메모리 셀의 프로그램을 위한 저항 산포도이다.
도 16은 본 발명의 실시 예에 따른 반도체 장치를 포함하는 반도체 시스템의 개략적인 블록 도를 나타낸다.
도 17은 본 발명의 실시 예에 따른 반도체 장치의 프로그램 방법을 설명하기 위한 흐름도이다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시 예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
본 명세서에 있어서 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다.
반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 실시 예에 따른 반도체 장치의 개념적인 블록도를 나타내고, 도 2는 도 1에 도시된 메모리 셀블록의 회로도이고, 도 3은 도 2의 "W" 부분에 대한 상세 회로도이다.
도 1 내지 도 3을 참조하면, 반도체 장치(10)는 메모리 셀 블록(12), 메인 컬럼 디코더(14), 메인 로우 디코더(16), 주변회로(18), 및 내부 제어회로(20), I/O 버퍼(22), 어드레스 레지스터(24), 스테이터스 레지스터(26), 데이터 버스(28), 고전압 발생부(30), 및 외부콘트롤러(32)를 포함할 수 있다.
이때, 메인 로우 디코더(16) 및 메인 컬럼 디코더(14)는 메모리 셀 블록(12) 내에 위치할 수 있으며, 외부콘트롤러(32)를 제외한 반도체 장치(10)는 하나의 메모리 칩으로 구현될 수 있다.
메모리 셀 블록(12)은 도 2와 같이 적어도 하나의 메모리 셀 어레이(40), 적어도 하나의 로우 디코더(41), 적어도 하나의 컬럼 디코더(43), 적어도 하나의 기입/ 독출 회로(56)를 포함할 수 있다.
메모리 셀 어레이(40)는 다수의 비트 라인들(BLi, i는 자연수), 다수의 워드 라인들(WLj, j는 자연수), 및 다수의 저항성 메모리 셀들(50)을 포함할 수 있다.
다수의 저항성 메모리 셀들(50) 각각은 데이터의 한 비트 또는 그 이상의 비트들을 저장하기 위하여 저항성 메모리 소자(51)의 저항값을 이용할 수 있다.
예컨대, 고 저항값을 갖도록 프로그램된 저항성 메모리 소자(51)는 논리 "1" 데이터 비트 값을 표현할 수 있고, 저 저항값을 갖도록 프로그램된 저항성 메모리 소자(51)는 논리 "0" 데이터 비트 값을 표현할 수 있다.
다수의 저항성 메모리 셀들(50) 각각은 저항성 메모리 소자(51), 및 저항성 메모리 소자(51)에 흐르는 전류를 제어하기 위한 액세스 장치(access device, 53)를 포함할 수 있다. 구현 예들에 따라, 저항성 메모리 소자(51)는 메모리 셀, 또는 메모리 물질(memory material)이라고도 불린다.
또한, 다수의 저항성 메모리 셀들(50) 각각은 PRAM(Phase Change Random Access Memory)으로 구현될 수 있다. 따라서, PCRAM 또는 OUM(Ovonic Unified Memory)이라고도 불리는 PRAM은 저항성 메모리 소자(51)를 위하여 위상 변화 물질, 예컨대 켈코제나이드 합금(Chalcogenide alloy)을 사용할 수 있다. 이 경우, 저항성 메모리 소자(51)는 켈코제나이드 소자라고도 불린다.
또한, 저항성 메모리 소자(51)는 결정 상태(crystalline state) 또는 비정질 상태(amorphous state)에 따라 서로 다른 저항값을 갖는 상 변화 물질로서 구현될 수 있다.
예컨대, 상 변화 물질은 두 개의 원소들을 화합한 물질, 예컨대 GaSb, Insb, Inse, Sb2Te3, 또는 GeTe일 수 있고, 세 개의 원소들을 화합한 물질, 예컨대 GeSbTe, GaSeTe, InSeTe, SnSb2Te4, 또는 InSbGe일 수 있고, 네 개의 원소들을 화합한 물질, 예컨대 AgInSbTe, (GnSn)SbTe, GeSb(SeTe), 또는 Te81Ge15Sb2S2일 수 있다.
격리 장치(isolation device)라고도 불리는 액세스 장치(53)는 다이오드-타입, MOSFET-타입, 또는 BJT-타입으로 구현될 수 있다. 본 명세서에서는 설명의 편의를 위하여 다이오드-타입의 액세스 장치(53)를 도시하나, 본 발명의 개념에 따른 실시 예가 다이오드-타입에 한정되는 것은 아니다.
로우 디코더(41)는 메인 로우 디코더(16)로부터 출력된 로우 어드레스를 디코딩하여 다수의 워드 라인들(WLj) 중에서 적어도 하나의 워드 라인(또는, 행)을 선택할 수 있다.
컬럼 디코더(43)는 메인 컬럼 디코더(14)로부터 출력된 컬럼 어드레스를 디코딩하여 다수의 비트 라인들(BLi) 중에서 적어도 하나의 비트 라인(또는, 컬럼)을 선택할 수 있다.
기입/ 독출 회로(56)는 저항성 메모리 셀(50)에 데이터를 기입하거나, 상기 저항성 메모리 셀(50)에 저장된 데이터의 검증 독출(verify read), 또는 독출(read)을 할 수 있다.
기입/ 독출 회로(56)는 기입 회로(57)와 독출 회로(60)을 포함할 수 있다. 상기 기입 회로(57)는 제1 기준 저항값(예컨대, 도 4의 (a)의 RD2)에 기초하여 저항성 메모리 셀(50)에 저장되는 데이터의 제1 비트(또는, 제1 LSB 비트)를 기입하고, 제2 기준 저항값(예컨대, 도 4의 (b)의 RD1 또는 RD3)에 기초하여 상기 데이터의 제2 비트(또는, 제2 LSB 비트)를 기입할 수 있다.
도 4는 본 발명의 제1 실시 예에 따른 메모리 셀의 프로그램을 위한 저항 산포도이고, 도 5는 도 4의 저항 산포도에 기초하여 메모리 셀이 프로그램되는 과정을 설명하기 위한 도면이다. 도 1 내지 도 4를 참조하면, 기입 회로(57)는 도 4에 도시된 저항 산포도를 이용하여 저항성 메모리 셀(50)에 데이터를 기입할 수 있다.
보다 상세하게는, 저항성 메모리 셀(50)에 기입되는 데이터의 비트수가 N(N은 자연수, 예컨대, 2)인 경우, 기입 회로(57)는 제1 및 제2 저항 산포(A 및 B)에 기초하여 제1 비트(또는, LSB)를 먼저 기입하고, 제3 내지 제6 저항 산포(C, D, E, 및 F)에 기초하여 제2 비트(또는, MSB)를 기입할 수 있다.
기입 회로(57)가 제1 및 제2 저항 산포(A 및 B)에 기초하여 제1 비트(또는, LSB)를 기입한 후, 독출회로(60)는 제1 검증전압(VFY_LSB1) 또는 제2 검증전압(VFY_LSB0)을 이용하여 저항성 메모리 셀(50)에 기입된 데이터의 검증을 수행할 수 있다.
또한, 기입 회로(57)가 제3 내지 제6 저항 산포(C, D, E, 및 F)에 기초하여 제2 비트(또는, MSB)를 기입한 후, 독출회로(60)는 제1 내지 제4 검증전압(VFY1 내지 VFY4)을 이용하여 저항성 메모리 셀(50)에 기입된 데이터의 검증을 수행할 수 있다.
이 경우, 제1 비트를 기입할때 이용되는 제1 및 제2 저항 산포(A 및 B)는 도 4의 (a)와 같이 제1 기준 저항값(RD2)을 기준으로 좌우로 배치될 수 있다.
한편, 제2 비트를 기입할때 이용되는 제3 저항 산포(C) 및 제4 저항 산포(D)는 제2 기준저항(RD1)을 기준으로 좌우로 배치될 수 있으며, 제5 저항 산포(E) 및 제6 저항 산포(F)는 제3 기준저항(RD3)을 기준으로 좌우로 배치될 수 있다.
예컨대, 제2 비트를 기입할때 이용되는 제3 저항 산포(C)는 도 4의 (b)와 같이 상기 제1 저항 산포(A)의 최소값을 포함하고, 상기 제4 저항 산포(D)는 상기 제1 저항 산포(A)의 최대값을 포함할 수 있다.
또한, 제5 저항 산포(E)는 제2 저항 산포(B)의 최소값을 포함하고, 상기 제6 저항 산포(F)는 상기 제2 저항 산포(B)의 최대값을 포함할 수 있다.
즉, 본 발명의 실시 예에 의한 반도체 장치(10)는 제1 비트와 제2 비트의 프로그램을 달리하여 데이터의 프로그램 속도 및 리드(read) 속도를 빠르게 할 수 있고, 상기 제1 비트 및 상기 제2 비트의 프로그램시 도 4의 (a) 및 (b)에서 변동될 수 있는 저항분포(예컨대, 제1 내지 제6 저항 산포에 표시된 점선)을 고려할 필요가 없기 때문에 저항 산포의 마진확보를 크게 할 수 있는 효과가 있다.
또한, 본 발명의 실시 예에 의한 반도체 장치(10)는 데이터 프로그램시 제1 비트와 제2 비트의 프로그램을 달리하므로, 데이터 기입 및 기입 검증에 필요한 횟수를 줄일 수 있는 효과가 있다.
이하, 도 5의 (a)와 같이 저항성 메모리 셀(50)에 저장되는 저항의 산포가 제3 내지 제6 저항 산포(C, D, E, 및 F)와 상응하는 경우, 상기 제3 내지 제6 저항 산포(C, D, E, 및 F)에 상응하는 데이터가 각각 "11", "01", "00", 및 "10" 이라고가정하고, 기입 회로(57)가 수행하는 프로그램 동작에 대하여 상세히 설명하면 다음과 같다.
기입 회로(57)는 도 5의 (b)와 같이 저항성 메모리 셀(50)에 저장되는 데이터의 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)을 갖는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제1 저항 산포(A)에 포함되도록 제어할 수 있다.
이 경우, 독출회로(60)는 제1 검증전압(VFY_LSB1)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 저항성 메모리 셀(50)에 저장되는 데이터의 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)을 갖는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제2 저항 산포(B)에 포함되도록 제어할 수 있다.
이 경우, 독출회로(60)는 제2 검증전압(VFY_LSB0)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 저항성 메모리 셀(50)에 제1 비트의 기입이 끝난 경우, 제3 내지 제6 저항 산포(C, D, E, 및 F)에 기초하여 제2 비트(또는, MSB)를 기입할 수 있다.
예컨대, 기입 회로(57)는 도 5의 (c)와 같이 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)로 기입된 후, 제2 비트를 제1 논리레벨(예컨대, 하이('1')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제3 저항 산포(C)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제3 검증전압(VFY1)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)로 기입된 후, 제2 비트를 제2 논리레벨(예컨대, 로우('0')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제4 저항 산포(D)에 포함되도록 제어할 수 있다. 이 경우, 독출 회로(60)는 제4 검증전압(VFY2)을 출력하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)로 기입된 후, 제2 비트를 제1 논리레벨(예컨대, 하이('1')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제5 저항 산포(E)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제5 검증전압(VFY3)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)로 기입된 후, 제2 비트를 제2 논리레벨(예컨대, 로우('0')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제6 저항 산포(F)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제6 검증전압(VFY4)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
도 6은 본 발명의 제2 실시 예에 따른 메모리 셀의 프로그램을 위한 저항 산포도이고, 도 7은 도 6의 저항 산포도에 기초하여 메모리 셀이 프로그램되는 과정을 설명하기 위한 도면이다. 도 1 내지 도 3, 도 6 , 및 도 7을 참조하면, 기입 회로(57)는 도 6에 도시된 저항 산포도를 이용하여 저항성 메모리 셀(50)에 데이터를 기입할 수 있다.
보다 상세하게는, 저항성 메모리 셀(50)에 기입되는 데이터의 비트수가 N(N은 자연수, 예컨대, 2)인 경우, 기입 회로(57)는 제1 기준저항(RD2)에 기초하여 제1 비트(또는, LSB)를 먼저 기입할 수 있다.
예컨대, 기입 회로(57)는 제1 기준저항(RD2)을 기준으로 좌우로 배치되는 제1 저항산포(A) 및 제2 저항산포(B)에 기초하여 제1 비트를 기입할 수 있다.
보다 상세하게는, 기입 회로(57)는 제1 비트가 제1 논리레벨(예컨대, 하이('1') 레벨)을 갖는 경우, 저항성 메모리 셀(50)의 제1 비트에 상응하는 저항 분포가 제1 저항산포(A)를 갖도록 제어할 수 있고, 상기 제1 비트가 제2 논리레벨(예컨대, 로우('0') 레벨)을 갖는 경우, 저항성 메모리 셀(50)의 제1 비트에 상응하는 저항 분포가 제2 저항산포(B)를 갖도록 제어할 수 있다.
기입 회로(57)가 제1 및 제2 저항 산포(A 및 B)에 기초하여 제1 비트(또는, LSB)를 기입한 후, 독출회로(60)는 제1 검증전압(VFY1) 또는 제2 검증전압(VFY2)을 이용하여 저항성 메모리 셀(50)에 기입된 데이터의 검증을 수행할 수 있다.
또한, 기입 회로(57)가 제1 내지 제4 저항 산포(A, B, C, 및 D)에 기초하여 제2 비트(또는, MSB)를 기입한 후, 독출회로(60)는 제1 내지 제4 검증전압(VFY1 내지 VFY4)을 이용하여 저항성 메모리 셀(50)에 기입된 데이터의 검증을 수행할 수 있다.
이 경우, 제1 비트를 기입할때 이용되는 제1 및 제2 저항 산포(A 및 B)는 도 6의 (a)와 같이 제1 기준 저항값(RD2)을 기준으로 좌우로 배치될 수 있다.
한편, 제2 비트를 기입할때 이용되는 제1 저항 산포(A) 및 제3 저항 산포(C)는 제2 기준저항(RD1)을 기준으로 좌우로 배치될 수 있으며, 제4 저항 산포(D) 및 제3 저항 산포(B)는 제3 기준저항(RD3)을 기준으로 좌우로 배치될 수 있다.
예컨대, 저항성 메모리 셀(50)에 기입되는 데이터의 제2 비트를 기입할 때 이용되는 제3 저항 산포(C)는 도 6의 (b)와 같이 제1 저항 산포(A)의 최대값과 와 제1 기준 저항값(RD2) 사이에 위치하고, 제4 저항 산포(D)는 제1 기준 저항값(RD2)와 제2 저항 산포(A)의 최소값 사이에 위치할 수 있다.
이하, 도 7의 (a)와 같이 저항성 메모리 셀(50)에 저장되는 저항의 산포가 제1 내지 제4 저항 산포(A, B, C, 및 D)에 각각 포함되는 경우, 상기 제1 내지 제4 저항 산포(A, B, C, 및 D)에 상응하는 데이터가 각각 "11", "10", "01", 및 "00" 이라고 가정하고, 기입 회로(57)가 수행하는 프로그램 동작에 대하여 상세히 설명하면 다음과 같다.
*기입 회로(57)는 도 7의 (b)와 같이 저항성 메모리 셀(50)에 저장되는 데이터의 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)을 갖는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제1 저항 산포(A)에 포함되도록 제어할 수 있다.
이 경우, 독출회로(60)는 제1 검증전압(VFY1)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 저항성 메모리 셀(50)에 저장되는 데이터의 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)을 갖는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제2 저항 산포(B)에 포함되도록 제어할 수 있다.
이 경우, 독출회로(60)는 제2 검증전압(VFY4)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트의 기입에 끝난 경우, 제1 내지 제4 저항 산포(A, B, C, 및 D)에 기초하여 제2 비트(또는, MSB)를 기입할 수 있다.
예컨대, 기입 회로(57)는 도 7의 (c)와 같이 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)로 기입된 상태에서, 제2 비트를 제1 논리레벨(예컨대, 하이('1')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제11 저항 산포(A)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제1 검증전압(VFY1)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)로 기입된 후, 제2 비트를 제2 논리레벨(예컨대, 로우('0')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제3 저항 산포(C)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제3 검증전압(VFY2)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)로 기입된 후, 제2 비트를 제1 논리레벨(예컨대, 하이('1')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제3 저항 산포(B)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제2 검증전압(VFY4)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)로 기입된 후, 제2 비트를 제2 논리레벨(예컨대, 로우('0')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제4 저항 산포(D)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제4 검증전압(VFY3)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
도 8은 본 발명의 제3 실시 예에 따른 메모리 셀의 프로그램을 위한 저항 산포도이고, 도 9는 도 8의 저항 산포도에 기초하여 메모리 셀이 프로그램되는 과정을 설명하기 위한 도면이다. 도 1 내지 도 3, 도 8 , 및 도 9를 참조하면, 기입 회로(57)는 도 8에 도시된 저항 산포도를 이용하여 저항성 메모리 셀(50)에 데이터를 기입할 수 있다.
보다 상세하게는, 저항성 메모리 셀(50)에 기입되는 데이터의 비트수가 N(N은 자연수, 예컨대, 2)인 경우, 기입 회로(57)는 제1 기준저항(RD2)에 기초하여 제1 비트(또는, LSB)를 먼저 기입할 수 있다.
예컨대, 기입 회로(57)는 제1 기준저항(RD2)을 기준으로 좌우로 배치되는 제1 저항산포(A) 및 제2 저항산포(B)에 기초하여 제1 비트를 기입할 수 있다.
보다 상세하게는, 기입 회로(57)는 제1 비트가 제1 논리레벨(예컨대, 하이('1') 레벨)을 갖는 경우, 저항성 메모리 셀(50)의 제1 비트에 상응하는 저항 분포가 제1 저항산포(A)를 갖도록 제어할 수 있고, 상기 제1 비트가 제2 논리레벨(예컨대, 로우('0') 레벨)을 갖는 경우, 저항성 메모리 셀(50)의 제1 비트에 상응하는 저항 분포가 제2 저항산포(B)를 갖도록 제어할 수 있다.
기입 회로(57)가 제1 및 제2 저항 산포(A 및 B)에 기초하여 제1 비트(또는, LSB)를 기입한 후, 독출회로(60)는 제1 검증전압(VFY1) 또는 제2 검증전압(VFY2)을 이용하여 저항성 메모리 셀(50)에 기입된 데이터의 검증을 수행할 수 있다.
또한, 기입 회로(57)가 제1 내지 제4 저항 산포(A, B, C, 및 D)에 기초하여 제2 비트(또는, MSB)를 기입한 후, 독출회로(60)는 제1 내지 제4 검증전압(VFY1 내지 VFY4)을 이용하여 저항성 메모리 셀(50)에 기입된 데이터의 검증을 수행할 수 있다.
이 경우, 제1 비트를 기입할때 이용되는 제1 및 제2 저항 산포(A 및 B)는 도 6의 (a)와 같이 제1 기준 저항값(RD2)을 기준으로 좌우로 배치될 수 있다.
한편, 제2 비트를 기입할때 이용되는 제1 저항 산포(A) 및 제3 저항 산포(C)는 제2 기준저항(RD1)을 기준으로 좌우로 배치될 수 있으며, 제4 저항 산포(D) 및 제3 저항 산포(B)는 제3 기준저항(RD3)을 기준으로 좌우로 배치될 수 있다.
예컨대,
한편, 저항성 메모리 셀(50)에 기입되는 데이터의 제2 비트를 기입할 때 이용되는 제3 저항 산포(C)의 최대값은 도 8의 (b)와 같이 제1 저항 산포(A)의 최소값보다 작고, 상기 제4 저항 산포(D)의 최소값은 상기 제2 저항 산포(B)의 최대값보다 클 수 있다.
이하, 도 9를 참고하여, 저항성 메모리 셀(50)에 저장되는 저항값이 제11 내지 제4 저항 산포(A, B, C,D)에 각각 포함되는 경우 경우, 상기 제1 내지 제4 저항 산포(A, B, C, 및 D)에 상응하는 데이터가 각각 "01", "00", "11", 및 "10" 이라고가정하고(도 9의 (a)), 기입 회로(57)가 수행하는 프로그램 동작에 대하여 상세히 설명하면 다음과 같다.
기입 회로(57)는 도 9의 (b)와 같이 저항성 메모리 셀(50)에 저장되는 데이터의 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)을 갖는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제11 저항 산포(A)에 포함되도록 제어할 수 있다.
이 경우, 독출회로(60)는 제1 검증전압(VFY1)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 저항성 메모리 셀(50)에 저장되는 데이터의 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)을 갖는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제2 저항 산포(B)에 포함되도록 제어할 수 있다.
이 경우, 독출회로(60)는 제2 검증전압(VFY2)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트의 기입에 끝난 경우, 제1 내지 제4 저항 산포(A, B, C, 및 D)에 기초하여 제2 비트(또는, MSB)를 기입할 수 있다.
예컨대, 기입 회로(57)는 도 9의 (c)와 같이 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)로 기입된 후, 제2 비트를 제1 논리레벨(예컨대, 하이('1')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제3 저항 산포(C)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제3 검증전압(VFY3)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)로 기입된 후, 제2 비트를 제2 논리레벨(예컨대, 로우('0')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제11 저항 산포(A)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제1 검증전압(VFY1)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)로 기입된 후, 제2 비트를 제1 논리레벨(예컨대, 하이('1')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제4 저항 산포(4)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제4 검증전압(VFY4)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)로 기입된 후, 제2 비트를 제2 논리레벨(예컨대, 로우('0')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제2 저항 산포(B)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제2 검증전압(VFY2)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
도 10은 본 발명의 제4 실시 예에 따른 메모리 셀의 프로그램을 위한 저항 산포도이고, 도 11은 도 10의 저항 산포도에 기초하여 메모리 셀이 프로그램되는 과정을 설명하기 위한 도면이다. 도 1 내지 도 3, 도 10, 및 도 11을 참조하면, 기입 회로(57)는 도 10에 도시된 저항 산포도를 이용하여 저항성 메모리 셀(50)에 데이터를 기입할 수 있다.
보다 상세하게는, 저항성 메모리 셀(50)에 기입되는 데이터의 비트수가 N(N은 자연수, 예컨대, 2)인 경우, 기입 회로(57)는 제1 기준저항(RD2)에 기초하여 제1 비트(또는, LSB)를 먼저 기입할 수 있다.
예컨대, 기입 회로(57)는 제1 기준저항(RD2)을 기준으로 좌우로 배치되는 제1 저항산포(A) 및 제2 저항산포(B)에 기초하여 제1 비트를 기입할 수 있다.
보다 상세하게는, 기입 회로(57)는 제1 비트가 제1 논리레벨(예컨대, 하이('1') 레벨)을 갖는 경우, 저항성 메모리 셀(50)의 제1 비트에 상응하는 저항 분포가 제1 저항산포(A)를 갖도록 제어할 수 있고, 상기 제1 비트가 제2 논리레벨(예컨대, 로우('0') 레벨)을 갖는 경우, 저항성 메모리 셀(50)의 제1 비트에 상응하는 저항 분포가 제2 저항산포(B)를 갖도록 제어할 수 있다.
기입 회로(57)가 제1 및 제2 저항 산포(A 및 B)에 기초하여 제1 비트(또는, LSB)를 기입한 후, 독출회로(60)는 제1 검증전압(VFY4) 또는 제2 검증전압(VFY2)을 이용하여 저항성 메모리 셀(50)에 기입된 데이터의 검증을 수행할 수 있다.
또한, 기입 회로(57)가 제1 내지 제4 저항 산포(A, B, C, 및 D)에 기초하여 제2 비트(또는, MSB)를 기입한 후, 독출회로(60)는 제1 내지 제4 검증전압(VFY1 내지 VFY4)을 이용하여 저항성 메모리 셀(50)에 기입된 데이터의 검증을 수행할 수 있다.
한편, 저항성 메모리 셀(50)에 기입되는 데이터의 제2 비트를 기입할 때 이용되는 제3 저항 산포(C)의 최소값은 도 10의 (b)와 같이 제1 저항 산포(A)의 최대값보다 크고 제1 기준 저항값(RD2) 보다 작으며, 상기 제4 저항 산포(D)의 최소값은 제2 저항 산포(B)의 최대값보다 클 수 있다.
이하, 도 11을 참고하여, 저항성 메모리 셀(50)에 저장되는 저항값이 제11 내지 제4 저항 산포(A, B,D)에 각각 포함되는 경우는 경우, 상기 제1 내지 제4 저항 산포(A, B, C, 및 D)에 상응하는 데이터가 각각 "11", "00", "01", 및 "10" 이라고가정하고(도 11의 (a)), 기입 회로(57)가 수행하는 프로그램 동작에 대하여 상세히 설명하면 다음과 같다.
기입 회로(57)는 도 11의 (b)와 같이 저항성 메모리 셀(50)에 저장되는 데이터의 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)을 갖는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제1 저항 산포(A)에 포함되도록 제어할 수 있다.
이 경우, 독출회로(60)는 제1 검증전압(VFY4)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 저항성 메모리 셀(50)에 저장되는 데이터의 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)을 갖는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제2 저항 산포(B)에 포함되도록 제어할 수 있다.
이 경우, 독출회로(60)는 제2 검증전압(VFY2)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트의 기입에 끝난 경우, 제1 내지 제4 저항 산포(A, B, C, 및 D)에 기초하여 저항성 메모리 셀(50)의 제2 비트(또는, MSB)를 기입할 수 있다.
예컨대, 기입 회로(57)는 도 11의 (c)와 같이 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)로 기입된 후, 제2 비트를 제1 논리레벨(예컨대, 하이('1')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제11 저항 산포(A)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제1 검증전압(VFY4)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)로 기입된 후, 제2 비트를 제2 논리레벨(예컨대, 로우('0')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제3 저항 산포(C)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제3 검증전압(VFY3)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)로 기입된 후, 제2 비트를 제1 논리레벨(예컨대, 하이('1')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제4 저항 산포(D)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제4 검증전압(VFY1)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)로 기입된 후, 제2 비트를 제2 논리레벨(예컨대, 로우('0')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제2 저항 산포(B)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제2 검증전압(VFY2)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
도 12는 본 발명의 제5 실시 예에 따른 메모리 셀의 프로그램을 위한 저항 산포도이고, 도 13은 도 12의 저항 산포도에 기초하여 메모리 셀이 프로그램되는 과정을 설명하기 위한 도면이다. 도 1 내지 도 3, 도 12 , 및 도 13을 참조하면, 기입 회로(57)는 도 12에 도시된 저항 산포도를 이용하여 저항성 메모리 셀(50)에 데이터를 기입할 수 있다.
보다 상세하게는, 저항성 메모리 셀(50)에 기입되는 데이터의 비트수가 N(N은 자연수, 예컨대, 2)인 경우, 기입 회로(57)는 제1 기준저항(RD2)에 기초하여 제1 비트(또는, LSB)를 먼저 기입할 수 있다.
예컨대, 기입 회로(57)는 제1 기준저항(RD2)을 기준으로 좌우로 배치되는 제1 저항산포(A) 및 제2 저항산포(B)에 기초하여 제1 비트를 기입할 수 있다.
보다 상세하게는, 기입 회로(57)는 제1 비트가 제1 논리레벨(예컨대, 하이('1') 레벨)을 갖는 경우, 저항성 메모리 셀(50)의 제1 비트에 상응하는 저항 분포가 제1 저항산포(A)를 갖도록 제어할 수 있고, 상기 제1 비트가 제2 논리레벨(예컨대, 로우('0') 레벨)을 갖는 경우, 저항성 메모리 셀(50)의 제1 비트에 상응하는 저항 분포가 제2 저항산포(B)를 갖도록 제어할 수 있다.
기입 회로(57)가 제1 및 제2 저항 산포(A 및 B)에 기초하여 제1 비트(또는, LSB)를 기입한 후, 독출회로(60)는 제1 검증전압(VFY3) 또는 제2 검증전압(VFY1)을 이용하여 저항성 메모리 셀(50)에 기입된 데이터의 검증을 수행할 수 있다.
또한, 기입 회로(57)가 제1 내지 제4 저항 산포(A, B, C, 및 D)에 기초하여 제2 비트(또는, MSB)를 기입한 후, 독출회로(60)는 제1 내지 제4 검증전압(VFY1 내지 VFY4)을 이용하여 저항성 메모리 셀(50)에 기입된 데이터의 검증을 수행할 수 있다.
이 경우, 제1 비트를 기입할때 이용되는 제1 및 제2 저항 산포(A 및 B)는 도 12의 (a)와 같이 제1 기준 저항값(RD2)을 기준으로 좌우로 배치될 수 있다.
한편, 제2 비트를 기입할때 이용되는 제1 저항 산포(A) 및 제3 저항 산포(C)는 제2 기준저항(RD1)을 기준으로 좌우로 배치될 수 있으며, 제4 저항 산포(D) 및 제3 저항 산포(B)는 제3 기준저항(RD3)을 기준으로 좌우로 배치될 수 있다.
예컨대, 저항성 메모리 셀(50)에 기입되는 데이터의 제2 비트를 기입할 때 이용되는 제3 저항 산포(C)의 최대값은 제1 저항 산포(A)의 최소값보다 작고, 제4 저항 산포(D)는 제1 기준 저항값(RD2)과 제2 저항 산포(B)의 최소값 사이에 위치할 수 있다.
이하, 도 13을 참고하여, 저항성 메모리 셀(50)에 저장되는 저항값이 제1 내지 제4 저항 산포(A,D)에 각각 포함되는 경우응하는 경우, 상기 제1 내지 제4 저항 산포(A, B, C, 및 D)에 상응하는 데이터가 각각 "11", "01", "00", 및 "10" 이라고가정하고(도 13의 (a)), 기입 회로(57)가 수행하는 프로그램 동작에 대하여 상세히 설명하면 다음과 같다.
기입 회로(57)는 도 13의 (b)와 같이 저항성 메모리 셀(50)에 저장되는 데이터의 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)을 갖는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제11 저항 산포(A)에 포함되도록 제어할 수 있다.
이 경우, 독출회로(60)는 제1 검증전압(VFY3)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 저항성 메모리 셀(50)에 저장되는 데이터의 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)을 갖는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제2 저항 산포(B)에 포함되도록 제어할 수 있다.
이 경우, 독출회로(60)는 제2 검증전압(VFY1)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트의 기입에 끝난 경우, 제1 내지 제4 저항 산포(A, B, C, 및 D)에 기초하여 저항성 메모리 셀(50)의 제2 비트(또는, MSB)를 기입할 수 있다.
예컨대, 기입 회로(57)는 도 13의 (c)와 같이 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)로 기입된 후, 제2 비트를 제1 논리레벨(예컨대, 하이('1')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제3 저항 산포(C)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제3 검증전압(VFY4)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제1 논리레벨(예컨대, 하이('1')레벨)로 기입된 후, 제2 비트를 제2 논리레벨(예컨대, 로우('0')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제1 저항 산포(A)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제1 검증전압(VFY3)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)로 기입된 후, 제2 비트를 제1 논리레벨(예컨대, 하이('1')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제2 저항 산포(B)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제1 검증전압(VFY1)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
또한, 기입 회로(57)는 제1 비트가 제2 논리레벨(예컨대, 로우('0')레벨)로 기입된 후, 제2 비트를 제2 논리레벨(예컨대, 로우('0')레벨)로 프로그램하는 경우, 상기 저항성 메모리 셀(50)에 저장되는 저항값이 제4 저항 산포(D)에 포함되도록 제어할 수 있다. 이 경우, 독출회로(60)는 제4 검증전압(VFY2)을 이용하여 저항성 메모리 셀(50)에 대한 기입 검증 동작을 수행할 수 있다.
도 14는 본 발명의 실시 예에 따른 메모리 셀에 기입될 수 있는 데이터의 케이스를 나타낸다. 도 14를 참조하면, 저항성 메모리 셀(50)에 저장되는 저항 값에 대응되는 저항 산포(예컨개, 도 4 (a)의 제3 내지 제6 저항 산포(C, D, E, 및 F))와 상응하는 데이터는 저항이 순차적으로 증가하는 순으로 "11", "01", "00", 및 "10" 인 경우로 예를 들었으나, 상기 저항 산포의 데이터(예컨대, 제1 내지 제4 데이터)는 다음의 표 2에서 제1 케이스 내지 제8 케이스 중에서 어느 하나의 케이스와 상응할 수 있다.
제1 데이터 제2 데이터 제3 데이터 제4 데이터
제1 케이스 00 10 01 11
제2 케이스 10 00 01 11
제3 케이스 00 10 11 01
제4 케이스 10 00 11 01
제5 케이스 01 11 00 10
제6 케이스 11 01 00 10
제7 케이스 01 11 10 00
제8 케이스 11 01 10 00
다시 도 1 내지 도 3을 참조하면, 기입 회로(57)는 전류미러(58)와 제1 스위치(59)를 포함할 수 있다. 전류미러(58)는 기입 제어신호 발생기(71)에서 발생된 기입 제어신호에 응답하여 기준 브랜치에 흐르는 기입전류를 상기 제1 스위치(59)를 통하여 비트라인(BLi)과 접속된 미러 전류 브랜치로 미러링할 수 있다.
제1 스위치(59)는 기입 인에이블신호(WEN)에 응답하여 전류미러(58)에서 발생된 기입전류를 비트라인(BLi)으로 전송할 수 있다.
독출 회로(60)는 독출(read) 동작시 또는 검증 독출(verify read) 동작시에 비트 라인(BLi)을 통하여 저항성 메모리 셀(50)로부터 출력된 전류에 상응하는 전압을 감지하고 증폭할 수 있다.
독출 회로(60)는 도 4 내지 도 13을 통해서 상세히 설명한 저항 산포에 기초하여 저항성 메모리 셀(50)에 저장된 데이터를 독출 또는 검증 독출 할 수 있다.
예컨대, 도 5 (a)의 경우, 독출 회로(60)는 제1 기준 저항(RD2)과 상응하는 제1 독출전류와 비트 라인(BLi)을 통하여 전송되는 저항성 메모리 셀(50)을 흐르는 통과 전류(pass-through current)를 비교하고 비교결과에 기초하여 저항성 메모리 셀(50)의 제1 비트(예컨대, LSB)를 검출할 수 있다.
예컨대, 독출 회로(60)는 비트 라인(BLi)에 흐르는 전류가 제1 독출전류 보다 큰 경우, 제1 논리레벨(예컨대, 하이('1')레벨) 상태를 갖는 제1 비트를 검출할 수 있다. 또는, 독출 회로(60)는 비트 라인(BLi)에 흐르는 전류가 제1 독출전류 보다 작은 경우, 제2 논리레벨(예컨대, 로우('0')레벨) 상태를 갖는 제1 비트를 검출할 수 있다.
이어서, 독출 회로(60)는 제1 기준 저항(RD1)과 상응하는 제2 독출전류와 비트 라인(BLi)을 통하여 전송되는 저항성 메모리 셀(50)을 흐르는 통과 전류(pass-through current)를 비교하고 비교결과에 기초하여 저항성 메모리 셀(50)의 제2 비트(예컨대, MSB)를 검출할 수 있다.
예컨대, 독출 회로(60)는 비트 라인(BLi)에 흐르는 전류가 제2 독출전류 보다 큰 경우, 제1 논리레벨(예컨대, 하이('1')레벨) 상태를 갖는 제2 비트를 검출할 수 있다. 또는, 독출 회로(60)는 비트 라인(BLi)에 흐르는 전류가 제2 독출전류 보다 작은 경우, 제2 논리레벨(예컨대, 로우('0')레벨) 상태를 갖는 제2 비트를 검출할 수 있다.
상술한 제2 내지 제6 실시예를 통하여 설명된 방법으로 프로그램된 저항성 메모리 셀(50)의 독출방법도 상기 설명된 방법으로 이루어질 수 있는바 이에 대한 상세한 설명은 생략하도록 한다.
독출 회로(60)는 클램프 회로(61), 프리차지 회로(63), 디스차지 회로(65), 및 센스앰프(67)를 포함할 수 있다.
클램프 회로(61)는 저항성 메모리 셀(50)에 저장된 데이터 독출시, 비트라인(BLi) 전압을 클램프할 수 있다. 또한, 클램프 회로(61)는 저항성 메모리 셀(50)에 저장된 데이터에 따른 비트라인(BLi) 전압을 검출하는 프리센스 앰프 기능을 할 수도 있다.
프리차지 회로(63)는 기준전류발생기(73)에서 발생된 기준전류에 응답하여 비트라인(BLi)과 접속되는 센싱노드(NSA)를 제1 전압(VCC_SA)로 프리차지할 수 있다.
디스차지 회로(65)는 디스차지 제어 신호(PDIS)에 응답하여 비트 라인들(BL1~BLn) 중에서 적어도 하나의 비트 라인을 제2 전압(Vss)으로 디스차지할 수 있다. 센스앰프(67)는 센싱노드(NSA)의 전압과 기준 전압(Vref)을 비교하여 비교 결과(DET)를 출력할 수 있다.
메인 컬럼디코더(14)는 어드레스 레지스터(24)로부터 전송된 컬럼 어드레스에 응답하여 메모리셀 블록(12) 내에 형성된 적어도 하나의 메모리셀 어레이(40)의 비트 라인들(BLi) 중에서 적어도 하나의 비트 라인(또는, 열)을 선택하기 위한 어드레스 신호를 출력할 수 있다.
메인 로우디코더(16)는 어드레스 레지스터(24)로부터 전송된 로우 어드레스에 응답하여 메모리셀 블록(12) 내에 형성된 적어도 하나의 메모리셀 어레이(40)의 워드 라인들(WLj) 중에서 적어도 하나의 워드 라인(또는, 행)을 선택하기 위한 어드레스 신호를 출력할 수 있다.
주변회로(18)는 메모리 셀 블록(12)의 비트선(BLi)에 접속되어, 데이터 기입 또는 독출을 위한 제어신호를 출력할 수 있고, 기입된 데이터를 유지(또는, 래치)할 수 있다. 또한, 주변회로(18)는 I/O 버퍼(22)로부터 수신되어 저항성 메모리 셀(50)에 저장될 기입 데이터를 버스(28)를 통하여 수신할 수 있다.
예컨대, 주변회로(18)는 도 2과 같이 아날로그 회로부(45), 제1 인터페이스(47), 및 제2 인터페이스(49)를 포함할 수 있다.
아날로그 회로부(45)는 제2 인터페이스(49)를 통하여 내부 제어회로(20)로부터 전송되는 각종 명령들을 수신할 수 있으며, 수신된 명령에 기초하여 데이터 기입 또는 독출을 위한 제어신호를 출력할 수 있고, 기입된 데이터를 유지(또는, 래치)할 수 있다.
아날로그 회로부(45)는 기입제어신호 발생기(71) 및 기준전류 발생기(73)를 포함할 수 있다. 상기 기입제어신호 발생기(71)는 내부 제어회로(20)로부터 전송된 기입명령에 응답하여 기입 제어신호를 출력할 수 있고, 기준전류 발생기(73)는 내부 제어회로(20)로부터 전송된 기입명령에 응답하여 기준전류를 출력할 수 있다.
이때, 아날로그 회로부(45)는 저항성 메모리 셀(50)에 기입된 데이터를 유지(또는, 래치)하기 위한 래치(미도시)를 더 포함할 수 있음은 물론이다.
제1 인터페이스(47)는 기입/ 독출회로(56)와 아날로그 회로부(45) 사이에서 기입 제어신호, 기준전류, 프로그램 데이터(또는 기입 데이터) 또는 독출 데이터를 주고받는 기능을 수행할 수 있다.
제2 인터페이스(49)는 아날로그 회로부(45), 내부 제어회로(20), 및 I/O 버퍼(22) 사이에서 기입 제어신호, 기준전류, 기입 데이터(또는, 프로그램 데이터) 또는 독출 데이터를 주고받는 기능을 수행할 수 있다.
내부 제어회로(20)는 동작 모드에 따라서 공급되는 외부 제어 신호 및 커맨드에 기초하여, 데이터 기입 및 소거의 시퀀스 제어, 및 데이터 판독의 제어를 할 수 있다.
I/O 버퍼(22)는 외부 컨트롤러(32)에서 발생된 입출력 어드레스(I/O)를 인터페이스하고, 상기 외부 컨트롤러(32)에서 발생된 명령(cmd)을 내부 제어회로(20)로 전송할 수 있다.
어드레스 레지스터(24)는 I/O 버퍼(22)에서 출력된 어드레스(add, 예컨대, 로우 또는 컬럼 어드레스)를 메인 로우디코더(16) 및/ 또는 메인 컬럼 디코더(14)로 전송할 수 있다.
스테이터스 레지스터(26)는 칩이 레디 상태에 있는지, 비지 상태에 있는지를 나타내는 레디/비지 신호 R/B를 세트할 수 있으며, 이를 칩 외부로 출력할 수 있다.
고전압발생부(30)는 반도체 장치(10)의 동작 모드에 따라서, 전원 전압보다 높은 여러 가지의 고전압을 발생할 수 있으며, 상기 고전압발생부(30)는 내부 제어회로(20)에 의해서 제어될 수 있다.
한편, 도 15는 본 발명의 제7 실시 예에 따른 메모리 셀의 프로그램을 위한 저항 산포도로서, 제7 실시 예에 따른 저항성 메모리 셀(50)은 3비트의 데이터를 저장할 수 있으며, 기입 회로(57)는 제1 내지 제14 저항산포(A 내지 N)를 이용하여 상기 3비트의 데이터를 프로그램할 수 있다.
여기서, 제1 내지 제14 저항산포(A 내지 N)는 제1 기준저항(RD1)을 기준으로 서로 다른 제1 비트(또는, 최하위비트)를 갖는 그룹들로 분류될 수 있다. 예컨대, 제1 그룹 저항산포들(A, C, D, G, H, I, 및 J)은 각각 제2 논리레벨(예컨대, 로우('0')레벨) 상태를 갖는 제1 비트를 가질 수 있다.
또한, 제2 그룹 저항산포들(B, E, F, K, L, M, 및 N)은 각각 제1 논리레벨(예컨대, 하이('1')레벨) 상태를 갖는 제1 비트를 가질 수 있다.
기입 회로(57)는 제1 비트(또는, 최하위비트)를 프로그램할 경우, 도 17의 (a)와 같이 제1 저항산포(A)와 제2 저항산포(B)를 이용할 수 있고, 제2 비트를 프로그램할 경우 도 17의 (b)와 같이 제3 내지 6 저항산포(C, D, E, 및 F)를 이용할 수 있다.
최종적으로, 제3 비트(또는, 최상위비트)를 프로그램할 경우, 도 17의 (c)와 같이 제7 저항산포(G) 내지 제14 저항산포(N)를 이용할 수 있다.
당해 분야에 속하는 통상의 지식을 가진 자라면 기입 회로(57)가 도 17의 저항산포를 이용하여 3비트의 데이터를 프로그램하는 방법은 위에서 상술한 2비트의 데이터를 프로그램하는 방법을 통해서 충분히 이해할 수 있는바 이에 대한 상세한 설명은 생략하도록 한다.
도 16은 본 발명의 실시 예에 따른 반도체 장치를 포함하는 반도체 시스템의 개략적인 블록 도를 나타낸다. 도 1과 도 16을 참조하면, 컴퓨터와 같은 반도체 시스템(100)은 시스템 버스(110)에 접속된 메모리 장치(10)와 프로세서(120)를 포함한다.
프로세서(120)는 반도체 장치(10)의 기입 동작, 독출 동작, 또는 검증 독출 동작을 전반적으로 제어할 수 있다. 예컨대, 프로세서(120)는 반도체 장치(10)의 기입 동작을 제어하기 위한 명령과 기입 데이터를 출력한다.
또한, 프로세서(120)는 반도체 장치(10)의 독출 동작, 또는 검증 독출 동작을 제어하기 위한 명령을 발생할 수 있다. 따라서, 반도체 장치(100)의 제어 블록(50)은 프로세서(120)로부터 출력된 제어신호에 응답하여 검증 독출 동작 또는 프로그램 동작(또는 기입 동작)을 수행할 수 있다.
만일, 반도체 시스템(100)이 휴대용 애플리케이션(port application)으로 구현되는 경우, 반도체 시스템(100)은 메모리 장치(10)와 프로세서(120)로 동작 전원을 공급하기 위한 배터리(150)를 더 포함할 수 있다.
휴대용 애플리케이션(port application)은 휴대용 컴퓨터(portable computer), 디지털 카메라, PDA(personal digital assistants), 휴대 전화기 (Cellular telephone), MP3플레이어, PMP (portable multimedia player), 차량자동항법장치(Automotive navigation system), 메모리 카드, 스마트 카드, 게임기, 전자 사전, 또는 솔리드 스테이트 디스크(solid state disc)를 포함한다.
반도체 시스템(100)은 외부의 데이터 처리 장치와 데이터를 주고받기 위한 인터페이스, 예컨대 입/출력 장치(130)를 더 포함할 수 있다.
반도체 시스템(100)이 무선 시스템인 경우, 반도체 시스템(100)은 메모리 장치(10), 프로세서(120), 및 무선 인터페이스(140)를 더 포함할 수 있다. 이 경우 무선 인터페이스(140)는 프로세서(120)에 접속되고 시스템 버스(110)를 통하여 무선으로 외부 무선 장치(미 도시)와 데이터를 주고받을 수 있다.
예컨대, 프로세서(120)는 무선 인터페이스(140)를 통하여 입력된 데이터를 처리하여 메모리 장치(10)에 저장할 수 있고 또한 메모리 장치(10)에 저장된 데이터를 독출하여 무선 인터페이스(140)로 전송할 수 있다.
상기 무선 시스템은 PDA, 휴대용 컴퓨터, 무선 전화기(wireless telephone), 페이저(pager), 디지털 카메라와 같은 무선 장치, RFID 리더, 또는 RFID 시스템일 수 있다. 또한, 상기 무선 시스템은 WLAN(Wireless Local Area Network) 시스템 또는 WPAN(Wireless Personal Area network) 시스템일 수 있다. 또한, 상기 무선 시스템은 이동 전화 네트워크(Cellular Network)일 수 있다.
반도체 시스템(100)이 이미지 촬상 장치(image pick-up devoce)인 경우, 반도체 시스템(100)은 광학 신호를 전기 신호로 변환할 수 있는 이미지 센서(160)를 더 포함할 수 있다. 이미지 센서(160)는 CCD를 이용한 이미지 센서일 수 있고 CMOS 공정을 이용하여 제작된 CMOS 이미지 센서일 수 있다. 이 경우 반도체 시스템(100)은 디지털 카메라 또는 디지털 카메라가 부착된 이동 전화기일 수 있다. 또한, 반도체 시스템(100)은 카메라가 부착된 인공 위성 시스템일 수 있다.
도 17은 본 발명의 실시 예에 따른 반도체 장치의 프로그램 방법을 설명하기 위한 흐름도이다.
도 1 내지 3 및 도 17을 참조하면, 저항성 메모리 셀(50)에 데이터를 기입(또는, 프로그램)하는 경우, I/0 버퍼(22)는 외부콘트롤러(32)로부터 발생된 어드레스 및 데이터를 로딩한다(S10). 내부제어회로(20)는 메모리 셀 어레이(40)를 구성하는 저항성 메모리 셀들 중에서 제1 비트(예컨대, LSB)에 대한 플래그 데이터를 저장하는 제1 플래그 데이터 저장셀(미도시)에 저장된 플래그 데이터를 셋업한다(S11).
제1 비트(예컨대, LSB)에 대한 플래그 데이터는 제1 비트에 대한 기입동작이 이미 완료되었는지를 알려주는 데이터이다. 예컨대, 상기 제1 비트에 대한 플래그 데이터는 저항성 메모리 셀(50)의 제1 비트에 대한 기입동작이 이미 완료되었는지 또는 반도체 장치(10)가 비정상적으로 오프(off)되어 상기 기입동작이 완료되지 않았는지에 대한 정보를 포함할 수 있다.
내부제어회로(20)는 S11 단계에 의해서 셋업된 제1 비트에 대한 플래그 데이터를 분석하고 분석결과에 기초하여 제1 비트에 대한 기입동작을 수행할 것인지, 또는 제2 비트에 대한 기입동작을 수행할 것인지를 판단할 수 있다(S13).
S13의 판단결과, 제1 비트에 대한 기입동작이 이미 완료되지 않은 경우, 기입회로(57)는 저항성 메모리 셀(50)에 상기 제1 비트에 대한 프로그램 동작을 수행할 수 있고(S15), 독출회로(60)는 상기 제1 비트에 저장된 데이터에 대한 기입검증을 수행할 수 있다(S17).
기입회로(57)는 S17의 기입검증 결과 기입이 완료되었는지 여부를 판단한다(S19). 예컨대, 기입회로(57)는 S17의 기입검증 결과 기입이 완료되지 않은 경우 S15 단계를 다시 수행할 수 있고, S17의 기입검증 결과 기입이 완료된 경우 기입회로(57)는 제1 비트에 대한 기입동작이 완료되었음 알리는 플래그 데이터를 제1 플래그 데이터 저장셀(미도시)에 기입한다(S21).
내부제어회로(20)는 메모리 셀 어레이(40)를 구성하는 저항성 메모리 셀들 중에서 제2 비트(예컨대, MSB)에 대한 플래그 데이터를 저장하는 제2 플래그 데이터 저장셀(미도시)에 저장된 플래그 데이터를 셋업하고, 상기 플래그 데이터를 분석한다(S23).
S23의 판단결과, 이미 제2 비트(예컨대, MSB)에 대한 기입이 완료된 경우 기입회로(57)는 프로그램 동작을 마치고, 제2 비트(예컨대, MSB)에 대한 기입이 완료되지 않은 경우 기입회로(57)는 저항성 메모리 셀(50)에 상기 제2 비트에 대한 프로그램 동작을 수행할 수 있고(S25), 독출회로(60)는 상기 제2 비트에 저장된 데이터에 대한 기입검증을 수행할 수 있다(S27).
기입회로(57)는 S27의 기입 검증 결과 기입이 완료되었는지 여부를 판단한다(S29). 예컨대, 기입회로(57)는 S27의 기입검증 결과 기입이 완료되지 않은 경우, S25 단계를 다시 수행할 수 있고, S27의 기입검증 결과 기입이 완료된 경우, 기입회로(57)는 프로그램 동작을 마칠 수 있다.
또한, S27의 기입검증 결과 기입이 완료된 경우, 기입회로(57)는 제2 비트에 대한 기입동작이 완료되었음 알리는 플래그 데이터를 제2 플래그 데이터 저장셀(미도시)에 기입한다(S31).
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
반도체 장치(10),
메모리 셀 블록(12),
메인 컬럼 디코더(14),
메인 로우 디코더(16),
주변회로(18),
내부 제어회로(20),
I/O 버퍼(22),
어드레스 레지스터(24),
스테이터스 레지스터(26),
데이터 버스(28),
고전압 발생부(30),
외부콘트롤러(32)

Claims (1)

  1. 데이터를 저장하는 메모리 셀들을 가지는 반도체 메모리 장치에 복수(2이상)의 비트 데이터를 프로그램하는 방법에 있어서,
    각 메모리 셀에 대하여,
    해당 메모리셀에 저장되는 데이터의 제1 비트를 기입하는 단계;
    제1 검증전압을 이용하여 상기 제1 비트의 기입검증을 수행하는 단계;
    상기 제1 비트의 기입이 완료된 후 제2 비트를 기입하는 단계; 및
    저항 산포에 기초하여 상기 해당 메모리 셀에 저장된 데이터를 독출하는 단계를 포함하고,
    상기 데이터를 독출하는 단계는
    제1 기준 저항과 상응하는 제1 독출전류와 상기 해당 메모리 셀을 흐르는 통과 전류를 비교하여 비교결과에 기초하여 상기 해당 메모리 셀의 제1 비트를 검출하는 단계를 포함하며,
    상기 제1 비트를 기입하는 단계는 제1 기준 저항값에 기초하여 수행되고,
    상기 제2 비트를 기입하는 단계는 제2 기준 저항값에 기초하여 수행되며,
    상기 제2 기준 저항값은 상기 제1 기준 저항값보다 크거나 작은, 반도체 장치의 프로그램 방법.
KR1020160027275A 2016-03-07 2016-03-07 반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법 KR20160030925A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160027275A KR20160030925A (ko) 2016-03-07 2016-03-07 반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160027275A KR20160030925A (ko) 2016-03-07 2016-03-07 반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020080133071A Division KR20100074588A (ko) 2008-07-30 2008-12-24 반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법

Publications (1)

Publication Number Publication Date
KR20160030925A true KR20160030925A (ko) 2016-03-21

Family

ID=55650991

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160027275A KR20160030925A (ko) 2016-03-07 2016-03-07 반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법

Country Status (1)

Country Link
KR (1) KR20160030925A (ko)

Similar Documents

Publication Publication Date Title
US8031517B2 (en) Memory device, memory system having the same, and programming method of a memory cell
US9728252B2 (en) Resistive memory device with temperature compensation, resistive memory system, and operating method thereof
KR102154296B1 (ko) 저항체를 이용한 비휘발성 메모리 장치의 구동 방법 및 비휘발성 메모리 장치
US9558821B2 (en) Resistive memory device and method of operating the same
US9899081B2 (en) Resistive memory device and a memory system including the same
KR102245129B1 (ko) 멀티레벨 셀을 포함하는 크로스 포인트 메모리 장치 및 크로스 포인트 메모리 장치의 동작방법
KR102251814B1 (ko) 메모리 장치, 그것의 동작 및 제어 방법
KR102215359B1 (ko) 비휘발성 메모리 장치와 그 센싱 방법
CN107274932B (zh) 电子设备
KR102187116B1 (ko) 비휘발성 메모리 장치와 이를 포함하는 메모리 시스템, 및 비휘발성 메모리 장치의 구동 방법
KR20160002205A (ko) 저항성 메모리 장치 및 저항성 메모리 장치의 동작방법
US20160099052A1 (en) Resistive memory device, resistive memory system, and operating method thereof
KR102024523B1 (ko) 저항체를 이용한 비휘발성 메모리 장치 및 그 구동 방법
KR102504836B1 (ko) 보상 회로를 구비하는 저항성 메모리 장치
KR20100081087A (ko) 반도체 장치, 이를 포함하는 반도체 시스템, 및 반도체 장치의 전압 공급방법
KR102055375B1 (ko) 저항체를 이용한 비휘발성 메모리 장치 및 이를 포함하는 메모리 시스템
US8724400B2 (en) Memory device and system with improved erase operation
KR101977684B1 (ko) 저항체를 이용한 비휘발성 메모리 장치를 제어하는 메모리 컨트롤러 동작방법, 상기 메모리 컨트롤러, 상기 메모리 컨트롤러를 포함하는 메모리 시스템 및 비휘발성 메모리 장치
KR20140100616A (ko) 비휘발성 메모리 장치 및 그것의 쓰기 방법
US8902633B2 (en) Resistive memory device comprising selectively disabled write driver
KR102030326B1 (ko) 비휘발성 메모리 장치 및 그 구동 방법
KR20100013125A (ko) 반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성메모리 셀의 프로그램 방법
KR20140013384A (ko) 비휘발성 메모리 장치의 동작 방법
KR20160030925A (ko) 반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법
KR20100074588A (ko) 반도체 장치, 이를 포함하는 반도체 시스템, 및 저항성 메모리 셀의 프로그램 방법

Legal Events

Date Code Title Description
A107 Divisional application of patent
WITN Withdrawal due to no request for examination