KR102081757B1 - 불휘발성 메모리 장치 및 그것의 프로그램 방법 - Google Patents

불휘발성 메모리 장치 및 그것의 프로그램 방법 Download PDF

Info

Publication number
KR102081757B1
KR102081757B1 KR1020130073875A KR20130073875A KR102081757B1 KR 102081757 B1 KR102081757 B1 KR 102081757B1 KR 1020130073875 A KR1020130073875 A KR 1020130073875A KR 20130073875 A KR20130073875 A KR 20130073875A KR 102081757 B1 KR102081757 B1 KR 102081757B1
Authority
KR
South Korea
Prior art keywords
bit line
program
level
loop
control signal
Prior art date
Application number
KR1020130073875A
Other languages
English (en)
Other versions
KR20150001134A (ko
Inventor
최윤희
남상완
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020130073875A priority Critical patent/KR102081757B1/ko
Priority to US14/223,368 priority patent/US9230659B2/en
Publication of KR20150001134A publication Critical patent/KR20150001134A/ko
Application granted granted Critical
Publication of KR102081757B1 publication Critical patent/KR102081757B1/ko

Links

Images

Classifications

    • 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/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • 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
    • 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
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • 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/24Bit-line control circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)

Abstract

본 발명의 실시 예에 따른 복수의 프로그램 루프들을 실행하여 메모리 셀을 프로그램하는 불휘발성 메모리 장치의 프로그램 방법은, 루프 카운트 또는 상기 메모리 셀에 인가될 프로그램 펄스의 레벨이 특정 범위에 포함되는지 검출하는 단계, 상기 검출 결과를 참조하여 메모리 셀의 비트 라인을 제 1 충전 속도 또는 상기 제 1 충전 속도보다 느린 제 2 충전 속도로 충전하는 단계, 그리고 상기 메모리 셀의 워드 라인에 상기 프로그램 펄스를 인가하는 단계를 포함하되, 상기 특정 범위는 상기 비트 라인으로 유입되는 전류 피크의 레벨이 기준치 이상으로 증가하는 동작 구간에 대응한다.

Description

