KR20150121562A - 비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작방법 - Google Patents

비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작방법 Download PDF

Info

Publication number
KR20150121562A
KR20150121562A KR1020140047601A KR20140047601A KR20150121562A KR 20150121562 A KR20150121562 A KR 20150121562A KR 1020140047601 A KR1020140047601 A KR 1020140047601A KR 20140047601 A KR20140047601 A KR 20140047601A KR 20150121562 A KR20150121562 A KR 20150121562A
Authority
KR
South Korea
Prior art keywords
temperature
memory device
memory
volatile memory
nonvolatile memory
Prior art date
Application number
KR1020140047601A
Other languages
English (en)
Inventor
오문욱
허재훈
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020140047601A priority Critical patent/KR20150121562A/ko
Priority to US14/665,337 priority patent/US20150301932A1/en
Publication of KR20150121562A publication Critical patent/KR20150121562A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects
    • 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/32Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Automation & Control Theory (AREA)

Abstract

비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작 벙법이 개시된다. 본 발명의 실시 예에 따른 비휘발성 메모리 시스템은, 비휘발성 메모리 셀 어레이를 포함하는 비휘발성 메모리 장치; 상기 비휘발성 메모리 장치의 온도를 측정하는 온도 센서; 및 상기 측정된 온도에 기초하여, 소정의 온도 구간에 따라 메모리 관리 동작의 수행 빈도를 조절하는 메모리 컨트롤러를 포함한다.

Description

