KR102379167B1 - 레지스터 세트들을 포함하는 반도체 장치와 이를 포함하는 데이터 저장 장치 - Google Patents

레지스터 세트들을 포함하는 반도체 장치와 이를 포함하는 데이터 저장 장치 Download PDF

Info

Publication number
KR102379167B1
KR102379167B1 KR1020150148818A KR20150148818A KR102379167B1 KR 102379167 B1 KR102379167 B1 KR 102379167B1 KR 1020150148818 A KR1020150148818 A KR 1020150148818A KR 20150148818 A KR20150148818 A KR 20150148818A KR 102379167 B1 KR102379167 B1 KR 102379167B1
Authority
KR
South Korea
Prior art keywords
sets
memory
command
memory area
control logic
Prior art date
Application number
KR1020150148818A
Other languages
English (en)
Other versions
KR20170047999A (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 KR1020150148818A priority Critical patent/KR102379167B1/ko
Priority to US15/263,730 priority patent/US10114555B2/en
Publication of KR20170047999A publication Critical patent/KR20170047999A/ko
Application granted granted Critical
Publication of KR102379167B1 publication Critical patent/KR102379167B1/ko

Links

Images

Classifications

    • 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/0408Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors
    • 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/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/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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
    • 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/14Circuits for erasing electrically, e.g. erase 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/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/75Array having a NAND structure comprising, for example, memory cells in series or memory elements in series, a memory element being a memory cell in parallel with an access transistor

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)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)

Abstract

반도체 장치가 공개된다. 상기 반도체 장치는 제1메모리 영역과 제2메모리 영역을 포함하는 메모리 셀 어레이와, 각각이 파라미터 세트들 각각을 저장하는 레지스터 세트들과, 선택 신호에 응답하여 상기 레지스터 세트들 중에서 어느 하나를 활성화하고, 활성화된 어느 하나에 저장된 파라미터 세트를 이용하여 상기 제1메모리 영역에 대한 액세스 작동을 수행하는 컨트롤 로직 회로를 포함한다.

Description

