[go: up one dir, main page]

KR102012298B1 - 비휘발성 메모리 장치 및 그 구동 방법 - Google Patents

비휘발성 메모리 장치 및 그 구동 방법 Download PDF

Info

Publication number
KR102012298B1
KR102012298B1 KR1020120080648A KR20120080648A KR102012298B1 KR 102012298 B1 KR102012298 B1 KR 102012298B1 KR 1020120080648 A KR1020120080648 A KR 1020120080648A KR 20120080648 A KR20120080648 A KR 20120080648A KR 102012298 B1 KR102012298 B1 KR 102012298B1
Authority
KR
South Korea
Prior art keywords
word line
program
memory cell
program voltage
clock signal
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020120080648A
Other languages
English (en)
Other versions
KR20140014518A (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 KR1020120080648A priority Critical patent/KR102012298B1/ko
Priority to US13/904,047 priority patent/US9189174B2/en
Publication of KR20140014518A publication Critical patent/KR20140014518A/ko
Application granted granted Critical
Publication of KR102012298B1 publication Critical patent/KR102012298B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • 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
    • G11C16/12Programming voltage switching 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/30Power supply 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • G11C5/145Applications of charge pumps; Boosted voltage circuits; Clamp circuits therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Read Only Memory (AREA)

Abstract

비휘발성 메모리 장치의 구동 방법이 제공된다. 비휘발성 메모리 장치의 구동 방법은, 제1 메모리 셀이 접속된 제1 워드 라인을 제공하고, 제1 메모리 셀을 프로그램하기 위해, 상기 제1 워드 라인에 인가될 제1 프로그램 전압을 생성하고, 상기 생성된 제1 프로그램 전압을 상기 제1 워드 라인에 인가하는 것을 포함하되, 상기 생성된 제1 프로그램 전압을 상기 제1 워드 라인에 인가하는 동안, 펌핑 클럭 신호의 클럭 수가 미리 정한 n(여기서, n은 자연수) 이상이면, 제1 메모리 셀에 대한 프로그램을 중단한다.

Description

비휘발성 메모리 장치 및 그 구동 방법{Non volatile memory device and method for operating thereof}
본 발명은 비휘발성 메모리 장치 및 그 구동 방법에 관한 것이다.
반도체 메모리 장치는 데이터를 저장해 두고 필요할 때 이를 리드할 수 있는 기억장치이다. 반도체 메모리 장치는, 전원이 공급되지 않더라도 저장된 데이터가 소멸하지 않는 비휘발성 메모리(nonvolatile memory)와, 전원이 공급되지 않으면 저장된 데이터가 소멸하는 휘발성 메모리(volatile memory, VM)로 크게 나눌 수 있다.
비휘발성 메모리(nonvolatile memory)에는 PROM(Programmable ROM), EPROM(Erasable PROM), EEPROM(Electrically EPROM), 플래시 메모리(Flash Memory) 등이 있다. 플래시 메모리는 크게 노어(NOR) 플래시 메모리와 낸드(NAND) 플래시 메모리로 구분된다. 휘발성 메모리(volatile memory)에는 Dynamic RAM(DRAM)과 Static RAM(SRAM) 등이 있다.
본 발명이 해결하고자 하는 기술적 과제는, 메모리 셀 프로그램 시 불필요하게 소모되는 전력을 저감시키고 프로그램 시간을 단축 시킬 수 있는 비휘발성 메모리 장치의 구동 방법을 제공하는 것이다.
본 발명이 해결하고자 하는 다른 기술적 과제는, 메모리 셀 프로그램 시 불필요하게 소모되는 전력을 저감시키고 프로그램 시간을 단축 시킬 수 있는 비휘발성 메모리 장치를 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 구동 방법은, 제1 메모리 셀이 접속된 제1 워드 라인을 제공하고, 제1 메모리 셀을 프로그램하기 위해, 상기 제1 워드 라인에 인가될 제1 프로그램 전압을 생성하고, 상기 생성된 제1 프로그램 전압을 상기 제1 워드 라인에 인가하는 것을 포함하되, 상기 생성된 제1 프로그램 전압을 상기 제1 워드 라인에 인가하는 동안, 펌핑 클럭 신호의 클럭 수가 미리 정한 n(여기서, n은 자연수) 이상이면, 제1 메모리 셀에 대한 프로그램을 중단한다.
본 발명의 몇몇 실시예에서, 상기 비휘발성 메모리 장치의 구동 방법은, 제2 메모리 셀이 접속된 제2 워드 라인을 제공하고, 상기 제1 워드 라인에 상기 제1 프로그램 전압을 인가하기 전에, 상기 제2 메모리 셀을 프로그램하기 위해, 상기 제2 워드 라인에 제2 프로그램 전압을 인가하고, 상기 제1 메모리 셀에 대한 프로그램을 중단한 후, 상기 제2 메모리 셀에 저장된 데이터를 리드하여 그 결과 리드 페일이 발생할 경우, 상기 제1 워드 라인과 상기 제2 워드 라인 사이에 브리지(bridge)가 발생하였다고 판단하는 것을 더 포함할 수 있다. 이 때, 상기 제1 워드 라인은 상기 제2 워드 라인에 인접하여 배치될 수 있으며, 상기 제1 메모리 셀을 프로그램하는 것은, 상기 제1 메모리 셀을 MSB 프로그램하는 것을 포함할 수 있고, 상기 제2 메모리 셀을 프로그램하는 것은, 상기 제2 메모리 셀을 LSB 프로그램하는 것을 포함할 수 있다.
본 발명의 몇몇 실시예에서, 상기 비휘발성 메모리 장치의 구동 방법은, 상기 제1 워드 라인과 상기 제2 워드 라인 사이에 브리지가 발생하였다고 판단되면, 상기 제2 메모리 셀에 저장된 LSB 데이터를 복원하는 것을 더 포함할 수 있다.
본 발명의 몇몇 실시예에서, 상기 제1 프로그램 전압은, 그 크기가 순차적으로 증가하는 제1-1 내지 제1-m(여기서, m은 자연수) 서브 프로그램 전압을 포함하고, 상기 생성된 제1 프로그램 전압을 상기 제1 워드 라인에 인가하는 동안, 펌핑 클럭의 수가 미리 정한 n 이상이면 상기 제1 메모리 셀에 대한 프로그램을 중단하는 것은, 상기 생성된 제1-k(여기서 1<k≤m인 자연수) 서브 프로그램을 전압을 상기 제1 워드 라인에 인가하는 동안, 펌핑 클럭 신호의 클럭 수가 미리 정한 n 이상이면, 상기 제1 메모리 셀에 대한 프로그램을 중단하는 것을 포함할 수 있다.
본 발명의 몇몇 실시예에서, 상기 비휘발성 메모리 장치의 구동 방법은, 상기 제1 워드 라인에 제1 프로그램 전압을 인가하기 전에, 상기 제1 메모리 셀을 j(여기서, j는 자연수)번 프로그램하기 위해, 상기 제1 워드 라인에 프로그램 전압을 j번 인가하는 것을 더 포함할 수 있다.
상기 다른 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 비휘발성 메모리 장치는, 제1 메모리 셀이 접속된 제1 워드 라인을 포함하는 메모리 셀 어레이, 펌핑 클럭 신호를 인가받아 제1 메모리 셀을 MSB 프로그램하기 위해 제1 워드 라인에 인가되는 제1 프로그램 전압을 생성하는 차지 펌핑부, 및 제1 프로그램 전압이 생성된 후, 상기 생성된 제1 프로그램 전압이 상기 제1 워드 라인에 인가되는 동안, 펌핑 클럭 신호의 클럭 수가 미리 정한 n(여기서, n은 자연수) 이상이면, 프로그램 중단 신호를 출력하는 판단부를 포함한다.
본 발명의 몇몇 실시예에서, 상기 메모리 셀 어레이는, 제2 메모리 셀이 접속되고 상기 제1 워드 라인에 인접하여 배치되는 제2 워드 라인을 더 포함하고, 상기 펌핑부는, 상기 제1 프로그램 전압을 생성하기 전에, 상기 제2 메모리 셀을 LSB 프로그램하기 위해 상기 제2 워드 라인에 인가되는 제2 프로그램 전압을 생성하고, 상기 비휘발성 메모리 장치는, 상기 펌핑부로부터 상기 프로그램 중단 신호가 출력되면, 상기 제2 메모리 셀에 저장된 LSB 데이터를 리드하여 그 결과 리드 페일이 발생할 경우, 상기 제1 워드 라인과 상기 제2 워드 라인 사이에 브리지(bridge)가 발생하였다고 판단하는 컨트롤러를 더 포함할 수 있다. 이 때, 상기 컨트롤러는 상기 LSB 데이터가 저장된 버퍼를 포함하고, 상기 컨트롤러는 상기 제1 워드 라인과 상기 제2 워드 라인 사이에 브리지가 발생하였다고 판단할 경우, 상기 버퍼에 저장된 상기 LSB 데이터를 이용하여 상기 제2 메모리 셀에 저장된 LSB 데이터를 복원할 수 있다.
본 발명의 몇몇 실시예에서, 상기 제1 프로그램 전압은, 그 크기가 순차적으로 증가하는 제1-1 내지 제1-m(여기서, m은 자연수) 서브 프로그램 전압을 포함하고, 상기 판단부는, 상기 생성된 제1-k(여기서 1<k≤m인 자연수) 서브 프로그램 전압이 상기 제1 워드 라인에 인가되는 동안, 상기 펌핑 클럭 신호의 클럭 수가 미리 정한 n 이상이면, 상기 프로그램 중단 신호를 출력할 수 있다.
본 발명의 몇몇 실시예에서, 상기 판단부는, 상기 제1 메모리 셀을 프로그램하기 위해 상기 제1 워드 라인에 프로그램 전압이 인가된 횟수가 j(여기서, j는 자연수)회 이상이고, 상기 생성된 제1 프로그램 전압이 상기 제1 워드 라인에 인가되는 동안, 상기 펌핑 클럭 신호의 클럭 수가 미리 정한 n 이상일 경우, 상기 프로그램 중단 신호를 출력할 수 있다.
본 발명의 몇몇 실시예에서, 상기 판단부는, 상기 펌핑 클럭 신호의 클럭 수를 카운트하여 이를 출력하는 카운터와, 상기 카운터의 출력과 상기 n을 비교하는 비교기를 포함할 수 있다.
본 발명의 몇몇 실시예에서, 상기 비휘발성 메모리 장치는 NAND 플래시 메모리 장치를 포함할 수 있다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
도 1은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 예시적인 블록도이다.
도 2는 도 1의 메모리 칩에 대한 예시적인 블록도이다.
도 3은 도 2의 변환부에 대한 예시적인 블록도이다.
도 4는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 동작을 설명하기 위한 순서도이다.
도 5 및 도 6은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 동작을 설명하기 위한 도면들이다.
도 7은 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 동작을 설명하기 위한 순서도이다.
도 8은 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 동작을 설명하기 위한 도면이다.
도 9는 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 동작을 설명하기 위한 순서도이다.
도 10은 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 응용예를 도시한 블록도이다.
도 11은 본 발명의 실시예들에 따른 비휘발성 메모리 장치가 채용된 컴퓨팅 시스템을 도시한 블록도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 도면에서 표시된 구성요소의 크기 및 상대적인 크기는 설명의 명료성을 위해 과장된 것일 수 있다.
하나의 소자(elements)가 다른 소자와 "접속된(connected to)" 또는 "커플링된(coupled to)" 이라고 지칭되는 것은, 다른 소자와 직접 연결 또는 커플링된 경우 또는 중간에 다른 소자를 개재한 경우를 모두 포함한다. 반면, 하나의 소자가 다른 소자와 "직접 접속된(directly connected to)" 또는 "직접 커플링된(directly coupled to)"으로 지칭되는 것은 중간에 다른 소자를 개재하지 않은 것을 나타낸다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다. "및/또는"은 언급된 아이템들의 각각 및 하나 이상의 모든 조합을 포함한다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.
비록 제1, 제2 등이 다양한 소자나 구성요소들을 서술하기 위해서 사용되나, 이들 소자나 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 소자나 구성요소를 다른 소자나 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 소자나 구성요소는 본 발명의 기술적 사상 내에서 제2 소자나 구성요소 일 수도 있음은 물론이다.
본 실시예에서 사용되는 사용되는 '부' 또는 '모듈'이라는 용어는 소프트웨어 또는 FPGA또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '부' 또는 '모듈'은 어떤 역할들을 수행한다. 그렇지만 '부' 또는 '모듈'은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '부' 또는 '모듈'은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '부' 또는 '모듈'은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함할 수 있다. 구성요소들과 '부' 또는 '모듈'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '부' 또는 '모듈'들로 결합되거나 추가적인 구성요소들과 '부' 또는 '모듈'들로 더 분리될 수 있다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하, 도 1 내지 도 3을 참조하여, 본 발명의 일 실시예에 따른 비휘발성 메모리 장치에 대해 설명하도록 한다.
도 1은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 예시적인 블록도이다. 도 2는 도 1의 메모리 칩에 대한 예시적인 블록도이다. 도 3은 도 2의 변환부에 대한 예시적인 블록도이다.
먼저 도 1을 참조하면, 비휘발성 메모리 장치(1)는, 비휘발성 메모리 칩(100)과 컨트롤러(200)를 포함한다.
컨트롤러(200)는 호스트(Host) 및 비휘발성 메모리 칩(100)에 연결된다. 컨트롤러(200)는 도시된 것과 같이, 호스트(Host)로부터의 요청에 응답하여, 비휘발성 메모리 칩(100)를 액세스하도록 구성될 수 있다. 예를 들어, 컨트롤러(200)는 비휘발성 메모리 칩(100)의 읽기(read), 쓰기(write), 소거(erase), 그리고 배경(background) 동작을 제어하도록 구성될 수 있다.
한편, 컨트롤러(200)는 비휘발성 메모리 칩(100) 및 호스트(Host) 사이에 인터페이스를 제공하도록 구성될 수 있다. 또한, 컨트롤러(200)는 비휘발성 메모리 칩(100)를 제어하기 위한 펌웨어(firmware)를 구동하도록 구성될 수 도 있다.
예시적으로, 컨트롤러(200)는 램(RAM, Random Access Memory), 프로세싱 유닛(processing unit), 호스트 인터페이스(host interface), 그리고 메모리 인터페이스(memory interface)와 같은 잘 알려진 구성 요소들을 더 포함할 수 있다. 여기서, 램(RAM)은 프로세싱 유닛의 동작 메모리, 비휘발성 메모리 칩(100)과 호스트(Host) 사이의 캐시 메모리, 그리고 비휘발성 메모리 칩(100)과 호스트(Host) 사이의 버퍼 메모리 중 적어도 하나로서 이용될 수 있다. 그리고, 프로세싱 유닛은 컨트롤러(200)의 제반 동작을 제어할 수 있다.
호스트 인터페이스는, 호스트(Host)와 컨트롤러(200) 사이의 데이터 교환을 수행하기 위한 프로토콜을 포함할 수 있다. 예시적으로, 컨트롤러(200)는 USB (Universal Serial Bus) 프로토콜, MMC (multimedia card) 프로토콜, PCI (peripheral component interconnection) 프로토콜, PCI-E (PCI-express) 프로토콜, ATA (Advanced Technology Attachment) 프로토콜, Serial-ATA 프로토콜, Parallel-ATA 프로토콜, SCSI (small computer small interface) 프로토콜, ESDI (enhanced small disk interface) 프로토콜, 그리고 IDE (Integrated Drive Electronics) 프로토콜 등과 같은 다양한 인터페이스 프로토콜들 중 적어도 하나를 통해 외부(호스트)와 통신하도록 구성될 수 있다.
메모리 인터페이스는 비휘발성 메모리 칩(100)과 인터페이싱할 수 있다. 여기서 메모리 인터페이스는 예를 들어, 낸드(NAND) 인터페이스 또는 노어(NOR) 인터페이스를 포함할 수 있다.
한편, 본 실시예에 따른 컨트롤러(200)는 도시된 것과 같이 버퍼(210)를 포함할 수 있다. 이러한 버퍼(210)는 향후, 비휘발성 메모리 칩(100)의 데이터를 복원(restoring)하는데 이용될 수 있다. 이러한 버퍼(210)의 보다 구체적인 기능에 대해서는 후술하도록 한다.
한편, 비휘발성 메모리 장치(1)는 오류 정정 블록을 추가적으로 포함하도록 구성될 수 있다. 오류 정정 블록은 오류 정정 코드(ECC)를 이용하여 비휘발성 메모리 칩(100)로부터 읽어진 데이터의 오류를 검출하고, 정정하도록 구성된다. 예시적으로, 오류 정정 블록은, 컨트롤러(200)의 구성 요소로서 제공될 수 있다. 그러나, 본 발명이 이에 제한되는 것은 아니며, 필요에 따라 오류 정정 블록은 비휘발성 메모리 칩(100)의 구성 요소로서 제공될 수도 있다.
비휘발성 메모리 칩(100)은 데이터를 저장하기 위한 복수의 메모리 셀을 포함할 수 있다. 이하, 도 2를 참조하여, 본 실시예에 따른 비휘발성 메모리 칩(100)의 구성에 대해 보다 구체적으로 설명하도록 한다.
도 2를 참조하면, 본 실시예에 따른 비휘발성 메모리 칩(100)은 예를 들어, 플래시 메모리 칩(flash memory chip)일 수 있다. 구체적으로, 비휘발성 메모리 칩(100)은 낸드(NAND) 플래시 메모리 칩 또는 노어(NOR) 플래시 메모리 칩 중 어느 하나일 수 있다. 하지만, 본 발명의 기술적 사상에 따른 비휘발성 메모리 칩(100)의 형태가 이에 제한되는 것은 아니다.
본 발명의 몇몇 실시예에서, 비휘발성 메모리 칩(100)은 PRAM(Phase-change Random-Access Memory), MRAM(Magneto-resistive Random-Access Memory), RRAM(Resistive Random-Access Memory) 중 어느 하나를 포함할 수도 있다.
다시, 도 2을 참조하면, 비휘발성 메모리 칩(100)은 메모리 셀 어레이(110)를 포함할 수 있다. 메모리 셀 어레이(110)는, 복수(예를 들어, a개)의 워드 라인(WL)과 복수(예를 들어, b개)의 비트 라인을 포함하며, 워드 라인(WL)과 비트 라인(BL)이 교차되는 지점에 정의된 복수의 메모리 셀(MC)을 포함할 수 있다.
각 메모리 셀(MC)은 r비트 데이터(r은 1 또는 그 보다 큰 정수)를 저장할 수 있다. 특히, 본 실시예에서, 각 메모리 셀(MC)은 LSB 데이터와 MSB 데이터로 이루어진 2비트 데이터를 저장하는 것으로 구성될 수 있으나, 본 발명이 이러한 예시에 제한되는 것은 아니다.
메모리 셀 어레이(110)는 복수의 영역들로 구분될 수 있다. 구체적으로, 메모리 셀 어레이(110)는 일반 데이터를 저장하는 데이터 영역과 스페어 영역을 포함할 수 있다. 그리고, 메모리 셀 어레이(110)의 영역들 각각은 복수의 메모리 블록들로 구성될 수 있다. 이러한 메모리 셀 어레이(110)의 상세 구성은 본 기술분야의 통상적인 지식을 가진 자들에게 잘 알려져 있는바, 자세한 설명은 생략하도록 한다.
메모리 칩(100)은, 도 2에 도시된 것과 같이, 페이지 버퍼(120), 디코더(130), 전압 발생부(140), 컨트롤 로직(150), 입출력 데이터 버퍼(160), 및 판단부(170)를 더 포함할 수 있다.
페이지 버퍼(120)는, 컨트롤 로직(150)의 제어에 따라 메모리 셀 어레이(110)에 포함된 메모리 셀(MC)에 데이터를 라이트(또는 프로그램)하거나, 메모리 셀(MC)로부터 데이터를 리드하도록 구성될 수 있다.
디코더(130)는, 컨트롤 로직(150)에 의해 제어되며, 메모리 셀 어레이(110)의 메모리 블록을 선택하고, 선택된 메모리 블록의 워드 라인(WL)을 선택하도록 구성될 수 있다. 디코더(130)에 의해 선택된 워드 라인(WL)은 전압 발생부(140)로부터 생성된 워드 라인 전압으로 구동될 수 있다.
전압 발생부(140)는, 컨트롤 로직(150)에 의해 제어되며, 메모리 셀 어레이(110)에 공급될 워드 라인 전압(예를 들면, 리드 전압, 라이트 전압(또는 프로그램 전압), 패스 전압, 로컬 전압, 검증 전압 등)을 발생하도록 구성될 수 있다.
본 실시예에서, 전압 발생부(140)는 도시된 것과 같이, 클럭 생성부(142), 차지 펌핑부(144), 및 레귤레이터(146)을 포함할 수 있다.
클럭 생성부(142)는, 외부로부터 제공된 클럭 신호(CLK)로부터 펌핑 클럭 신호(CLK_p)를 출력할 수 있다. 이러한 펌핑 클럭 신호(CLK_p)는 복수의 클럭 신호들로 구성될 수 있으며, 이러한 복수의 클럭 신호들 각각은 외부 클럭 신호(CLK)보다 긴 주기를 가질 수 있으며, 각각이 소정 시간으로 딜레이 되어 출력될 수 있다.
차지 펌핑부(144)는, 다수의 차지 펌프들과, 제어 회로를 포함할 수 있다. 다수의 차지 펌프들 각각은 제어 회로에 의해 인에이블 또는 디스에이블 될 수 있으며, 클럭 생성부(142)로부터 제공된 펌핑 클럭 신호(CLK_p)에 의해 차지 펌핑 동작을 수행할 수 있다.
레귤레이터(146)는, 차지 펌핑부(144)로부터 출력된 펌핑 전압(Vp)을 레귤레이팅하여 프로그램 전압(Vpgm)을 생성하고, 이를 디코더(130)를 통해 메모리 셀(MC)에 제공할 수 있다.
입출력 데이터 버퍼(160)는, 페이지 버퍼(120)로부터 리드된 결과를 입력 받아 외부로 전송하고, 외부로부터 전송된 데이터를 페이지 버퍼(120)에 전달할 수 있다. 그리고, 컨트롤 로직(150)은, 이러한 비휘발성 메모리 칩(100)의 전반적인 동작을 제어하도록 구성될 수 있다.
판단부(170)는, 메모리 셀(MC)에 대한 프로그램 동작 지속 여부를 결정할 수 있다. 구체적으로, 판단부(170)는, 생성된 프로그램 전압(Vpgm)이 메모리 셀을 프로그램하기 위해 워드 라인(WLa~WL(a-2))에 인가되는 동안, 펌핑 클럭 신호(CLK_p)의 클럭 수가 미리 정한 임계값(예를 들어, 자연수 n)보다 작을 경우에는, 컨트롤 로직(150)에 프로그램 계속 신호(PCS)를 출력하여 메모리 셀(MC)에 대한 프로그램을 지속하도록 하고, 반대로 펌핑 클럭 신호(CLK_p)의 클럭 수가 미리 정한 임계값(예를 들어, 자연수 n) 이상일 경우에는, 컨트롤 로직(150)에 프로그램 중단 신호(PSS)를 출력하여 메모리 셀(MC)에 대한 프로그램을 중단하도록 할 수 있다.
본 실시예에 따른, 비휘발성 메모리 장치(1)는 이러한 판단부(170)의 동작에 의해, 메모리 셀(MC) 프로그램 시 불필요하게 소모되는 전력을 저감시키고 프로그램 시간을 단축 시킬 수 있게 되며, 나아가 진행성 워드 라인 브리지 결함(progressive word line bridge defect)을 검출할 수 있게 된다. 이에 관한 보다 구체적은 설명은 후술하도록 한다.
한편, 예시적으로, 판단부(170)는 도 3과 같이 구성될 수 있다. 도 3을 참조하면, 판단부(170)는 카운터(172)와 비교기(174)를 포함할 수 있다.
카운터(172)는, 클럭 생성부(도 2의 142)로부터 출력된 펌핑 클럭 신호(CLK_p)를 제공받고 펌핑 클럭 신호(CLK_p)의 클럭 수를 카운트하여 이를 출력할 수 있다.
비교기(174)는, 제1 입력으로 카운터(172)의 출력을 제공받고, 제2 입력으로 미리 정한 임계값(예를 들어, 자연수 n)을 제공 받아, 카운터(172)의 출력이 미리 정한 임계값(예를 들어, 자연수 n) 보다 작으면 프로그램 계속 신호(PCS)를 출력하고, 카운터(172)의 출력이 미리 정한 임계값(예를 들어, 자연수 n) 이상이면 프로그램 중단 신호(PSS)를 출력할 수 있다.
한편, 도 3에는 카운터(172)와 비교기(174) 만으로 구성된 판단부(170)의 구성이 도시되어 있으나, 본 발명이 도시된 구성에 제한되는 것은 아니며, 본 발명의 다른 몇몇 실시예에서, 판단부(170)의 구성은 이와 다르게 얼마든지 변형될 수 있다.
이하 도 4 내지 도 6을 참조하여, 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 동작에 대해 설명하도록 한다.
도 4는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 동작을 설명하기 위한 순서도이다. 도 5 및 도 6은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 동작을 설명하기 위한 도면들이다.
먼저, 도 4를 참조하면, 제2 워드 라인(WLa)에 접속된 메모리 셀을 LSB 프로그램한다(S100). 구체적으로, 도 5를 참조하면, 본 실시예에 따른 비휘발성 메모리 장치(도 1의 1)는 각 워드 라인(WL)에 접속된 메모리 셀(MC)에 대해 LSB 프로그램과 MSB 프로그램을 번갈아 수행할 수 있다. 예를 들어, 본 실시예에 따른 비휘발성 메모리 장치(도 1의 1)는 도 5에 도시된 순서에 따라, 각 워드 라인(WL)에 접속된 메모리 셀(MC)에 대해 LSB 프로그램과 MSB 프로그램을 번갈아 수행할 수 있다.
구체적으로, 비휘발성 메모리 장치(도 1의 1)는 먼저, 제3 워드 라인(WL(a-2))에 접속된 메모리 셀(MC)에 대해 LSB 프로그램을 수행하고(1), 제1 워드 라인(WL(a-1))에 접속된 메모리 셀(MC)에 대해 LSB 프로그램을 수행한다(2). 이어서, 비휘발성 메모리 장치(도 1의 1)는 제3 워드 라인(WL(a-2))에 접속된 메모리 셀(MC)에 대해 MSB 프로그램을 수행하고(3), 제2 워드 라인(WLa)에 접속된 메모리 셀(MC)에 대해 LSB 프로그램을 수행한다(4). 그 후, 비휘발성 메모리 장치(도 1의 1)는 제1 워드 라인(WL(a-1))에 접속된 메모리 셀(MC)에 대해 MSB 프로그램을 수행한다(5).
여기서, 설명의 편의상, 도 4의 S100 단계는, 도 5의 (4)단계, 즉, 제2 워드 라인(WLa)에 접속된 메모리 셀(MC)에 대해 LSB 프로그램을 수행하는 단계에 대응하는 것으로 하고, 설명을 계속하도록 한다.
다시, 도 4를 참조하면, 제1 워드 라인(WL(a-1))에 접속된 메모리 셀을 MSB 프로그램하기 위해 프로그램 전압(Vpgm)을 생성한다(S110). 구체적으로, 도 2를 참조하면, 전압 발생부(140)는 제1 워드 라인(WL(a-1))에 접속된 메모리 셀(MC)에 대한 MSB 프로그램을 수행하기 위해 프로그램 전압(Vpgm)을 생성할 수 있다.
이어서, 도 4를 참조하면, 생성된 프로그램 전압(Vpgm)을 제1 워드 라인(WL(a-1))에 인가한다(S115). 그리고, 펌핑 클럭 신호의 클럭 수가 미리 정한 임계값(예를 들어, 자연수 n) 이상인지 판단한다(S120). 만약, 그 결과, 펌핑 클럭 신호의 클럭 수가 미리 정한 임계값(예를 들어, 자연수 n) 보다 작다면, 제1 워드 라인(WL(a-1))에 접속된 메모리 셀에 대해 MSB 프로그램을 수행한다(S130). 하지만 반대로, 펌핑 클럭 신호의 클럭 수가 미리 정한 임계값(예를 들어, 자연수 n) 이상이라면(S120), 제1 워드 라인(WL(a-1))에 접속된 메모리 셀에 대한 MSB 프로그램을 중단한다(S140).
구체적으로, 도 2 및 도 6을 참조하면, 제1 워드 라인(WL(a-1))과 제2 워드 라인(WLa) 사이에 진행성 브리지 결함(B)이 존재하는 경우(도 6의 아래 그림 참조)에는, 이러한 제1 워드 라인(WL(a-1))과 제2 워드 라인(WLa)이 디코더(130)를 통해 레귤레이터(140)에 연결될 것이므로, 차지 펌핑부(144)에서 충분한 펌핑 전압(Vp)을 생성하여 이를 제1 워드 라인(WL(a-1))에 인가한다고 하더라도, 리키지(leakage) 등에 의해 레귤레이터(140)의 출력이 원하는 프로그램 전압(Vpgm)으로 유지되지 못할 가능성이 높다. 따라서, 이 경우에는, 원하는 프로그램 전압(Vpgm)을 유지하기 위해서 지속적으로 차지 펌핑부(144)에 펌핑 클럭 신호(CLK_p)가 인가되게 된다(도 6의 아래 그림 참조). 이러한 상황에서 메모리 셀(MC)에 대한 프로그램 동작을 지속할 경우, 프로그램 동작에 불필요하게 많은 전력이 소모되고, 프로그램 시간 역시 불필요하게 길어질 수 있다.
따라서, 본 실시예에서는, 판단부(170)가 프로그램 전압(Vpgm)을 생성하고 이를 제1 워드 라인(WL(a-1))에 인가하기 시작한 시점(도 6의 T)으로부터의 펌핑 클럭 신호(CLK_p)의 클럭 수와 미리 정한 임계값(예를 들어, 자연수 n)을 비교 판단하여, 펌핑 클럭 신호(CLK_p)의 클럭 수가 미리 정한 임계값(예를 들어, 자연수 n) 이상이라면, 프로그램(예를 들어, 제1 워드 라인(WL(a-1))에 접속된 메모리 셀(MC)에 대한 MSB 프로그램)을 중단하도록 프로그램 중단 신호(PSS)를 컨트롤 로직(150)에 출력한다. 이렇게 되면, 제1 워드 라인(WL(a-1))에 접속된 메모리 셀(MC)에 대한 MSB 프로그램이 중단될 것이므로, 프로그램 동작에서의 불필요한 전력 소모를 줄일 수 있고, 불필요한 프로그램 시간을 제거할 수 있다.
반대로, 제1 워드 라인(WL(a-1))과 제2 워드 라인(WLa) 사이에 앞서와 달리 진행성 브리지 결함(B)이 존재하지 않는 경우(도 6의 위 그림 참조)에는, 제1 워드 라인(WL(a-1))과 제2 워드 라인(WLa)간에 앞서 설명한 리키지(leakage) 등이 발생하지 않아, 차지 펌핑부(144)에 일정 시간의 펌핑 클럭 신호(CLK_p)가 인가되면, 제1 워드 라인(WL(a-1))이 프로그램되는 동안 레귤레이터(140)의 출력이 원하는 프로그램 전압(Vpgm)에 도달할 수 있게 된다(도 6의 위 그림 참조).
따라서, 본 실시예에서는, 판단부(170)가 프로그램 전압(Vpgm)을 생성하고 이를 제1 워드 라인(WL(a-1))에 인가하기 시작한 시점(도 6의 T)으로부터의 펌핑 클럭 신호(CLK_p)의 클럭 수와 미리 정한 임계값(예를 들어, 자연수 n)을 비교 판단하여, 펌핑 클럭 신호(CLK_p)의 클럭 수가 미리 정한 임계값(예를 들어, 자연수 n)보다 작은 경우에는, 프로그램 계속 신호(PCS)를 컨트롤 로직(150)에 출력하여 프로그램 동작이 계속해서 수행되도록 한다.
여기서, 임계값 n은 비휘발성 메모리 장치(1)의 동작 환경에 따라 적절할 값으로 미리 정해질 수 있으며, 본 발명의 몇몇 실시예에서, 임계값 n은 비휘발성 메모리 장치(1)의 동작 환경에 따라 적응적(adaptive)으로 변경되도록 구현될 수도 있다.
다시 도 4를 참조하면, 제1 워드 라인(WL(a-1))에 접속된 메모리 셀(MC)에 대한 MSB 프로그램을 중단한 후(S140), 제2 워드 라인(WLa)에 접속된 메모리 셀에 대한 LSB 데이터를 리드한다(S150). 그 결과, 리드 페일이 발생된다면(S160), 제2 워드 라인(WLa)에 접속된 메모리 셀에 대한 LSB 데이터를 복원한다(S170).
만약, 도 6에 도시된 것과 같이, 제1 워드 라인(WL(a-1))과 제2 워드 라인(WLa) 사이에 진행성 브리지 결함(B)이 존재한다면, 리키지 등에 의해 도 4의 S100 단계에서 수행한 LSB 프로그램도 그 신뢰성을 보장할 수 없게 된다. 따라서, 판단부(170)로부터 프로그램 중단 신호(PSS)가 출력된 경우, 컨트롤러(도 1의 200)는 제2 워드 라인(WLa)에 접속된 메모리 셀(MC)에 저장된 LSB 데이터를 리드하여 리드 페일이 발생하는지 여부를 관찰한다. 만약, 그 결과 리드 페일이 발생하였다면, 컨트롤러(200)는 제1 워드 라인(WL(a-1))과 제2 워드 라인(WLa) 사이에 진행성 브리지 결함(B)이 존재한다고 판단하고, 그 데이터를 복원하기 위한 동작을 수행한다.
이러한 복원 동작에는 컨트롤러(200)에 포함된 버퍼(210)가 이용될 수 있다. 구체적으로, 컨트롤러(200)에 포함된 버퍼(200)는, 제2 워드 라인(WLa)에 접속된 메모리 셀(MC)에 대한 LSB 프로그램이 수행될 때(도 4의 S100), 이와 관련된 LSB 데이터를 임시로 저장한다. 그 후, 제1 워드 라인(WL(a-1))과 제2 워드 라인(WLa) 사이에 진행성 브리지 결함(B)이 존재한다고 판단되면(S160), 컨트롤러(200)는 버퍼(210)에 임시로 저장된 데이터를 이용하여, 제2 워드 라인(WLa)에 접속된 메모리 셀(MC)의 LSB 데이터를 복원할 수 있게 된다.
정리하면, 본 실시예에 따른, 비휘발성 메모리 장치(1)는, 제1 워드 라인(WL(a-1))에 인가되는 프로그램 전압(Vpgm)(예를 들어, MSB 데이터를 프로그램하기 위한 프로그램 전압)을 생성하고 이를 제1 워드 라인(WL(a-1))에 인가하는 동안의 펌핑 클럭 신호(CLK_p)의 클럭 수가 지나치게 많아질 경우(미리 정한 임계값(예를 들어, 자연수 n)보다 클 경우) 프로그램 동작을 중단시킴으로써, 불필요한 전력 소모를 저감시키고 전체적인 프로그램 시간을 단축시킬 수 있게 된다. 그리고 이어서, 제1 워드 라인(WL(a-1))에 인접한 제2 워드 라인(WLa)을 리드하여 리드 페일이 발생한다면, 제1 워드 라인(WL(a-1))과 제2 워드 라인(WLa) 사이에 진행성 브리지 결함이 발생하였다고 판단하고, 컨트롤러(200)에 포함된 버퍼(210)를 이용하여, 제2 워드 라인(WLa)에 접속된 메모리 셀(MC)에 대한 데이터(예를 들어, LSB 데이터)를 복원하게 된다.
이상에서, 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 동작에 대해 설명하였으나, 본 실시예에 따른 비휘발성 메모리 장치의 동작이 이에 제한되는 것은 아니다. 필요에 따라, 이는 얼마든지 변형될 수 있다.
이하 도 7 및 도 8을 참조하여, 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 동작에 대해 설명하도록 한다.
도 7은 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 동작을 설명하기 위한 순서도이다. 도 8은 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 동작을 설명하기 위한 도면이다.
먼저, 도 7을 참조하면, 제2 워드 라인(WLa)에 접속된 메모리 셀을 LSB 프로그램한다(S200). 이에 대해서는 앞서 충분히 설명한 바, 구체적인 설명은 생략하도록 한다.
다음, 도 7을 참조하면, 제1 워드 라인(WL(a-1))에 접속된 메모리 셀을 MSB 프로그램하기 위해 프로그램 전압(Vpgm_i)을 생성한다(S210). 구체적으로, 도 8을 참조하면, 본 실시예에서, 제1 워드 라인(WL(a-1))에 접속된 메모리 셀을 MSB 프로그램하기 위한 프로그램 전압(Vpgm_i)은, 도시된 것과 같이 그 크기가 순차적으로 증가하는 제1-1 내지 제1-m(Vpgm_1~Vpgm_m) 서브 프로그램 전압을 포함할 수 있다. 다시 말해, 본 실시예에서, 제1 워드 라인(WL(a-1))에 접속된 메모리 셀(MC)을 프로그램하는 방법으로는 예를 들어, ISPP(incremental step pulse program)가 사용될 수 있다.
이어서, 도 7을 참조하면, 생성된 프로그램 전압(Vpgm_i)을 제1 워드 라인(WL(a-1))에 인가한다(S213). 그리고, 생성된 프로그램 전압(Vpgm_i)이 제1-k 서브 프로그램 전압(Vpgm_k)이상인지 판단한다(S215). 도 8에 도시된 것과 같이 프로그램 전압(Vpgm_i)이 그 크기가 순차적으로 증가하는 제1-1 내지 제1-m(Vpgm_1~Vpgm_m) 서브 프로그램 전압으로 구성될 경우, 제1-(i-1) 서브 프로그램 전압(Vpgm_(i-1))은 제1-i 서브 프로그램 전압(Vpgm_i)에 비해 그 크기가 작기 때문에, 제1 워드 라인(WL(a-1))과 제2 워드 라인(WLa) 사이에 발생된 진행성 브리지 결함의 영향을 덜 받을 수 있다. 즉, 제1 워드 라인(WL(a-1))과 제2 워드 라인(WLa) 사이에 리키지가 존재한다고 하더라도, 레귤레이터(140)의 출력이 원하는 프로그램 전압에 보다 용이하게 도달할 수 있게 된다.
따라서, 본 실시예에서는, 제1 워드 라인(WL(a-1))과 제2 워드 라인(WLa) 사이에 발생된 진행성 브리지 결함의 영향이 상대적으로 큰, 제1-k 서브 프로그램 전압(Vpgm_k)이상의 프로그램 전압(Vpgm_i(k≤i≤m))에 대해서만, 판단부(170)가 프로그램 전압(Vpgm_i)이 제1 워드 라인(WL(a-1))에 인가되기 시작한 시점(도 6의 T)으로부터의 펌핑 클럭 신호(CLK_p)의 클럭 수와 미리 정한 임계값(예를 들어, 자연수 n)을 비교 판단하게 되며(S220), 그 결과에 따라 앞서 설명한 실시예의 동작들을 수행하게 된다(S230~S270).
다음 도 9를 참조하여, 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 동작에 대해 설명하도록 한다.
도 9는 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 동작을 설명하기 위한 순서도이다.
먼저, 도 9를 참조하면, 제2 워드 라인(WLa)에 접속된 메모리 셀을 LSB 프로그램한다(S300). 그리고, 제1 워드 라인(WL(a-1))에 접속된 메모리 셀을 MSB 프로그램하기 위해 프로그램 전압(Vpgm)을 생성한다(S310). 이러한 동작에 대해서는 앞서 충분히 설명한 바, 구체적인 설명은 생략하도록 한다.
다음 도 9를 참조하면, 생성된 프로그램 전압(Vpgm)을 제1 워드 라인(WL(a-1))에 인가한다(S313). 그리고, 제1 워드 라인(WL(a-1))에 접속된 메모리 셀(MC)을 프로그램하기 위해, 프로그램 전압(Vpgm)이 j회 이상 인가되었는지 판단한다(S315).
워드 라인(WL)간에 발생하는 진행성 브리지 결함(도 6의 B)의 발생 확률은 워드 라인(WL)에 인가되는 프로그램 전압(Vpgm)의 인가 횟수가 증가하면서 같이 증가할 수 있다. 따라서, 프로그램 전압(Vpgm)이 상대적으로 작은 횟수만큼 인가된 워드 라인(WL)에 대해 앞서 설명한 판단 동작 및 대응 동작을 수행하는 것은, 장치 효율 측면에서 비효율적일 수 있다. 따라서, 본 실시예에서는, 프로그램 전압(Vpgm)이 j회 이상 인가된 워드 라인(WL)에 대해서만, 앞서 설명한 판단 동작 및 대응 동작(S320~S370)을 수행하게 되며, 이를 통해 장치의 동작 효율성을 향상시킬 수 있다.
한편, 도면에 따로 도시하지는 않았으나, 본 발명의 몇몇 실시에에서는, 앞서 설명한 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 동작과, 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 동작이 혼합되어 수행될 수 있다. 즉, 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 동작은 앞서 설명한 실시예들로 제한되지 않는다.
다음 도 10을 참조하여, 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 응용예에 대해 설명한다.
도 10은 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 응용예를 도시한 블록도이다.
도 10을 참조하면, 앞서 설명한 본 발명의 실시예들에 따른 비휘발성 메모리 장치는 도 10에 도시된 것과 같은 메모리 시스템(2000)에 적용될 수 있다.
메모리 시스템(2000)은 복수의 메모리 칩(2100)과 컨트롤러(2200)를 포함할 수 있다. 여기서, 복수의 메모리 칩(2100)은 도시된 것과 같이 복수의 그룹들로 분할될 수 있다. 그리고, 복수의 메모리 칩(2100)의 각 그룹은 하나의 공통 채널을 통해 컨트롤러(2200)와 통신하도록 구성될 수 있다. 예를 들어, 복수의 메모리 칩(2100)은 도시된 것과 같이 제 1 내지 제 k 채널들(CH1~CHk)을 통해 컨트롤러(2200)와 통신할 수 있다.
이러한 컨트롤러(2200)와 복수의 메모리 칩(2100)은 하나의 반도체 장치로 집적될 수 있다. 예시적으로, 컨트롤러(2200)와 복수의 메모리 칩(2100)은 하나의 반도체 장치로 집적되어, 메모리 카드를 구성할 수 있다. 이러한 메모리 카드의 예로는, PC 카드(PCMCIA, personal computer memory card international association), 컴팩트 플래시 카드(CF), 스마트 미디어 카드(SM, SMC), 메모리 스틱, 멀티미디어 카드(MMC, RS-MMC, MMCmicro), SD 카드(SD, miniSD, microSD, SDHC), 유니버설 플래시 기억장치(UFS) 등을 들 수 있으나, 본 발명이 이에 제한되는 것은 아니다.
한편, 컨트롤러(2200)와 복수의 메모리 칩(2100)은 하나의 반도체 장치로 집적되어 반도체 드라이브(SSD, Solid State Drive)를 구성할 수도 있다. 반도체 드라이브(SSD)는 반도체 메모리에 데이터를 저장하도록 구성되는 저장 장치를 포함한다. 이처럼 메모리 시스템(2000)이 반도체 드라이브(SSD)로 이용되는 경우, 메모리 시스템(2000)에 연결된 호스트(Host)의 동작 속도는 획기적으로 개선될 수 있다.
또한, 컨트롤러(2200)와 복수의 메모리 칩(2100)은 다양한 형태들의 패키지로 실장될 수 있다. 예를 들면, 컨트롤러(2200)와 복수의 메모리 칩(2100)은, 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), Thin Quad Flatpack(TQFP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP) 등과 같은 방식으로 패키지화되어 실장될 수 있다.
다음 도 11을 참조하여, 본 발명의 실시예들에 따른 비휘발성 메모리 장치가 채용된 컴퓨팅 시스템에 대해 설명한다.
도 11은 본 발명의 실시예들에 따른 비휘발성 메모리 장치가 채용된 컴퓨팅 시스템을 도시한 블록도이다.
다음 도 11을 참조하면, 컴퓨팅 시스템(3000)은 중앙 처리 장치(3100), 램(3200, RAM, Random Access Memory), 사용자 인터페이스(3300), 전원(3400), 그리고 메모리 시스템(2000)을 포함할 수 있다.
메모리 시스템(2000)은 시스템 버스(3500)를 통해, 중앙처리장치(3100), 램(3200), 사용자 인터페이스(3300), 그리고 전원(3400)에 전기적으로 연결될 수 있다. 사용자 인터페이스(3300)를 통해 제공되거나, 중앙 처리 장치(3100)에 의해서 처리된 데이터는 메모리 시스템(2000)에 저장될 수 있다.
도 11에서, 복수의 메모리 칩(2100)은 컨트롤러(2200)를 통해 시스템 버스(3500)에 연결되는 것으로 도시되어 있으나, 복수의 메모리 칩(2100)은 도시된 것과 달리 시스템 버스(3500)에 직접 연결되도록 구성될 수도 있다.
이러한 컴퓨팅 시스템(3000)은, 컴퓨터, UMPC (Ultra Mobile PC), 워크스테이션, 넷북(net-book), PDA (Personal Digital Assistants), 포터블(portable) 컴퓨터, 웹 타블렛(web tablet), 무선 전화기(wireless phone), 모바일 폰(mobile phone), 스마트폰(smart phone), e-북(e-book), PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 블랙박스(black box), 디지털 카메라(digital camera), 3차원 수상기(3-dimensional television), 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 영상 녹화기(digital picture recorder), 디지털 영상 재생기(digital picture player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), 정보를 무선 환경에서 송수신할 수 있는 장치, 홈 네트워크를 구성하는 다양한 전자 장치들 중 하나, 컴퓨터 네트워크를 구성하는 다양한 전자 장치들 중 하나, 텔레매틱스 네트워크를 구성하는 다양한 전자 장치들 중 하나, RFID 장치, 또는 컴퓨팅 시스템을 구성하는 다양한 구성 요소들 중 하나 등과 같은 전자 장치의 다양한 구성 요소들 중 하나로 제공될 수 있으나, 본 발명이 이러한 예시에 제한되는 것은 아니다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였으나, 본 발명은 상기 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 제조될 수 있으며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
100: 비휘발성 메모리 칩 140: 전압 발생부
142: 클럭 생성부 144: 차지 펌핑부
146: 레귤레이터 170: 판단부
172: 카운터 174: 비교기
200: 컨트롤러 210: 버퍼

Claims (10)

  1. 제1 메모리 셀이 접속된 제1 워드 라인을 제공하고,
    상기 제1 메모리 셀을 프로그램하기 위해, 차지 펌핑부에 펌핑 클럭 신호를 제공하여, 상기 제1 워드 라인에 인가될 제1 프로그램 전압을 생성하고,
    상기 생성된 제1 프로그램 전압을 상기 제1 워드 라인에 인가하는 것을 포함하되,
    상기 생성된 제1 프로그램 전압을 상기 제1 워드 라인에 인가하는 동안, 상기 펌핑 클럭 신호의 클럭 수가 미리 정한 n(여기서, n은 자연수) 이상이면, 상기 제1 메모리 셀에 대한 프로그램을 중단하는 비휘발성 메모리 장치의 구동 방법.
  2. 제 1항에 있어서,
    제2 메모리 셀이 접속된 제2 워드 라인을 제공하고,
    상기 제1 워드 라인에 상기 제1 프로그램 전압을 인가하기 전에, 상기 제2 메모리 셀을 프로그램하기 위해, 상기 제2 워드 라인에 제2 프로그램 전압을 인가하고,
    상기 제1 메모리 셀에 대한 프로그램을 중단한 후, 상기 제2 메모리 셀에 저장된 데이터를 리드하여 그 결과 리드 페일이 발생할 경우, 상기 제1 워드 라인과 상기 제2 워드 라인 사이에 브리지(bridge)가 발생하였다고 판단하는 것을 더 포함하는 비휘발성 메모리 장치의 구동 방법.
  3. 제 2항에 있어서,
    상기 제1 워드 라인은 상기 제2 워드 라인에 인접하여 배치되는 비휘발성 메모리 장치의 구동 방법.
  4. 제 2항에 있어서,
    상기 제1 메모리 셀을 프로그램하는 것은, 상기 제1 메모리 셀을 MSB 프로그램하는 것을 포함하는 비휘발성 메모리 장치의 구동 방법.
  5. 제 4항에 있어서,
    상기 제2 메모리 셀을 프로그램하는 것은, 상기 제2 메모리 셀을 LSB 프로그램하는 것을 포함하는 비휘발성 메모리 장치의 구동 방법.
  6. 제 5항에 있어서,
    상기 제1 워드 라인과 상기 제2 워드 라인 사이에 브리지가 발생하였다고 판단되면, 상기 제2 메모리 셀에 저장된 LSB 데이터를 복원하는 것을 더 포함하는 비휘발성 메모리 장치의 구동 방법.
  7. 제1 메모리 셀이 접속된 제1 워드 라인을 포함하는 메모리 셀 어레이;
    펌핑 클럭 신호를 인가받아 상기 제1 메모리 셀을 MSB 프로그램하기 위해 상기 제1 워드 라인에 인가되는 제1 프로그램 전압을 생성하는 차지 펌핑부; 및
    상기 제1 프로그램 전압이 생성된 후, 상기 생성된 제1 프로그램 전압이 상기 제1 워드 라인에 인가되는 동안, 상기 펌핑 클럭 신호의 클럭 수가 미리 정한 n(여기서, n은 자연수) 이상이면, 프로그램 중단 신호를 출력하는 판단부를 포함하는 비휘발성 메모리 장치.
  8. 제 7항에 있어서,
    상기 제1 프로그램 전압은, 그 크기가 순차적으로 증가하는 제1-1 내지 제1-m(여기서, m은 자연수) 서브 프로그램 전압을 포함하고,
    상기 판단부는, 상기 생성된 제1-k(여기서 1<k≤m인 자연수) 서브 프로그램 전압이 상기 제1 워드 라인에 인가되는 동안, 상기 펌핑 클럭 신호의 클럭 수가 미리 정한 n 이상이면, 상기 프로그램 중단 신호를 출력하는 비휘발성 메모리 장치.
  9. 제 7항에 있어서,
    상기 판단부는, 상기 제1 메모리 셀을 프로그램하기 위해 상기 제1 워드 라인에 프로그램 전압이 인가된 횟수가 j(여기서, j는 자연수)회 이상이고, 상기 생성된 제1 프로그램 전압이 상기 제1 워드 라인에 인가되는 동안, 상기 펌핑 클럭 신호의 클럭 수가 미리 정한 n 이상일 경우, 상기 프로그램 중단 신호를 출력하는 비휘발성 메모리 장치.
  10. 제 7항에 있어서,
    상기 판단부는,
    상기 펌핑 클럭 신호의 클럭 수를 카운트하여 이를 출력하는 카운터와,
    상기 카운터의 출력과 상기 n을 비교하는 비교기를 포함하는 비휘발성 메모리 장치.
