KR20220153115A - 가변 페이지 크기 아키텍처 - Google Patents

가변 페이지 크기 아키텍처 Download PDF

Info

Publication number
KR20220153115A
KR20220153115A KR1020227038632A KR20227038632A KR20220153115A KR 20220153115 A KR20220153115 A KR 20220153115A KR 1020227038632 A KR1020227038632 A KR 1020227038632A KR 20227038632 A KR20227038632 A KR 20227038632A KR 20220153115 A KR20220153115 A KR 20220153115A
Authority
KR
South Korea
Prior art keywords
memory
page size
partition
row
page
Prior art date
Application number
KR1020227038632A
Other languages
English (en)
Other versions
KR102656534B1 (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 KR20220153115A publication Critical patent/KR20220153115A/ko
Application granted granted Critical
Publication of KR102656534B1 publication Critical patent/KR102656534B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • G11C7/1012Data reordering during input/output, e.g. crossbars, layers of multiplexers, shifting or rotating
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1045Read-write mode select circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/10Decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/16Multiple access memory array, e.g. addressing one storage element via at least two independent addressing line groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C2029/1804Manipulation of word size
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2245Memory devices with an internal cache buffer

Abstract

가변 페이지 크기를 가지는 메모리 어레이를 동작시키는 방법, 시스템, 및 디바이스가 기술된다. 페이지 크기는 동적으로 변경될 수 있으며, 메모리 어레이의 다수의 행은 필요한 페이지 크기를 생성하도록 병렬로 액세스될 수 있다. 어레이의 메모리 뱅크는 복수의 메모리 구획을 포함할 수 있으며, 각각의 메모리 구획은 메모리 셀을 판독하거나 또는 프로그래밍하도록 감지 구성 요소(예를 들어, 감지 증폭기)의 그 자체의 세트를 가질 수 있다. 그러므로, 복수의 메모리 구획은 메모리 셀의 다수의 행으로부터 메모리 페이지를 생성하도록 병렬로 액세스될 수 있다. 어드레싱 체계는 페이지 크기에 기초하여 수정될 수 있다. 논리 행 어드레스는 병렬로 액세스될 메모리 구획을 식별할 수 있다. 메모리 구획은 또한 링크될 수 있으며, 하나의 구획에서의 행에 액세스하는 것은 제2 메모리 구획에서의 행을 자동으로 액세스할 수 있다.

Description

가변 페이지 크기 아키텍처{VARIABLE PAGE SIZE ARCHITECTURE}
상호 참조
본 출원은 "Variable Page Size Architecture"라는 명칭으로 Villa에 의해 2016년 7월 29일자로 출원된 미국 특허 출원 제15/223,753호에 대해 우선권을 주장하는, "Variable Page Size Architecture"라는 명칭으로 2017년 7월 19일자로 출원된 PCT/US2017/042895에 대해 우선권을 주장하며, 이들 기초 출원은 그 각각이 양수인에게 양도되고 그 전문이 참고로 본 명세서에 원용된다.
다음은 일반적으로 메모리 디바이스에 관한 것이고, 더욱 상세하게는 가변 페이지 크기 아키텍처를 가지는 메모리 디바이스에 관한 것이다.
메모리 디바이스는 컴퓨터, 무선 통신 디바이스, 카메라, 디지털 디스플레이 등과 같은 다양한 전자 디바이스에서 정보를 저장하기 위해 널리 사용된다. 정보는 메모리 디바이스의 상이한 상태를 프로그래밍하는 것에 의해 저장된다. 예를 들어, 바이너리 디바이스(binary device)는 때때로 논리 "1" 또는 논리 "0"으로 표시되는 2개의 상태를 가진다. 다른 시스템에서, 2개보다 많은 상태가 저장될 수 있다. 저장된 정보를 액세스하도록, 전자 디바이스는 메모리 디바이스에서 저장된 상태를 판독하거나 감지할 수 있다. 정보를 저장하기 위해, 전자 디바이스는 메모리 디바이스에서의 상태를 기록하거나 프로그래밍할 수 있다.
랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 동적 RAM(DRAM), 동기식 동적 RAM(SDRAM), 강유전체 RAM(FeRAM), 자기 RAM(MRAM), 저항성 RAM(RRAM), 플래시 메모리 등을 포함하는 다양한 유형의 메모리 디바이스가 존재한다. 메모리 디바이스는 휘발성 또는 비휘발성일 수 있다. 비휘발성 메모리, 예를 들어 플래시 메모리는 외부 전원의 부재시에도 장시간 동안 데이터를 저장할 수 있다. 휘발성 메모리 디바이스, 예를 들어 DRAM은 외부 전원에 의해 주기적으로 리프레시되지 않으면 시간 경과에 따라서 그 저장된 상태를 상실할 수 있다. 바이너리 메모리 디바이스는 예를 들어 충전 또는 방전된 커패시터를 포함할 수 있다. 그러나, 충전된 커패시터는 누설 전류를 통해 시간 경과에 따라서 방전되어, 저장된 정보의 상실을 초래한다. 휘발성 메모리의 특정 특징은 보다 빠른 판독 또는 기록 속도와 같은 성능 이점을 제공할 수 있지만, 주기적인 리프레시없이 데이터를 저장하는 능력과 같은 비휘발성 메모리의 특징이 유익할 수 있다.
일부 비휘발성 메모리 디바이스는 휘발성 메모리와 유사한 디바이스 아키텍처를 사용할 수 있다. 이러한 디바이스는 다른 비휘발성 및 휘발성 메모리 디바이스에 비교하여 개선된 성능을 가질 수 있다. 정보가 종종 다수의 2진 비트(메모리 셀)로 표현되기 때문에, 많은 메모리 셀은 판독 또는 기록 동작 동안 한번에 액세스될 수 있다. 이러한 메모리 페이지 기반 액세스(memory page-based accessing)는 또한 메모리 어레이의 성능을 향상시킬 수 있다. 그러나, 메모리 페이지가 크면, 이러한 것은 원래 필요로 하지 않은 많은 비트를 포함할 수 있다. 이러한 미사용 메모리 셀을 액세스하는 것은 에너지를 낭비할 수 있으며, 다이 공간(die space)을 차지하는 불필요한 구성 요소를 요구할 수 있다.
본 발명은 다음의 도면을 참조하고 포함한다:
도 1은 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 지원하는 예시적인 메모리 어레이를 도시한 도면;
도 2는 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 지원하는 메모리 셀의 예시적인 회로를 도시한 도면;
도 3은 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 지원하는 예시적인 메모리 어레이를 도시한 도면;
도 4는 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 지원하는 메모리 어레이의 예시적인 회로를 도시한 도면;
도 5는 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 지원하는 예시적인 메모리 어레이의 블록도;
도 6은 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 지원하는 메모리 어레이를 포함하는 시스템을 도시한 도면; 및
도 7 내지 도 11은 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 가지는 메모리 어레이를 동작시키는 방법 또는 방법들을 도시하는 흐름도.
메모리 어레이의 페이지 크기는 메모리 어레이의 다수의 행(row)을 액세스하는 것에 의해 동적으로 변경될 수 있다. 메모리 어레이는 다수의 메모리 뱅크(memory bank)로 구성될 수 있으며, 각각의 뱅크는 여러 개의 메모리 구획을 포함한다. 각각의 메모리 구획은 메모리 셀의 어레이, 및 메모리 셀을 판독하거나 프로그래밍하도록 감지 구성 요소(예를 들어, 감지 증폭기)의 세트를 가질 수 있다. 메모리 페이지를 열도록, 메모리 구획 내의 행은 액세스될 수 있고, 행 내의 메모리 셀의 서브세트는 감지되고 버퍼링될 수 있다. 각각의 메모리 구획이 감지 구성 요소의 그 자체의 세트를 가지기 때문에, 다수의 메모리 구획은 메모리 뱅크의 다수의 행을 액세스하도록 병렬로 액세스되어, 가변 크기의 페이지 크기를 가능하게 한다.
어드레싱 체계(addressing scheme)는 페이지 크기에 기초하여 수정될 수 있다. 메모리 컨트롤러는 메모리 페이지를 열도록 논리 행 어드레스(logic row address)를 메모리 어레이에 보낼 수 있다. 복수의 메모리 구획이 병렬로 액세스되면, 논리 행 어드레스는 메모리 구획을 식별할 수 있다. 일부 예에서, 메모리 구획은 링크될 수 있으며, 하나의 구획에 있는 행을 액세스하는 것은 제2 메모리 구획의 행을 자동으로 액세스할 수 있다. 메모리 페이지가 열리면, 메모리 컨트롤러는 프로세서에 전송될 메모리 페이지의 서브세트를 선택하는 열 액세스 명령(column access command)을 전송할 수 있다. 서브세트는 고정된 길이일 수 있으며, 그러므로 열 액세스 명령은 페이지 크기가 변함에 따라서 변할 수 있다. 그래서, 메모리 컨트롤러는 페이지 크기에 기초하여 논리 행 어드레스 및 열 어드레스를 수정할 수 있다.
본 명세서에 기술된 동적 페이지 크기 동작은 다수의 이점을 제공할 수 있다. 예를 들어, 감지 구성 요소가 더욱 적게 사용되기 때문에, 즉 행 내의 메모리 셀의 서브세트만이 한번에 판독되거나 프로그래밍되기 때문에, 다이 크기는 감소될 수 있다. 이러한 것은 또한 동작 동안 전력 소비를 감소시킬 수 있다. 또한, 성능에서의 증가(예를 들어, 메모리 어레이에 저장된 데이터를 액세스하는 전체 시간)가 필요하면, 페이지 크기는 병렬로 다수의 메모리 행을 액세스하는 것에 의해 증가될 수 있다.
일부 예에서, 페이지 크기는 메모리 어레이를 포함하는 디바이스를 켤 때 결정될 수 있다. 다른 예에서, 페이지 크기는 명령을 수신하는 것에 의해 변경될 수 있다. 예를 들어, 소프트웨어 애플리케이션은 다양한 인자들에 기초하여 바람직한 페이지 크기를 결정하고, 그런 다음 이러한 페이지 크기를 사용하도록 메모리 어레이에 지시할 수 있다.
위에서 소개된 본 발명의 특징은 메모리 어레이의 맥락에서 다음에 또한 설명된다. 가변 페이지 크기뿐만 아니라 그 동작을 지원하는 메모리 어레이에 대한 특정 예가 설명된다. 본 발명의 이들 및 다른 특징은 가변 페이지 크기 아키텍처에 관한 장치 도면, 시스템 도면, 및 흐름도에 의해 또한 도시되고 이를 참조하여 또한 설명된다. 본 발명은 임의의 비휘발성 메모리에 관한 것일 수 있다. 일부 예가 강유전체 커패시터를 참조하여 설명될지라도, 본 발명은 강유전체 메모리로 제한되지 않는다. 예를 들어, 본 발명은 다른 메모리 유형들 중에서, 크로스 포인트 메모리, 저항성 메모리, 칼코겐화물 기반 메모리, 자기 메모리, 플래시 메모리, 박막 메모리에 관한 것일 수 있다.
도 1은 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 지원하는 예시적인 메모리 어레이(100)를 도시한다. 메모리 어레이(100)는 전자 메모리 장치로서 또한 지칭될 수 있다. 메모리 어레이(100)는 상이한 논리 상태를 저장하도록 프로그래밍 가능한 메모리 셀(105)을 포함한다. 각각의 메모리 셀(105)은 논리 0 및 논리 1로 표시되는 2개의 상태를 저장하도록 프로그래밍 가능할 수 있다. 일부 경우에, 메모리 셀(105)은 2개보다 많은 논리 상태를 저장하도록 구성된다. 메모리 셀(105)은 그 중에서도 강유전체 커패시터, 스핀 토크 전달 디바이스, 자기 터널 접합, 상 변화 디바이스, 메모리 트랜지스터 등과 같은 다양한 논리 저장 디바이스 중 하나일 수 있다.
판독 및 기록과 같은 동작은 적절한 액세스 라인(110) 및 디지트 라인(digit line)(115)을 활성화하거나 또는 선택하는 것에 의해 메모리 셀(105)에서 수행될 수 있다. 액세스 라인(110)은 워드 라인(110)으로서 지칭될 수 있고, 디지트 라인(115)은 비트 라인(bit line)(115)으로서 지칭될 수 있다. 워드 라인(110) 또는 디지트 라인(115)을 활성화 또는 선택하는 것은 각각의 라인에 전압을 인가하는 것을 포함할 수 있다. 워드 라인(110) 및 디지트 라인(115)은 도전성 재료로 만들어진다. 예를 들어, 워드 라인(110) 및 디지트 라인(115)은 금속(구리, 알루미늄, 금, 텅스텐 등과 같은), 금속 합금, 도핑된 반도체, 다른 도전성 재료 등으로 만들어질 수 있다. 도 1의 예에 따라서, 메모리 셀(105)들의 각각의 행은 단일 워드 라인(110)에 접속되고, 메모리 셀(105)들의 각각의 열은 단일 디지트 라인(115)에 접속된다. 하나의 워드 라인(110) 및 하나의 디지트 라인(115)을 활성화하는 것(예를 들어, 워드 라인(110) 또는 디지트 라인(115)에 전압을 인가하는 것)에 의해, 단일 메모리 셀(105)은 그 교차 지점에서 액세스될 수 있다. 메모리 셀(105)을 액세스하는 것은 메모리 셀(105)을 판독 또는 기록하는 것을 포함할 수 있다. 워드 라인(110)과 디지트 라인(115)의 교차 지점은 메모리 셀의 어드레스로서 지칭될 수 있다.
메모리 어레이(100)는 메모리 어레이, 메모리 뱅크, 또는 메모리 구획을 나타낼 수 있다. 메모리 어레이는 칩과 같은 단일 메모리 구성 요소 내에서 병렬 동작을 향상시키기 위해 메모리 뱅크들로 분할될 수 있다. 메모리 뱅크는 다수의 메모리 구성 요소(예를 들어, 칩)를 가로지르는 다수의 행 및 열일 수 있다. 메모리 뱅크, 메모리 구획, 또는 메모리 페이지는 2D 또는 3D 메모리 어레이의 부분일 수 있다(예를 들어, 메모리 어레이(100)는 2D 또는 3D일 수 있다). 단일 판독 또는 기록 동작은 메모리 뱅크 내에서 한번에 수행될 수 있다. 그러므로, 다수의 메모리 뱅크는 전체 메모리 어레이에 대한 처리량을 증가시키기 위해 병렬로 동작될 수 있다.
각각의 메모리 뱅크는, 각각의 메모리 구획이 감지 구성 요소(125)의 그 자체의 세트를 가지는 메모리 구획들로 분할될 수 있다. 예를 들어, 메모리 뱅크는 32개의 개별 메모리 구획으로 분할될 수 있다. 뱅크를 구획들로 분할하는 것에 의해, 메모리 구획 내의 각각의 비트 라인(115)의 총 길이는 비구획화된 뱅크와 비교하여 감소된다. 이러한 보다 짧은 비트 라인(115)은 메모리 어레이의 동작 속도를 향상시킬 수 있다.
일부 아키텍처에서, 셀의 논리 저장 디바이스, 예를 들어 커패시터는 선택 구성 요소에 의해 디지트 라인으로부터 전기적으로 절연될 수 있다. 워드 라인(110)은 선택 구성 요소에 접속되어 선택 구성 요소를 제어할 수 있다. 예를 들어, 선택 구성 요소는 트랜지스터일 수 있고, 워드 라인(110)은 트랜지스터의 게이트에 접속될 수 있다. 워드 라인(110)을 활성화시키는 것은 메모리 셀(105)의 커패시터와 그 대응하는 디지트 라인(115) 사이의 전기 접속 또는 폐회로를 초래한다. 디지트 라인은 그런 다음 메모리 셀(105)을 판독하거나 기록하도록 액세스될 수 있다. 휘발성 메모리에 대하여, 워드 라인(110)을 활성화시키는 것은 워드 라인(110)과 전자 통신하는 각각의 메모리 셀(105)의 저장된 논리 상태를 파괴할 수 있고, 그러므로 행의 각각의 메모리 셀(105)이 감지되도록 요구되며, 그 논리 상태가 다시 기록될 수 있다. 비휘발성 메모리에 대하여, 이러한 것은 워드 라인(110)을 활성화시키는 것은 메모리 셀(105)을 그 디지트 라인(115)과 전자 통신 상태로 둘 수 있는 경우가 아닐 수 있지만, 각각의 메모리 셀 (105)의 논리 상태는 파괴되지 않을 수 있다. 이와 같이, 워드 라인(110)은 활성화될 수 있지만, 행에서의 메모리 셀(105)의 서브세트만이 감지 구성 요소(125)에 의해 감지될 수 있다.
메모리 셀(105)을 액세스하는 것은 행 디코더(120) 및 열 디코더(130)를 통해 제어될 수 있다. 일부 실시예에서, 행 디코더(120)는 메모리 컨트롤러(140)로부터, 2진 비트의 스트링(string)일 수 있는 행 어드레스를 수신하고, 수신된 행 어드레스에 기초하여 적절한 워드 라인(110)을 활성화한다. 예를 들어, 메모리 어레이(100)는 WL_1 내지 WL_M으로 라벨링된 다수의 워드 라인(110)을 포함할 수 있고, 행 어드레스는 워드 라인(110) 중 하나를 활성화할 수 있다. 그런 다음, 행 내의 메모리 셀(105)의 일부 또는 전부는 메모리 셀(105)의 저장된 상태를 결정하도록 감지 구성 요소(125)에 의해 감지될 수 있다. 검출된 논리 상태는 열 디코더(130)의 일부일 수 있는 버퍼에서 래칭되거나(latched) 또는 저장될 수 있다. 이러한 프로세스는 메모리 페이지를 여는 것으로서 지칭될 수 있다. 메모리 페이지의 데이터는 그런 다음 매번 워드 라인(110) 및 감지 구성 요소(125)를 활성화할 필요없이 반복적으로 액세스될 수 있다(예를 들어, 프로세서로 전송될 수 있다). 이러한 것은 메모리 어레이(100)의 액세스 시간을 개선할 수 있다. 일부 경우에, 링크 관계(linking relationship)는 다음에 상세히 설명되는 바와 같이 메모리 셀(105), 워드 라인(110), 또는 메모리 구획 사이에 존재할 수 있다. 이러한 경우에, 행 어드레스는 제1 행에서 유도될 수 있지만, 행 디코더(120)는 그 링크에 기초하여 제1 행 및 제2 행을 액세스할 수 있다. 즉, 행 디코더(120)는 제1 워드 라인(110) 및 제2 워드 라인(110)을 활성화할 수 있다. 제2 행은 감지 구성 요소(125)의 다른 세트를 가지는 또 다른 메모리 구획에 있을 수 있다.
메모리 페이지에 포함된 데이터는 그런 다음 출력(135)으로서 열 디코더(130)를 통해 출력될 수 있다. 예를 들어 열 어드레스는 버스로 출력되는 논리값의 하나 또는 서브세트를 선택하도록 열 디코더(130)로 전송될 수 있다. 이러한 열 어드레스는 서브세트 논리값을 선택하는 2진 비트의 스트링일 수 있다. 페이지 크기가 동적으로 변경될 수 있음에 따라서, 열 어드레스에서의 비트의 수가 또한 변경될 수 있다. 예를 들어, 페이지 크기가 2배이면, 2배만큼 많은 서브세트가 지금 이용 가능하고, 열 어드레스에서의 비트 수는 증가될 수 있다.
액세스시에, 메모리 셀(105)은 메모리 셀(105)의 저장된 상태를 결정하도록 감지 구성 요소(125)에 의해 판독되거나 또는 감지될 수 있다. 강유전체 커패시터를 포함하는 메모리 셀(105)의 예에서, 메모리 셀(105)을 액세스한 후에, 강유전체 커패시터는 그 대응하는 디지트 라인(115) 상으로 방전될 수 있다. 강유전체 커패시터의 비휘발성 특성으로 인해, 강유전체 커패시터를 방전하는 것은 강유전체 커패시터로의 바이어싱 또는 전압을 인가하는 것에 기초할 수 있다. 다른 체계는 다른 비휘발성 메모리에 대해 가능할 수 있다. 방전은, 메모리 셀(105)의 저장된 상태를 결정하기 위해 감지 구성 요소(125)가 기준 전압(도시되지 않음)과 비교할 수 있는, 디지트 라인(115)의 전압에서의 변화를 유발할 수 있다. 예를 들어, 디지트 라인(115)이 기준 전압보다 높은 전압을 가지면, 감지 구성 요소(125)는 메모리 셀(105)의 저장된 상태가 논리 1이었다는 것을 결정할 수 있으며, 그 반대의 경우도 결정할 수 있다. 감지 구성 요소(125)는 신호에서의 차이를 검출하고 증폭하기 위해 다양한 트랜지스터 또는 증폭기를 포함할 수 있다.
메모리 셀(105)은 관련 워드 라인(110) 및 디지트 라인(115)을 활성화하는 것에 의해 설정되거나 또는 기록될 수 있다. 전술한 바와 같이, 워드 라인(110)을 활성화하는 것은 메모리 셀(105)의 대응하는 행을 각각의 디지트 라인(115)에 전기적으로 접속한다. 워드 라인(110)이 활성화되는 동안 관련 디지트 라인(115)을 제어하는 것에 의해, 메모리 셀(105)은 기록될 수 있으며, 즉, 논리값이 메모리 셀(105)에 저장될 수 있다. 열 디코더(130)는 데이터, 예를 들어 메모리 셀(105)에 기록되는 입력(135)을 수용할 수 있다. 일부 예에서, 메모리 셀(105)은 논리 저장 구성 요소에 전압을 인가하는 것에 의해, 예를 들어 강유전체 커패시터 양단에 전압을 인가하는 것에 의해 기록될 수 있다.
일부 예에서, 메모리 페이지 크기는 구성 가능하다(configurable). 메모리 어레이(100)는 메모리 뱅크 내의 다수의 메모리 구획 중 하나의 메모리 구획을 나타낼 수 있다. 페이지 크기는 다수의 베이스 메모리 페이지로 만들어질 수 있으며, 여기에서, 베이스 페이지는 단일 행 내의 메모리 셀(105)의 서브세트이다. 예를 들어, 감지 구성 요소(125)의 수는 디지트 라인(115)의 수보다 적을 수 있다. 그런 다음, 다수의 행은 다수의 베이스 페이지를 버퍼링하는 것에 의해 보다 큰 페이지 크기를 생성하도록 병렬로 액세스된다. 일부 경우에, 상이한 행들이 다른 메모리 구획에 있을 수 있으며, 여기에서 각각의 구획은 감지 구성 요소(125)의 그 자체의 세트를 가진다.
일부 메모리 아키텍처에서, 메모리 셀(105)을 액세스하는 것은 저장된 논리 상태를 저하시키거나 파괴할 수 있으며, 재기록 또는 리프레시 동작은 원래의 논리 상태를 메모리 셀(105)로 복귀시키도록 수행될 수 있다. DRAM에서, 예를 들어, 커패시터는 감지 동작 동안 부분적으로 또는 완전히 방전되어, 저장된 논리 상태를 손상시킬 수 있다. 그래서, 논리 상태는 감지 동작 후에 재기록될 수 있다. 추가적으로, 단일 워드 라인(110)을 활성화하는 것은 행에 있는 모든 메모리 셀의 방전을 초래할 수 있으며; 그러므로, 행에 있는 몇몇 또는 모든 메모리 셀(105)은 재기록될 필요가 있을 수 있다. 그러나, 비휘발성 메모리 셀(105)은 그 디지트 라인(115)과의 접속시에 방전되지 않을 수 있다. 이러한 것은 감지되지 않은 메모리 셀(105)의 저장된 논리 상태를 파괴함이 없이 행 내의 메모리 셀(105)의 서브세트가 감지되는 것을 가능하게 한다.
DRAM을 포함하는 일부 메모리 아키텍처는 외부 전원에 의해 주기적으로 리프레시되지 않으면 시간 경과에 따라서 그 저장된 상태를 상실할 수 있다. 예를 들어, 충전된 커패시터는 누설 전류를 통해 시간 경과에 따라서 방전되어, 저장된 정보의 상실을 초래할 수 있다. 이러한 소위 휘발성 메모리 디바이스의 재생률(refresh rate)은 비교적 높을 수 있으며, 예를 들어, DRAM 어레이에 대해 초당 수십 회의 리프레시 동작일 수 있으며, 이러한 것은 상당한 전력 소비를 초래할 수 있다. 점점 더 큰 메모리 어레이에 의해, 증가된 전력 소비는 특히 배터리와 같은 유한 전원에 의지하는 모바일 디바이스를 위한 메모리 어레이의 전개 또는 동작(예를 들어, 전원 공급, 발열, 재료 제한 등)을 저해할 수 있다. 그러나, 비휘발성 메모리 셀(105)은 다른 메모리 아키텍처에 비해 향상된 성능을 초래하는 유익한 특성을 가질 수 있다. 예를 들어, 행 내의 메모리 셀(105)의 서브세트는 액세스될 수 있어, 동작 동안 보다 작은 페이지 크기가 사용되는 것을 가능하게 한다. 복수의 메모리 구획을 병렬로 액세스하는 것에 의해, 페이지 크기는 메모리 어레이(100)를 사용하여 디바이스에 대한 성능을 최적화하도록 동적으로 변경될 수 있다.
메모리 컨트롤러(140)는 행 디코더(120), 열 디코더(130), 및 감지 구성 요소(125)와 같은 다양한 구성 요소를 통해 메모리 어레이(100)의 동작(예를 들어, 판독, 기록, 재기록, 리프레시, 페이지 크기 결정 등)을 제어할 수 있다. 메모리 컨트롤러(140)는 필요한 워드 라인(110) 및 디지트 라인(115)을 활성화하기 위해 행 및 열 어드레스 신호를 생성할 수 있다. 메모리 컨트롤러(140)는 또한 메모리 어레이(100)의 동작 동안 사용되는 다양한 전압 전위를 생성하고 제어할 수 있다. 대체로, 본 명세서에서 논의된 인가 전압의 진폭, 형상, 또는 지속 시간은 조정되거나 또는 변경될 수 있으며, 메모리 어레이(100)를 동작시키기 위한 다양한 동작에 대해 다를 수 있다. 또한, 메모리 어레이(100) 내의 하나의, 다수의, 또는 모든 메모리 셀(105)은 동시에 액세스될 수 있으며; 예를 들어, 메모리 어레이(100)의 다수의 또는 모든 셀은, 모든 메모리 셀(105) 또는 메모리 셀(105)의 그룹이 단일 논리 상태로 설정되는 리셋 동작 동안 동시에 액세스될 수 있다. 또는 다양한 크기의 메모리 페이지가 열릴 수 있다.
도 2는 메모리 셀(105)을 포함하고 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 지원하는 예시적인 회로(200)를 도시한다. 회로(200)는 도 1을 참조하여 설명된 바와 같은 메모리 셀(105), 워드 라인(110), 디지트 라인(115), 및 감지 구성 요소(125))를 각각 포함할 수 있는, 메모리 셀(105-a), 워드 라인(110-a), 디지트 라인(115-a), 및 감지 구성 요소(125-a)를 각각 포함한다. 메모리 셀(105-a)은 논리 저장 디바이스(205), 예를 들어 그 사이에 위치된 강유전체 재료를 통해 용량성으로 결합된 전극들을 가지는 커패시터를 포함할 수 있다. 논리 저장 디바이스(205)는 전술한 바와 같은 다른 메모리 디바이스를 나타낼 수 있다. 회로(200)는 또한 선택 구성 요소(220) 및 기준 신호(225)를 포함한다. 도 2의 예에서, 논리 저장 디바이스(205)는 플레이트 라인(plate line)(210) 및 디지트 라인(115-a)을 통해 액세스될 수 있다. 일부 예에서, 플레이트 라인(210)은 제공되지 않을 수 있다. 전술한 바와 같이, 다양한 상태가 논리 저장 디바이스(205)를 사용하여 저장될 수 있다.
논리 저장 디바이스(205)의 저장된 상태는 회로(200)에서 표현된 다양한 요소를 동작시키는 것에 의해 판독되거나 또는 감지될 수 있다. 논리 저장 디바이스(205)는 디지트 라인(115-a)과 전자 통신할 수 있다. 예를 들어, 논리 저장 디바이스(205)는 선택 구성 요소(220)가 비활성화될 때 디지트 라인(115-a)으로부터 분리될 수 있고, 논리 저장 디바이스(205)는 선택 구성 요소(220)가 활성화될 때 디지트 라인(115-a)에 전기적으로 접속될 수 있다. 선택 구성 요소(220)를 활성화하는 것은 메모리 셀(105-a)을 선택하는 것으로서 지칭될 수 있다. 일부 경우에, 선택 구성 요소(220)는 트랜지스터이고, 그 동작은 트랜지스터 게이트에 전압을 인가하는 것에 의해 제어되며, 여기에서, 전압 크기는 트랜지스터의 임계 전압 크기(threshold voltage magnitude)보다 크다. 워드 라인(110-a)은 선택 구성 요소(220)를 활성화할 수 있고; 예를 들어, 워드 라인(110-a)에 인가된 전압은 트랜지스터 게이트에 인가되어, 논리 저장 디바이스(205)를 디지트 라인(115-a)과 접속한다.
전술한 바와 같이, 논리 저장 디바이스(205)는 디지트 라인(115-a)에 접속시에 방전되지 않을 수 있다. 일부 예에서, 전압은 논리 저장 디바이스(205)에 인가되어 그 저장된 논리 상태를 감지할 수 있다. 하나의 체계에서, 워드 라인(110-a)은 메모리 셀(105-a)을 선택하도록 바이어싱될 수 있고, 전압은 플레이트 라인(210)에 인가될 수 있다. 일부 경우에, 디지트 라인(115-a)은 가상으로 접지되고, 그런 다음 플레이트 라인(210) 및 워드 라인(110-a)을 바이어싱하기 전에 가상의 접지로부터 분리된다. 바이어싱 플레이트 라인(210)은 논리 저장 디바이스(205) 양단의 전압차(예를 들어, 플레이트 라인(210) 전압에서 디지트 라인(115)을 뺀 전압)를 초래할 수 있다. 커패시터의 예에서, 전압차는 논리 저장 디바이스(205)에 저장된 전하에서의 변화를 산출할 수 있으며, 여기에서, 저장된 전하에서의 변화의 크기는 논리 저장 디바이스(205)의 초기 상태, 예를 들어, 초기 상태가 논리 1 또는 논리 0을 저장했는지에 의존할 수 있다. 이러한 것은 논리 저장 디바이스(205)에 저장된 전하에 기초하여 디지트 라인(115-a)의 전압에서의 변화를 유발할 수 있다. 다른 체계에서, 플레이트 라인(210)은 일정한 전위로 유지될 수 있고, 디지트 라인(115-a)의 전압이 대신 제어될 수 있다.
디지트 라인(115-a)의 전압에서의 변화는 그 고유 커패시턴스에 의존할 수 있으며, 전하가 디지트 라인(115-a)를 통해 흐름에 따라서 일부 유한 전하(finite charge)는 디지트 라인(115-a)에 저장될 수 있고, 결과적인 전압은 고유 커패시턴스에 의존한다. 고유 커패시턴스는 디지트 라인(115-a)의 치수를 포함하는 물리적 특성에 의존할 수 있다. 디지트 라인(115-a)이 무시할 수 없는 커패시턴스(예를 들어, 피코패럿(pF)과 유사한)를 초래하는 길이를 가질 수 있도록, 디지트 라인(115-a)은 많은 메모리 셀(105)을 접속할 수 있다. 디지트 라인(115-a)의 결과적인 전압은 그런 다음 메모리 셀(105-a)에 저장된 논리 상태를 결정하기 위하여 감지 구성 요소(125-a)에 의해 기준(예를 들어, 기준 신호(225)의 전압)과 비교될 수 있다.
감지 구성 요소(125-a)는 신호에서의 차이를 검출하고 증폭하기 위해 다양한 트랜지스터 또는 증폭기를 포함할 수 있다. 감지 구성 요소(125-a)는 디지트 라인(115-a)의 전압과 기준 전압일 수 있는 기준 신호(225)를 수신하여 비교하는 감지 증폭기를 포함할 수 있다. 감지 증폭기 출력은 상기 비교에 기초하여 보다 높거나(예를 들어, 양) 또는 보다 낮은(예를 들어, 음 또는 접지) 공급 전압으로 구동될 수 있다. 예를 들어, 디지트 라인(115-a)이 기준 신호(225)보다 높은 전압을 가지면, 감지 증폭기 출력은 양의 공급 전압으로 구동될 수 있다. 일부 경우에, 감지 증폭기는 추가로 디지트 라인(115-a)을 공급 전압으로 구동할 수 있다. 감지 구성 요소(125-a)는 그런 다음 감지 증폭기의 출력 또는 디지트 라인(115-a)의 전압을 래칭할 수 있으며, 이러한 것은 메모리 셀(105-a)에서 저장된 상태, 예를 들어 논리 1을 결정하도록 사용될 수 있다. 대안적으로, 디지트 라인(115-a)이 기준 신호(225)보다 낮은 전압을 가지면, 감지 증폭기 출력은 음 또는 접지 전압으로 구동될 수 있다. 감지 구성 요소(125-a)는 마찬가지로 메모리 셀(105-a)에 저장된 상태, 예를 들어, 논리 0을 결정하도록 감지 증폭기 출력을 래칭할 수 있다. 메모리 셀(105-a)의 래칭된 논리 상태는 예를 들어 도 1을 참조하여 열 디코더(130)를 통해 출력(135)으로서 출력될 수 있다.
메모리 셀(105-a)을 기록하도록, 전압은 논리 저장 디바이스(205) 양단에 인가될 수 있다. 예를 들어, 플레이트 라인(210) 또는 디지트 라인(115-a) 또는 둘 모두는 논리 저장 디바이스(205) 양단에 전압을 인가하도록 통전될 수 있다. 추가적으로 또는 대안적으로, 판독 또는 기록 동작을 위한 다른 액세스 체계가 사용될 수 있다. 예를 들어, 액세스 체계는 다른 기술(즉, FeRAM이 아닌)이 이용되면 메모리 유형에 따라서 적응될 수 있다.
도 3은 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 지원하는 예시적인 메모리 어레이(100-a)를 도시한다. 메모리 어레이(100-a)는 메모리 구획(310, 310-a 및 310-b)을 포함하는 메모리 뱅크(305)를 포함한다. 각각의 메모리 구획(310)은 감지 구성 요소(125)의 세트, 예를 들어 도 1 및 도 2를 참조하여 감지 구성 요소(125)의 예일 수 있는 감지 구성 요소(125-b, 125-c 및 125-d)와 관련된다. 메모리 구획(310)은 도 1을 참조하여 기술된 바와 같이, 메모리 셀의 행 및 열로 구성될 수 있다. 각각의 메모리 구획(310)은 도 1을 참조하여 행 디코더(120)의 예일 수 있는 행 디코더(120-a)와 전자 통신한다. 메모리 어레이(100-a)는 또한 도 1을 참조하여 메모리 컨트롤러(140)의 예일 수 있는 메모리 컨트롤러(140-a), 및 메모리 구획(310)들 사이의 링크 관계를 저장할 수 있는 레지스터(320)를 포함한다. 예를 들어, 링크 관계(315)는 메모리 구획(310 및 310-b) 사이의 링크 관계를 나타낼 수 있다.
일부 휘발성 메모리 기술은 비교적 큰 페이지 크기, 예를 들어 2 내지 4 킬로바이트(kB)를 가지며, 이러한 것은 어레이 또는 뱅크의 행에 있는 메모리 셀의 수와 동일할 수 있다. 휘발성 메모리 셀을 포함하는 행을 액세스(예를 들어, 워드 라인(110)을 활성화)하는 것은 그 저장된 논리 상태를 파괴할 수 있다. 그래서, 행에서의 각각의 메모리 셀이 감지될 수 있으며, 일부 경우에, 메모리 페이지로서 버퍼링될 수 있다. 페이지가 예를 들어 활성화 명령을 이용하여 열리면, 전체 페이지는 판독될 수 있으며, 그 내용이 이용 가능하다. 열 어드레스는 데이터의 어떤 버스트(burst)(예를 들어, 메모리 페이지의 서브세트)가 출력될지를 선택한다. 후속 열 어드레스는 메모리 페이지의 나머지 부분을 선택할 수 있다.
비휘발성 메모리의 경우에, 행의 각각의 메모리 셀은 행을 액세스할 때 감지 되는 것이 필요하지 않을 수 있다. 예를 들어, 강유전체 메모리 또는 스핀 토크 전달 메모리와 같은 비휘발성 메모리에서, 특정 워드 라인(110)의 선택은 DRAM에서와 같이 전체 행의 내용의 상실을 유발하지 않을 수 있다. 그래서, 메모리 어레이(100-a)에서의 비휘발성 메모리 셀에 대해, 열의 서브세트(즉, 행 내의 메모리 셀(105)의 서브세트)는 액세스될 수 있으며, 그러므로, 메모리 뱅크(305)의 각각의 메모리 구획(310)에 대해 열(비트 라인(115))의 수보다 적은 감지 구성 요소(125)를 제공하는 것에 의해 다이 크기를 감소시키는 것이 가능하다. 반대로, DRAM과 같은 휘발성 메모리 어레이는 열당 하나의 감지 증폭기(sense amp)를 사용한다. 그러므로, 메모리 어레이(100-a)는 고밀도의 메모리 셀을 가지는 동시에, 행에서의 메모리 셀(105)의 총 수보다 적은 페이지 크기를 가질 수 있다. 그래서, 메모리 어레이(100-a)는 전력 소비 및 다이 크기를 최소화할 수 있다.
메모리 뱅크(305)는 감지 구성 요소(125)의 그 자체의 세트를 각각 가지는 다수의 메모리 구획(예를 들어, 8, 16, 32 등)으로 분할될 수 있다. 각각의 메모리 구획(310)은 단일 행 내의 메모리 셀(105)의 총 수보다 적은 베이스 페이지 크기를 가질 수 있다. 예를 들어, 메모리 뱅크(305)는 1 기가비트(Gb) 크기일 수 있고, 8개의 메모리 구획(310)으로 분할될 수 있다. 각각의 메모리 구획(310)은 128 메가비트(Mb)를 포함할 수 있고, 메모리 셀(105)의 4096 행 및 메모리 셀(105)의 32768 열(즉, 각각의 행에서 4 kB)을 포함할 수 있다. 그러나, 베이스 페이지 크기는 4kB보다 적을 수 있다. 예를 들어 이러한 것은 128 바이트(1024 비트 또는 메모리 셀)일 수 있다. 즉, 하나의 감지 구성 요소는 4개의 열 액세스 라인(비트 라인(115))마다 존재할 수 있다. 베이스 페이지 크기는 일부 실시예에서 고정되고, 각각의 메모리 구획(310)에서의 감지 구성 요소(125)의 수에 의존할 수 있다. 이러한 예들은 많은 가능한 구성의 일부이며, 다른 크기도 가능하다.
메모리 뱅크(305)를 액세스하도록 사용되는 페이지 크기, 즉 액티브 페이지 크기(active page size)는 동적으로 변경될 수 있다. 즉, 액티브 페이지 크기는 다수의 베이스 페이지를 구성할 수 있다. 다수의 메모리 구획(310)은 더욱 큰 페이지 크기를 생성하도록 병렬로 동작될 수 있다. 예를 들어, 메모리 구획(310) 및 메모리 구획(310-b)은 베이스 페이지 크기(예를 들어, 128 바이트)를 가질 수 있으며, 보다 큰 액티브 페이지 크기(예를 들어, 256 바이트)는 양 메모리 구획(310 및 310-b)을 동시에 액세스하는 것에 의해 생성될 수 있다. 더욱 많은 메모리 구획(310)은 더욱 큰 페이지 크기를 생성하기 위해 동시에 액세스될 수 있다. 그러므로, 하나의 활성화 명령(activate command)은 메모리 뱅크(305)로부터 더욱 많은 양의 데이터를 추출할 수 있으며, 이러한 것은 속도 및 성능을 증가시킬 수 있다. 예를 들어, 판독 명령은 물리적으로 큰 페이지가 실시되는 것처럼 동일한 타이밍 고려 사항에 의해 교부될(issued) 수 있다.
메모리 뱅크(305)의 동작은 메모리 뱅크(305)의 제1 행에서 제1 복수의 논리값을 결정하는 것, 메모리 뱅크(305)의 제2 행에서 제2 복수의 논리값을 결정하는 것, 및 제1 복수의 논리값 및 제2 복수의 논리값을 포함하는 메모리 페이지를 버퍼링하는 것을 포함할 수 있다. 메모리 페이지의 서브세트는 버스로 전송될 수 있다. 예를 들어, 감지 구성 요소(125-b, 125-c 및 125-d)는 결정된 논리값을 래칭하는 행 버퍼(row buffer)를 포함할 수 있고, 메모리 페이지를 버퍼링하는 것은 제1 복수의 논리값 및 제2 복수의 논리값을 래칭하는 것을 포함할 수 있다. 일부 경우에, 제1 행에서 제1 복수의 논리값을 결정하는 것은 제1 행에서 메모리 셀의 서브세트의 각각의 메모리 셀(105)의 논리 상태를 결정하는 것을 포함한다. 일부 예에서, 메모리 뱅크(305)는 복수의 메모리 구획(310)(예를 들어, 메모리 구획(310, 310-a 및 310-b))을 포함하고, 제1 메모리 구획(310)은 제1 행을 포함하고, 제2 메모리 구획(310-b)은 제2 행을 포함한다.
일부 예에서, 베이스 메모리 페이지 크기는 제1 복수의 논리값 또는 제2 복수의 논리값을 포함하며, 메모리 뱅크(305)를 동작시키는 것은 메모리 페이지의 크기가 베이스 메모리 페이지 크기의 2배를 포함하는 것을 결정하고, 메모리 페이지의 크기에 기초하여 활성화 명령을 교부하도록 명령 생성기(command generator)를 구성하는 것을 포함한다. 예를 들어, 메모리 컨트롤러(140-a)는 명령 생성기를 포함할 수 있고, 제1 및 제2 행과 관련된 워드 라인(110)을 활성화하기 위한 명령을 생성할 수 있다.
일부 예에서, 액티브 페이지 크기는 메모리 어레이(100-a)를 포함하는 디바이스를 켤 때 구성될 수 있다. 이러한 것은 페이지 크기라는 면에서 서로 다른 필요성을 어드레싱하도록 동일한 다이를 사용하는 것에 대해 이점을 제공한다. 예를 들어, 메모리 어레이는 하나의 페이지 크기가 가장 좋은 애플리케이션에 대해 사용될 수 있고, 다른 사용자(user)는 다른 페이지 크기로 더욱 잘 수행될 수 있는 다른 애플리케이션을 가질 수 있다. 이러한 가변 페이지 크기 아키텍처는 단일 메모리 디바이스로 양 시나리오를 수용할 수 있다.
다른 실시예에서, 액티브 페이지 크기는 동적으로 설정될 수 있다. 예를 들어, 메모리 컨트롤러(140-a)는 특정 페이지 크기를 사용하기 위해 소프트웨어 애플리케이션으로부터 명령을 수신할 수 있다. 또는, 메모리 어레이(100-a)는 사전 결정된 온도에 도달하고, 열 발생을 감소시키도록 더욱 작은 페이지 크기를 사용할 수 있다. 동적 페이지 크기를 이용하여, 메모리 어레이(100-a)의 최적의 사용이 가능할 수 있다. 예를 들어, 짧은 버스트가 필요할 때 또는 코드가 실행되고 페이지 변경이 높은 속도로 일어날 때, 전력 사용은 최소화될 수 있다. 또는, 더욱 큰 페이지 크기는 성능을 향상시키기 위해 사용될 수 있다(예를 들어, 활성화 명령 당 액세스되는 데이터의 양을 증가시킬 수 있다).
어드레싱 체계는 액티브 페이지 크기에 기초하여 조정될 수 있다. 예를 들어, 일부 어드레스 비트는 열 어드레스 및 행 어드레스로서 모두 사용될 수 있으며, 메모리 컨트롤러(140-a)는 각각의 열린 페이지의 크기를 알고 있을 수 있다. 메모리 컨트롤러(140-a)는 또한 액티브 페이지 크기에 기초한 어드레싱 체계를 수정할 수 있다. 예를 들어, 논리 행 어드레스는 메모리 구획(310), 메모리 구획(310) 내의 행(예를 들어, 워드 라인(110)), 및 행 내의 열의 세트(예를 들어, 비트 라인(115)의 세트)를 식별할 수 있다. 메모리 컨트롤러(140-a)는 병렬로 액세스되는 메모리 구획의 수가 페이지 크기에서의 변화와 함께 변함에 따라서 어드레싱 체계를 수정할 수 있다.
활성화 명령 동안, 논리 행 어드레스는 행 디코더(120-a)로 전송될 수 있다. 논리 행 어드레스는 메모리 뱅크(305) 내의 특정 위치를 식별하는 비트의 스트링이다. 예를 들어, 전술한 1 Gb 메모리 뱅크 예에 관하여, 1 kB의 베이스 페이지 크기와 동일한 액티브 페이지 크기를 사용하는 것에 의해, 논리 행 어드레스는 20 비트를 포함할 수 있다(즉, 220은 베이스 페이지의 총 수와 동일할 수 있다: 1 Gb/1024 비트/페이지). 논리 행 어드레스의 3 비트는 8개의 메모리 구획(310) 중 하나를 식별할 수 있다. 이러한 비트는 논리 행 어드레스의 최하위 비트일 수 있다. 12 비트는 식별된 메모리 구획(310) 내의 4096 행 중 하나의 행을 식별할 수 있다. 이러한 비트는 최상위 비트일 수 있다. 나머지 5 비트는 메모리 페이지의 물리적 열(physical column)을 식별할 수 있다. 예를 들어, 5 비트는 메모리 구획(310)의 32768 열 내의 1024 열의 세트를 선택할 수 있다. 열의 세트는 함께 그룹화되거나, 또는 행을 따라서 등간격으로 이격된 것을 포함하여 이격될 수 있다. 일반적으로, 논리 행 어드레스의 비트의 수는 상이한 크기의 메모리 어레이에 대해 변경될 수 있다.
본 예에서, 메모리 셀(105)들을 감지한 후에, 데이터는 예를 들어 메모리 어레이(100-a)로부터 프로세서로 전송될 수 있다. 데이터는 버스트에서 전송될 수 있으며, 여기에서, 메모리 페이지의 서브세트는 각각의 버스트에서 전송된다. 예시의 목적을 위해, 판독 버스트 길이(read burst length)는 256 비트(또는 16 워드)일 수 있다. 그러므로, 128 바이트 페이지는 4개의 판독 버스트 길이를 포함한다. 그래서, 메모리 컨트롤러(140-a)는 4개의 가능한 판독 버스트 길이 중 하나를 선택하기 위해 2 비트의 열 어드레스를 전송할 수 있다. 예를 들어, 메모리 컨트롤러(140-a)는 행 버퍼 또는 열 디코더(예를 들어, 도 1에 도시된 열 디코더(130))를 포함할 수 있는 감지 구성 요소(125-b, 125-c 및 125-d)를 포함할 수 있으며, 열 어드레스를 열 디코더에 전송할 수 있다.
액티브 페이지 크기가 변경되면, 어드레스 체계는 변경될 수 있다. 예를 들어, 액티브 페이지 크기는 베이스 페이지 크기의 2배일 수 있으며, 2개의 메모리 구획(예를 들어, 메모리 구획(310 및 310-b))은 동시에 액세스될 수 있다. 논리 행 어드레스는 20 비트에서 19 비트로 감소할 수 있다. 예를 들어, 메모리 구획(310 및 310-b)은 링크 관계(315)를 통해 링크될 수 있고, 논리 행 어드레스는 8개의 메모리 구획(310) 모두를 구별할 필요가 없을 수 있다. 그러나, 페이지 크기에서의 총 비트 수는 1024에서 2048로 증가될 수 있다. 그러므로, 판독 버스트 길이의 수는 4에서 8로 증가할 수 있으며, 그러므로, 열 어드레스는 8개의 판독 버스트 길이 중 하나를 선택하기 위해 2 비트에서 3 비트로 증가될 수 있다. 그래서, 논리 행 어드레스와 열 어드레스의 비트의 합이 일정하게 유지될 수 있도록, 1 비트가 논리 행 어드레스로부터 열 어드레스로 이동될 수 있다. 다른 예에서, 2개의 논리 행 어드레스는 더욱 큰 액티브 페이지 크기를 생성하도록 2개의 베이스 메모리 페이지를 열기 위해 행 디코더(120-a)로 전송될 수 있다.
언급된 바와 같이, 본 명세서에 기술된 기술은 다양한 페이지 크기 및 다양한 크기의 메모리 어레이, 뱅크, 또는 구획에 적용될 수 있다. 액티브 페이지 크기는 4개, 8개, 16개 등의 베이스 페이지로 구성될 수 있다. 메모리 뱅크(305)는 1 Gb보다 더 작거나 더 클 수 있고, 더 적거나 또는 더 많은 수의 메모리 구획들(310)이 사용될 수 있다.
그래서, 메모리 뱅크(305)의 동작은 메모리 어레이(100-a)가 액세스 가능한 메모리 뱅크(305)의 메모리 셀의 수와 관련된 베이스 페이지 크기를 식별하는 것과, 베이스 페이지 크기의 정수배(integer multiple)인 액티브 페이지 크기를 선택하는 것을 포함할 수 있다. 상기 동작은 액티브 페이지 크기에 기초하여 메모리 뱅크(305)에 대한 어드레스 체계를 구성하는 것, 및 어드레스 체계를 사용하고 액티브 페이지 크기에 따라서 액세스 명령을 전송하는 것을 포함할 수 있다. 베이스 페이지 크기는 메모리 어레이(100-a)의 복수의 메모리 구획의 각각의 메모리 구획(310)에 대한 페이지 크기일 수 있다.
일부 예에서, 어드레스 체계를 구성하는 것은 메모리 어레이(100-a)의 복수의 메모리 구획의 메모리 구획(310), 메모리 구획(310) 내의 물리적 행(physical row), 및 물리적 행의 물리적 열 구획을 식별하도록 논리 행 어드레스를 구성하는 것을 포함한다. 예를 들어, 물리적 열 구획은 베이스 페이지 크기와 동일한 복수의 메모리 셀을 포함할 수 있다. 물리적 열 구획은 인접한 물리적 열의 그룹, 인접한 물리적 열의 몇몇 그룹, 서로 분리된 물리적 열, 또는 물리적 행을 따라서 등간격으로 이격된 물리적 열을 포함할 수 있다.
일부 예에서, 어드레스 체계를 구성하는 것은 액티브 페이지 크기의 구획을 식별하도록 열 어드레스를 구성하는 것을 포함하며, 여기에서, 액티브 페이지 크기는 복수의 구획을 포함한다. 예를 들어, 액티브 페이지 크기의 구획은 판독 버스트 길이일 수 있다.
어드레스 체계를 구성하는 것은 액티브 페이지 크기에 기초하여 논리 행 어드레스 및 열 어드레스에 대한 비트의 수를 결정하는 것을 더 포함할 수 있다. 일부 예에서, 행 어드레스에 대한 비트의 수와 열 어드레스에 대한 비트의 수의 합은 액티브 페이지 크기에 독립적인 상수값(constant value)일 수 있다. 상수값은 메모리 뱅크(305)의 크기 및 판독 버스트 길이에 기초할 수 있다. 예를 들어, 메모리 뱅크(305)에서의 판독 버스트 길이의 총 수는 판독 버스트 길이(예를 들어, 256 비트)로 나눈 메모리 뱅크(305)의 크기(예를 들어, 1 Gb)일 수 있다.
메모리 뱅크(305)의 동작은 복수의 메모리 구획의 제1 메모리 구획과 복수의 메모리 구획의 제2 메모리 구획 사이의 링크 관계를 결정하는 것을 더 포함할 수 있다. 예를 들어, 메모리 구획(310 및 310-b)은 링크 관계(315)에 의해 도시된 바와 같이 링크될 수 있다. 이러한 경우에, 액티브 페이지 크기는 베이스 페이지 크기의 2배일 수 있고, 메모리 어레이(100-a)의 동작은 메모리 페이지를 열도록 논리 행 어드레스를 행 디코더(120-a)로 전송하는 것을 더 포함할 수 있으며, 여기에서, 논리 행 어드레스는 제1 메모리 구획(310)을 식별한다. 행 디코더(120-a)는 논리 행 어드레스에 기초하여 제1 메모리 구획(310)의 제1 베이스 메모리 페이지를 열고, 링크 관계(315)에 기초하여 제2 메모리 구획(310-b)의 제2 베이스 메모리 페이지를 열 수 있다. 그러므로, 메모리 페이지는 제1 베이스 메모리 페이지 및 제2 베이스 메모리 페이지를 포함할 수 있다.
일부 예에서, 제2 베이스 메모리 페이지는 제1 메모리 구획(310) 내의 제1 베이스 메모리 페이지와 동일한 제2 메모리 구획(310-b) 내의 상대 어드레스(relative address)를 가질 수 있다. 즉, 제1 및 제2 베이스 메모리 페이지는 그 각각의 메모리 구획의 동일한 상대 행 및 열 구획에 있을 수 있다.
일부 예에서, 상이한 메모리 구획(310) 사이의 링크 관계는 레지스터(320)에 저장될 수 있다. 이러한 링크 관계는 보다 큰 액티브 페이지 크기를 가능하게 하기 위해 어느 메모리 구획(310)이 병렬로 액세스 가능한지를 나타낼 수 있다. 일부 경우에, 링크 관계는 구성 가능하다. 예를 들어, 사용자 또는 소프트웨어 애플리케이션은 메모리 어레이(100-a)의 동작을 최적화하기 위해 링크 관계를 구성할 수 있다.
액티브 페이지 크기를 선택하는 것은 디바이스를 켤 때 액티브 페이지 크기를 선택하는 것을 포함할 수 있으며, 여기에서, 메모리 어레이는 디바이스의 소자를 포함한다. 또는, 액티브 페이지 크기를 선택하는 것은 특정 페이지 크기를 사용하라는 지시(indication)를 수신하고 특정 페이지 크기와 동일한 액티브 페이지 크기를 설정하는 것을 포함할 수 있다. 예를 들어, 메모리 컨트롤러(140-a)는 이러한 지시를 수신하여 액티브 페이지 크기를 설정하고, 이에 따라 메모리 어드레싱 체계를 구성할 수 있다. 일부 예에서, 지시는 소프트웨어 애플리케이션으로부터 수신될 수 있다.
메모리 뱅크(305)는 상이한 페이지 크기로 동시에 동작될 수 있다. 예를 들어, 제1 페이지 크기는 메모리 셀(105)을 프로그래밍하도록 사용될 수 있고, 제2 페이지 크기는 메모리 뱅크(305)의 메모리 셀(105)을 판독하거나 또는 감지하도록 사용될 수 있다. 그래서, 메모리 뱅크(305)의 제1 복수의 메모리 셀은 액티브 페이지 크기를 사용하여 프로그래밍될 수 있으며, 메모리 뱅크(305)의 제2 복수의 메모리 셀은 베이스 페이지 크기의 다른 정수배인 다른 액티브 페이지 크기를 사용하여 판독될 수 있다. 예를 들어, 판독 동작은 기록 동작을 위해 사용된 페이지 크기의, 보다 작을 수 있는 약수(submultiple)인 페이지 크기를 사용할 수 있다. 또는 기록 동작을 위해 사용되는 페이지 크기는 판독 동작을 위해 사용된 페이지 크기보다 클 수 있다.
다른 예에서, 메모리 어레이(100-a)는 다수의 메모리 뱅크(305)를 포함할 수 있고, 각각의 메모리 뱅크(305)는 독립적으로 동작될 수 있다. 예를 들어, 복수의 메모리 뱅크의 제1 메모리 뱅크(305)는 제1 메모리 페이지 크기를 사용하여 액세스될 수 있고, 복수의 메모리 뱅크의 제2 메모리 뱅크는 제1 메모리 페이지 크기와 상이한 제2 메모리 페이지 크기를 사용하여 액세스될 수 있다. 각각의 메모리 뱅크(305)는 다른 어드레싱 체계를 사용할 수 있다. 예를 들어, 제1 메모리 뱅크(305)를 액세스하는 것은 제1 메모리 페이지 크기에 기초한 제1 어드레싱 체계를 사용하는 것을 포함할 수 있고, 제2 메모리 뱅크를 액세스하는 것은 제2 메모리 페이지 크기에 기초한 제2 어드레싱 체계를 사용하는 것을 포함할 수 있다.
일부 예에서, 메모리 뱅크(305)는 복수의 메모리 구획(310)을 포함하고, 각각의 메모리 구획(310)은 메모리 셀의 복수의 물리적 행을 가질 수 있다. 메모리 뱅크(305)를 동작시키는 것은 메모리 뱅크에서의 메모리 셀(105)에 대한 액세스 요청(access request)을 수신하는 것, 메모리 셀(105)이 위치되는 메모리 뱅크의 복수의 메모리 구획의 메모리 구획(310)을 식별하는 것, 메모리 구획(310)에서, 메모리 셀의 복수의 물리적 행 중 메모리 셀(105)을 포함하는 물리적 행을 식별하는 것, 상기 물리적 행에서, 메모리 셀을 포함하는 메모리 페이지를 식별하는 것, 및 메모리 페이지를 열도록 논리 행 어드레스를 생성하는 것을 포함할 수 있다.
일부 경우에, 메모리 셀은 제2 메모리 구획(310-b)에 위치될 수 있고, 제2 메모리 구획(310-b)은 제1 메모리 구획(310)에 링크될 수 있다. 이러한 경우에, 논리 행 어드레스를 생성하는 것은 제1 메모리 구획을 식별하는 논리 행 어드레스를 생성하고, 제1 메모리 구획을 식별하는 논리 행 어드레스, 및 제1 메모리 구획과 상기 제2 메모리 구획 사이의 링크에 기초하여 제2 메모리 구획의 물리적 행이 행 디코더(120-a)에 의해 액세스 가능한 행 디코더(120-a)에 논리 행 어드레스를 전송하는 것을 포함할 수 있다.
도 4는 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 지원하는 예시적인 회로(400)를 도시한다. 회로(400)는 도 3을 참조하여 메모리 구획(310)의 예일 수 있는 메모리 구획(310-c)을 포함한다. 회로(400)는 도 1 내지 도 3을 참조하여 감지 구성 요소(125)의 예일 수 있는 감지 구성 요소(125-e 및 125-f)를 포함한다. 감지 구성 요소(125)는 메모리 구획(310-c)의 다수의 열(예를 들어, 디지트 라인(115))과 전자 통신할 수 있고, 스위치(405)들은 열이 액세스 동작 동안 감지 구성 요소(125)에 접속되는 것을 제어할 수 있다. 또한 회로(400)의 일부인 버퍼(410)는 메모리 구획(310-c) 내의 메모리 셀(105)들의 감지된 논리값을 버퍼링할 수 있다.
메모리 구획(310-c)은 메모리 셀(105)의 다수의 행 및 열을 포함할 수 있다. 전술한 바와 같이, 행의 각각의 메모리 셀(105)은 행이 액세스될 때 감지되지 않을 수 있다. 그러므로, 열의 서브세트(즉, 행 내의 메모리 셀(105)의 서브세트)가 선택될 수 있고, 그러므로 메모리 뱅크(305)의 각각의 메모리 구획(310)에서의 열의 수보다 적은 감지 증폭기를 간단하게 제공하는 것에 의해 다이 크기를 감소시키는 것이 가능하다. 스위치(405)는 열의 서브세트가 액세스 동작 동안 선택되는 것을 제어할 수 있다. 일부 예에서, 스위치(405)는 n-형 또는 p-형 전계 효과 트랜지스터와 같은 트랜지스터일 수 있으며, 트랜지스터에 임계 전압을 인가하는 것에 의해 활성화될 수 있다.
그래서, 회로(400)는, 각각의 행 액세스 라인이 메모리 셀의 행과 전자 통신하는 복수의 행 액세스 라인, 및 각각의 열 액세스 라인이 메모리 셀의 열과 전자 통신하는 복수의 열 액세스 라인을 포함할 수 있다. 회로(400)는 복수의 감지 구성 요소(125)를 또한 포함할 수 있으며, 여기에서, 감지 구성 요소의 수는 열 액세스 라인의 수보다 적다. 예를 들어, 감지 구성 요소(125-e)는 적어도 2개의 열 액세스 라인과 전자 통신한다. 일부 예에서, 메모리 컨트롤러는 복수의 메모리 페이지 크기로부터 메모리 페이지 크기를 선택하도록 구성 가능하며, 여기에서, 복수의 페이지 크기 중 가장 작은 페이지 크기는 감지 구성 요소(125)의 수에 기초한다. 예를 들어, 가장 작은 페이지 크기는 메모리 구획(310-c)에 포함된 감지 구성 요소(125)의 수와 동일할 수 있다.
회로(400)는 복수의 스위치를 포함할 수 있고, 복수의 스위치의 각각의 스위치는 복수의 감지 구성 요소의 감지 구성 요소로부터 복수의 열 액세스 라인의 열 액세스 라인을 전기적으로 분리할 수 있다. 예를 들어, 스위치(405-a)는 감지 구성 요소(125-e)로부터 열 액세스 라인을 분리하고, 스위치(405-b)는 감지 구성 요소(125-f)로부터 다른 열 액세스 라인을 분리한다. 회로(400)는 또한 복수의 래치를 포함할 수 있는 행 버퍼를 포함하고, 복수의 래치의 각각의 래치는 복수의 감지 구성 요소의 감지 구성 요소와 전자 통신한다.
메모리 구획(310-c)은 메모리 뱅크(305) 내의 다수의 메모리 구획(310) 중 하나일 수 있다. 즉, 복수의 메모리 구획(310)은 메모리 뱅크(305)를 포함할 수 있고, 복수의 메모리 구획의 각각의 메모리 구획(310)은 감지 구성 요소(125)의 세트와 관련된다. 일부 예에서, 회로(400)는 메모리 페이지 크기에 기초하여 논리 행 어드레스를 교부하도록 구성 가능한 명령 생성기를 포함할 수 있다. 예를 들어, 명령 생성기는 메모리 컨트롤러(140)의 일부일 수 있다.
회로(400)의 동작은, 메모리 어레이(예를 들어, 메모리 구획(310-c)이 그 일부인 메모리 어레이(100))가 액세스 가능한 복수의 페이지 크기로부터 페이지 크기를 식별하는 것, 및 식별된 페이지 크기에 기초하여 메모리 어레이의 적어도 하나의 행을 액세스하는 것을 포함할 수 있다. 일부 예에서, 페이지 크기를 식별하는 것은 메모리 어레이의 2개 이상의 행을 식별하는 것을 포함할 수 있다. 회로(400)의 동작은 행의 각각의 메모리 셀(105)을 액세스 라인(예를 들어, 디지트 라인(115))에 전기적으로 결합하는 것을 포함할 수 있는, 행을 액세스하는 것을 더 포함할 수 있다. 예를 들어, 워드 라인(110)은 액세스될 수 있으며, 여기에서, 워드 라인(110)과 전자 통신하는 각각의 메모리 셀(105)은 디지트 라인(115)에 전자적으로 결합된다. 즉, 메모리 어레이의 행을 액세스하는 것은 복수의 선택 구성 요소(220)를 활성화하는 것을 포함할 수 있으며, 여기에서, 행의 각각의 메모리 셀은 복수의 선택 구성 요소(220)의 선택 구성 요소(220)와 전자 통신한다. 회로(400)의 동작은 액세스 라인의 서브세트를 통해 행의 메모리 셀(105)의 서브세트를 선택하는 것을 더 포함할 수 있으며, 메모리 셀(105)의 서브세트의 각각의 메모리 셀(105)의 논리값이 결정될 수 있다.
일부 실시예에서, 액세스 라인의 서브세트를 통해 행의 메모리 셀(105)의 서브세트를 선택하는 것은 복수의 감지 구성 요소(125)의 감지 구성 요소에 액세스 라인의 서브세트의 각각의 액세스 라인을 전자적으로 결합하도록 제1 복수의 스위치(405)를 활성화하는 것을 포함한다. 예를 들어, 스위치(405-a 및 405-b)는 감지 구성 요소(125-e 및 125-f)에 하나의 열 액세스 라인을 각각 전자적으로 결합하도록 활성화될 수 있다. 액세스 라인의 나머지는 제2 복수의 스위치, 즉 405-a 및 405-b 이외의 스위치를 통해 복수의 감지 구성 요소로부터 전기적으로 절연될 수 있다. 일부 예에서, 메모리 셀의 서브세트를 식별하는 논리 행 어드레스가 수신될 수 있고, 제1 복수의 스위치는 논리 행 어드레스에 기초하여 활성화될 수 있다.
도 5는 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 지원하는 메모리 어레이(100-b)의 블록도(500)를 도시한다. 메모리 어레이(100-b)는 전자 메모리 장치로 지칭될 수 있으며, 도 1 내지 도 4를 참조하여 기술된 바와 같이 메모리 컨트롤러(140) 및 메모리 구획(310)의 예일 수 있는 메모리 컨트롤러(140-b) 및 메모리 구획(310-d)을 포함한다. 메모리 컨트롤러(140-b)는 바이어싱 구성 요소(biasing component)(510), 타이밍 구성 요소(515), 및 명령 생성기(530)를 포함할 수 있으며, 도 1 내지 도 4에 기술된 바와 같은 메모리 어레이(100-b)를 동작시킬 수 있다. 메모리 컨트롤러(140-b)는 1 또는 도 2를 참조하여 기술된 바와 같이 워드 라인(110), 디지트 라인(115), 감지 구성 요소(125), 및 플레이트 라인(210)의 예일 수 있는 워드 라인(110-b), 디지트 라인(115-b), 감지 구성 요소(125-g) 및 플레이트 라인(210-a)과 전자 통신할 수 있다. 메모리 어레이(100-b)는 도 4를 참조하여 스위치(405)의 예일 수 있는 스위치(405-c)를 포함할 수 있다. 메모리 어레이(100-b)는 또한 기준 구성 요소(520) 및 래치(525)를 포함한다. 메모리 어레이(100-b)의 구성 요소는 서로 전자 통신할 수 있고, 도 1 내지 도 4를 참조하여 기술된 기능을 수행할 수 있다. 일부 경우에, 기준 구성 요소(520), 감지 구성 요소(125-g), 및 래치(525)는 메모리 컨트롤러(140-b)의 구성 요소일 수 있다.
메모리 컨트롤러(140-b)는 이러한 것들의 다양한 노드에 전압을 인가하는 것에 의해 워드 라인(110-b), 플레이트 라인(210-a) 또는 디지트 라인(115-b)을 활성화하도록 구성될 수 있다. 예를 들어, 바이어싱 구성 요소(510)는 전술한 바와 같이 메모리 구획(310-d) 내에 메모리 셀(105)을 판독 또는 기록하기 위하여 전압을 인가하도록 구성될 수 있다. 일부 경우에, 메모리 컨트롤러(140-b)는 도 1 또는 도 3을 참조하여 기술된 바와 같이, 행 디코더, 열 디코더, 또는 둘 모두를 포함할 수 있다. 이러한 것은 메모리 컨트롤러(140-b)가 하나 이상의 메모리 셀(105)을 액세스하는 것을 가능하게 할 수 있다. 예를 들어, 행 디코더는 논리 행 어드레스를 수신하는 것에 기초하여 메모리 셀의 2개의 행을 액세스할 수 있다. 바이어싱 구성 요소(510)는 또한 감지 구성 요소(125-g)를 위한 기준 신호를 생성하기 위해 기준 구성 요소(520)에 전압 전위를 제공할 수 있다. 추가적으로, 바이어싱 구성 요소(510)는 감지 구성 요소(125-g)의 동작을 위한 전압 전위를 제공할 수 있다. 메모리 컨트롤러(140-b)는 또한 메모리 구획(310-d)의 열 액세스 라인을 감지 구성 요소(125-g)에 접속하기 위해 스위치(405-c)를 활성화할 수 있다.
일부 경우에, 메모리 컨트롤러(140-b)는 타이밍 구성 요소(515)를 사용하여 그 동작을 수행할 수 있다. 예를 들어, 타이밍 구성 요소(515)는 본 명세서에서 설명된 판독 및 기록과 같은 메모리 기능을 수행하도록 스위칭 및 전압 인가를 위한 타이밍을 포함하는 다양한 워드 라인 선택 또는 플레이트 바이어싱의 타이밍을 제어할 수 있다. 일부 경우에, 타이밍 구성 요소(515)는 바이어싱 구성 요소(510)의 동작을 제어할 수 있다. 명령 생성기(530)는 메모리 어레이(100-b)를 동작시키도록 다양한 명령을 생성할 수 있다. 예를 들어, 명령 생성기(530)는 도 1 및 도 3을 참조하여 설명된 바와 같은 논리 행 어드레스를 생성할 수 있다.
기준 구성 요소(520)는 감지 구성 요소(125-g)를 위한 기준 신호를 생성하도록 다양한 구성 요소를 포함할 수 있다. 기준 구성 요소(520)는 기준 신호를 만들도록 구성된 회로를 포함할 수 있다. 일부 경우에, 기준 구성 요소(520)는 다른 메모리 셀(105)일 수 있다. 일부 예에서, 기준 구성 요소(520)는 전술한 바와 같이 2개의 감지 전압 사이의 값을 가지는 전압을 출력하도록 구성될 수 있다. 또는, 기준 구성 요소(520)는 가상 접지 전압(즉, 대략 0V)을 출력하도록 설계될 수 있다.
감지 구성 요소(125-g)는 메모리 셀(105)로부터의 신호(디지트 라인(115-b)을 통해)를 기준 구성 요소(520)로부터의 기준 신호와 비교할 수 있다. 논리 상태를 결정할 때에, 감지 구성 요소는 그런 다음 래치(525)에서의 출력을 저장할 수 있으며, 래치는 메모리 어레이(100-b)가 일부인 전자 디바이스의 동작에 따라서 사용될 수 있다. 예를 들어, 메모리 어레이(100-b)는 열 어드레스를 수신할 수 있으며, 래치(525)에서 저장된 논리 상태는 메모리 어레이(100-b), 예를 들어 버스로 전송될 수 있다.
일부 예에서, 메모리 어레이(100-b)는 복수의 메모리 페이지 크기로부터 메모리 페이지 크기를 선택하기 위한 수단을 포함할 수 있다. 다른 예에서, 메모리 어레이(100-b)는 복수의 메모리 페이지 크기로부터 메모리 페이지 크기를 선택하기 위한 수단을 포함하며, 여기에서, 복수의 메모리 페이지 크기 중 가장 작은 페이지 크기는 감지 구성 요소(125-g)의 수에 적어도 부분적으로 기초한다.
도 6은 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 가지는 메모리 디바이스를 지원하는 시스템(600)을 도시한다. 시스템(600)은 다양한 구성 요소를 연결하거나 물리적으로 지지하기 위한 인쇄 회로 기판일 수 있거나 또는 이를 포함할 수 있는 디바이스(605)를 포함한다. 디바이스(605)는 도 1, 도 3 및 도 5를 참조하여 기술된 메모리 어레이(100)의 예일 수 있는 메모리 어레이(100-c)를 포함한다. 메모리 어레이(100-c)는 도 1, 도 3 및 도 5를 참조하여 설명된 메모리 컨트롤러(140) 및 도 3을 참조하여 설명된 메모리 뱅크(305)의 예일 수 있는 메모리 컨트롤러(140-c) 및 메모리 뱅크(들)(305-a)를 포함할 수 있다. 디바이스(605)는 프로세서(610), BIOS 구성 요소(615), 주변 구성 요소(들)(620), 및 입력/출력 제어 구성 요소(625)를 또한 포함할 수 있다. 디바이스(605)의 구성 요소는 버스(630)를 통해 서로 전자 통신할 수 있다.
프로세서(610)는 메모리 컨트롤러(140-c)를 통해 메모리 어레이(100-c)를 동작시키도록 구성될 수 있다. 일부 경우에, 프로세서(610)는 도 1, 도 3 및 도 5를 참조하여 기술된 메모리 컨트롤러(140)의 기능을 수행할 수 있다. 다른 경우에, 메모리 컨트롤러(140-c)는 프로세서(610)에 통합될 수 있다. 프로세서(610)는 범용 프로세서, 디지털 신호 프로세서(DSP), 주문형 집적 회로(ASIC), 필드 프로그래머블 게이트 어레이(FPGA) 또는 다른 프로그래머블 논리 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 구성 요소일 수 있거나, 또는 이러한 유형의 구성 요소들의 조합일 수 있으며, 프로세서(610)는 액티브 페이지 크기를 선택하는 것, 어드레싱 체계를 구성하는 것, 및 메모리 페이지를 여는 것을 포함하는, 본 명세서에 기술된 다양한 기능을 수행할 수 있다. 메모리 페이지로부터의 데이터는 버스(630)를 통해 프로세서(610)로 전송될 수 있다. 예를 들어, 판독 버스트(read burst)는 메모리 페이지의 서브세트를 프로세서(610)로 전송할 수 있다. 프로세서(610)는 예를 들어 메모리 어레이(100-c)에 저장된 컴퓨터 판독 가능 명령을 실행하여, 디바이스(605)가 다양한 기능 또는 과제를 수행하도록 구성될 수 있다.
BIOS 구성 요소(615)는 시스템(600)의 다양한 하드웨어 구성 요소를 개시하여 구동할 수 있는 펌웨어로서 동작되는 기본 입력/출력 시스템(BIOS)을 포함하는 소프트웨어 구성 요소일 수 있다. BIOS 구성 요소(615)는 또한 프로세서(610)와 다양한 구성 요소, 예를 들어 주변 구성 요소(620), 입력/출력 제어 구성 요소(625) 등 사이의 데이터 흐름을 관리할 수 있다. BIOS 구성 요소(615)는 판독 전용 메모리(ROM), 플래시 메모리, 또는 임의의 다른 비휘발성 메모리에 저장된 프로그램 또는 소프트웨어를 포함할 수 있다.
주변 장치 구성 요소(들)(620)는 임의의 입력 또는 출력 디바이스 또는 디바이스(605)에 통합되는, 이러한 디바이스를 위한 인터페이스일 수 있다. 예는 디스크 컨트롤러, 사운드 컨트롤러, 그래픽 컨트롤러, 이더넷 컨트롤러, 모뎀, 범용 직렬 직렬(USB) 컨트롤러, 직렬 또는 병렬 포트, 또는 주변 구성 요소 상호 접속부(PCI) 또는 관련 그래픽 포트(AGP) 슬롯과 같은 주변 카드 슬롯을 포함할 수 있다.
입력/출력 제어 구성 요소(625)는 프로세서(610) 및 주변 구성 요소(들)(620), 입력(635) 디바이스 또는 출력(640) 디바이스 사이의 데이터 통신을 관리할 수 있다. 입력/출력 제어 구성 요소(625)는 또한 디바이스(605)에 통합되지 않은 주변 기기를 관리할 수 있다. 일부 경우에, 입력/출력 제어 구성 요소(625)는 외부 주변 기기에 대한 물리적 접속 또는 포트를 나타낼 수 있다.
입력(635)은 디바이스(605) 또는 그 구성 요소에 입력을 제공하는 디바이스(605) 외부의 디바이스 또는 신호를 나타낼 수 있다. 이러한 것은 다른 디바이스와 또는 그 사이의 사용자 인터페이스 또는 인터페이스를 포함할 수 있다. 일부 경우에, 입력(635)은 주변 구성 요소(들)(620)를 통해 디바이스(605)와 접속하는 주변 기기일 수 있거나, 또는 입력/출력 제어 구성 요소(625)에 의해 관리될 수 있다. 입력(635)은 특정 페이지 크기를 사용하도록 메모리 어레이(100-c)를 위한 지시를 포함할 수 있다.
출력(640)은 디바이스(605) 또는 그 구성 요소들 중 임의의 것으로부터의 출력을 수신하도록 구성된 디바이스(605) 외부의 디바이스 또는 신호를 나타낼 수 있다. 출력(640)의 예는 디스플레이, 오디오 스피커, 인쇄 디바이스, 다른 프로세서 또는 인쇄 회로 기판 등을 포함할 수 있다. 일부 경우에, 출력(640)은 주변 구성 요소(들)(620)를 통해 디바이스(605)와 접속하는 주변 기기일 수 있거나, 또는 입/출력 제어 구성 요소(625)에 의해 관리될 수 있다.
메모리 컨트롤러(140-c), 디바이스(605) 및 메모리 어레이(100-c)의 구성 요소는 그 기능을 수행하도록 설계된 회로로 만들어질 수 있다. 이러한 것은 본 명세서에 설명된 기능을 수행하도록 구성된, 예를 들어 도전성 라인, 트랜지스터, 커패시터, 인덕터, 저항기, 증폭기 또는 다른 활성 소자 또는 비활성 소자와 같은 다양한 회로 소자를 포함할 수 있다.
도 7은 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 가지는 메모리 어레이를 동작시키기 위한 방법(700)을 도시하는 흐름도이다. 방법(700)의 동작은 도 1, 도 3, 또는 도 5를 참조하여 기술된 바와 같이 메모리 어레이(100) 또는 메모리 뱅크(305)에 의해 실시될 수 있다. 예를 들어, 방법(700)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이 메모리 컨트롤러(140)에 의해 수행될 수 있다. 일부 예에서, 메모리 컨트롤러(140)는 다음에 설명되는 기능을 수행하기 위해 메모리 어레이(100)의 기능 소자를 제어하도록 코드의 세트를 실행할 수 있다. 추가적으로 또는 대안적으로, 메모리 컨트롤러(140)는 특수 목적 하드웨어를 사용하여 다음에 설명되는 기능을 수행할 수 있다.
블록(705)에서, 방법은 도 1, 도 3, 및 도 4를 참조하여 설명된 바와 같이 메모리 어레이가 액세스 가능한 메모리 뱅크의 메모리 셀의 수와 관련된 베이스 페이지 크기의 정수배인 액티브 페이지 크기를 선택하는 단계를 포함할 수 있다. 일부 예에서, 상기 방법은 베이스 페이지 크기를 식별하는 단계를 포함할 수 있다. 일부 예에서, 베이스 페이지 크기는 메모리 어레이의 복수의 메모리 구획의 각각의 메모리 구획에 대한 페이지 크기이다. 특정 예에서, 블록(705)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이 메모리 컨트롤러(140)에 의해 수행되거나 또는 용이하게 될 수 있다.
블록(710)에서, 방법은 도 1 및 도 3을 참조하여 기술된 바와 같이, 액티브 페이지 크기에 기초하여 메모리 뱅크에 대한 어드레스 체계를 구성하는 단계를 포함할 수 있다. 특정 예에서, 블록(710)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이, 메모리 컨트롤러(140)에 의해 수행되거나 또는 용이하게 될 수 있다.
블록(715)에서, 방법은 도 1 및 도 3을 참조하여 기술된 바와 같이, 어드레스 방식을 사용하고 액티브 페이지 크기에 따라서 액세스 명령을 전송하는 단계를 포함할 수 있다. 특정 예들에서, 블록(715)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이 메모리 컨트롤러(140)에 의해 수행되거나 또는 용이하게 될 수 있다.
방법의 일부 예에서, 어드레스 체계를 구성하는 단계는, 메모리 어레이의 복수의 메모리 구획 중 메모리 구획, 메모리 구획 내의 물리적 행, 및 물리적 행의 물리적 열 구획을 식별하도록 논리 행 어드레스를 구성하는 단계를 포함한다. 일부 경우에, 물리적 열 구획은 베이스 페이지 크기와 동일한 복수의 메모리 셀을 포함한다. 물리적 열 구획은 또한 물리적 행을 따라서 등간격으로 이격된 복수의 물리적 열을 포함할 수 있다. 어드레스 체계를 구성하는 단계는 액티브 페이지 크기의 구획을 식별하도록 열 어드레스를 구성하는 단계를 포함할 수 있으며, 액티브 페이지 크기는 복수의 구획을 포함한다. 일부 예에서, 액티브 페이지 크기의 구획은 판독 버스트 길이를 포함한다.
일부 예에서, 어드레스 체계를 구성하는 단계는 액티브 페이지 크기에 기초하여 논리 행 어드레스에 대한 비트의 수를 결정하는 단계, 및 액티브 페이지 크기에 기초하여 열 어드레스에 대한 비트의 수를 결정하는 단계를 포함한다. 일부 경우에, 행 어드레스에 대한 비트 수와 열 어드레스에 대한 비트 수의 합은 액티브 페이지 크기에 독립적인 상수값이다. 일부 예에서, 상수값은 메모리 뱅크의 크기 및 판독 버스트 길이에 기초할 수 있다.
방법은 또한 복수의 메모리 구획들의 제1 메모리 구획과 복수의 메모리 구획들의 제2 메모리 구획 사이의 링크 관계를 결정하는 단계를 포함할 수 있다. 일부 예에서, 제1 메모리 구획은 제2 메모리 구획에 링크될 수 있고, 액티브 페이지 크기는 베이스 페이지 크기의 2배일 수 있다. 이러한 예에서, 방법은 메모리 페이지를 열도록 행 디코더에, 제1 메모리 구획을 식별하는 논리 행 어드레스를 전송하는 단계, 논리 행 어드레스에 기초하여 제1 메모리 구획의 제1 베이스 메모리 페이지를 여는 단계, 및 제1 메모리 구획과 제2 메모리 구획 사이의 링크에 기초하여 제2 메모리 구획의 제2 베이스 메모리 페이지를 여는 단계를 포함할 수 있으며, 메모리 페이지는 제1 베이스 메모리 페이지와 제2 베이스 메모리 페이지를 포함한다. 일부 예에서, 제2 베이스 메모리 페이지는 제1 메모리 구획 내의 제1 베이스 메모리 페이지와 동일한, 제2 메모리 구획 내의 상대 어드레스를 가진다. 방법의 일부 예에서, 링크 관계는 레지스터에 저장되고, 또한 구성 가능할 수 있다.
방법의 일부 예에서, 액티브 페이지 크기를 선택하는 단계는 디바이스에 전원을 공급할 때 액티브 페이지 크기를 선택하는 단계를 포함할 수 있으며, 메모리 어레이가 디바이스의 소자를 포함한다. 또는, 액티브 페이지 크기를 선택하는 단계는 특정 페이지 크기를 사용하라는 지시를 수신하는 단계, 및 특정 페이지 크기와 동일한 액티브 페이지 크기를 설정하는 단계를 포함할 수 있다. 일부 경우에, 특정 페이지 크기를 사용하라는 지시는 소프트웨어 애플리케이션으로부터 수신된다. 일부 경우에, 페이지 크기는 베이스 페이지 크기의 2의 배수일 수 있다.
방법은 또한 액티브 페이지 크기를 사용하여 메모리 뱅크의 제1 복수의 메모리 셀을 프로그래밍하는 단계, 및 베이스 페이지 크기의 다른 정수배 또는 약수인 다른 액티브 페이지 크기를 사용하여 메모리 뱅크의 제2 복수의 메모리 셀을 판독하는 단계를 포함할 수 있다. 예를 들어, 베이스 페이지 크기의 다른 약수인 다른 액티브 페이지 크기를 사용하는 것은 기록 동작 동안 사용될 수 있으며, 기록 동작 동안 사용된 다른 페이지 크기는 판독 동작에 사용된 액티브 페이지 크기보다 클 수 있다.
장치가 설명된다. 일부 예에서, 장치는 메모리 어레이가 액세스 가능한 메모리 뱅크의 메모리 셀의 수와 관련된 베이스 페이지 크기의 정수배인 액티브 페이지 크기를 선택하기 위한 수단, 액티브 페이지 크기에 적어도 부분적으로 기초하여 메모리 뱅크에 대한 어드레스 체계를 구성하기 위한 수단, 및 어드레스 체계를 사용하고 액티브 페이지 크기에 따라서 엑세스 명령을 전송하기 위한 수단을 포함할 수 있다.
일부 예에서, 어드레스 체계를 구성하기 위한 수단은 메모리 어레이의 복수의 메모리 구획 중 메모리 구획, 메모리 구획 내의 물리적 행, 및 물리적 열의 물리적 열 구획을 식별하기 위해 논리 행 어드레스를 구성하기 위한 수단을 포함한다. 일부 예에서, 물리적 열 구획은 베이스 페이지 크기와 동일한 복수의 메모리 셀을 포함한다. 일부 예에서, 물리적 열 구획은 물리적 행을 따라서 등간격으로 이격된 복수의 물리적 열을 포함한다.
일부 예에서, 어드레스 체계를 구성하기 위한 수단은 액티브 페이지 크기의 구획을 식별하도록 열 어드레스를 구성하기 위한 수단을 포함하고, 액티브 페이지 크기는 복수의 구획을 포함한다. 일부 예에서, 액티브 페이지 크기의 구획은 판독 버스트 길이를 포함한다. 일부 예에서, 어드레스 체계를 구성하기 위한 수단은 액티브 페이지 크기에 적어도 부분적으로 기초하여 논리 행 어드레스에 대한 비트의 수를 결정하기 위한 수단, 및 액티브 페이지 크기에 적어도 부분적으로 기초하여 열 어드레스에 대한 비트의 수를 결정하기 위한 수단을 포함한다.
일부 예에서, 논리 행 어드레스에 대한 비트 수와 열 어드레스에 대한 비트 수의 합은 액티브 페이지 크기에 독립적인 상수값이다. 일부 예에서, 상수값은 메모리 뱅크의 크기 또는 판독 버스트 길이, 또는 둘 모두에 적어도 부분적으로 기초한다. 일부 예에서, 장치는 복수의 메모리 구획의 제1 메모리 구획과 복수의 메모리 구획의 제2 메모리 구획 사이의 링크 관계를 결정하기 위한 수단을 포함할 수 있다.
일부 예에서, 제1 메모리 구획은 제2 메모리 구획에 링크되고, 액티브 페이지 크기는 베이스 페이지 크기의 2배이고, 장치는 메모리 페이지를 열도록, 제1 메모리 구획을 식별하는 논리 행 어드레스를 행 디코더에 전송하기 위한 수단, 논리 행 어드레스에 적어도 부분적으로 기초하여 제1 메모리 구획의 제1 베이스 메모리 페이지를 열기 위한 수단, 및 제1 메모리 구획과 제2 메모리 구획 사이의 링크에 적어도 부분적으로 기초하여 제2 메모리 구획의 제2 베이스 메모리 페이지를 열기 위한 수단을 포함할 수 있으며, 메모리 페이지는 제1 베이스 메모리 페이지 및 제2 베이스 메모리 페이지를 포함한다. 일부 예에서, 제2 베이스 메모리 페이지는 제1 메모리 구획 내의 제1 베이스 메모리 페이지와 동일한, 제2 메모리 구획 내의 상대 어드레스를 가진다. 일부 예에서, 링크 관계는 레지스터에 저장된다.
일부 예에서, 링크 관계는 구성 가능하다. 일부 예에서, 액티브 페이지 크기를 선택하기 위한 수단은 디바이스를 켤 때 액티브 페이지 크기를 선택하기 위한 수단을 포함하며, 메모리 어레이는 디바이스의 소자를 포함한다. 일부 예에서, 액티브 페이지 크기를 선택하기 위한 수단은 특정 페이지 크기를 사용하라는 지시를 수신하기 위한 수단, 및 특정 페이지 크기와 동일한 액티브 페이지 크기를 설정하기 위한 수단을 포함한다. 일부 예에서, 장치는 소프트웨어 애플리케이션으로부터 특정 페이지 크기를 사용하라는 지시를 수신하기 위한 수단을 포함할 수 있다.
일부 예에서, 장치는 액티브 페이지 크기를 사용하여 메모리 뱅크의 제1 복수의 메모리 셀을 프로그래밍하기 위한 수단, 및 베이스 페이지 크기의 다른 정수배 또는 약수인 다른 액티브 페이지 크기를 사용하여 메모리 뱅크의 제2 복수의 메모리 셀을 판독하기 위한 수단을 포함할 수 있다. 일부 예에서, 베이스 페이지 크기는 메모리 어레이의 복수의 메모리 구획의 각각의 메모리 구획에 대한 페이지 크기이다.
도 8은 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 가지는 메모리 어레이를 동작시키기 위한 방법(800)을 예시하는 흐름도를 도시한다. 방법(800)의 동작은 도 1, 도 3, 또는 도 5를 참조하여 기술된 바와 같이 메모리 어레이(100) 또는 메모리 뱅크(305)에 의해 실시될 수 있다. 예를 들어, 방법(800)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이 메모리 컨트롤러(140)에 의해 수행될 수 있다. 일부 예에서, 메모리 컨트롤러(140)는 다음에 설명되는 바와 같은 기능을 수행하도록 메모리 어레이(100)의 기능 소자를 제어하도록 코드의 세트를 실행할 수 있다. 추가적으로 또는 대안적으로, 메모리 컨트롤러(140)는 특수 목적 하드웨어를 사용하여 다음에 설명되는 기능을 수행하고 특징화할 수 있다.
블록(805)에서, 방법은 도 1 및 도 3을 참조하여 기술된 바와 같이, 메모리 어레이가 액세스 가능한 복수의 페이지 크기로부터 페이지 크기를 식별하는 단계를 포함할 수 있다. 일부 예에서, 페이지 크기를 식별하는 단계는 메모리 어레이의 2개 이상의 행을 포함하는 페이지 크기를 식별하는 단계를 포함한다. 특정 예에서, 블록(805)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이 메모리 컨트롤러(140)에 의해 수행되거나 또는 용이하게 될 수 있다.
블록(810)에서, 방법은 식별된 페이지 크기에 기초하여 메모리 어레이의 적어도 하나의 행을 액세스하는 단계를 포함할 수 있으며, 액세스하는 단계는 도 1, 도 3, 및 도 4를 참조하여 기술된 바와 같이 행의 각각의 메모리 셀을 액세스 라인에 전기적으로 결합하는 단계를 포함한다. 일부 예에서, 메모리 어레이의 행을 액세스하는 단계는 복수의 선택 구성 요소를 활성화하는 단계를 포함하며, 여기에서, 행의 각각의 메모리 셀은 복수의 선택 구성 요소의 선택 구성 요소와 전자 통신한다. 특정 예에서, 블록(810)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이 메모리 컨트롤러(140)에 의해 수행되거나 또는 용이하게 될 수 있다.
블록(815)에서, 방법은 도 1, 도 3, 및 도 4를 참조하여 기술된 바와 같이 액세스 라인의 서브세트를 통해 행의 메모리 셀의 서브세트를 선택하는 단계를 포함할 수 있다. 일부 예에서, 액세스 라인의 서브세트를 통해 행의 메모리 셀의 서브세트를 선택하는 단계는 액세스 라인의 서브세트의 각각의 액세스 라인을 복수의 감지 구성 요소의 감지 구성 요소에 전자적으로 결합하도록 제1 복수의 스위치를 활성화하는 단계를 포함할 수 있다. 일부 경우에, 액세스 라인의 나머지는 제2 복수의 스위치를 통해 복수의 감지 구성 요소로부터 전기적으로 절연된다. 특정 예에서, 블록(815)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이 메모리 컨트롤러(140)에 의해 수행되거나 또는 용이하게 될 수 있다.
블록(820)에서, 방법은 도 1, 도 3, 및 도 4를 참조하여 기술된 바와 같이, 메모리 셀의 서브세트의 각각의 메모리 셀의 논리값을 결정하는 단계를 포함할 수 있다. 특정 예에서, 블록(820)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이 메모리 컨트롤러(140)에 의해 수행되거나 또는 용이하게 될 수 있다.
방법의 일부 예는 메모리 셀의 서브세트를 식별하는 논리 행 어드레스를 수신하는 단계, 및 논리 행 어드레스에 기초하여 제1 복수의 스위치를 활성화하는 단계를 포함할 수 있다.
장치가 설명된다. 일부 예에서, 장치는 메모리 어레이가 액세스 가능한 복수의 페이지 크기로부터 페이지 크기를 식별하기 위한 수단, 식별된 페이지 크기에 적어도 부분적으로 기초하여 메모리 어레이의 적어도 하나의 행에 액세스하기 위한 수단으로서, 상기 액세스하는 것이 액세스 라인에 행의 각각의 메모리 셀을 전자적으로 결합하는 것을 포함하는, 상기 수단, 액세스 라인의 서브세트를 통해 행의 메모리 셀의 서브세트를 선택하기 위한 수단, 및 메모리 셀의 서브세트의 각각의 메모리 셀의 논리값을 결정하기 위한 수단을 포함할 수 있다.
일부 예에서, 페이지 크기를 식별하기 위한 수단은 메모리 어레이의 2개 이상의 행을 포함하는 페이지 크기를 식별하기 위한 수단을 포함한다. 일부 예에서, 액세스 라인의 서브세트를 통해 행의 메모리 셀의 서브세트를 선택하기 위한 수단은 액세스 라인의 서브세트의 각각의 액세스 라인을 복수의 감지 구성 요소의 감지 구성 요소에 전자적으로 결합하도록 제1 복수의 스위치를 활성화하기 위한 수단을 포함한다.
일부 예에서, 액세스 라인의 나머지는 제2 복수의 스위치를 통해 복수의 감지 구성 요소로부터 전기적으로 절연된다. 일부 예에서, 장치는 메모리 셀의 서브세트를 식별하는 논리 행 어드레스를 수신하기 위한 수단, 및 논리 행 어드레스에 적어도 부분적으로 기초하여 제1 복수의 스위치를 활성화하기 위한 수단을 포함할 수 있다. 일부 예에서, 메모리 어레이의 행을 액세스하기 위한 수단은 복수의 선택 구성 요소를 활성화하기 위한 수단을 포함하며, 행의 각각의 메모리 셀은 복수의 선택 구성 요소의 선택 구성 요소와 전자 통신한다.
도 9는 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 가지는 메모리 어레이를 동작시키기 위한 방법(900)을 예시하는 흐름도를 도시한다. 방법(900)의 동작은 도 1, 도 3, 또는 도 5를 참조하여 기술된 바와 같이 메모리 어레이(100) 또는 메모리 뱅크(305)에 의해 실시될 수 있다. 예를 들어, 방법(900)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이 메모리 컨트롤러(140)에 의해 수행될 수 있다. 일부 예에서, 메모리 컨트롤러(140)는 다음에 설명되는 기능을 수행하도록 메모리 어레이(100)의 기능 소자를 제어하도록 코드의 세트를 실행할 수 있다. 추가적으로 또는 대안적으로, 메모리 컨트롤러(140)는 특수 목적 하드웨어를 사용하여 다음에 설명되는 기능 수행하고 특징화할 수 있다.
블록(905)에서, 방법은 도 1, 도 3 및 도 4를 참조하여 기술된 바와 같이, 메모리 뱅크의 제1 행에서 제1 복수의 논리값을 결정하는 단계를 포함할 수 있다. 일부 예에서, 제1 행에서 제1 복수의 논리값을 결정하는 단계는 제1 행에서의 메모리 셀의 서브세트의 각각의 메모리 셀의 논리 상태를 결정하는 단계를 포함한다. 특정 예에서, 블록(905)의 동작은 도 1, 도 3, 도 5 및 도 6을 참조하여 기술된 바와 같은 메모리 컨트롤러(140), 도 1 내지 도 5를 참조하여 기술된 바와 같은 감지 구성 요소(125), 또는 도 4를 참조하여 기술된 바와 같은 스위치(405)에 의해 수행되거나 또는 용이하게 될 수 있다.
블록(910)에서, 방법은 도 1, 도 3 및 도 4를 참조하여 기술된 바와 같이 메모리 뱅크의 제2 행에서 제2 복수의 논리값을 결정하는 단계를 포함할 수 있다. 일부 예에서, 제2 행에서 제2 복수의 논리값을 결정하는 단계는 제2 행에서의 메모리 셀의 서브세트의 각각의 메모리 셀의 논리 상태를 결정하는 단계를 포함한다. 특정 예에서, 블록(910)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같은 메모리 컨트롤러(140), 도 1 내지 도 5를 참조하여 기술된 바와 같은 감지 구성 요소(125), 또는 도 4를 참조하여 기술된 바와 같은 스위치(405)에 의해 수행되거나 또는 용이하게 될 수 있다.
블록(915)에서, 방법은 도 1, 도 3 및 도 4를 참조하여 기술된 바와 같이 제1 복수의 논리값 및 제2 복수의 논리값을 포함하는 메모리 페이지를 버퍼링하는 단계를 포함할 수 있다. 일부 예에서, 메모리 페이지를 버퍼링하는 단계는 제1 복수의 논리값 및 제2 복수의 논리값을 래칭하는 단계를 포함한다. 특정 예에서, 블록(915)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같은 메모리 컨트롤러(140), 또는 도 4를 참조하여 기술된 바와 같은 버퍼(410)에 의해 수행되거나 또는 용이하게 될 수 있다.
블록(920)에서, 방법은 도 1, 도 3, 도 4, 및 도 6을 참조하여 기술된 바와 같이 버스에 메모리 페이지의 서브세트를 전송하는 단계를 포함할 수 있다. 특정 예에서, 블록(920)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같은 메모리 컨트롤러(140), 또는 도 6을 참조하여 기술된 바와 같은 버스(630)에 의해 수행되거나 또는 용이하게 될 수 있다.
방법의 일부 예에서, 메모리 뱅크는 복수의 메모리 구획을 포함하고, 제1 메모리 구획은 제1 행을 포함하고, 제2 메모리 구획은 제2 행을 포함한다.
베이스 메모리 페이지 크기가 제1 복수의 논리값 또는 제2 복수의 논리값을 포함하는 방법의 일부 예에서, 방법은 메모리 페이지의 크기가 베이스 메모리 페이지 크기의 2배를 포함하는지를 결정하는 단계, 및 메모리 페이지의 크기에 기초하여 활성화 명령을 교부하도록 명령 생성기를 구성하는 단계를 포함할 수 있다.
장치가 설명된다. 일부 예에서, 장치는 메모리 뱅크의 제1 행에서 제1 복수의 논리값을 결정하기 위한 수단, 메모리 뱅크의 제2 행에서 제2 복수의 논리값을 결정하기 위한 수단, 제1 복수의 논리값 및 제2 복수의 논리값을 포함하는 메모리 페이지를 버퍼링하기 위한 수단, 및 메모리 페이지의 서브세트를 버스로 전송하기 위한 수단을 포함할 수 있다.
일부 예에서, 메모리 뱅크는 복수의 메모리 구획을 포함하고, 제1 메모리 구획은 제1 행을 포함하고, 제2 메모리 구획은 제2 행을 포함한다. 일부 예에서, 베이스 메모리 페이지 크기는 제1 복수의 논리값 또는 제2 복수의 논리값을 포함하고, 장치는 메모리 페이지의 크기가 베이스 메모리 페이지 크기의 2배를 포함하는지를 결정하기 위한 수단, 및 메모리 페이지의 크기에 적어도 부분적으로 기초하여 활성화 명령을 교부하도록 명령 생성기를 구성하기 위한 수단을 포함한다.
일부 예에서, 제1 행에서의 제1 복수의 논리값을 결정하기 위한 수단은 제1 행에서의 메모리 셀의 서브세트의 각각의 메모리 셀의 논리 상태를 결정하기 위한 수단을 포함한다. 일부 예에서, 메모리 페이지를 버퍼링하기 위한 수단은 제1 복수의 논리값 및 제2 복수의 논리값을 래칭하기 위한 수단을 포함한다.
도 10은 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 가지는 메모리 어레이를 동작시키는 방법(1000)을 예시하는 흐름도를 도시한다. 방법(1000)의 동작은 도 1, 도 3, 또는 도 5를 참조하여 기술된 바와 같이 메모리 어레이(100) 또는 메모리 뱅크(305)에 의해 실시될 수 있다. 예를 들어, 방법(1000)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이 메모리 컨트롤러(140)에 의해 수행될 수 있다. 일부 예에서, 메모리 컨트롤러(140)는 다음에 설명되는 기능을 수행하기 위해 메모리 어레이(100)의 기능 소자를 제어하도록 코드의 세트를 실행할 수 있다. 추가적으로 또는 대안적으로, 메모리 컨트롤러(140)는 특수 목적 하드웨어를 사용하여 다음에 설명되는 기능을 수행할 수 있다.
블록(1005)에서, 방법은 도 1 및 도 3를 참조하여 기술된 바와 같이, 제1 메모리 페이지 크기를 사용하여 복수의 메모리 뱅크의 제1 메모리 뱅크를 액세스하는 단계를 포함할 수 있다. 특정 예들에서, 블록(1005)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이, 메모리 컨트롤러(140)에 의해 수행되거나 또는 용이하게 될 수 있다.
블록(1010)에서, 방법은 도 1 및 도 3을 참조하여 기술된 바와 같이, 제1 메모리 페이지 크기와 다른 제2 메모리 페이지 크기를 사용하여 복수의 메모리 뱅크의 제2 메모리 뱅크를 액세스하는 단계를 포함할 수 있다. 특정 예에서, 블록(1010)의 동작은 도 1, 도 3, 도 5 또는 도 6을 참조하여 기술된 바와 같이, 메모리 컨트롤러(140)에 의해 수행되거나 또는 용이하게 될 수 있다.
일부 예에서, 방법은 제1 메모리 페이지 크기에 기초한 제1 어드레싱 체계를 사용하여 제1 메모리 뱅크를 액세스하는 단계, 및 제2 메모리 페이지 크기에 기초한 제2 어드레싱 체계를 사용하여 제2 메모리 뱅크를 액세스하는 단계를 포함할 수 있다.
장치가 설명된다. 일부 예에서, 장치는 제1 메모리 페이지 크기를 사용하여 복수의 메모리 뱅크의 제1 메모리 뱅크를 액세스하기 위한 수단, 및 제1 메모리 페이지 크기와 다른 제2 메모리 페이지 크기를 사용하여 복수의 메모리 뱅크의 제2 메모리 뱅크를 액세스하기 위한 수단을 포함할 수 있다.
일부 예에서, 장치는 적어도 부분적으로 제1 메모리 페이지 크기에 기초한 제1 어드레싱 체계를 사용하여 제1 메모리 뱅크를 액세스하기 위한 수단, 및 제2 메모리 페이지 크기에 적어도 부분적으로 기초한 제2 어드레싱 체계를 사용하여 제2 메모리 뱅크를 액세스하기 위한 수단을 포함할 수 있다.
도 11은 본 발명의 다양한 실시예에 따라서 가변 페이지 크기 아키텍처를 가지는 메모리 어레이를 동작시키기 위한 방법(1100)을 예시하는 흐름도를 도시한다. 방법(1100)의 동작은 도 1, 도 3 또는 도 5를 참조하여 기술된 바와 같이 메모리 어레이(100) 또는 메모리 뱅크(305)에 의해 실시될 수 있다. 예를 들어, 방법(1100)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이 메모리 컨트롤러(140)에 의해 수행될 수 있다. 일부 예에서, 메모리 컨트롤러(140)는 다음에 설명되는 기능을 수행하도록 메모리 어레이(100)의 기능 소자를 제어하도록 코드의 세트를 실행할 수 있다. 추가적으로 또는 대안적으로, 메모리 컨트롤러(140)는 특수 목적 하드웨어를 사용하여 다음에 설명되는 기능을 수행할 수 있다. 방법(1100)은 각각의 메모리 구획이 메모리 셀의 복수의 물리적 행을 가지는 복수의 메모리 구획을 포함하는 메모리 어레이의 메모리 뱅크를 동작시키는 단계를 포함할 수 있다.
블록(1105)에서, 방법은 도 1, 도 3 및 도 4를 참조하여 기술된 바와 같이 메모리 뱅크에서의 메모리 셀에 대한 액세스 요청을 수신하는 단계를 포함할 수 있다. 특정 예에서, 블록(1105)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이, 메모리 컨트롤러(140)에 의해 수행되거나 또는 용이하게 될 수 있다.
블록(1110)에서, 방법은 도 1, 도 3 및 도 4를 참조하여 기술된 바와 같이, 메모리 뱅크의 복수의 메모리 구획 중 메모리 셀이 위치하는 메모리 구획을 식별하는 단계를 포함할 수 있다. 특정 예에서, 블록(1110)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이, 메모리 컨트롤러(140)에 의해 수행되거나 또는 용이하게 될 수 있다.
블록(1115)에서, 방법은 도 1, 도 3 및 도 4를 참조하여 기술된 바와 같이, 메모리 구획에서, 메모리 셀의 복수의 물리적 행 중 메모리 셀을 포함하는 물리적 행을 식별하는 단계를 포함할 수 있다. 특정 예에서, 블록(1115)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같이 메모리 컨트롤러(140)에 의해 수행되거나 또는 용이하게 될 수 있다.
블록(1120)에서, 방법은 도 1, 도 3 및 도 4를 참조하여 기술된 바와 같이, 물리적 행에서, 메모리 셀을 포함하는 메모리 페이지를 식별하는 단계를 포함할 수 있다. 특정 예에서, 블록(1120)의 동작은 도 1, 도 3, 도 5 또는 도 6을 참조하여 기술된 바와 같이, 메모리 컨트롤러(140)에 의해 수행되거나 또는 용이하게 될 수 있다.
블록(1125)에서, 방법은 도 1, 도 3 및 도 4를 참조하여 기술된 바와 같이, 메모리 페이지를 열도록 논리 행 어드레스를 생성하는 단계를 포함할 수 있다. 특정 예에서, 블록(1125)의 동작은 도 1, 도 3, 도 5, 또는 도 6을 참조하여 기술된 바와 같은 메모리 컨트롤러(140), 또는 도 5를 참조하여 기술된 바와 같은 명령 생성기에 의해 수행되거나 또는 용이하게 될 수 있다.
방법의 일부 예에서, 메모리 셀은 제2 메모리 구획에 위치될 수 있고, 제2 메모리 구획은 제1 메모리 구획에 링크될 수 있다. 이러한 경우에, 논리 행 어드레스를 생성하는 단계는 제1 메모리 구획을 식별하는 논리 행 어드레스를 생성하는 단계, 및 행 디코더에 논리 행 어드레스를 전송하는 단계를 포함할 수 있으며, 제2 메모리 구획의 물리적 행은 제1 메모리 구획을 식별하는 논리 행 어드레스 및 제1 메모리 구획과 제2 메모리 구획 사이의 링크에 기초하여 행 디코더에 의해 액세스 가능하다.
장치가 설명된다. 일부 예에서, 장치는 각각의 메모리 구획이 메모리 셀의 복수의 물리적 행을 가지는 복수의 메모리 구획을 포함하는 메모리 어레이의 메모리 뱅크에서의 메모리 셀에 대한 액세스 요청을 수신하기 위한 수단으로서, 상기 수단, 메모리 셀이 위치된 메모리 뱅크의 복수의 메모리 구획의 메모리 구획을 식별하기 위한 수단, 메모리 구획에서, 메모리 셀의 복수의 물리적 행 중 메모리 셀을 포함하는 물리적 행을 식별하기 위한 수단, 물리적 행에서, 메모리 셀을 포함하는 메모리 페이지를 식별하기 위한 수단, 및 메모리 페이지를 열도록 논리 행 어드레스를 생성하기 위한 수단을 포함할 수 있다.
일부 예에서, 메모리 셀은 제2 메모리 구획에 위치되고, 제2 메모리 구획은 제1 메모리 구획에 링크되며, 논리 행 어드레스를 생성하는 것은 제1 메모리 구획을 식별하는 논리 행 어드레스를 생성하기 위한 수단, 및 행 디코더에 논리 행 어드레스를 전송하기 위한 수단을 포함하며, 제2 메모리 구획의 물리적 행은 제1 메모리 구획을 식별하는 논리 행 어드레스, 및 제1 메모리 구획과 제2 메모리 구획 사이의 링크에 적어도 부분적으로 기초하여 행 디코더에 의해 액세스 가능하다.
그러므로, 방법(700, 800, 900, 1000 및 1100)은 가변 페이지 아키텍처를 가지는 메모리 어레이를 동작시키기 위해 제공될 수 있다. 방법(700, 800, 900, 1000 및 1100)이 가능한 실시를 설명하고, 다른 실시가 가능하도록 동작 및 단계가 재배열되거나 수정될 수 있다는 것을 유의하여야 한다. 일부 예에서, 방법(700, 800, 900, 1000 및 1100) 중 2개 이상으로부터의 특징은 조합될 수 있다.
장치가 설명된다. 일부 예에서, 장치는, 각각의 행 액세스 라인이 메모리 셀의 행과 전자 통신하는 복수의 행 액세스 라인, 각각의 열 액세스 라인이 메모리 셀의 열과 전자 통신하는 복수의 열 액세스 라인, 및 복수의 감지 구성 요소로서, 감지 구성 요소의 수가 열 액세스 라인의 수보다 작은, 상기 복수의 감지 구성 요소, 및 복수의 메모리 페이지 크기로부터 메모리 페이지 크기를 선택하기 위한 수단을 포함하며, 복수의 메모리 페이지 크기 중 가장 작은 페이지 크기는 감지 구성 요소의 수에 적어도 부분적으로 기초한다.
일부 예에서, 복수의 감지 구성 요소의 각각의 감지 구성 요소는 적어도 2개의 열 액세스 라인과 전자 통신하며, 장치는 복수의 스위치를 포함할 수 있으며, 복수의 스위치의 각각의 스위치는 복수의 감지 구성 요소의 감지 구성 요소로부터 복수의 열 액세스 라인의 열 액세스 라인을 전기적으로 분리한다. 일부 예에서, 장치는 복수의 래치를 포함하는 행 버퍼를 포함할 수 있고, 복수의 래치의 각각의 래치는 복수의 감지 구성 요소의 감지 구성 요소와 전자 통신한다.
일부 예에서, 복수의 행 액세스 라인 및 복수의 열 액세스 라인은 메모리 구획을 포함하고, 장치는 메모리 뱅크를 포함하는 복수의 메모리 구획을 포함할 수 있으며, 복수의 메모리 구획의 각각의 메모리 구획은 감지 구성 요소 세트와 관련된다. 일부 예에서, 장치는 메모리 페이지 크기에 적어도 부분적으로 기초하여 논리 행 어드레스를 교부하기 위한 수단을 포함할 수 있다.
본 명세서에서의 설명은 예들을 제공하고, 청구항에서 제시된 범위, 적용 가능성, 또는 예들을 제한하지 않는다. 본 발명의 범위를 벗어남이 없이 논의된 요소의 기능 및 배열에서의 변경이 만들어질 수 있다. 다양한 예가 생략되고, 적절한 것으로서 다양한 절차 또는 구성 요소를 대체 또는 추가할 수 있다. 또한, 일부 예에 대해 기술된 특징은 다른 예에서 조합될 수 있다.
첨부된 도면과 관련하여 본 명세서에서 제시된 설명은 예시적인 구성을 기술하고, 실시될 수 있거나 또는 청구항의 범위 내에 있는 모든 예를 나타내지 않는다. 본 명세서에서 사용된 "예", "예시" 및 "실시예"와 같은 용어는 "예, 실례 또는 예시로서의 역할을 하는"을 의미하고, "바람직한" 또는 "다른 예보다 유익한" 것을 의미하지 않는다. 상세한 설명은 설명된 기술의 이해를 제공하는 목적을 위하여 특정 상세를 포함한다. 그러나, 이러한 기술은 이러한 특정 상세없이 실시될 수 있다. 일부 예에서, 널리 공지된 구조 및 디바이스는 설명된 예의 개념을 모호하게 하는 것을 피하기 위해 블록도의 형태로 도시된다.
첨부된 도면에서, 유사한 구성 요소 또는 특징은 동일한 도면 부호를 가질 수 있다. 또한, 동일한 형태의 다양한 구성 요소는 유사한 구성 요소 사이를 구별하는 대시(dash) 및 제2 도면 부호가 도면 부호를 따르는 것에 의해 구별될 수 있다. 제1 도면 부호가 명세서에서 사용될 때, 제2 도면 부호와 관계없이 동일한 제1 도면 부호를 가지는 유사한 구성 요소 중 임의의 하나에 설명이 적용될 수 있다.
본 명세서에 기술된 정보 및 신호는 임의의 다양한 다른 기술 및 기법을 사용하여 표현될 수 있다. 예를 들어, 상기 설명 전반에 걸쳐 언급될 수 있는 데이터, 지시, 명령, 정보, 신호, 비트, 심볼 및 칩은 전압, 전류, 전자기파, 자기장 또는 입자, 광학 필드 또는 입자, 또는 그 조합으로 표현될 수 있다. 일부 도면은 신호를 단일 신호로서 나타낼 수 있으며; 그러나, 신호가 신호의 버스를 나타낼 수 있다는 것을 당업자는 이해할 것이며, 여기에서, 버스는 다양한 비트 폭을 가질 수 있다.
본 명세서에 사용된 바와 같이, "가상 접지"라는 용어는 대략 0 볼트(0 V)의 전압으로 유지되지만 접지와 직접 연결되지 않는 전기 회로의 노드를 나타낸다. 따라서, 가상 접지의 전압은 일시적으로 변동하여, 정상 상태에서 약 0 V로 복귀할 수 있다. 가상 접지는 연산 증폭기 및 저항으로 이루어진 분압기와 같은 다양한 전자 회로 소자를 사용하여 실시될 수 있다. 다른 실시도 또한 가능하다. "가상 접지" 또는 "가상으로 접지된"은 약 0 V에 접속되는 것을 의미한다.
"전자 통신"이라는 용어는 구성 요소 사이의 전자 흐름을 지원하는 구성 요소 사이의 관계를 지칭한다. 이러한 것은 구성 요소 사이의 직접적인 접속을 포함하거나, 또는 중간 구성 요소를 포함할 수 있다. 전자 통신에서의 구성 요소는 전자 또는 신호를 능동적으로 교환하거나(예를 들어, 통전된 회로에서), 또는 전자 또는 신호를 능동적으로 교환하지 않을 수 있지만(예를 들어, 전원이 차단된 회로에서), 회로가 통전될 때 전자 또는 신호를 교환하도록 구성되어 동작할 수 있다. 예로서, 스위치(예를 들어, 트랜지스터)를 통해 물리적으로 접속된 2개의 구성 요소는 스위치의 상태(즉, 개방 또는 폐쇄)에 관계없이 전자 통신한다.
용어 "분리된"은 전자들이 그 사이에서 현재 흐를 수 없는 구성 요소 사이의 관계를 지칭하며; 구성 요소는 그 사이에 개방 회로가 있으면 서로 분리된다. 예를 들어, 스위치에 의해 물리적으로 연결된 2개의 구성 요소는 스위치가 개방될 때 서로 분리될 수 있다.
용어 "결합(couple)"은 접속된 구성 요소 사이의 관계를 지칭한다. 결합된 구성 요소들은 서로 접속되어 서로 통신하거나 신호를 전송할 수 있다. 예를 들어, 스위치는 구성 요소 사이에 전류가 흐를 수 있도록 폐쇄 회로를 만들 때 구성 요소를 결합할 수 있다.
본 명세서에서 논의된 메모리 디바이스는 자발적인 전기 분극(electric polarization)을 특징으로 하는, 즉, 전계의 부재 시에 비제로 전기 분극(non-zero electric polarization)을 유지하는 강유전체 재료를 포함할 수 있다. 예시적인 강유전체 재료는 티탄산바륨(BaTiO3), 티탄산납(PbTiO3), 티탄산지르콘산납(PZT) 및 탄탈산 스트론튬 비스무트(SBT)를 포함한다. 강유전체 커패시터 내의 전기 분극은 강유전체 재료의 표면에서의 순전하(net charge)를 초래하고, 커패시터 단자를 통해 반대 전하를 끌어당긴다. 그러므로, 전하는 강유전체 재료와 커패시터 단자의 인터페이스에 저장된다. 전기 분극이 비교적 장시간 동안, 심지어 무한정으로 외부에서 인가된 전계의 부재시에 유지될 수 있기 때문에, 전하 누설은 예를 들어 DRAM 어레이에 이용된 캐패시터와 비교하여 상당히 감소될 수 있다. 이러한 것은 일부 DRAM 아키텍처에 대해 전술한 바와 같이 리프레시 동작을 수행할 필요성을 감소시킬 수 있다.
메모리 어레이(100)를 포함하여 본 명세서에서 논의된 디바이스는 실리콘, 게르마늄, 실리콘-게르마늄 합금, 갈륨 비소, 질화갈륨 등과 같은 반도체 기판 상에 형성될 수 있다. 일부 경우에, 기판은 반도체 웨이퍼이다. 다른 경우에, 기판은 실리콘-온-글래스(SOG) 또는 실리콘-온-사파이어(SOP)와 같은 실리콘-온-절연체(SOI) 기판, 또는 다른 기판 상의 반도체 물질의 에피택셜층일 수 있다. 기판, 또는 기판의 서브 영역의 도전성은 인, 붕소 또는 비소를 포함하지만 이에 한정되지 않는 다양한 화학종을 사용하는 도핑을 통해 제어될 수 있다. 도핑은 기판의 초기 형성 또는 성장 동안 이온 주입에 의해, 또는 임의의 다른 도핑 수단에 의해 수행될 수 있다.
본 명세서에서 논의된 트랜지스터 또는 트랜지스터들은 전계 효과 트랜지스터(FET)를 나타낼 수 있고, 소스, 드레인 및 게이트를 포함하는 3-단자 디바이스를 포함할 수 있다. 단자는 도전성 재료, 예를 들어 금속을 통해 다른 전자 소자에 접속될 수 있다. 소스 및 드레인은 도전성일 수 있으며, 고도로 도핑된, 예를 들어 축퇴된(degenerate) 반도체 영역을 포함할 수 있다. 소스 및 드레인은 약하게 도핑된 반도체 영역 또는 채널에 의해 분리될 수 있다. 채널이 n-형(즉, 다수 캐리어가 전자인)이면, FET는 n-형 FET로서 지칭될 수 있다. 채널이 p-형(즉, 다수 캐리어가 홀인)이면, FET는 p-형 FET로서 지칭될 수 있다. 채널은 절연 게이트 산화물에 의해 캡핑될 수 있다(capped). 채널 도전성은 게이트에 전압을 인가하는 것에 의해 제어될 수 있다. 예를 들어, n-형 FET 또는 p-형 FET에 각각 양의 전압 또는 음의 전압을 인가하면, 채널은 도전성이 될 수 있다. 트랜지스터는 트랜지스터의 임계 전압보다 크거나 같은 전압이 트랜지스터 게이트에 인가될 때 "온(on)" 또는 "활성화"될 수 있다. 트랜지스터는 트랜지스터의 임계 전압보다 낮은 전압이 트랜지스터 게이트에 인가될 때 "오프(off)" 또는 "비활성화"될 수 있다.
본 명세서의 개시와 관련하여 설명된 다양한 예시적인 블록, 구성 요소 및 모듈은 범용 프로세서, DSP, ASIC, FPGA 또는 다른 프로그램 가능한 논리 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 구성 요소 또는 본 명세서에서 기술된 기능을 수행하도록 설계된 그 임의의 조합을 이용하여 실시되거나 또는 수행될 수 있다. 범용 프로세서는 마이크로 프로세서일 수 있지만, 대안적으로 프로세서는 임의의 종래 프로세서, 컨트롤러, 마이크로컨트롤러 또는 상태 기계일 수 있다. 프로세서는 또한 컴퓨팅 디바이스의 조합(예를 들어, DSP와 마이크로프로세서의 조합, 다수의 마이크로프로세서, DSP 코어와 관련된 하나 이상의 마이크로프로세서, 또는 임의의 다른 이러한 구성)으로서 실시될 수 있다.
본 명세서에서 설명된 기능은 하드웨어, 프로세서에 의해 실행되는 소프트웨어, 펌웨어, 또는 그 임의의 조합으로 실시될 수 있다. 프로세서에 의해 실행되는 소프트웨어에서 실시되면, 기능은 컴퓨터 판독 가능 매체 상에서 하나 이상의 명령 또는 코드로서 저장되거나 전송될 수 있다. 다른 예 및 실시는 본 발명 및 첨부된 청구항의 범위 내에 있다. 예를 들어, 소프트웨어의 특성으로 인해, 전술한 기능은 프로세서, 하드웨어, 펌웨어, 하드와이어링(hardwiring) 또는 그 임의의 조합에 의해 실행되는 소프트웨어를 사용하여 실시될 수 있다. 기능을 실시하는 특징부는 기능의 일부가 상이한 물리적 위치에서 실시되도록 분포되는 것을 포함하여 다양한 위치에 물리적으로 위치될 수 있다. 또한, 본 명세서에서 사용되는 바와 같이, 청구항에 포함되고 항목의 목록(예를 들어, "적어도 하나" 또는 "하나 이상"과 같은 구문으로 시작되는 항목의 목록)에서 사용되는 바와 같은 "또는"은 예를 들어 A, B 또는 C 중 적어도 하나의 목록이 A 또는 B 또는 C 또는 AB 또는 AC 또는 BC 또는 ABC(즉, A 및 B 및 C)를 의미하는 포괄적 목록을 나타낸다.
컴퓨터 판독 가능 매체는 한 장소로부터 다른 장소로 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하는 비일시적인 컴퓨터 저장 매체 및 통신 매체 모두를 포함한다. 비일시적 저장 매체는 범용 또는 특수 목적 컴퓨터에 의해 액세스될 수 있는 임의의 이용 가능한 매체일 수 있다. 예로서, 비제한적으로, 비일시적 컴퓨터 판독 가능 매체는 RAM, ROM, 전기적으로 소거 가능한 프로그램 가능 판독 전용 메모리(EEPROM), 컴팩트 디스크(CD) ROM 또는 다른 광학 디스크 저장 장치, 자기 디스크 저장 장치 또는 다른 자기 저장 디바이스, 또는 지시 또는 데이터 구조의 형태로 필요한 프로그램 코드 수단을 운반 또는 저장하도록 사용될 수 있고 범용 또는 특수 목적 컴퓨터, 또는 범용 또는 특수 목적 프로세서에 의해 액세스될 수 있는 임의의 다른 비일시적인 매체를 포함할 수 있다.
또한, 임의의 접속은 컴퓨터 판독 가능 매체를 적절하게 지칭한다. 예를 들어, 소프트웨어가 동축 케이블, 광섬유 케이블, 트위스트 페어(twisted pair), 디지털 가입자 회선(DSL), 또는 적외선, 무선 및 마이크로파와 같은 무선 기술을 사용하여 웹 사이트, 서버, 또는 기타 원격 소스로부터 전송되면, 동축 케이블, 광섬유 케이블, 트위스트 페어, 디지털 가입자 회선(DSL), 또는 적외선, 무선 및 마이크로파와 같은 무선 기술은 매체의 정의에 포함된다. 본 명세서에서 사용되는 바와 같은 디스크(disk) 및 디스크(disc)는 CD, 레이저 디스크, 광 디스크, 디지털 다기능 디스크(DVD), 플로피 디스크, 및 블루레이 디스크를 포함하며, 여기에서, 디스크(disk)는 통상적으로 데이터를 자기적으로 재생하는 반면에, 디스크(disc)는 레이저를 이용하여 광학적으로 데이터를 재생한다. 상기의 조합은 또한 컴퓨터 판독 가능 매체의 범위 내에 포함된다.
본 명세서의 설명은 당업자가 본 발명을 제조 또는 사용하는 것을 가능하게 하도록 제공된다. 본 발명에 대한 다양한 수정은 당업자에게 자명할 것이며, 본 명세서에 정의된 일반적인 원리는 본 발명의 범위를 벗어남이 없이 다른 변형에 적용될 수 있다. 그러므로, 본 발명은 본 명세서에 설명된 예 및 설계로 한정되지 않고, 본 명세서에 개시된 원리 및 신규한 특징과 일치하는 가장 넓은 범위에 따른다.