불휘발성 메모리 장치 및 그것의 프로그램 방법{NONVOLATILE MEMORY DEVICE AND PROGRAM METHOD THEREOF}
본 발명은 반도체 메모리 장치에 관한 것으로, 좀 더 구체적으로는 피크 전류를 회피하도록 설정되는 불휘발성 메모리 장치 및 그것의 프로그램 방법에 관한 것이다.
반도체 메모리 장치는 크게 휘발성 반도체 메모리 장치(Volatile semiconductor memory device)와 불휘발성 반도체 메모리 장치(Non-volatile semiconductor memory device)로 구분될 수 있다. 휘발성 반도체 메모리 장치는 읽고 쓰는 속도가 빠르지만 전원 공급이 끊기면 저장된 내용이 사라져 버리는 단점이 있다. 반면에, 불휘발성 반도체 메모리 장치는 전원 공급이 중단되더라도 그 내용을 보존한다. 그러므로, 불휘발성 반도체 메모리 장치는 전원이 공급되었는지의 여부에 관계없이 보존되어야 할 내용을 저장하는 데 쓰인다.
불휘발성 메모리 장치의 대표적인 예로 플래시 메모리 장치가 있다. 플래시 메모리 장치는 컴퓨터, 휴대폰, 스마트폰, PDA, 디지털카메라, 캠코더, 보이스 리코더, MP3 플레이어, 개인용 휴대 단말기(PDA), 휴대용 컴퓨터(Handheld PC), 게임기, 팩스, 스캐너, 프린터 등과 같은 정보기기들의 음성 및 영상 데이터 저장 매체로서 널리 사용되고 있다. 최근, 스마트폰과 같은 모바일 장치들에 탑재하기 위하여 불휘발성 메모리 장치의 고용량, 고속 입출력, 저전력화 기술들이 활발하게 연구되고 있다.
본 발명에서는 프로그램 동작시에 발생하는 전류(또는, 전력) 피크를 감소시켜 소모 전력 감소 및 노이즈를 줄일 수 있는 불휘발성 메모리 장치가 개시될 것이다.
본 발명의 목적은 전력 피크의 발생을 억제할 수 있는 불휘발성 메모리 장치 및 그것의 프로그램 방법을 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 실시 예에 따른 복수의 프로그램 루프들을 실행하여 메모리 셀을 프로그램하는 불휘발성 메모리 장치의 프로그램 방법은, 루프 카운트 또는 상기 메모리 셀에 인가될 프로그램 펄스의 레벨이 특정 범위에 포함되는지 검출하는 단계, 상기 검출 결과를 참조하여 메모리 셀의 비트 라인을 제 1 충전 속도 또는 상기 제 1 충전 속도보다 느린 제 2 충전 속도로 충전하는 단계, 그리고 상기 메모리 셀의 워드 라인에 상기 프로그램 펄스를 인가하는 단계를 포함하되, 상기 특정 범위는 상기 비트 라인으로 유입되는 전류 피크의 레벨이 기준치 이상으로 증가하는 동작 구간에 대응한다.
상기 목적을 달성하기 위한 본 발명의 실시 예에 따른 불휘발성 메모리 장치는, 복수의 메모리 셀들을 포함하는 셀 어레이, 프로그램 동작시, 선택된 메모리 셀의 비트 라인에 셋업 전압 또는 프리차지 전압을 제공하는 페이지 버퍼, 그리고 프로그램 동작시, 루프 카운트 또는 상기 선택된 메모리 셀에 인가될 프로그램 펄스의 레벨을 참조하여 상기 비트 라인을 제 1 충전 속도 또는 제 2 충전 속도로 충전하도록 상기 페이지 버퍼를 제어하는 제어 로직을 포함한다.
본 발명에 따른 불휘발성 메모리 장치는 프로그램 동작시에 발생하는 피크 전류를 억제하여 소모 전력을 감소시킬 수 있다. 그리고 피크 전류에 의해서 야기되는 노이즈의 감소를 통해서 높은 데이터 신뢰성(Data Integrity)의 확보가 가능하다.
도 1은 본 발명의 실시 예에 따른 불휘발성 메모리 장치를 보여주는 블록도이다.
도 2는 본 발명의 실시 예에 따른 셀 어레이와 페이지 버퍼의 구성을 예시적으로 보여주는 블록도이다.
도 3은 도 1 또는 도 2의 페이지 버퍼의 구조를 간략히 보여주는 블록도이다.
도 4는 프로그램 동작시에 워드 라인가 비트 라인의 제어 동작을 간략히 보여주는 파형도이다.
도 5는 도 4의 프로그램 구간에 발생하는 동작을 간략히 보여주는 파형도이다.
도 6은 도 4의 프로그램 검증 구간에 수행되는 동작을 간략히 보여주는 파형도이다.
도 7a 및 도 7b는 본 발명의 효과를 설명하기 위한 파형도들이다.
도 8은 비트 라인 선택 트랜지스터에 제공되는 제어 신호를 간략히 보여주는 파형도이다.
도 9는 본 발명의 실시 예에 따른 프로그램 방법을 예시적으로 보여주는 순서도이다.
도 10은 도 9의 검증 읽기 동작을 간략히 보여주는 순서도이다.
도 11은 본 발명의 다른 실시 예에 따른 불휘발성 메모리 장치의 프로그램 방법을 보여주는 순서도이다.
도 12는 도 11의 검증 읽기 동작을 간략히 보여주는 순서도이다.
도 13은 도 1의 셀 어레이를 구성하는 메모리 블록(BLKi)을 예시적으로 보여주는 사시도이다.
도 14는 본 발명의 또 다른 실시 예에 따른 저장 장치를 보여주는 블록도이다.
도 15는 본 발명의 실시 예에 따른 솔리드 스테이트 디스크(SSD)를 포함하는 사용자 장치를 보여주는 블록도이다.
도 16은 본 발명의 다른 실시 예에 따른 메모리 시스템을 보여주는 블록도이다.
도 17은 본 발명의 다른 실시 예에 따른 데이터 저장 장치를 보여주는 블록도이다.
도 18은 본 발명에 따른 저장 장치 및 그것을 포함하는 컴퓨팅 시스템을 보여주는 도면이다.
도 19는 본 발명의 실시 예에 따른 휴대용 단말기를 나타내는 블록도이다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 실시 예를 첨부된 도면을 참조하여 설명하기로 한다. 동일한 구성 요소들은 동일한 참조번호를 이용하여 인용될 것이다. 유사한 구성 요소들은 유사한 참조번호들을 이용하여 인용될 것이다. 아래에서 설명될 본 발명에 따른 플래시 메모리 장치의 회로 구성과, 그것에 의해 수행되는 읽기 동작은 예를 들어 설명한 것에 불과하며, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 변화 및 변경이 가능하다.
더불어, 본 발명의 특징 및 기능을 설명하기 위한 불휘발성 저장 매체로서 낸드형 플래시 메모리를 예로 할 것이다. 하지만, 이 기술 분야에 정통한 사람은 여기에 기재된 내용에 따라 본 발명의 다른 이점들 및 성능을 쉽게 이해할 수 있을 것이다. 예를 들면, 본 발명의 기술은 PRAM, MRAM, ReRAM, FRAM, NOR 플래시 메모리 등에도 사용될 수 있다.
본 발명은 다른 실시 예들을 통해 구현되거나 적용될 수 있을 것이다. 게다가, 상세한 설명은 본 발명의 범위, 기술적 사상 그리고 다른 목적으로부터 상당히 벗어나지 않고 관점 및 응용에 따라 수정되거나 변경될 수 있다. 이하, 본 발명에 따른 실시 예를 첨부된 도면을 참조하여 상세히 설명한다.
도 1은 본 발명의 실시 예에 따른 불휘발성 메모리 장치를 보여주는 블록도이다. 도 1을 참조하면, 불휘발성 메모리 장치(100)는 셀 어레이(110), 행 디코더(120), 페이지 버퍼(130), 그리고 제어 로직(140)을 포함한다.
셀 어레이(110)는 워드 라인들(WLs) 또는 선택 라인들(SSL, GSL)을 통해 행 디코더(120)에 연결된다. 셀 어레이(110)는 비트 라인들(BLs)을 통해서 페이지 버퍼(130)에 연결된다. 셀 어레이(110)는 복수의 낸드형 셀 스트링들(NAND Cell Strings)을 포함한다. 셀 스트링들 각각의 채널은 수직 또는 수평 방향으로 형성될 수 있다. 본 발명의 셀 어레이(110)는 낸드 셀 스트링을 형성하는 복수의 메모리 셀들을 포함할 것이다. 복수의 메모리 셀들은 비트 라인(BLs)이나, 워드 라인(WLs)으로 제공되는 전압에 의해서 프로그램, 소거, 독출될 수 있다.
행 디코더(120)는 어드레스(ADD)에 응답하여 셀 어레이(110)의 메모리 블록들 중 어느 하나를 선택할 수 있다. 행 디코더(120)는 어드레스(ADD)에 응답하여 선택된 메모리 블록의 워드 라인들 중 어느 하나를 선택할 수 있다. 행 디코더(120)는 선택된 메모리 블록의 워드 라인에 동작 모드에 대응하는 전압을 전달한다. 프로그램 동작시 행 디코더(120)는 선택 워드 라인(Selected WL)에 프로그램 전압(Vpgm)과 검증 전압(Vfy)을, 비선택 워드 라인(Unselected WL)에는 패스 전압(Vpass)을 전달한다. 읽기 동작시 행 디코더(120)는 선택 워드 라인(Selected WL)에 선택 읽기 전압(Vrd)을, 비선택 워드 라인(Unselected WL)에는 비선택 읽기 전압(Vread)을 전달한다.
페이지 버퍼 유닛(130)은 기입 드라이버로 또는 감지 증폭기로 동작한다. 프로그램 동작시, 페이지 버퍼 유닛(130)은 셀 어레이(110)의 비트 라인으로 프로그램될 데이터에 대응하는 비트 라인 전압을 전달한다. 읽기 동작 또는 검증 읽기 동작시, 페이지 버퍼 유닛(130)은 선택된 메모리 셀에 저장된 데이터를 비트 라인(BL)을 통해서 감지한다. 페이지 버퍼 유닛(130)에 포함되는 복수의 페이지 버퍼들(PB0~PBn) 각각은 하나 또는 2개의 비트 라인에 연결될 수 있다.
복수의 페이지 버퍼들(PB0~PBn) 각각은 프로그램 동작시 선택된 비트 라인을 셋업(Set-up)한다. 여기서, '비트 라인 셋업(BL Set-up)'은 프로그램 전압(Vpgm)을 인가하기 전에 프로그램될 메모리 셀들의 비트 라인으로는 0V를, 그리고 프로그램 금지된 메모리 셀들의 비트 라인으로는 구동 전압(VDD 또는 Vcc)으로 충전하는 동작이다. 프로그램 금지된 비트 라인(Program Inhibited BL)의 충전을 통해서, 셀 스트링의 채널은 셀프 부스팅(Self-Boosting) 될 수 있다. 셀프 부스팅에 의해서 선택된 셀 스트링의 채널은 커플링에 의해서 프로그램 전압(Vpgm)과 함께 상승하게 된다.
하지만, 상대적으로 큰 용량을 가지는 비트 라인을 충전하기 위해 유입되는 전하량이 급격히 증가하게 된다. 즉, 시간에 대비하여 유입 전하량이 급격히 증가하는 경우, 큰 전류가 흐르게 되고, 피크 전류(Current Peak)가 야기될 수 있다. 본 발명의 페이지 버퍼 유닛(130)은 제어 로직(140)의 제어에 따라 이러한 유입 전하량의 급격한 상승을 억제할 수 있다.
하지만, 비트 라인의 충전은 프로그램 검증 동작(Program verify operation)시에도 발생한다. 선택된 메모리 셀에 저장된 데이터를 센싱하기 위해서 비트 라인의 충전이 선행된다. 이때에도 비트 라인의 충전에 따라 피크 전류가 발생할 수 있다. 본 발명의 페이지 버퍼 유닛(130)은 프로그램 동작시에 발생하는 비트 라인으로의 급격한 전하 유입을 제어하여 피크 전류에 의해 발생하는 문제들을 개선할 수 있다.
제어 로직(140)은 외부로부터 전달되는 명령어(CMD)에 응답하여 페이지 버퍼 유닛(130) 및 행 디코더(120)를 제어한다. 제어 로직(140)은 명령어(CMD)에 따라 선택된 메모리 셀에 대한 프로그램, 읽기, 그리고 소거 동작을 수행하도록 페이지 버퍼 유닛(130) 및 행 디코더(120)를 제어할 수 있다.
특히, 제어 로직(140)은 페이지 버퍼 유닛(130)의 비트 라인 셋업 동작을 제어하기 위한 비트 라인 셋업 컨트롤러(145)를 포함할 수 있다. 비트 라인 셋업 컨트롤러(145)는 프로그램 동작 또는 읽기 동작시 비트 라인을 충전 시간을 제어할 수 있다. 즉, 비트 라인 전압이 0V로부터 전원 전압(VDD) 레벨로 상승하는 시간을 제어할 수 있다. 이러한 상승 시간의 제어는 비트 라인에 급격히 유입되는 전류의 피크를 방지하기 위한 것이다. 비트 라인 셋업 컨트롤러(145)는 루프 카운트(Program loop count: 이하, Loop_cnt) 또는 프로그램 펄스의 레벨을 참조하여 비트 라인의 충전 속도를 조정할 수 있다.
비트 라인 셋업 컨트롤러(145)는 루프 카운트(Loop_cnt) 또는 프로그램 펄스의 레벨이 특정 범위에 포함되는 경우, 비트 라인의 셋업 또는 프리차지 시간을 가변할 수 있다. 비트 라인 셋업 컨트롤러(145)는 이러한 특정 범위에 대한 정보를 제공하기 위한 는 저장 소자를 포함할 수 있다.
비트 라인의 충전 속도는 프로그램 동작시 발생하는 피크 전류의 크기와 관계가 깊다. 본 발명의 불휘발성 메모리 장치(100)는 프로그램 동작시 특정 프로그램 루프에서 또는 특정 프로그램 펄스 레벨에서 비트 라인의 충전 시간을 변경하여 비트 라인 충전에 따르는 피크 전류를 억제할 수 있다.
도 2는 본 발명의 실시 예에 따른 셀 어레이와 페이지 버퍼 유닛의 구성을 예시적으로 보여주는 블록도이다. 도 2를 참조하면, 각각의 페이지 버퍼들(PB0~PBn-1)은 비트 라인들(BL0~BLn-1)에 연결된다. 비트 라인들(BL0~BLn-1)은 낸드 셀 스트링들(111, 112, 113, …, 114)에 연결된다.
셀 어레이(110)에 분포하는 낸드 셀 스트링들(111, 112, 113, …, 114)은 각각 스트링 선택 트랜지스터(SST)를 통해서 비트 라인(BL)과 연결된다. 각각 스트링 선택 트랜지스터(SST)의 게이트는 스트링 선택 라인(SSL)에 연결된다. 그리고 낸드 셀 스트링들(111, 112, 113, …, 114)은 각각 접지 선택 트랜지스터(GST)를 통해서 공통 소스 라인(CSL)과 연결된다. 각각 접지 선택 트랜지스터(GST)의 게이트는 접지 선택 라인(GSL)에 연결된다.
페이지 버퍼(PB0)는 낸드 셀 스트링(111)과 비트 라인(BL0)을 통해서 연결된다. 페이지 버퍼(PB0)는 프로그램 동작시 비트 라인을 셋업 또는 프리차지한다. 프로그램을 위해서 페이지 버퍼(PB0)는 비트 라인(BL0)을 0V 또는 전원 전압(VDD)으로 셋업할 수 있다. 그리고 검증 읽기 동작(Verify read operation)을 위해서 페이지 버퍼(PB0)는 비트 라인을 프리차지(Precharge)할 수 있다. 페이지 버퍼(PB0)에는 전원 전압(VDD)을 비트 라인에 공급하기 위한 트랜지스터들이 포함된다. 그리고 페이지 버퍼(PB0)는 트랜지스터들을 제어하기 위한 제어 신호들(BLSHF, BLSLT, BLSETUP)을 제어 로직(140)으로부터 제공받는다. 제어 신호들(BLSHF, BLSLT, BLSETUP)에 의해서 프로그램 동작시 비트 라인 셋업 속도 또는 프리차지 속도가 제어될 수 있다.
페이지 버퍼들(PB1, PB2, PB3, …, PBn-1) 각각의 동작도 상술한 페이지 버퍼(PB0)와 동일한 절차에 따라서 각각에 연결되는 비트 라인들을 셋업 또는 프리차지할 수 있다.
도 3은 도 1 또는 도 2의 페이지 버퍼의 구조를 간략히 보여주는 블록도이다. 도 3을 참조하면, 비트 라인(BL0)에 연결되는 페이지 버퍼(PB0)는 낸드 셀 스트링(111, 도 2 참조)의 메모리 셀들과 연결될 수 있다. 페이지 버퍼(PB0)는 비트 라인(BL0)과 연결되는 센싱 노드(SO)를 포함한다. 그리고 페이지 버퍼(PB0)는 센싱 노드(SO)에 각각 연결되는 센싱 래치(131), 데이터 래치들(132, 133), 캐시 래치(134) 그리고 셋업 회로(135)를 포함한다.
프로그램 동작시, 셋업 회로(135)에 의해서 비트 라인(BL0)이 셋업될 수 있다. 예를 들면, 제어 신호들(BLSETUP, BLSLT, BLSHF)이 활성화되면, 선택 트랜지스터들(HNT, N1, PS)이 턴온된다. 그러면, 셋업 회로(135)에서 제공되는 전원 전압(VDD)에 의해서 비트 라인(BL0)에 전하가 충전된다. 하지만, 본 발명의 실시 예에 따르면, 제어 신호(BLSHF)의 상승 시간은 가변될 수 있다. 즉, 제어 신호(BLSHF)는 루프 카운트에 따라 상대적으로 상승 기울기로 타깃 레벨에 도달할 수 있다. 하지만, 특정 루프 카운트에서는, 제어 신호(BLSHF)의 상승 기울기는 상대적으로 완만하게 제공될 수 있다. 이러한 선택 트랜지스터(N1)의 게이트 전압으로 제공되는 제어 신호(BLSHF)의 기울기를 가변하여 비트 라인의 셋업 동작에서 발생하는 피크 전류의 발생을 제어할 수 있다.
더불어, 프로그램 검증 동작을 위해서 페이지 버퍼(PB0)는 비트 라인(BL0)을 프리차지하여 선택된 메모리 셀의 온/오프 여부를 감지한다. 프로그램 검증 동작을 위해서 비트 라인(BL0)은 프리차지된다. 이때, 셋업 회로(135)는 비활성화되도록 제어 신호들(BLSETUP, SOGND)이 인가될 수 있다. 비트 라인(BL0)을 프리차지하기 위해서 로드 스위치(P2)가 턴온되고, 선택 트랜지스터들(BLSFH, BLSLT)이 턴온된다. 이때에도 제어 신호(BLSHF)의 상승 시간은 가변될 수 있다. 즉, 루프 카운트 또는 해당 루프 카운트에서 제공되는 프로그램 펄스의 레벨에 따라서 제어 신호(BLSHF)의 상승 기울기는 가변될 수 있다. 이러한 선택 트랜지스터(N1)를 제어하기 위한 제어 신호(BLSHF)의 상승 기울기를 가변하여 비트 라인(BL0)의 프리차지 동작에 동반되는 피크 전류의 발생을 억제할 수 있다.
페이지 버퍼(130)에 포함되는 다른 페이지 버퍼들(PB1~PBn-1)도 페이지 버퍼(PB0)와 동일한 기능을 포함한다. 따라서, 본 발명의 페이지 버퍼 유닛(130)은 프로그램 동작시 발생하는 피크 전류를 효과적으로 억제할 수 있다.
도 4는 프로그램 동작시에 워드 라인과 비트 라인의 제어 동작을 간략히 보여주는 파형도이다. 도 4를 참조하면, 하나의 프로그램 루프 구간(PGM Loop i, i는 자연수)에서의 워드 라인 전압(VWL)과 페이지 버퍼 유닛(130)의 동작이 예시적으로 도시되어 있다.
하나의 프로그램 루프(PGM Loop i)는 개략적으로 프로그램 구간(PGM)과 프로그램 검증 구간(PGM VFY)으로 구분될 수 있다. 프로그램 구간(PGM) 동안 선택된 메모리 셀들의 워드 라인(WL)에 프로그램 펄스(Vpgm_i)가 인가된다. 도시된 파형도에서 T0 시점부터 T1 시점 사이의 구간이 프로그램 구간(PGM)에 대응한다. 프로그램 구간(PGM)은 인용부호 ①로 아래에 나타내었다. 프로그램 구간(PGM)은 세부적으로 비트 라인 셋업(BL Setup) 구간, 프로그램 실행(PGM Execution) 구간, 그리고 비트 라인 디스차지(BL Discharge) 구간으로 구분될 수 있다.
비트 라인 셋업(BL Setup) 구간에서 선택된 메모리 셀들의 비트 라인을 전원 전압(VDD) 또는 0V의 레벨로 충전하는 동작이 수행된다. 비트 라인 셋업(BL Setup) 구간에서 타깃 상태로 프로그램될 메모리 셀들의 비트 라인은 0V로 설정될 것이다. 반면, 프로그램 금지된 메모리 셀들의 비트 라인들은 전원 전압(VDD)으로 설정된다. 본 발명의 실시 예에 따르면, 전원 전압(VDD)으로 설정되는 비트 라인의 셋업 속도가 프로그램 루프의 수(PGM Loop_i)나 프로그램 펄스(Vpgm_i)의 레벨에 따라 가변될 수 있다.
비트 라인 셋업 구간(BL Setup)에 후속하여 프로그램 실행 구간(PGM Execution)이 이어진다. 프로그램 실행 구간에서는 선택된 메모리 셀들의 워드 라인에 프로그램 펄스(Vpgm_i)가 인가된다. 프로그램 펄스(Vpgm_i)의 인가 후에는 비트 라인 디스차지 구간(BL Discharge)이 이어진다. 비트 라인 디스차지 구간(BL Discharge)에서 셋업된 비트 라인 전압이 접지 레벨로 방전될 것이다.
프로그램 검증 구간(PGM VFY)은 도시된 파형도의 T1 시점부터 T2 시점 사이에 해당한다. 프로그램 검증 구간(PGM VFY)은 인용부호 ②로 도면에 나타내었다. 프로그램 검증 구간(PGM VFY)에서는 선택된 메모리 셀들에 대한 프로그램 성공 여부를 검출하기 위한 읽기 동작이 수행된다. 프로그램 검증 구간(PGM VFY)에서 선택된 워드 라인으로는 검증 전압들(Vfy1, Vfy2)이 인가될 수 있다. 그리고 프로그램 검증 구간(PGM VFY)에는 세부적으로 비트 라인 프리차지 구간(BL PRCH), 비트 라인 디벨럽 구간(BL Devleop), 그리고 센싱 구간(Sensing)이 포함된다. 여기서 센싱 구간(Sensing)은 더 세부적으로 센싱 노드 디벨럽(SO Develop), 센싱 노드(SO Sensing) 등으로 구분될 수 있다. 이러한 프로그램 검증 구간의 제반 동작들은 검증 전압들(Vfy1, Vfy2) 각각에 대해서 수행될 수 있다. 더불어 검증 전압들(Vfy1, Vfy2)은 2개 레벨로 도시하였으나, 3개 또는 그 이상의 검증 전압이 제공될 수 있음은 잘 이해될 것이다.
본 발명의 실시 예에 따르면, 비트 라인 프리차지(BL PRCH) 구간에서 비트 라인의 프리차지 속도가 프로그램 루프 수(PGM Loop_i, 또는 루프 카운트)나 프로그램 펄스(Vpgm_i)의 레벨에 따라 가변될 수 있다. 즉, 피크 전류가 발생할 확률이 높은 프로그램 루프에서 또는 특정 레벨의 프로그램 펄스가 인가되는 루프 구간에서 피크 전류의 억제를 위해 비트 라인 셋업 또는 프리차지 속도가 낮게 제어될 수 있다.
이상에서 어느 하나의 프로그램 루프(PGM Loop i)에서 비트 라인의 셋업 또는 비트 라인의 프리차지 동작을 살펴보았다. 비트 라인의 셋업이나 프리차지 동작시에 비트 라인들로 유입되는 전하량이 상대적으로 크기 때문에 피크 전류가 발생할 수 있다. 하지만, 본 발명에서는 비트 라인의 셋업 속도 또는 비트 라인의 프리차지 속도를 특정 루프에서 감소시킬 수 있기 때문에 피크 전류의 발생을 효과적으로 억제할 수 있다.
도 5는 도 4의 프로그램 구간에 발생하는 동작을 간략히 보여주는 파형도이다. 도 3 및 도 5를 참조하여, 프로그램 구간(PGM) 동안에 비트 라인의 셋업 동작이 설명될 것이다.
TO 시점에서, 프로그램을 위한 비트 라인의 셋업(BL Setup) 동작이 시작된다. 비트 라인(BL)의 셋업을 위해서 제어 신호들(BLSETUP, SOGND, SHLD)은 0V, 제어 신호들(BLCLAMP, BLSLT)은 전원 전압(VDD) 또는 그보다 높은 전압(VDD+Vth)의 레벨로 제공될 것이다. 그러면, 셋업 트랜지스터(PS)와 선택 트랜지스터들(HNT)이 턴온된다. 그리고 선택 트랜지스터(N1)의 게이트에 입력되는 제어 신호(BLSHF)는 점차 증가하게 될 것이다. 이때, 제어 신호(BLSHF)의 증가에 따라 게이트 전압의 상승하는 선택 트랜지스터(N1)를 통해서 비트 라인으로는 전하들이 충전된다.
본 발명의 제어 신호(BLSHF) 인가 방법에 따르면, 제어 신호(BLSHF)는 특정 루프 카운트(Loop_cnt)에서는 기울기(α)의 증가율로 상승한다. 그리고 타깃 레벨(V1)에 도달하면 제어 신호(BLSHF)는 더 이상 변화하지 않고 타깃 레벨(V1)에 고정된다. 이 경우 제어 신호(BLSHF)의 셋업되는 시간은 상대적으로 짧은 구간(T0~T0_a)에 대응한다. 반면, 제어 신호(BLSHF)는 전류 소모가 상대적으로 큰 루프 카운트(Loop_cnt)에서는 기울기(β)의 증가율로 상승한다. 그리고 타깃 레벨(V1)에 도달하면 제어 신호(BLSHF)는 더 이상 변화하지 않고 타깃 레벨(V1)에 고정된다. 상대적으로 완만한 기울기(β)로 증가하는 경우, 제어 신호(BLSHF)의 셋업 시간은 상대적으로 긴 구간(T0~T0_b)에 대응한다.
제어 신호(BLSHF)의 상승 기울기의 제어를 통해서 선택 트랜지스터(N1)를 통해서 비트 라인으로 유입되는 전하량을 제어할 수 있다. 전하량의 시간 변화율이 곧 유입 전류의 크기가 되므로, 이러한 기능은 피크 전류의 크기를 낮출 수 있음을 의미한다.
결국, 본 발명의 비트 라인 셋업 방법에 따르면 제어 신호(BLSHF)의 상승 속도 또는 상승 시간의 제어를 통해서 비트 라인의 셋업 구간에서 발생하는 피크 전류의 크기를 제어할 수 있다. 또한, 제어 신호(BLSHF)의 상승 기울기를 프로그램 루프의 수 또는 프로그램 전압의 레벨에 따라 선택할 수 있다. 이러한 기능을 통해서 피크 전류가 상대적으로 큰 프로그램 시점에의 비트 라인 셋업 동작에서 상대적으로 작은 상승 기울기를 갖도록 제어 신호(BLSHF)가 제공될 수 있다.
T0_b 시점에서 비트 라인(BL)의 셋업이 완료되고, 프로그램 펄스(Vpgm_i)가 인가될 것이다. 이때, 프로그램 금지로 설정된 비트 라인(BL)은 전원 전압(VDD) 레벨로 유지될 것이다. 프로그램 실행 구간이 T0_c 시점에 종료된다.
T0_c 시점에서는 비트 라인 디스차지(BL Discharge) 동작이 수행된다. 비트 라인에 충전된 전하를 방전하기 위해서 셋업 트랜지스터(PS)와 클램프 트랜지스터(NS)가 턴오프되도록 제어 신호(BLSETUP)는 VDD 레벨로, 제어 신호(BLCLAMP)는 0V 레벨로 각각 천이된다. 선택 트랜지스터(N1)를 턴오프시키기 위해서 제어 신호(BLSHF)는 0V 레벨로 접지된다. 그리고 제어 신호(SHLD)가 전원 전압(VDD) 레벨로 상승하면, 쉴드 트랜지스터(N2)가 턴온된다. 이때 비트 라인(BL0)은 접지되고, 비트 라인에 충전된 전하는 디스차지된다. 비트 라인 전압(VBL)의 전위 변화를 살펴보면 비트 라인(BL0)의 셋업 및 디스차지의 결과를 확인할 수 있다.
이상의 도 5에서 설명된 바에 따르면, 루프 카운트(PGM Loop_i)나 프로그램 펄스의 레벨을 참조하여 비트 라인의 셋업 속도가 제어될 수 있다. 커플링이나 메모리 셀들의 문턱 전압 변화에 따라 특정 루프에서 피크 전류가 더 크게 나타날 수 있다. 본 발명의 프로그램 방법에 따르면, 이러한 프로그램 루프에서 비트 라인의 셋업 속도를 낮게 제어할 수 있다. 따라서, 비트 라인으로 유입되는 전하량의 시간당 변화율이 낮아지게 된다. 즉, 본 발명의 실시 예에 따르면, 비트 라인 셋업 동작시에 피크 전류의 크기를 억제할 수 있다.
도 6은 도 4의 프로그램 검증 구간에 수행되는 동작을 간략히 보여주는 파형도이다. 도 3 및 도 6을 참조하여, 프로그램 검증 구간(PGM VFY) 동안에 비트 라인의 프리차지 동작이 설명될 것이다.
T1 시점에서, 프로그램 검증 읽기 동작을 위한 비트 라인의 프리차지(BL PRCH) 동작이 시작된다. 비트 라인(BL)의 프리차지 동작을 위해서 제어 신호들(BLSETUP, BLSLT)은 전원 전압(VDD) 또는 전원 전압보다 높은 레벨(VDD+Vth)로 설정된다. 그리고 제어 신호들(BLCLAMP, SOGND, SHLD)은 0V로 설정될 것이다. 이러한 상태에서, 로드 트랜지스터(P2)를 턴온시키기 위하여 제어 신호(LOAD)가 OV로 활성화된다. 그러면, 센싱 노드(SO)는 전원 전압 레벨(VDD)로 상승하게 된다. 더불어, 선택 트랜지스터(N1)의 게이트에 제공되는 제어 신호(BLSHF)는 점차 증가하게 될 것이다. 제어 신호(BLSHF)의 증가에 따라 선택 트랜지스터(N1)의 채널 크기가 증가하게 된다. 그리고 센싱 노드(SO)에 충전된 전하들이 비트 라인(BL0)으로 유입될 것이다.
본 발명의 제어 신호(BLSHF) 인가 방법에 따르면, 제어 신호(BLSHF)의 레벨은 특정 프로그램 루프에서는 기울기(α)의 증가율로 상승할 수 있다. 그리고 타깃 레벨(V1)에 도달하면 제어 신호(BLSHF)는 더 이상 변화하지 않고 타깃 레벨(V1)에 고정된다. 이 경우, 비트 라인(BL)의 프리차지 시간은 상대적으로 짧은 구간(T1~T1_a)에 대응한다. 반면, 제어 신호(BLSHF)는 전류 소모가 상대적으로 큰 프로그램 루프에서는 기울기(β)의 증가율로 상승한다. 그리고 타깃 레벨(V1)에 도달하면 제어 신호(BLSHF)는 더 이상 변화하지 않고 타깃 레벨(V1)에 고정된다. 상대적으로 완만한 기울기(β)로 증가하는 경우, 비트 라인의 프리차지에 소요되는 시간은 상대적으로 긴 구간(T1~T1_b)에 대응한다.
이와 같이, 제어 신호(BLSHF)의 상승 기울기를 제어하여 비트 라인으로 유입되는 전하의 양을 용이하게 제어할 수 있다. 이러한 기능은 비트 라인의 프리차지 동작시 발생하는 피크 전류의 크기를 낮출 수 있음을 의미한다.
결국, 본 발명의 비트 라인 프리차지 방법에 따르면 제어 신호(BLSHF)의 상승 속도 또는 상승 시간의 제어를 통해서 비트 라인의 프리차지 동작시에 발생하는 피크 전류의 발생을 억제할 수 있다. 또한, 제어 신호(BLSHF)의 상승 기울기를 루프 카운트(Loop_cnt) 또는 프로그램 펄스의 레벨에 따라 선택할 수 있다. 이러한 기능을 통해서 피크 전류가 상대적으로 프로그램 루프의 비트 라인 프리차지 동작에서 상대적으로 작은 상승 기울기를 갖도록 제어 신호(BLSHF)가 제공될 수 있다.
T1_b 시점에서 비트 라인(BL)의 프리차지 동작이 완료되고, 비트 라인의 디벨럽(BL Develop) 동작이 시작된다. 비트 라인의 디벨럽(Develop)을 위해서 선택 트랜지스터(N2)는 턴오프된다. 이러한 상태에서 비트 라인(BL0)에 충전된 전하는 메모리 셀의 프로그램 상태에 따라서 방전되거나 유지될 것이다.
이상의 도 6에서 설명된 바에 따르면, 루프 카운트(Loop_cnt)나 프로그램 펄스의 레벨을 참조하여 비트 라인의 프리차지 속도가 제어될 수 있다. 커플링이나 메모리 셀들의 문턱 전압 변화에 따라 특정 루프에서 피크 전류가 더 크게 발생할 수 있다. 본 발명의 프로그램 방법에 따르면, 이러한 프로그램 루프에서 비트 라인의 프리차지 속도를 낮게 제어할 수 있다. 따라서, 비트 라인으로 시간당 유입되는 전하량이 낮아지게 된다. 즉, 본 발명의 실시 예에 따르면, 비트 라인 프리차지 동작시에 피크 전류의 크기를 억제할 수 있다.
도 7a 및 도 7b는 본 발명의 효과를 설명하기 위한 파형도들이다. 도 7a는 프로그램 동작시 비트 라인의 셋업 속도 또는 비트 라인의 프리차지 속도를 가변하지 않은 경우에 발생하는 피크 전류의 양상을 보여준다. 도 7b는 프로그램 동작시 비트 라인의 셋업 속도 또는 비트 라인의 프리차지 속도를 가변했을 경우의 피크 전류의 양상을 보여준다.
도 7a를 참조하면, 프로그램 동작시 각각의 루프(Loop_cnt)에서는 프로그램 전압(VpgmN, N은 자연수)과 이어지는 검증 전압들(Vfy1, vfy2)이 제공된다. 여기서, 매 루프마다 제공되는 검증 전압들의 레벨은 3개 이상으로 주어질 수 있으나 설명의 편의를 위해서 2개의 검증 전압들(Vfy1, Vfy2)이 제공되는 것을 가정하기로 한다.
루프 카운트(Loop count) '0'에 대응하는 프로그램 루프(Loop)에서, 프로그램 전압(Vpgm1)과 검증 전압들(Vfy1, Vfy2)이 후속하여 인가된다. 이후에 이어지는 프로그램 루프들(loop1, loop2, loop3, …)에서는 점차적으로 증가하는 프로그램 전압(Vpgm2, Vpgm3, Vpgm4, …)들이 인가될 것이다. 각각의 프로그램 루프들에서는 이전의 루프들에서 제공된 검증 전압들과 동일한 레벨의 검증 전압이 인가될 것이다. 각각의 프로그램 루프들에서는 비트 라인의 셋업, 또는 비트 라인의 프리차지 동작이 실시될 것이다.
프로그램 동작시, 비트 라인의 셋업 동작이나 비트 라인의 프리차지 동작에서 선택 트랜지스터(N1, 도 3 참조)의 게이트 전압인 제어 신호(BLSHF)의 상승 기울기(α)가 도시된 바와 같이 모든 루프 카운트(Loop_cnt)에서 일정한 것으로 가정한다. 따라서, 비트 라인의 셋업 속도가 일정한 경우, 루프 카운트(Loop_cnt) 또는 인가되는 프로그램 펄스의 레벨에 따라서 피크 전류의 크기가 가변될 수 있다. 예를 들면, 루프 카운트(loop2, loop3, loop4)에서 발생하는 피크 전류의 레벨은 루프 카운(loop0, loop1)에서 발생하는 피크 전류의 레벨보다 커질 수 있다. 피크 전류는 선택된 메모리 셀들 중에서 프로그램 완료된 메모리 셀들의 수나 커플링에 영향을 받을 수 있다. 따라서, 루프 카운트(Loop_cnt)에 따라서 피크 전류의 크기가 달라질 수 있다. 이러한 피크 전류의 레벨은 도시된 피크 전류의 최대치들을 연결한 곡선(C1)으로 나타날 수 있다.
도 7b를 참조하면, 비트 라인의 셋업 동작이나 비트 라인의 프리차지 동작에서 제어 신호(BLSHF)의 상승 기울기가 루프 카운트에 따라서 변하는 경우를 보여준다. 루프 카운트(loop0, loop1)에서는 선택 트랜지스터(N1)의 제어 신호(BLSHF)의 상승 기울기는 α로 제어된다. 그리고 루프 카운트(loop2, loop3, loop4)에서는 제어 신호(BLSHF)의 상승 기울기는 α보다 작은 β로 제어된다. 이 경우, 비트 라인의 셋업 속도나 프리차지 속도는 감소되며, 결과적으로 비트 라인으로 유입되는 전하량은 감소한다. 따라서, 피크 전류의 레벨도 상대적으로 감소하게 될 것이다.
도 8은 선택 트랜지스터에 제공되는 제어 신호를 간략히 보여주는 파형도이다. 도 8을 참조하면, 선택 트랜지스터(N1)의 게이트에 제공되는 제어 신호(BLSHF)의 파형이 개시된다.
먼저, [a] 파형도를 참조하면, 상승 기울기 α로 제어 신호(BLSHF)가 상승한다. 제어 신호(BLSHF)는 t0 시점부터 상승하기 시작하여 t1 시점에 타깃 전압(V1)에 도달한다. 즉, 제어 신호(BLSHF)는 타깃 전압(V1)에 도달하기까지 시간에 대한 상승 기울기(α)로 증가하게 될 것이다. 이때 제어 신호(BLSHF)가 타깃 레벨(V1)에 도달하는데 소요되는 시간은 (ΔT1)에 대응한다.
[b] 파형도를 참조하면, 제어 신호(BLSHF)는 t0 시점부터 상승하기 시작하여 t2 시점에 타깃 전압(V1)에 도달한다. 즉, 제어 신호(BLSHF)는 시간에 대한 상승 기울기(β)로 증가하게 될 것이다. 이때 제어 신호(BLSHF)가 타깃 레벨(V1)에 도달하는 시간은 (ΔT2)에 대응한다. 상승 기울기(β)는 상승 기울기(α)에 비해서 상대적으로 완만하다. 따라서, 선택 트랜지스터(N1)의 채널로 유입되는 전하량은 제어 신호(BLSHF)가 상승 기울기(α)로 제어되는 경우보다, 상승 기울기(β)로 제어되는 경우에 더 감소하게 될 것이다. 따라서, 제어 신호(BLSHF)의 기울기나 또는 제어 신호(BLSHF)의 셋업 시간을 제어하여 피크 전류의 크기를 제어할 수 있음은 잘 이해될 것이다.
도 9는 본 발명의 실시 예에 따른 프로그램 방법을 예시적으로 보여주는 순서도이다. 도 9를 참조하면, 프로그램 동작시 루프 카운트에 따라 비트 라인의 셋업 속도 또는 기울기를 가변하여 피크 전류의 크기를 제어할 수 있다.
S110 단계에서, 선택된 메모리 셀들에 입력된 데이터가 로드된다. 예를 들면, 페이지 버퍼(130)에 구비되는 데이터 래치들에 쓰기 데이터가 로드될 것이다.
S120 단계에서, 루프 카운트(Loop_cnt)가 초기화된다. 초기화된 루프 카운트(Loop_cnt)의 값은 '0'이 될 것이다.
S130 단계에서, 루프 카운트(Loop_cnt)가 특정 조건을 만족하는지 검출된다. 예를 들면, 루프 카운트(Loop_cnt)의 범위가 검출될 수 있다. 예컨대, 루프 카운트(Loop_cnt)가 상대적으로 큰 피크 전류가 발생하는 범위(L≤Loop_cnt<M, L, M은 자연수)인지 검출될 수 있다. 카운트되는 루프 카운트(Loop_cnt)가 범위(L≤Loop_cnt<M)에 포함되지 않는 경우, 절차는 S140 단계로 이동한다. 반면, 카운트되는 루프 카운트(Loop_cnt)가 범위(L≤Loop_cnt<M)에 포함되는 경우, 절차는 S150 단계로 이동한다. 여기서, 루프 카운트(Loop_cnt)의 범위가 L 이상이고, M 미만인 경우를 예로 들었으나 본 발명은 여기에 국한되지 않는다. 즉, 루프 카운트(Loop_cnt)가 특정 수 이상인 경우 또는 특정 수 이하인 경우도 검출될 수 있을 것이다.
S140 단계에서, 제어 로직(140)은 비트 라인의 셋업을 위해서 선택 트랜지스터(N1)의 게이트에 제공되는 제어 신호(BLSHF)를 상승 기울기 α로 제공한다. 따라서, 비트 라인으로 제공되는 전하량은 상대적으로 증가하게 될 것이다.
S150 단계에서, 제어 로직(140)은 비트 라인의 셋업을 위해서 선택 트랜지스터(N1)의 게이트에 제공되는 제어 신호(BLSHF)를 상승 기울기 β로 제공한다. 상승 기울기 β는 상승 기울기 α에 비해서 완만하다. 따라서, 선택 트랜지스터(N1)의 채널의 크기는 상대적으로 느리게 확장되며, 비트 라인으로 제공되는 전하량은 상대적으로 작아진다. 따라서, 피크 전류가 발생하더라도 제한된 선택 트랜지스터(N1)의 채널 폭에 의해서 피크 전류의 레벨도 제한될 것이다.
S160에서, 선택된 메모리 셀들의 워드 라인으로는 프로그램 펄스(예를 들면, Vpgm)이 인가된다. 여기서, 선택된 메모리 셀들은 동일한 워드 라인에 연결되며, 멀티 레벨 셀들로 구성될 수 있다.
S170에서, 선택된 메모리 셀들에 대한 검증 읽기 동작이 실시된다. 타깃 상태에 대한 검증 읽기 동작을 위해서 선택된 메모리 셀들의 워드 라인으로는 검증 전압(Vfy1, Vfy2, …)이 제공될 것이다. 물론, 검증 읽기 동작에서도 비트 라인은 프리차지되어야 한다. 프리차지를 위해서도 상술한 선택 트랜지스터(N1)의 게이트에 제공되는 제어 신호(BLSHF)의 상승 기울기의 조정이 가능하다.
S180 단계에서, 선택된 메모리 셀들에 대한 검증 읽기 결과에 따라 동작 분기가 이루어진다. 즉, 선택된 메모리 셀들이 모두 오프셀(Off-cell)인 것으로 나타나면(Yes 방향), 프로그램 절차는 종료된다. 반면, 선택된 메모리 셀들 중에서 온셀이 존재하는 것으로 식별되면 프로그램 페일(Fail)로 판정된다(No 방향). 그리고 절차는 S190 단계로 이동한다.
S190 단계에서, 제어 로직(140)은 루프 카운트(Loop_cnt)가 최대값(Max Loop_cnt)에 도달되었는지를 검출한다. 만일, 루프 카운트(Loop_cnt)가 최대값(Max Loop_cnt)에 도달한 것으로 판단되면 프로그램 절차는 무조건 종료된다. 반면, 루프 카운트(Loop_cnt)가 최대값(Max Loop_cnt)에 도달하지 않은 것으로 판단되면, 절차는 S195 단계로 이동한다.
S195 단계에서, 루프 카운트(Loop_cnt)는 카운트 업(Count up)된다. 그리고 절차는 증가된 루프 카운트에 대응하는 프로그램 동작을 실시하기 위한 S130 단계로 복귀한다.
이상에서, 루프 카운트(Loop_cnt)의 크기에 따라 제어 신호(BLSHF)를 상승 기울기를 가변하는 실시 예가 설명되었다. 이러한 실시 예에 따르면, 특정 루프 카운트(Loop_cnt)에서, 비트 라인을 셋업 또는 프리차지하기 위한 제어 신호(BLSHF)의 상승 기울기가 감소할 수 있다. 따라서, 특정 루프 카운트에 대응하는 프로그램 동작시에 발생하는 피크 전류의 레벨을 용이하게 제어할 수 있다.
도 10은 도 9의 검증 읽기 동작을 간략히 보여주는 순서도이다. 도 10을 참조하여, 검증 읽기 동작에 대응하는 도 10의 S170 단계가 구체적으로 설명될 것이다.
S171 단계에서, 루프 카운트(Loop_cnt)가 특정 조건을 만족하는지 검출된다. 예를 들면, 현재의 루프 카운트(Loop_cnt)의 범위가 검출될 수 있다. 루프 카운트(Loop_cnt)가 상대적으로 큰 피크 전류가 발생하는 범위(L≤Loop_cnt<M, L, M은 자연수)인지 검출될 수 있다. 루프 카운트(Loop_cnt)가 범위(L≤Loop_cnt<M)에 포함되지 않는 경우, 절차는 S172 단계로 이동한다. 반면, 루프 카운트(Loop_cnt)가 범위(L≤Loop_cnt<M)에 포함되는 경우, 절차는 S173 단계로 이동한다.
S172 단계에서, 제어 로직(140)은 비트 라인의 프리차지를 위해서 선택 트랜지스터(N1)의 게이트에 제공되는 제어 신호(BLSHF)를 상승 기울기 α로 제공한다. 따라서, 비트 라인으로 유입되는 전하량은 상대적으로 증가하게 될 것이다.
S173 단계에서, 제어 로직(140)은 비트 라인의 프리차지를 위해서 선택 트랜지스터(N1)의 게이트에 제공되는 제어 신호(BLSHF)를 상승 기울기 β로 제공한다. 상승 기울기 β는 상승 기울기 α에 비해서 완만하다. 따라서, 선택 트랜지스터(N1)의 채널의 크기는 상대적으로 느리게 확장되며, 비트 라인으로 충전되는 전하량은 상대적으로 작아진다. 따라서, 제한된 선택 트랜지스터(N1)의 채널 폭에 의해서 피크 전류의 레벨도 제한될 것이다.
S174 단계에서, 비트 라인(BL)에 충전된 전하량은 선택된 메모리 셀의 온/오프 상태에 따라서 변화하게 될 것이다. 이러한 동작을 비트 라인 디벨럽(Develop)이라 한다.
S175 단계에서, 비트 라인 디벨럽에 의해서 변화된 비트 라인의 전압 레벨에 대한 검출이 수행된다. 디벨럽된 비트 라인의 전하량 또는 비트 라인의 전압이 센싱 노드(SO)로 전달된다.
S176 단계에서, 센싱 노드(SO)의 레벨은 페이지 버퍼(PB0)에 구비되는 센싱 래치(131, 도3 참조)에 저장될 것이다. 센싱 래치(131)에 저장된 데이터는 외부로 출력되어 프로그램 완료 여부(Pass/Fail)를 판단하는 근거로 사용될 것이다.
이상에서는, 검증 읽기 동작시에 수행되는 비트 라인의 프리차지 속도의 제어 방법이 설명되었다. 비트 라인의 프리차지 속도는 루프 카운트(Loop_cnt)를 참조하여 결정할 수 있다. 특정 루프 카운트(Loop_cnt)에서, 비트 라인을 프리차지하기 위한 제어 신호(BLSHF)의 상승 기울기를 상대적으로 감소시킬 수 있다. 따라서, 특정 루프 카운트(Loop_cnt)의 프로그램 검증 동작에서 발생하는 피크 전류의 레벨을 용이하게 제어할 수 있다.
도 11은 본 발명의 다른 실시 예에 따른 불휘발성 메모리 장치의 프로그램 방법을 보여주는 순서도이다. 도 11을 참조하면, 프로그램 펄스의 레벨에 따라 비트 라인의 셋업 속도 또는 기울기를 가변할 수 있다.
S210 단계에서, 선택된 메모리 셀들에 입력된 데이터가 로드된다. 예를 들면, 페이지 버퍼 유닛(130)에 구비되는 데이터 래치들에 쓰기 데이터가 로드될 것이다.
S220 단계에서, 루프 카운트(Loop_cnt)가 초기화된다. 초기화된 루프 카운트(Loop_cnt)의 값은 '0'이 될 것이다.
S230 단계에서, 선택된 메모리 셀들의 워드 라인에 제공될 프로그램 펄스(Vpgm_i)의 레벨이 특정 조건에 해당되는지 검출된다. 예를 들면, 프로그램 펄스(Vpgm_i)의 레벨이 피크 전류의 레벨이 증가하는 범위(Va ≤ Vpgm_i < Vb)에 포함되는지 검출될 수 있다. 프로그램 펄스(Vpgm_i)의 레벨이 범위(Va ≤ Vpgm_i < Vb)에 포함되지 않는 경우, 절차는 S240 단계로 이동한다. 반면, 프로그램 펄스(Vpgm_i)의 레벨이 범위(Va ≤ Vpgm_i < Vb)에 포함되는 경우, 절차는 S250 단계로 이동한다. 여기서, 프로그램 펄스(Vpgm_i)의 범위(Va ≤ Vpgm_i < Vb)는 예시에 불과함은 잘 이해될 것이다. 다양한 프로그램 펄스(Vpgm_i)의 범위가 장치의 특성에 따라 결정될 수 있을 것이다.
S240 단계에서, 제어 로직(140)은 비트 라인의 셋업을 위해서 선택 트랜지스터(N1)의 게이트에 제공되는 제어 신호(BLSHF)를 상승 기울기 α로 제공한다.
S250 단계에서, 제어 로직(140)은 비트 라인의 셋업을 위해서 선택 트랜지스터(N1)의 게이트에 제공되는 제어 신호(BLSHF)를 상승 기울기 β로 제공한다. 상승 기울기 β는 상승 기울기 α에 비해서 완만하다. 따라서, 선택 트랜지스터(N1)의 채널의 크기는 상대적으로 느리게 확장되며, 비트 라인으로 제공되는 전하량은 상대적으로 작아진다. 따라서, 제한된 선택 트랜지스터(N1)의 채널 폭에 의해서 피크 전류의 레벨도 제한될 것이다.
S260에서, 선택된 메모리 셀들의 워드 라인으로는 프로그램 펄스(예를 들면, Vpgm_i)가 인가된다.
S270에서, 선택된 메모리 셀들에 대한 검증 읽기 동작이 실시된다. 타깃 상태에 대한 검증 읽기 동작을 위해서 선택된 메모리 셀들의 워드 라인으로는 검증 전압(Vfy1, Vfy2, …)이 제공될 것이다. 물론, 검증 읽기 동작에서도 비트 라인은 프리차지되어야 한다. 비트 라인의 프리차지를 위해서도 상술한 선택 트랜지스터(N1)의 게이트에 제공되는 제어 신호(BLSHF)의 상승 기울기의 조정이 가능하다.
S280 단계에서, 선택된 메모리 셀들에 대한 검증 읽기 결과에 따라 동작 분기가 이루어진다. 즉, 선택된 메모리 셀들이 모두 오프셀(Off-Cell)인 것으로 나타나면(Yes 방향), 프로그램 절차는 종료된다. 반면, 선택된 메모리 셀들 중에서 온셀(On-Cell)이 존재하는 것으로 식별되면, 프로그램 페일(Fail)로 판정된다(No 방향). 그리고 절차는 S290 단계로 이동한다.
S290 단계에서, 제어 로직(140)은 루프 카운트(Loop_cnt)가 최대값(Max Loop_cnt)에 도달되었는지를 검출한다. 만일, 루프 카운트(Loop_cnt)가 최대값(Max Loop_cnt)에 도달한 것으로 판단되면 프로그램 절차는 무조건 종료된다. 반면, 루프 카운트(Loop_cnt)가 최대값(Max Loop_cnt)에 도달하지 않은 것으로 판단되면, 절차는 S295 단계로 이동한다.
S295 단계에서, 루프 카운트(Loop_cnt)는 카운트 업(Count up)된다. 그리고 절차는 증가된 루프 카운트에 대응하는 프로그램 동작을 실시하기 위한 S230 단계로 복귀한다.
이상에서, 프로그램 펄스(Vpgm_i)의 레벨에 따라 제어 신호(BLSHF)를 상승 기울기를 가변하는 실시 예가 설명되었다. 이러한 실시 예에 따르면, 특정 프로그램 펄스(Vpgm_i) 레벨에서, 비트 라인을 셋업 또는 프리차지하기 위한 제어 신호(BLSHF)의 상승 기울기가 감소할 수 있다. 따라서, 특정 프로그램 펄스(Vpgm_i) 레벨에 대응하는 프로그램 동작시에 발생하는 피크 전류의 레벨을 용이하게 제어할 수 있다.
도 12는 도 11의 검증 읽기 동작을 간략히 보여주는 순서도이다. 도 12를 참조하여, 검증 읽기 동작에 대응하는 도 11의 S270 단계가 구체적으로 설명될 것이다.
S271 단계에서, 선택된 메모리 셀들의 워드 라인에 제공될 프로그램 펄스(Vpgm_i)의 레벨이 특정 조건에 부합되는지 검출된다. 예를 들면, 프로그램 펄스(Vpgm_i)의 레벨이 피크 전류의 레벨이 증가하는 범위(Va ≤ Vpgm_i < Vb)에 포함되는지 검출될 수 있다. 프로그램 펄스(Vpgm_i)의 레벨이 범위(Va ≤ Vpgm_i < Vb)에 포함되지 않는 경우, 절차는 S272 단계로 이동한다. 반면, 프로그램 펄스(Vpgm_i)의 레벨이 범위(Va ≤ Vpgm_i < Vb)에 포함되는 경우, 절차는 S273 단계로 이동한다.
S272 단계에서, 제어 로직(140)은 비트 라인의 프리차지를 위해서 선택 트랜지스터(N1)의 게이트에 제공되는 제어 신호(BLSHF)를 상승 기울기 α로 제공한다.
S273 단계에서, 제어 로직(140)은 비트 라인의 프리차지를 위해서 선택 트랜지스터(N1)의 게이트에 제공되는 제어 신호(BLSHF)를 상승 기울기 β로 제공한다. 상승 기울기 β는 상승 기울기 α에 비해서 완만하다. 따라서, 선택 트랜지스터(N1)의 채널의 크기는 상대적으로 느리게 확장되며, 비트 라인으로 충전되는 전하량은 상대적으로 작아진다. 따라서, 제한된 선택 트랜지스터(N1)의 채널 폭에 의해서 피크 전류의 레벨도 제한될 것이다.
S274 단계에서, 비트 라인(BL0)에 충전된 전하량은 선택된 메모리 셀의 온/오프 상태에 따라서 변화하게 될 것이다. 이러한 동작을 비트 라인 디벨럽(Develop)이라 한다.
S275 단계에서, 비트 라인 디벨럽에 의해서 변화된 비트 라인의 전압 레벨에 대한 검출이 수행된다. 디벨럽된 비트 라인의 전하량 또는 비트 라인의 전압이 센싱 노드(SO)로 전달된다.
S276 단계에서, 센싱 노드(SO)의 레벨은 페이지 버퍼(PB0)에 구비되는 센싱 래치(131, 도3 참조)에 저장될 것이다. 센싱 래치(131)에 저장된 데이터는 외부로 출력되어 프로그램 완료 여부(Pass/Fail)를 판단하는 근거로 사용될 것이다.
이상에서는, 검증 읽기 동작시에 수행되는 비트 라인의 프리차지 속도의 제어 방법이 설명되었다. 비트 라인의 프리차지 속도는 프로그램 펄스(Vpgm_i)의 레벨에 의해서 결정될 수 있다. 특정 프로그램 펄스(Vpgm_i) 레벨에서, 비트 라인을 프리차지하기 위한 제어 신호(BLSHF)의 상승 기울기가 감소될 수 있다. 따라서, 특정 프로그램 펄스(Vpgm_i) 레벨에 대응하는 검증 읽기 동작시에 발생하는 피크 전류의 레벨을 용이하게 제어할 수 있다.
도 13은 도 1의 셀 어레이를 구성하는 메모리 블록(BLKi)을 예시적으로 보여주는 사시도이다. 도 13을 참조하면, 메모리 블록(BLKi)은 복수의 방향들(x, y, z)을 따라 신장된 구조물들을 포함한다.
메모리 블록(BLKi)을 형성하기 위해서는, 우선 기판(111)이 형성된다. 예를 들면, 기판(111)은 붕소(B, Boron)와 같은 5족 원소가 주입되어 형성된 P-웰로 형성될 수 있을 것이다. 또는, 기판(111)은 N-웰 내에 제공되는 포켓 P-웰로 형성될 수 있을 것이다. 이하에서, 기판(111)은 P-웰 인 것으로 가정하기로 한다. 그러나 기판(111)은 P-웰에만 한정되지 않는다.
기판(111) 상에, x 방향을 따라 복수의 도핑 영역들(112a, 112b, 112c, 112d)이 형성된다. 예를 들면, 복수의 도핑 영역들(112a, 112b, 112c, 112d)은 기판(111)과 상이한 n 타입의 도전체로 형성될 수 있을 것이다. 이하에서, 제 1 내지 제 4 도핑 영역들(112a, 112b, 112c, 112d)은 n 타입을 갖는 것으로 가정한다. 그러나, 제 1 내지 제 4 도핑 영역들(112a, 112b, 112c, 112d)은 n 타입을 갖는 것으로 한정되지 않는다.
제 1 및 제 2 도핑 영역들(112a, 112b) 사이의 기판(111)의 영역 상에, y 방향을 따라 신장되는 복수의 절연 물질들(118)이 z 방향을 따라 순차적으로 제공된다. 예를 들면, 복수의 절연 물질들(118)은 z 방향을 따라 특정 거리만큼 이격되어 형성될 것이다. 예시적으로, 절연 물질들(118)은 실리콘 산화물(Silicon Oxide)과 같은 절연 물질을 포함할 것이다.
제 1 및 제 2 도핑 영역들(112a, 112b) 사이의 기판(111) 상부에, y 방향을 따라 순차적으로 배치되며 z 방향을 따라 절연 물질들(118)을 관통하는 필라(113)가 형성된다. 예시적으로, 필라(113)는 절연 물질들(118)을 관통하여 기판(111)과 연결될 것이다. 여기서, 필라(113)는 제 2 및 제 3 도핑 영역들(112b, 112c) 사이의 기판 상부와, 제 3 및 제 4 도핑 영역들(112c, 112d) 사이의 기판 상부에도 형성된다.
예시적으로, 필라(113)는 복수의 물질들로 구성될 것이다. 예를 들면, 필라(113)의 표면층(113a)은 제 1 타입을 갖는 실리콘 물질을 포함할 것이다. 필라(113)의 표면층(113a)은 기판(111)과 동일한 타입을 갖는 실리콘 물질을 포함할 것이다. 이하에서, 필라(113)의 표면층(113a)은 p 타입 실리콘을 포함하는 것으로 가정한다. 그러나 각 필라(113)의 표면층(113a)은 p 타입 실리콘을 포함하는 것으로 한정되지 않는다. 필라(113)의 내부층(113b)은 절연 물질로 구성된다. 예를 들면, 필라(113)의 내부층(123b)은 실리콘 산화물(Silicon Oxide)과 같은 절연 물질을 포함할 것이다.
제 1 및 제 2 도핑 영역들(112a, 112b) 사이의 영역에서, 절연 물질들(118), 필라(113), 그리고 기판(111)의 노출된 표면을 따라 절연막(115)이 제공된다. 예시적으로, z 방향을 따라 제공되는 마지막 절연 물질(118)의 z 방향 쪽의 노출면에 제공되는 절연막(125)은 제거될 수 있다.
제 1 및 제 2 도핑 영역들(112a, 112b) 사이의 영역에서, 절연막(115)의 노출된 표면상에 제 1 도전 물질들(114a~114i)이 제공된다. 예를 들면, 기판(111)에 인접한 절연 물질(118) 및 기판(111) 사이에 y 방향을 따라 신장되는 제 1 도전 물질(114a)이 제공된다. 더 상세하게는, 기판(111)에 인접한 절연 물질(118)의 하부면의 절연막(115) 및 기판(111) 사이에, x 방향으로 신장되는 제 1 도전 물질(114a)이 제공된다.
제 2 및 제 3 도핑 영역들(112b, 112c) 사이의 영역에서, 제 1 및 제 2 도핑 영역들(112a, 112b) 상의 구조물과 동일한 구조물이 제공될 것이다. 제 3 및 제 4 도핑 영역들(112c, 112d) 사이의 영역에서, 제 1 및 제 2 도핑 영역들(112a, 112b) 상의 구조물과 동일한 구조물이 형성될 것이다.
복수의 필라들(113) 상에 드레인들(116)이 각각 제공된다. 드레인들(116)은 제 2 타입으로 도핑된 실리콘 물질일 수 있다. 예를 들면, 드레인들(116)은 n 타입으로 도핑된 실리콘 물질들일 것이다. 이하에서, 드레인들(116)은 n 타입 실리콘을 포함하는 것으로 가정한다. 그러나 드레인들(116)은 n 타입 실리콘을 포함하는 것으로 한정되지 않는다.
드레인들(116) 상에, x 방향으로 신장된 제 2 도전 물질들(117a~117c)이 제공된다. 제 2 도전 물질들(117a~117c)은 y 방향을 따라 순차적으로 배치된다. 제 2 도전 물질들(117a~117c) 각각은 대응하는 영역의 드레인들(116)과 연결된다. 예시적으로, 드레인들(116) 및 x 방향으로 신장된 제 2 도전 물질(117c)은 각각 콘택 플러그들(Contact plug)을 통해 연결될 수 있다.
여기서, 제 1 도전 물질들(114a~114i)은 각각 워드 라인 또는 선택 라인(SSL, GSL)을 형성한다. 제 1 도전 물질들(114a~114i) 중에서 워드 라인으로 형성되는 일부(114b~114h)는 동일한 층에 속한 것들은 상호 연결된다. 메모리 블록(BLKi)은 제 1 도전 물질들(114a~114i) 전체가 선택될 경우에 선택될 수 있다. 반면, 본 발명의 서브-블록은 제 1 도전 물질들(114a~114i) 중 일부만이 선택됨으로써 선택 가능하다.
또한, 본 발명에서는 제 1 도전 물질들(114a~114i)의 층수는 예시적인 것에 불과하다. 제 1 도전 물질들(114a~114i)의 층수는 공정 기술이나 제어 기술에 따라 다양하게 변경될 수 있음은 잘 이해될 것이다.
도 14는 본 발명의 또 다른 실시 예에 따른 저장 장치를 보여주는 블록도이다. 도 14를 참조하면, 저장 장치(200)는 스토리지 컨트롤러(210)와 복수의 채널들(CH1, CH2, …, CHn)을 통해서 데이터를 교환하는 멀티 칩 패키지로 제공되는 불휘발성 메모리 장치(220)를 포함한다.
제 1 채널(CH0)에는 복수의 메모리 칩들(Chip_00~Chip_03) 각각의 입출력 포트(예를 들면, 8-비트 I/O 포트)가 연결된다. 제 2 채널(CH1) 내지 제 4 채널(CH3) 각각에도 동일한 방식으로 복수의 메모리 칩들이 입출력 포트들을 공유한다.
스토리지 컨트롤러(210)는 불휘발성 메모리 장치(220)에 데이터를 프로그램할 때, 채널 단위 또는 웨이 단위(Way: 각각의 채널에서 동시에 선택되는 메모리 장치들)로 선택할 수 있다. 본 발명의 복수의 메모리 칩들(Chip00~Chip33)은 각각 프로그램 루프 또는 프로그램 전압의 레벨에 따라 비트 라인의 셋업 속도 또는 비트 라인의 프리차지 속도를 제어할 수 있다. 이러한 동작을 통해서 불휘발성 메모리 장치(220)의 복수의 메모리 칩들(Chip00~Chip33) 각각에서 발생하는 전체 피크 전류의 크기를 획기적으로 억제할 수 있다.
도 15는 본 발명의 실시 예에 따른 솔리드 스테이트 디스크(이하, SSD)를 포함하는 사용자 장치를 보여주는 블록도이다. 도 15을 참조하면, 사용자 장치(1000)는 호스트(1100)와 SSD(1200)를 포함한다. SSD(1200)는 SSD 컨트롤러(1210), 버퍼 메모리(1220), 그리고 불휘발성 메모리 장치(1230)를 포함한다.
SSD 컨트롤러(1210)는 호스트(1100)와 SSD(1200)와의 물리적 연결을 제공한다. 즉, SSD 컨트롤러(1210)는 호스트(1100)의 버스 포맷(Bus format)에 대응하여 SSD(1200)와의 인터페이싱을 제공한다. 특히, SSD 컨트롤러(1210)는 호스트(1100)로부터 제공되는 명령어를 디코딩한다. 디코딩된 결과에 따라, SSD 컨트롤러(1210)는 불휘발성 메모리 장치(1230)를 액세스한다. 호스트(1100)의 버스 포맷(Bus format)으로 USB(Universal Serial Bus), SCSI(Small Computer System Interface), PCI express, ATA, PATA(Parallel ATA), SATA(Serial ATA), SAS(Serial Attached SCSI) 등이 포함될 수 있다.
버퍼 메모리(1220)에는 호스트(1100)로부터 제공되는 쓰기 데이터 또는 불휘발성 메모리 장치(1230)로부터 읽혀진 데이터가 일시 저장된다. 호스트(1100)의 읽기 요청시에 불휘발성 메모리 장치(1230)에 존재하는 데이터가 캐시되어 있는 경우에는, 버퍼 메모리(1220)는 캐시된 데이터를 직접 호스트(1100)로 제공하는 캐시 기능을 지원한다. 일반적으로, 호스트(1100)의 버스 포맷(예를 들면, SATA 또는 SAS)에 의한 데이터 전송 속도는 SSD(1200)의 메모리 채널의 전송 속도보다 월등히 빠르다. 즉, 호스트(1100)의 인터페이스 속도가 월등히 높은 경우, 대용량의 버퍼 메모리(1220)를 제공함으로써 속도 차이로 발생하는 퍼포먼스 저하를 최소화할 수 있다.
불휘발성 메모리 장치(1230)는 SSD(1200)의 저장 매체로서 제공된다. 예를 들면, 불휘발성 메모리 장치(1230)는 대용량의 저장 능력을 가지는 낸드 플래시 메모리(NAND-type Flash memory)로 제공될 수 있다. 불휘발성 메모리 장치(1230)는 복수의 메모리 장치로 구성될 수 있다. 이 경우, 각각의 메모리 장치들은 채널 단위로 SSD 컨트롤러(1210)와 연결된다. 불휘발성 메모리 장치(1230)는 앞서 설명된 바와 같이, 루프 카운트 또는 프로그램 펄스의 레벨에 따라 비트 라인의 셋업 속도 또는 비트 라인의 프리차지 속도를 제어할 수 있다. 이러한 동작을 통해서 불휘발성 메모리 장치(1230)에서 발생하는 피크 전류의 크기를 획기적으로 억제할 수 있다.
저장 매체로서 불휘발성 메모리 장치(1230)가 낸드 플래시 메모리를 예로 들어 설명되었으나, 또 다른 불휘발성 메모리 장치들로 구성될 수 있다. 예를 들면, 저장 매체로서 PRAM, MRAM, ReRAM, FRAM, NOR 플래시 메모리 등이 사용될 수 있으며, 이종의 메모리 장치들이 혼용되는 메모리 시스템도 적용될 수 있다. 불휘발성 메모리 장치(1230)는 버퍼 프로그램 동작을 위한 버퍼 영역과 메인 프로그램 동작을 위한 메인 영역을 포함한다.
도 16은 본 발명의 다른 실시 예에 따른 메모리 시스템(2000)을 예시적으로 보여주는 블록도이다. 도 16을 참조하면, 본 발명에 따른 메모리 시스템(2000)은 메모리 컨트롤러(2100)와 불휘발성 메모리 장치(2200)를 포함할 수 있다.
불휘발성 메모리 장치(2200)는 도 1의 불휘발성 메모리 장치(100)와 실질적으로 동일하게 구성될 수 있다. 불휘발성 메모리 장치(2200)는 프로그램 루프 또는 프로그램 전압의 레벨에 따라 비트 라인의 셋업 속도 또는 비트 라인의 프리차지 속도를 제어할 수 있다. 이러한 동작을 통해서 불휘발성 메모리 장치(2200)에서 발생하는 피크 전류의 크기를 획기적으로 억제할 수 있다.
메모리 컨트롤러(2100)는 불휘발성 메모리 장치(2200)를 제어하도록 구성될 수 있다. SRAM(2110)은 CPU(2120)의 워킹 메모리로 사용될 수 있다. 호스트 인터페이스(2130)는 메모리 시스템(2000)과 접속되는 호스트의 데이터 교환 프로토콜을 구비할 수 있다. 메모리 컨트롤러(2100)에 구비된 에러 정정 회로(2140)는 불휘발성 메모리 장치(2200)로부터 읽어 온 읽기 데이터에 포함되어 있는 에러를 검출 및 정정할 수 있다. 메모리 인터페이스(2150)는 본 발명의 불휘발성 메모리 장치(2200)와 인터페이싱 할 수 있다. CPU(2120)는 메모리 컨트롤러(2100)의 데이터 교환을 위한 제반 제어 동작을 수행할 수 있다. 비록 도면에는 도시되지 않았지만, 본 발명에 따른 메모리 시스템(2000)은 호스트(Host)와의 인터페이싱을 위한 코드 데이터를 저장하는 ROM(미도시됨) 등이 더 제공될 수 있다.
메모리 컨트롤러(2100)는 USB, MMC, PCI-E, SAS, SATA, PATA, SCSI, ESDI, 그리고 IDE 등과 같은 다양한 인터페이스 프로토콜들 중 하나를 통해 외부(예를 들면, 호스트)와 통신하도록 구성될 것이다.
본 발명에 따른 메모리 시스템(2000)은, 컴퓨터, 휴대용 컴퓨터, UMPC (Ultra Mobile PC), 워크스테이션, 넷북(net-book), PDA, 포터블(portable) 컴퓨터, 웹 타블렛(web tablet), 무선 전화기(wireless phone), 모바일 폰(mobile phone), 스마트폰(smart phone), 디지털 카메라(digital camera), 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 영상 녹화기(digital picture recorder), 디지털 영상 재생기(digital picture player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), 정보를 무선 환경에서 송수신할 수 있는 장치, 홈 네트워크를 구성하는 다양한 사용자 장치들 중 하나에 적용될 수 있다.
도 17은 본 발명의 다른 실시 예에 따른 데이터 저장 장치(3000)를 예시적으로 보여주는 블록도이다. 도 17을 참조하면, 본 발명에 따른 데이터 저장 장치(3000)는 플래시 메모리 칩(3100)과 플래시 컨트롤러(3200)를 포함할 수 있다. 플래시 컨트롤러(3200)는 데이터 저장 장치(3000) 외부로부터 수신된 제어 신호들에 기초하여 플래시 메모리 칩(3100)을 제어할 수 있다.
또한, 플래시 메모리 칩(3100)의 구성은 도 1에 도시된 불휘발성 메모리 장치(100)와 실질적으로 동일하며, 멀티 칩으로 구성될 수도 있다. 본 발명의 플래시 메모리 칩(3100)은 어레이들이 다층으로 적층된 스택 플래시 구조, 소스-드레인이 없는 플래시 구조, 핀-타입 플래시 구조, 및 3차원 플래시 구조 중 어느 하나로 구성될 수 있다. 플래시 메모리 칩(3100)은 루프 카운트 또는 프로그램 펄스의 레벨에 따라 비트 라인의 셋업 속도 또는 비트 라인의 프리차지 속도를 제어할 수 있다. 이러한 동작을 통해서 플래시 메모리 칩(3100)에서 발생하는 피크 전류의 크기를 획기적으로 억제할 수 있다.
본 발명의 데이터 저장 장치(3000)는 메모리 카드 장치, SSD 장치, 멀티미디어 카드 장치, SD 장치, 메모리 스틱 장치, 하드 디스크 드라이브 장치, 하이브리드 드라이브 장치, 또는 범용 직렬 버스 플래시 장치를 구성할 수 있다. 예를 들면, 본 발명의 데이터 저장 장치(3000)는 디지털, 카메라, 개인 컴퓨터 등과 같은 사용자 장치를 사용하기 위한 산업 표준을 만족하는 카드를 구성할 수 있다.
도 18은 본 발명에 따른 저장 장치(4100) 및 그것을 포함하는 컴퓨팅 시스템(4000)의 개략적인 구성을 보여주는 도면이다. 도 18을 참조하면, 본 발명에 따른 컴퓨팅 시스템(4000)은 버스(4600)에 전기적으로 연결된 저장 장치(4100), 마이크로프로세서(4200), 램(4300), 유저 인터페이스(4400), 베이스밴드 칩셋(Baseband chipset)과 같은 모뎀(4500)을 포함할 수 있다.
저장 장치(4100)에 포함되는 불휘발성 메모리 장치(4120)의 구성은 도 1에 도시된 저장 장치(100)와 실질적으로 동일하다. 불휘발성 메모리 장치(4120)는 루프 카운트 또는 프로그램 펄스의 레벨에 따라 비트 라인의 셋업 속도 또는 비트 라인의 프리차지 속도를 제어할 수 있다. 이러한 동작을 통해서 불휘발성 메모리 장치(4120)에서 발생하는 피크 전류의 크기를 획기적으로 억제할 수 있다. 본 발명의 불휘발성 메모리 장치(4120)는 어레이들이 다층으로 적층된 스택 플래시 구조, 소스-드레인이 없는 플래시 구조, 핀-타입 플래시 구조, 및 3차원 플래시 구조 중 어느 하나로 구성될 수 있다.
본 발명에 따른 컴퓨팅 시스템이 모바일 장치인 경우, 컴퓨팅 시스템의 동작 전압을 공급하기 위한 배터리가 추가적으로 제공될 수 있다. 비록 도면에는 도시되지 않았지만, 본 발명에 따른 컴퓨팅 시스템에는 응용 칩셋(Application chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모바일 디램, 등이 더 제공될 수 있다. 메모리 컨트롤러(4110)와 플래시 메모리 장치(4120)는, 예를 들면, 데이터를 저장하는 데 불 휘발성 메모리를 사용하는 SSD(Solid State Drive/Disk)를 구성할 수 있다.
도 19는 본 발명의 실시 예에 따른 휴대용 단말기를 나타내는 블록도이다. 도 19를 참조하면, 본 발명의 실시 예에 따른 휴대용 단말기(5000)는 이미지 처리부(5100), 무선 송수신부(5200), 오디오 처리부(5300), 이미지 파일 생성부(5400), 메불휘발성 메모리 장치(5500), 유저 인터페이스(5600), 그리고 컨트롤러(5700)를 포함한다.
이미지 처리부(5100)는 렌즈(5110), 이미지 센서(5120), 이미지 프로세서(5130), 그리고 디스플레이부(5140)를 포함한다. 안테나(5210), 트랜시버(5220), 모뎀(5230)은 무선 송수신부를 구성한다. 오디오 프로세서(5310), 마이크(5320), 그리고 스피커(5330)는 오디오 처리부를 구성한다.
여기서, 불휘발성 메모리 장치(5500)는 본 발명의 실시 예에 따라 구동되는 불휘발성 메모리 장치로 제공될 수 있다. 이 경우, 불휘발성 메모리 장치(5500)는 루프 카운트 또는 프로그램 펄스의 레벨에 따라 비트 라인의 셋업 속도 또는 비트 라인의 프리차지 속도를 제어할 수 있다. 이러한 동작을 통해서 불휘발성 메모리 장치(5500)에서 발생하는 피크 전류의 크기를 획기적으로 억제할 수 있다.
본 발명에 따른 불휘발성 메모리 장치 그리고/또는 메모리 컨트롤러는 다양한 형태들의 패키지를 이용하여 실장될 수 있다. 예를 들면, 본 발명에 따른 플래시 메모리 장치 그리고/또는 메모리 컨트롤러는 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP), 등과 같은 패키지들을 이용하여 실장 될 수 있다.
이상에서와 같이 도면과 명세서에서 실시 예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허 청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허 청구범위의 기술적 사상에 의해 정해져야 할 것이다.
110 : 셀 어레이 111, 112, 113, 114 : 셀 스트링
120 : 행 디코더 130 : 페이지 버퍼
131 : 센스 래치 132, 133 : 데이터 래치
134 : 캐시 래치 135 : 셋업 회로
140 : 제어 로직 145 : 비트 라인 셋업 컨트롤러
111 : 기판 112a, 112b, 112c, 112d : 도핑 영역
113 : 필라 113a : 표면층
113b : 내부층 114a~114i : 제 1 도전 물질
115 : 절연막 116 : 드레인
117a, 117b, 117c : 비트 라인 118 : 절연 물질
210 : 스토리지 컨트롤러 215 : 버퍼 메모리
220 : 불휘발성 메모리 장치
1100 : 호스트 1200 : SSD
1210 : SSD 컨트롤러 1220 : 버퍼 메모리
1230 : 불휘발성 메모리 장치 2100 : 플래시 메모리
2200 : 메모리 컨트롤러 2210 : CPU
2220 : 호스트 인터페이스 2230 : SRAM
2240 : ECC 2260 : 메모리 인터페이스
3100 : 플래시 메모리 3200 : 플래시 인터페이스
4100 : 저장 장치 4200 : 마이크로프로세서
4300 : 램 4400 : 유저 인터페이스
4500 : 모뎀 4600 : 시스템 버스
5110 : 렌즈 5120 : 이미지 센서
5130 : 이미지 프로세서 5140 : 디스플레이 유닛
5210 : 안테나 5220 : 송수신기
5230 : 모뎀 5310 : 오디오 처리기
5400 : 이미지 파일 생성 유닛 5500 : 불휘발성 메모리 장치
5600 : 유저 인터페이스 5700 : 컨트롤러