KR1020120080648A 2012-07-24 2012-07-24 비휘발성 메모리 장치 및 그 구동 방법 Active KR102012298B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020120080648A KR102012298B1 (ko) 2012-07-24 2012-07-24 비휘발성 메모리 장치 및 그 구동 방법
US13/904,047 US9189174B2 (en) 2012-07-24 2013-05-29 Nonvolatile memory device and method of operating the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120080648A KR102012298B1 (ko) 2012-07-24 2012-07-24 비휘발성 메모리 장치 및 그 구동 방법

Publications (2)

Publication Number Publication Date
KR20140014518A KR20140014518A (ko) 2014-02-06
KR102012298B1 true KR102012298B1 (ko) 2019-08-20

Family

ID=49996063

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120080648A Active KR102012298B1 (ko) 2012-07-24 2012-07-24 비휘발성 메모리 장치 및 그 구동 방법

Country Status (2)

Country Link
US (1) US9189174B2 (ko)
KR (1) KR102012298B1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9218885B2 (en) 2014-02-17 2015-12-22 Seagate Technology Llc System to control a width of a programming threshold voltage distribution width when writing hot-read data
US9704581B2 (en) * 2014-12-27 2017-07-11 Intel Corporation Voltage ramping detection
US9548129B2 (en) * 2015-03-02 2017-01-17 Sandisk Technologies Llc Word line look ahead read for word line to word line short detection
KR102356072B1 (ko) * 2015-09-10 2022-01-27 에스케이하이닉스 주식회사 메모리 시스템 및 그 동작 방법
KR102277652B1 (ko) * 2017-10-26 2021-07-14 삼성전자주식회사 워드 라인 불량 검출 회로를 포함하는 메모리 장치 및 그 구동 방법
KR102477267B1 (ko) 2017-11-14 2022-12-13 삼성전자주식회사 비휘발성 메모리 장치 및 이의 동작 방법
KR102386242B1 (ko) * 2017-11-14 2022-04-12 삼성전자주식회사 전원 전압 변동에 독립적인 워드 라인 불량 검출 회로를 포함하는 메모리 장치 및 그 구동 방법
KR102524916B1 (ko) * 2018-03-13 2023-04-26 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
US10790030B1 (en) * 2019-06-19 2020-09-29 Windbond Electronics Corp. Non-volatile memory device and method capable of pausing and resuming programming operation
CN113409849A (zh) * 2021-05-21 2021-09-17 芯天下技术股份有限公司 一种降低编程功耗的方法、装置、存储介质和终端

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040120204A1 (en) * 2002-10-30 2004-06-24 Kabushiki Kaisha Toshiba Non-volatile semiconductor storage device performing ROM read operation upon power-on

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3984209B2 (ja) * 2003-07-31 2007-10-03 株式会社東芝 半導体記憶装置
KR100634432B1 (ko) 2004-09-09 2006-10-16 삼성전자주식회사 카피백 프로그램 동작 중에 에러를 검출하는 낸드 플래시메모리 장치 및 에러 검출 방법
KR100596330B1 (ko) 2005-01-31 2006-07-05 주식회사 엑셀반도체 플래쉬 메모리의 사이클링 불량을 검출하는 방법 및 그 장치
US20080235541A1 (en) 2007-03-19 2008-09-25 Powerchip Semiconductor Corp. Method for testing a word line failure
US7532513B2 (en) 2007-08-27 2009-05-12 Macronix International Co., Ltd. Apparatus and method for detecting word line leakage in memory devices
KR101347287B1 (ko) * 2008-02-20 2014-01-03 삼성전자주식회사 프로그램 전압을 가변적으로 제어할 수 있는 플래쉬 메모리장치 및 그 프로그래밍 방법
US7944747B2 (en) 2008-03-17 2011-05-17 Samsung Electronics Co., Ltd. Flash memory device and method for programming flash memory device having leakage bit lines
KR20090123509A (ko) 2008-05-28 2009-12-02 주식회사 하이닉스반도체 불휘발성 메모리 소자의 테스트 방법
EP2237163B1 (en) * 2009-04-01 2013-05-01 Seiko Epson Corporation System having a plurality of memory devices and data transfer method for the same
KR101653206B1 (ko) 2010-01-19 2016-09-02 삼성전자주식회사 프로그램 검증 회로 및 이를 포함하는 비휘발성 메모리 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040120204A1 (en) * 2002-10-30 2004-06-24 Kabushiki Kaisha Toshiba Non-volatile semiconductor storage device performing ROM read operation upon power-on