Claims (20)

  1. 방법으로서,
    각각의 메모리 구획이 메모리 셀의 복수의 물리적 행을 가지는 복수의 메모리 구획을 포함하는 메모리 어레이의 메모리 뱅크에서 메모리 셀에 대한 액세스 요청을 수신하는 단계;
    상기 메모리 셀이 위치되는 상기 메모리 뱅크의 복수의 메모리 구획의 메모리 구획을 식별하는 단계;
    상기 메모리 구획에서, 메모리 셀의 복수의 물리적 행 중 상기 메모리 셀을 포함하는 물리적 행을 식별하는 단계;
    상기 물리적 행에서, 상기 메모리 셀을 포함하는 메모리 페이지를 식별하는 단계; 및
    상기 메모리 페이지를 열도록 논리 행 어드레스를 생성하는 단계를 포함하는, 방법.
  2. 청구항 1에 있어서,
    상기 메모리 셀은 제2 메모리 구획에 위치되고, 상기 제2 메모리 구획은 제1 메모리 구획에 링크되고; 상기 논리 행 어드레스를 생성하는 단계는,
    상기 제1 메모리 구획을 식별하는 상기 논리 행 어드레스를 생성하는 단계; 및
    상기 논리 행 어드레스를 행 디코더로 전송하는 단계를 포함하며, 상기 제2 메모리 구획의 물리적 행은 상기 제1 메모리 구획을 식별하는 상기 논리 행 어드레스, 및 상기 제1 메모리 구획과 상기 제2 메모리 구획 사이의 링크에 적어도 부분적으로 기초하여 상기 행 디코더에 의해 액세스 가능한, 방법.
  3. 청구항 1에 있어서,
    메모리 어레이가 액세스 가능한 복수의 페이지 크기로부터 상기 메모리 페이지의 페이지 크기를 식별하는 단계를 더 포함하며, 상기 페이지 크기는 베이스 페이지 크기의 정수배이고, 상기 베이스 페이지 크기는 상기 메모리 어레이의 행 내의 메모리 셀의 서브세트와 관련되며, 상기 메모리 셀의 서브세트는 상기 메모리 어레이와 관련된 복수의 감지 구성 요소에 대응하는 개수의 메모리 셀을 포함하는, 방법.
  4. 청구항 3에 있어서,
    상기 논리 행 어드레스를 생성하는 단계는, 상기 페이지 크기에 따라 상기 논리 행 어드레스를 생성하는 단계를 포함하는, 방법.
  5. 청구항 4에 있어서,
    상기 논리 행 어드레스는 비트 스트링을 포함하며, 상기 비트 스트링의 길이는 상기 페이지 크기에 적어도 부분적으로 기초하는, 방법.
  6. 청구항 3에 있어서,
    상기 페이지 크기에 적어도 부분적으로 기초하여 상기 메모리 어레이의 상기 물리적 행에 액세스하는 단계로서, 상기 행 내의 각각의 메모리 셀을 활성화하는 단계를 포함하는, 단계;
    복수의 액세스 라인의 서브세트를 통해 상기 행의 메모리 셀의 서브세트를 감지하는 단계; 및
    메모리 셀의 서브세트의 각각의 메모리 셀의 논리값을 결정하는 단계를 더 포함하는, 방법.
  7. 청구항 1에 있어서,
    상기 논리 행 어드레스는 상기 물리적 행 및 상기 메모리 페이지에 적어도 부분적으로 기초하는, 방법.
  8. 청구항 1에 있어서,
    상기 논리 행 어드레스는 비트 스트링을 포함하는, 방법.
  9. 장치로서,
    메모리 디바이스와 관련된 메모리 컨트롤러를 포함하며, 상기 메모리 컨트롤러는, 상기 장치로 하여금:
    각각의 메모리 구획이 메모리 셀의 복수의 물리적 행을 가지는 복수의 메모리 구획을 포함하는 메모리 어레이의 메모리 뱅크에서 메모리 셀에 대한 액세스 요청을 수신하게 하고;
    상기 메모리 셀이 위치되는 상기 메모리 뱅크의 복수의 메모리 구획의 메모리 구획을 식별하게 하며;
    상기 메모리 구획에서, 메모리 셀의 복수의 물리적 행 중 상기 메모리 셀을 포함하는 물리적 행을 식별하게 하고;
    상기 물리적 행에서, 상기 메모리 셀을 포함하는 메모리 페이지를 식별하게 하며; 또한,
    상기 메모리 페이지를 열도록 논리 행 어드레스를 생성하게 하도록 구성되는, 장치.
  10. 청구항 9에 있어서,
    상기 메모리 셀은 제2 메모리 구획에 위치되고, 상기 제2 메모리 구획은 제1 메모리 구획에 링크되고; 상기 논리 행 어드레스를 생성하기 위해 상기 메모리 컨트롤러는 상기 장치로 하여금:
    상기 제1 메모리 구획을 식별하는 상기 논리 행 어드레스를 생성하게 하고; 또한,
    상기 논리 행 어드레스를 행 디코더로 전송하게 하도록 구성되며, 상기 제2 메모리 구획의 물리적 행은 상기 제1 메모리 구획을 식별하는 상기 논리 행 어드레스, 및 상기 제1 메모리 구획과 상기 제2 메모리 구획 사이의 링크에 적어도 부분적으로 기초하여 상기 행 디코더에 의해 액세스 가능한, 장치.
  11. 청구항 9에 있어서,
    상기 메모리 컨트롤러는 상기 장치로 하여금:
    메모리 어레이가 액세스 가능한 복수의 페이지 크기로부터 상기 메모리 페이지의 페이지 크기를 식별하게 하도록 더 구성되며, 상기 페이지 크기는 베이스 페이지 크기의 정수배이고, 상기 베이스 페이지 크기는 상기 메모리 어레이의 행 내의 메모리 셀의 서브세트와 관련되며, 상기 메모리 셀의 서브세트는 상기 메모리 어레이와 관련된 복수의 감지 구성 요소에 대응하는 개수의 메모리 셀을 포함하는, 장치.
  12. 청구항 11에 있어서,
    상기 논리 행 어드레스를 생성하는 것은, 상기 페이지 크기에 따라 상기 논리 행 어드레스를 생성하는 것을 포함하는, 장치.
  13. 청구항 12에 있어서,
    상기 논리 행 어드레스는 비트 스트링을 포함하며, 상기 비트 스트링의 길이는 상기 페이지 크기에 적어도 부분적으로 기초하는, 장치.
  14. 청구항 11에 있어서,
    상기 메모리 컨트롤러는 상기 장치로 하여금:
    상기 페이지 크기에 적어도 부분적으로 기초하여 상기 메모리 어레이의 상기 물리적 행에 액세스하게 하고 - 상기 액세스는 상기 행 내의 각각의 메모리 셀을 활성화하는 것을 포함함 - ;
    복수의 액세스 라인의 서브세트를 통해 상기 행의 메모리 셀의 서브세트를 감지하게 하며; 또한,
    메모리 셀의 서브세트의 각각의 메모리 셀의 논리값을 결정하게 하도록 더 구성되는, 장치.
  15. 청구항 9에 있어서,
    상기 논리 행 어드레스는 상기 물리적 행 및 상기 메모리 페이지에 적어도 부분적으로 기초하는, 장치.
  16. 청구항 15에 있어서,
    상기 논리 행 어드레스는 비트 스트링을 포함하는, 장치.
  17. 코드를 저장하는 비일시적 컴퓨터 판독 가능 매체로서, 상기 코드는 프로세서에 의해 실행가능한:
    각각의 메모리 구획이 메모리 셀의 복수의 물리적 행을 가지는 복수의 메모리 구획을 포함하는 메모리 어레이의 메모리 뱅크에서 메모리 셀에 대한 액세스 요청을 수신하라는 명령;
    상기 메모리 셀이 위치되는 상기 메모리 뱅크의 복수의 메모리 구획의 메모리 구획을 식별하라는 명령;
    상기 메모리 구획에서, 메모리 셀의 복수의 물리적 행 중 상기 메모리 셀을 포함하는 물리적 행을 식별하라는 명령;
    상기 물리적 행에서, 상기 메모리 셀을 포함하는 메모리 페이지를 식별하라는 명령; 및,
    상기 메모리 페이지를 열도록 논리 행 어드레스를 생성하라는 명령
    을 포함하는, 비일시적 컴퓨터 판독 가능 매체.
  18. 청구항 17에 있어서,
    상기 메모리 셀은 제2 메모리 구획에 위치되고, 상기 제2 메모리 구획은 제1 메모리 구획에 링크되고; 상기 논리 행 어드레스를 생성하라는 명령은 상기 프로세서에 의해:
    상기 제1 메모리 구획을 식별하는 상기 논리 행 어드레스를 생성하고; 또한,
    상기 논리 행 어드레스를 행 디코더로 전송하도록 실행 가능하며, 상기 제2 메모리 구획의 물리적 행은 상기 제1 메모리 구획을 식별하는 상기 논리 행 어드레스, 및 상기 제1 메모리 구획과 상기 제2 메모리 구획 사이의 링크에 적어도 부분적으로 기초하여 상기 행 디코더에 의해 액세스 가능한, 비일시적 컴퓨터 판독 가능 매체.
  19. 청구항 17에 있어서,
    상기 프로세서에 의해:
    메모리 어레이가 액세스 가능한 복수의 페이지 크기로부터 상기 메모리 페이지의 페이지 크기를 식별하라는 명령이 더 실행 가능하며, 상기 페이지 크기는 베이스 페이지 크기의 정수배이고, 상기 베이스 페이지 크기는 상기 메모리 어레이의 행 내의 메모리 셀의 서브세트와 관련되며, 상기 메모리 셀의 서브세트는 상기 메모리 어레이와 관련된 복수의 감지 구성 요소에 대응하는 개수의 메모리 셀을 포함하는, 비일시적 컴퓨터 판독 가능 매체.
  20. 청구항 19에 있어서,
    상기 논리 행 어드레스를 생성하는 것은, 상기 페이지 크기에 따라 상기 논리 행 어드레스를 생성하는 것을 포함하는, 비일시적 컴퓨터 판독 가능 매체.