Claims (10)

  1. 복수의 프로그램 루프들을 실행하여 메모리 셀을 프로그램하는 불휘발성 메모리 장치의 프로그램 방법에 있어서:
    루프 카운트 또는 상기 메모리 셀에 인가될 프로그램 펄스의 레벨이 특정 범위에 포함되는지 검출하는 단계;
    상기 검출 결과를 참조하여 메모리 셀의 비트 라인을 제 1 충전 속도 또는 상기 제 1 충전 속도보다 느린 제 2 충전 속도로 충전하는 단계; 그리고
    상기 메모리 셀의 워드 라인에 상기 프로그램 펄스를 인가하는 단계를 포함하되,
    상기 특정 범위는 상기 비트 라인으로 유입되는 전류 피크의 레벨이 기준치 이상으로 증가하는 동작 구간이고,
    상기 제 1 충전 속도 및 상기 제 2 충전 속도의 선택은 상기 비트 라인으로 셋업 전압을 공급하는 선택 트랜지스터(N1)의 게이트에 제공되는 제어 신호(BLSHF)의 상승 기울기의 크기의 선택에 대응하는 프로그램 방법.
  2. 제 1 항에 있어서,
    상기 루프 카운트 또는 상기 메모리 셀에 인가될 프로그램 펄스의 레벨이 상기 특정 범위에 포함되는 경우에, 상기 제 2 충전 속도로 상기 비트 라인을 충전하는 프로그램 방법.
  3. 삭제
  4. 제 1 항에 있어서,
    상기 제어 신호(BLSHF)가 타깃 레벨에 도달하기까지 소요 시간을 제어하여 상기 제 1 충전 속도 또는 제 2 충전 속도를 선택하는 프로그램 방법.
  5. 제 1 항에 있어서,
    상기 루프 카운트 또는 상기 프로그램 펄스의 레벨이 상기 특정 범위에 포함되는지 검출하는 단계;
    상기 검출 결과에 따라 상기 비트 라인을 제 3 충전 속도 또는 상기 제 3 충전 속도보다 느린 제 4 충전 속도로 충전하는 단계; 그리고
    상기 워드 라인에 프로그램 검증 펄스를 인가하는 단계를 더 포함하는 프로그램 방법.
  6. 제 5 항에 있어서,
    상기 제 3 충전 속도 및 상기 제 4 충전 속도의 선택은 제어 신호(BLSHF)의 상승 기울기의 크기의 선택에 대응하는 프로그램 방법.
  7. 제 6 항에 있어서,
    상기 제어 신호(BLSHF)가 타깃 레벨에 도달하기까지 소요 시간을 제어하여 상기 제 3 충전 속도와 제 4 충전 속도 중 어느 하나를 선택하는 프로그램 방법.
  8. 복수의 메모리 셀들을 포함하는 셀 어레이;
    프로그램 동작시, 선택된 메모리 셀의 비트 라인에 셋업 전압 또는 프리차지 전압을 제공하는 페이지 버퍼; 그리고
    프로그램 동작시, 루프 카운트 또는 상기 선택된 메모리 셀에 인가될 프로그램 펄스의 레벨을 참조하여 상기 비트 라인을 제 1 충전 속도 또는 제 2 충전 속도로 충전하도록 상기 페이지 버퍼를 제어하는 제어 로직을 포함하되,
    상기 제어 로직은 상기 루프 카운트 또는 상기 프로그램 펄스의 레벨이 특정 범위에 포함되는지 검출하는 비트 라인 셋업 컨트롤러를 포함하는 불휘발성 메모리 장치.
  9. 삭제
  10. 제 8 항에 있어서,
    상기 페이지 버퍼는 상기 비트 라인으로 셋업 전압을 공급하는 선택 트랜지스터(N1)를 포함하며, 상기 비트 라인 셋업 컨트롤러는 상기 선택 트랜지스터의 게이트에 제공되는 제어 신호(BLSHF)의 상승 기울기의 크기의 제어하여 상기 제 1 충전 속도와 제 2 충전 속도 중 어느 하나를 선택하는 불휘발성 메모리 장치.