Also Published As

Publication number Publication date
US20140032821A1 (en) 2014-01-30
KR20140014518A (ko) 2014-02-06
US9189174B2 (en) 2015-11-17

Similar Documents

Publication Publication Date Title
KR102012298B1 (ko) 비휘발성 메모리 장치 및 그 구동 방법
US11646068B2 (en) Memory controller and operating method thereof
US9093132B2 (en) Nonvolatile memory device, memory system and controller operating method
US9519576B2 (en) Memory controller, method of operating the same and memory system including the same
US10635333B2 (en) Memory system
US8503236B2 (en) Nonvolatile memory device, methods of programming the nonvolatile memory device and memory system including the nonvolatile memory device
US9274886B2 (en) Data storage device having a reduced error occurrence, operating method thereof, and data processing system including the same
US12026400B2 (en) Memory controller and operating method thereof
US10902928B2 (en) Memory system, operation method thereof, and nonvolatile memory device
US20140010026A1 (en) Nonvolatile memory device, operating method thereof, and data storage device having the same
KR20140013383A (ko) 불휘발성 메모리 장치 및 그것의 동작 방법
US20170125127A1 (en) Memory system and operating method thereof
US9472300B2 (en) Data storage device and operating method thereof
US11960728B2 (en) Interface circuit, memory device, storage device, and method of operating the memory device
KR20190029316A (ko) 마이크로 컨트롤러, 이를 포함하는 메모리 시스템 및 이의 동작방법
US20250077105A1 (en) Memory controller and operating method thereof
US9588708B2 (en) Semiconductor memory device, operating method thereof, and data storage device including the same
US9256494B2 (en) Memory system and operating method thereof
JP2022159991A (ja) メモリシステム及びその動作方法
US9990968B2 (en) Control circuit and memory device having the same
KR20160094789A (ko) 반도체 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20120724

PG1501 Laying open of application
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20170615

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20120724

Comment text: Patent Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20181120

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20190514

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20190813

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20190814

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20220727

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20230801

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20240729

Start annual number: 6

End annual number: 6