KR1020227038632A 2016-07-29 2017-07-19 가변 페이지 크기 아키텍처 KR102656534B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US15/223,753 US10566040B2 (en) 2016-07-29 2016-07-29 Variable page size architecture
US15/223,753 2016-07-29
KR1020217041702A KR102467697B1 (ko) 2016-07-29 2017-07-19 가변 페이지 크기 아키텍처
PCT/US2017/042895 WO2018022382A2 (en) 2016-07-29 2017-07-19 Variable page size architecture

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020217041702A Division KR102467697B1 (ko) 2016-07-29 2017-07-19 가변 페이지 크기 아키텍처

Publications (2)

Publication Number Publication Date
KR20220153115A true KR20220153115A (ko) 2022-11-17
KR102656534B1 KR102656534B1 (ko) 2024-04-12

Family

ID=

Also Published As

Publication number Publication date
KR102344951B1 (ko) 2021-12-29
CN109564544A (zh) 2019-04-02
WO2018022382A2 (en) 2018-02-01
TWI788674B (zh) 2023-01-01
KR20210157918A (ko) 2021-12-29
TW201816587A (zh) 2018-05-01
CN109564544B (zh) 2024-02-23
US11244713B2 (en) 2022-02-08
JP2021108179A (ja) 2021-07-29
KR102467697B1 (ko) 2022-11-16
JP2019526126A (ja) 2019-09-12
TWI697831B (zh) 2020-07-01
US20200160898A1 (en) 2020-05-21
US20180033467A1 (en) 2018-02-01
US11961588B2 (en) 2024-04-16
TW202115554A (zh) 2021-04-16
WO2018022382A3 (en) 2018-03-01
US10566040B2 (en) 2020-02-18
EP3491528A4 (en) 2020-03-25
JP7019668B2 (ja) 2022-02-15
US20220230668A1 (en) 2022-07-21
EP3491528B1 (en) 2022-11-09
EP3491528A2 (en) 2019-06-05
KR20190022922A (ko) 2019-03-06

Similar Documents

Publication Publication Date Title
KR102467697B1 (ko) 가변 페이지 크기 아키텍처
JP6644175B2 (ja) 強誘電体メモリのための電荷ミラーベースのセンシング
KR102323380B1 (ko) 섹션 독립성을 통한 메모리 섹션들내 병행 액세스 기술들
JP6913109B2 (ja) メモリセルプレート間の電荷共有
TWI668688B (zh) 陣列之預寫入記憶體單元
CN110770834B (zh) 双模式铁电存储器单元的操作
US20220188035A1 (en) Memory with virtual page size
JP2020527819A (ja) 動作電力を減少させるためのメモリ・プレート・セグメンテーション
KR102656534B1 (ko) 가변 페이지 크기 아키텍처
CN117931687A (en) Variable page size architecture

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right