KR1020130073875A 2013-06-26 2013-06-26 불휘발성 메모리 장치 및 그것의 프로그램 방법 KR102081757B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020130073875A KR102081757B1 (ko) 2013-06-26 2013-06-26 불휘발성 메모리 장치 및 그것의 프로그램 방법
US14/223,368 US9230659B2 (en) 2013-06-26 2014-03-24 Nonvolatile memory device capable of reducing a setup/precharge speed of a bitline for reducing peak current and related programming method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130073875A KR102081757B1 (ko) 2013-06-26 2013-06-26 불휘발성 메모리 장치 및 그것의 프로그램 방법

Publications (2)

Publication Number Publication Date
KR20150001134A KR20150001134A (ko) 2015-01-06
KR102081757B1 true KR102081757B1 (ko) 2020-02-26

Family

ID=52115465

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130073875A KR102081757B1 (ko) 2013-06-26 2013-06-26 불휘발성 메모리 장치 및 그것의 프로그램 방법

Country Status (2)

Country Link
US (1) US9230659B2 (ko)
KR (1) KR102081757B1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102377453B1 (ko) * 2015-11-05 2022-03-23 삼성전자주식회사 불 휘발성 메모리 장치 및 그것의 동작 방법
KR102530071B1 (ko) * 2016-03-02 2023-05-08 삼성전자주식회사 페이지 버퍼를 포함하는 불휘발성 메모리 장치 및 그 동작방법
KR102663261B1 (ko) * 2016-09-08 2024-05-03 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그것의 동작 방법
KR20180086047A (ko) 2017-01-20 2018-07-30 삼성전자주식회사 리커버리 구간을 가변하는 불휘발성 메모리 장치 및 그 동작방법
US10943652B2 (en) 2018-05-22 2021-03-09 The Regents Of The University Of Michigan Memory processing unit
CN110782937B (zh) * 2018-07-31 2024-07-30 三星电子株式会社 非易失性存储装置及其编程方法
KR20210020697A (ko) 2019-08-16 2021-02-24 에스케이하이닉스 주식회사 메모리 장치 및 그 동작 방법
KR20210067677A (ko) 2019-11-29 2021-06-08 에스케이하이닉스 주식회사 메모리 장치 및 그 동작 방법
US11250892B2 (en) * 2020-05-29 2022-02-15 Western Digital Technologies, Inc. Pre-charge ramp rate control for peak current based on data latch count
US11328754B2 (en) 2020-05-29 2022-05-10 Western Digital Technologies, Inc. Pre-charge timing control for peak current based on data latch count
KR20220060940A (ko) * 2020-11-05 2022-05-12 삼성전자주식회사 셀 스트링의 프리차지를 수행하는 비휘발성 메모리 장치 및 이의 프로그램 방법
US11636897B2 (en) * 2021-03-03 2023-04-25 Sandisk Technologies Llc Peak current and program time optimization through loop dependent voltage ramp target and timing control
KR20220138961A (ko) * 2021-04-07 2022-10-14 에스케이하이닉스 주식회사 메모리 장치 및 메모리 장치의 동작 방법
KR20230061029A (ko) 2021-10-28 2023-05-08 삼성전자주식회사 비휘발성 메모리 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100822805B1 (ko) * 2006-10-20 2008-04-18 삼성전자주식회사 다중 배속 동작 모드를 가지는 플래시 메모리 장치

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US85593A (en) * 1869-01-05 Improvement in corn-husking machine
US5719812A (en) 1988-11-16 1998-02-17 Fujitsu Limited Semiconductor memory including bit line reset circuitry and a pulse generator having output delay time dependent on type of transition in an input signal
US6236611B1 (en) 1999-12-20 2001-05-22 Motorola, Inc. Peak program current reduction apparatus and method
JP4803887B2 (ja) 2001-02-26 2011-10-26 ローム株式会社 シリアルメモリ装置
WO2003073430A1 (fr) 2002-02-28 2003-09-04 Renesas Technology Corp. Memoire a semi-conducteurs non volatile
KR100476930B1 (ko) 2002-09-04 2005-03-16 삼성전자주식회사 피이크전류를 줄이는 플래쉬메모리
JP2005267821A (ja) * 2004-03-22 2005-09-29 Toshiba Corp 不揮発性半導体メモリ
US7158412B2 (en) 2004-06-17 2007-01-02 Intersil Americas Inc. On-chip EE-PROM programming waveform generation
US7701764B2 (en) 2006-05-17 2010-04-20 Micron Technology, Inc. Apparatus and method for reduced peak power consumption during common operation of multi-NAND flash memory devices
KR100818097B1 (ko) 2006-09-29 2008-03-31 주식회사 하이닉스반도체 전원 발생 회로
JP4956218B2 (ja) * 2007-02-15 2012-06-20 株式会社東芝 不揮発性半導体記憶装置
KR101626548B1 (ko) 2009-07-15 2016-06-01 삼성전자주식회사 비휘발성 메모리 장치, 그것을 포함한 메모리 시스템, 및 그것의 프로그램 방법
JP2012022740A (ja) 2010-07-13 2012-02-02 Toshiba Corp マルチチップパッケージおよびメモリチップ
JP5198524B2 (ja) 2010-09-10 2013-05-15 株式会社東芝 不揮発性半導体メモリ
KR101161994B1 (ko) 2010-12-03 2012-07-03 에스케이하이닉스 주식회사 멀티 칩 패키지 장치 및 그의 동작 방법
KR20140026115A (ko) * 2012-08-24 2014-03-05 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이의 동작 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100822805B1 (ko) * 2006-10-20 2008-04-18 삼성전자주식회사 다중 배속 동작 모드를 가지는 플래시 메모리 장치