레지스터 세트들을 포함하는 반도체 장치와 이를 포함하는 데이터 저장 장치 {SEMICONDUCTOR DEVICE HAVING REGISTER SETS AND DATA PROCESSING DEVICE INCLUDING THE SAME}
본 발명의 개념에 따른 실시 예는 반도체 장치에 관한 것으로, 특히 각각이 파라미터 세트들 각각을 저장하는 레지스터 세트들을 포함하는 반도체 장치와 이를 포함하는 데이터 저장 장치에 관한 것이다.
데이터 저장 장치에 대한 라이트 작동 또는 리드 작동이 수행될 때, 상기 데이터 저장 장치는 스펙(specification)의 요구에 따라 작동되어야 한다.
데이터 저장 장치는 라이트 작동 또는 리드 작동에 필요한 파라미터들을 저장하는 레지스터들을 포함한다. 따라서 상기 데이터 저장 장치는 상기 레지스터들에 저장된 파라미터들을 이용하여 상기 라이트 작동 또는 상기 리드 작동을 수행한다.
상기 레지스터들에 저장된 파라미터들 중에서 적어도 일부를 변경할 필요가 있을 때, 상기 적어도 일부는 변경되어야 한다. 이때, 데이터 저장 장치를 제어하는 컨트롤러가 변경될 파라미터들 각각에 해당하는 변경 명령들 각각을 상기 데이터 저장 장치로 전송하면, 상기 데이터 저장 장치는 상기 변경 명령들 각각에 따라 상기 파라미터들 각각을 레지스터들 각각에 설정한다.
본 발명이 이루고자 하는 기술적인 과제는 라이트 명령 또는 리드 명령을 수행하기 위해 레지스터들에 저장된 파라미터들을 변경할 필요가 있을 때라도 컨트롤러로부터 변경될 파라미터와 변경 명령을 수신하지 않고도 상기 파라미터들을 변경하는 효과를 나타내는 반도체 장치와 이를 포함하는 데이터 저장 장치를 제공하는 것이다.
본 발명의 실시 예에 따른 반도체 장치는 제1메모리 영역과 제2메모리 영역을 포함하는 메모리 셀 어레이와, 각각이 파라미터 세트들 각각을 저장하는 레지스터 세트들과, 선택 신호에 응답하여 상기 레지스터 세트들 중에서 어느 하나를 활성화하고, 활성화된 어느 하나에 저장된 파라미터 세트를 이용하여 상기 제1메모리 영역에 대한 액세스 작동을 수행하는 컨트롤 로직 회로를 포함한다. 상기 파라미터 세트들 각각은 라이트 명령, 리드 명령 또는 이레이즈 명령과 관련된 복수의 파라미터들을 포함한다.
실시 예들에 따라, 상기 컨트롤 로직 회로는 상기 제2메모리 영역에 저장된 상기 파라미터 세트들 각각을 상기 레지스터 세트들 각각으로 로드한다. 실시 예들에 따라, 상기 컨트롤 로직 회로는, 상기 반도체 장치가 부트될 때 또는 초기화될 때, 상기 제2메모리 영역에 저장된 상기 파라미터 세트들 각각을 상기 레지스터 세트들 각각으로 로드한다.
실시 예들에 따라, 상기 컨트롤 로직 회로는 컨트롤러로부터 상기 파라미터 세트들 각각을 수신하여 상기 레지스터 세트들 각각에 저장한다. 상기 컨트롤 로직 회로는 상기 레지스터 세트들 각각에 저장된 상기 파라미터 세트들 각각을 상기 제2메모리 영역에 저장한다.
실시 예들에 따라, 상기 컨트롤 로직 회로는 컨트롤러로부터 명령과 상기 파라미터 세트들 각각을 수신하고, 상기 명령에 응답하여 상기 파라미터 세트들 각각을 상기 레지스터 세트들 각각에 저장한다.
상기 컨트롤 로직 회로는 상기 선택 신호를 포함하는 명령에 기초하여 상기 레지스터 세트들 중에서 상기 어느 하나를 선택하고 활성화한다.
상기 반도체 장치는 NAND-타입 플래시 메모리 장치이고, 상기 메모리 셀 어레이는 복수의 메모리 셀들을 포함하고, 상기 복수의 메모리 셀들 각각은 3차원 메모리 셀이다.
본 발명의 실시 예에 따른 데이터 저장 장치는 반도체 장치와, 상기 반도체 장치를 제어하는 컨트롤러를 포함한다. 상기 반도체 장치는 제1메모리 영역과 제2메모리 영역을 포함하는 메모리 셀 어레이와, 각각이 파라미터 세트들 각각을 저장하는 레지스터 세트들과, 상기 컨트롤러로부터 출력된 선택 신호에 응답하여 상기 레지스터 세트들 중에서 어느 하나를 활성화하고, 상기 컨트롤러로부터 출력된 제1명령과 활성화된 어느 하나에 저장된 파라미터 세트를 이용하여 상기 제1메모리 영역(341)을 액세스하는 컨트롤 로직 회로를 포함한다.
실시 예들에 따라, 상기 컨트롤 로직 회로는, 상기 데이터 저장 장치가 부트될 때 또는 초기화될 때, 상기 제2메모리 영역에 저장된 상기 파라미터 세트들 각각을 상기 레지스터 세트들 각각으로 로드한다.
실시 예들에 따라, 상기 컨트롤러는 상기 파라미터 세트들 각각을 생성하고, 상기 컨트롤 로직 회로는 상기 컨트롤러로부터 상기 파라미터 세트들 각각을 수신하여 상기 레지스터 세트들 각각에 저장한다.
상기 컨트롤러는, 상기 제1메모리 영역의 특성과 상기 제1메모리 영역에 대한 액세스 빈도 중에서 적어도 하나에 기초하여, 상기 선택 신호를 생성한다. 상기 제1메모리 영역의 특성은 상기 제1메모리 영역에 포함된 메모리 셀들 각각의 상태 또는 작동 온도를 포함하고, 상기 액세스 빈도는 상기 제1메모리 영역에 대한 라이트 작동의 횟수 또는 리드 작동의 횟수를 포함한다. 상기 선택 신호는 상기 제1명령에 포함되거나 상기 제1명령과 다른 제2명령에 포함된다.
본 발명의 실시 예에 따른 반도체 장치는 각각이 미리 설정된 파라미터 세트들 각각을 저장하는 복수의 레지스터 세트들을 포함하는 효과가 있다.
상기 반도체 장치는, 라이트 명령, 리드 명령, 또는 이레이즈 명령을 수행하기 위해 해당 파라미터들의 변경이 필요한 경우, 복수의 레지스터 세트들 중에서 어느 하나에 저장된 파라미터들을 사용할 수 있는 효과가 있다.
따라서, 파라미터들 각각의 변경이 필요한 경우라도, 상기 반도체 장치는 컨트롤러로부터 변경될 파라미터와 상기 변경될 파라미터마다 생성되는 변경 명령을 수신하지 않고도 상기 파라미터들 각각을 변경하는 효과가 있다.
상기 컨트롤러는 변경될 파라미터마다 변경 명령을 반도체 장치로 전송하지 않아도 되는 효과가 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 실시 예에 따른 데이터 처리 시스템의 블록도를 나타낸다.
도 2는 도 1에 도시된 저장 매체의 블록도를 나타낸다.
도 3은 본 발명의 실시 예에 따른 레지스터 세트별로 저장되는 파라미터 세트를 나타낸다.
도 4는 도 2에 도시된 메모리 셀 어레이에 포함된 NAND 플래시 메모리 셀들을 나타낸다.
도 5는 리드 작동에 사용되는 본 발명의 실시 예에 따른 파라미터 세트들을 나타낸다.
도 6은 라이트 작동에 사용되는 본 발명의 실시 예에 따른 파라미터 세트들을 나타낸다.
도 7은 선택 신호를 포함하는 본 발명의 실시 예에 따른 명령의 포맷을 나타낸다.
도 8은 도 1에 도시된 데이터 처리 시스템의 작동을 설명하는 데이터 플로우이다.
도 9는 도 1에 도시된 데이터 처리 시스템의 작동을 설명하는 데이터 플로우이다.
도 10은 도 1에 도시된 데이터 처리 시스템의 작동을 설명하는 데이터 플로우이다.
도 11은 도 2에 도시된 메모리 셀들의 상태들을 나타낸다.
도 12는 도 1에 도시된 데이터 처리 시스템의 작동을 설명하는 플로우 차트이다.
도 13은 도 1에 도시된 데이터 처리 시스템의 작동을 설명하는 플로우 차트이다.
도 14는 도 1에 도시된 데이터 처리 시스템의 작동을 설명하는 플로우 차트이다.
도 15는 본 발명의 실시 예에 따른 데이터 처리 시스템의 블록도를 나타낸다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 벗어나지 않은 채, 제1구성 요소는 제2구성 요소로 명명될 수 있고 유사하게 제2구성 요소는 제1구성 요소로도 명명될 수 있다.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 나타낸다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 명세서에 첨부된 도면들을 참조하여 본 발명의 실시 예들을 상세히 설명한다.
본 발명의 개념에 따른 반도체 장치(또는 저장 매체)는 복수의 레지스터 세트들(도 2의 333-1~333-n)을 포함하고, 각 레지스터 세트는 복수의 레지스터들을 포함할 수 있다. 각 레지스터 세트는 미리 설정된 복수의 파라미터들을 저장할 수 있다. 상기 미리 설정된 복수의 파라미터들은 액세스 작동(예컨대, 라이트 작동, 리드 작동 또는 이레이즈 작동)에 필요한 DC 및 AC 특성들, 예컨대 작동 전압들 및/또는 작동 전류들을 포함할 수 있다. 비록, 본 명세서에서는 파라미터들이 작동 전압들로서 설명되나 본 발명의 기술적 사상에 이에 한정되는 것은 아니다.
복수의 레지스터 세트들(도 2의 333-1~333-n) 중에서 어느 하나를 선택하는 선택 신호는 독립적인 명령일 수도 있고, 라이트 명령, 리드 명령, 또는 이레이즈 명령에 포함될 수 있다. 또한, 복수의 레지스터 세트들(도 2의 333-1~333-n) 각각에 저장될 수 있는 파라미터 세트들 각각은 저장 매체 컨트롤러로부터 전송될 수도 있고 저장 매체로부터 로드될 수도 있다.
도 1은 본 발명의 실시 예에 따른 데이터 처리 시스템의 블록도를 나타낸다. 도 1을 참조하면, 데이터 처리 시스템(100)은 인터페이스(110)를 통해 호스트 장치 (200)와 신호들을 주고받는 데이터 저장 장치(300)를 포함할 수 있다.
데이터 처리 시스템(100)은 PC(personal computer), 워크스테이션, 데이터 센터, 인터넷 데이터 센터(internet data center(IDC)), DAS(direct attached storage), SAN(storage area network), NAS(network attached storage) 또는 모바일 장치로 구현될 수 있으나 이에 한정되는 것은 아니다.
상기 모바일 장치는 랩탑 컴퓨터, 이동 전화기, 스마트폰, 태블릿 PC, PDA (personal digital assistant), EDA(enterprise digital assistant), 디지털 스틸 카메라(digital still camera), 디지털 비디오 카메라(digital video camera), PMP (portable multimedia player), PND(personal navigation device 또는 portable navigation device), 휴대용 게임 콘솔(handheld game console), 모바일 인터넷 장치(mobile internet device(MID)), 웨어러블 컴퓨터, 사물 인터넷(internet of things(IoT)) 장치, 만물 인터넷(internet of everything(IoE)) 장치, 드론 (drone), 또는 e-북(e-book)으로 구현될 수 있다.
실시 예들에 따라, 인터페이스(110)는 SATA(serial advanced technology attachment) 인터페이스, SATAe(SATA express) 인터페이스, SAS(serial attached small computer system interface(SCSI)) 인터페이스, PCIe(peripheral component interconnect express) 인터페이스, NVMe(non-volatile memory Express) 인터페이스, AHCI(advanced host controller interface) 인터페이스, 또는 멀티미디어 카드 (multimedia card(MMC))인터페이스로 구현될 수 있으나 이에 한정되는 것은 아니다. 실시 예들에 따라, 인터페이스(110)는 전기 신호들 또는 광신호들을 전송할 수 있다.
호스트 장치(200)는 인터페이스(110)를 통해 데이터 저장 장치(300)의 데이터 처리 작동(예컨대, 라이트 작동 또는 리드 작동 등)을 제어할 수 있다. 호스트(200)는 호스트 컨트롤러를 의미할 수 있다.
실시 예들에 따라, 호스트 장치(200)는 집적 회로(integrated circuit(IC)), 마더보드(motherboard), 시스템 온 칩(system on chip(SoC)), 애플리케이션 프로세서 (application processor(AP)), 모바일(mobile) AP, 웹(web) 서버, 데이터 서버, 또는 데이터베이스 서버로 구현될 수 있으나 이에 한정되는 것은 아니다.
데이터 저장 장치(300)는 저장 매체 컨트롤러(310), 제1메모리(320), 및 복수의 제2메모리들(330)을 포함할 수 있다. 복수의 제2메모리들(330) 각각은 저장 매체를 의미할 수 있다.
데이터 저장 장치(300)는 플래시-기반 스토리지(flash based storage)로 구현될 수 있으나 이에 한정되는 것은 아니다. 예컨대, 데이터 저장 장치(300)는 SSD (solid-state drive or solid-state disk), 임베디드 SSD(embedded SSD(eSSD)), 유니버셜 플래시 스토리지(universal flash storage(UFS)), 멀티미디어 카드 (multimedia card(MMC)), 임베디드 MMC(embedded MMC(eMMC)) 또는 매니지드 (managed) NAND로 구현될 수 있으나 이에 한정되는 것은 아니다. 예컨대, 플래시-기반 스토리지는 NAND-타입 플래시 메모리 장치 또는 NOR-타입 플래시 메모리 장치로 구현될 수 있다.
실시 예들에 따라, 데이터 저장 장치(300)는 하드 디스크 드라이브(hard disk drive(HDD)), PRAM(phase change RAM) 장치, MRAM(magnetoresistive RAM) 장치, STT-MRAM(spin-transfer torque MRAM) 장치, FRAM(ferroelectric RAM) 장치 또는 RRAM(resistive RAM) 장치로 구현될 수 있으나 이에 한정되는 것은 아니다.
저장 매체 컨트롤러(310)는 호스트 장치(200), 제1메모리(320), 및 복수의 제2메모리들(330) 사이에서 주고받는 데이터를 제어할 수 있다.
저장 매체 컨트롤러(310)는 버스(311), CPU(313), 호스트 인터페이스(315), 버퍼 매니저(317), DMA 컨트롤러(319), 및 메모리 컨트롤러(321)를 포함할 수 있다.
CPU(313), 버퍼 매니저(317), 및 메모리 컨트롤러(321)는 버스(311)를 통해 서로 통신할 수 있다. CPU(313)는 구성 요소들(315, 317, 319, 및 321) 각각의 작동을 제어할 수 있다. CPU(313)는 하나 또는 그 이상의 코어들(cores)을 포함할 수 있다. 상기 코어들은 동일한 반도체 기판을 공유할 수도 있고, 별개의 반도체 칩으로 구현될 수 있다.
호스트 인터페이스(315)는 인터페이스(110)와 버퍼 매니저(317) 사이에서 주고받는 신호들의 프로토콜을 변경할 수 있다.
버퍼 매니저(317)는, CPU(313)의 제어에 따라, 제1메모리(320)에 데이터를 라이트하거나 제1메모리(320)로부터 데이터를 리드할 수 있다. 버퍼 매니저(317)는 제1메모리(320)에 대한 라이트 작동과 리드 작동을 제어할 수 있는 버퍼 컨트롤러라고도 불릴 수 있다.
버퍼 매니저(317)와 메모리 컨트롤러(321)는 DMA 컨트롤러(319)를 통해 데이터를 주고받을 수 있다. 예컨대, DMA 컨트롤러(319)는 버퍼 매니저(317)로부터 데이터를 리드하고, 리드된 데이터를 메모리 컨트롤러(321)로 전송할 수 있고, 메모리 컨트롤러(321)로부터 전송된 데이터를 버퍼 매니저(317)로 전송할 수 있다.
메모리 컨트롤러(321)는, CPU(313) 또는 DMA 컨트롤러(319)의 제어에 따라, 각 채널(CH1과 CH2)에 접속된 저장 매체들(330)의 데이터 처리 작동(예컨대, 라이트 작동, 리드 작동, 또는 이레이즈 작동)을 제어할 수 있다.
실시 예들에 따라, 메모리 컨트롤러(321)는 SATA 인터페이스, SATAe 인터페이스, SAS 인터페이스, PCIe 인터페이스, NVMe 인터페이스, AHCI 인터페이스, MMC 인터페이스, NAND-타입 플래시 메모리 인터페이스, 또는 NOR-타입 플래시 메모리 인터페이스로 구현될 수 있으나 이에 한정되는 것은 아니다. 저장 매체들(330)이 NAND-타입 플래시 메모리 장치들일 때, 메모리 컨트롤러(321)는 플래시 메모리 컨트롤러(flash memory controller(FMC))로 구현될 수 있다. 저장 매체들(330) 각각은 반도체 장치 또는 메모리 장치를 의미할 수 있다.
제1메모리(320)는, 버퍼 매니저(317)의 제어에 따라, 데이터를 저장하거나 데이터를 출력할 수 있다. 실시 예들에 따라, 제1메모리(320)는 버퍼 메모리, RAM (random access memory), SRAM(static RAM), 또는 DRAM(dynamic RAM)으로 구현될 수 있으나 이에 한정되는 것은 아니다.
제1메모리(320)는 저장 매체들(330)에 대한 논리 어드레스-물리 어드레스 변환을 위한 매핑 테이블(mapping table)을 저장하는 제1영역과, 캐시(cache)의 기능을 수행할 수 있는 제2영역을 포함할 수 있으나 이에 한정되는 것은 아니다. 예컨대, CPU(313)에 의해 실행되는 FTL(flash translation layer)은 상기 제1영역에 저장된 매핑 테이블을 이용하여 논리 어드레스-물리 어드레스 변환을 수행할 수 있다.
실시 예에 따라, 저장 매체 컨트롤러(310)와 제1메모리(320) 각각이 서로 다른 반도체 칩(chip) 또는 반도체 패키지로 구현될 때, 저장 매체 컨트롤러(310)와 제1메모리(320)는 하나의 패키지, 예컨대, 패키지-온-패키지(package-on-package (PoP)), 멀티-칩 패키지 (multi-chip package (MCP)) 또는 시스템-인 패키지(system-in package(SiP))로 구현될 수 있으나 이에 한정되는 것은 아니다.
저장 매체들(330)은 불휘발성 메모리들, 예컨대, NAND-타입 플래시 메모리들로 구현될 수 있다. 제1그룹의 저장 매체들은 제1채널(CH1)에 연결될 수 있고, 제2그룹의 저장 매체들은 제2채널(CH2)에 연결될 수 있다.
본 명세서에서 채널(channel)은 메모리 컨트롤러(321)와 각 그룹의 저장 매체들 사이에 존재하는 독립적인 데이터 패스(data path)를 의미할 수 있다. 상기 데이터 패스는 데이터 및/또는 제어 신호들을 전송할 수 있는 전송 라인들을 포함할 수 있다. 웨이(way)는 하나의 채널을 공유하는 하나 또는 그 이상의 저장 매체들의 그룹을 의미할 수 있다.
도 2는 도 1에 도시된 저장 매체의 블록도를 나타낸다. 도 1과 도 2를 참조하면, 저장 매체(330), 예컨대, NAND-타입 플래시 메모리는 컨트롤 로직 회로 (331), 복수의 레지스터 세트들(333-1~333-n), 및 메모리 셀 어레이(340)를 포함할 수 있다.
컨트롤 로직 회로(331)는 선택 신호에 응답하여 레지스터 세트들(333-1~333-n) 중에서 어느 하나를 선택적으로 활성화하고, 활성화된 어느 하나에 저장된 파라미터 세트를 이용하여 제1메모리 영역(341)에 대한 액세스 작동을 수행할 수 있다.
컨트롤 로직 회로(331)는 메모리 셀 어레이(340)에 대한 라이트 작동, 리드 작동, 또는 이레이즈 작동을 제어할 수 있다. 또한, 컨트롤 로직 회로(331)는 메모리 컨트롤러(321) 또는 제2메모리 영역(343)으로부터 전송된 각 파라미터 세트를 각 레지스터 세트(333-1~333-n)에 라이트하는 작동과 각 레지스터 세트(333-1~333-n)에 저장된 각 파라미터 세트를 제2메모리 영역(343)에 라이트하는 작동(또는 인젝션(injection)하는 작동)을 수행할 수 있다.
레지스터 세트들(333-1~333-n) 각각은 복수의 레지스터들을 포함하고, 파라미터 세트들 각각을 저장할 수 있다.
실시 예들에 따라, 컨트롤 로직 회로(331)는 제2메모리 영역(343)에 저장된 파라미터 세트들(343-1~343-n) 각각을 레지스터 세트들(333-1~333-n) 각각으로 로드 (load)할 수 있다. 좀더 구체적으로, 컨트롤 로직 회로(331)는, 저장 매체(330)가 부트(boot)될 때 또는 초기화될 때, 제2메모리 영역(343)에 저장된 파라미터 세트들 각각(343-1~343-n)을 레지스터 세트들((333-1~333-n) 각각으로 로드할 수 있다.
제1파라미터 세트들(PARAMETERS1, 343-1)은 제1레지스터 세트(333-1)로 로드될 수 있고, 제2파라미터 세트들(PARAMETERS2, 343-2)은 제2레지스터 세트(333-2)로 로드될 수 있고, 제n파라미터 세트들(PARAMETERSn, 343-n)은 제n레지스터 세트 (333-n)로 로드될 수 있다. 예컨대, 제1파라미터 세트들(PARAMETERS1, 343-1)은 제1명령과 관련된 파라미터들(또는 파라미터 값들)을 포함할 수 있고, 제2파라미터 세트들(PARAMETERS2, 343-2)은 제2명령과 관련된 파라미터들(또는 파라미터 값들)을 포함할 수 있고, 제n파라미터 세트들(PARAMETERSn, 343-n)은 제n명령과 관련된 파라미터들(또는 파라미터 값들)을 포함할 수 있다. 각 명령은 라이트 명령, 리드 명령, 또는 이레이즈 명령을 의미할 수 있으나 이에 한정되는 것은 아니다.
실시 예들에 따라, 컨트롤 로직 회로(331)는 메모리 컨트롤러(321)로부터 파라미터 세트들 각각을 수신하여 레지스터 세트들(333-1~333-n) 각각에 저장할 수 있다. 그 후, 컨트롤 로직 회로(331)는 레지스터 세트들(333-1~333-n) 각각에 저장된 상기 파라미터 세트들 각각을 제2메모리 영역(343)에 저장할 수 있다.
예컨대, 저장 매체(330)를 테스트할 때, 컨트롤 로직 회로(331)는 메모리 컨트롤러(321)와 동일 또는 유사한 기능을 수행하는 테스트 장치로부터 파라미터 세트들 각각을 수신하여 레지스터 세트들(333-1~333-n) 각각에 저장할 수 있다. 저장 매체(330)에 대한 테스트가 완료되고 저장 매체(330)를 팔기 위해, 제조업자는, 컨트롤 로직 회로(331)를 이용하여, 레지스터 세트들(333-1~333-n) 각각에 저장된 상기 파라미터 세트들 각각을 제2메모리 영역(343)에 저장할 수 있다.
컨트롤 로직 회로(331)는 테스트 장치 또는 메모리 컨트롤러(321)로부터 명령(CMD)과 파라미터 세트들 각각을 수신하고, 명령(CMD)에 응답하여 상기 파라미터 세트들 각각을 레지스터 세트들(333-1~333-n) 각각에 저장할 수 있다.
컨트롤 로직 회로(331)는 선택 신호에 기초하여 레지스터 세트들(333-1~333-n) 중에서 어느 하나를 선택적으로 활성화시킬 수 있다. 실시 예들에 따라, 상기 선택 신호는 독립적인 전용 명령으로 구현될 수 있고 전용 명령에 포함될 수 있다.
즉, (1) 인젝션(injection)하는 작동을 위한 명령, (2) 레지스터 세트들 (333-1~333-n) 중에서 어느 하나를 선택적으로 활성화시키는 명령, 또는 (3) 테스트 장치 또는 메모리 컨트롤러(321)로부터 출력된 파라미터 세트들 각각을 레지스터 세트들(333-1~333-n) 각각에 저장하는 명령은 전용 명령으로 구현될 수 있다.
메모리 셀 어레이(340)는 제1메모리 영역(341)과 제2메모리 영역(343)을 포함할 수 있다. 설명의 편의를 위해, 제1메모리 영역(341)은 사용자 데이터 또는 메타데이터를 저장할 수 있고, 제2메모리 영역(343)은 복수의 파라미터 세트들(343-1~343-n; n은 3 이상의 자연수)을 저장할 수 있다고 가정한다.
메모리 셀 어레이(340)는 2차원 또는 3차원 메모리 셀 어레이로 구현될 수 있다. 상기 3차원 메모리 셀 어레이는 실리콘 기판 위(on or above)에 배치된 액티브 영역을 갖는 메모리 셀들의 어레이의 하나 또는 그 이상의 물리적인 레벨들 내에서 모노리식하게(monolithically) 형성되고, 상기 메모리 셀들의 작동에 관련된 회로를 포함할 수 있다. 상기 회로는 상기 기판의 내부 또는 위(on or above)에 형성될 수 있다.
모노리식(monolithic) 이라는 용어는 어레이의 각 레벨의 레이어들(layers)이 상기 어레이의 각 하부 레벨(each underlying level)의 레이어들에 직접 증착 (directly deposited )되는 것을 의미한다. 3차원 메모리 셀 어레이는 적어도 하나의 메모리 셀이 다른 메모리 셀의 위에 위치하도록 수직으로 배향되는(vertically oriented) 수직 NAND 스트링을 포함할 수 있다. 상기 적어도 하나의 메모리 셀은 전하 트랩 레이어(charge trap layer)를 포함할 수 있다.
도 3은 본 발명의 실시 예에 따른 레지스터 세트별로 저장되는 파라미터 세트를 나타내고, 도 5는 리드 작동에 사용되는 본 발명의 실시 예에 따른 파라미터 세트들을 나타내고, 도 6은 라이트 작동에 사용되는 본 발명의 실시 예에 따른 파라미터 세트들을 나타낸다.
도 2, 도 3, 도 5, 및 도 6을 참조하면, 제1파라미터 세트(PARAMETERS1, 343-1)는 제1리드 파라미터 세트(Para_RV1)와 제1라이트 파라미터 세트(Para_PV1)를 포함하고, 제2파라미터 세트(PARAMETERS2, 343-2)는 제2리드 파라미터 세트 (Para_RV2)와 제2라이트 파라미터 세트(Para_PV2)를 포함하고, 제n파라미터 세트 (PARAMETERSn, 343-n)는 제n리드 파라미터 세트(Para_RVn)와 제n라이트 파라미터 세트(Para_PVn)를 포함한다고 가정한다.
도 4는 도 2에 도시된 메모리 셀 어레이에 포함된 NAND 플래시 메모리 셀들을 나타낸다. 도 4에서는 설명의 편의를 위해 두 개의 NAND 스트링들(STR1과 STR2)을 도시한다.
제1스트링(STR1)은 제1비트 라인(BL1)에 연결된 제1스트링 선택 트랜지스터와, 상기 제1스트링 선택 트랜지스터와 제1접지 선택 트랜지스터 사이에 직렬로 연결된 제1플래시 메모리 셀들을 포함할 수 있다. 상기 제1스트링 선택 트랜지스터의 게이트는 스트링 선택 라인(string select line(SSL))에 연결되고, 상기 제1접지 선택 트랜지스터의 게이트는 접지 선택 라인(ground select line(GSL))에 연결되고, 상기 제1접지 선택 트랜지스터는 제m플래시 메모리 셀과 공통 소스 라인 (common source line(CSL)) 사이에 연결된다.
제2스트링(STR2)은 제2비트 라인(BL2)에 연결된 제2스트링 선택 트랜지스터와, 상기 제2스트링 선택 트랜지스터와 제2접지 선택 트랜지스터 사이에 직렬로 연결된 제2플래시 메모리 셀들을 포함할 수 있다. 상기 제2스트링 선택 트랜지스터의 게이트는 SSL에 연결되고, 상기 제1접지 선택 트랜지스터의 게이트는 GSL에 연결되고, 상기 제1접지 선택 트랜지스터는 제m플래시 메모리 셀과 CSL 사이에 연결된다.
제1비트 라인(BL1)은 선택된 비트 라인이고, 제2비트 라인(BL2)은 선택되지 않은 비트 라인이고, 워드 라인들(WL1~WLm - 1)은 선택되지 않은 워드 라인들이고, 워드 라인(WLm)은 선택된 워드 라인이고, 플래시 메모리 셀(SMC)은 선택된 플래시 메모리 셀이고, 벌크(BULK)은 제1스트링(STR1)과 제2스트링(STR2)을 포함하는 벌크라고 가정한다.
각 파라미터 세트(343-1~343-n)의 각 리드 파라미터 세트(Para_RV1, Para_RV2, ..., Para_RVn)은 도 5의 제1테이블(TABLE1)에 예시적으로 도시된 바와 같다. Vread1은 제1리드 전압을 의미하고, Vread2은 제2리드 전압을 의미하고, Vreadn은 제n리드 전압을 의미하고, Vb1은 선택된 비트 라인으로 공급되는 제1비트 라인 전압을 의미하고, Vb2은 상기 선택된 비트 라인으로 공급되는 제2비트 라인 전압을 의미하고, Vbn은 상기 선택된 비트 라인으로 공급되는 제n비트 라인 전압을 의미한다고 가정한다.
또한, 각 파라미터 세트(343-1~343-n)의 각 라이트 파라미터 세트(Para_PV1, Para_PV2, ..., Para_PVn)는 도 6의 제2테이블(TABLE2)에 예시적으로 도시된 바와 같다.
Vpgm1은 제1라이트 전압(또는 프로그램 전압)을 의미하고, Vpgm2는 제2라이트 전압을 의미하고, Vpgmn은 제n라이트 전압을 의미하고, Vpass1은 제1패스 전압을 의미하고, Vpass2는 제2패스 전압을 의미하고, Vpassm은 제m패스 전압을 의미하고, Vcc은 선택되지 않은 비트 라인과 SSL로 공급되는 전압을 의미하고, Vcs1은 CSL로 공급되는 제1CSL 전압을 의미하고, Vcs2은 상기 CSL로 공급되는 제2CSL 전압을 의미하고, Vcsn은 상기 CSL로 공급되는 제nCSL 전압을 의미한다고 가정한다.
제1테이블(TABLE1)과 제2테이블(TABLE2) 각각에 도시된 전압들은 설명의 편의를 위한 전압들로서 본 발명의 기술적 사상이 이에 한정되는 것은 아니다. 또한, 이레이즈 작동을 위한 전압들이 본 명세서에서는 설명되지 않았으나, 상기 이레이즈 작동을 위한 전압들은 제1테이블(TABLE1) 및/또는 제2테이블(TABLE2)로부터 유추될 수 있다.
도 7은 선택 신호를 포함하는 본 발명의 실시 예에 따른 명령의 포맷을 나타낸다. 도 2와 도 7을 참조하면, 명령(CMD)은 명령 아규먼트(CMD Arguments)와 선택 신호(SLB)를 포함할 수 있다. 명령 아규먼트(CMD Arguments)는 명령(CMD)이 라이트 명령인지, 리드 명령 인지, 또는 이레이즈 명령인지를 나타내는 비트들을 포함할 수 있고, 선택 신호(SLB)는 복수의 레지스터 세트들(333-1~333-n) 중에서 어느 하나를 선택적으로 활성화하는 위한 비트들을 포함할 수 있다. 예컨대, 복수의 레지스터 세트들(333-1~333-n)이 4개일 때, 상기 비트들은 2-비트들로 구현될 수 있다. 실시 예들에 따라, 복수의 레지스터 세트들(333-1~333-n) 중에서 어느 하나는 디폴트로 설정된 파라미터들을 저장할 수 있다.
도 7에 도시된 명령(CMD)은 복수의 레지스터 세트들(333-1~333-n) 중에서 어느 하나를 선택적으로 활성화하는 전용 명령일 수 있다.
선택 신호(SLB)가 종래의 명령에 추가되면, 컨트롤 로직 회로(331)는 상기 명령에 따라 제1메모리 영역(341)에 대한 라이트 작동, 리드 작동, 또는 이레이즈 작동을 수행할 때, 상기 명령에 포함된 선택 신호(SLB)에 따라 복수의 레지스터 세트들(333-1~333-n) 중에서 어느 하나를 선택적으로 활성화할 수 있다. 따라서, 컨트롤 로직 회로(331)는, 상기 명령과 선택적으로 활성화된 레지스터 세트에 저장된 파라미터들을 이용하여, 제1메모리 영역(341)에 대한 상기 라이트 작동, 상기 리드 작동, 또는 상기 이레이즈 작동을 수행할 수 있다.
도 8은 도 1에 도시된 데이터 처리 시스템의 작동을 설명하는 데이터 플로우이다. 도 1부터 도 8을 참조하면, 호스트 장치(200)는 제1파라미터 세트 (PARAMETERS1, 간단히 PARA1)와 제1파라미터 세트(PARA1)의 저장과 관련된 라이트 요청을 저장 매체 컨트롤러(310)로 전송할 수 있다(S110-1). 저장 매체 컨트롤러 (310)는 상기 라이트 요청을 해석하고, 제1파라미터 세트(PARA1)와 상기 라이트 요청에 관련된 명령을 저장 매체(330)로 전송할 수 있다(S112-1). 컨트롤 로직 회로 (331)는 상기 명령에 기초하여 제1파라미터 세트(PARA1)를 제1레지스터 세트(333-1)에 라이트하는 작동(WOP1)을 수행할 수 있다(S114-1).
호스트 장치(200)는 제2파라미터 세트(PARAMETERS2, 간단히 PARA2)와 제2파라미터 세트(PARA2)의 저장과 관련된 라이트 요청을 저장 매체 컨트롤러(310)로 전송할 수 있다(S110-2). 저장 매체 컨트롤러(310)는 상기 라이트 요청을 해석하고, 제2파라미터 세트(PARA2)와 상기 라이트 요청에 관련된 명령을 저장 매체(330)로 전송할 수 있다(S112-2). 컨트롤 로직 회로(331)는 상기 명령에 기초하여 제2파라미터 세트(PARA2)를 제2레지스터 세트(333-2)에 라이트하는 작동(WOP2)을 수행할 수 있다(S114-2).
호스트 장치(200)는 제n파라미터 세트(PARAMETERSn, 간단히 PARAn)와 제n파라미터 세트(PARAn)의 저장과 관련된 라이트 요청을 저장 매체 컨트롤러(310)로 전송할 수 있다(S110-n). 저장 매체 컨트롤러(310)는 상기 라이트 요청을 해석하고, 제n파라미터 세트(PARAn)와 상기 라이트 요청에 관련된 명령을 저장 매체(330)로 전송할 수 있다(S112-n). 컨트롤 로직 회로(331)는 상기 명령에 기초하여 제n파라미터 세트(PARAn)를 제n레지스터 세트(333-n)에 라이트하는 작동(WOPn)을 수행할 수 있다(S114-n). 상술한 바와 같이, 호스트 장치(200)는 테스트 장치를 의미할 수도 있다.
호스트 장치(200)는 요청(REQ)을 저장 매체 컨트롤러(310)로 전송할 수 있다 (S120). 요청(REQ)은 라이트 작동을 위한 라이트 요청, 리드 작동을 위한 리드 요청 또는 이레이즈 작동을 위한 이레이즈 요청일 수 있다. 도 7에 도시된 바와 같이, 요청(REQ)은 선택 신호를 포함할 수 있다.
저장 매체 컨트롤러(310)의 CPU(313)는 요청(REQ)을 해석하고, 선택 신호 (SLB)를 포함하는 명령(CMD)을 저장 매체(330)로 전송할 수 있다(S122). 컨트롤 로직 회로(331)는 선택 신호(SLB)를 이용하여 복수의 레지스터 세트들(333-1~333-n) 중에서 어느 하나를 선택적으로 활성화한다(S124).
컨트롤 로직 회로(331)는 선택된 레지스터 세트에 저장된 파라미터들과 명령 (CMD)에 기초하여 제1메모리 영역(341)에 대한 액세스 작동을 수행할 수 있다 (S126). 여기서 레지스터 세트의 활성화는 상기 레지스터 세트에 저장된 파라미터들이 이용될 수 있는 상태를 의미할 수 있다.
예컨대, 명령(CMD)이 리드 명령이고, 선택 신호(SLB)에 기초하여 제1파라미터 세트(343-1)가 선택 또는 활성화되면, 컨트롤 로직 회로(331)는 도 5의 제1테이블(TABLE1)에 표시된 파라미터들(예컨대, 0, Vread1, 및 Vb1)을 이용하여 제1메모리 영역(341)에 대한 리드 작동을 수행할 수 있다. 여기서, 0은 접지 전압 또는 0V를 의미한다.
예컨대, 명령(CMD)이 라이트 명령이고, 선택 신호(SLB)에 기초하여 제n파라미터 세트(343-n)가 선택 또는 활성화되면, 컨트롤 로직 회로(331)는 도 6의 제2테이블(TABLE2)에 표시된 파라미터들(예컨대, Vpgmn, Vpassn, 0, Vcc, 및 Vcsn)을 이용하여 제1메모리 영역(341)에 대한 라이트 작동을 수행할 수 있다.
도 9는 도 1에 도시된 데이터 처리 시스템의 작동을 설명하는 데이터 플로우이다. 도 1부터 도 9를 참조하면, 제2메모리 영역(343)은 파라미터 세트들(343-1~343-n)을 저장할 수 있다. 실시 예들에 따라, 저장 매체(330)에 대한 테스트가 완료된 후, 각 레지스터 세트(333-1~333-n)에 저장된 각 파라미터 세트는 컨트롤 로직 회로(331)의 제어에 따라 제2메모리 영역(343)에 저장 또는 인젝션될 수 있다. 실시 예들에 따라, 컨트롤 로직 회로(331)는 호스트 장치(200)로부터 전송된 각 파라미터 세트를 제2메모리 영역(343)에 라이트할 수 있다.
저장 매체(330)가 부트 또는 초기화될 때(S200), 컨트롤 로직 회로(331)는 제2메모리 영역(343)에 저장된 각 파라미터 세트(343-1~343-n)를 각 레지스터 세트 (333-1~333-n)로 로드할 수 있다(S205). 호스트 장치(200)는 요청(REQ)을 저장 매체 컨트롤러(310)로 전송할 수 있다 (S210).
저장 매체 컨트롤러(310)의 CPU(313)는 요청(REQ)을 해석하고(S215), 선택 신호(SLB)를 포함하는 명령(CMD)을 생성하고 명령(CMD)을 저장 매체(330)로 전송할 수 있다(S220). 컨트롤 로직 회로(331)는 선택 신호(SLB)를 이용하여 복수의 레지스터 세트들(333-1~333-n) 중에서 어느 하나를 선택적으로 활성화한다(S225).
컨트롤 로직 회로(331)는 선택된 레지스터 세트에 저장된 파라미터들과 명령 (CMD)에 기초하여 제1메모리 영역(341)에 대한 액세스 작동을 수행할 수 있다 (S230).
도 10은 도 1에 도시된 데이터 처리 시스템의 작동을 설명하는 데이터 플로우이다. 도 1부터 도 10을 참조하면, 호스트 장치(200)는 복수의 요청들(REQS)을 저장 매체 컨트롤러(310)로 전송할 수 있다(S300). 복수의 요청들(REQS)은 라이트 요청, 리드 요청, 및 이레이즈 요청을 포함할 수 있다. 복수의 요청들(REQS)은 제2메모리 영역(343)에 대한 라이트 요청의 빈도, 리드 요청의 빈도, 및 이레이즈 요청의 빈도를 판단하기 위한 과거의 요청들일 수 있다.
저장 매체 컨트롤러(310)의 CPU(313)는 복수의 요청들(REQS)에 기초하여 제1메모리 영역(341)의 특성과 제1메모리 영역(341)에 대한 액세스 빈도를 판단할 수 있다(S305). 예컨대, 복수의 요청들(REQS)이 로그(또는 로그 파일)로 저장될 때, CPU(313)는 상기 로그를 이용하여 제1메모리 영역(341)의 특성과 제1메모리 영역 (341)에 대한 액세스 빈도를 판단할 수 있다(S305).
CPU(313)는, 판단 결과에 기초하여, 선택 신호(SLB)를 포함하는 명령(CMD)을 생성하고, 명령(CMD)을 저장 매체(330)로 전송할 수 있다(S310). 컨트롤 로직 회로 (331)는 선택 신호(SLB)를 이용하여 복수의 레지스터 세트들(333-1~333-n) 중에서 어느 하나를 선택적으로 활성화한다(S315). 컨트롤 로직 회로(331)는 선택된 레지스터 세트에 저장된 파라미터들과 명령 (CMD)에 기초하여 제1메모리 영역(341)에 대한 액세스 작동을 수행할 수 있다 (S320).
도 11은 도 2에 도시된 메모리 셀들의 상태들을 나타낸다. 도 1, 도 2, 도 10, 및 도 11을 참조하면, CPU(313)는 제1메모리 영역(341)에 대한 리드 작동들의 결과, 및/또는 라이트 작동들의 결과에 기초하여 제1메모리 영역(341)에 포함된 메모리 셀들의 상태 분포를 도 11의 (a)로 판단할 수 있다. 도 11의 (a)와 (b)에서, E는 이레이즈 상태를 나타내고, P1, P2, 및 P3 각각은 프로그램 상태를 나타낸다.
이때, CPU(313)는 제1레지스터 세트(333-1)를 선택적으로 활성화하기 위한 선택 신호(SLB)를 생성하고, 선택 신호(SLB)를 포함하는 명령(CMD)을 저장 매체 (330)로 전송할 수 있다. 컨트롤 로직 회로(331)는 선택 신호(SLB)를 이용하여 복수의 레지스터 세트들(333-1~333-n) 중에서 제1레지스터 세트(333-1)를 선택적으로 활성화한다.
컨트롤 로직 회로(331)는 제1레지스터 세트(333-1)에 저장된 파라미터 세트 (PARAMETERS1)와 명령(CMD)에 기초하여 제1메모리 영역(341)에 대한 액세스 작동을 수행할 수 있다.
CPU(313)가 제1메모리 영역(341)에 대한 리드 작동들의 결과, 및/또는 라이트 작동들의 결과에 기초하여 제1메모리 영역(341)에 포함된 메모리 셀들의 상태 분포를 도 11의 (b)로 판단하면, CPU(313)는 제2레지스터 세트(333-2)를 선택적으로 활성화하기 위한 선택 신호(SLB)를 생성하고, 선택 신호(SLB)를 포함하는 명령 (CMD)을 저장 매체(330)로 전송할 수 있다. 컨트롤 로직 회로(331)는 선택 신호 (SLB)를 이용하여 복수의 레지스터 세트들(333-1~333-n) 중에서 제2레지스터 세트 (333-2)를 선택적으로 활성화한다.
컨트롤 로직 회로(331)는 제2레지스터 세트(333-2)에 저장된 파라미터 세트 (PARAMETERS2)와 명령(CMD)에 기초하여 제1메모리 영역(341)에 대한 액세스 작동을 수행할 수 있다.
도 12는 도 1에 도시된 데이터 처리 시스템의 작동을 설명하는 플로우 차트이다. 도 1부터 도 7, 및 도 12를 참조하면, 컨트롤 로직 회로(331)는 하나의 레지스터 세트(예컨대, 333-2)를 선택하는 명령(CMD)을 수신할 수 있다(S400). 컨트롤 로직 회로(331)는 명령(CMD)에 해당하는 레지스터 세트(예컨대, 333-2)에 파라미터들이 저장되어 있는지를 판단할 수 있다(S405).
명령(CMD)에 해당하는 레지스터 세트(예컨대, 333-2)에 파라미터들이 저장되어 있을 때(S405의 YES), 컨트롤 로직 회로(331)는 명령(CMD)에 해당하는 레지스터 세트(예컨대, 333-2)를 활성화시킨다(S415).
그러나 명령(CMD)에 해당하는 레지스터 세트(예컨대, 333-2)에 파라미터들이 저장되어 있지 않을 때(S405의 NO), 컨트롤 로직 회로(331)는 제2메모리 영역(343)에 저장된 파라미터 세트(343-2)를 리드하고, 리드된 파라미터 세트(343-2)를 레지스터 세트(예컨대, 333-2)로 로드(load)할 수 있다(S410). 컨트롤 로직 회로(331)는 명령(CMD)에 해당하는 레지스터 세트(예컨대, 333-2)를 활성화시킨다(S415).
컨트롤 로직 회로(331)는 제1메모리 영역(341)에 대한 명령(예컨대, 라이트 명령, 리드 명령, 또는 이레이즈 명령)을 수신하고, 파라미터 세트(343-2)를 이용하여 제1메모리 영역(341)에 대한 상기 명령을 실행할 수 있다.
도 13은 도 1에 도시된 데이터 처리 시스템의 작동을 설명하는 플로우 차트이다. 도 1부터 도 7, 및 도 13을 참조하면, 컨트롤 로직 회로(331)는 선택 신호를 포함하는 리드 명령 또는 라이트 명령(CMD)을 수신할 수 있다(S500).
컨트롤 로직 회로(331)는 명령(CMD)에 포함된 상기 선택 신호를 이용하여 복수의 레지스터 세트들(333-1~333-n) 중에서 어느 하나의 레지스터 세트(예컨대, 333-2)를 선택할 수 있다(S505).
컨트롤 로직 회로(331)는 선택된 레지스터 세트(예컨대, 333-2)에 파라미터들(343-2)이 저장되어 있는지를 판단할 수 있다(S405). 명령(CMD)에 해당하는 레지스터 세트(예컨대, 333-2)에 파라미터들(343-2)이 저장되어 있을 때(S405의 YES), 컨트롤 로직 회로(331)는 명령(CMD)에 해당하는 레지스터 세트(예컨대, 333-2)를 활성화시킨다(S415).
그러나 명령(CMD)에 해당하는 레지스터 세트(예컨대, 333-2)에 파라미터들 (343-2)이 저장되어 있지 않을 때(S405의 NO), 컨트롤 로직 회로(331)는 제2메모리 영역(343)에 저장된 파라미터 세트(343-2)를 리드하고, 리드된 파라미터 세트(343-2)를 레지스터 세트(예컨대, 333-2)로 로드(load)할 수 있다(S410). 컨트롤 로직 회로(331)는 명령(CMD)에 해당하는 레지스터 세트(예컨대, 333-2)를 활성화시킨다(S415).
컨트롤 로직 회로(331)는, 명령(CMD)과 파라미터 세트(343-2)에 기초하여, 제1메모리 영역(341)에 대한 액세스 작동(예컨대, 라이트 작동, 리드 작동, 또는 이레이즈 작동)을 수행할 수 있다(S420).
도 14는 도 1에 도시된 데이터 처리 시스템의 작동을 설명하는 플로우 차트이다. 도 1부터 도 7, 및 도 14를 참조하면, 저장 매체 컨트롤러(310)는 메모리 셀 어레이(340)에 저장된 또는 저장될 데이터의 특성 및/또는 저장 매체(330)의 주변 환경을 판단할 수 있다(S600).
예컨대, 저장 매체 컨트롤러(310)의 CPU(313)은 제1메모리 영역(341)에 저장된 데이터가 핫 데이터(hot date)인지 콜드 데이터(cold data)인지를 판단할 수 있다. 핫 데이터는 액세스 빈도가 상대적으로 높은 데이터이고, 콜드 데이터는 액세스 빈도가 상대적으로 높은 데이터라고 정의한다.
CPU(313)은 제1메모리 영역(341)에 대한 라이트 작동의 횟수 또는 프로그램/이레이즈 사이클(program/erase(P/E) cycles)을 판단할 수 있다. CPU(313)은 선택 신호를 포함하는 명령(CMD)을 생성하고, 명령(CMD)을 컨트롤 로직 회로(331)로 전송할 수 있다(S605).
컨트롤 로직 회로(331)는 명령(CMD)에 포함된 상기 선택 신호를 이용하여 복수의 레지스터 세트들(333-1~333-n) 중에서 어느 하나의 레지스터 세트를 선택할 수 있다(S610).
컨트롤 로직 회로(331)는, 명령(CMD)과 선택된 레지스터 세트에 저장된 파라미터들을 이용하여, 제1메모리 영역(341)에 대한 액세스 작동(예컨대, 라이트 작동, 리드 작동, 또는 이레이즈 작동)을 수행할 수 있다(S615).
도 15는 본 발명의 실시 예에 따른 데이터 처리 시스템의 블록도를 나타낸다. 도 1과 도 15를 참조하면, 데이터 처리 시스템(100A)은 인터페이스(110A)를 통해 신호들을 주고받는 호스트 장치(200)와 메모리 카드(300A)를 포함할 수 있다.
인터페이스(110A)는 MMC 인터페이스, eMMC 인터페이스, 또는 UFS 인터페이스로 구현될 수 있다. 메모리 카드(300A)는 데이터 저장 장치의 일 실시 예로서 MMC, eMMC, 또는 UFS로 구현될 수 있고, 카드 인터페이스(350), 저장 매체 컨트롤러(310), 및 저장 매체(330)를 포함할 수 있다.
카드 인터페이스(350)는 인터페이스(110A)와 저장 매체 컨트롤러(310) 사이에서 주고받는 신호들의 전송을 제어할 수 있다. 저장 매체 컨트롤러(310)는 카드 인터페이스(350)와 저장 매체(330) 사이에서 주고받는 신호들의 전송을 제어할 수 있다. 메모리 카드(300A)는 제1메모리(320)를 포함하지 않으므로, 저장 매체 컨트롤러(310)의 버퍼 매니저(317)가 제1메모리(320)에 관련된 액세스를 수행하지 않을 것을 제외하면, 도 1의 저장 매체 컨트롤러(310)의 구조와 작동은 도 15의 저장 매체 컨트롤러(310)의 구조와 작동과 동일 또는 유사하다.
본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
100, 100A; 데이터 처리 시스템
200: 호스트 장치
300, 300A: 데이터 저장 장치
310; 저장 매체 컨트롤러
313: CPU
321: 메모리 컨트롤러
331: 컨트롤 로직 회로
340: 메모리 셀 어레이
341: 제1메모리 영역
343: 제2메모리 영역
333-1~333-n: 복수의 레지스터 세트들
343-1~343-n: 파라미터 세트들

Claims (10)

  1. 제1메모리 영역과 제2메모리 영역을 포함하는 메모리 셀 어레이;
    각각이 파라미터 세트들 각각을 저장하는 레지스터 세트들; 및
    상기 레지스터 세트들 각각에 상기 파라미터 세트들 각각을 로드한 후에, 선택 신호에 응답하여 상기 레지스터 세트들 중에서 어느 하나를 선택하고, 상기 레지스터 세트들 중에서 선택된 어느 하나에 저장된 파라미터 세트를 이용하여 상기 제1메모리 영역에 대한 액세스 작동을 수행하는 컨트롤 로직 회로를 포함하는 반도체 장치.
  2. 제1항에 있어서,
    상기 파라미터 세트들 각각은 라이트 명령, 리드 명령 또는 이레이즈 명령과 관련된 복수의 파라미터들을 포함하는 반도체 장치.
  3. 제1항에 있어서, 상기 컨트롤 로직 회로는,
    상기 제2메모리 영역에 저장된 상기 파라미터 세트들 각각을 상기 레지스터 세트들 각각으로 로드하고,
    상기 반도체 장치가 부트될 때 또는 초기화될 때, 상기 제2메모리 영역에 저장된 상기 파라미터 세트들 각각을 상기 레지스터 세트들 각각으로 로드하는 반도체 장치.
  4. 제1항에 있어서, 상기 컨트롤 로직 회로는,
    컨트롤러로부터 상기 파라미터 세트들 각각을 수신하여 상기 레지스터 세트들 각각에 저장하는 반도체 장치.
  5. 제4항에 있어서, 상기 컨트롤 로직 회로는,
    상기 레지스터 세트들 각각에 저장된 상기 파라미터 세트들 각각을 상기 제2메모리 영역에 저장하는 반도체 장치.
  6. 제1항에 있어서, 상기 컨트롤 로직 회로는,
    컨트롤러로부터 명령과 상기 파라미터 세트들 각각을 수신하고, 상기 명령에 응답하여 상기 파라미터 세트들 각각을 상기 레지스터 세트들 각각에 저장하는 반도체 장치.
  7. 제1항에 있어서, 상기 컨트롤 로직 회로는,
    상기 선택 신호를 포함하는 명령에 기초하여 상기 레지스터 세트들 중에서 상기 어느 하나를 선택하고 활성화하는 반도체 장치.
  8. 제1항에 있어서,
    상기 반도체 장치는 NAND-타입 플래시 메모리 장치이고,
    상기 메모리 셀 어레이는 복수의 메모리 셀들을 포함하고, 상기 복수의 메모리 셀들 각각은 3차원 메모리 셀인 반도체 장치.
  9. 반도체 장치; 및
    상기 반도체 장치를 제어하는 컨트롤러를 포함하고,
    상기 반도체 장치는,
    제1메모리 영역과 제2메모리 영역을 포함하는 메모리 셀 어레이;
    각각이 파라미터 세트들 각각을 저장하는 레지스터 세트들; 및
    상기 레지스터 세트들 각각에 상기 파라미터 세트들 각각을 로드한 후에, 상기 컨트롤러로부터 출력된 선택 신호에 응답하여 상기 레지스터 세트들 중에서 어느 하나를 선택하고, 상기 컨트롤러로부터 출력된 제1명령과 상기 레지스터 세트들 중에서 선택된 어느 하나에 저장된 파라미터 세트를 이용하여 상기 제1메모리 영역을 액세스하는 컨트롤 로직 회로를 포함하는 데이터 저장 장치.
  10. 제9항에 있어서,
    상기 컨트롤러는, 상기 제1메모리 영역의 특성과 상기 제1메모리 영역에 대한 액세스 빈도 중에서 적어도 하나에 기초하여, 상기 선택 신호를 생성하고,
    상기 제1메모리 영역의 특성은 상기 제1메모리 영역에 포함된 메모리 셀들 각각의 상태 또는 작동 온도를 포함하고,
    상기 액세스 빈도는 상기 제1메모리 영역에 대한 라이트 작동의 횟수 또는 리드 작동의 횟수를 포함하는 데이터 저장 장치.
KR1020150148818A 2015-10-26 2015-10-26 레지스터 세트들을 포함하는 반도체 장치와 이를 포함하는 데이터 저장 장치 KR102379167B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150148818A KR102379167B1 (ko) 2015-10-26 2015-10-26 레지스터 세트들을 포함하는 반도체 장치와 이를 포함하는 데이터 저장 장치
US15/263,730 US10114555B2 (en) 2015-10-26 2016-09-13 Semiconductor device having register sets and data processing device including the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150148818A KR102379167B1 (ko) 2015-10-26 2015-10-26 레지스터 세트들을 포함하는 반도체 장치와 이를 포함하는 데이터 저장 장치

Publications (2)

Publication Number Publication Date
KR20170047999A KR20170047999A (ko) 2017-05-08
KR102379167B1 true KR102379167B1 (ko) 2022-03-25

Family

ID=58558647

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150148818A KR102379167B1 (ko) 2015-10-26 2015-10-26 레지스터 세트들을 포함하는 반도체 장치와 이를 포함하는 데이터 저장 장치

Country Status (2)

Country Link
US (1) US10114555B2 (ko)
KR (1) KR102379167B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019040470A (ja) * 2017-08-25 2019-03-14 東芝メモリ株式会社 メモリシステム
CN113707192B (zh) * 2021-09-01 2023-02-28 合肥兆芯电子有限公司 存储器温控调频方法及存储器温控调频系统
KR102509646B1 (ko) * 2021-11-15 2023-03-15 삼성전자주식회사 스토리지 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050226050A1 (en) 2004-03-24 2005-10-13 Crosby Robert M Apparatus and method for programming flash memory units using customized parameters
US20080092015A1 (en) 2006-09-28 2008-04-17 Yigal Brandman Nonvolatile memory with adaptive operation
US20090147582A1 (en) 2007-12-05 2009-06-11 Micron Technology, Inc. Adjusting program and erase voltages in a memory device
US20090273977A1 (en) 2008-02-22 2009-11-05 Doo Gon Kim Multilayered nonvolatile memory with adaptive control
US20100332729A1 (en) * 2009-06-30 2010-12-30 Sandisk Il Ltd. Memory operations using location-based parameters

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7761653B2 (en) 1999-08-04 2010-07-20 Super Talent Electronics, Inc. Flash micro-controller with shadow boot-loader SRAM for dual-device booting of micro-controller and host
US6925558B2 (en) 2001-03-29 2005-08-02 Intel Corporation System and method for selecting and loading configuration data into a register through the use of a first and second reset signal
JP2003242787A (ja) * 2002-02-14 2003-08-29 Mitsubishi Electric Corp 不揮発性半導体記憶装置
US6912160B2 (en) 2003-03-11 2005-06-28 Fujitsu Limited Nonvolatile semiconductor memory device
KR101226685B1 (ko) 2007-11-08 2013-01-25 삼성전자주식회사 수직형 반도체 소자 및 그 제조 방법.
US8661184B2 (en) 2010-01-27 2014-02-25 Fusion-Io, Inc. Managing non-volatile media
KR101691092B1 (ko) 2010-08-26 2016-12-30 삼성전자주식회사 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템
US8553466B2 (en) 2010-03-04 2013-10-08 Samsung Electronics Co., Ltd. Non-volatile memory device, erasing method thereof, and memory system including the same
US9536970B2 (en) 2010-03-26 2017-01-03 Samsung Electronics Co., Ltd. Three-dimensional semiconductor memory devices and methods of fabricating the same
US8332728B2 (en) 2010-04-02 2012-12-11 Skymedi Corporation Method and apparatus of generating a soft value for a memory device
KR101682666B1 (ko) 2010-08-11 2016-12-07 삼성전자주식회사 비휘발성 메모리 장치, 그것의 채널 부스팅 방법, 그것의 프로그램 방법 및 그것을 포함하는 메모리 시스템
US20140156812A1 (en) 2012-12-05 2014-06-05 Fortinet, Inc. Customized configuration settings for a network appliance
US9251053B2 (en) 2013-03-14 2016-02-02 SanDisk Technologies, Inc. Managing configuration parameters for a non-volatile medium
US9330787B2 (en) * 2013-03-18 2016-05-03 Kabushiki Kaisha Toshiba Memory system and memory controller
US20150194196A1 (en) * 2014-01-09 2015-07-09 Sunplus Technology Co., Ltd. Memory system with high performance and high power efficiency and control method of the same

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050226050A1 (en) 2004-03-24 2005-10-13 Crosby Robert M Apparatus and method for programming flash memory units using customized parameters
US20080092015A1 (en) 2006-09-28 2008-04-17 Yigal Brandman Nonvolatile memory with adaptive operation
US20090147582A1 (en) 2007-12-05 2009-06-11 Micron Technology, Inc. Adjusting program and erase voltages in a memory device
US20090273977A1 (en) 2008-02-22 2009-11-05 Doo Gon Kim Multilayered nonvolatile memory with adaptive control
US20100332729A1 (en) * 2009-06-30 2010-12-30 Sandisk Il Ltd. Memory operations using location-based parameters

Also Published As

Publication number Publication date
US20170115880A1 (en) 2017-04-27
KR20170047999A (ko) 2017-05-08
US10114555B2 (en) 2018-10-30

Similar Documents

Publication Publication Date Title
US11074961B2 (en) Method of performing internal processing operation of memory device
US11775220B2 (en) Storage device, host device controlling storage device, and operation method of storage device
KR102527992B1 (ko) 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템
US9767903B2 (en) Nonvolatile memory module having dual-port DRAM
US9977610B2 (en) Data storage device to swap addresses and operating method thereof
US9996282B2 (en) Method of operating data storage device and method of operating system including the same
US10943183B2 (en) Electronics device performing software training on memory channel and memory channel training method thereof
US20160203091A1 (en) Memory controller and memory system including the same
KR102554416B1 (ko) 메모리 장치의 내부 상태 출력 장치 및 이를 적용하는 메모리 시스템
US11733882B2 (en) Memory device and method of controlling power of the same
US9799402B2 (en) Nonvolatile memory device and program method thereof
KR102506135B1 (ko) 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템
US10929064B2 (en) Methods of operating mixed device type memory modules, and processors and systems configured for operating the same
KR102253592B1 (ko) 초기 문턱 전압 분포 변화를 보상할 수 있는 데이터 저장 장치, 이의 작동 방법, 및 이를 포함하는 데이터 처리 시스템
US10001827B2 (en) Power management method using fabric network and fabric network system using power management method
US20150220275A1 (en) Method for operating nonvolatile storage device and method for operating computing device accessing nonvolatile storage device
KR102379167B1 (ko) 레지스터 세트들을 포함하는 반도체 장치와 이를 포함하는 데이터 저장 장치
KR20160144577A (ko) 불휘발성 메모리 모듈 및 그것의 포함하는 사용자 장치
KR20200037049A (ko) 스토리지 장치
US10331366B2 (en) Method of operating data storage device and method of operating system including the same
US20160291897A1 (en) Data storage device and devices having the same
KR20210154401A (ko) 스토리지 장치 및 그 동작 방법
US10510429B2 (en) Memory device performing test on memory cell array and method of operating the same
KR20210017109A (ko) 스토리지 장치
US20170031633A1 (en) Method of operating object-oriented data storage device and method of operating system including the same

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