KR20150065224A - 메모리 시스템 및 그것을 포함하는 유저 장치 - Google Patents

메모리 시스템 및 그것을 포함하는 유저 장치 Download PDF

Info

Publication number
KR20150065224A
KR20150065224A KR1020130150114A KR20130150114A KR20150065224A KR 20150065224 A KR20150065224 A KR 20150065224A KR 1020130150114 A KR1020130150114 A KR 1020130150114A KR 20130150114 A KR20130150114 A KR 20130150114A KR 20150065224 A KR20150065224 A KR 20150065224A
Authority
KR
South Korea
Prior art keywords
time
read
memory
mark table
information
Prior art date
Application number
KR1020130150114A
Other languages
English (en)
Other versions
KR102187643B1 (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 KR1020130150114A priority Critical patent/KR102187643B1/ko
Priority to US14/466,187 priority patent/US9564241B2/en
Priority to CN201410734008.0A priority patent/CN104700896B/zh
Publication of KR20150065224A publication Critical patent/KR20150065224A/ko
Application granted granted Critical
Publication of KR102187643B1 publication Critical patent/KR102187643B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • 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/0604Improving or facilitating administration, e.g. storage management
    • 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/0614Improving the reliability of storage systems
    • 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
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • 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/0466Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells with charge storage in an insulating layer, e.g. metal-nitride-oxide-silicon [MNOS], silicon-oxide-nitride-oxide-silicon [SONOS]
    • 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/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory

Landscapes

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

Abstract

여기에 개시되는 메모리 시스템은 전하 트랩 플래시 셀들을 갖는 저장 매체와; 그리고 상기 저장 매체를 제어하도록 구성된 제어기를 포함하며, 상기 제어기는 프로그래밍을 위해 선택된 전하 트랩 플래시 셀들을 포함하는 메모리 영역의 프로그램 완료 시간을 시간 마크 테이블에 마크하도록 그리고 특정 시간을 기준으로 상기 시간 마크 테이블에 마크된 메모리 영역의 정보를 관리하도록 구성되고, 그리고 상기 제어기는 읽기 요청된 메모리 영역의 정보가 상기 시간 마크 테이블에 저장되어 있는 지의 여부에 따라 상기 읽기 요청된 메모리 영역의 읽기 조건을 실시간으로 변경하도록 구성된다.

Description

메모리 시스템 및 그것을 포함하는 유저 장치{MEMORY SYSTEM AND USER DEVICE INCLUDING THE SAME}
본 발명은 반도체 메모리 장치에 관한 것으로, 좀 더 구체적으로는 불 휘발성 메모리 장치 및 그것을 제어하는 메모리 제어기에 관한 것이다.
반도체 메모리는, 일반적으로, 위성에서 소비자 전자 기술까지의 범위에 속하는 마이크로프로세서를 기반으로 한 응용 및 컴퓨터와 같은 디지털 로직 설계의 가장 필수적인 마이크로 전자 소자이다. 그러므로, 높은 집적도 및 빠른 속도를 위한 축소(scaling)를 통해 얻어지는 프로세스 향상 및 기술 개발을 포함한 반도체 메모리의 제조 기술의 진보는 다른 디지털 로직 계열의 성능 기준을 확립하는 데 도움이 된다.
반도체 메모리 장치는 크게 휘발성 반도체 메모리 장치와 불 휘발성 반도체 메모리 장치로 나뉘어진다. 휘발성 반도체 메모리 장치에 있어서, 로직 정보는 스태틱 랜덤 액세스 메모리의 경우 쌍안정 플립-플롭의 로직 상태를 설정함으로써 또는 다이나믹 랜덤 액세스 메모리의 경우 커패시터의 충전을 통해 저장된다. 휘발성 반도체 메모리 장치의 경우, 전원이 인가되는 동안 데이터가 저장되고 읽혀지며, 전원이 차단될 때 데이터는 소실된다.
MROM, PROM, EPROM, EEPROM, PRAM, 등과 같은 불 휘발성 반도체 메모리 장치는 전원이 차단되어도 데이터를 저장할 수 있다. 불 휘발성 메모리 데이터 저장 상태는 사용되는 제조 기술에 따라 영구적이거나 재프로그램 가능하다. 불 휘발성 반도체 메모리 장치는 컴퓨터, 항공 전자 공학, 통신, 그리고 소비자 전자 기술 산업과 같은 넓은 범위의 응용에서 프로그램 및 마이크로코드의 저장을 위해서 사용된다. 단일 칩에서 휘발성 및 불 휘발성 메모리 저장 모드들의 조합이 빠르고 재프로그램 가능한 불 휘발성 메모리를 요구하는 시스템에서 불 휘발성 RAM (nvRAM)과 같은 장치들에서 또한 사용 가능하다. 게다가, 응용 지향 업무를 위한 성능을 최적화시키기 위해 몇몇 추가적인 로직 회로를 포함하는 특정 메모리 구조가 개발되어 오고 있다.
불 휘발성 반도체 메모리 장치에 전하 트랩 플래시(charge trap flash: CTF) 기술이 적용되어 오고 있다. 여기서, 전하 트랩 플래시 기법은 볼 휘발성 노어 및 낸드 플래시 메모리들을 구현하는 데 사용되는 반도체 메모리 기술이다. 전하 트랩 플래시 기법은 전자들을 저장하기 위해서 플로팅 게이트 구조를 대표하는 도핑된 다결정 실리콘 대신에 실리콘 질화막이 사용된다는 점에서 종래의 플로팅 게이트 MOSFET 기법들과 다르다. 이러한 접근법에 의해서 메모리 제조사는 다양한 이점들, 예를 들면, 전하 저장 노드를 형성하는 데 적은 공정 단계들이 요구되고, 보다 작은 공정 지오메트리가 사용되고 (결과적으로, 칩 크기 및 비용이 감소됨), 하나의 플래시 메모리 셀에 다수의 비트들이 저장되고, 신뢰성이 향상되며, 전하 트랩이 터널 산화막의 점 결함들에 덜 민감하기 때문에 수율이 향상된다는 점에서 제조 비율을 줄일 수 있다.
본 발명의 목적은 신뢰성을 향상시킬 수 있는 메모리 시스템 및 그것을 포함하는 유저 장치를 제공하는 것이다.
본 발명의 일 특징은 전하 트랩 플래시 셀들을 갖는 저장 매체와; 그리고 상기 저장 매체를 제어하도록 구성된 제어기를 포함하며, 상기 제어기는 프로그래밍을 위해 선택된 전하 트랩 플래시 셀들을 포함하는 메모리 영역의 프로그램 완료 시간을 시간 마크 테이블에 마크하도록 그리고 특정 시간을 기준으로 상기 시간 마크 테이블에 마크된 메모리 영역의 정보를 관리하도록 구성되고, 그리고 상기 제어기는 읽기 요청된 메모리 영역의 정보가 상기 시간 마크 테이블에 저장되어 있는 지의 여부에 따라 상기 읽기 요청된 메모리 영역의 읽기 조건을 실시간으로 변경하도록 구성되는 메모리 시스템을 제공하는 것이다.
본 발명의 다른 특징은 전하 트랩 플래시 셀들을 갖는 저장 매체를 제어하도록 구성된 제어기의 프로그램 제어 방법을 제공하는 것이며, 상기 프로그램 제어 방법은 쓰기 요청에 응답하여 프로그램 명령을 이슈하고, 상기 저장 매체의 신호 라인이 제 1 레벨에서 제 2 레벨로 천이하였는 지의 여부를 판별하고, 그리고 상기 저장 매체의 신호 라인이 제 1 레벨에서 제 2 레벨로 천이한 것으로 판별된 결과로서, 쓰기 요청된 메모리 영역의 정보를 시간 마크 테이블에 마크하는 것을 포함하며, 프로그램된 전하 트랩 플래시 셀의 문턱 전압은 프로그램 완료 시간과 특정 시간 사이에서 변화하며, 상기 시간 마크 테이블은 상기 프로그램 완료 시간과 상기 특정 시간 사이에 존재하고 프로그램 완료된 메모리 영역의 정보가 저장되는 복수의 시간 존들을 포함한다.
본 발명의 예시적인 실시예들에 의하면, CTF 셀의 프로그램 경과 시간에 따라 읽기 조건을 변경함으로써 패스트 전하 손실 현상으로 인해 변화되는 CTF 셀의 문턱 전압을 판별하기 위한 읽기 조건을 실시간으로 최적화하는 것이 가능하다.
도 1은 전하 트랩 플래시 셀의 수직 구조를 개략적으로 보여주는 도면이다.
도 2는 패스트 전하 손실 현상에 따라 변화되는 CTF 셀의 문턱 전압의 변화를 보여주는 도면이다.
도 3은 패스트 전하 손실 현상에 따라 변화되는 문턱 전압 산포들을 보여주는 도면이다.
도 4는 본 발명의 예시적인 실시예에 따른 메모리 시스템을 개략적으로 보여주는 블록도이다.
도 5는 본 발명의 예시적인 실시예에 따른, 도 4에 도시된 메모리 제어기의 시간 마크 테이블을 개략적으로 보여주는 도면이다.
도 6은 본 발명의 예시적인 실시예에 따른, 도 4에 도시된 메모리 제어기를 개략적으로 보여주는 블록도이다.
도 7은 본 발명의 예시적인 실시예에 따른, 도 4에 도시된 저장 매체를 개략적으로 보여주는 블록도이다.
도 8은 본 발명의 일 실시예에 따른 메모리 시스템의 쓰기 흐름을 개략적으로 보여주는 도면이다.
도 9는 본 발명의 일 실시예에 따른 메모리 제어기의 프로그램 제어 방법을 개략적으로 보여주는 흐름도이다.
도 10은 본 발명의 일 실시예에 따른 메모리 시스템의 읽기 흐름을 개략적으로 보여주는 도면이다.
도 11은 본 발명의 일 실시예에 따른 메모리 제어기의 읽기 제어 방법을 개략적으로 보여주는 흐름도이다.
도 12는 패스트 전하 손실 현상으로 인한 CTF 셀들의 문턱 전압들의 변화를 보여주는 도면이다.
도 13은 본 발명의 예시적인 실시예에 따른 메모리 블록의 3차원 구조를 보여주는 사시도이다.
도 14는 도 13에 도시된 메모리 블록(BLK1)의 등가 회로도이다.
도 15는 본 발명의 실시예에 따른 컴퓨팅 시스템을 개략적으로 보여주는 블록도이다.
도 16은 본 발명의 실시예에 따른 반도체 드라이브를 개략적으로 보여주는 블록도이다.
도 17은 도 16에 도시된 반도체 드라이브를 이용한 스토리지를 개략적으로 보여주는 블록도이다.
도 18은 도 16에 도시된 반도체 드라이브를 이용한 스트리지 서버를 개략적으로 보여주는 블록도이다.
도 19는 본 발명에 따른 임베디드 스토리지를 개략적으로 보여주는 블록도이다.
도 20은 본 발명에 따른 통신장치를 개략적으로 보여주는 블록도이다.
도 21은 본 발명의 실시예에 따른 반도체 드라이브가 적용되는 시스템을 개략적으로 보여주는 도면이다.
도 22는 본 발명의 실시예에 따른 메모리 카드(memory card)를 개략적으로 보여주는 블록도이다.
도 23은 본 발명의 실시예에 따른 디지털 스틸 카메라(digital still camera)를 개략적으로 보여주는 블록도이다.
도 24는 도 23의 메모리 카드가 사용되는 다양한 응용 분야들을 보여주는 도면이다.
본 발명의 이점 및 특징, 그리고 그것을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 통해 설명될 것이다. 그러나 본 발명은 여기에서 설명되는 실시 예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 단지, 본 실시 예들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여 제공되는 것이다.
도면들에 있어서, 본 발명의 실시 예들은 도시된 특정 형태로 제한되는 것이 아니며 명확성을 기하기 위하여 과장된 것이다. 또한 명세서 전체에 걸쳐서 동일한 참조번호로 표시된 부분들은 동일한 구성요소를 나타낸다.
본 명세서에서 ‘및/또는’이란 표현은 전후에 나열된 구성요소들 중 적어도 하나를 포함하는 의미로 사용된다. 또한, ‘연결되는/결합되는’이란 표현은 다른 구성요소와 직접적으로 연결되거나 다른 구성요소를 통해 간접적으로 연결되는 것을 포함하는 의미로 사용된다. 본 명세서에서 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 또한, 명세서에서 사용되는 ‘포함한다’ 또는 ‘포함하는’으로 언급된 구성요소, 단계, 동작 및 소자는 하나 이상의 다른 구성요소, 단계, 동작, 소자 및 장치의 존재 또는 추가를 의미한다.
도 1은 전하 트랩 플래시 셀의 수직 구조를 개략적으로 보여주는 도면이다.
도 1를 참조하면, 전하 트랩 플래시 셀(이하, CTF 셀이라 칭함)은 정보를 저장하기 위한 정보 저장층(1)을 포함한다. 정보 저장층(1)은 채널(2) 상에 순차적으로 적층된 제 1 산화막(11), 전하 트랩층(charge trap layer)으로서 질화막(12), 그리고 제 2 산화막(13)을 포함한다. CTF 셀의 프로그래밍을 위해서, 프로그램 전압이 제어 게이트(3)에 인가되고 CTF 셀의 채널에 소정 전압(예를 들면, 0V)이 인가될 것이다. 이러한 바이어스 조건에 따르면, 전계가 제어 게이트(3)에서 채널(2) 방향으로 형성되고, 그러한 전계에 의해서 전하들이 채널(2)에서 전하 트랩층(12)으로 이동될 것이다. 따라서, 이러한 바이어스 조건하에서 CTF 셀이 프로그램될 것이다. CTF 셀의 소거를 위해서, 소정 전압(예를 들면, 0V 또는 그 보다 높은 전압)이 제어 게이트(3)에 인가되고 CTF 셀의 채널(2)에 소거 전압(예를 들면, 20V)이 인가될 것이다. 이러한 바이어스 조건에 따르면, 전계가 벌크에서 제어 게이트 방향으로 형성되며, CTF 셀은 소거될 것이다.
도 1에 있어서, 프로그래밍을 통해 전하 트랩층(12)에 트랩된 전하들의 위치는 예시적이며, 트랩된 전하들의 위치가 CTF 셀의 특성에 따라 변화됨은 잘 이해될 것이다. 프로그래밍을 통해 전하 트랩층(12)에 트랩된 전하들은 시간의 경과에 따라 재배열 현상, 채널(2)로의 유실 (도 1에서 수직 방향으로 표시된 화살표 참조), 질화막(12)을 통한 이동 (도 1에서 수평 방향으로 표시된 화살표 참조), 등과 같은 다양한 현상들로 인해 감소될 것이다. 이러한 현상은 패스트 전하 손실 현상(fast charge loss phenomenon)이라 불린다. 패스트 전하 손실 현상이 발생하면, CTF 셀의 문턱 전압은 낮아질 것이다. 나아가, 프로그램된 CTF 셀들의 문턱 전압들의 산포에 대한 처짐(drooping)과 퍼짐(spreading)이 발생할 것이다.
도 2는 패스트 전하 손실 현상에 따라 변화되는 CTF 셀의 문턱 전압의 변화를 보여주는 도면이다. 도 3은 패스트 전하 손실 현상에 따라 변화되는 문턱 전압 산포들을 보여주는 도면이다.
도 2에서, 가로축은 프로그램 동작이 수행된 후 경과하는 시간을 나타내고, 세로축은 프로그램된 CTF 셀의 문턱 전압을 나타낼 것이다. 프로그램 동작이 완료된 직후 CTF 셀은 목표 문턱 전압(예를 들면, 검증 전압과 같거나 그 보다 높은 전압)을 가질 것이다. 프로그램 동작이 완료되고 시간이 경과함에 따라, 도 2에서 알 수 있듯이, CTF 셀의 문턱 전압은 점차적으로 감소한다. 이는 앞서 설명된 패스트 전하 손실 현상으로 인해 전하 트랩층에 트랩된 전하들이 유실되기 때문이다. 그렇게 유실된 전하들은 CTF 셀의 문턱 전압에 영향을 미칠 것이다. 예를 들면, CTF 셀의 문턱 전압이 낮아질 것이다. CTF 셀의 문턱 전압의 변화는 읽기 실패(read fail)가 발생함을 의미한다. 도 2에 도시된 바와 같이, 프로그램된 CTF 셀의 문턱 전압은 특정 시간(t1)이 경과할 때까지 계속해서 변화되고, 특정 시간(t1)이 경과한 후 변화되지 않을 것이다. 문턱 전압의 변화를 나타내는 그래프의 형상은 예시적이며, 본 발명은 그것에 국한되지 않을 것이다.
도 3을 참조하면, 프로그램된 CTF 셀들의 문턱 전압들은 프로그램 동작이 수행된 직후에 "21"에 대응하는 문턱 전압 산포(또는, 목표 문턱 전압 산포)를 형성할 것이다. 문턱 전압 산포(21)에 속한 CTF 셀들에 저장된 데이터는 읽기 전압(VR1)을 이용하여 읽혀질 것이다. 이러한 경우, CTF 셀들에 저장된 데이터는 정상적으로 읽혀질 것이다. 프로그램된 CTF 셀들의 문턱 전압들은 프로그램 동작이 수행되고 특정 시간(t1)이 경과한 후에 "22"에 대응하는 문턱 전압 산포를 형성할 것이다. 문턱 전압 산포(22)에 속한 CTF 셀들에 저장된 데이터가 읽기 전압(VR1)을 이용하여 읽혀지는 경우, CTF 셀들에 저장된 데이터는 정상적으로 읽혀지지 않을 것이다. 즉, 읽기 실패가 발생할 것이다.
만약 프로그램 동작이 수행되고 특정 시간(t1)이 경과한 후에 형성되는 문턱 전압 산포(22)를 기준으로 결정된 읽기 전압(VR2)을 이용하여 읽기 동작이 수행되면, 프로그램 동작이 수행되고 특정 시간(t1)이 경과한 후에 행해지는 읽기 동작은 정상적으로 수행될 것이다. 하지만, 특정 시간(t1)이 경과하기 이전에 읽기 동작이 수행되는 경우, 읽기 실패가 발생할 것이다. 이는 프로그램 완료 시간과 특정 시간(t1) 사이에 행해지는 읽기 동작의 읽기 조건(예를 들면, 읽기 전압)이 변경되어야 함을 의미한다. 여기서, 읽기 조건이 읽기 전압에 국한되지 않음은 잘 이해될 것이다. 이는 이후 상세히 설명될 것이다. 본 발명은 프로그램 완료 시간과 특정 시간(t1) 사이에 행해지는 읽기 동작의 읽기 조건(또는, 센싱 조건)을 제어하는 데 그 특징이 있다. 읽기 동작의 읽기 조건은, 예를 들면, CTF 셀의 프로그램 동작이 완료된 후 경과한 시간(이하, 프로그램 경과 시간이라 칭함)에 의거하여 변경될 것이다. CTF 셀의 프로그램 경과 시간에 따라 읽기 조건을 변경함으로써 패스트 전하 손실 현상으로 인한 읽기 실패를 방지하는 것이 가능하다. 다시 말해서, CTF 셀의 프로그램 경과 시간에 따라 읽기 조건을 변경함으로써 패스트 전하 손실 현상으로 인해 변화되는 CTF 셀의 문턱 전압을 판별하기 위한 읽기 조건을 실시간으로 최적화하는 것이 가능하다.
도 2에 도시된 문턱 전압의 변화는 예시적이다. 문턱 전압의 변화 속도 그리고 특정 시간(t1)은 고정된 것이 아니라 다양한 조건들(예를 들면, 페이지, 워드 라인, 내구성(endurance), 프로그램 모드, 소거 모드, 읽기 모드, 등)에 따라 가변적이다. 따라서, 본 발명의 경우, 문턱 전압의 변화 속도 및 특정 시간(t1)은 특정 속도 및 시간에 제한되지 않는다. 본 발명에 있어서, 문턱 전압의 변화 속도를 고려하여 프로그램 완료 시간과 특정 시간(t1) 사이의 시구간은 복수의 시간 존들(time zones)으로 구분될 것이다. 시간 존들에는 서로 다른 읽기 조건들이 할당된다. 프로그램 완료된 CTF 셀(또는, 그것을 포함한 페이지, 그것을 포함한 워드 라인, 그것을 포함한 메모리 블록, 그것을 포함한 매트, 또는 그것을 포함한 칩)에 대한 정보는 시간 마크 테이블(time mark table)을 이용하여 실시간으로 관리될 것이다. 즉, 프로그램된 CTF 셀을 포함한 페이지(또는, 그것을 포함한 워드 라인, 그것을 포함한 메모리 블록, 그것을 포함한 매트, 또는 그것을 포함한 칩)를 나타내는 정보가 프로그램 동작이 완료된 후 시간 마크 테이블에 저장될 것이다. 이후, 프로그램된 CTF 셀을 포함한 페이지(또는, 그것을 포함한 워드 라인, 그것을 포함한 메모리 블록, 그것을 포함한 매트, 또는 그것을 포함한 칩)은 메모리 영역이라 칭할 것이다. 시간 마크 테이블은 읽기 요청된 메모리 영역을 나타내는 정보를 포함하는 지의 여부를 판별하는 데 사용될 것이다. 본 발명의 경우, 시간 마크 테이블에 읽기 요청된 메모리 영역을 나타내는 정보가 저장되어 있는 경우, 시간 마크 테이블에 저장된 읽기 요청된 메모리 영역의 시간 존(TZ)에 의거하여 읽기 요청된 메모리 영역의 읽기 조건이 실시간으로 결정될 것이다. 그렇게 결정된 읽기 조건에 따라 읽기 동작이 행해질 것이다. 따라서, 패스트 전하 손실 현상으로 인한 읽기 실패를 방지하는 것이 가능하다.
도 4는 본 발명의 예시적인 실시예에 따른 메모리 시스템을 개략적으로 보여주는 블록도이다. 도 5는 본 발명의 예시적인 실시예에 따른, 도 4에 도시된 메모리 제어기의 시간 마크 테이블을 개략적으로 보여주는 도면이다.
도 4를 참조하면, 본 발명의 실시예에 따른 메모리 시스템(1000)은 메모리 제어기(1200)와 멀티-비트/멀티-레벨 메모리 장치로 구현되는 저장 매체(1400)를 포함한다. 메모리 제어기(1200)는 외부(예를 들면, 호스트)로부터의 요청(예를 들면, 쓰기 요청, 읽기 요청, 등)에 응답하여 저장 매체(1400)를 제어한다. 메모리 제어기(1200)는 외부 요청없이 내부적인 요청(예를 들면, 서든 파워-오프와 관련된 동작, 웨어-레벨링 동작, 읽기 교정 (read reclaim) 동작, 프로그램 경과 시간 관리 동작, 등)에 따라 저장 매체(1400)를 제어한다. 저장 매체(1400)는 메모리 제어기(1200)의 제어에 응답하여 동작하며, 데이터 정보를 저장하는 데 사용된다. 저장 매체(1400)는 하나 또는 그 보다 많은 메모리 칩들로 구성될 수 있다. 저장 매체(1400)와 메모리 제어기(1200)는 하나 또는 그 보다 많은 채널들을 통해 통신한다. 저장 매체(1400)는, 예를 들면, 낸드 플래시 메모리 장치를 포함한다. 저장 매체(1400)를 구현하는 데 사용되는 메모리 장치가 낸드 플래시 메모리 장치에 국한되지 않음은 잘 이해될 것이다. 특히, 저장 매체(1400)를 구현하는 데 사용되는 메모리 장치는 전하 트랩 플래시(CTF) 셀들로 구성될 것이다.
메모리 제어기(1200)는 프로그램된 CTF 셀을 포함하는 메모리 영역의 프로그램 경과 시간을 관리하기 위한 시간 마크 테이블(1242)을 포함할 것이다. 여기서, "메모리 영역"이라는 용어는 페이지, 워드 라인, 메모리 블록, 매트, 칩, 또는 그와 같은 것을 나타내는 데 사용될 것이다. 시간 마크 테이블(1242)은, 도 5에 도시된 바와 같이, 복수의 시간 존 엔트리들(TZEi)을 포함하며, 각 시간 존 엔트리(TZEi)는 메모리 영역들을 각각 나타내는 정보(예를 들면, 물리 어드레스)를 포함할 것이다. 각 시간 존 엔트리에 포함되는 메모리 영역이 시간 마크 테이블의 크기를 최소화하기에 적합한 정보로 관리되는 것이 바람직하다. 도 5에는 3개의 시간 존들이 존재하는 시간 마크 테이블(1242)이 도시되어 있다. 시간 마크 테이블(1242)에 포함되는 시간 존들의 수가 여기에 개시된 것에 국한되지 않음은 잘 이해될 것이다. 시간 존들에 각각 대응하는 시간들의 합은 도 2에서 설명된 특정 시간(t1)에 대응할 것이다. 시간 존들에 각각 대응하는 시간들은 동일하거나 서로 다를 것이다. 또는, 시간 존들에 각각 대응하는 시간들은 제 1 그룹과 제 2 그룹으로 구분되고, 제 1 그룹에 속한 시간들은 동일하거나 다를 것이다. 제 2 그룹에 속한 시간들은 동일하거나 다를 것이다. 또한, 제 1 그룹에 속한 시간들은 제 2 그룹에 속한 시간들과 다를 것이다. 하지만, 시간 존들에 각각 대응하는 시간들이 여기에 개시된 것에 국한되지 않음은 잘 이해될 것이다.
예시적인 실시예에 있어서, 프로그램 경과 시간에 따라 프로그램된 메모리 영역의 정보는 시간 마크 테이블(1242) 내에서 이동될 것이다. 예를 들면, 특정 메모리 영역이 프로그램된 직후 특정 메모리 영역의 정보는 시간 존 엔트리(TZE1)에 마크될 것이다. 시간 존(TZ1)에 대응하는 시간이 경과한 후 특정 메모리 영역의 정보는 시간 존 엔트리(TZE2)에 이동될 것이다. 이때, 시간 존 엔트리(TZE2)으로 이동된 시간 존 엔트리(TZE1)의 특정 메모리 영역의 정보는 무효화/제거/제외될 것이다. 시간 존(TZ2)에 대응하는 시간이 경과한 후 특정 메모리 영역의 정보는 시간 존 엔트리(TZE3)에 이동될 것이다. 이때, 시간 존 엔트리(TZE3)으로 이동된 시간 존 엔트리(TZE2)의 특정 메모리 영역의 정보는 무효화/제거/제외될 것이다. 시간 존(TZ3)에 대응하는 시간이 경과한 후 특정 메모리 영역의 정보는 시간 마크 테이블(1242)로부터 제외될 것이다. 이러한 방식에 따라 프로그램된 메모리 영역들에 대한 프로그램 경과 시간들이 관리될 것이다.
예시적인 실시예에 있어서, 시간 존들(TZi) (i는 2 또는 그 보다 큰 정수)은 서로 다른 읽기 조건들을 갖는다.
다시 도 4를 참조하면, 메모리 제어기(1200)는 읽기 요청이 입력될 때 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(1242)에 포함되어 있는 지의 여부를 판별할 것이다. 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(1242)에 포함된 경우, 메모리 제어기(1200)는 읽기 요청된 메모리 영역의 정보가 마크되어 있는 시간 존에 대응하는 읽기 조건에 따라 읽기 동작이 수행되도록 저장 매체(1400)를 제어할 것이다. 읽기 요청된 메모리 영역의 정보가 마크되어 있는 시간 존에 대응하는 읽기 조건은 다양한 방식들을 통해 저장 매체(1400)에 통보될 것이다. 예를 들면, 명령, 어드레스, 데이터, 특정 핀, 등을 이용하여 읽기 조건이 저장 매체(1400)에 통보될 것이다. 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(1242)에 포함되어 있지 않은 경우, 메모리 제어기(1200)는 디폴트 읽기 조건(예를 들면, 도 2의 문턱 전압 산포(22)에 대응하는 읽기 조건)에 따라 읽기 동작이 수행되도록 저장 매체(1400)를 제어할 것이다.
예시적인 실시예에 있어서, 메모리 제어기(1200)와 저장 매체(1400)는 멀티-미디어 카드(multi-media card: MMC)를 구성하거나, 스마트 폰과 같은 휴대용 전자 장치의 보드에 직접 실장되는 내장형 멀티-미디어 카드(embedded MMC: eMMC)를 구성할 것이다.
도 6은 본 발명의 예시적인 실시예에 따른, 도 4에 도시된 메모리 제어기를 개략적으로 보여주는 블록도이다. 도 6을 참조하면, 메모리 제어기(1200)는 제 1 인터페이스로서 호스트 인터페이스(1210), 제 2 인터페이스로서 메모리 인터페이스(1220), 중앙 처리 장치(CPU) (1230), 버퍼 메모리(1240), 그리고 ECC 회로(1250)를 포함한다.
호스트 인터페이스(1210)는 외부(또는, 호스트)와 인터페이스하도록 구성된다. 메모리 인터페이스(1220)는 도 4에 도시된 저장 매체(1400)와 인터페이스하도록 구성된다. CPU(1230)는 메모리 제어기(1200)의 전반적인 동작을 제어하도록 구성된다. 예를 들면, CPU(1230)는 플래시 변환 계층(Flash Translation Layer: FTL)과 같은 펌웨어를 운용하도록 구성된다. 플래시 변환 계층(FTL)은 다양한 기능들을 수행한다. 예를 들면, 플래시 변환 계층(FTL)은 시간 마크 테이블(TMT) 관리 동작, 어드레스 맵핑 동작, 읽기 교정 동작, 에러 정정 동작, 등을 수행하는 다양한 계층들을 포함할 것이다. 예를 들면, 플래시 변환 계층(FTL)은 쓰기 요청된 메모리 영역에 대한 프로그램 동작이 완료된 직후 프로그램 완료된 메모리 영역의 정보를 시간 마크 테이블(1242)에 마크할 것이다. 플래시 변환 계층(FTL)은 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(1242)에 있는 지의 여부를 판별하고, 판별 결과에 따라 읽기 조건을 결정할 것이다. 그렇게 결정된 읽기 조건은 메모리 인터페이스(1220)를 통해 저장 매체(1400)로 전송될 것이다.
버퍼 메모리(1240)는 호스트 인터페이스(1210)를 통해 외부로 전달되는 데이터를 임시 저장하는 데 사용된다. 버퍼 메모리(1240)는 메모리 인터페이스(1220)를 통해 저장 매체(1400)로부터 전달되는 데이터를 임시 저장하는 데 사용된다. 버퍼 메모리(1240)는 저장 매체(1400)를 제어하는 데 필요한 정보(예를 들면, 어드레스 맵핑 정보, 등)를 저장하는 데 사용된다. 예를 들면, 버퍼 메모리(1240)는 DRAM, SRAM, 또는 DRAM과 SRAM의 조합으로 구성될 수 있다. 하지만, 버퍼 메모리(1240)로서 사용되는 메모리 장치가 여기에 개시된 것에 국한되지 않음은 잘 이해될 것이다. 버퍼 메모리(1240)는 시간 마크 테이블(1242)을 포함할 것이다. 하지만, 시간 마크 테이블(1242)이 버퍼 메모리(1240)에 저장되는 것에 본 발명이 국한되지 않음은 잘 이해될 것이다. 예를 들면, 시간 마크 테이블(1242)은 별도의 메모리를 이용하여 관리될 것이다. 시간 마크 테이블(1242)은 저장 매체(1400)에 백업될 수 있다. ECC 회로(1250)는 저장 매체(1400)에 저장될 데이터를 부호화하도록 그리고 저장 매체(1400)로부터 읽혀진 데이터를 복호화하도록 구성될 것이다.
예시적인 실시예에 있어서, 메모리 제어기(1200)는, 비록 도면에는 도시되지 않았지만, 저장 매체(1400)에 저장될 데이터를 랜덤화하도록 그리고 저장 매체(1400)로부터 읽혀진 데이터를 디-랜덤화하도록 구성된 랜덤화기를 더 포함할 것이다. 랜덤화기의 일예가 미국특허공개번호 제2010/0088574호에 "DATA STORAGE SYSTEM AND DEVICE WITH RANDOMIZER / DE - RANDOMIZER"라는 제목으로 게재되어 있으며, 이 출원의 레퍼런스로 포함된다.
예시적인 실시예에 있어서, 호스트 인터페이스(1210)는 컴퓨터 버스 표준들, 스토리지 버스 표준들, iFCPPeripheral 버스 표준들, 등 중 하나 또는 그 보다 많은 것들의 조합으로 구성될 수 있다. 컴퓨터 버스 표준들(computer bus standards)은 S-100 bus, Mbus, Smbus, Q-Bus, ISA, Zorro II, Zorro III, CAMAC, FASTBUS, LPC, EISA, VME, VXI, NuBus, TURBOchannel, MCA, Sbus, VLB, PCI, PXI, HP GSC bus, CoreConnect, InfiniBand, UPA, PCI-X, AGP, PCIe, Intel QuickPath Interconnect, Hyper Transport, 등을 포함한다. 스토리지 버스 표준들(Storage bus standards)은 ST-506, ESDI, SMD, Parallel ATA, DMA, SSA, HIPPI, USB MSC, FireWire(1394), Serial ATA, eSATA, SCSI, Parallel SCSI, Serial Attached SCSI, Fibre Channel, iSCSI, SAS, RapidIO, FCIP, 등을 포함한다. iFCPPeripheral 버스 표준들(iFCPPeripheral bus standards)은 Apple Desktop Bus, HIL, MIDI, Multibus, RS-232, DMX512-A, EIA/RS-422, IEEE-1284, UNI/O, 1-Wire, I2C, SPI, EIA/RS-485, USB, Camera Link, External PCIe, Light Peak, Multidrop Bus, 등을 포함한다.
도 7은 본 발명의 예시적인 실시예에 따른, 도 4에 도시된 저장 매체를 개략적으로 보여주는 블록도이다.
저장 매체(1400)는 낸드 플래시 메모리 장치와 같은 불 휘발성 메모리 장치일 것이다. 하지만, 본 발명의 저장 매체(1400)가 낸드 플래시 메모리 장치에 국한되지 않음은 잘 이해될 것이다. 특히, 저장 매체(1400)에 포함되는 메모리 셀들은 CTF 셀들일 것이다. 또한, 본 발명의 저장 매체(1400)는 3차원 어레이 구조를 갖도록 구현될 수 있다. 3차원 어레이 구조를 갖는 불 휘발성 메모리 장치는 수직 낸드 플래시 메모리 장치라 불린다. 수직 낸드 플래시 메모리 장치는 미국특허 공개번호들 2013/0017629 및 2013/0051146에 개시되어 있으며, 이 출원의 레퍼런스로 포함될 것이다.
도 7을 참조하면, 저장 매체(1400)는 메모리 셀 어레이(1410), 어드레스 디코더(1420), 전압 발생기(1430), 제어 로직(1440), 페이지 버퍼 회로(1450), 그리고 입출력 인터페이스(1460)를 포함한다.
메모리 셀 어레이(1410)는 행들(예를 들면, 워드 라인들)과 열들(예를 들면, 비트 라인들)의 교차 영역들에 배열된 메모리 셀들을 포함할 것이다. 메모리 셀들 각각은 1-비트 데이터 또는 멀티-비트 데이터를 저장할 것이다. 어드레스 디코더(1420)는 제어 로직(1440)에 의해서 제어되며, 메모리 셀 어레이(1410)의 행들(예를 들면, 워드 라인들, 스트링 선택 라인(들), 접지 선택 라인(들), 공통 소오스 라인, 등)의 선택 및 구동을 행한다. 전압 발생기(1430)는 제어 로직(1440)에 의해서 제어되며, 각 동작에 필요한 전압들(예를 들면, 고전압, 프로그램 전압, 읽기 전압, 검증 전압, 소거 전압, 패스 전압, 벌크 전압, 등)을 발생한다. 전압 발생기(1430)에 의해서 생성된 전압들은 어드레스 디코더(1420)를 통해 메모리 셀 어레이(1410)에 제공된다. 제어 로직(1440)은 저장 매체(1400)의 전반적인 동작을 제어하도록 구성된다.
페이지 버퍼 회로(1450)는 제어 로직(1440)에 의해서 제어되며, 메모리 셀 어레이(1410)로부터 데이터를 읽도록 또는 프로그램 데이터에 따라 메모리 셀 어레이(1410)의 열들(예를 들면, 비트 라인들)을 구동하도록 구성된다. 페이지 버퍼 회로(1450)는 비트 라인들 또는 비트 라인 쌍들에 각각 대응하는 복수의 페이지 버퍼들로 구성될 것이다. 페이지 버퍼들 각각은 복수의 래치들을 포함한다. 입출력 인터페이스(1460)는 제어 로직(1440)에 의해서 제어되며, 외부(예를 들면, 도 6의 메모리 제어기(1200))와 인터페이스하도록 구성된다. 비록 도면에는 도시되지 않았지만, 입출력 인터페이스(1460)는 페이지 버퍼들을 선택하기 위한 열 선택기, 데이터를 입력받는 입력 버퍼, 데이터를 출력하는 출력 버퍼, 그리고 그와 같은 것을 포함할 것이다.
본 발명에 따른 제어 로직(1440)은 메모리 제어기(1200)로부터 제공되는 읽기 조건에 따라 읽기 동작을 수행할 것이다. 읽기 조건은 명령, 어드레스, 데이터, 특정 입출력 핀(들), 등을 이용하여 메모리 제어기(1200)로부터 제공될 것이다. 제어 로직(1440)은, 예를 들면, 읽기 요청된 메모리 영역에 제공될 읽기 전압이 변경되도록 전압 발생기(1430)를 제어할 것이다. 예를 들면, 읽기 전압은, 도 3에 도시된 바와 같이, 프로그램 동작이 완료된 직후에 형성된 문턱 전압 산포(21)에 대응하는 읽기 전압(VR1)과 특정 시간(t1)이 경과한 후 형성된 문턱 전압 산포(22)에 대응하는 읽기 전압(VR2) 사이에서 변화될 것이다. 또는, 제어 로직(1440)은 비트 라인 디벨러프 시간, 비트 라인 프리챠지 전압, 센싱 마진 (예를 들면, 비트 라인 프리챠지 전압과 비트 라인 셧오프 전압 사이의 관계), 등과 같은 센싱 조건이 변경되도록 페이지 버퍼 회로(1450)를 제어할 것이다. 센싱 조건의 변경은 읽기 전압의 변경으로서 여겨질 수 있다. 하지만, 읽기 조건이 여기에 개시된 것에 국한되지 않음은 잘 이해될 것이다.
도 8은 본 발명의 일 실시예에 따른 메모리 시스템의 쓰기 흐름을 개략적으로 보여주는 도면이다.
도 8을 참조하면, S100 단계에서, 메모리 제어기(1200)는 외부 장치(예를 들면, 메모리 시스템(1000)이 연결되는 호스트)로부터 쓰기 요청을 입력받는다. 메모리 제어기(1200)는, S110 단계에서, 저장 매체(1400)로 프로그램 명령을 제공할 것이다. 여기서, 프로그램 명령은 쓰기 요청된 메모리 영역을 지정하기 위한 어드레스 및 쓰기 요청된 데이터와 함께 저장 매체(1400)로 전송될 것이다. S120 단계에서, 저장 매체(1400)는 쓰기 요청된 데이터를 쓰기 요청된 메모리 영역에 저장할 것이다. 프로그램 동작이 개시된 후, 메모리 제어기(1200)는 저장 매체(1400)의 프로그램 동작이 종료되었는 지의 여부를 모니터할 것이다 (S130). 여기서, 프로그램 동작이 종료되었는 지의 여부는 저장 매체(1400)로부터 출력되는 신호 라인(예를 들면, RnB 라인)의 천이 (예를 들면, 로우-하이 천이)를 검출함으로써 결정될 것이다. 저장 매체(1400)로부터 출력되는 신호 라인(예를 들면, RnB 라인)의 로우-하이 천이가 검출되면, S140 단계에서, 메모리 제어기(1200)는 쓰기 요청된 메모리 영역의 정보를 시간 마크 테이블(1242)에 마크할 것이다. 이후, 쓰기 흐름은 종료될 것이다.
예시적인 실시예에 있어서, 메모리 제어기(1200)는 쓰기 흐름 동안 특정 시간(t1) (도 2 참조)을 기준으로 시간 마크 테이블(1242)을 관리할 것이다. 시간 마크 테이블(1242)의 관리는 배경 동작을 통해 행해질 것이다. 예를 들면, 도 4를 참조하여 설명된 바와 같이, 프로그램 경과 시간에 따라 프로그램된 메모리 영역의 정보는 시간 마크 테이블(1242) 내에서 이동될 것이다. 예를 들면, 메모리 영역(MA1)이 프로그램된 직후 특정 메모리 영역의 정보는 시간 존 엔트리(TZE1)에 마크될 것이다. 시간 존(TZ1)에 대응하는 시간이 경과한 후 특정 메모리 영역의 정보는 시간 존 엔트리(TZE2)에 이동될 것이다. 이때, 시간 존 엔트리(TZE2)으로 이동된 시간 존 엔트리(TZE1)의 특정 메모리 영역의 정보는 무효화/제거/제외될 것이다. 시간 존(TZ2)에 대응하는 시간이 경과한 후 특정 메모리 영역의 정보는 시간 존 엔트리(TZE3)에 이동될 것이다. 이때, 시간 존 엔트리(TZE3)으로 이동된 시간 존 엔트리(TZE2)의 특정 메모리 영역의 정보는 무효화/제거/제외될 것이다. 시간 존(TZ3)에 대응하는 시간이 경과한 후 특정 메모리 영역의 정보는 시간 마크 테이블(1242)로부터 제외될 것이다. 이러한 방식에 따라 프로그램된 메모리 영역들에 대한 프로그램 경과 시간들이 관리될 것이다.
도 9는 본 발명의 일 실시예에 따른 메모리 제어기의 프로그램 제어 방법을 개략적으로 보여주는 흐름도이다.
도 9를 참조하면, 발명의 일 실시예에 따른 메모리 제어기(1200)의 프로그램 제어 방법은 쓰기 요청을 입력받는 단계(S200); 프로그램 명령을 이슈하는 단계(S210); 저장 매체(1400)의 신호 라인(예를 들면, RnB)이 로우 레벨에서 하이 레벨로 천이하였는 지의 여부를 검출하는 단계(S220); 그리고 저장 매체(1400)의 신호 라인(예를 들면, RnB)이 로우 레벨에서 하이 레벨로 천이한 경우, 쓰기 요청된 메모리 영역의 정보를 시간 마크 테이블(1242)에 마크하는 단계(S230)를 포함할 것이다. 여기서, 저장 매체(1400)의 신호 라인(예를 들면, RnB)이 로우 레벨에서 하이 레벨로 천이하지 않은 경우, 메모리 제어기(1200)는 계속해서 단계(S220)를 수행할 것이다. 프로그램 명령은 어드레스 및 쓰기 요청된 데이터와 함께 전송될 것이다.
예시적인 실시예에 있어서, 비록 도 9에는 도시되지 않았지만, 메모리 제어기(1200)는 배경 동작을 통해 특정 시간(t1) (도 2 참조)을 기준으로 시간 마크 테이블(1242)을 관리할 것이다. 예를 들면, 도 4를 참조하여 설명된 바와 같이, 프로그램 경과 시간에 따라 프로그램된 메모리 영역의 정보는 시간 마크 테이블(1242) 내에서 이동될 것이다.
도 10은 본 발명의 일 실시예에 따른 메모리 시스템의 읽기 흐름을 개략적으로 보여주는 도면이다.
도 10을 참조하면, S300 단계에서, 메모리 제어기(1200)는 외부 장치(예를 들면, 메모리 시스템(1000)이 연결된 호스트)로부터 읽기 요청을 입력받는다. S310 단계에서, 메모리 제어기(1200)는 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(1242)에 포함되어 있는 지의 여부를 판별할 것이다. 메모리 제어기(1200)는, S320 단계에서, 판별 결과에 따라 읽기 조건을 결정한다. 즉, 읽기 요청된 메모리 영역의 정보가 속하는 시간 존 엔트리(TZEi)에 대응하는 읽기 조건이 선택될 것이다. S330 단계에서, 메모리 제어기(1200)는 그렇게 결정된 읽기 조건을 저장 매체(1400)로 전송한다. 읽기 조건은 명령, 어드레스, 데이터, 또는 특정 입출력 핀(들)을 이용하여 저장 매체(1400)로 전송할 것이다. S340 단계에서, 저장 매체(1400)는 메모리 제어기(1200)로부터 제공되는 읽기 조건에 따라 읽기 요청된 메모리 영역에 대한 읽기 동작을 수행한다. 그렇게 읽혀진 데이터는, S350 단계에서, 메모리 제어기(1200)로 전송된다. 메모리 제어기(1200)는, S360 단계에서, 읽혀진 데이터를 외부 장치로 전송할 것이다.
예시적인 실시예에 있어서, 메모리 제어기(1200)는 읽기 흐름 동안 특정 시간(t1) (도 2 참조)을 기준으로 시간 마크 테이블(1242)을 관리할 것이다. 시간 마크 테이블(1242)의 관리는 배경 동작을 통해 행해질 것이다. 예를 들면, 도 4를 참조하여 설명된 바와 같이, 프로그램 경과 시간에 따라 프로그램된 메모리 영역의 정보는 시간 마크 테이블(1242) 내에서 이동될 것이다. 예를 들면, 메모리 영역(MA1)이 프로그램된 직후 특정 메모리 영역의 정보는 시간 존 엔트리(TZE1)에 마크될 것이다. 시간 존(TZ1)에 대응하는 시간이 경과한 후 특정 메모리 영역의 정보는 시간 존 엔트리(TZE2)에 이동될 것이다. 시간 존(TZ2)에 대응하는 시간이 경과한 후 특정 메모리 영역의 정보는 시간 존 엔트리(TZE3)에 이동될 것이다. 시간 존(TZ3)에 대응하는 시간이 경과한 후 특정 메모리 영역의 정보는 시간 마크 테이블(1242)로부터 제외될 것이다. 이러한 방식에 따라 프로그램된 메모리 영역들에 대한 프로그램 경과 시간들이 관리될 것이다.
도 11은 본 발명의 일 실시예에 따른 메모리 제어기의 읽기 제어 방법을 개략적으로 보여주는 흐름도이다.
도 11을 참조하면, 본 발명의 일 실시예에 따른 메모리 제어기(1200)의 읽기 제어 방법은 읽기 요청을 입력받는 단계(S400); 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(1242)에 포함되어 있는 지의 여부를 판별하는 단계(S410); 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(1242)에 포함되어 있는 경우, 읽기 요청된 메모리 영역의 정보가 속하는 시간 존 엔트리(TZEi)에 대응하는 읽기 조건을 포함하는 읽기 시퀀스를 이슈하는 단계(S420); 그리고 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(1242)에 포함되어 있지 않은 경우, 디폴트 읽기 조건을 포함하는 읽기 시퀀스를 이슈하는 단계(S430)를 포함할 것이다. 디폴트 읽기 조건은, 예를 들면, 도 2에 도시된 읽기 전압(VR2)이 생성되는 읽기 조건일 것이다. 또는, 읽기 전압(VR2)으로의 변경에 대응하도록 센싱 조건(예를 들면, 비트 라인 프리챠지 전압, 비트 라인 디벨러프 시간, 비트 라인 셧오프 전압, 그리고 그와 같은 것 중 하나 또는 그것들 중 적어도 2개의 조합)이 변경될 수 있음은 잘 이해될 것이다. 이러한 경우, 읽기 전압(VR1)이 사용될 수 있다. 또는, 읽기 전압 및 센싱 조건 모두 변경될 수 있음은 잘 이해될 것이다.
예시적인 실시예에 있어서, 비록 도 11에는 도시되지 않았지만, 메모리 제어기(1200)는 배경 동작을 통해 특정 시간(t1) (도 2 참조)을 기준으로 시간 마크 테이블(1242)을 관리할 것이다. 예를 들면, 도 4를 참조하여 설명된 바와 같이, 프로그램 경과 시간에 따라 프로그램된 메모리 영역의 정보는 시간 마크 테이블(1242) 내에서 이동될 것이다.
도 12는 패스트 전하 손실 현상으로 인한 CTF 셀들의 문턱 전압들의 변화를 보여주는 도면이다.
CTF 셀의 문턱 전압이 변화되는 시구간 즉, 프로그램 완료 시간과 특정 시간 사이의 시구간은 일정하지 않고 가변적이다. 예를 들면, CTF 셀에 1-비트 데이터가 저장될 때 생기는 문턱 전압의 변화는 CTF 셀에 M-비트 데이터(M은 2 또는 그 보다 큰 정수)가 저장될 때 생기는 문턱 전압의 변화와 다를 것이다. 다시 말해서, CTF 셀에 LSB 데이터가 저장될 때 생기는 문턱 전압의 변화는 CTF 셀에 MSB 데이터가 저장될 때 생기는 문턱 전압의 변화와 다를 것이다. 또는, CTF 셀에 LSB 데이터가 저장될 때 생기는 문턱 전압의 변화, CTF 셀에 중간 데이터가 저장될 때 생기는 문턱 전압의 변화, 그리고 CTF 셀에 MSB 데이터가 저장될 때 생기는 문턱 전압의 변화는 서로 다를 것이다. 그러한 까닭에, 도 12에 도시된 바와 같이, 특정 시간들(t10, t20)은 다르게 결정될 것이다. 이는 곡선(C10)에 대응하는 시간 존들(TZ1a, TZ2a, TZ3a)의 수가 곡선(C20)에 대응하는 시간 존들(TZ1b, TZ2b, TZ3b, TZ4b)의 수와 다름을 의미한다. 또는, 곡선(C10)에 대응하는 시간 존들의 수가 곡선(C20)에 대응하는 시간 존들의 수와 동일하고, 곡선(C10)에 대응하는 시간 존들의 시간들은 곡선(C20)에 대응하는 시간 존들의 시간들과 다를 것이다. CTF 셀에 N-비트 데이터(N은 1 또는 그 보다 큰 정수)가 저장될 때 생기는 문턱 전압의 변화는 CTF 셀에 저장되는 데이터 비트들의 수와 더불어 CTF 셀의 내구성에 따라 가변적이다. 따라서, 본 발명에 따른 특정 시간 및 시간 존들은 페이지, 워드 라인, 메모리 블록, 매트, 칩, 프로그램/소거/읽기 모드, 등에 따라 가변적으로 결정될 것이다. 이는 읽기 조건들 역시 페이지, 워드 라인, 메모리 블록, 매트, 칩, 프로그램/소거/읽기 모드, 등에 따라 가변적임을 의미한다.
예시적인 실시예에 있어서, 곡선(C10)에 대응하는 시간 존들(TZ1a, TZ2a, TZ3a)에 각각 대응하는 시간들의 합은 특정 시간(t10)에 대응할 것이다. 곡선(C20)에 대응하는 시간 존들(TZ1b, TZ2b, TZ3b, TZ4b)에 각각 대응하는 시간들의 합은 특정 시간(t20)에 대응할 것이다. 시간 존들에 각각 대응하는 시간들은 동일하거나 서로 다를 것이다. 또는, 시간 존들에 각각 대응하는 시간들은 제 1 그룹과 제 2 그룹으로 구분되고, 제 1 그룹에 속한 시간들은 동일하거나 다를 것이다. 제 2 그룹에 속한 시간들은 동일하거나 다를 것이다. 또한, 제 1 그룹에 속한 시간들은 제 2 그룹에 속한 시간들과 다를 것이다. 하지만, 시간 존들에 각각 대응하는 시간들이 여기에 개시된 것에 국한되지 않음은 잘 이해될 것이다.
예시적인 실시예에 있어서, 시간 존들에 각각 할당되는 읽기 조건들은 서로 다를 것이다. 특정 시간이 경과한 후에는 디폴트 읽기 조건이 사용될 것이다.
도 13은 본 발명의 예시적인 실시예에 따른 메모리 블록의 3차원 구조를 보여주는 사시도이다. 도 13을 참조하면, 메모리 블록(BLK1)은 기판(SUB)과 수직 방향으로 형성되어 있다. 기판(SUB)에는 n+ 도핑 영역이 형성된다. 기판(SUB) 위에는 게이트 전극막(gate electrode layer)과 절연막(insulation layer)이 교대로 증착된다. 그리고 게이트 전극막(gate electrode layer)과 절연막(insulation layer) 사이에는 전하 저장막(charge storage layer)이 형성될 수 있다.
게이트 전극막과 절연막을 수직 방향으로 패터닝(vertical patterning)하면, V자 모양의 필라(pillar)가 형성된다. 필라는 게이트 전극막과 절연막을 관통하여 기판(SUB)과 연결된다. 필라(Pillar)의 외곽 부분(O)은 채널 반도체로 구성될 수 있고, 내부(I)는 실리콘 산화물(Silicon Oxide)과 같은 절연 물질로 구성될 수 있다.
계속해서 도 13을 참조하면, 메모리 블록(BLK1)의 게이트 전극막(gate electrode layer)은 접지 선택 라인(GSL), 복수의 워드 라인(WL1~WL8), 그리고 스트링 선택 라인(SSL)에 연결될 수 있다. 그리고 메모리 블록(BLK1)의 필라(pillar)는 복수의 비트 라인(BL1~BL3)과 연결될 수 있다. 도 13에서는, 하나의 메모리 블록(BLK1)이 2개의 선택 라인(GSL, SSL), 8개의 워드 라인(WL1~WL8), 그리고 3개의 비트 라인(BL1~BL3)을 갖는 것으로 도시되어 있으나, 실제로는 이것들보다 더 많거나 적을 수 있다.
도 14는 도 13에 도시된 메모리 블록(BLK1)의 등가 회로도이다. 도 14를 참조하면, 비트 라인(BL1~BL3)과 공통 소스 라인(CSL) 사이에는 낸드 스트링(NS11~NS33)이 연결되어 있다. 각각의 낸드 스트링(예를 들면, NS11)은 스트링 선택 트랜지스터(SST), 복수의 메모리 셀(MC1~MC8), 그리고 접지 선택 트랜지스터(GST)를 포함한다.
스트링 선택 트랜지스터(SST)는 스트링 선택 라인(String Selection Line; SSL1~SSL3)에 연결되어 있다. 복수의 메모리 셀(MC1~MC8)은 각각 대응하는 워드 라인(WL1~WL8)에 연결되어 있다. 그리고 접지 선택 트랜지스터(GST)는 접지 선택 라인(Ground Selection Line; GSL)에 연결되어 있다. 스트링 선택 트랜지스터(SST)는 비트 라인(BL)에 연결되고, 접지 선택 트랜지스터(GST)는 공통 소스 라인(CSL; Common Source Line)에 연결되어 있다.
계속해서 도 14를 참조하면, 동일 높이의 워드 라인(예를 들면, WL1)은 공통으로 연결되어 있고, 스트링 선택 라인(SSL1~SSL3)은 분리되어 있다. 제 1 워드 라인(WL1)에 연결되어 있고 낸드 스트링(NS11, NS12, NS13)에 속해 있는 메모리 셀들을 프로그램하는 경우에는, 제 1 워드 라인(WL1)과 제 1 스트링 선택 라인(SSL1)이 선택된다.
도 15는 본 발명의 실시예에 따른 컴퓨팅 시스템을 개략적으로 보여주는 블록도이다. 컴퓨팅 시스템은 처리 유니트(2101), 사용자 인터페이스(2202), 베이스밴드 칩셋(baseband chipset)과 같은 모뎀(2303), 메모리 제어기(2404), 그리고 저장 매체(2505)를 포함한다.
메모리 제어기(2404)는 도 6에 도시된 것과 실질적으로 동일하게 구성되고, 저장 매체(2505)는 도 7에 도시된 불 휘발성 메모리 장치로 구성될 것이다. 예를 들면, 메모리 제어기(2404)는 프로그램 동작시 프로그램 요청된 메모리 영역의 프로그램 완료 시간을 시간 마크 테이블에 저장하고, 읽기 동작시 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(TMT)에 저장되어 있는 지의 여부를 판별한다. 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(TMT)에 저장되어 있는 것으로 판별될 때, 메모리 제어기(2404)는 읽기 요청된 메모리 영역이 속하는 시간 마크 테이블의 시간 존에 대응하는 읽기 조건 하에 읽기 동작을 수행하도록 저장 매체(2505)를 제어할 것이다. 따라서, 패스트 전하 손실 현상으로 인한 읽기 실패를 방지할 수 있다. 저장 매체(2505)에는 처리 유니트(2101)에 의해서 처리된/처리될 N-비트 데이터(N은 1 또는 그 보다 큰 정수)가 메모리 제어기(2404)를 통해 저장될 것이다. 컴퓨팅 시스템이 모바일 장치인 경우, 컴퓨팅 시스템의 동작 전압을 공급하기 위한 배터리(2606)가 추가적으로 제공될 것이다. 비록 도면에는 도시되지 않았지만, 본 발명에 따른 컴퓨팅 시스템에는 응용 칩셋(application chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모바일 디램, 등이 더 제공될 수 있음은 잘 이해될 것이다.
도 16은 본 발명의 실시예에 따른 반도체 드라이브를 개략적으로 보여주는 블록도이다.
도 16를 참조하면, 반도체 드라이브(4000)(SSD)는 저장 매체(4100)와 제어기(4200)를 포함할 것이다. 저장 매체(4100)는 복수의 채널들(CH0~CHn-1)을 통해 제어기(4200)와 연결될 것이다. 각 채널에는 복수의 불 휘발성 메모리들이 공통으로 연결될 것이다.
제어기(4200)는 도 6에 도시된 것과 실질적으로 동일하게 구성되고, 각 불 휘발성 메모리는 도 7에 도시된 불 휘발성 메모리 장치로 구성될 것이다. 예를 들면, 제어기(4200)는 프로그램 동작시 프로그램 요청된 메모리 영역의 프로그램 완료 시간을 시간 마크 테이블(TMT)에 저장하고, 읽기 동작시 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(TMT)에 저장되어 있는 지의 여부를 판별한다. 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(TMT)에 저장되어 있는 것으로 판별될 때, 제어기(4200)는 읽기 요청된 메모리 영역이 속하는 시간 마크 테이블의 시간 존에 대응하는 읽기 조건 하에 읽기 동작을 수행하도록 각 불 휘발성 메모리를 제어할 것이다. 따라서, 패스트 전하 손실 현상으로 인한 읽기 실패를 방지할 수 있다.
도 17은 도 16에 도시된 반도체 드라이브를 이용한 스토리지를 개략적으로 보여주는 블록도이고, 도 18은 도 16에 도시된 반도체 드라이브를 이용한 스트리지 서버를 개략적으로 보여주는 블록도이다.
본 발명의 실시예에 따른 반도체 드라이브(4000)는 스토리지를 구성하는 데 사용될 수 있다. 도 17에 도시된 바와 같이, 스토리지는 도 16에서 설명된 것과 실질적으로 동일하게 구성되는 복수의 반도체 드라이브들을 포함할 것이다. 본 발명의 실시예에 따른 반도체 드라이브(4000)는 스토리지 서버를 구성하는 데 사용될 수 있다. 도 18에 도시된 바와 같이, 스토리지 서버는 도 16에서 설명된 것과 실질적으로 동일하게 구성되는 복수의 반도체 드라이브들(4000), 그리고 서버(4000A)를 포함할 것이다. 또한, 이 분야에 잘 알려진 RAID 제어기(4000B)가 스토리지 서버에 제공될 수 있음은 잘 이해될 것이다.
도 19는 본 발명에 따른 임베디드 스토리지를 개략적으로 보여주는 블록도이다. 도 19를 참조하면, 임베디드 스토리지(5000)는 적어도 하나의 낸드 플래시 메모리 장치(5100) 및 제어기(5200)를 포함할 수 있다. 임베디드 스토리지(5000)는 MMC 4.4(다른 말로, eMMC) 규격을 지원한다.
낸드 플래시 메모리 장치(5100)는 SDR(Sing Data Rate) 낸드 혹은 DDR(Double Data Rate) 낸드일 수 있다. 예시적인 실시 예에 있어서, 낸드 플래시 메모리 장치(5100)는 단품의 낸드 플래시 메모리 장치들을 포함할 수 있다. 여기서, 단품의 낸드 플래시 메모리 장치들은 하나의 패키지(예를 들어, FBGA, Fine-pitch Ball Grid Array)에 적층되어 구현될 수 있다.
제어기(5200)는 도 6에 도시된 것과 실질적으로 동일하게 구성되고, 낸드 플래시 메모리 장치(5100)는 도 7에 도시된 불 휘발성 메모리 장치로 구성될 것이다. 예를 들면, 제어기(5200)는 프로그램 동작시 프로그램 요청된 메모리 영역의 프로그램 완료 시간을 시간 마크 테이블(TMT)에 저장하고, 읽기 동작시 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(TMT)에 저장되어 있는 지의 여부를 판별한다. 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(TMT)에 저장되어 있는 것으로 판별될 때, 제어기(5200)는 읽기 요청된 메모리 영역이 속하는 시간 마크 테이블의 시간 존에 대응하는 읽기 조건 하에 읽기 동작을 수행하도록 낸드 플래시 메모리 장치(5100)를 제어할 것이다. 따라서, 패스트 전하 손실 현상으로 인한 읽기 실패를 방지할 수 있다.
제어기(5200)는 복수의 채널들을 통하여 플래시 메모리 장치(5100)에 연결된다. 제어기(5200)는 적어도 하나의 제어기 코어(5210), 호스트 인터페이스(5220) 및 낸드 인터페이스(5230)를 포함한다. 적어도 하나의 제어기 코어(5210)는 임베디드 스토리지(5000)의 전반적인 동작을 제어한다. 호스트 인터페이스(5220)는 제어기(5210)와 호스트의 인터페이싱을 수행한다. 낸드 인터페이스(5230)는 낸드 플래시 메모리 장치(5100)와 제어기(5200)의 인터페이싱을 수행한다. 예시적인 실시 예에 있어서, 호스트 인터페이스(5220)는 병렬 인터페이스(예를 들어, MMC 인터페이스)일 수 있다. 다른 실시 예에 있어서, 임베디드 스토리지(5000)의 호스트 인터페이스(5220)는 직렬 인터페이스(예를 들어, UHS-II, UFS 인터페이스)일 수 있다.
임베디드 스토리지(5000)는 호스트로부터 전원 전압들(Vcc, Vccq)을 제공받는다. 여기서, 제 1 전원 전압(Vcc: 3.3V)은 낸드 플래시 메모리 장치(5100) 및 낸드 인터페이스(5230)에 제공되고, 제 2 전원 전압(Vccq: 1.8V/3.3V)은 제어기(5200)에 제공된다. 예시적인 실시 예에 있어서, 모비낸드(5000)는 외부 고전압(Vpp)을 옵션적으로 제공받을 수 있다.
본 발명에 따른 임베디드 스토리지(5000)는 대용량의 데이터를 저장하는 데 유리할 뿐 아니라, 향상된 읽기 동작 특성을 갖는다. 본 발명의 실시 예에 따른 임베디드 스토리지(5000)는 소형 및 저전력이 요구되는 모바일 제품(예를 들어, 갤럭시S, 갤럭시노트, 아이폰 등)에 응용 가능하다.
도 20은 본 발명에 따른 통신장치를 개략적으로 보여주는 블록도이다. 도 20을 참조하면, 모바일 장치(6000)는 통신 유닛(6100), 제어기(6200), 메모리 유닛(6300), 디스플레이 유닛(6400), 터치 스크린 유닛(6500), 및 오디오 유닛(6600)을 포함한다. 메모리 유닛(6300)은 적어도 하나의 디램(6310), 적어도 하나의 원낸드(6320), 및 적어도 하나의 모비낸드(또는, 임베디드 스토리지)(6330)를 포함한다.
모바일 장치에 대한 좀더 자세한 것은 미국 공개 번호들 US 2010/0010040, US 2010/0062715, US 2010/0309237, 그리고 US 2010/0315325에서 설명되어 있으며, 이 출원의 레퍼런스로 포함될 것이다.
도 21은 본 발명의 실시예에 따른 반도체 드라이브가 적용되는 시스템을 개략적으로 보여주는 도면이다.
도 21에 도시된 바와 같이, 본 발명의 실시예에 따른 반도체 드라이브는 메일 서버(8100)에도 적용될 수 있다.
도 22는 본 발명의 실시예에 따른 메모리 카드(memory card)를 개략적으로 보여주는 블록도이다.
메모리 카드는 예를 들어, MMC 카드, SD카드, 멀티유즈(multiuse) 카드, 마이크로 SD카드, 메모리 스틱, 컴팩트 SD 카드, ID 카드, PCMCIA 카드, SSD카드, 칩카드(chipcard), 스마트카드(smartcard), USB카드 등일 수 있다.
도 22를 참조하면, 메모리 카드는 외부와의 인터페이스를 수행하는 인터페이스부(9221), 버퍼 메모리를 갖고 메모리 카드의 동작을 제어하는 제어기(9222), 하나 또는 그 보다 많은 불 휘발성 메모리 장치들(9207)을 포함할 것이다. 제어기(9222)는 프로세서로서, 불 휘발성 메모리 장치(9207)의 라이트 동작 및 리드 동작을 제어할 수 있다. 구체적으로, 제어기(9222)는 데이터 버스(DATA)와 어드레스 버스(ADDRESS)를 통해서 불 휘발성 메모리 장치(9207) 및 인터페이스부(9221)와 커플링되어 있다. 인터페이스부(9221)는 호스트와 메모리 카드 사이에 데이터 교환을 수행하기 위한 카드 프로토콜(예를 들어, SD/MMC)을 통해 호스트와 인터페이싱한다.
제어기(9222)는 도 6에 도시된 것과 실질적으로 동일하게 구성되고, 불 휘발성 메모리 장치(9207)는 도 7에 도시된 불 휘발성 메모리 장치로 구성될 것이다. 예를 들면, 제어기(9222)는 프로그램 동작시 프로그램 요청된 메모리 영역의 프로그램 완료 시간을 시간 마크 테이블(TMT)에 저장하고, 읽기 동작시 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(TMT)에 저장되어 있는 지의 여부를 판별한다. 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(TMT)에 저장되어 있는 것으로 판별될 때, 제어기(9222)는 읽기 요청된 메모리 영역이 속하는 시간 마크 테이블의 시간 존에 대응하는 읽기 조건 하에 읽기 동작을 수행하도록 불 휘발성 메모리 장치(9207)를 제어할 것이다. 따라서, 패스트 전하 손실 현상으로 인한 읽기 실패를 방지할 수 있다.
도 23은 본 발명의 실시예에 따른 디지털 스틸 카메라(digital still camera)를 개략적으로 보여주는 블록도이다.
도 23을 참조하면, 디지털 스틸 카메라는 바디(9301), 슬롯(9302), 렌즈(9303), 디스플레이부(9308), 셔터 버튼(9312), 스트로브(strobe)(9318) 등을 포함한다. 특히, 슬롯(9308)에는 메모리 카드(9331)가 삽입될 수 있고, 메모리 카드(9331)는 도 6에 도시된 것과 실질적으로 동일하게 구성된 메모리 제어기와 도 7에 도시된 것과 실질적으로 동일하게 구성된 불 휘발성 메모리 장치로 구성될 것이다. 예를 들면, 메모리 제어기는 프로그램 동작시 프로그램 요청된 메모리 영역의 프로그램 완료 시간을 시간 마크 테이블(TMT)에 저장하고, 읽기 동작시 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(TMT)에 저장되어 있는 지의 여부를 판별한다. 읽기 요청된 메모리 영역의 정보가 시간 마크 테이블(TMT)에 저장되어 있는 것으로 판별될 때, 메모리 제어기는 읽기 요청된 메모리 영역이 속하는 시간 마크 테이블의 시간 존에 대응하는 읽기 조건 하에 읽기 동작을 수행하도록 불 휘발성 메모리 장치를 제어할 것이다. 따라서, 패스트 전하 손실 현상으로 인한 읽기 실패를 방지할 수 있다.
메모리 카드(9331)가 접촉형(contact type)인 경우, 메모리 카드(9331)가 슬롯(9308)에 삽입될 때 메모리 카드(9331)와 회로 기판 상의 특정 전기 회로가 전기적으로 접촉하게 된다. 메모리 카드(9331)가 비접촉형(non-contact type)인 경우, 무선 신호를 통해서 메모리 카드(9331)가 액세스될 것이다.
도 24는 도 23의 메모리 카드가 사용되는 다양한 응용 분야들을 보여주는 도면이다.
도 24를 참조하면, 메모리 카드(9331)는 비디오 카메라(VC), 텔레비전(TV), 오디오 장치(AD), 게임장치(GM), 전자 음악 장치(EMD), 휴대폰(HP), 컴퓨터(CP), PDA(Personal Digital Assistant), 보이스 레코더(voice recorder)(VR), PC 카드(PCC), 등에 사용될 수 있다.
본 발명의 실시예에 있어서, 메모리 셀들은 전하 저장층을 갖는 다양한 셀 구조들 중 하나를 이용하여 구현될 수 있다. 전하 저장층을 갖는 셀 구조는 전하 트랩층을 이용하는 전하 트랩 플래시 구조, 어레이들이 다층으로 적층되는 스택 플래시 구조, 소오스-드레인이 없는 플래시 구조, 핀-타입 플래시 구조, 등을 포함할 것이다.
전하 저장층으로서 전하 트랩 플래시 구조를 갖는 메모리 장치가 미국특허 제6858906호, 미국공개특허 제2004-0169238호, 그리고 미국공개특허 제2006-0180851호에 각각 게재되어 있으며, 이 출원의 레퍼런스로 포함될 것이다. 소오스/드레인이 없는 플래시 구조는 대한민국특허 제673020호에 게재되어 있으며, 이 출원의 레퍼런스로 포함될 것이다.
본 발명에 따른 불 휘발성 메모리 장치 그리고/또는 메모리 제어기는 다양한 형태들의 패키지를 이용하여 실장될 수 있다. 예를 들면, 본 발명에 따른 플래시 메모리 장치 그리고/또는 메모리 컨트롤러는 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), 등과 같은 패키지들을 이용하여 실장될 수 있다.
본 발명의 범위 또는 기술적 사상을 벗어나지 않고 본 발명의 구조가 다양하게 수정되거나 변경될 수 있음은 이 분야에 숙련된 자들에게 자명하다. 상술한 내용을 고려하여 볼 때, 만약 본 발명의 수정 및 변경이 아래의 청구항들 및 동등물의 범주 내에 속한다면, 본 발명이 이 발명의 변경 및 수정을 포함하는 것으로 여겨진다.
1000: 메모리 시스템
1200: 메모리 제어기
1400: 저장 매체

Claims (10)

  1. 전하 트랩 플래시 셀들을 갖는 저장 매체와; 그리고
    상기 저장 매체를 제어하도록 구성된 제어기를 포함하며,
    상기 제어기는 프로그래밍을 위해 선택된 전하 트랩 플래시 셀들을 포함하는 메모리 영역의 프로그램 완료 시간을 시간 마크 테이블에 마크하도록 그리고 특정 시간을 기준으로 상기 시간 마크 테이블에 마크된 메모리 영역의 정보를 관리하도록 구성되고, 그리고 상기 제어기는 읽기 요청된 메모리 영역의 정보가 상기 시간 마크 테이블에 저장되어 있는 지의 여부에 따라 상기 읽기 요청된 메모리 영역의 읽기 조건을 실시간으로 변경하도록 구성되는 메모리 시스템.
  2. 제 1 항에 있어서,
    프로그램된 전하 트랩 플래시 셀의 문턱 전압은 상기 프로그램 완료 시간과 상기 특정 시간 사이에서 변화하며, 상기 시간 마크 테이블은 상기 프로그램 완료 시간과 상기 특정 시간 사이에 존재하고 프로그램 완료된 메모리 영역의 정보가 저장되는 복수의 시간 존들을 포함하는 메모리 시스템.
  3. 제 2 항에 있어서,
    상기 시간 존들에는 서로 다른 읽기 조건들이 할당되는 메모리 시스템.
  4. 제 3 항에 있어서,
    읽기 요청된 메모리 영역의 정보가 상기 시간 마크 테이블에 저장되어 있는 것으로 판별된 결과로서, 상기 제어기는 상기 읽기 요청된 메모리 영역의 정보가 저장되어 있는 상기 시간 마크 테이블의 시간 존에 대응하는 읽기 조건을 상기 저장 매체에 제공하는 메모리 시스템.
  5. 제 4 항에 있어서,
    읽기 요청된 메모리 영역의 정보가 상기 시간 마크 테이블에 저장되어 있지 않다는 것으로 판별된 결과로서, 상기 제어기는 디폴트 읽기 조건에 따라 읽기 동작을 수행하도록 상기 저장 매체를 제어하는 메모리 시스템.
  6. 전하 트랩 플래시 셀들을 갖는 저장 매체를 제어하도록 구성된 제어기의 프로그램 제어 방법에 있어서:
    쓰기 요청에 응답하여 프로그램 명령을 이슈하고,
    상기 저장 매체의 신호 라인이 제 1 레벨에서 제 2 레벨로 천이하였는 지의 여부를 판별하고, 그리고
    상기 저장 매체의 신호 라인이 제 1 레벨에서 제 2 레벨로 천이한 것으로 판별된 결과로서, 쓰기 요청된 메모리 영역의 정보를 시간 마크 테이블에 마크하는 것을 포함하며,
    프로그램된 전하 트랩 플래시 셀의 문턱 전압은 프로그램 완료 시간과 특정 시간 사이에서 변화하며, 상기 시간 마크 테이블은 상기 프로그램 완료 시간과 상기 특정 시간 사이에 존재하고 프로그램 완료된 메모리 영역의 정보가 저장되는 복수의 시간 존들을 포함하는 프로그램 제어 방법.
  7. 제 6 항에 있어서,
    상기 시간 존들에는 서로 다른 읽기 조건들이 할당되는 프로그램 제어 방법.
  8. 제 6 항에 있어서,
    상기 특정 시간과 상기 시간 존들의 수는 셀 당 저장되는 비트들의 수에 따라 가변적으로 제어되거나, 상기 특정 시간과 상기 시간 존들의 수는 셀 당 저장되는 비트들의 수와 메모리 영역의 내구성에 따라 가변적으로 제어되거나, 상기 특정 시간과 상기 시간 존들의 수는 셀 당 저장되는 비트들의 수, 메모리 영역의 내구성, 워드 라인, 블록, 칩, 프로그램 모드, 읽기 모드, 그리고 소거 모드 중 하나 또는 그것들 중 적어도 2개의 조합에 따라 가변적으로 제어되는 프로그램 제어 방법.
  9. 제 6 항에 있어서,
    상기 시간 존들의 시간들은 서로 동일하거나 서로 다른 프로그램 제어 방법.
  10. 제 6 항에 있어서,
    상기 제어기는 상기 프로그램 완료 시간을 기준으로 경과하는 시간에 따라 프로그램 완료된 메모리 영역의 정보가 상기 시간 존들 내에서 이동되도록 상기 시간 마크 테이블을 관리하며, 상기 특정 시간을 경과한 메모리 영역의 정보는 상기 시간 마크 테이블에서 제외되는 프로그램 제어 방법.
KR1020130150114A 2013-12-04 2013-12-04 메모리 시스템 및 그것을 포함하는 유저 장치 KR102187643B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020130150114A KR102187643B1 (ko) 2013-12-04 2013-12-04 메모리 시스템 및 그것을 포함하는 유저 장치
US14/466,187 US9564241B2 (en) 2013-12-04 2014-08-22 Memory system and user device including the same
CN201410734008.0A CN104700896B (zh) 2013-12-04 2014-12-04 存储器系统和包括所述存储器系统的用户装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130150114A KR102187643B1 (ko) 2013-12-04 2013-12-04 메모리 시스템 및 그것을 포함하는 유저 장치

Publications (2)

Publication Number Publication Date
KR20150065224A true KR20150065224A (ko) 2015-06-15
KR102187643B1 KR102187643B1 (ko) 2020-12-08

Family

ID=53265361

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130150114A KR102187643B1 (ko) 2013-12-04 2013-12-04 메모리 시스템 및 그것을 포함하는 유저 장치

Country Status (3)

Country Link
US (1) US9564241B2 (ko)
KR (1) KR102187643B1 (ko)
CN (1) CN104700896B (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102377453B1 (ko) * 2015-11-05 2022-03-23 삼성전자주식회사 불 휘발성 메모리 장치 및 그것의 동작 방법
US11017838B2 (en) * 2016-08-04 2021-05-25 Samsung Electronics Co., Ltd. Nonvolatile memory devices
US10891077B2 (en) * 2018-12-26 2021-01-12 Macronix International Co., Ltd. Flash memory device and controlling method thereof
JP7502317B2 (ja) * 2019-04-30 2024-06-18 長江存儲科技有限責任公司 コントローラ、機器および方法
US11106370B2 (en) * 2019-07-02 2021-08-31 Micron Technology, Inc. Changing of memory components to be used for a stripe based on an endurance condition
US11101004B1 (en) * 2020-06-22 2021-08-24 Macronix International Co., Ltd. Memory device and reading method
CN112256197B (zh) * 2020-10-20 2022-09-02 Tcl通讯(宁波)有限公司 一种存储信息的管理方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100001355A (ko) * 2008-06-26 2010-01-06 에스디씨마이크로 주식회사 플래시 메모리를 이용한 저장장치에서의 읽기 웨어 레벨링방법
KR20120021758A (ko) * 2010-08-16 2012-03-09 삼성전자주식회사 비휘발성 메모리 장치 및 그 프로그램 방법, 메모리 시스템
US8250324B2 (en) * 2009-11-30 2012-08-21 International Business Machines Corporation Method to efficiently locate meta-data structures on a flash-based storage device
JP2013025821A (ja) * 2011-07-22 2013-02-04 Fusion-Io Inc ソリッドステート記憶媒体に関する設定パラメーターを判定するための装置、システム、及び方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7253467B2 (en) 2001-06-28 2007-08-07 Samsung Electronics Co., Ltd. Non-volatile semiconductor memory devices
JP4901048B2 (ja) 2001-06-28 2012-03-21 三星電子株式会社 浮遊トラップ型不揮発性メモリ素子
US20060180851A1 (en) 2001-06-28 2006-08-17 Samsung Electronics Co., Ltd. Non-volatile memory devices and methods of operating the same
US7653777B2 (en) * 2004-01-19 2010-01-26 Trek Technology (Singapore) Pte Ltd. Portable data storage device using a memory address mapping table
US7957189B2 (en) 2004-07-26 2011-06-07 Sandisk Il Ltd. Drift compensation in a flash memory
KR100673020B1 (ko) 2005-12-20 2007-01-24 삼성전자주식회사 전계효과 소오스/드레인 영역을 가지는 반도체 장치
KR100885782B1 (ko) 2007-03-14 2009-02-26 주식회사 하이닉스반도체 차지 트랩형 불휘발성 메모리 장치 및 그 프로그램 방법
JP2008251138A (ja) 2007-03-30 2008-10-16 Toshiba Corp 不揮発性半導体メモリ、不揮発性半導体メモリの制御方法、不揮発性半導体メモリシステム、及びメモリカード
JP5603778B2 (ja) 2007-12-21 2014-10-08 ラムバス・インコーポレーテッド フラッシュメモリタイミングの事前特徴付け
US8386868B2 (en) 2008-04-16 2013-02-26 Sandisk Il, Ltd. Using programming-time information to support error correction
KR101506655B1 (ko) 2008-05-15 2015-03-30 삼성전자주식회사 메모리 장치 및 메모리 데이터 오류 관리 방법
KR101466697B1 (ko) 2008-07-10 2014-12-01 삼성전자주식회사 메모리 장치 및 메모리 데이터 프로그래밍 방법
US8263623B2 (en) 2008-07-11 2012-09-11 Pfizer Inc. Triazol derivatives useful for the treatment of diseases
KR101538803B1 (ko) 2008-09-09 2015-07-22 삼성전자주식회사 펜 테이블로서 기능 할 수 있는 휴대용 전자장치 및 펜 테이블을 사용하는 컴퓨터 시스템
KR101554159B1 (ko) 2008-10-08 2015-09-21 삼성전자주식회사 데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템
KR101573850B1 (ko) 2009-06-09 2015-12-02 삼성전자주식회사 마스킹 회로를 포함하는 데이터 처리 시스템과 그 방법
US20100315325A1 (en) 2009-06-16 2010-12-16 Samsung Electronics Co., Ltd. Light source unit and display apparatus including the same
JP2011181156A (ja) 2010-03-03 2011-09-15 Toshiba Corp 半導体記憶装置
US20120008414A1 (en) 2010-07-06 2012-01-12 Michael Katz Systems and methods for storing, retrieving, and adjusting read thresholds in flash memory storage system
KR101190742B1 (ko) 2010-12-06 2012-10-12 에스케이하이닉스 주식회사 메모리의 콘트롤러 및 이를 포함하는 스토리지 시스템, 메모리의 수명 측정 방법
KR101807250B1 (ko) 2011-07-11 2017-12-11 삼성전자주식회사 3차원 반도체 장치의 제조 방법
KR101818506B1 (ko) 2011-08-22 2018-01-15 삼성전자 주식회사 3차원 반도체 메모리 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100001355A (ko) * 2008-06-26 2010-01-06 에스디씨마이크로 주식회사 플래시 메모리를 이용한 저장장치에서의 읽기 웨어 레벨링방법
US8250324B2 (en) * 2009-11-30 2012-08-21 International Business Machines Corporation Method to efficiently locate meta-data structures on a flash-based storage device
KR20120021758A (ko) * 2010-08-16 2012-03-09 삼성전자주식회사 비휘발성 메모리 장치 및 그 프로그램 방법, 메모리 시스템
JP2013025821A (ja) * 2011-07-22 2013-02-04 Fusion-Io Inc ソリッドステート記憶媒体に関する設定パラメーターを判定するための装置、システム、及び方法

Also Published As

Publication number Publication date
CN104700896B (zh) 2019-09-06
US20150153955A1 (en) 2015-06-04
CN104700896A (zh) 2015-06-10
US9564241B2 (en) 2017-02-07
KR102187643B1 (ko) 2020-12-08

Similar Documents

Publication Publication Date Title
US10169227B2 (en) Memory controller and memory system including the same
KR102302187B1 (ko) 비휘발성 메모리 장치의 동작 방법 및 비휘발성 메모리 장치
KR101893143B1 (ko) 비휘발성 메모리 장치, 그것의 프로그램 방법 및 읽기 방법, 및 그것을 포함하는 메모리 시스템
KR102187643B1 (ko) 메모리 시스템 및 그것을 포함하는 유저 장치
KR102025263B1 (ko) 메모리 시스템 및 그것의 읽기 교정 방법
KR102089613B1 (ko) 불 휘발성 메모리 장치 및 그것을 포함한 메모리 시스템
KR101938659B1 (ko) 불 휘발성 메모리 장치 및 그것을 포함한 메모리 시스템
US8665643B2 (en) Non-volatile memory device and read method thereof
KR102116258B1 (ko) 메모리 시스템 및 그것을 포함하는 유저 장치
US20140223084A1 (en) Memory system and related method of operation
US20140043901A1 (en) Nonvolatile memory device and operating method with variable memory cell state definitions
KR102025251B1 (ko) 메모리 시스템 및 그것의 프로그램 방법
KR20130066277A (ko) 메모리 시스템 및 그것의 동작 방법
KR20160112534A (ko) 비휘발성 메모리 장치, 이를 포함하는 메모리 시스템 및 상기 비휘발성 메모리 장치의 동작 방법
KR20130074294A (ko) 불 휘발성 메모리 장치 및 그것의 프로그램 방법
KR20220056919A (ko) 비휘발성 메모리 장치, 그것을 제어하는 제어기, 그것을 갖는 저장 장치, 및 그것의 리드 방법
CN110648708A (zh) 半导体存储器装置、其操作方法以及存储器系统
US20230195324A1 (en) Storage device
US12001709B2 (en) Storage devices and operating methods of storage controllers
CN113744782A (zh) 存储器装置及其操作方法
US20240143185A1 (en) Storage device writing data on the basis of temperatures of memory dies and method thereof
US20130223156A1 (en) Nonvolatile memory device and memory system including the same
KR20220117998A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법

Legal Events

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