Also Published As

Publication number Publication date
US20150003167A1 (en) 2015-01-01
KR20150001134A (ko) 2015-01-06
US9230659B2 (en) 2016-01-05

Similar Documents

Publication Publication Date Title
KR102081757B1 (ko) 불휘발성 메모리 장치 및 그것의 프로그램 방법
KR101809202B1 (ko) 불휘발성 메모리 장치 및 그것의 읽기 방법
KR102083450B1 (ko) 페이지 버퍼를 포함하는 불휘발성 메모리 장치 및 그것의 동작 방법
KR101988434B1 (ko) 불휘발성 메모리 장치 및 그것의 서브-블록 관리 방법
KR102118979B1 (ko) 불휘발성 메모리 장치 및 그것의 프로그램 방법
KR101868377B1 (ko) 불휘발성 메모리 장치 및 그것의 프로그램 방법
US8467246B2 (en) Nonvolatile memory device, operating method thereof and memory system including the same
KR102015906B1 (ko) 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 읽기 방법
KR101842507B1 (ko) 불휘발성 메모리의 동작 방법 및 불휘발성 메모리를 제어하는 방법
KR101716713B1 (ko) 플래시 메모리 장치 및 그것의 프로그램 방법
US8976595B2 (en) Non-volatile memory device and related method of operation
US9903901B2 (en) Leakage current detection device and nonvolatile memory device having the same
US9183943B2 (en) Nonvolatile memory device and control method thereof
KR101903440B1 (ko) 비휘발성 메모리 장치 및 그것의 접지 선택 트랜지스터의 문턱전압 조절 방법
US20130039130A1 (en) Program method of nonvolatile memory device
KR101810640B1 (ko) 불휘발성 메모리 장치 및 메모리 시스템 그리고 그것의 읽기 방법
US9842658B2 (en) Methods of operating nonvolatile memory devices including variable verification voltages based on program/erase cycle information
US9576668B2 (en) Semiconductor device and operating method thereof
US9030878B2 (en) Semiconductor memory device including a plurality of cell strings, memory system including the same, and control method thereof
US10755786B2 (en) Semiconductor memory device including a plurality of strings each including a select transistor and a memory cell
KR102659651B1 (ko) 비휘발성 메모리 장치의 고전압 스위치 회로 및 비휘발성 메모리 장치
KR102127296B1 (ko) 메모리 시스템 및 그것의 동작 방법
US20150146489A1 (en) Method of operating nonvolatile memory device
US9472292B1 (en) Semiconductor memory device
US9530467B1 (en) Semiconductor memory device and operating method thereof

Legal Events

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