KR20210077796A - 메모리 서브-블록을 정의하기 위한 시스템 및 방법 - Google Patents

메모리 서브-블록을 정의하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20210077796A
KR20210077796A KR1020217018484A KR20217018484A KR20210077796A KR 20210077796 A KR20210077796 A KR 20210077796A KR 1020217018484 A KR1020217018484 A KR 1020217018484A KR 20217018484 A KR20217018484 A KR 20217018484A KR 20210077796 A KR20210077796 A KR 20210077796A
Authority
KR
South Korea
Prior art keywords
memory
group
memory block
sub
bit lines
Prior art date
Application number
KR1020217018484A
Other languages
English (en)
Other versions
KR102661778B1 (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 샌디스크 테크놀로지스 엘엘씨
Publication of KR20210077796A publication Critical patent/KR20210077796A/ko
Application granted granted Critical
Publication of KR102661778B1 publication Critical patent/KR102661778B1/ko

Links

Images

Classifications

    • 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
    • G06F3/064Management of blocks
    • 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/08Address circuits; Decoders; Word-line control circuits
    • 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
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation 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/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/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/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/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/24Bit-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/06Address interface arrangements, e.g. address buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/14Word line organisation; Word line lay-out

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Human Computer Interaction (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

메모리 블록 관리를 위한 방법은 3차원 메모리 어레이의 메모리 블록들에 대응하는 비트 라인들의 제1 그룹을 식별하는 단계를 포함한다. 본 방법은 또한 각각의 비트 라인 바이어싱 트랜지스터들을 사용하여 비트 라인들의 제1 그룹을 제1 전압으로 바이어싱하는 단계를 포함한다. 본 방법은 또한 각각의 메모리 블록에 대해, 비트 라인들의 제1 그룹과 교차하는 각각의 메모리 블록의 워드 라인들에 대응하는 각각의 서브-메모리 블록들을 식별하는 단계를 포함한다. 본 방법은 또한 비트 라인들의 제1 그룹과 연관된 각각의 개별 서브-메모리 블록에 대해 메모리 셀들의 메모리 어드레스들을 논리적으로 그룹화하는 단계를 포함한다.

Description

메모리 서브-블록을 정의하기 위한 시스템 및 방법
관련 출원의 상호 참조
본 출원은 2019년 12월 5일자로 출원된, 발명의 명칭이 "메모리-서브블록을 정의하기 위한 시스템 및 방법"인 미국 정규 출원 제16/704,729호에 대한 우선권 및 그 이익을 주장하며, 그 내용이 본원에 참조로 통합된다.
기술분야
본 개시는 메모리 시스템에 관한 것으로, 특히 비트 라인을 그룹화함으로써 메모리 서브-블록을 정의하기 위한 시스템 및 방법에 관한 것이다.
비휘발성 메모리 시스템은 외부 전원을 요구하지 않으면서 저장된 정보를 유지하는 유형의 메모리이다. 비휘발성 메모리는 다양한 전자 디바이스 및 독립형 메모리 디바이스에 널리 사용된다. 예를 들어, 비휘발성 메모리는 랩탑, 디지털 오디오 플레이어, 디지털 카메라, 스마트 폰, 비디오 게임, 과학 장비, 산업 로봇, 의료 전자 기기, 솔리드-스테이트 드라이브, USB 드라이브, 메모리 카드 등에서 볼 수 있다. 비휘발성 메모리는 전자적으로 프로그래밍/재프로그래밍 및 소거될 수 있다.
비휘발성 메모리 시스템의 예는 NAND 플래시 또는 NOR 플래시와 같은 플래시 메모리를 포함한다. NAND 플래시 메모리 구조는 통상적으로 2개의 선택 게이트(예를 들어, 드레인측 선택 게이트 및 소스측 선택 게이트)와 직렬로 그리고 이들 사이에 복수의 메모리 셀 트랜지스터(예를 들어, 플로팅-게이트 트랜지스터 또는 전하 포획 트랜지스터)를 배열한다. 직렬의 메모리 셀 트랜지스터 및 선택 게이트는 NAND 스트링으로 지칭될 수 있다. NAND 플래시 메모리는 비트 당 비용을 감소시키기 위해 스케일링될 수 있다.
본 개시는 일반적으로 메모리 관리 시스템 및 방법에 관한 것이다.
개시된 실시예의 양태는 메모리 블록 관리를 위한 방법이다. 본 방법은 3차원 메모리 어레이의 메모리 블록들에 대응하는 비트 라인들의 제1 그룹을 식별하는 단계를 포함한다. 본 방법은 또한 각각의 비트 라인 바이어싱 트랜지스터들을 사용하여 비트 라인들의 제1 그룹을 제1 전압으로 바이어싱하는 단계를 포함한다. 본 방법은 또한 각각의 메모리 블록에 대해, 비트 라인들의 제1 그룹과 교차하는 각각의 메모리 블록의 워드 라인들에 대응하는 각각의 서브-메모리 블록들을 식별하는 단계를 포함한다. 본 방법은 또한 비트 라인들의 제1 그룹과 연관된 각각의 개별 서브-메모리 블록에 대해 메모리 셀들의 메모리 어드레스들을 논리적으로 그룹화하는 단계를 포함한다.
개시된 실시예의 다른 양태는 버스 인터페이스 및 프로세서를 포함하는 제어기이다. 버스 인터페이스는 3차원 메모리 어레이의 복수의 메모리 블록과 통신한다. 프로세서는: 메모리 블록들에 대응하는 비트 라인들의 제1 그룹을 식별하고; 각각의 비트 라인 바이어싱 트랜지스터들을 사용하여 비트 라인들의 제1 그룹을 제1 전압으로 바이어싱하고 각각의 메모리 블록에 대해, 비트 라인들의 제1 그룹과 교차하는 각각의 메모리 블록의 워드 라인들에 대응하는 각각의 서브-메모리 블록들을 식별하고; 그리고 비트 라인들의 제1 그룹과 연관된 각각의 개별 서브-메모리 블록에 대해 메모리 셀들의 메모리 어드레스들을 논리적으로 그룹화하도록 구성된다.
개시된 실시예의 다른 양태는 메모리 시스템의 서브-메모리 블록들을 정의하기 위한 방법이다. 본 방법은 3차원 메모리 어레이의 메모리 블록들에 대응하는 복수의 비트 라인 그룹을 식별하는 단계를 포함한다. 본 방법은 또한 복수의 비트 라인 그룹의 각각의 개별 비트 라인 그룹에 대응하는 비트 라인 바이어싱 트랜지스터들을 사용하여 복수의 비트 라인 그룹의 각각의 비트 라인 그룹을 각각의 전압으로 바이어싱하는 단계를 포함한다. 본 방법은 또한 각각의 메모리 블록에 대해, 복수의 비트 라인 그룹의 비트 라인 그룹들 중 각각의 그룹들과 교차하는 각각의 메모리 블록의 워드 라인들에 대응하는 각각의 서브-메모리 블록들을 식별하는 단계를 포함한다. 본 방법은 또한 각각의 개별 서브-메모리 블록에 대해 메모리 셀들의 메모리 어드레스들을 논리적으로 그룹화하는 단계를 포함한다.
본 개시의 이러한 양태 및 다른 양태가 이하의 실시예의 상세한 설명, 첨부된 청구 범위 및 첨부 도면에서 개시된다.
본 개시는 첨부 도면과 함께 읽을 때 이하의 상세한 발명으로부터 가장 잘 이해된다. 통상적인 관행에 따라, 도면의 다양한 특징부는 축척에 맞지 않는다는 것이 강조된다. 반대로, 다양한 특징부의 치수는 명료함을 위해 임의로 확대 또는 축소된다.
도 1a 및 도 1b는 일반적으로 본 개시의 원리에 따른 예시적인 비휘발성 메모리 시스템의 블록도를 나타낸다.
도 2a는 일반적으로 본 개시의 원리에 따른 제어기의 예시적인 구성 요소의 블록도를 나타낸다.
도 2b는 일반적으로 본 개시의 원리에 따른 비휘발성 메모리 저장 시스템의 예시적인 구성 요소의 블록도를 나타낸다.
도 3은 일반적으로 본 개시의 원리에 따른 메모리 블록을 나타낸다.
도 4은 일반적으로 본 개시의 원리에 따른 메모리 어레이를 나타낸다.
도 5는 본 개시의 원리에 따른 서브-메모리 블록 정의 방법을 나타내는 흐름도이다.
도 6a 및 도 6b는 일반적으로 본 개시의 원리에 따른 다양한 메모리 디바이스에 대한 다양한 메모리 소거 동작을 나타낸다.
도 7a 및 도 7b는 일반적으로 본 개시의 원리에 따른 다양한 메모리 디바이스를 나타낸다.
도 8은 일반적으로 본 개시의 원리에 따른 메모리 디바이스에 대한 소거 동작을 나타낸다.
이하의 논의는 본 발명의 다양한 실시예에 관한 것이다. 이들 실시예 중 하나 이상이 바람직할 수 있지만, 개시된 실시예는 청구항을 포함한 본 개시의 범위를 제한하는 것으로 해석되거나 달리 사용되어서는 안된다. 또한, 본 기술 분야의 통상의 기술자는 이하의 설명이 광범위한 응용을 가지며, 임의의 실시예에 대한 논의는 단지 당해 실시예를 예시하는 것으로 의도되고, 청구항을 포함한 본 개시의 범위가 해당 실시예로 제한된다고 시사하도록 의도되지 않는다는 것을 이해할 것이다.
설명된 바와 같이, 비휘발성 메모리 시스템은 외부 전원을 요구하지 않으면서 저장된 정보를 유지하는 유형의 메모리이다. 비휘발성 메모리는 다양한 전자 디바이스 및 독립형 메모리 디바이스에 널리 사용된다. 예를 들어, 비휘발성 메모리는 랩탑, 디지털 오디오 플레이어, 디지털 카메라, 스마트 폰, 비디오 게임, 과학 장비, 산업 로봇, 의료 전자 기기, 솔리드-스테이트 드라이브, USB 드라이브, 메모리 카드 등에서 볼 수 있다. 비휘발성 메모리는 전자적으로 프로그래밍/재프로그래밍 및 소거될 수 있다.
비휘발성 메모리 시스템의 예는 NAND 플래시 또는 NOR 플래시와 같은 플래시 메모리를 포함한다. NAND 플래시 메모리 구조는 통상적으로 2개의 선택 게이트(예를 들어, 드레인측 선택 게이트 및 소스측 선택 게이트)와 직렬로 그리고 이들 사이에 복수의 메모리 셀 트랜지스터(예를 들어, 플로팅-게이트 트랜지스터 또는 전하 포획 트랜지스터)를 배열한다. 직렬의 메모리 셀 트랜지스터 및 선택 게이트는 NAND 스트링으로 지칭될 수 있다. NAND 플래시 메모리는 비트 당 비용을 감소시키기 위해 스케일링될 수 있다. 그러나, 프로세스 기하 형태가 축소됨에 따라, 많은 설계 및 프로세스 문제가 제시된다. 이러한 문제는 프로세스, 전압 및 온도에 대한 트랜지스터 특성에 있어서의 증가된 가변성을 포함한다.
통상적인 메모리 시스템에서, 메모리 시스템의 메모리 블록과 통신하는 제어기는, 판독 동작, 프로그램 동작, 소거 동작 등과 같은 동작을 수행한다. 이러한 동작은 메모리 블록 레벨에서 제어기에 의해 수행된다. 예를 들어, 제어기는 후속 메모리 블록에 계속되기 전에 전체 메모리 블록에 대해 소거 동작을 수행할 수 있다. 따라서, (예를 들어, 더 큰 메모리 블록 크기를 갖는) 3차원 메모리 시스템의 메모리 블록에 대한 제어기에 의한 이러한 동작의 수행은 상대적으로 비효율적일 수 있다. 예를 들어, 폐영역 회수(garbage collection)가 불편할 수 있고, 프로그램(예를 들어, 기록) 동작의 수행은 불필요한 사이클 등으로 인해 증폭될 수 있다. 또한, 선택되지 않은 메모리 블록에 대한 소거 금지는 통상적으로 상대적으로 높은 전압을 사용한다. (예를 들어, 메모리 시스템 내의 고전압 생성 동안 낮은 효율로 인해) 이러한 고전압은 더 높은 전류 소비를 야기할 수 있다.
따라서, 메모리 시스템의 대응하는 메모리 블록보다 더 작은 크기를 갖는 서브-메모리 블록을 정의하는, 본원에 설명된 바와 같은 시스템 및 방법이 바람직할 수 있다. 일부 실시예에서, 본원에 설명된 시스템 및 방법은 상이한 에러 전압 신호 제어를 갖는 워드 라인을 사용하여 메모리 어레이의 x-방향을 따라 서브-메모리 블록을 정의할 수 있다. 본원에 설명된 시스템 및 방법은 메모리 어레이의 선택된 비트 라인 그룹에 대응하는 바이어싱 트랜지스터를 사용하여 에러 전압을 제어할 수 있다. 본원에 설명된 시스템 및 방법은 메모리 블록을 복수의 비트 라인 그룹으로 분할할 수 있다. 예를 들어, 16-킬로바이트 페이지는 2개의 8 킬로바이트 비트 라인 그룹, 4개의 4 킬로바이트 비트 라인 그룹, 8개의 2 킬로바이트 비트 라인 그룹, 또는 16개의 1 킬로바이트 비트 라인 그룹으로 나눌 수 있다.
일부 실시예에서, 본원에 설명된 시스템 및 방법은 공통으로 그룹화된 비트 라인을 갖는 부분 페이지 프로그램을 수행하기 위해 의사 랜덤(pseudo random) 액세스 모드를 사용하도록 구성될 수 있다. 일부 실시예에서, 본원에 설명된 시스템 및 방법은 드레인측 게이트 유도된 드레인 누설(GIDL: gate induced drain leak)과 같은 소거 동작, 공통적으로 그룹화된 비트 라인에 대한 소거 동작을 수행하도록 구성될 수 있다.
일부 실시예에서, 본원에 설명된 메모리 시스템은 어레이 메모리 구조체 하의 상보형 금속-산화물 반도체(CMOS: complementary metal-oxide semiconductor)(CUA)를 포함할 수 있다. 일부 실시예에서, 본원에 설명된 메모리 시스템은 어레이 메모리 구조체에 인접한 CMOS(CAA)를 포함할 수 있다. 일부 실시예에서, 본원에 설명된 메모리 시스템은 어레이 메모리 구조체 옆 CMOS(CNA)를 포함할 수 있다.
일부 실시예에서, 본원에 설명된 시스템 및 방법은 3차원 메모리 어레이의 메모리 블록에 대응하는 비트 라인의 제1 그룹을 식별하도록 구성될 수 있다. 본원에 설명된 시스템 및 방법은 각각의 비트 라인 바이어싱 트랜지스터를 사용하여 비트 라인의 제1 그룹을 제1 전압으로 바이어싱하도록 구성될 수 있다. 본원에 설명된 시스템 및 방법은 각각의 메모리 블록에 대해, 비트 라인의 제1 그룹과 교차하는 각각의 메모리 블록의 워드 라인에 대응하는 각각의 서브-메모리 블록을 식별하도록 구성될 수 있다. 본원에 설명된 시스템 및 방법은 비트 라인의 제1 그룹과 연관된 각각의 개별 서브-메모리 블록에 대한 메모리 셀의 메모리 어드레스를 논리적으로 그룹화하도록 구성될 수 있다.
일부 실시예에서, 본원에 설명된 시스템 및 방법은 3차원 메모리 어레이의 메모리 블록에 대응하는 복수의 비트 라인 그룹을 식별하도록 구성될 수 있다. 본원에 설명된 시스템 및 방법은 복수의 비트 라인 그룹의 각각의 개별 비트 라인 그룹에 대응하는 비트 라인 바이어싱 트랜지스터를 사용하여, 복수의 비트 라인 그룹의 각각의 비트 라인 그룹을 각각의 전압으로 바이어싱하도록 구성될 수 있다. 본원에 설명된 시스템 및 방법은 각각의 메모리 블록에 대해, 복수의 비트 라인 그룹의 비트 라인 그룹 중 각각의 비트 라인 그룹과 교차하는 각각의 메모리 블록의 워드 라인에 대응하는 각각의 서브-메모리 블록을 식별하도록 구성될 수 있다. 본원에 설명된 시스템 및 방법은 각각의 개별 서브-메모리 블록에 대한 메모리 셀의 메모리 어드레스를 논리적으로 그룹화하도록 구성될 수 있다.
일부 실시예에서, 본원에 설명된 시스템 및 방법은 (예를 들어, 더 작은 서브-메모리 블록 크기로 인한) 더 빠른 폐영역 회수 속도; 기록 동작의 수행의 감소된 증폭; (예를 들어, 소거 동작을 수행하기 위한 상대적으로 제한된 영역 및 소거 동작 동안 전하 펌프의 더 적은 로딩으로 인한) 부분적인 소거 동작의 수행 동안의 감소된 전류 요건; (예를 들어, 에러 전압 사전-충전이 덜 시간 소모적일 수 있으므로) 개선된 소거 동작 수행을 제공하도록 구성될 수 있다. 또한, 본원에 설명된 시스템 및 방법은 추가적인 메모리 하드웨어 또는 메모리 하드웨어 변경 없이 메모리 어레이의 대응하는 메모리 블록에 대한 서브-메모리 블록을 정의하도록 구성될 수 있다.
도 1a는 비휘발성 메모리를 포함하는 예시적인 시스템 아키텍처(100)의 블록도를 나타낸다. 특히, 예시적인 시스템 아키텍처(100)는 저장 시스템(102)(예를 들어, 이는 메모리 시스템으로 지칭될 수 있음), 제어기(104), 및 호스트(106)를 포함한다. 다양한 실시예에서, 호스트(106)는 저장 시스템(102)을 이용하는 임의의 디바이스 또는 시스템을 포함할 수 있다. 일부 실시예에서, 제어기(104)의 다양한 양태는 호스트(106)에 의해 구현될 수 있거나 호스트(106)가 저장 시스템(102)에 저장된 명령을 실행하도록 구성된 자신의 제어기(예를 들어, 프로세서)를 포함할 수 있고, 또한 호스트(106)가 저장 시스템(102)에 저장된 데이터에 액세스할 수 있다.
호스트(106)의 예는 데스크탑 컴퓨터, 랙 장착(rack mounted) 서버, 랩탑, 스마트폰, 태블릿 또는 다른 적절한 컴퓨팅 디바이스와 같은 컴퓨팅 디바이스를 포함한다. 호스트(106)는 또한 게이밍 시스템, 디지털 폰, 디지털 카메라(예를 들어, 디지털 스틸 카메라 및 디지털 무비 카메라), 휴대용 미디어 플레이어, 디지털 포토 프레임, 원격 제어, 텔레비전 스틱, 스마트 텔레비전 등과 같은 시스템 및 디바이스를 포함할 수 있다. 또한, 시스템 아키텍처(100)는 보안 디지털(SD: secure digital) 카드 또는 마이크로 보안 디지털(micro-SD) 카드와 같은 메모리 카드에 구현될 수 있다. 일부 실시예에서, 시스템 아키텍처(100)는 예를 들어, 랩탑 컴퓨터에 설치된 솔리드-스테이트 디스크(SSD) 드라이브와 같이, 호스트에 내장된다.
시스템 아키텍처(100)가 메모리 카드 내에 구현되는 실시예에서, 호스트(106)는 하나 이상의 유형의 메모리 카드 또는 플래시 드라이브에 대한 빌트-인 리셉터클(built-in receptacle)(예를 들어, 범용 직렬 버스(USB) 포트 또는 메모리 카드 슬롯)을 포함할 수 있다. 추가적으로 또는 대안적으로, 호스트(106)는 메모리 카드가 플러깅될 수 있는 어댑터를 포함할 수 있다. 호스트의 상술한 예는 제한적인 예인 것으로 의미되지 않는다. 반대로, 호스트(106)는 저장 시스템(102)에 액세스하는 임의의 유형의 디바이스, 시스템 및 장치를 포함할 수 있다.
도 1a에서, 저장 시스템(102)은 메모리 제어기 및 드라이버(예를 들어, 제어기(104))를 포함하지만, 추가로 후술되는 바와 같이, 저장 시스템(102)의 일부 실시예에서, 저장 시스템(102)은 호스트(106) 상의 제어기에 의해 실행되는 소프트웨어에 의해 대신 제어되는 메모리-전용 유닛을 포함할 수 있다(예를 들어, 저장 시스템(102)이 에러 처리를 포함하는 컴퓨팅 디바이스 제어의 프로세서). 또한, 도 1a는 저장 시스템(102)을 호스트(106)와 분리된 것으로 나타내지만, 일부 실시예에서, 저장 시스템(102)은 호스트(106)와 함께 내장되며, 여기서 메모리, 제어기 및 드라이버는 단일 집적 회로 칩 상에 형성된다.
호스트(106)는 저장 시스템(102)과 호스트(106)가 통신할 수 있게 하는 임의의 알려진 또는 개발 완료된 통신 프로토콜을 구현하는 버스(112)를 사용하여 저장 시스템(102)과 통신할 수 있다. 통신 프로토콜은 보안 디지털(SD) 프로토콜, 메모리 스틱(MS: Memory stick) 프로토콜, USB 프로토콜, 어드밴스드 마이크로컨트롤러 버스 아키텍처(AMBA: Advanced Microcontroller Bus Architecture) 또는 다른 적절한 통신 프로토콜을 포함할 수 있다.
다양한 실시예에서, 제어기(104)는 호스트(106)와 저장 시스템(102) 사이의 인터페이스로서의 역할을 한다. 호스트(106)는 버스(112)와 연관된 버스 인터페이스를 통해 제어기(104)와 통신할 수 있다. 제어기(104)는 개별 회로 구성 요소, 프로세싱 회로(예를 들어, 논리 게이트 및 스위치), 프로세서, 마이크로프로세서, 제어 소프트웨어를 갖는 마이크로컨트롤러, 또는 필드 프로그램 가능 게이트 어레이(FPGA: field programmable gate array)를 포함할 수 있다. 또한, 예시적인 제어기(104)는 프로세서에 의해 실행 가능한 컴퓨터-판독 가능 프로그램 코드(예를 들어, 소프트웨어 또는 펌웨어)를 저장하는 컴퓨터-판독 가능 매체를 포함한다. 일부 실시예에서, 제어기(104)는 플래시 메모리 제어기이다. 일부 실시예에서, 제어기(104)는 호스트(106) 내에서 실행되는 프로세서이다.
여전히 도 1a를 참조하면, 일부 실시예에 따라, 제어기(104)는 호스트(106)와 저장 시스템(102) 사이의 인터페이스로서의 역할을 하고, 저장 시스템(102) 상에 저장된 데이터를 관리한다. 예를 들어, 호스트(106)는 버스(112)와 연관된 버스 인터페이스를 통해, 제어기(104)에 논리 어드레스를 제공함으로써 저장 시스템(102)에 저장된 데이터에 액세스할 수 있으며, 제어기(104)는 논리 어드레스를 물리 어드레스로 변환한다. 제어기(104)는 데이터 및/또는 물리 어드레스와 연관된 특정 저장 위치에 액세스할 수 있고, 저장 시스템(102)과 호스트(106) 사이의 데이터 전송을 용이하게 할 수 있다. 저장 시스템(102)이 플래시 메모리를 포함하는 일부 실시예에서, 제어기(104)는 플래시 메모리를 포맷하여 메모리가 적절히 동작하도록 보장하고, 불량 플래시 메모리 셀을 배치하고, 향후 고장난 셀에 대체되거나 플래시 메모리 제어기(예를 들어, 제어기(104))를 동작시키기 위한 펌웨어를 보유하는 데 사용될 여분의 셀을 할당한다.
따라서, 제어기(104)는 마모 평준화(wear leveling)(예를 들어, 메모리 블록의 수명을 연장시키기 위하여 기록을 분배), 폐영역 회수(예를 들어, 데이터의 유효 페이지를 새로운 블록으로 이동시키고 이전에 사용된 블록을 소거), 및 에러 검출 및 교정(예를 들어, 판독 에러 처리)과 같은 다양한 메모리 관리 기능을 수행한다.
여전히 도 1a를 참조하면, 저장 시스템(102)은 몇몇 메모리 다이(110-1 - 110-N)를 포함할 수 있는 비휘발성 메모리(NVM: non-volatile memory) 블록(110)을 포함한다. 일부 실시예에서, NVM 블록(110)은 메모리 다이(110-1 - 110-N)와 같은 메모리 다이의 물리적 세트를 정의한다. 다른 실시예에서, NVM 블록(110)은 메모리 다이의 논리 세트를 정의하며, 여기서 NVM 블록(110)은 메모리 다이의 몇몇 물리적으로 상이한 세트로부터의 메모리 다이를 포함한다. NVM 블록(110)이 도 1a에서 정의되는 방식은 제한적인 것으로 의미되지 않는다.
각각의 메모리 다이, 예를 들어, 메모리 다이(110-1)는 NAND 플래시 메모리 셀, NOR 플래시 메모리 셀, 또는 다른 적절한 메모리 셀과 같은 비휘발성 메모리 셀을 포함한다. 메모리 셀은 비휘발성이므로, 저장 시스템(102)의 메모리 셀은 메모리 셀 및/또는 저장 시스템(102)에 공급되는 전력의 중단이 있어도 데이터를 유지한다. 따라서, 저장 시스템(102)은 용이하게 운반될 수 있고 저장 시스템(102)은 메모리 카드 및 전원에 항상 연결되지는 않는 아닌 다른 메모리 디바이스에 사용될 수 있다.
다양한 실시예에서, 메모리 다이(110)의 메모리 셀은 솔리드-스테이트 메모리 셀(예를 들어, 플래시)이고, 일회용 프로그램 가능, 수차례 프로그램 가능, 또는 여러 차례 프로그램 가능하다. 또한, 메모리 다이(110)의 메모리 셀은 단일-레벨 셀(SLC: single-level cell), 다중-레벨 셀(MLC: multiple-level cell) 또는 트리플-레벨 셀(TLC: triple-level cell)을 포함할 수 있다. 일부 실시예에서, 메모리 셀은 평면 방식(예를 들어, 2D NAND(NOT-AND) 플래시) 또는 스택 또는 적층 방식(예를 들어, 3D NAND 플래시)으로 제조된다. 즉, 평면 플래시 메모리는 메모리 셀의 단일 층을 포함하는 반면, 스택형 플래시 메모리는 수직으로 다중 층(예를 들어, 평면들로 지칭)으로 적층되는 메모리 셀을 포함한다.
일부 실시예에서, 그리고 도 1a에 나타낸 바와 같이, 제어기(104) 및 NVM 블록(110)은 임의의 알려진 또는 개발 완료된 통신 프로토콜을 구현하는 인터페이스(114)에 의해 통신 가능하게 커플링된다. 저장 시스템(102)이 플래시 메모리인 실시예에서, 인터페이스(114)는 토글 모드(Toggle Mode)(200, 400, 800) 또는 공통 플래시 메모리 인터페이스(CFI: Common Flash Memory Interface)와 같은 플래시 인터페이스이다. 다양한 실시예에서, 인터페이스(114)는 제어기(104)와 개별 메모리 다이(110-1 - 110-N) 사이에 배치된 여러 채널(즉, 물리적 접속)에 의해 구현될 수 있다. 또한, 인터페이스(114)가 확립되는 채널의 수는 제어기(104)의 능력에 기초하여 변한다. 또한, 단일 채널이 하나 초과의 메모리 다이와 통신 가능하게 커플링하도록 구성될 수 있다. 단일 인터페이스(114)의 도시는 제한적인 것으로 의미되지 않는다. 반대로, 단일 인터페이스는 구성 요소들 사이에 사용될 수 있는 예시적인 인터페이스를 나타내며, 하나 이상의 인터페이스가 동일한 구성 요소를 통신 가능하게 커플링하는 데 사용될 수 있다.
도 1b는 일반적으로 본 개시의 원리에 따른 시스템 아키텍처(100)의 블록도를 나타낸다. 시스템 아키텍처(100)는 더 큰 시스템 아키텍처의 일부로서 구현될 수 있다. 예를 들어, 도 1b에 나타낸 바와 같이, 시스템 아키텍처(150)는 여러 저장 시스템(102)을 추가로 포함하는 저장 모듈(156)을 포함한다. 예시적인 시스템 아키텍처(150) 내에서, 저장 모듈(156)은 저장 제어기(152)에 의해 호스트(106)와 통신 가능하게 커플링된다. 특히, 호스트(106)와 저장 모듈(156) 사이의 인터페이스(154)는 시리얼 어드밴스드 테크놀로지 어태치먼트(SATA: serial advanced technology attachment) 또는 페리퍼럴 컴포넌트 인터페이스 익스프레스(PCIe: peripheral component interface express) 인터페이스와 같은 임의의 공지된 또는 개발 완료된 통신 프로토콜을 구현하는 버스 인터페이스를 포함한다. 일부 실시예에서, 저장 모듈(156)은 (예를 들어, 랩탑 컴퓨터 또는 태블릿의) SSD이다.
시스템 아키텍처(100)의 일부 구현은 계층적 저장 시스템을 포함한다. 계층적 저장 시스템은 복수의 저장 제어기(152)를 포함할 수 있으며, 이들의 각각은 각각의 저장 시스템(102)을 제어한다. 또한, 복수의 호스트(106)가 각각 계층적 저장 시스템에 액세스할 수 있다. 호스트(106)는 비휘발성 메모리 익스프레스(NVMe: non-volatile memory express) 또는 파이버 채널 오버 이더넷(FCoE: fiber channel over Ethernet) 인터페이스를 포함하는 임의의 알려진 또는 개발 완료된 통신 프로토콜을 구현하는 버스 인터페이스를 통해 계층적 저장 시스템 내의 메모리에 액세스할 수 있다. 계층적 저장 시스템은 복수의 호스트 컴퓨터(예를 들어, 데이터 센터)에 의해 액세스 가능한 랙 장착 저장 시스템으로서 구현될 수 있다.
인터페이스(154)가 저장 제어기(152)와 저장 모듈(156) 사이에 배치된 여러 채널(즉, 물리적 접속)에 의해 구현될 수 있다. 일부 실시예에서, 인터페이스(154)가 확립된 채널의 수는 저장 제어기(152)의 능력에 기초하여 변한다. 단일 인터페이스의 도시는 제한적인 것으로 의미되지 않으며, 단일 인터페이스는 구성 요소들 사이에 사용될 수 있는 예시적인 인터페이스를 나타내며, 하나 이상의 인터페이스는 다양한 구성 요소와 통신 가능하게 커플링하는 데 사용될 수 있다.
도 2a는 일반적으로 본 개시의 원리에 따른 저장 시스템(102)의 블록도(200)를 나타낸다. 저장 시스템(102)의 블록도(200)는 제어기(104) 및 NVM 메모리 블록(110)과 같은, 이전에 도 1a에서 설명된 구성 요소를 포함한다. 저장 시스템(102) 내에 존재할 수 있는 추가적인 구성 요소는 랜덤 액세스 메모리(RAM)(230), 판독 전용 메모리(ROM)(232) 및 다른 구성 요소(234)를 포함한다. 일부 실시예에서, ROM(232)은 시스템 부트(boot) 코드를 저장한다.
RAM(230) 및 ROM(232)이 저장 시스템(102) 내에서 별개의 모듈로서 나타내어져 있지만, 나타낸 아키텍처는 제한적인 것으로 의미되지 않는다. 예를 들어, RAM(230) 및 ROM(232)은 제어기(104) 내에 위치될 수 있다. 일부 실시예에서, RAM(230) 또는 ROM(232)의 일부는 각각 제어기(104)의 외측 및 제어기(104)의 내측에 위치된다. 다른 실시예에서, 제어기(104), RAM(230) 및 ROM(232)은 별개의 반도체 다이 상에 위치될 수 있다. 다양한 실시예에서, 다른 구성 요소(234)는 외부 전기 인터페이스, 외부 RAM, 저항, 커패시터, 논리 게이트 또는 제어기(104)와 인터페이싱하는 다른 구성 요소를 포함한다.
일부 실시예에서, 제어기(104)는 호스트(106)와 인터페이싱하는 모듈(202), NVM 메모리 블록(110)과 인터페이싱하는 모듈(204)뿐만 아니라 이하에 추가로 설명되는 다양한 다른 모듈을 포함한다. 제어기 내의 모듈(예를 들어, 모듈(202 및 204))은 버스(206)에 의해 서로 통신 가능하게 커플링된다.
제어기(104) 내에 도시된 다양한 모듈의 아래의 논의는 예시적인 것이며 제한하는 것으로 의미되지 않는다. 예를 들어, 일반적으로 도 2a 내에 나타낸 다양한 모듈들은 제어기(104) 내에 실행되는 것으로 제한되지 않으며, 일부 실시예에서, 하나 이상의 모듈이 제어기(104)의 외부에서 실행될 수 있다.
모듈(202)은 호스트(106)와 인터페이싱하고, 호스트(106) 또는 다음 레벨 저장 제어기와 제어기(104) 사이의 전기 인터페이스를 제공하는 호스트 인터페이스(208) 및 물리 층 인터페이스(210)를 포함한다. 호스트 인터페이스(208)는 데이터, 제어 신호 및 타이밍 신호의 전송을 용이하게 한다. 호스트 인터페이스(208)의 예는 SATA, SATA 익스프레스, 시리얼 어태치드 SCSI(SAS: Serial Attached SCSI), 파이버 채널(Fibre Channel), USB, PCIe 및 NVMe를 포함한다.
여전히 도 2a를 참조하면, 다양한 실시예에서, 모듈(204)은 NVM 블록(110)과 통신하도록 구성되고, 에러 정정 코드(ECC: error correcting code) 엔진(212)을 포함한다. 일부 실시예에서, ECC 엔진(212)은 호스트(106)로부터 수신된 데이터를 인코딩하고, 인코딩된 데이터를 NVM 블록(110)에 저장한다. 데이터가 NVM 메모리 블록(110)으로부터 판독될 때, ECC 엔진(212)은 데이터를 디코딩하고 데이터 내에서 검출된 에러를 정정한다. 에러를 검출하기 위해, ECC 엔진(212)은 저밀도 패리티-체크(LDPC: low-density parity-check) 코드, Bose-Chaudhuri-Hocquenghem(BCH) 코드, 소프트 판독 및/또는 여분 패리티와 같은 알고리즘을 사용하여 다양한 유형의 에러 검사를 구현한다.
예시적인 모듈(204)은 또한 시퀀서(214) 및 독립 드라이브의 리던던트 어레이(RAID: Redundant Array of Independent Drives) 모듈(216)을 포함한다. 다양한 실시예에서, 시퀀서(214)는 NVM 메모리 블록(110)에 송신되는 프로그램 및 소거 커맨드 시퀀스와 같은 커맨드 시퀀스를 생성한다. RAID 모듈(216)은 RAID 패리티 및 실패 데이터의 복구를 생성한다. RAID 패리티는 NVM 메모리 블록(110)에 기록되는 데이터에 추가적인 레벨의 무결성 보호를 제공하는 데 사용될 수 있다. 일부 실시예에서, ECC 엔진(212)이 RAID 모듈(216)의 기능을 구현한다.
예시적인 모듈(204)은 또한 커맨드 시퀀스를 NVM 메모리 블록(110)에 제공하고, NVM 메모리 블록(110)으로부터 상태 정보를 수신하는 메모리 인터페이스(218)를 포함한다. 예를 들어, 메모리 인터페이스(218)는 토글 모드(200, 400, 또는 800) 인터페이스와 같은 더블 데이터 레이트(DDR: double data rate) 인터페이스를 포함하는 임의의 알려진 또는 개발 완료된 통신 프로토콜을 구현한다. 모듈(204)은 또한 모듈(204)의 전체 동작을 제어하는 플래시 제어 층(220)을 포함한다.
여전히 도 2a의 제어기(104) 내의 예시적인 모듈을 참조하면, 제어기(104) 내의 추가적인 모듈은 더미(dummy) 워드 라인(DW) 패턴 생성 모듈(222), DW 에러 분석 모듈(224) 및 판독 파라미터 조정 모듈(226)을 포함한다. 더미 워드 라인은 각각의 비휘발성 메모리 다이의 거동 및 상태(health)를 분석 및 추적할 목적으로 사용되는 비휘발성 메모리 다이 상에 배치된다. 다양한 실시예에서, DW 패턴 생성 모듈(222)은 알려진 데이터 패턴을 더미 워드 라인에 입력하고 더미 워드 라인으로부터 다시 데이터를 판독하고 해당 데이터를 알려진 데이터 패턴과 비교함으로써 에러를 추적하거나 또는 주기적으로 검사한다.
다양한 실시예에서, 판독 파라미터 조정 모듈(226)은 특정 비휘발성 메모리 다이와 연관된 파라미터를 조정한다. 예를 들어, 아래에서 추가로 논의되는 바와 같이, 판독 파라미터 조정 모듈(226)은 판독 파라미터를 조정 또는 재조정하기 위해 동작, 즉, 판독 또는 기록 동안 특정 비휘발성 메모리 다이와 연관된 파라미터를 조정할 수 있다. 판독 파라미터를 재조정하는 동작 동안, 판독 파라미터 조정 모듈(226)은 특정 메모리 블록에 대한 판독 파라미터를 조정하고, 메모리 블록으로부터 데이터를 판독하고, 생성된 BER을 검증한다. 생성된 BER이 타겟 또는 예상 BER에 뒤떨어지거나 못미치는 경우, 판독 파라미터 조정 모듈(226)은 메모리 블록에 대한 판독 파라미터를 저장한다. 후속하여, 저장된 판독 파라미터는 메모리 블록 내의 임의의 워드 라인의 판독 동안 사용된다. 따라서, 판독 파라미터는 메모리 블록에 고유할 수 있다.
예시적인 제어기(104) 내의 추가 모듈은 예를 들어, RAM(230) 내의 버퍼를 관리하고 제어기(104)의 버스(206)의 내부 버스 중재를 제어하는 버퍼 관리자/버스 제어기(228)를 포함한다. 추가적으로 또는 대안적으로, 제어기(104)는 NVM 메모리 블록(110)의 마모 평준화를 수행하는 매체 관리 층(236)을 포함할 수 있다. 이전에 언급된 바와 같이, 제어기(104)에 관하여 설명된 다양한 모듈이 제어기(104)의 아키텍처에 대해 제한되는 것으로 의미되지 않는다. 예를 들어, 물리 층 인터페이스(210), RAID 모듈(216), 매체 관리 층(236) 및 버퍼 관리/버스 제어기(228)는 제어기(104) 내의 선택적인 구성 요소의 예일 수 있다.
또한, 저장 시스템(102)이 플래시 메모리를 포함하는 실시예에서, 매체 관리 층(236)은 플래시 에러를 처리하고 호스트(106)와 인터페이싱하는 플래시 관리의 일부로서 통합될 수 있다. 특히, 매체 관리 층(236)은 호스트(106)로부터 수신된 기록 커맨드를 NVM 메모리 블록(110)에 대한 기록으로 트랜슬레이팅하는 알고리즘(예를 들어, 메모리 디바이스의 펌웨어)을 포함할 수 있다.
도 2b는 일반적으로 저장 시스템(102) 내의 NVM 메모리 블록(110)의 다양한 특징부를 갖는 블록도를 나타낸다. 제어기(104)의 상세 사항은 이전에 (도 2a에서) 설명되었으므로, 도 2b에서 제어기(104)는 단일 블록으로 나타내어져 있다. 추가적으로, 이전에 설명된 RAM(230), ROM(232) 및 다른 구성 요소(234)는 독자가 적응하는 데 도움이 되도록 도 2b에 포함된다. 다음으로, 예시적인 메모리 다이(110-1) 내의 상세 사항이 논의된다. 논의는 메모리 다이(110-1)에 중점을 두지만, 메모리 다이(110-1)와 관련하여 논의되는 특징부의 각각은 동일하게 NVM 메모리 블록(110) 내의 모든 메모리 다이에 적용된다.
일부 실시예에서, 예시적인 메모리 다이(110-1)는 제어 회로(250), 판독/기록 회로(252), 로우 디코더(254), 컬럼 디코더(256) 및 메모리 어레이(260)를 포함한다. 메모리 어레이(260)는 메모리 셀의 2차원 어레이 또는 3차원 어레이를 포함할 수 있다. 판독/기록 회로(252)는 메모리 다이(110-1) 내의 메모리의 페이지를 병렬로 판독하고 프로그래밍한다. 다양한 실시예에서, 메모리 어레이(260)는 로우 디코더(254)를 통해 워드 라인들에 의해 액세스되고 컬럼 디코더(256)를 통해 비트 라인에 의해 액세스된다.
메모리 다이(110-1)의 아키텍처는 제한적인 것으로 의미되지 않으며, 메모리 어레이(260)에 액세스하는 기능을 수행할 수 있는 임의의 알려진 아키텍처가 본 개시의 범위를 벗어나지 않고도 사용될 수 있다. 예를 들어, 다양한 실시예에서, 다양한 주변 회로에 의한 메모리 어레이(260)에 대한 액세스는 메모리 어레이(260)의 반대편 상에 대칭 방식으로 구현될 수 있으며, 이는 액세스 라인, 및 메모리 어레이(260)의 각각의 측 상의 회로의 밀도를 감소시킨다.
여전히 도 2b를 참조하면, 다양한 실시예에서, 예시적인 제어 회로(250)는 전력 제어 회로(266), 어드레스 디코더(268) 및 상태 머신(270)을 포함한다. 일부 실시예에서, 전력 제어 회로(266), 어드레스 디코더(268) 및 상태 머신(270)은 총괄적으로 관리 회로로 지칭될 수 있다. 제어 회로(250) 및 그 다양한 관리 회로는 다양한 인터페이스(예를 들어, 인터페이스(262 및 264))에 의해 로우 디코더(254) 및 컬럼 디코더(256)에 통신 가능하게 커플링된다. 다양한 실시예에서, 제어 회로(250)는 메모리 셀에 대한 판독 또는 기록을 포함하는 다양한 동작을 메모리 어레이(260) 상에서 수행한다.
전력 제어 회로(266)는 메모리 어레이(260)의 동작 동안 워드 라인 및 비트 라인에 공급되는 전력 및 전압을 제어한다. 어드레스 디코더(268)는 호스트(106)에 의해 제공된 어드레스와 로우 디코더(254) 및 컬럼 디코더(256)에 의해 사용되는 어드레스 사이에서 어드레스를 트랜슬레이팅하는 어드레스 인터페이스를 제공한다. 예시적인 어드레스 디코더(268)는 호스트(106)에 의해 제공된 어드레스를 로우 디코더(254) 및 컬럼 디코더(256)에 의해 이해되고 이에 의해 사용되는 포맷과 호환 가능한 어드레스로 변환한다. 상태 머신(270)은 메모리 동작의 칩-레벨 제어를 제공한다.
따라서, 저장 시스템(102)은 제어기(104) 및 NVM 메모리 블록(110)을 포함하는 다양한 구성 요소를 포함하며, 그 상세 사항은 도 1a, 도 1b, 도 2a 및 도 2b에 상술되었다. 논의는 이제 예시적인 메모리 어레이(260)의 예시적인 아키텍처, 특히 저장 시스템(102)에서 판독 수행을 개선하도록 수행될 수 있는 방법으로 이어진다.
도 3은 메모리 어레이(260)를 추가로 나타낸다. 메모리 어레이(260)는 여러 메모리 블록(302)으로 분할된다. 플래시 메모리에서, 메모리 블록은 소거 단위로서 정의된다. 즉, 각각의 메모리 블록(302)은 함께 또는 블록으로 소거되는 다수의 메모리 셀을 포함한다. 일부 실시예에서, 메모리 어레이(260)는 임의의 수의 블록으로 분획될 수 있으며, 예를 들어, 메모리 어레이(260)는 1,024개의 블록을 포함한다. 추가적으로, 또는 대안적으로, 각각의 메모리 블록(302)은 프로그래밍 단위로 정의되는 다수의 페이지로 개념상 나눌 수 있다. 일부 실시예에서, 데이터의 페이지는 한 행의 메모리 셀에 저장될 수 있다. 각각의 페이지는 사용자 데이터 및 오버헤드 데이터를 포함할 수 있으며, 여기서 오버헤드 데이터는 사용자 데이터로부터 계산된 CC를 포함한다. 일부 실시예에서, 메모리 블록(302-1 내지 302-N)은 솔리드-스테이트 NAND 메모리 블록을 포함할 수 있다.
각각의 메모리 블록(302), 예를 들어, 메모리 블록(302-1)은 복수의 비트 라인(304), 워드 라인(306) 및 선택 라인(308)을 포함한다. 각각의 비트 라인, 예를 들어, 비트 라인(304-1)은 직렬로 연결된 여러 메모리 셀에 연결된다. 더 구체적으로, 각각의 메모리 셀이 플로팅 게이트 트랜지스터인 실시예에서, 플로팅 게이트 트랜지스터는 직렬로 연결되어 NAND 스트링(310)(예를 들어, 점선 박스 내에 나타냄)을 형성한다. 도 3에는 4개의 메모리 셀이 나타내어져 있지만, NAND 스트링 내의 메모리 셀의 수는 제한적인 것으로 의미되지 않는다. 예를 들어, 16, 32, 64, 128 또는 임의의 다른 개수의 메모리 셀이 NAND 스트링에서 연결될 수 있다. 각각의 개별 비트 라인(304)은 블록(302) 내에서 각각의 NAND 스트링에 커플링된다.
여전히 도 3을 참조하면, 특정 메모리 셀, 예를 들어, 메모리 셀(316)에 저장된 데이터를 판독하는 방법은 블록(302)의 선택 라인(308)에 전압을 인가하는 단계를 포함하며, 선택 라인(308)은 결국 메모리 셀(316)을 포함하는 NAND 스트링(310)을 포함하는 블록(302) 내의 각각의 NAND 스트링에 커플링된다. 선택 라인(308)에 인가된 전압은 선택 트랜지스터(312 및 314)의 임계 전압보다 크다. 선택 트랜지스터(312)는 선택 게이트 드레인 라인(SGD)(308-1)에 의해 제어되고, 선택 트랜지스터(314)는 선택 게이트 소스 라인(SGS)(308-2)에 의해 제어된다. 또한, 메모리 셀(316)의 데이터를 판독하기 위하여, NAND 스트링(319)의 모든 다른 메모리 셀 또는 선택되지 않은 메모리 셀은 턴 온된다(예를 들어, 프로그램되어 있는지 또는 소거되어 있는지에 관계없이 전류를 도통). 선택되지 않은 메모리 셀은 선택되지 않은 메모리 셀을 턴 온시키는 그 각각의 워드 라인에 인가되는 판독 패스 전압, 즉, 판독 파라미터를 갖는다.
예시적인 판독 동작 동안, 다양한 판독 비교 레벨, 즉, 전압이 워드 라인(306-2)에 인가되어 메모리 셀(316)에 저장된 값을 결정한다. 일부 실시예에서, 메모리 셀(316)의 전도 전류가 측정되어 메모리 셀(316) 내에 저장된 값을 결정한다. 각각의 메모리 셀이 액세스되는 방법 및 판독 또는 기록 동안 액세스되는 메모리 셀의 수는 변한다. 예를 들어, 메모리 블록(302-1)의 모든 비트 라인은 동시에 프로그래밍 또는 판독될 수 있다. 다양한 실시예에서, 공유된 워드 라인을 따른 메모리 셀은 같은 시간에(즉, 동시에) 프로그래밍될 수 있다. 다른 실시예에서, 비트 라인은 짝수 비트 라인 및 홀수 비트 라인으로 나눌 수 있다. 홀수/짝수 비트 라인 아키텍처에서, 공유된 워드 라인을 따른 그리고 홀수 비트 라인에 연결된 메모리 셀이 하나의 시간에 프로그래밍되고, 공유된 워드 라인을 따른 그리고 짝수 비트 라인에 연결된 메모리 셀은 상이한 시간에 프로그래밍된다.
데이터가 메모리 블록에 기록될 때마다, 데이터는 ECC 엔진(212)에 의해 프로세싱되며, 이는 (예를 들어, 특정 에러 정정 코드를 사용하여) 데이터를 인코딩하고, 인코딩된 데이터를 메모리 블록에 저장하는 것을 포함한다. 데이터가 메모리 블록으로부터 다시 판독될 때, 데이터는 ECC 엔진(212)에 의해 프로세싱되며, 이는 데이터를 디코딩하고, 에러를 정정하고(예를 들어, BER로서 추적됨), (제어기(104)에 의해) 데이터를 사용자에게 반환하는 것을 포함한다. 일부 실시예에서, ECC 엔진(212)이 데이터를 제어기(104)에 반환하는 데 걸리는 시간량이 스루풋 시간으로 정의된다.
일부 실시예에서, 제어기(104)는 메모리 어레이(260)에 대한 데이터 통합 동작을 수행한다. 제어기(104)는 메모리 어레이(260)의 메모리 블록(302-1)으로부터 메모리 블록(302-N) 중에서 통합 또는 압축할 소스 블록을 선택한다. 예를 들어, 제어기(104)는 통합 또는 압축할 소스 블록으로서 메모리 블록(302-1)을 선택할 수 있다. 메모리 블록(302-1)은 본원에 설명된 예시적인 실시예에 걸쳐 소스 블록(302-1)으로 지칭될 수 있다. 소스 블록(302-1)은 16개의 메모리 조각 또는 임의의 적절한 개수의 메모리 조각과 같은 복수의 메모리 조각을 포함할 수 있다. 메모리 조각은 호스트 기록 동작 동안 호스트(106)에 의해 기록된 데이터를 포함할 수 있다. 메모리 조각은 각각의 논리 그룹에 속할 수 있고, 소스 블록(302-1)에 분산 또는 해체될 수 있어, 동일한 논리 그룹과 연관된 메모리 조각이 소스 블록(302-1)에서 순차적으로 저장 또는 조직화되지 않을 수 있다. 추가적으로 또는 대안적으로, 일부 메모리 조각은 호스트 기록 동작 동안 호스트(106)에 의해 기록된 데이터를 포함하지만, 소스 블록(302-1)에 걸쳐 분산된 다른 메모리 조각은 비어 있을 수 있다(예를 들어, 호스트(106) 또는 제어기(104)에 의해 소거되었거나 호스트(106)에 의해 기록되지 않음).
일부 실시예에서, 저장 시스템(102)은 메모리 블록(302-1 내지 302-N)의 하나 이상의 메모리 셀에 대한 소거 동작, 프로그래밍 동작, 기록 동작, 판독 동작 등과 같은 동작을 수행하기 위해 제어기(104)에 의해 사용되는 전압을 생성하는 하나 이상의 전하 펌프를 포함할 수 있다. 전하 펌프는 공급 전압을 증가 또는 감소시킬 수 있으며, (예를 들어, 증가 또는 감소된 전압을 사용하여) 전압 펄스를 메모리 셀에 공급할 수 있다. 예를 들어, 전하 펌프는 메모리 셀 동작을 수행하는 데 요구되는 전압에서의 전압 펄스를 생성하기 위하여 공급 전압으로부터의 전압을 2배로 하거나, 공급 전압으로부터의 전압을 3배로 하거나, 공급 전압으로부터의 전압을 절반으로 하거나, 공급 전압으로부터의 전압을 임의의 적합한 팩터의 공급 전압으로 증가 또는 감소시킬 수 있다.
일부 실시예에서, 전하 펌프는 하나 이상의 커패시터에 연결된다. 예를 들어, 전하 펌프는 하나 이상의 커패시터에 병렬 또는 직렬로 연결될 수 있다. 일부 실시예에서, 전하 펌프는 일부 커패시터들에 병렬로 연결될 수 있고, 일부 커패시터에는 직렬로 연결될 수 있다. 전하 펌프 동작의 제1 펄스 동안, 전하 펌프는 공급 전압을 사용하여 하나 이상의 커패시터를 충전할 수 있다(예를 들어, 커패시터를 공급 전압과 동일한 전압으로 가져옴). 전하 펌프는 적절한 스위칭 디바이스를 포함하거나 이에 연결될 수 있다.
전하 펌프는 스위칭 디바이스를 사용하여 전하 펌프와 하나 이상의 커패시터 사이의 연결을 재구성할 수 있고, 이는 하나 이상의 커패시터가 전하 펌프에 연결되는 방식을 변경할 수 있다(예를 들어, 직렬에서 병렬로, 병렬에서 직렬로, 또는 이들의 조합). 전하 펌프의 제2 펄스 동안, 전하 펌프는 전압을 전압 공급원으로부터 하나 이상의 커패시터에 공급할 수 있으며(예를 들어, 전압 공급원의 전압으로 충전됨), 이는 하나 이상의 커패시터에서 전압을 2배로 만들 수 있다. 전하 펌프는 임의의 개수의 커패시터에 임의의 적절한 방식으로 연결될 수 있고, 공급 전압 및 스위칭 디바이스를 사용하여 커패시터를 임의의 적절한 전압으로 충전할 수 있음을 이해해야 한다. 추가적으로 또는 대안적으로, 전하 펌프는 임의의 개수의 펄스를 사용하여 커패시터를 충전할 수 있다. 제어기(104)는 전하 펌프에 의해 커패시터에 저장된 전압을 사용하여 메모리 셀을 프로그래밍할 수 있다.
일부 실시예에서, 저장 시스템(102)은 어레이 메모리 구조체에 인접한 상보형 금속-산화물 반도체(CMOS)(CAA)를 포함할 수 있다. 일부 실시예에서, 저장 시스템(102)은 어레이 메모리 구조체 옆 CMOS(CNA)를 포함할 수 있다. 일부 실시예에서, 저장 시스템(102)은 어레이 메모리 구조체 하의 CMOS(CUA)를 포함할 수 있다. CUA 메모리 구조체는 CMOS 트랜지스터 위에 형성된 셀 소스 라인을 포함할 수 있다. 이러한 구조체는 실리콘 기판 대신 중합체 또는 금속 기판을 사용함으로써 저항을 감소시킬 수 있다.
도 6a는 일반적으로 CNA 메모리 구조체를 갖는 메모리 셀(600)에 대한 커플링 소거 동작의 수행을 나타낸다. 메모리 셀(600)에 대한 커플링 소거 동작의 수행은 에러 전압을 개구(예를 들어, 홀)를 통해 셀 P-웰(well)로부터 주입하는 것을 포함할 수 있다. 메모리 셀(600)에서, 커플링 소거 동작의 수행 동안, 비트 라인 전압은 커플링에 의해 에러 전압이 된다.
그러나, 도 6b에 일반적으로 나타낸 메모리 셀(602)과 같은, CUA 메모리 구조체를 갖는 메모리 셀에 대한 유사한 소거 동작을 수행하기 위해, 소거 동작은 종래의 커플링 소거 동작으로부터 소거 동작과 같은 메모리 동작을 수행하는 것과 같은 GIDL 소거 동작으로 변할 수 있다. 예를 들어, GIDL 소거 동작의 수행은 (예를 들어, 에러 전압이 비트 라인으로부터 인가되기 때문에) 대안적인 비트 라인 후크업(BLHU: bit line hookup)을 요구할 수 있다. 도 6b에 나타낸 바와 같이, 소스 게이트 드레인(SGD)영역에서 GIDL 소거 동작에 의해 개구가 생성된다. 에러 전압은 비트 라인으로부터 인가되며, 그에 따라 비트 라인은 다른 회로에 대한 에러 전압을 수신한다.
도 7a는 일반적으로 종래의 비트 라인 후크업 트랜지스터(700)(BLHU Tr)를 나타낸다. BLHU Tr(700)은 프로그램 동작 및/또는 판독 동작(예를 들어, 게이트-온)의 수행 동안 감지 증폭기(704)로부터 비트 라인(706)으로의 전압 전달을 요구할 수 있으며, 비트 라인(706)이 소거 레벨에 있을 때 (예를 들어, 소거 동작의 수행 동안, 게이트-오프 동안) 컷-오프를 유지할 수 있다.
일부 실시예에서, 저장 시스템(102)은 설명된 바와 같이, GIDL 소거 동작을 수행하도록 구성될 수 있다. 저장 시스템(102)의 메모리 셀은 도 7a에 일반적으로 나타낸 바와 같이, BLBIAS Tr(702)과 같은 비트 라인 바이어싱 트랜지스터(BLBIAS Tr)를 포함할 수 있다. 예를 들어, 저장 시스템(102)의 메모리 셀은 BLBIAS Tr(702)을 포함하여, CUA 메모리 구조체를 갖는 메모리 셀에서 GIDL 소거 동작의 수행을 가능하게 할 수 있다. 일부 실시예에서, BLBIAS Tr(702)은 메모리 셀의 각각의 비트 라인(706)에 대한 전송 게이트로서 에러 전압을 공급할 수 있다. 예를 들어, BLBIAS Tr(702)은 프로그래밍 동작 및/또는 판독 동작의 수행 동안 감지 증폭기(704)로부터 비트 라인(706)으로의 전압 전달(예를 들어, 비트 라인 선택(708)에서의 게이트-온) 및 소거 동작의 수행 동안의 전압 전달(예를 들어, BIAS(710)에서의 게이트-온)을 요구할 수 있다.
설명된 바와 같이, 제어기(104)는 저장 시스템(102)의 대응하는 메모리 블록(302-1 내지 302-N)보다 더 작은 크기를 갖는 서브-메모리 블록을 정의하도록 구성될 수 있다. 도 4에 일반적으로 나타낸 바와 같이, 그리고 설명된 바와 같이, 저장 시스템(102)은 수평으로 적층되거나 층화된 복수의 메모리 블록(302-1 내지 302-N)을 포함하는 3차원 구조체를 포함할 수 있다. 복수의 메모리 블록(302-1 내지 302-N)은 대응하는 비트 라인(304)(예를 들어, 304-1 내지 304-N)에 의해 연결될 수 있다. 각각에 대해, 비트 라인(304)은 복수의 메모리 블록(302-1 내지 302-N) 각각에 연결될 수 있다. 복수의 메모리 블록(302-1 내지 302-N) 각각은 대응하는 워드 라인(306-1 내지 306-N)을 포함하거나 이에 연결된다. 예를 들어, 메모리 블록(302-1)은 워드 라인(306-1)에 연결될 수 있고; 메모리 블록(302-2)은 워드 라인(306-2)에 연결될 수 있고, 기타 등등이다.
일부 실시예에서, 제어기(104)는 서브-메모리 블록(404-1 내지 404-N+1)과 같은 서브-메모리 블록을 정의하도록 구성될 수 있다. 제어기(104)는 비트 라인(402-1 내지 402-N)의 복수의 그룹을 식별할 수 있다. 비트 라인(402-1 내지 402-N)의 복수의 그룹 각각은 임의의 적절한 개수의 비트 라인을 포함할 수 있다. 예를 들어, 비트 라인(402-1 내지 402-N)의 복수의 그룹 각각은 8 킬로바이트 비트 라인 그룹, 4 킬로바이트 비트 라인 그룹, 2 킬로바이트 비트 라인 그룹 또는 1 킬로바이트 비트 라인 그룹, 또는 비트 라인(402-1 내지 402-N)의 각각의 그룹에 대한 임의의 적절한 개수의 비트 라인을 포함할 수 있다. 추가적으로 또는 대안적으로, 제어기(104)는 임의의 적절한 개수의 비트 라인(402-1 내지 402-N)의 그룹을 식별할 수 있다. 예를 들어, 비트 라인의 2개 그룹, 비트 라인의 4개 그룹, 비트 라인의 8개 그룹, 비트 라인의 16개 그룹 또는 임의의 적절한 개수의 비트 라인 그룹을 식별할 수 있다.
설명된 바와 같이, 제어기(104)는 비트 라인(402-1)의 제1 그룹을 식별할 수 있다. 제어기(104)는 비트 라인(402-1)의 제1 그룹의 비트 라인 각각에 대응하는 비트 라인 트랜지스터를 선택적으로 제어하여 비트 라인(402-1)의 제1 그룹의 비트 라인을 바이어싱할 수 있다. 예를 들어, 제어기(104)는 비트 라인 트랜지스터를 선택적으로 제어하여 비트 라인(402-1)의 제1 그룹의 비트 라인을 제1 전압으로 바이어싱할 수 있다. 제1 전압은 임의의 적절한 전압을 포함할 수 있다. 예를 들어, 제1 전압은 소거 전압 이하일 수 있다. 소거 전압은 메모리 블록(302-1 내지 302-N)에 대한 소거 동작의 수행 동안 제어기(104)에 의해 사용된 전압을 포함할 수 있다.
제어기(104)는 비트 라인(402-1 내지 402-N)의 복수의 그룹 중 비트 라인의 다른 그룹에 대응하는 다른 비트 라인 트랜지스터를 선택적으로 제어하여, 비트 라인(402-1 내지 402-N)의 복수의 그룹 중 비트 라인의 다른 그룹에 대응하는 비트 라인을 다른 각각의 전압으로 바이어싱하도록 구성될 수 있다. 예를 들어, 제어기(104)는 비트 라인(402-N)의 그룹의 각각의 비트 라인에 대응하는 비트 라인 트랜지스터를 선택적으로 제어하여 비트 라인(402-N)의 그룹의 비트 라인을 제2 전압으로 바이어싱할 수 있다. 제2 전압은 제1 전압과 상이할 수 있고, 에러 전압 이하일 수 있다.
일부 실시예에서, 제어기(104)는 비트 라인(402-1)의 제1 그룹의 비트 라인과 교차하는 워드 라인(306-1 내지 306-N)에 대응하는 서브-메모리 블록을 식별하도록 구성된다. 예를 들어, 제어기(104)는 메모리 블록(302-1)의 워드 라인(306-1)과 비트 라인(402-1)의 제1 그룹의 비트 라인과의 교차점에 대응하는 메모리 셀을 포함하는 제1 서브-메모리 블록(404-1)을 식별할 수 있다. 제어기(104)는 메모리 블록(302-2)의 워드 라인(306-2)과 비트 라인(402-1)의 제1 그룹의 비트 라인과의 교차점에 대응하는 메모리 셀을 포함하는 제2 서브-메모리 블록(404-2)을 식별할 수 있다. 제어기(104)는 메모리 블록(302-1 내지 302-N)의 워드 라인과 비트 라인(402-1)의 제1 그룹의 비트 라인과의 교차점에 대응하는 메모리 셀을 포함하는 다른 서브-메모리 블록을 계속해서 식별할 수 있다. 추가적으로 또는 대안적으로, 제어기(104)는 비트 라인(402-1 내지 402-N)의 복수의 그룹 각각과 교차하는 워드 라인(306-1 내지 306-N)에 대응하는 모든 서브-메모리 블록(404-1 내지 404-N)을 계속해서 식별할 수 있다.
일부 실시예에서, 저장 시스템(102)은 비트 라인(402-1 내지 402-N)의 각각의 복수의 그룹 사이에 더미 비트 라인(408)을 포함할 수 있다. 더미 비트 라인은 비트 라인(402-1 내지 402-N)의 각각의 개별 그룹의 전압의 전기장 누설을 완화시키도록 구성될 수 있다. 예를 들어, 공통 워드 라인을 갖는 인접한 빅(big) 라인에서의 비트 라인 대 비트 라인 차단 및 소거 외란(erase disturb)은 전자가 하나의 비트 라인으로부터 다른 비트 라인으로 누설되게 할 수 있다. 더미 비트 라인(408)은 누설 전자를 흡수하며, 이는 비트 라인(304-1 내지 304-N)의 전압을 유지할 수 있다.
제어기(104)는 서브-메모리 블록(404-1 내지 404-N)에 대응하는 메모리 블록(302-1)의 메모리 셀을 논리적으로 그룹화하도록 구성된다. 예를 들어, 제어기(104)는 논리 어드레스 테이블에서 서브-메모리 블록(404-1)에 대응하는 메모리 셀의 메모리 어드레스를 저장할 수 있다. 논리 어드레스 테이블은 서브-메모리 블록(404-1 내지 404-N)과 같은 논리 메모리 블록에 대응하는 메모리 셀의 물리적 메모리 어드레스의 어드레스 맵을 포함할 수 있다. 제어기(104)는 논리 어드레스 테이블에서 서브-메모리 블록(404-2 내지 404-N)과 같은 다른 식별된 서브-메모리 블록에 대응하는 메모리 셀의 메모리 어드레스를 계속해서 저장할 수 있다.
설명된 바와 같이, 제어기(104)는 저장 시스템(102)의 논리 메모리 블록에 대해 다양한 동작을 수행하도록 구성된다. 예를 들어, 제어기(104)는 저장 시스템(102)의 소거 동작 메모리 블록을 수행할 수 있다. 소거 동작의 수행 동안, 제어기(104)는 논리 어드레스 테이블을 사용하여 하나 이상의 서브-메모리 블록(404-1 내지 404-N)을 식별할 수 있다. 제어기(104)는 이어서 하나 이상의 식별된 서브-메모리 블록(404-1 내지 404-2)에 대한 소거 동작을 수행할 수 있다.
일부 실시예에서, 제어기(104)는 논리 어드레스 테이블을 사용하여 하나 이상의 서브-메모리 블록(404-1 내지 404-N)을 식별함으로써 부분 페이지 프로그램을 수행하기 위해 의사 랜덤 액세스 모드를 사용하도록 구성될 수 있다. 일부 실시예에서, 제어기(104)는 서브-메모리 블록(404-1 내지 404-N) 중 하나 이상에 대한 드레인측 게이트 유도된 드레인 누설(GIDL) 소거 동작을 수행하도록 구성될 수 있다.
일부 실시예에서, 제어기(104)는 본원에 설명된 방법을 수행할 수 있다. 그러나, 제어기(104)에 의해 수행되는 본원에 설명된 방법은 제한하는 것으로 의미되지 않으며, 제어기 상에 실행되는 임의의 유형의 소프트웨어는 본 개시의 범위를 벗어나지 않고도 본원에 설명된 방법을 수행할 수 있다. 예를 들어, (예를 들어, ROM(232) 또는 NVM 메모리 블록(110) 상에 저장된) 호스트(106) 내의 소프트웨어 또는 저장 시스템(102) 내의 펌웨어를 실행하는 프로세서와 같은 제어기가 본원에 설명된 방법을 수행할 수 있다.
도 5는 본 개시의 원리에 따른 서브-메모리 블록 정의 방법(500)을 나타내는 흐름도이다. 502에서, 본 방법(500)은 비트 라인 그룹을 식별한다. 예를 들어, 제어기(104)는 비트 라인(402-1 내지 402-N)의 복수의 그룹을 식별할 수 있다. 504에서, 본 방법(500)은 각각의 비트 라인 그룹을 바이어싱한다. 예를 들어, 제어기(104)는 비트 라인(402-1 내지 402-N)의 각각의 개별 그룹의 각각의 비트 라인에 대응하는 비트 라인 트랜지스터를 선택적으로 제어할 수 있다. 제어기(104)는 비트 라인 트랜지스터를 사용하여 각각의 전압으로 각각의 비트 라인을 바이어싱할 수 있다. 예를 들어, 제어기(104)는 비트 라인(402-1)의 그룹의 각각의 비트 라인에 대응하는 비트 라인 트랜지스터를 사용하여 비트 라인(402-1)의 그룹의 비트 라인을 제1 전압으로 바이어싱할 수 있다. 506에서, 본 방법(500)은 각각의 비트 라인 그룹에 대한 서브-메모리 블록을 식별한다. 예를 들어, 제어기(104)는 비트 라인(402-1 내지 402-N)의 그룹 중 각각의 것들과 교차하는 워드 라인(306-1 내지 306-N)을 식별함으로써 서브-메모리 블록(404-1 내지 404-N)을 식별할 수 있다. 508에서, 본 방법(500)은 서브-메모리 블록에 대응하는 메모리 어드레스를 논리적으로 그룹화한다. 예를 들어, 제어기(104)는 서브-메모리 블록(404-1 내지 404-N) 중 각각의 것들에 대응하는 메모리 셀을 논리적으로 그룹화한다. 제어기(104)는 메모리 셀의 물리 어드레스를 서브-메모리 블록(404-1 내지 404-N)의 각각의 논리 어드레스로 만들기 위해 논리 어드레스 테이블에서 서브-메모리 블록(404-1 내지 404-N) 중 각각의 것들에 대응하는 메모리 셀의 메모리 어드레스를 저장할 수 있다.
일부 실시예에서, 메모리 블록 관리를 위한 방법은 3차원 메모리 어레이의 메모리 블록에 대응하는 비트 라인의 제1 그룹을 식별하는 단계를 포함한다. 본 방법은 또한 각각의 비트 라인 바이어싱 트랜지스터를 사용하여 비트 라인의 제1 그룹을 제1 전압으로 바이어싱하는 단계를 포함한다. 본 방법은 또한 각각의 메모리 블록에 대해, 비트 라인의 제1 그룹과 교차하는 각각의 메모리 블록의 워드 라인에 대응하는 각각의 서브-메모리 블록을 식별하는 단계를 포함한다. 본 방법은 또한 비트 라인의 제1 그룹과 연관된 각각의 개별 서브-메모리 블록에 대해 메모리 셀의 메모리 어드레스를 논리적으로 그룹화하는 단계를 포함한다.
일부 실시예에서, 본 방법은 또한 적어도 하나의 서브-메모리 블록에 대한 동작을 수행하는 단계를 포함한다. 일부 실시예에서, 동작은 소거 동작을 포함한다. 일부 실시예에서, 메모리 어레이는 어레이 메모리 구조체 하의 상보형 금속-산화물 반도체(CUA)를 포함한다. 일부 실시예에서, 메모리 어레이는 어레이 메모리 구조체에 인접한 상보형 금속-산화물 반도체(CAA)를 포함한다. 일부 실시예에서, 각각의 개별 서브-메모리 블록은 8-킬로바이트 서브-메모리 블록을 포함한다. 일부 실시예에서, 각각의 개별 서브-메모리 블록은 4-킬로바이트 서브-메모리 블록을 포함한다. 일부 실시예에서, 본 방법은 또한 메모리 블록에 대응하는 비트 라인의 제2 그룹을 식별하는 단계 및 각각의 비트 라인 바이어싱 트랜지스터를 사용하여 제1 전압과는 상이한 제2 전압으로 비트 라인의 제2 그룹을 바이어싱하는 단계를 포함한다. 일부 실시예에서, 본 방법은 또한 각각의 메모리 블록에 대해, 비트 라인의 제2 그룹과 교차하는 각각의 메모리 블록의 워드 라인에 대응하는 각각의 서브-메모리 블록을 식별하는 단계 및 비트 라인의 제2 그룹과 연관된 각각의 개별 서브-메모리 블록에 대한 메모리 셀의 메모리 어드레스를 논리적으로 그룹화하는 단계를 포함한다.
일부 실시예에서, 제어기는 버스 인터페이스 및 프로세서를 포함한다. 버스 인터페이스는 3차원 메모리 어레이의 복수의 메모리 블록과 통신한다. 프로세서는 메모리 블록에 대응하는 비트 라인의 제1 그룹을 식별하고; 각각의 비트 라인 바이어싱 트랜지스터를 사용하여 비트 라인의 제1 그룹을 제1 전압으로 바이어싱하고: 각각의 메모리 블록에 대해, 비트 라인의 제1 그룹과 교차하는 각각의 메모리 블록의 워드 라인에 대응하는 각각의 서브-메모리 블록을 식별하고; 그리고 비트 라인의 제1 그룹과 연관된 각각의 개별 서브-메모리 블록에 대해 메모리 셀의 메모리 어드레스를 논리적으로 그룹화하도록 구성된다.
일부 실시예에서, 프로세서는 적어도 하나의 서브-메모리 블록에 대한 동작을 수행하도록 추가로 구성된다. 일부 실시예에서, 동작은 소거 동작을 포함한다. 일부 실시예에서, 메모리 어레이는 어레이 메모리 구조체 하의 상보형 금속-산화물 반도체(CUA)를 포함한다. 일부 실시예에서, 메모리 어레이는 어레이 메모리 구조체에 인접한 상보형 금속-산화물 반도체(CAA)를 포함한다. 일부 실시예에서, 각각의 개별 서브-메모리 블록은 8-킬로바이트 서브-메모리 블록을 포함한다. 일부 실시예에서, 각각의 개별 서브-메모리 블록은 4-킬로바이트 서브-메모리 블록을 포함한다. 일부 실시예에서, 프로세서는 추가적으로: 메모리 블록에 대응하는 비트 라인의 제2 그룹을 식별하고; 각각의 비트 라인 바이어싱 트랜지스터를 사용하여 제1 전압과는 상이한 제2 전압으로 비트 라인의 제2 그룹을 바이어싱하도록 구성된다. 일부 실시예에서, 프로세서는 추가적으로 각각의 메모리 블록에 대해, 비트 라인의 제2 그룹과 교차하는 각각의 메모리 블록의 워드 라인에 대응하는 각각의 서브-메모리 블록을 식별하고; 그리고 비트 라인의 제2 그룹과 연관된 각각의 개별 서브-메모리 블록에 대한 메모리 셀의 메모리 어드레스를 논리적으로 그룹화하도록 구성된다.
일부 실시예에서, 메모리 시스템에서 서브-메모리 블록을 정의하기 위한 방법은 3차원 메모리 어레이의 메모리 블록에 대응하는 복수의 비트 라인 그룹을 식별하는 단계를 포함한다. 본 방법은 또한 복수의 비트 라인 그룹의 각각의 개별 비트 라인 그룹에 대응하는 비트 라인 바이어싱 트랜지스터를 사용하여 복수의 비트 라인 그룹의 각각의 비트 라인 그룹을 각각의 전압으로 바이어싱하는 단계를 포함한다. 본 방법은 또한 각각의 메모리 블록에 대해, 복수의 비트 라인 그룹의 비트 라인 그룹 중 각각의 것들과 교차하는 각각의 메모리 블록의 워드 라인에 대응하는 각각의 서브-메모리 블록을 식별하는 단계를 포함한다. 본 방법은 또한 각각의 개별 서브-메모리 블록에 대해 메모리 셀의 메모리 어드레스를 논리적으로 그룹화하는 단계를 포함한다.
일부 실시예에서, 본 방법은 또한 서브-메모리 블록 중 선택된 것들에 대한 소거 동작을 수행하는 단계를 포함한다.
위의 논의는 본 발명의 원리 및 다양한 실시예를 예시하는 것으로 의미된다. 위의 개시가 완전히 이해되면, 다수의 변형 및 수정이 본 기술 분야의 통상의 기술자에게 명백해질 것이다. 아래의 청구 범위는 이러한 모든 변형 및 수정을 포함하는 것으로 해석되도록 의도된다. 선행 설명 및 청구 범위에서, "포함하는(including)" 및 "포괄하는(comprising)"이라는 용어는 개방형 방식으로 사용되며, 따라서 "포함하지만, 이에 한정되지 않는"을 의미하는 것으로 해석되어야 한다. 또한, "커플링하다(couple)" 또는 "커플링하다(couples)"라는 용어는 간접 또는 직접 연결 중 어느 하나를 의미하는 것으로 의도된다. 따라서, 제1 디바이스가 제2 디바이스에 커플링된다면, 해당 연결은 직접 연결을 통한 것이거나 다른 디바이스 및 연결을 통한 간접 연결을 통한 것일 수 있다.
"예(example)"라는 단어는 본원에서 예, 사례 또는 예시로서의 역할을 의미하는 데 사용된다. "예"로서 본원에 설명된 임의의 양태 또는 설계는 반드시 다른 양태 또는 설계에 비해 바람직하거나 유리한 것으로 해석되어야 하는 것은 아니다. 오히려, "예"라는 단어의 사용은 구체적인 방식으로 개념을 제시하도록 의도된다. 본 출원에 사용된 바와 같이, "또는"이라는 용어는 배타적인 "또는"보다는 포괄적인 "또는"을 의미하도록 의도된다. 즉, 달리 명시되거나 또는 맥락에서 명백하지 않는 한, "X가 A 또는 B를 포함한다"는 임의의 자연적인 포괄적 치환을 의미하도록 의도된다. 즉, X가 A를 포함하거나; X가 B를 포함하거나; X가 A 및 B 모두를 포함하는 경우, "X는 A 또는 B를 포함한다"가 임의의 상술한 사례 하에서 충족된다. 또한, 본 출원과 첨부된 청구 범위에서 사용되는 관사 "어느(a)" 및 "어떤(an)"은 문맥으로부터 단수형으로 지시되는 것으로 다른 방식으로 또는 명백하게 특정되지 않는 한, 일반적으로 "하나 이상"을 의미하는 것으로 해석되어야 한다. 또한, 전체적으로 "구현" 또는 "일 구현"이라는 용어의 사용은 동일한 것으로 설명되지 않는 한 동일한 실시예 또는 구현을 의미하는 것으로 의도되지 않는다.
본원에 설명된 시스템, 알고리즘, 방법, 명령 등의 구현은 하드웨어, 소프트웨어, 또는 이들의 임의의 조합으로 실현될 수 있다. 하드웨어는 예를 들어, 컴퓨터, 지적 재산(IP) 코어, 주문형 집적 회로(application-specific integrated circuit; ASIC), 프로그램 가능 논리 어레이, 광학 프로세서, 프로그램 가능 논리 제어기, 마이크로코드, 마이크로컨트롤러, 서버, 마이크로프로세서, 디지털 신호 프로세서, 또는 임의의 다른 적절한 회로를 포함할 수 있다. 청구 범위에서, "프로세서"라는 용어는 상술한 하드웨어 중 임의의 것을, 단독 또는 조합하여 포함하는 것으로 이해되어야 한다. "신호" 및 "데이터"라는 용어는 상호 교환 가능하게 사용된다.
본원에 사용되는 바와 같이, 모듈이라는 용어는 다른 구성 요소와 함께 사용되도록 설계된 패키지형 기능성 하드웨어 유닛, 제어기(예를 들어, 소프트웨어 또는 펌웨어를 실행하는 프로세서)에 의해 실행 가능한 명령어 세트, 특정 기능을 수행하도록 구성된 프로세싱 회로, 및 더 큰 시스템과 인터페이싱하는 독립형 하드웨어 또는 소프트웨어 구성 요소를 포함할 수 있다. 예를 들어, 모듈은 주문형 집적 회로(ASIC), 필드 프로그램 가능 게이트 어레이(FPGA), 회로, 디지털 논리 회로, 아날로그 회로, 개별 회로의 조합, 게이트, 및 다른 유형의 하드웨어 또는 이들의 조합을 포함할 수 있다. 다른 실시예에서, 모듈은 모듈의 특징을 구현하기 위하여 제어기에 의해 실행 가능한 명령을 저장하는 메모리를 포함할 수 있다. 일부 실시예에서, 제어기(104)는 호스트(106) 내에 구현되어 본원에 설명된 다양한 기능을 수행하기 위한 하드웨어 및/또는 펌웨어로 구성될 수 있다.
"제어기"는 개별 회로 구성 요소, 주문형 집적 회로(ASIC), 제어 소프트웨어를 갖는 마이크로컨트롤러, 디지털 신호 프로세서(DSP), 제어 소프트웨어를 갖는 프로세서, 필드 프로그램 가능 게이트 어레이(FPGA) 또는 이들의 조합을 의미할 것이다.
또한, 일 양태에서, 예를 들어, 본원에 설명된 시스템은, 실행 시, 본원에 설명된 임의의 각각의 방법, 알고리즘 및/또는 명령을 수행하는 컴퓨터 프로그램을 갖는 범용 컴퓨터 또는 범용 프로세서를 사용하여 구현될 수 있다. 추가적으로 또는 대안적으로, 예를 들어, 본원에 설명된 임의의 방법, 알고리즘 또는 명령을 수행하기 위한 다른 하드웨어를 포함할 수 있는 특수 목적 컴퓨터/프로세서가 활용될 수 있다.
또한, 본 개시의 구현의 전부 또는 일부는 예를 들어, 컴퓨터-사용 가능 또는 컴퓨터-판독 가능 매체로부터 액세스 가능한 컴퓨터 프로그램 제품의 형태를 취할 수 있다. 컴퓨터-사용 가능 또는 컴퓨터-판독 가능 매체는 예를 들어, 임의의 프로세서에 의한 사용 또는 그것과의 연결을 위하여 프로그램을 유형적으로 포함, 저장, 전달 또는 전송할 수 있는 임의의 디바이스일 수 있다. 매체는 예를 들어, 전자, 자기, 광학, 전자기 또는 반도체 디바이스일 수 있다. 다른 적절한 매체가 또한 이용 가능하다.
상술한 실시예, 구현 및 양태는 본 발명의 용이한 이해를 위해 설명되었고 본 발명을 제한하지 않는다. 반대로, 본 발명은 첨부된 청구 범위의 범위 내에 포함되는 다양한 수정 및 등가 구성을 커버하도록 의도되며, 그 범위는 법에서 허용되는 한 이러한 모든 수정 및 등가 구조를 포함하는 가장 넓은 해석에 따라야 한다.

Claims (20)

  1. 메모리 블록 관리를 위한 방법으로서,
    3차원 메모리 어레이의 메모리 블록들에 대응하는 비트 라인들의 제1 그룹을 식별하는 단계;
    각각의 비트 라인 바이어싱 트랜지스터들을 사용하여 상기 비트 라인들의 제1 그룹을 제1 전압으로 바이어싱하는 단계;
    각각의 메모리 블록에 대해, 상기 비트 라인들의 제1 그룹과 교차하는 각각의 메모리 블록의 워드 라인들에 대응하는 각각의 서브-메모리 블록들을 식별하는 단계; 및
    상기 비트 라인들의 제1 그룹과 연관된 각각의 개별 서브-메모리 블록에 대해 메모리 셀들의 메모리 어드레스들을 논리적으로 그룹화하는 단계를 포함하는, 방법.
  2. 제1항에 있어서,
    적어도 하나의 서브-메모리 블록에 대해 동작을 수행하는 단계를 추가로 포함하는, 방법.
  3. 제2항에 있어서,
    상기 동작은 소거 동작을 포함하는, 방법.
  4. 제1항에 있어서,
    상기 메모리 어레이는 어레이 메모리 구조체 하의 상보형 금속-산화물 반도체(CUA)를 포함하는, 방법.
  5. 제1항에 있어서,
    상기 메모리 어레이는 어레이 메모리 구조체에 인접한 상보형 금속-산화물 반도체(CAA)를 포함하는, 방법.
  6. 제1항에 있어서,
    각각의 개별 서브-메모리 블록은 8-킬로바이트 서브-메모리 블록을 포함하는, 방법.
  7. 제1항에 있어서,
    각각의 개별 서브-메모리 블록은 4-킬로바이트 서브-메모리 블록을 포함하는, 방법.
  8. 제1항에 있어서,
    상기 메모리 블록들에 대응하는 비트 라인들의 제2 그룹을 식별하는 단계; 및
    각각의 비트 라인 바이어싱 트랜지스터들을 사용하여, 상기 비트 라인들의 제2 그룹을 상기 제1 전압과는 상이한 제2 전압으로 바이어싱하는 단계를 추가로 포함하는, 방법.
  9. 제8항에 있어서,
    각각의 메모리 블록에 대해, 상기 비트 라인들의 제2 그룹과 교차하는 각각의 메모리 블록의 워드 라인들에 대응하는 각각의 서브-메모리 블록들을 식별하는 단계; 및
    상기 비트 라인들의 제2 그룹과 연관된 각각의 개별 서브-메모리 블록에 대해 메모리 셀들의 메모리 어드레스들을 논리적으로 그룹화하는 단계를 추가로 포함하는, 방법.
  10. 제어기로서,
    3차원 메모리 어레이의 복수의 메모리 블록과 통신하는 버스 인터페이스; 및
    프로세서를 포함하며,
    상기 프로세서는,
    상기 메모리 블록들에 대응하는 비트 라인들의 제1 그룹을 식별하고;
    각각의 비트 라인 바이어싱 트랜지스터들을 사용하여 상기 비트 라인들의 제1 그룹을 제1 전압으로 바이어싱하고;
    각각의 메모리 블록에 대해, 상기 비트 라인들의 제1 그룹과 교차하는 각각의 메모리 블록의 워드 라인들에 대응하는 각각의 서브-메모리 블록들을 식별하고; 그리고
    상기 비트 라인들의 제1 그룹과 연관된 각각의 개별 서브-메모리 블록에 대해 메모리 셀들의 메모리 어드레스들을 논리적으로 그룹화하도록 구성되는, 제어기.
  11. 제10항에 있어서,
    상기 프로세서는 적어도 하나의 서브-메모리 블록에 대해 동작을 수행하도록 추가로 구성되는, 제어기.
  12. 제11항에 있어서,
    상기 동작은 소거 동작을 포함하는, 제어기.
  13. 제10항에 있어서,
    상기 메모리 어레이는 어레이 메모리 구조체 하의 상보형 금속-산화물 반도체(CUA)를 포함하는, 제어기.
  14. 제10항에 있어서,
    상기 메모리 어레이는 어레이 메모리 구조체에 인접한 상보형 금속-산화물 반도체(CAA)를 포함하는, 제어기.
  15. 제10항에 있어서,
    각각의 개별 서브-메모리 블록은 8-킬로바이트 서브-메모리 블록을 포함하는, 제어기.
  16. 제10항에 있어서,
    각각의 개별 서브-메모리 블록은 4-킬로바이트 서브-메모리 블록을 포함하는, 제어기.
  17. 제10항에 있어서,
    상기 프로세서는 추가적으로,
    상기 메모리 블록들에 대응하는 비트 라인들의 제2 그룹을 식별하고; 그리고
    각각의 비트 라인 바이어싱 트랜지스터들을 사용하여, 상기 비트 라인들의 제2 그룹을 상기 제1 전압과는 상이한 제2 전압으로 바이어싱하도록 구성되는, 제어기.
  18. 제17항에 있어서,
    상기 프로세서는 추가적으로,
    각각의 메모리 블록에 대해, 상기 비트 라인들의 제2 그룹과 교차하는 각각의 메모리 블록의 워드 라인들에 대응하는 각각의 서브-메모리 블록들을 식별하고; 그리고
    상기 비트 라인들의 제2 그룹과 연관된 각각의 개별 서브-메모리 블록에 대해 메모리 셀들의 메모리 어드레스들을 논리적으로 그룹화하도록 구성되는, 제어기.
  19. 메모리 시스템의 서브-메모리 블록들을 정의하기 위한 방법으로서,
    3차원 메모리 어레이의 메모리 블록들에 대응하는 복수의 비트 라인 그룹을 식별하는 단계;
    상기 복수의 비트 라인 그룹의 각각의 개별 비트 라인 그룹에 대응하는 비트 라인 바이어싱 트랜지스터들을 사용하여 상기 복수의 비트 라인 그룹의 각각의 비트 라인 그룹을 각각의 전압으로 바이어싱하는 단계;
    각각의 메모리 블록에 대해, 상기 복수의 비트 라인 그룹의 상기 비트 라인 그룹들 중 각각의 그룹들과 교차하는 각각의 메모리 블록의 워드 라인들에 대응하는 각각의 서브-메모리 블록들을 식별하는 단계; 및
    각각의 개별 서브-메모리 블록에 대해 메모리 셀들의 메모리 어드레스들을 논리적으로 그룹화하는 단계를 포함하는, 방법.
  20. 제19항에 있어서,
    상기 서브-메모리 블록들 중 선택된 것들에 대한 소거 동작을 수행하는 단계를 추가로 포함하는, 방법.
KR1020217018484A 2019-12-05 2020-03-25 메모리 서브-블록을 정의하기 위한 시스템 및 방법 KR102661778B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/704,729 US11487454B2 (en) 2019-12-05 2019-12-05 Systems and methods for defining memory sub-blocks
US16/704,729 2019-12-05
PCT/US2020/024583 WO2021112905A1 (en) 2019-12-05 2020-03-25 Systems and methods for defining memory sub-blocks

Publications (2)

Publication Number Publication Date
KR20210077796A true KR20210077796A (ko) 2021-06-25
KR102661778B1 KR102661778B1 (ko) 2024-04-30

Family

ID=76210467

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217018484A KR102661778B1 (ko) 2019-12-05 2020-03-25 메모리 서브-블록을 정의하기 위한 시스템 및 방법

Country Status (5)

Country Link
US (1) US11487454B2 (ko)
KR (1) KR102661778B1 (ko)
CN (1) CN113508434B (ko)
DE (1) DE112020000159T5 (ko)
WO (1) WO2021112905A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210106753A (ko) * 2020-02-21 2021-08-31 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법
KR20210145386A (ko) * 2020-05-25 2021-12-02 삼성전자주식회사 라인 식별자를 갖는 반도체 소자들
CN115810378A (zh) * 2021-09-13 2023-03-17 长鑫存储技术有限公司 存储电路及存储器
US12002503B2 (en) 2021-09-13 2024-06-04 Changxin Memory Technologies, Inc. Memory circuit and memory

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100666325B1 (ko) * 2004-12-15 2007-01-09 삼성전자주식회사 메모리 셀 어레이 블록 할당 방법, 메모리 셀 어레이블록의 어드레싱 방법 및 이를 이용한 반도체 메모리 장치
KR20150080531A (ko) * 2012-10-26 2015-07-09 마이크론 테크놀로지, 인크. 부분 페이지 메모리 동작
KR20180031836A (ko) * 2016-09-19 2018-03-29 에스케이하이닉스 주식회사 저항성 메모리 장치 및 이를 위한 라인 선택 회로
KR20180087809A (ko) * 2017-01-25 2018-08-02 삼성전자주식회사 비휘발성 메모리 장치 및 상기 비휘발성 메모리 장치의 프로그램 방법
KR20190057517A (ko) * 2017-11-20 2019-05-29 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6407961B1 (en) * 1998-06-11 2002-06-18 Dsp Group, Ltd. Dual access memory array
US6856572B2 (en) * 2000-04-28 2005-02-15 Matrix Semiconductor, Inc. Multi-headed decoder structure utilizing memory array line driver with dual purpose driver device
KR100512933B1 (ko) * 2002-01-09 2005-09-07 삼성전자주식회사 반도체 메모리 장치 및 이 장치의 블록 선택신호 발생방법
US7791952B2 (en) * 2007-01-30 2010-09-07 Micron Technology, Inc. Memory device architectures and operation
JP5085446B2 (ja) * 2008-07-14 2012-11-28 株式会社東芝 三次元メモリデバイス
KR101703106B1 (ko) 2011-01-04 2017-02-06 삼성전자주식회사 부분-이레이즈 동작을 수행할 수 있는 비휘발성 메모리 장치와 상기 비휘발성 메모리 장치를 포함하는 장치들
US8908432B2 (en) * 2012-11-15 2014-12-09 SanDisk Technologies, Inc. Bit line resistance compensation
US20140307504A1 (en) 2013-04-12 2014-10-16 Winbond Electronics Corp. Data storage device, and fabrication and control methods thereof
US9202578B2 (en) * 2013-10-02 2015-12-01 Conversant Intellectual Property Management Inc. Vertical gate stacked NAND and row decoder for erase operation
US9922719B2 (en) * 2015-06-07 2018-03-20 Sandisk Technologies Llc Multi-VT sensing method by varying bit line voltage
US9721668B2 (en) * 2015-08-06 2017-08-01 Macronix International Co., Ltd. 3D non-volatile memory array with sub-block erase architecture
KR102312404B1 (ko) 2015-09-07 2021-10-13 에스케이하이닉스 주식회사 저장 장치 및 이의 동작 방법
US9875787B2 (en) * 2015-12-08 2018-01-23 Rambus Inc. Reduced transport energy in a memory system
US9953717B2 (en) 2016-03-31 2018-04-24 Sandisk Technologies Llc NAND structure with tier select gate transistors
KR102469539B1 (ko) * 2017-12-22 2022-11-22 삼성전자주식회사 비휘발성 메모리 장치, 비휘발성 메모리 장치의 동작 방법 및 저장 장치
US10541038B2 (en) * 2018-06-12 2020-01-21 Sandisk Technologies Llc Subgroup selection for verification
US10651153B2 (en) 2018-06-18 2020-05-12 Intel Corporation Three-dimensional (3D) memory with shared control circuitry using wafer-to-wafer bonding
US10643721B2 (en) * 2018-06-21 2020-05-05 Sandisk Technologies Llc Interleaved program and verify in non-volatile memory
US10691539B2 (en) * 2018-06-28 2020-06-23 Western Digital Technologies, Inc. Grown defect detection and mitigation using ECC in memory systems
US10762946B2 (en) * 2018-12-31 2020-09-01 Micron Technology, Inc. Memory with partial array refresh
KR20220020710A (ko) * 2020-08-12 2022-02-21 에스케이하이닉스 주식회사 테스트 회로, 메모리 장치, 저장 장치 및 그 동작 방법
KR20220021770A (ko) * 2020-08-14 2022-02-22 에스케이하이닉스 주식회사 메모리 장치 및 그 동작 방법
KR20220028888A (ko) * 2020-08-31 2022-03-08 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
JP7476061B2 (ja) * 2020-09-15 2024-04-30 キオクシア株式会社 半導体記憶装置
US20220091760A1 (en) * 2020-09-22 2022-03-24 SK Hynix Inc. Storage device, host device, electronic device including storage device and host device, and method of operating the same
KR20220039202A (ko) * 2020-09-22 2022-03-29 에스케이하이닉스 주식회사 메모리 장치 및 그 동작 방법
KR20220041593A (ko) * 2020-09-25 2022-04-01 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
KR20220046978A (ko) * 2020-10-08 2022-04-15 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
KR20220055319A (ko) * 2020-10-26 2022-05-03 에스케이하이닉스 주식회사 메모리 장치 및 그 동작 방법
KR20220060385A (ko) * 2020-11-04 2022-05-11 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
KR20220077679A (ko) * 2020-12-02 2022-06-09 에스케이하이닉스 주식회사 메모리 장치 및 그 동작 방법
US11483014B2 (en) * 2020-12-22 2022-10-25 SK Hynix Inc. System and method for soft decoding without additional reads
US20220114115A1 (en) * 2021-12-21 2022-04-14 Intel Corporation Interleaving of heterogeneous memory targets

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100666325B1 (ko) * 2004-12-15 2007-01-09 삼성전자주식회사 메모리 셀 어레이 블록 할당 방법, 메모리 셀 어레이블록의 어드레싱 방법 및 이를 이용한 반도체 메모리 장치
KR20150080531A (ko) * 2012-10-26 2015-07-09 마이크론 테크놀로지, 인크. 부분 페이지 메모리 동작
KR20180031836A (ko) * 2016-09-19 2018-03-29 에스케이하이닉스 주식회사 저항성 메모리 장치 및 이를 위한 라인 선택 회로
KR20180087809A (ko) * 2017-01-25 2018-08-02 삼성전자주식회사 비휘발성 메모리 장치 및 상기 비휘발성 메모리 장치의 프로그램 방법
KR20190057517A (ko) * 2017-11-20 2019-05-29 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법

Also Published As

Publication number Publication date
US20210173559A1 (en) 2021-06-10
WO2021112905A1 (en) 2021-06-10
DE112020000159T5 (de) 2021-08-19
US11487454B2 (en) 2022-11-01
CN113508434A (zh) 2021-10-15
KR102661778B1 (ko) 2024-04-30
CN113508434B (zh) 2024-10-22

Similar Documents

Publication Publication Date Title
KR102661778B1 (ko) 메모리 서브-블록을 정의하기 위한 시스템 및 방법
US20170161202A1 (en) Flash memory device including address mapping for deduplication, and related methods
KR102303051B1 (ko) 백그라운드 소거를 이용한 솔리드-스테이트 드라이브 기록 성능 향상
US20200210596A1 (en) Systems for providing access to protected memory
US11003373B2 (en) Systems and methods for managing physical-to- logical address information
US11126368B2 (en) Systems and methods for finding a last good page in NAND open block
US10725687B1 (en) Settable replay protected memory block characteristics in a logic unit
US10884628B2 (en) Performance of a read in a memory system
US10734081B1 (en) Pulse-amplitude modulation for a multiple die memory device
US11082036B2 (en) Memory interface system for duty-cycle error detection and correction
US9478289B1 (en) Semiconductor memory device and operating method thereof
US20200226064A1 (en) Method of reverse mapping and data consolidation to enhance random performance
KR102404566B1 (ko) 메모리 시스템 상의 프로그램 검증을 위한 시스템 및 방법
US10886002B1 (en) NAND field use erase plus defect detections
US10991447B2 (en) Clock frequency counting during high-voltage operations for immediate leakage detection and response
US11106575B2 (en) Systems and methods for data storage in a memory system
CN109840214B (zh) 数据存储装置及其操作方法
TW202234397A (zh) 資料儲存裝置以及非揮發式記憶體控制方法
CN112148212B (zh) 用于存储器装置的多维伪随机二进制序列分析
US10984883B1 (en) Systems and methods for capacity management of a memory system
US20240233813A1 (en) Dummy data-based read reference voltage search of nand memory
KR20230075645A (ko) 반도체 장치 내 신호 간섭을 줄이기 위한 장치 및 방법
CN112445717A (zh) 用于取消映射技术的元数据分组

Legal Events

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