비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작방법{Non-volatile memory system and operating method of non-volatile memory system}
본 발명의 기술적 사상은 비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작 방법에 관한 것으로서, 자세하게는 온도에 따라 메모리 관리 동작을 수행하는 비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작방법에 관한 것이다.
데이터를 저장하는 장치 가운데 전원의 공급이 차단되어도 저장하고 있는 데이터를 유지하는 것을 비휘발성 메모리라고 한다. 예컨대, 비휘발성 메모리는 ROM(Read Only Memory), 자기 디스크, 광학 디스크 및 플래시(Flash) 메모리 등을 포함한다. 플래시 메모리는 MOS 트랜지스터의 문턱전압의 변화에 따라 데이터를 저장하는 메모리를 말하고, 낸드(NAND) 및 노어(NOR) 플래시 등을 포함한다. 플래시 메모리는, 온도에 따라 동작 특성이 달라질 수 있다. 온도 변화로 인하여 플래시 비휘발성 메모리 장치의 동작 신뢰성 확보가 어렵다.
본 발명의 기술적 사상이 이루고자 하는 기술적 과제는 비휘발성 메모리 시스템의 동작 신뢰성을 높일 수 있는 비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작방법을 제공하는 것이다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 실시 예에 따른 비휘발성 메모리 시스템은, 비휘발성 메모리 셀 어레이를 포함하는 비휘발성 메모리 장치; 상기 비휘발성 메모리 장치의 온도를 측정하는 온도 센서; 및 상기 측정된 온도에 기초하여, 소정의 온도 구간에 따라 메모리 관리 동작의 수행 빈도를 조절하는 메모리 컨트롤러를 포함할 수 있다.
일 실시예에 있어서, 상기 메모리 컨트롤러는, 상기 메모리 관리 동작에 적합한 상기 소정의 온도 구간에 대한 정보를 저장하고, 상기 측정된 비휘발성 메모리 장치의 온도가 상기 소정의 온도 구간에 속하면, 상기 메모리 관리 동작을 수행할 수 있다.
일 실시예에 있어서, 상기 메모리 컨트롤러는, 상기 측정된 비휘발성 메모리 장치의 온도가 상기 소정의 온도 구간에 속하지 않으면, 상기 비휘발성 메모리 장치의 온도를 조절할 수 있다.
일 실시예에 있어서, 상기 메모리 컨트롤러는, 상기 측정된 비휘발성 메모리 장치의 온도가 상기 소정의 온도 구간에 속하지 않으면, 상기 비휘발성 메모리 장치 내에 데이터를 저장할 수 있는 빈공간의 용량을 기초로, 상기 메모리 관리 동작의 수행 여부를 결정할 수 있다.
일 실시예에 있어서, 상기 메모리 컨트롤러는, 상기 소정의 온도 구간에, 상기 메모리 관리 동작의 빈도를 높일 수 있다.
일 실시예에 있어서, 상기 메모리 컨트롤러는, 온도 구간별로 대응하는 메모리 관리 동작에 대한 정보를 저장하고, 상기 측정된 비휘발성 메모리 장치의 온도가 포함되는 온도 구간에 대응하는 메모리 관리 동작을 수행할 수 있다.
일 실시예에 있어서, 상기 소정의 온도 구간은, 상기 비휘발성 메모리 장치의 동작 범위 또는 상기 비휘발성 메모리 장치의 동작 특성을 기초로 설정될 수 있다.
일 실시예에 있어서, 상기 소정의 온도 구간은, 상기 비휘발성 메모리 장치의 기입 동작이 수행될 때의 온도를 기초로 설정될 수 있다.
일 실시예에 있어서, 상기 메모리 컨트롤러는, 상기 비휘발성 메모리 장치의 기입 또는 독출 동작이 수행될 때의 온도를 저장하고, 상기 저장된 온도를 기초로 상기 소정의 온도 구간을 설정할 수 있다.
일 실시예에 있어서, 상기 메모리 관리 동작은, 상기 메모리 셀 어레이의 메모리 셀들에 기입된 데이터를 지우기 위한 소거 동작, 상기 메모리 셀들 사이의 기입 횟수를 조절하기 위한 웨어 레벨링 동작, 상기 메모리 셀들 사이의 독출 횟수를 조절하기 위한 리드 리프레쉬 동작, 프리 블록을 생성하기 위한 가비지 콜렉션 동작 또는 기입된 데이터의 오류를 수정하기 위한 오류 검사 정정(ECC) 동작들 중 적어도 하나를 포함할 수 있다.
일 실시예에 있어서, 상기 메모리 셀 어레이는, 기판에 수직한 방향으로 적층되는 메모리 셀들을 포함할 수 있다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 실시 예에 따른 비휘발성 메모리 시스템은, 메모리 셀 어레이를 포함하는 비휘발성 메모리 장치; 상기 비휘발성 메모리 장치의 온도를 측정하는 온도 센서; 및 상기 측정된 비휘발성 메모리 장치의 온도에 대응하는 메모리 관리 동작을 수행하는 메모리 컨트롤러를 포함할 수 있다.
일 실시예에 있어서, 상기 메모리 컨트롤러는, 상기 비휘발성 메모리 장치의 온도 구간별로 대응하는 메모리 관리 동작에 대한 정보를 저장하는 온도 정보 저장부를 포함할 수 있다.
일 실시예에 있어서, 상기 비휘발성 메모리 장치의 동작 시의 온도 정보를 상기 메모리 컨트롤러 또는 상기 비휘발성 메모리 장치의 메모리 셀에 저장할 수 있다.
일 실시예에 있어서, 상기 메모리 관리 동작은, 상기 비휘발성 메모리 장치가 아이들 상태 또는 슬립 상태에 있을 때 수행될 수 있다.
본 발명의 기술적 사상에 따른 비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작 방법에 의하면, 비휘발성 메모리 장치의 온도에 기초하여 메모리 관리 동작을 수행함으로써, 비휘발성 메모리 시스템의 동작 신뢰성을 높일 수 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 일 실시예에 따른 비휘발성 메모리 시스템을 나타내는 블록도이다.
도 2a 및 도 2b는 도 1의 메모리 셀 어레이의 일 예를 나타내는 도면이다.
도 3a 내지 도 3c는 메모리 셀의 문턱 전압 분포를 보여주는 다이어그램이다.
도 4는 도 1의 비휘발성 메모리 시스템의 일 구현예를 나타낸 블록도이다.
도 5는 도 1의 백그라운드 동작 유닛(BOU)의 일 구현예를 나타내는 블록도이다.
도 6은 메모리 관리 동작에 적합한 온도 구간을 설정한 온도 정보를 나타내는 테이블이다.
도 7a 내지 도 7b는 메모리 관리 동작의 일 예로서 오류 검사 및 정정 동작을 수행하기 위하여 온도 정보가 설정되는 것을 설명하는 도면이다.
도 8은 본 발명의 실시예에 따른 비휘발성 메모리 장치의 동작 방법을 나타내는 흐름도이다.
도 9는 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 동작 방법을 나타내는 흐름도이다.
도 10은 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 동작 방법을 나타내는 흐름도이다.
도 11은 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 동작 방법을 나타내는 흐름도이다.
도 12는 본 발명의 실시예에 따른 비휘발성 메모리 시스템의 다른 예를 나타내는 블록도이다.
도 13은 본 발명의 실시예에 따른 비휘발성 메모리 시스템의 또 다른 예를 나타내는 블록도이다.
도 14는 본 발명의 실시예에 따른 비휘발성 메모리 시스템의 또 다른 예를 나타내는 블록도이다.
도 15는 본 발명의 실시예에 따른 비휘발성 메모리 시스템이 적용되는 컴퓨팅 시스템을 나타내는 블록도이다.
도 16은 본 발명의 실시예에 따른 솔리드 스테이트 드라이브(SSD: Solid State Drive)를 나타내는 블록도이다.
도 17은 도 16의 SSD를 포함하는 서버 시스템 및 네트워크 시스템을 나타내는 도면이다.
도 18은 본 발명의 일 실시예에 따른 메모리 카드를 나타내는 도면이다.
이하, 첨부한 도면을 참조하여 본 발명의 실시 예에 대해 상세히 설명한다. 본 발명의 실시 예는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되는 것이다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하거나 축소하여 도시한 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 발명의 일 실시예에 따른 비휘발성 메모리 시스템을 나타내는 블록도이다.
본 발명의 실시예에 따른 비휘발성 메모리 시스템(1000)은 다양한 전자 시스템에 채용될 수 있으며, 전자 시스템은 다양한 장치에 해당할 수 있다. 예컨대 스마트 폰, 태블릿 PC, 컴퓨터, TV 등의 전자 장치가 적용될 수 있다. 비휘발성 메모리 시스템(1000)은 eMMC(embedded memory multimedia card), SD 카드(sequare digital card), Micro SD 카드, UFS(universal flash storage) 및 SSD(Solide state drive) 등에 적용될 수 있다.
도 1을 참조하면, 비휘발성 메모리 시스템(1000)은 비휘발성 메모리 장치(100), 온도 센서(200) 및 메모리 컨트롤러(300)를 포함할 수 있다. 비휘발성 메모리 시스템(1000)은 호스트(미도시)로부터의 엑세스 요청에 기초하여 호스트로부터 수신되는 데이터를 비휘발성 메모리 장치(100)에 저장하거나 또는 호스트가 요구하는 데이터를 비휘발성 메모리 장치(100)로부터 독출하여 호스트에 전송할 수 있다.
비휘발성 메모리 장치(100)는 복수의 비휘발성 메모리 셀들을 포함하는 메모리 셀 어레이(110)를 포함한다. 비휘발성 메모리 장치(100)는 예컨대 PRAM(Phase-change random access memory), MROM(mask read-only memory), PROM (programmable read-only memory), EPROM(erasable programmable readonly memory), EEPROM(electrically erasable programmable read-only memory), ROM(Read Only Memory), 자기 디스크, 광학 디스크 및 플래시(Flash) 메모리 등을 포함할 수 있다. 플래시 메모리는 MOS 트랜지스터의 문턱전압의 변화에 따라 데이터를 저장하는 메모리를 말하고, 낸드(NAND) 및 노어(NOR) 플래시 등을 포함할 수 있다. 이하, 비휘발성 메모리 장치(100)는 플래시 메모리인 것을 예를 들어 설명하기로 한다.
온도 센서(200)는 비휘발성 메모리 장치(100)의 동작 온도를 검출할 수 있다. 또한 온도 센서(200)는 비휘발성 메모리 장치(100)가 위치하는 주변 환경의 온도 변화를 감지하고, 변화되는 온도를 측정할 수 있다. 이하, 비휘발성 메모리 장치(100)의 동작 온도를 검출하거나 주변 환경의 온도 변화를 감지하고 변화되는 온도를 측정하는 것을 비휘발성 메모리 장치(100)의 온도를 측정한다고 하기로 한다. 온도 센서(200)는 측정된 온도(Temp)를 메모리 컨트롤러(300)에 제공할 수 있다.
메모리 컨트롤러(300)는 각종 신호들을 비휘발성 메모리 장치(100)로 제공하여 메모리 동작을 제어한다. 메모리 컨트롤러(300)는 명령(CMD) 및 메모리 셀 어레이(110)에서 엑세스 하고자 하는 위치를 나타내는 어드레스(ADDR) 등을 비휘발성 메모리 장치(100)로 제공한다. 상기 명령(CMD) 및 어드레스(ADDR)에 기초하여 데이터(DATA)가 메모리 컨트롤러(300)와 비휘발성 메모리 장치(100) 사이에서 송신 및 수신될 수 있다. 이외에도, 메모리 컨트롤러(300)는 비휘발성 메모리 장치(100)로 클록 신호, 칩 선택신호 등을 제공할 수 있다.
메모리 컨트롤러(300)는 호스트의 엑세스 요청에 응답하여 비휘발성 메모리 장치(100)에서 기입, 독출 또는 소거 동작을 수행하도록 제어할 수 있다. 또한 메모리 컨트롤러(300)는 메모리 관리 동작을 수행할 수 있다. 메모리 관리 동작은 메모리 컨트롤러(300)가, 비휘발성 메모리 장치(100)가 정상적으로 동작하도록 관리하기 위하여 수행하는 동작이다. 메모리 관리 동작은 호스트의 요청 없이도, 메모리 컨트롤러(300) 스스로 판단하여 수행할 수 있다. 호스트의 요청없이 수행되는 메모리 관리 동작을 백그라운드 동작이라고도 하며, 예를 들어, 소거 동작, 가비지 컬렉션, 웨어 레벨링, 리드 리프레쉬 또는 오류 검사 및 정정 동작(ECC 동작) 등을 포함할 수 있다.
비휘발성 메모리 장치(100), 예컨대 플래시 메모리는 데이터 덮어 쓰기(over write)가 자유롭지 못한다. 플래시 메모리에 데이터를 덮어 쓰기 위해서는 데이터를 기입하기 전에 소거하여야 한다. 이를 기입 전 소거 동작(erase-before-write)이라 한다. 플래시 메모리는 일반적으로 페이지 단위로 독출/기입이 이루어지는데, 소거 단위는 기입 단위보다 훨씬 큰 블록 단위로 수행되어야 한다. 이러한 비휘발성 메모리 장치(100)의 특성상 사용이 지속되면 단편화(Fragmentation)가 발생하며, 프리 블록 확보를 위한 가비지 콜렉션(Garbage Collection) 과 같은 메모리 관리 동작이 요구된다.
또한, 메모리 셀 어레이(110) 내의 특정 영역(블록 또는 페이지)에 기입 또는 소거 동작이 집중되어 마모도가 증가하면 메모리 성능이 떨어질 수 있고, 마모가 심해지면 메모리 셀의 데이터 저장 능력이 상실될 수 있다. 따라서, 메모리 셀 어레이 전체에 대해 마모도가 균등하게 유지되도록 조정하기 위하여 웨어 레벨링과 같은 메모리 관리 동작이 요구된다.
이처럼 비휘발성 메모리 장치(100)는 실제 메모리의 억세스와는 무관하게 정상적인 메모리 동작을 위한 소프트웨어 또는 하드웨어적 관리 동작이 요구된다. 이러한 메모리 관리 동작을 위하여 메모리 컨트롤러(300)는 백그라운드 동작 유닛(BOU)을 구비할 수 있다. 백그라운드 동작 유닛(BOU)은 메모리 컨트롤러(300) 내에 소프트웨어적으로 구비될 수 있다. 또는 백그라운드 동작 유닛(BOU)은 하드웨어적으로 구비될 수도 있다. 메모리 컨트롤러(300)는 아이들(Idle) 상태, 슬립 상태 등과 같이 실제 저장 동작이 수행되지 않을때, 상기 메모리 관리 동작이 필요한지 여부 및 메모리 관리 동작을 수행하기에 적절한 상황인지 등을 판단하여 메모리 관리 동작을 수행할 수 있다.
한편, 메모리 컨트롤러(300)는 온도 센서(200)로부터 측정된 비휘발성 메모리 장치의 측정된 온도(Temp)를 기초로 메모리 관리 동작을 수행할 수 있다. 비휘발성 메모리 장치(100)의 동작 특성은 온도에 의하여 영향을 받는다. 예를 들어, 소거 동작의 경우, 특정 온도에서 수행될 때 소거 동작의 성공 확률이 높을 수 있다. 또한, 기입 온도와 독출 온도의 차이가 클수록 독출 오류 확률이 높아지고, 차이가 작을수록 독출 오류 확률이 낮아지는 특성을 가질수 있다. 메모리 컨트롤러(300)는 온도에 따른 비휘발성 메모리 장치(100)의 동작 특성을 반영하여, 비휘발성 메모리 장치(100)의 측정된 온도(Temp)가 소정의 온도 구간에 있을때 메모리 관리 동작을 수행할 수 있다. 이때, 상기 소정의 온도 구간은 메모리 관리 동작을 수행 하기에 적합한 온도일 수 있다. 또한, 메모리 컨트롤러(300)는 비휘발성 메모리 장치(100)의 측정된 온도(Temp)가 특정 온도 구간에 있을 때, 상기 온도 구간에 대응하는 메모리 관리 동작을 수행할 수 있다.
상술한 바와 같이, 본 발명의 실시예에 따른 비휘발성 메모리 시스템(1000)은 비휘발성 메모리 장치(100)의 온도를 측정하고, 비휘발성 메모리 장치(100)의 측정된 온도(Temp)에 기초하여 메모리 관리 동작을 수행함으로써, 동작 신뢰성을 높일 수 있다.
도 2a 및 도 2b는 도 1의 메모리 셀 어레이(110)의 일 예를 나타내는 도면이다. 도 1의 메모리 셀 어레이(110)는 도 2a에 도시된 바와 같이 2차원의 NAND 플래시 메모리일 수 있다. 또는, 도 1의 셀 어레이(110)는 도 2b에 도시되는 바와 같이, 3차원으로 적층된 수직 NAND(Vertical NAND) 플래시 메모리 셀 어레이로 구현될 수 있다.
도 2a를 참조하면, 셀 어레이는 복수의 메모리 셀 스트링(ST), 워드 라인(WL<0> 내지 WL<3>) 및 비트 라인(BL<0> 내지 BL<3>)을 포함할 수 있다.
스트링 선택 라인(String Selection Line; SSL)에 연결되는 스트링 선택 트랜지스터(SST), 복수의 워드라인들(WL<O> 내지 WL<3>)에 각각 연결된 복수의 메모리 셀들(MC), 그리고 그라운드 선택 라인(Ground Section Line; GSL)에 연결된 그라운드 선택 트랜지스터(GST)를 포함할 수 있다. 스트링 선택 트랜지스터(SST)는 비트라인과 스트링 채널 사이에 연결되고, 그라운드 선택 트랜지스터(GST)는 스트링 채널과 공통 소스 라인(Common Source Line; CSL) 사이에 연결될 수 있다.
도 2b를 참조하면, 3차원의 셀 어레이는 기판(SUB), 복수의 메모리 셀 스트링(ST), 워드 라인(WL<0> 내지 WL<3>), 및 비트 라인(BL<0> 내지 BL<3>)을 포함할 수 있다. 메모리 셀 스트링(ST)은 기판(SUB)으로부터 돌출된 방향(예를 들어, 수직 방향(Z))으로 신장될 수 있다. 메모리 셀 스트링(ST) 각각은 Z축 방향으로 메모리 셀들(MC), 소스 선택 트랜지스터(SST), 및 그라운드 선택 트랜지스터(GST)를 포함할 수 있다. 소스 선택 트랜지스터(SST)는 열의 방향(Y)으로 연장된 소스 선택 라인(SSL<0> 내지 SSL<3>)과 연결되어 제어될 수 있고, 그라운드 선택 트랜지스터(GST)는 행의 방향(X) 및 열의 방향(Y)으로 연장된 그라운드 선택 라인(GSL)과 연결되어 제어될 수 있다.
워드 라인(WL<0> 내지 WL<3>)은 기판(SUB)과 수직한 방향(Z)으로 배열된다. 워드 라인(WL<0> 내지 WL<3>) 각각은 메모리 셀 스트링(ST) 내 메모리 셀들(MC) 각각이 존재하는 층의 일부에 위치한다. 워드 라인(WL<0> 내지 WL<3>) 각각은 기판(SUB) 상의 X축 및 Y축의 매트릭스로 배열된 메모리 셀들(MC)과 결합된다. 비트 라인(BL<0> 내지 BL<3>)은 행의 방향(X)으로 배열된 메모리 셀 스트링과 연결될 수 있다. 메모리 셀 스트링(ST) 내 메모리 셀들(MC), 소스 선택 트랜지스터(SST), 및 그라운드 선택 트랜지스터(GST)는 동일한 채널을 공유할 수 있다. 상기 채널은 기판(SUB)과 수직한 방향(Z)으로 연장되도록 형성될 수 있다.
계속하여, 도 2a 및 도 2b를 참조하면, 워드 라인(WL<0> 내지 WL<3>) 및 비트 라인(BL<0> 내지 BL<3>)에 적절한 전압이 인가되어 메모리 셀들(MC)에 대한 프로그램 동작 및/또는 검증 동작이 수행될 수 있다. 예를 들어, 선택 트랜지스터(SST)와 연결된 소스 선택 라인(SSL<0> 내지 SSL<3>) 및 비트 라인(BL<0> 내지 BL<3>)에 설정된 전압이 인가되어 임의의 메모리 셀 스트링(ST)이 선택될 수 있고, 워드 라인(WL<0> 내지 WL<3>)에 설정된 전압이 인가되여 선택된 메모리 셀 스트링(ST) 중 임의의 메모리 셀(MC)을 선택됨으로써, 선택된 메모리 셀(MC)에 대한 독출, 프로그램 및/또는 검증 동작이 수행될 수 있다.
각각의 메모리 셀(MC)은 한 비트의 데이터 혹은 2비트 이상의 데이터를 저장할 수 있다. 하나의 메모리 셀에 한 비트의 데이터를 저장하는 메모리 셀(MC)은 싱글 레벨 셀(Single Level Cell; SLC)이라고 불린다. 그리고, 하나의 메모리 셀에 2비트 이상의 데이터를 저장하는 메모리 셀(MC)은 멀티 레벨 셀(Multi Level Cell; MLC)이라고 불린다. 메모리 셀(MC)은 문턱 전압에 따라 소거 상태(Erase State) 또는 프로그램 상태들(Program State) 중 하나의 상태를 갖는다.
도 3a 내지 도 3c는 메모리 셀의 문턱 전압 분포를 보여주는 다이어그램이다. 도 3a 내지 도 3c는 특히 두개의 비트를 저장하는 멀티 레벨 셀을 도시하고 있다. 도 3a의 셀 산포는 기준 온도, 예를 들어 상온(room temperature)에서의 셀 산포이고, 실선으로 도시된다. 도 3a를 참조 하면, 메모리 셀은 네 개의 상태(E, P1, P2, P3) 중에서 어느 하나를 갖는다. 독출 동작 시에 선택 워드 라인(도 2a 참조, 예를 들어, WL1)으로 선택 독출 전압들(Vr1, Vr2, Vr3) 중 하나의 전압이 제공되고, 비선택 워드 라인(도 2a 참조, WL2 등)으로 비선택 독출 전압(Vread)이 제공된다. 제1 선택 독출 전압(Vr1)은 소거 상태(E)와 제1 프로그램 상태(P1) 사이의 전압 레벨을 갖고, 제2 선택 독출 전압(Vr2)은 제1 프로그램 상태(P1) 및 제2 프로그램 상태(P2) 사이의 전압 레벨을 갖고, 제3 선택 독출 전압(Vr3)은 제2 프로그램 상태(P2) 및 제3 프로그램 상태(P3) 사이의 전압 레벨을 갖는다.
도 3b에 도시된 셀 산포에서 실선은 도 3a와 같이 상온(room temperature)에서의 셀 산포를 나타낸다. 그러나 상온보다 낮은 저온(cold temperature)에서 프로그램 하면, 메모리 셀의 문턱 전압은 낮아지는 방향(①)으로 이동한 것처럼 보인다. 예를 들면, 낸드(NAND) 플래시 비휘발성 메모리 장치의 경우, 저온에서 프로그램할 때 메모리 셀의 FN 터널링이 발생할 수 있는 전위 장벽은 낮아진다. 그리고 채널 전자가 메모리 셀의 플로팅 게이트로 더 많이 이동하게 된다. 이러한 경우 독출 동작시에 메모리 셀의 게이트 전압이 낮더라도 채널은 쉽게 형성될 수 있다. 이로 인해 메모리 셀의 문턱 전압은 낮아지는 것처럼 보인다. 마찬가지로, 상온보다 높은 고온(hot temperature)에서 프로그램하면, 메모리 셀의 문턱 전압은 높아지는 방향(②)으로 이동한 것처럼 보인다.
만약, 저온(cold temperature)에서 프로그램하고 상온에서 독출 동작을 수행하면, 플래시 비휘발성 메모리 장치의 독출 마진(read margin)은 줄어들게 된다. 도 3b에서, 선택 독출 전압(Vr1, Vr2, Vr3)이 일정하다고 가정할 때, 메모리 셀의 문턱 전압이 왼쪽으로 이동하면, 독출 마진은 그만큼 줄어들게 된다. 마찬가지로, 고온(hot temperature)에서 프로그램하고 기준 온도에서 독출 동작을 수행하는 경우에도, 플래시 비휘발성 메모리 장치의 독출 마진은 줄어들게 된다.
도 3c는 독출 페일이 일어 나는 메모리 셀의 산포를 나타내는 도면이다. 도 3c는 제1 프로그램 상태(P1), 제1 선택 전압(Vr1) 및 제2 선택 전압(Vr2)을 도시한다. 제1 선택 전압(Vr1) 및 제2 선택 전압(Vr2)이 일정하고 상온에서 독출 동작을 수행한다고 가정할 때, 저온(cold temperature)에서 프로그램하여 메모리 셀의 문턱 전압이 낮아지는 방향(③)으로 이동하는 경우 페일이 일어날 수 있다. 또한 고온(hot temperature)에서 프로그램하여 메모리 셀의 문턱 전압이 높아지는 방향(④)으로 이동하는 경우에도 독출 페일이 일어날 수 있다.
상술한 바와 같이, 온도에 따라 메모리 셀(MC)이 프로그램될 때의 문턱 전압이 변하므로, 비휘발성 메모리 장치(1000)의 동작 특성은 온도에 의하여 영향을 받을 수 있다. 기입 및 독출 동작뿐만 아니라, 메모리 관리 동작 역시 비휘발성 메모리 장치(100)의 온도를 고려하여 수행되어야 동작의 신뢰성을 높일 수 있다.
도 4는 도 1의 비휘발성 메모리 시스템의 일 구현예를 나타낸 블록도이다.
도 4를 참조하면, 비휘발성 메모리 시스템(1000)은 비휘발성 메모리 장치(100), 온도 센서(200) 및 메모리 컨트롤러(300)를 구비할 수 있다.
비휘발성 메모리 장치(100)는 메모리 셀 어레이(110) 및 컨트롤 로직(120)을 구비할 수 있다. 메모리 셀 어레이(110)는 도 2a 또는 도 2b의 메모리 셀 구조를 가질수 있으며, 이외에도 메모리 셀 어레이(110)는 다양한 종류의 메모리 셀로 구현될 수 있다.
컨트롤 로직(120)은 메모리 컨트롤러(300)로부터 수신되는 명령(CMD), 주소(ADDR) 또는 데이터(DATA)에 따라, 메모리 셀 어레이(110)에 대한 동작을 수행할 수 있다. 예를 들어, 메모리 컨트롤러(300)로부터 수신되는 다양한 명령들, 예컨대 독출 명령, 기입 명령, 소거 명령 등에 기초하여, 메모리 셀 어레이(110)에 데이터(DATA)를 독출 또는 기입하거나, 메모리 셀 어레이(110)의 일 영역을 소거할 수 있다. 이와 같은 동작을 수행하기 위해, 도 4에는 도시하지 않았으나, 비휘발성 메모리 장치(100)는 어드레스에 대응되는 메모리 셀(MC)을 선택하기 위한 디코더(미도시), 선택된 메모리 셀(MC)에 대한 명령(CMD)에 따른 동작을 수행하기 위해 워드 라인(WL) 등으로 동작 전압을 인가하는 드라이버(미도시), 동작 전압을 생성하는 전압 생성부(미도시), 및 데이터(DATA)를 수신하거나 송신하는 데이터 입출력부(미도시) 등이 더 구비될 수 있다.
온도 센서(200)는 비휘발성 메모리 장치(100)의 온도를 측정하여 측정된 온도(Temp)를 메모리 컨트롤러(300)에 제공할 수 있다. 온도 센서(200)는 주기적으로 온도를 측정하거나, 또는 메모리 컨트롤러(300)로부터의 요청이 있을때, 온도를 측정할 수 있다. 예로서, 온도 센서(200)는 서미스터(thermistor) 등과 같은 온도 검출 소자들로 구현할 수 있다.
메모리 컨트롤러(300)는 프로세서(310), 메모리 인터페이스(320), 호스트 인터페이스(330) 및 온도 정보 저장부(340)를 구비할 수 있다. 다른 예로서, 온도 정보 저장부(340)는 메모리 컨트롤러(300)와 별개로 구비될 수 있다.
호스트 인터페이스(330)는 비휘발성 메모리 시스템(1000)과 접속되는 호스트(HOST)와의 데이터 교환 프로토콜(protocol)을 구비하고, 비휘발성 메모리 시스템(1000)과 호스트 사이의 인터페이스를 수행한다. 호스트 인터페이스(330)는 프로세서(310)의 제어에 따라 호스트(HOST)와 통신할 수 있다. 예컨대, 호스트 인터페이스(330)는 eMMC(embedded multimedia card) 인터페이스, UFS(Universal flash storage) 인터페이스, SD 인터페이스, SATA(Serial ATA) 인터페이스, SAS(Serial Attached SCSI) 인터페이스, ATA(Advanced Technology Attachment) 인터페이스, PATA(Parallel Advanced Technology Attachment) 인터페이스, NVMe(NVM Express) 또는 USB(Universal Serial Bus) 등을 포함할 수 있다. 그러나 이는 예시일 뿐 이에 제한되는 것은 아니다.
메모리 인터페이스(320)는 비휘발성 메모리 장치(1001)로 명령(CMD), 어드레스(ADDR) 및 데이터(DATA) 등을 송신하고, 비휘발성 메모리 장치(100)로부터 요청된 명령(CMD(에 따른 데이터(DATA)를 수신할 수 있다. 또한 메모리 인터페이스(320)는 호스트의 요청에 대응하여 프로세서(310)로부터 생성된 명령 (CMD) 또는 메모리 컨트롤러(300) 메모리 관리 동작(예를 들면, 가비지 컬렉션, 웨어 레벨링 등)에 대응하는 명령(CMD)을 비휘발성 메모리 장치(100)로 전송할 수 있다.
프로세서(310)는 메모리 컨트롤러(300)를 포함한 비휘발성 메모리 시스템(1000)의 동작을 전반적으로 제어할 수 있다. 프로세서(310)는 호스트 인터페이스(330) 및 메모리 인터페이스(320)를 통해서 호스트(HOST) 및 비휘발성 메모리 장치(100)와 각각 필요한 신호를 송수신할 수 있다. 또한, 프로세서(310)는 메모리 관리 동작을 수행할 수 있다. 앞서 설명한 백그라운드 동작 유닛(BOU)은 펌웨어로 구현되어, 프로세서(310)를 통해 수행될 수 있다. 프로세서(310)는 백그라운드 동작 유닛(BOU)을 통해 소거 동작, 가비지 콜렉션, 및 오류 검사 및 정정 등의 메모리 관리 동작을 수행할 수 있다.
온도 정보 저장부(340)는 비휘발성 메모리 장치(100)에 동작을 수행할 때의 온도 또는 메모리 관리 동작에 적합한 온도 구간 등 비휘발성 메모리 장치(100)의 동작에 필요한 온도 정보를 저장할 수 있다. 예를 들어, 호스트의 요청에 의하여 메모리 셀 어레이(110)의 일 영역에 데이터를 기입할 경우, 데이터 기입 시의 온도 정보가 온도 정보 저장부(340)에 저장될 수 있다. 플래시 메모리의 경우, 페이지 단위로 기입 동작이 수행되므로, 각각의 기입된 페이지에 대한 기입 시의 온도 정보가 온도 정보 저장부(340)에 저장될수 있다. 또한, 메모리 관리 동작에 적합한 온도 구간이 저장될 수 있다. 상기 온도 구간은 비휘발성 메모리 장치(100)의 제조 및 테스트 단계에서 실험적으로 확보되어 설정되거나, 또는 사용자에 의하여 설정될 수 있다. 또한 상기 온도 정보는 상기 기입 시의 온도 정보에 기초하여 설정될 수 있다.
백그라운드 동작 유닛(BOU)은 온도 정보 저장부(340)으로부터 메모리 관리 동작을 수행하기에 적합한 온도 구간에 대한 정보를 수신하고, 온도 센서(200)로부터 수신되는 측정 온도(Temp)가 상기 온도 구간에 포함되는지 여부를 확인할 수 있다. 백그라운드 동작 유닛(BOU)은 상기 측정 온도(Temp)가 상기 온도 구간에 포함될 경우, 상기 메모리 관리 동작을 수행하고, 상기 측정 온도(Temp)가 상기 온도 구간에 포함되지 않으면, 메모리 관리 동작을 지연시킬 수 있다. 일 실시예에 따르면, 프로세서(310)는 상기 측정 온도(Temp)가 상기 온도 구간에 포함될 수 있도록 비휘발성 메모리 장치(100)의 온도를 조절할 수 있다. 프로세서(310)는 비휘발성 메모리 장치에 제공되는 기준 클럭 등을 변경하여 비휘발성 메모리 장치(100)의 노멀 동작 빈도를 변경함으로써 비휘발성 메모리 장치(100)의 온도를 조절할 수 있다. 그러나 이는 일 예일뿐, 본 발명의 기술적 사상은 이에 제한되는 것은 아니다. 프로세서(310)는 발열소자 또는 방열 소자를 이용하여 비휘발성 메모리 장치(100)의 온도를 조절하거나 이외에도 다양한 방법을 이용할 수 있다.
한편, 비휘발성 메모리 장치(100)의 측정 온도(Temp)가 메모리 관리 동작에 적합한 온도 구간에 포함되지 않을때, 백그라운드 동작 유닛(BOU)은 비휘발성 메모리 장치(100)의 리소스를 고려하여 지연 여부를 결정할 수 있다. 소거 동작 또는 가비지 콜렉션과 같이 프리 블록을 생성하는 메모리 관리 동작을 수행할 경우, 프리 블록이 부족하여, 당장 상기 메모리 관리 동작이 요구된다고 판단하면, 상기 측정 온도(Temp)가 상기 온도 구간에 포함되지 않더라도 메모리 관리 동작을 수행할 수 있다. 반면, 프리 블록에 여유가 있다고 판단될 경우, 측정 온도(Temp)가 메모리 관리 동작에 적합한 온도 구간에 이를때까지 메모리 관리 동작을 지연시킬 수 있다.
백그라운드 동작 유닛(BOU)은 온도 정보 저장부(340)로부터 메모리 관리 동작들 각각에 적합한 온도 구간에 대한 정보를 수신하고, 비휘발성 메모리 장치(100)의 측정 온도(Temp)가 속하는 온도 구간에 대응하는 메모리 관리 동작을 수행할 수도 있다. 비휘발성 메모리 장치(100)의 측정 온도(temp)에 기초한 메모리 관리 동작의 수행에 대하여 도 5 내지 도 7b를 참조하여 보다 상세하게 설명하기로 한다.
도 5는 도 1의 백그라운드 동작 유닛(BOU)의 일 구현예를 나타내는 블록도이다.
도 5를 참조하면, 백그라운드 동작 유닛(BOU)은 기능 블록(ER), 가비지 콜렉션 기능 블록(GC), 웨어 레벨링 기능 블록(WRL), 오류 검사 및 정정 기능 블록(ECC) 및 리드 리프레쉬 기능 블록(RR)을 포함할 수 있다. 백그라운드 동작 유닛(BOU)은 하드웨어적으로 또는 소프트웨어적으로 구현될수 있으며, 앞서 설명한 바와 같이, 펌웨어로 구현될 수도 있다.
소거 기능 블록(ER)은 메모리 셀들에 기입된 데이터를 블록 단위로 소거하는 동작을 수행한다. 소거 기능 블록(ER)은 비휘발성 메모리 장치(100)의 측정 온도(Temp)가 소거 동작에 적합한 온도 또는 온도 구간에 도달하면, 소거 동작을 수행할 수 있다. 예를 들어, 비휘발성 메모리 장치(100)는 25℃에서 가장 양호한 소거 특성을 가질 경우, 소거 기능 블록(ER)은 소거 대상이 되는 블록들에 대한 정보를 저장하고, 온도 센서(200)로부터 수신되는 비휘발성 메모리 장치(100)의 측정 온도(Temp)가 25℃ 근처 또는 24℃가 포함되는 온도 구간에 이르면 상기 블록들에 대한 소거 동작을 수행하는 명령(CMD)을 발행할 수 있다.
가비지 콜렉션 기능 블록(GC)은 프리 블록을 확보하기 위하여, 단편화되어 메모리 셀 어레이의 복수개의 블록에 흩어져 저장되어 있는 페이지 단위의 데이터들을 하나의 블록에 복사하고, 상기 페이지 단위의 데이터가 저장되어 있던 블록들을 소거하여 프리 블록으로 생성할 수 있다. 가비지 콜렉션 기능 블록(GC)은 비휘발성 메모리 장치(100)의 측정 온도(Temp)가 가비지 콜렉션을 수행하기에 적합한 온도 또는 온도 구간에 도달하면 가비지 콜렉션 동작을 수행할 수 있다. 예를 들어, 비휘발성 메모리 장치(100)의 동작 온도 범위가 0℃에서 85℃라고 가졍하면, 가비지 콜렉션 기능을 수행하기에 적합한 온도는 40℃ 내지 45℃ 근방일 수 있다. 비휘발성 메모리 장치(100)에서 데이터 기입 동작 시의 온도와 상기 기입된 데이터의 독출 동작 시의 온도간의 차이가 크면 독출 오류가 발생활 확률이 높다. 가비지 콜렉션 동작을 수행할때, 기입 동작이 수행된다. 그러므로, 가비지 콜렉션 동작 중의 기입 동작 시의 온도와 추후 독출 동작 시의 온도간의 차이가 최대 45℃ 이내로 보장될 수 있도록 비휘발성 메모리 장치(100)의 동작 온도 범위의 중간에 해당하는 온도 범위에서 가비지 콜렉션 동작을 수행할 수 있다. 그러나, 이는 일 예일뿐이며, 가비지 콜렉션을 수행하는 온도 또는 온도 구간은 비휘발성 메모리 장치(100)의 동작 특성 또는 사용자의 선택에 의하여 가변될 수 있다.
웨어 레벨링 기능 블록(WRL)은 메모리 셀 어레이의 각 영역(블록 또는 페이지)에 대한 기입 횟수를 카운트 하고, 기입 횟수가 많은 영역에 대한 논리적 주소와 물리적 주소의 맵핑 관계를 변경하여 메모리 셀들의 기입 횟수를 조정할 수 있다. 웨어 레벨링 기능 블록(WRL)은 기입 횟수가 많은 영역에 저장된 데이터를 다른 영역으로 복사하고, 상기 영역을 무효 영역으로 처리하는 등 다양한 방밥을 통하여 메모리 셀의 기입 횟수를 조정하는 동작을 수행할 수 있다. 웨어 레벨링 기능 블록(WRL)은 비휘발성 메모리 장치(100)의 측정 온도(Temp)가 웨어 레벨링을 수행하기에 적합한 온도 또는 온도 구간에 도달하면 웨어 레벨링 동작을 수행할 수 있다. 예를 들어, 웨어 레벨링 동작시 메모리 셀 어레이의 일부 영역에 저장된 데이터를 자른 영역에 복사할 경우, 가비지 컬렉션 동작과 마찬가지로 비휘발성 메모리 장치(100)의 동작 온도 범위의 중간에 해당하는 온도 범위가 웨어 레벨링 동작에 적합한 온도 구간으로 설정될 수 있다. 그러나 이는 일예일 뿐, 이에 제한되는 것은 아니다.
오류 검사 및 정정 기능 블록(ECC)은 기입된 메모리 셀의 데이터를 검사하고, 오류가 발생하면 다양한 오류 정정 수단을 이용하여 오류를 복구할 수 있다. 오류 검사 및 정정 기능 블록(ECC)은 비휘발성 메모리 장치(100)의 측정 온도(Temp)가 오류 검사를 수행하고자 하는 메모리 셀 영역에 대한 기입 동작 시의 온도 또는 온도 구간에 도달했을 때 오류 검사 및 정정 기능을 수행할 수 있다. 또는 오류 검사 및 정정 기능 블록(ECC)은 오류 검사를 수행하여 복구 불가능한 오류가 발생된 메모리 셀 영역이 발생할 경우, 상기 메모리 셀 영역에 대하여 기입 동작이 수행될 때의 온도 또는 온도 구간에 도달했을 때 오류 검사 및 정정 기능을 다시 수행할 수 있다. 예를 들어, 80℃에서 기입 동작이 수행된 특정 페이지를 독출하였는데 복구 불가능한 오류가 발생할 경우, 오류 검사 및 정정 기능 블록(ECC)은 온도 센서(200)를 통해 비휘발성 메모리 장치(100)의 온도를 주기적으로 측정하고, 측정된 온도가 80℃ 근방에 도달하면 오류 검사 및 정정을 다시 수행할 수 있다. 특정 페이지에 대한 기입 동작 수행 시의 온도에 대한 정보는 기입 동작이 수행될 때마다 온도 정보 저장부(도 4의 340)에 저장되고, 오류 검사 및 정정 기능이 수행될 때, 오류 검사 및 정정 기능 블록(ECC)이 상기 온도 정보를 이용할 수 있다. 기입 동작 시의 온도와 독출 동작 시의 온도간의 차이가 작을수록 독출 오류 확률이 낮아지므로, 메모리 셀 영역에 대하여 기입 동작이 수행될 때의 온도 또는 온도 구간에 오류 검사 및 정정 기능을 수행함으로써 오류 정정 확률을 높일 수 있다.
리드 리프레쉬(Read refresh) 기능 블록(RL)은 메모리 셀 어레이의 각 영역(블록 또는 페이지)에 대한 독출 횟수를 카운트 하고, 독출 횟수가 많은 영역에 대한 데이터를 다른 영역에 복사하고, 논리적 주소와 물리적 주소의 맵핑 관계를 변경하여 메모리 셀들의 독출 횟수를 조정할 수 있다. 리드 리프레쉬 기능 블록(RL)은 비휘발성 메모리 장치(100)의 측정 온도(Temp)가 리드 리프레쉬 동작을 수행하기에 적합한 온도 또는 온도 구간에 도달하면 리드 리프레쉬 동작을 수행할 수 있다. 예를 들어, 비휘발성 메모리 장치(100)의 동작 온도 범위의 중간에 해당하는 온도 범위가 리드 리프레쉬 동작에 적합한 온도 구간으로 설정될 수 있다. 그러나 이는 일예일 뿐, 이에 제한되는 것은 아니다. 비휘발성 메모리 장치(100)의 동작 특성 및 리드 리프레쉬 동작의 특성을 고려하여 온도 구간이 설정될 수 있다.
상술한 바와 같이, 백그라운드 동작 유닛(BOU)은 메모리 관리 동작을 수행하는 다양한 기능 블록을 구비하고, 비휘발성 메모리 장치(100)의 온도가 상기 메모리 관리 동작들을 수행하기에 적합한 온도 또는 온도 구간에 도달하면, 상기 메모리 관리 동작을 수행할 수 있다. 한편, 도 5에서는 5개의 메모리 관리 동작을 예를 들어 설명하였으나, 이외에도 백그라운드 동작 유닛(BOU)은 다양한 기능 블록을 포함하고 메모리 관리 동작을 수행할 수 있다.
도 6은 메모리 관리 동작에 적합한 온도 구간을 설정한 온도 정보를 나타내는 테이블이다.
도 6을 참조하면, 비휘발성 메모리 장치의 동작 온도 범위는 0℃ 내지 85℃이고, 상기 동작 온도 범위 내의 온도 구간에 각각의 메모리 관리 동작, 예컨대 백그라운드 동작에 대응하는 온도 구간이 설정될 수 있다. 도시된 온도 정보 테이블은 백그라운드 동작에 대응하는 온도 구간의 일 예를 보여준다. 메모리 관리 동작에 대응하는 온도 구간에 대한 정보는 온도 정보 저장부(도 4의 340) 또는 프로세서(310) 내에 구비되는 레지스터 내에 저장될 수 있다. 도 6에서는 온도 구간이 설정되는 일 예를 나타내는 것일 뿐이며, 본 발명의 기술적 사상은 이에 제한되지 않는다. 각각의 메모리 관리 동작에 대응하는 온도 구간은 비휘발성 메모리 장치(100)의 동작 특성 및 각 메모리 관리 동작의 특성에 따라 설정될 수 있다. 각 메모리 관리 동작에 적합한 온도 구간은 비휘발성 메모리 장치(100)의 제조 단계에서 실험적으로 구해지거나 또는 사용자의 선택에 의하여 설정될 수 있다.
도 7a내지 도 7b는 메모리 관리 동작의 일 예로서 오류 검사 및 정정 동작을 수행하기 위하여 온도 정보가 설정되는 것을 설명하는 도면이다. 도 7a는 비휘발성 메모리 장치(도 1의 100)의 메모리 셀 어레이(110) 및 온도 구간을 단계별로 나눈 정보를 도시한다. 도 7b는 페이지들의 기입 온도 및 상기 페이지들에 대한 ECC 온도 구간에 대한 정보를 도시한다.
도 7a를 참조하면, 비휘발성 메모리 장치(100)의 메모리 셀 어레이(110)는 복수의 블록(BLK)을 포함하고, 복수의 블록(BLK) 각각은 복수의 페이지(PG11~PG88)를 구비할 수 있다. 도 7a에서는 8개의 블록(BLK)과 8개의 페이지를 구비하는 것으로 도시하였으나, 이는 일 예일 뿐이다. 블록과 페이지의 수는 메모리 셀 어레이(110)의 용량에 따라 결정될 수 있다. 비휘발성 메모리 장치(100)의 기입 및 독출 동작은 페이지 단위로 수행될 수 있으며, 소거 동작은 블록(BLK) 단위로 수행될 수 있다.
비휘발성 메모리 장치(100)는 저장 동작이 정상적으로 수행될 수 있는 동작 온도 범위가 설정될 수 있으며, 예를 들어 비휘발성 메모리 장치(100)의 동작 온도 범위는 0℃ 내지 85℃일 수 있다. 비휘발성 메모리 장치(100)의 동작 온도 범위는 복수의 온도 구간으로 구분될 수 있다. 온도 레벨 테이블을 참조하면, 0℃ 내지 85℃의 동작 온도 범위는 7레벨의 온도 구간으로 구분될 수 있다. 그러나 이는 일 예일뿐이며, 온도 구간은 사용자의 설정에 따라 다양하게 구분될 수 있다. 도시된 바와 달리, 각각의 온도 구간은 동일한 온도 범위로 구분될 수 있고, 온도 구간은 연속적이지 않을 수도 있다.
도 7b를 참조하면, 기입된 페이지들 각각에 대하여 기입 온도가 저장되고, 상기 페이지 기입 온도를 기초로, 기입된 페이지들 각각에 대한 오류 검사 및 정정 동작의 온도 구간 레벨이 결정될 수 있다. 예를 들어, 페이지 15의 기입 온도는 28℃이고, 28℃는 레벨 3(LV3)에 포함되므로, 페이지 15에 대한 오류 검사 및 정정 동작은 레벨 3(LV3)의 온도 구간에서 수행될 수 있다. 비휘발성 메모리 장치(도 1의 100)의 측정 온도가 레벨 3(LV3), 예컨대 20℃에서 35℃ 사이의 온도이면, 페이지 15에 대한 오류 검사 및 정정 동작이 수행될 수 있다.
도 7a 및 도 7b에 도시된 설정된 온도 구간, 페이지들의 기입 온도 및 오류 검사 및 정정 동작 온도 레벨은 온도 정보 저장부(도 4의 340)에 저장되거나 프로세서(310) 내의 레지스터에 저장될 수 있다. 또한 상기 정보들은 비휘발성 메모리 장치(100)의 메모리 셀 어레이(110)에 저장될 수도 있다. 상기 저장된 정보는 메모리 관리 동작 수행시 프로세서(도 4의 310)에 로딩되어 이용될 수 있다.
도 8은 본 발명의 실시예에 따른 비휘발성 메모리 장치의 동작 방법을 나타내는 흐름도이다.
도 8을 참조하면, 우선, 메모리 관리 동작에 적합한 온도 구간을 설정한다(S110). 메모리 관리 동작에 적합한 온도 구간은 비휘발성 메모리 장치(도 1의 100)의 제조 단계 또는 비휘발성 메모리 장치(100)의 셋업 단계에서 설정될 수 있다. 또는 ECC 동작과 같이, 메모리 관리 동작이 비휘발성 메모리 장치의 특정 동작 시의 온도에 영향을 받는 경우라면, 상기 동작이 수행될 때 메모리 관리 동작에 적합한 온도 구간이 설정될 수 있다. 메모리 관리 동작의 종류에 따라 적합한 온도 구간은 다르게 설정될 수 있다.
비휘발성 메모리 장치의 온도를 측정한다(S120). 온도 센서(도 1의 200)을 통하여 비휘발성 메모리 장치의 온도가 주기적으로 측정될 수 있다. 또는 메모리 컨트롤러(300)의 요청이 발생할 경우 온도가 측정될 수도 있다. 측정된 온도는 메모리 컨트롤러(300)에 제공된다.
측정 온도가 상기 설정된 온도 구간에 포함되면 메모리 관리 동작을 수행한다(S130). 메모리 관리 동작은 비휘발성 메모리 장치(100)의 저장 동작, 예컨대 호스트의 엑세스 요청에 의한 동작 등이 수행되지 않는 아이들(Idle) 구간 또는 슬립 구간에 주로 수행될 수 있다. 이때, 동작 신뢰성을 위하여 측정 온도가 메모리 관리 동작에 적합한 상기 설정 구간에 포함되면 메모리 관리 동작을 수행할 수 있다.
도 9는 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 동작 방법을 나타내는 흐름도이다. 도 9의 동작 방법은 도 8의 동작 방법의 변형예이다.
도 9를 참조하면, 우선, 메모리 관리 동작에 적합한 온도 구간을 설정하고(S210), 이후 메모리 관리 동작 수행을 결정한다(S220). 비휘발성 메모리 장치(도 1의 100)가 아이들(Idle) 상태 또는 슬립(Sleep) 상태에 있을 때 메모리 관리 동작의 수행이 결정될 수 있다.
메모리 관리 동작의 수행이 결정되면, 비휘발성 메모리 장치의 온도를 측정하고(S230), 측정된 온도가 상기 설정된 온도 구간에 포함되는지 여부를 판단한다(S240). 측정된 온도가 상기 설정된 온도 구간에 포함되면, 메모리 관리 동작을 수행한다(S250).
측정된 온도가 설정된 온도 구간에 포함되지 않으면, 메모리 관리 동작을 지연시킬 수 있다. 이때, 비휘발성 메모리 장치의 온도를 조절할 수 있다(S250). 예를 들어, 메모리 컨트롤러(도 1의 300)는 비휘발성 메모리 장치의 동작 속도를 빠르게 하거나 느리게 함으로써, 비휘발성 메모리 장치의 온도를 조절할 수 있다. 또는 메모리 컨트롤러(300)는 발열 소자 또는 방열 소자를 이용하여 비휘발서 메모리 장치(100)의 온도를 조절할 수 있다.
이후, 다시 비휘발성 메모리 장치의 온도를 측정하고(S230) 측정된 온도가 설정된 온도 구간에 포함되면, 메모리 관리 동작을 수행한다(S260).
도 10은 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치의 동작 방법을 나타내는 흐름도이다. 도 10의 동작 방법은 도 8의 동작 방법의 변형예이다.
도 10을 참조하면, 우선, 메모리 관리 동작에 적합한 온도 구간을 설정한다(S310). 메모리 관리 동작 수행을 결정하고(S320), 비휘발성 메모리 장치의 온도를 측정한다(S330). 측정된 온도가 설정된 온도 구간에 포함되는지 판단하여(S340), 설정된 온도 구간에 포함되면 메모리 관리 동작을 수행한다(S360). 설정된 온도 구간에 포함되지 않으면, 메모리 리소스 상황을 판단한다(S350). 메모리 리소스가 부족한지 충분한지 여부를 판단할 수 있다. 메모리 리소스가 충분하다고 판단되면, 동작 신뢰성을 고려하여, 메모리 관리 동작을 지연할 수 있다. 주기적으로 비휘발성 메모리 장치의 온도를 측정하여(S330), 측정된 온도가 설정된 온도 구간에 포함되면, 메모리 관리 동작을 수행한다(S360). 반면, 메모리 리소스가 부족하다고 판단되면, 정상적인 저장 동작이 수행될 수 있도록, 메모리 관리 동작을 수행한다(S360). 예를 들어, 메모리 관리 동작은 소거 동작, 가비지 콜렉션 등의 프리 블록을 확보하기 위한 동작일 수 있다.
상술한 동작 방법에 따르면, 메모리 리소스가 부족한 상황과 같이, 정상 동작 수행을 위하여 메모리 관리 동작이 즉시 수행되어야 할 경우에는, 측정된 온도가 설정된 온도 구간에 포함되지 않더라도, 메모리 관리 동작을 수행함으로써, 비휘발성 메모리 장치의 성능 저하를 방지할 수 있다.
도 10은 본 발명의 또 다른 실시예에 따른 비휘발성 메모리 장치의 동작 방법을 나타내는 흐름도이다.
도 11을 참조하면, 우선, 온도 구간별로 대응하는 메모리 관리 동작을 설정한다(S410). 도 6을 참조하여 설명한 바와 같이, 메모리 관리 동작별로 적절한 온도 구간을 설정할 수 있다. 이때 온도 구간은 비휘발성 메모리 장치의 동작 특성 및 메모리 관리동작의 특성을 고려하여 설정할 수 있다.
이후, 비휘발성 메모리 장치의 온도를 측정하고(S420), 측정 온도가 포함되는 온도 구간에 대응하는 메모리 관리 동작을 수행할 수 있다(S430). 예를 들어, 가비지 콜렉션 동작에 대응하는 온도 구간이 40℃ 내지 45℃로 설정되고, 메모리 셀 어레이의 특정 페이지에 대한 오류 검사 및 정정 동작에 대응하는 온도 구간이 70℃ 내지 85℃로 설정된 경우, 비휘발성 메모리 장치의 측정 온도가 43℃라면, 가비지 콜렉션 동작을 수행할 수 있다. 또는 비휘발성 메모리 장치의 측정 온도가 80℃라면, 상기 페이지에 대한 오류 검사 및 정정 동작을 수행할 수 있다.
도 12는 본 발명의 실시예에 따른 비휘발성 메모리 시스템의 다른 예를 나타내는 블록도이다.
도 12를 참조하면, 비휘발성 메모리 시스템(1000a)은 비휘발성 메모리 장치(100a) 및 메모리 컨트롤러(300)를 포함할 수 있다. 비휘발성 메모리 장치(100a)는 메모리 셀 어레이(110) 및 온도 센서(200)를 포함할 수 있다.
메모리 컨트롤러(300)는 백그라운드 동작 유닛(BOU)을 포함하며, 온도 센서(200)로부터 수시되는 비휘발성 메모리 장치(100a)의 측정 온도(Temp)를 기초로 메모리 관리 동작을 수행할 수 있다. 메모리 컨트롤러(300)는 측정된 온도(Temp)가 소정의 온도 구간에 포함될 때 메모리 관리 동작을 수행할 수 있다. 또는 메모리 컨트롤러(300)는 온도 구간별로 대응하는 메모리 관리 동작에 대한 정보를 저장하고, 상기 측정된 온도가(Temp)가 포함되는 온도 구간에 대응하는 메모리 관리 동작을 수행할 수 있다.
도 12에서 하나의 비휘발성 메모리 장치(100a)를 포함하는 것으로 도시되었으나, 이에 제한되지 않는다. 비휘발성 메모리 시스템(1000a)은 메모리 컨트롤러(300)에 의하여 제어되는 복수의 비휘발성 메모리 장치(100a)를 포함할 수 있으며, 복수의 비휘발성 메모리 장치(100a) 각각은 메모리 셀 어레이(110) 및 온도 센서(200)를 포함할 수 있다. 메모리 컨트롤러(300)는 비휘발성 메모리 장치(100a)의 온도 센서(200)로부터 수신되는 측정 온도(temp)에 기초하여, 각각의 비휘발성 메모리 장치(100a) 각각에 대하여 메모리 관리 동작을 수행할 수 있다.
도 13은 본 발명의 실시예에 따른 비휘발성 메모리 시스템의 또 다른 예를 나타내는 블록도이다.
도 13을 참조하면 비휘발성 메모리 시스템(1000b)은 비휘발성 메모리 장치(100) 및 메모리 컨트롤러(300b)를 포함할 수 있다. 도 13에서 온도 센서(200)는 메모리 컨트롤러(300b) 내에 구비될 수 있다. 메모리 컨트롤러(300b)는 비휘발성 메모리 장치(100)에 근접하게 배치되고, 메모리 컨트롤러(300b)내에 구비된 온도 센서(200)를 통해 비휘발서 메모리 장치(100)의 주변 환경의 온도를 측정할 수 있다. 메모리 컨트롤러(300b)는 측정된 온도(Temp)를 기초로 메모리 관리 동작을 수행할 수 있다. 이외의 다른 동작은 도 1을 참조하여 설명한 비휘발성 메모리 시스템의 동작과 유사한바, 중복되는 설명은 생략하기로 한다.
도 14는 본 발명의 실시예에 따른 비휘발성 메모리 시스템의 또 다른 예를 나타내는 블록도이다.
도 14를 참조하면, 비휘발성 메모리 시스템(1000c)은 각각이 복수의 비휘발성 메모리 장치(MD1~MDn)를 포함하는 복수의 채널(CH1~CHm) 및 상기 복수의 채널(CH1~ CHm)을 제어하는 메모리 컨트롤러(300)를 구비할 수 있다.
복수의 채널(CH1~Chm) 각각에는 복수의 비휘발성 메모리 장치(MD1~MDn) 및 온도 센서(201~20m)가 구비될 수 있다. 온도 센서(200)는 각 채널(CH1~CHm)의 온도를 측정하여 메모리 컨트롤러(300)에 제공할 수 있다.
메모리 컨트롤러(300)는 각 채널(CH1~Chm)별로 저장 동작 및 메모리 관리 동작을 수행할 수 있다. 예를 들어, 제1 채널(CH1)의 온도 센서(201)로부터 수신된 측정 온도가 소정의 온도 구간에 포함되면, 제1 채널(CH1)의 비휘발성 메모리 장치(101~10n)에 대하여 상기 온도 구간에 대응하는 메모리 관리 동작을 수행할 수 있다. 메모리 광리 동작은 복수의 채널(CH1~CHm)에 대하여 순차적으로 또는 병렬적으로 수행될 수 있다.
도 15는 본 발명의 실시예에 따른 비휘발성 메모리 시스템이 적용되는 컴퓨팅 시스템을 나타내는 블록도이다.
모바일 기기나 데스크 탑 컴퓨터와 같은 컴퓨팅 시스템(2000)에 본 발명의 예시적 실시예들 중 어느 하나에 따른 비휘발성 메모리 시스템이 비휘발성 저장장치(2400)로서 장착될 수 있다.
본 발명의 예시적 실시예에 따른 컴퓨팅 시스템(2000)은 중앙처리장치(2100), 램(2200), 유저 인터페이스(2300) 및 비휘발성 저장장치(2400)를 포함할 수 있으며, 이들 구성요소들은 각각 버스(2500)에 전기적으로 연결될 수 있다. 비휘발성 저장장치(2400)에 포함된 비휘발성 메모리 장치는, 예컨대 NAND 플래시 메모리, NOR 플래시 메모리, MRAM(Magnetic Random Access Memory), RRAM(Resistance RAM), FRAM(Ferroelectric RAM) 또는 PCM(Phase Change Memory) 등이 될 수 있다.
전술한 예시적 실시예들과 같이 비휘발성 저장장치(2400)는 메모리 컨트롤러, 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 온도를 측정하는 온도 센서를 포함할 수 있다. 메모리 컨트롤러는 온도 센서기 비휘발성 메모리 장치의 온도를 측정한 측정 온도에 기초하여, 메모리 관리 동작을 수행할 수 있다. 메모리 컨트롤러는 측정 온도가 소정의 온도 구간에 포함되면, 메모리 관리 동작을 수행할 수 있다. 또한, 메모리 컨트롤러는 메모리 관리 동작별로 온도 구간을 설정하고, 측정된 온도 구간이 포함되는 온도 구간에 대응하는 메모리 관리 동작을 수행할 수 있다.
도 16은 본 발명의 실시예에 따른 솔리드 스테이트 드라이브(SSD: Solid State Drive)를 나타내는 블록도이다.
도 16을 참조하면, 본 발명의 실시예에 따른 SSD(3000)는 비휘발성 메모리 장치(3010), SSD 컨트롤러(3020) 및 온도 센서(3030)를 포함한다. 온도 센서(3030)는 비휘발성 메모리 장치(3010)에 구비되거나, SSD 컨트롤러(3020) 내부에 구비될 수도 있다. SSD 컨트롤러(3020)는 도 1의 메모리 컨트롤러(300)고, 비휘발성 메모리 장치(3010)는 도 1의 비휘발성 메모리 장치(100)이고 온도 센서(3030)는 도 1의 온도 센서(200)일 수 있다.
SSD 컨트롤러(3020)는 프로세서(3021), 램(3022), 호스트 인터페이스(3023), 캐쉬 버퍼(3024) 및 메모리 인터페이스(3025)를 구비할 수 있다. 프로세서(3021)는 호스트(미도시)의 요청(명령, 어드레스, 데이터)에 응답하여 메모리 인터페이스(3025)가 비휘발성 메모리 장치(3010)와 데이터를 송수신하도록 제어한다. SSD의 프로세서(3021) 및 메모리 인터페이스(3025)는 하나의 ARM 프로세서로 구현될 수도 있다. 프로세서(3021)의 동작에 필요한 데이터는 램(3022)에 로딩될 수 있다.
프로세서(3021)는 비휘발성 메모리 장치(3010)에 대한 메모리 관리 동작을 수행한다. 프로세서(3021)는 백그라운드 동작 유닛(BOU)을 구비하고, 온도 센서(3030)로부터 측정된 비휘발성 메모리 장치(3010)의 온도를 기초로, 메모리 관리 동작을 수행할 수 있다.
호스트 인터페이스(3023)는 호스트의 요청을 수신하여 프로세서(3021)로 전송하거나, 비휘발성 메모리 장치(3010)로부터 전송된 데이터를 호스트로 전송한다. 호스트 인터페이스(3023)는 USB(Universal Serial Bus), MMC(Man Machine Communication), PCI-E(Peripheral Component Interconnect-Express), SATA(Serial Advanced Technology Attachment), PATA(Parallel Advanced Technology Attachment), SCSI(Small Computer System Interface), ESDI(Enhanced Small Device Interface), 그리고 IDE(Intelligent Drive Electronics) 등과 같은 다양한 인터페이스 프로토콜로, 호스트와 인터페이스 할 수 있다. 비휘발성 메모리 장치(3010)로 전송하고자 하거나, 비휘발성 메모리 장치(3010)로부터 전송된 데이터는 캐쉬 버퍼(3024)에 임시로 저장될 수 있다. 캐쉬 버퍼(3024)는 SRAM 등일 수 있다.
도 17은 도 16의 SSD를 포함하는 서버 시스템 및 네트워크 시스템을 나타내는 도면이다.
도 17을 참조하면, 일 실시예에 따른 네트워크 시스템(NSYS)은 네트워크를 통해 연결되는 서버 시스템(SVSYS) 및 다수의 단말들(TEM1~TEMn)을 포함할 수 있다. 일 실시예에 따른 서버 시스템(SVSYS)은 네트워크에 연결되는 다수의 단말들(TEM1~TEMn)로부터 수신되는 요청을 처리하는 서버(SERVER) 및 단말들(TEM1~TEMn)로부터 수신되는 요청에 대응되는 데이터를 저장하는 SSD를 포함할 수 있다. 일 실시예에 따른 네트워크 시스템(NSYS) 및 서버 시스템(SVSYS)은 동작 신뢰성을 확보할 수 있다.
도 18은 본 발명의 일 실시예에 따른 메모리 카드를 나타내는 도면이다. 메모리 카드(4000)는 모바일 기기나 데스크 탑 컴퓨터와 같은 전자기기에 연결하여 사용할 수 있는 휴대용 저장장치가 될 수 있다. 도 18에 도시된 바와 같이, 메모리 카드(4000)는 메모리 컨트롤러(4030), 비휘발성 메모리 장치(4010), 온도 센서(3020) 및 포트 영역(4040)을 구비할 수 있다. 온도 센서(4020)는 비휘발성 메모리 장치(4010) 또는 메모리 컨트롤러(4030)의 내부에 구비될 수도 있다.
메모리 카드(4000)는 포트 영역(4040)을 통해서 외부의 호스트(미도시)와 통신할 수 있고, 메모리 컨트롤러(4030)는 비휘발성 메모리 장치(4010)를 제어할 수 있다. 메모리 컨트롤러(4030)는 프로그램을 저장하는 ROM(미도시)으로부터 프로그램을 읽어서 수행할 수 있다. 도 18의 메모리 컨트롤러(4030) 및 비휘발성 메모리 장치(4010) 및 온도 센서(4020)는 전술된 도 1의 비휘발성 메모리 장치(100), 온도 센서(200) 및 메모리 컨트롤러(300)일 수 있다.
이상에서와 같이 도면과 명세서에서 최적 실시 예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
1000: 비휘발성 메모리 시스템 100: 비휘발성 메모리 장치
200: 온도 센서 300: 메모리 컨트롤러
BOU: 백그라운드 동작 유닛

Claims (10)

  1. 비휘발성 메모리 셀 어레이를 포함하는 비휘발성 메모리 장치;
    상기 비휘발성 메모리 장치의 온도를 측정하는 온도 센서; 및
    상기 측정된 온도에 기초하여, 소정의 온도 구간에 따라 메모리 관리 동작의 수행 빈도를 조절하는 메모리 컨트롤러를 포함하는 비휘발성 메모리 시스템.
  2. 제1 항에 있어서, 상기 메모리 컨트롤러는,
    상기 메모리 관리 동작에 적합한 상기 소정의 온도 구간에 대한 정보를 저장하고, 상기 측정된 비휘발성 메모리 장치의 온도가 상기 소정의 온도 구간에 속하면, 상기 메모리 관리 동작을 수행하는 것을 특징으로 하는 비휘발성 메모리 시스템.
  3. 제2 항에 있어서, 상기 메모리 컨트롤러는,
    상기 측정된 비휘발성 메모리 장치의 온도가 상기 소정의 온도 구간에 속하지 않으면, 상기 비휘발성 메모리 장치의 온도를 조절하는 것을 특징으로 하는 비휘발성 메모리 시스템.
  4. 제2 항에 있어서, 상기 메모리 컨트롤러는,
    상기 측정된 비휘발성 메모리 장치의 온도가 상기 소정의 온도 구간에 속하지 않으면, 상기 비휘발성 메모리 장치내에 데이터를 저장할 수 있는 빈공간의 용량을 기초로, 상기 메모리 관리 동작의 수행 여부를 결정하는 것을 특징으로 하는 비휘발성 메모리 시스템.
  5. 제1 항에 있어서, 상기 메모리 컨트롤러는,
    상기 소정의 온도 구간에, 상기 메모리 관리 동작의 빈도를 높이는 것을 특징으로 하는 비휘발성 메모리 시스템.
  6. 제1 항에 있어서, 상기 메모리 컨트롤러는,
    온도 구간별로 대응하는 메모리 관리 동작에 대한 정보를 저장하고, 상기 측정된 비휘발성 메모리 장치의 온도가 포함되는 온도 구간에 대응하는 메모리 관리 동작을 수행하는 것을 특징으로 하는 비휘발성 메모리 시스템.
  7. 제1 항에 있어서, 상기 소정의 온도 구간은,
    상기 비휘발성 메모리 장치의 동작 범위 또는 상기 비휘발성 메모리 장치의 동작 특성을 기초로 설정되는 것을 특징으로 하는 비휘발성 메모리 시스템.
  8. 제1 항에 있어서, 상기 소정의 온도 구간은,
    상기 비휘발성 메모리 장치의 기입 동작이 수행될 때의 온도를 기초로 설정되는 것을 특징으로 하는 비휘발성 메모리 시스템.
  9. 제1 항에 있어서, 상기 메모리 컨트롤러는,
    상기 비휘발성 메모리 장치의 기입 또는 독출 동작이 수행될 때의 온도를 저장하고, 상기 저장된 온도를 기초로 상기 소정의 온도 구간을 설정하는 것을 특징으로 하는 비휘발성 메모리 시스템.
  10. 제1 항에 있어서, 상기 메모리 관리 동작은,
    상기 메모리 셀 어레이의 메모리 셀들에 기입된 데이터를 지우기 위한 소거 동작, 상기 메모리 셀들 사이의 기입 횟수를 조절하기 위한 웨어 레벨링 동작, 상기 메모리 셀들 사이의 독출 횟수를 조절하기 위한 리드 리프레쉬 동작, 프리 블록을 생성하기 위한 가비지 콜렉션 동작 또는 기입된 데이터의 오류를 수정하기 위한 오류 검사 정정(ECC) 동작들 중 적어도 하나를 포함하는 것을 특징으로 하는 비휘발성 메모리 시스템.
KR1020140047601A 2014-04-21 2014-04-21 비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작방법 KR20150121562A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140047601A KR20150121562A (ko) 2014-04-21 2014-04-21 비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작방법
US14/665,337 US20150301932A1 (en) 2014-04-21 2015-03-23 Nonvolatile memory system and method of performing operation of the nonvolatile memory system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140047601A KR20150121562A (ko) 2014-04-21 2014-04-21 비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작방법

Publications (1)

Publication Number Publication Date
KR20150121562A true KR20150121562A (ko) 2015-10-29

Family

ID=54322133

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140047601A KR20150121562A (ko) 2014-04-21 2014-04-21 비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작방법

Country Status (2)

Country Link
US (1) US20150301932A1 (ko)
KR (1) KR20150121562A (ko)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170111375A (ko) * 2016-03-28 2017-10-12 에스케이하이닉스 주식회사 메모리 시스템 및 그의 동작 방법
KR20180000594A (ko) * 2016-06-23 2018-01-03 에스케이하이닉스 주식회사 반도체장치 및 반도체시스템
US9875796B2 (en) 2016-02-18 2018-01-23 SK Hynix Inc. Resistive memory device and method relating to a read voltage in accordance with variable situations
KR20180026993A (ko) * 2016-09-05 2018-03-14 삼성전자주식회사 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 온도 조절 방법
KR20200106986A (ko) * 2018-02-09 2020-09-15 마이크론 테크놀로지, 인크. 온도에 기초한 빈도로 메모리 시스템의 메모리 셀에 대한 동작 수행
US11302385B2 (en) 2020-02-21 2022-04-12 SK Hynix Inc. Memory controller and method of operating the same
US11610632B2 (en) 2017-08-30 2023-03-21 Micron Technology, Inc. NAND temperature data management

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9384152B2 (en) 2010-02-23 2016-07-05 Rambus Inc. Coordinating memory operations using memory-device generated reference signals
US9501393B2 (en) * 2014-01-27 2016-11-22 Western Digital Technologies, Inc. Data storage system garbage collection based on at least one attribute
US10452596B2 (en) * 2015-10-29 2019-10-22 Micron Technology, Inc. Memory cells configured in multiple configuration modes
CN106205660B (zh) * 2016-07-18 2019-05-28 北京兆易创新科技股份有限公司 非易失性存储器时钟频率的调节方法及非易失性存储器
US9990964B1 (en) * 2016-12-05 2018-06-05 Samsung Electronics Co., Ltd. Storage device operating differently according to temperature of memory
KR102462385B1 (ko) * 2017-07-17 2022-11-04 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
JP2019057194A (ja) * 2017-09-22 2019-04-11 東芝メモリ株式会社 メモリシステム、及び不揮発性メモリの制御方法
TWI646548B (zh) * 2017-11-16 2019-01-01 慧榮科技股份有限公司 用來於一記憶裝置中進行刷新管理之方法以及記憶裝置及其控制器
US10339983B1 (en) * 2017-12-29 2019-07-02 Micron Technology, Inc. Temperature-based memory operations
US10671298B2 (en) 2018-03-06 2020-06-02 Micron Technology, Inc. Storing page write attributes
TWI659311B (zh) 2018-05-14 2019-05-11 慧榮科技股份有限公司 資料儲存系統以及非揮發式記憶體操作方法
US11061606B2 (en) * 2018-06-29 2021-07-13 Micron Technology, Inc. NAND temperature-aware operations
US10650875B2 (en) * 2018-08-21 2020-05-12 Spin Memory, Inc. System for a wide temperature range nonvolatile memory
KR20200031402A (ko) * 2018-09-14 2020-03-24 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법
US10572377B1 (en) 2018-09-19 2020-02-25 Micron Technology, Inc. Row hammer refresh for content addressable memory devices
JP2020144589A (ja) 2019-03-06 2020-09-10 キオクシア株式会社 メモリシステム
US11049545B2 (en) 2019-04-23 2021-06-29 Micron Technology, Inc. Methods for adjusting row hammer refresh rates and related memory devices and systems
US11031066B2 (en) * 2019-06-24 2021-06-08 Micron Technology, Inc. Methods for adjusting memory device refresh operations based on memory device temperature, and related memory devices and systems
US11056166B2 (en) * 2019-07-17 2021-07-06 Micron Technology, Inc. Performing a refresh operation based on a characteristic of a memory sub-system
EP3786804B1 (en) * 2019-08-30 2023-04-05 Canon Kabushiki Kaisha Recording apparatus, image capturing apparatus, control method, and storage medium
KR20210055376A (ko) * 2019-11-07 2021-05-17 에스케이하이닉스 주식회사 메모리 컨트롤러, 이를 포함하는 메모리 시스템 및 이의 동작 방법
CN112540633B (zh) * 2020-12-04 2021-08-31 珠海格力电器股份有限公司 一种温度控制方法、装置、设备及介质
US11630002B2 (en) * 2021-02-08 2023-04-18 Macronix International Co., Ltd. Method for sensing temperature in memory die, memory die and memory with temperature sensing function
KR20230021455A (ko) * 2021-08-05 2023-02-14 에스케이하이닉스 주식회사 메모리 장치 및 그 동작 방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050104104A1 (en) * 2003-11-18 2005-05-19 Halliburton Energy Services, Inc. High temperature memory device
JP5554974B2 (ja) * 2009-12-11 2014-07-23 ルネサスエレクトロニクス株式会社 データ処理用半導体装置
US20130290611A1 (en) * 2012-03-23 2013-10-31 Violin Memory Inc. Power management in a flash memory

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9875796B2 (en) 2016-02-18 2018-01-23 SK Hynix Inc. Resistive memory device and method relating to a read voltage in accordance with variable situations
US9990991B2 (en) 2016-02-18 2018-06-05 SK Hynix Inc. Resistive memory device and method relating to a read voltage in accordance with variable situations
KR20170111375A (ko) * 2016-03-28 2017-10-12 에스케이하이닉스 주식회사 메모리 시스템 및 그의 동작 방법
KR20180000594A (ko) * 2016-06-23 2018-01-03 에스케이하이닉스 주식회사 반도체장치 및 반도체시스템
KR20180026993A (ko) * 2016-09-05 2018-03-14 삼성전자주식회사 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 온도 조절 방법
US11610632B2 (en) 2017-08-30 2023-03-21 Micron Technology, Inc. NAND temperature data management
KR20200106986A (ko) * 2018-02-09 2020-09-15 마이크론 테크놀로지, 인크. 온도에 기초한 빈도로 메모리 시스템의 메모리 셀에 대한 동작 수행
US11302385B2 (en) 2020-02-21 2022-04-12 SK Hynix Inc. Memory controller and method of operating the same
US11756607B2 (en) 2020-02-21 2023-09-12 SK Hynix Inc. Memory controller and method of operating the same

Also Published As

Publication number Publication date
US20150301932A1 (en) 2015-10-22

Similar Documents

Publication Publication Date Title
KR20150121562A (ko) 비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작방법
CN112650442B (zh) 存储器系统、存储器控制器及操作方法
US20210142855A1 (en) Memory device, memory controller, memory system and method for operating memory system
US20210334000A1 (en) Memory system, memory controller and memory device for configuring super blocks
KR20210026431A (ko) 메모리 시스템, 메모리 컨트롤러 및 동작 방법
CN111177039A (zh) 数据存储设备、其操作方法及包括其的存储系统
CN112634963B (zh) 存储器系统、存储器控制器及其操作方法
US11321170B2 (en) Memory system, memory controller, and method for operating memory system
US20210382655A1 (en) Memory device, memory system, and operation method of memory device
KR20230072196A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
US10978161B2 (en) Memory system, memory controller and memory device
KR20220072153A (ko) 저장 시스템 및 저장 시스템의 동작 방법
KR20210028335A (ko) 메모리 시스템, 메모리 컨트롤러 및 동작 방법
US11709610B2 (en) Memory system, memory controller and operating method
US11854659B2 (en) Memory system and operating method determining target status read check period in thermal throttling mode
US11544204B2 (en) Memory system, memory controller and method for operating memory controller
US20240036741A1 (en) Memory system, memory controller and method for operating memory system, capable of determining target meta memory block on the basis of detected target state
US20220300187A1 (en) Memory system and operating method thereof
KR20220138759A (ko) 메모리 시스템 및 그 동작 방법
KR20230068712A (ko) 메모리 시스템의 성능 최적화 장치 및 그 방법
KR20220163661A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
KR20220117998A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
KR20220130389A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
KR20220139081A (ko) 비휘발성 메모리 장치에 데이터를 프로그램 및 검증하기 위한 장치 및 방법
KR20220101264A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid