KR20220110295A - 적층 메모리 시스템을 위한 진리표 확장 - Google Patents

적층 메모리 시스템을 위한 진리표 확장 Download PDF

Info

Publication number
KR20220110295A
KR20220110295A KR1020227023779A KR20227023779A KR20220110295A KR 20220110295 A KR20220110295 A KR 20220110295A KR 1020227023779 A KR1020227023779 A KR 1020227023779A KR 20227023779 A KR20227023779 A KR 20227023779A KR 20220110295 A KR20220110295 A KR 20220110295A
Authority
KR
South Korea
Prior art keywords
memory
command
bus
die
stack
Prior art date
Application number
KR1020227023779A
Other languages
English (en)
Inventor
조셉 티. 팔로우스키
Original Assignee
마이크론 테크놀로지, 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크론 테크놀로지, 인크. filed Critical 마이크론 테크놀로지, 인크.
Publication of KR20220110295A publication Critical patent/KR20220110295A/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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L25/00Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof
    • H01L25/03Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes
    • H01L25/04Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers
    • H01L25/065Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers the devices being of a type provided for in group H01L27/00
    • H01L25/0652Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers the devices being of a type provided for in group H01L27/00 the devices being arranged next and on each other, i.e. mixed assemblies
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L25/00Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof
    • H01L25/03Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes
    • H01L25/04Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers
    • H01L25/065Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers the devices being of a type provided for in group H01L27/00
    • H01L25/0657Stacked arrangements of devices
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L25/00Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof
    • H01L25/18Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof the devices being of types provided for in two or more different subgroups of the same main group of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7208Multiple device management, e.g. distributing data over multiple flash devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Dram (AREA)

Abstract

적층 메모리 시스템의 진리표를 확장하는 기법이 제공된다. 일 예에서, 저장 시스템은 데이터 및 로직 다이를 저장하도록 구성된 제1 메모리 다이의 스택을 포함할 수 있다. 로직 다이는 제1 명령 버스, 제2 명령 버스, 및 데이터 버스를 사용하여 외부 호스트로부터 다수의 메모리 요청을 수신하도록 구성된 인터페이스 회로, 및 제1 메모리 다이의 스택으로부터 데이터를 저장 및 검색하기 위해 제1 메모리 다이의 스택과 인터페이스하도록 구성된 제어기를 포함할 수 있다. 로직 다이는 제1 메모리 다이의 스택의 디바이스들보다 더 빠른 액세스 시간을 갖는 제2 메모리를 포함할 수 있고, 인터페이스 회로는 다수의 메모리 요청 중 제1 메모리 요청에 응답하여 제2 메모리에 직접 액세스할 수 있다.

Description

적층 메모리 시스템을 위한 진리표 확장
우선권 및 관련 출원
본 출원은 2019년 12월 26일자로 출원된 발명의 명칭이 "TRUTH TABLE EXTENSION FOR STACKED MEMORY SYSTEMS"인 Pawlowski의 미국 가특허 출원 제62/953,819호에 대한 우선권의 이익을 주장하며, 이는 그 전체가 본 출원에 참조로 포함된다.
기술 분야
이하는 전반적으로 메모리 어레이를 동작시키는 것, 보다 구체적으로 적층 메모리를 갖는 디바이스의 대역폭을 증가시키는 것에 관한 것이다.
메모리 디바이스는 컴퓨터, 무선 통신 디바이스, 카메라, 디지털 디스플레이 등과 같은 다양한 전자 디바이스에 정보를 저장하는 데 널리 사용된다. 정보는 메모리 디바이스의 다양한 상태를 프로그램하여 저장된다. 예를 들어, 이진 디바이스는 종종 로직 "1" 또는 로직 "0"으로 표시되는 2개의 상태를 갖는다. 다른 시스템에서, 2개보다 더 많은 상태가 저장될 수 있다. 저장된 정보에 액세스하기 위해, 전자 디바이스의 컴포넌트는 메모리 디바이스에 저장된 상태를 판독하거나 감지할 수 있다. 정보를 저장하기 위해 전자 디바이스의 컴포넌트는 메모리 디바이스에 상태를 기록하거나 프로그램할 수 있다.
자기 하드 디스크, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), DRAM, 동기식 동적 RAM(SDRAM), 강유전성 RAM(FeRAM), 자기 RAM(MRAM), 저항성 RAM(RRAM), 플래시 메모리, 상변화 메모리(PCM) 등을 비롯한 다양한 유형의 메모리 디바이스가 존재한다. 메모리 디바이스는 휘발성 또는 비휘발성일 수 있다.
메모리 디바이스를 개선하는 것은 일반적으로 여러 척도 중에서 메모리 셀 밀도 증가, 판독/기록 속도 증가, 신뢰성 증가, 데이터 보유 증가, 전력 소비 감소 또는 제조 비용 감소를 포함할 수 있다. 메모리 기술의 진보로 이러한 많은 척도에 대한 개선이 실현되었지만, 그러나, 처리 속도가 개선됨에 따라 메모리 대역폭이 전체 시스템 성능 개선에 병목이 될 수 있다.
반드시 축척대로 도시되어 있는 것은 아닌 도면에서, 유사한 숫자는 상이한 도면에서 유사한 컴포넌트를 설명할 수 있다. 다른 문자 접미사를 가진 유사한 숫자는 유사한 컴포넌트의 다른 인스턴스를 나타낼 수 있다. 도면은 본 문서에서 설명된 다양한 실시예를 일반적으로 제한이 아닌 예로서 예시한다.
도 1은 본 개시의 예에 따른 특징 및 동작을 지원하는 메모리 다이의 예를 예시한다.
도 2a 및 도 2b는 일반적으로 본 개시의 예에 따른 특징 및 동작을 지원하는 디바이스의 예를 예시한다.
도 3은 일반적으로 본 주제에 따른 저장 시스템으로부터 정보를 요청하고 수신할 수 있는 호스트 디바이스를 포함하는 예시적인 저장 시스템을 예시한다.
도 4a 및 도 4b는 고대역폭 메모리 디바이스의 메모리 다이 스택 내에서 제2 유형의 랜덤 액세스 메모리에 대한 액세스를 허용하기 위한 기존 고대역폭 메모리 프로토콜의 예시적인 진리표 확장을 일반적으로 예시한다.
도 5a 및 도 5b는 일반적으로 랜덤 액세스 메모리 다이 스택 내에서 제2 유형의 랜덤 액세스 메모리에 대한 액세스를 허용하는 기존 고대역폭 메모리 프로토콜의 예시적인 진리표 확장을 예시한다.
도 6은 제1 메모리의 스택을 포함하는 저장 시스템을 동작시키기 위한 예시적인 방법의 흐름도를 일반적으로 예시한다.
도 7은 본 출원에 개시된 양태에 따른 적층 DRAM을 포함하는 저장 시스템을 지원하는 디바이스를 포함하는 시스템의 도면을 일반적으로 예시한다.
위에서 소개된 개시의 특징은 예시적인 어레이(예를 들어, 도 1)와 관련하여 아래에서 추가로 설명된다. 그 후, 시스템의 다양한 예 또는 양태에 대해 특정 예가 설명된다(예를 들어, 도 2 내지 도 4).
도 1은 본 출원에 개시된 다양한 양태에 따른 메모리 다이(100)의 예를 예시한다. 메모리 다이(100)는 또한 일부 예에서 전자 메모리 장치, 메모리 어레이, 메모리 셀의 어레이, 또는 메모리 셀의 데크로서 지칭될 수 있다. 메모리 다이(100)는 다양한 상태를 저장하도록 프로그램 가능한 메모리 셀(105)을 포함할 수 있다. 메모리 셀(105)은 독립적으로 액세스 가능할 수 있는 메모리 셀의 하나 이상의 뱅크에 배열될 수 있다. 각각의 메모리 셀(105)은 로직 0 및 로직 1로 표시된 2개의 상태를 저장하도록 프로그램 가능할 수 있다. 일부 경우에, 메모리 셀(105)은 2개보다 더 많은 로직 상태를 저장하도록 구성될 수 있다.
일부 예에서, 메모리 셀(105)은 프로그램 가능 상태를 나타내는 전하를 커패시터에 저장할 수 있고; 예를 들어, 충전된 커패시터와 충전되지 않은 커패시터가 각각 2개의 로직 상태를 나타낼 수 있다. DRAM 아키텍처는 이러한 설계를 사용할 수 있으며 사용된 커패시터는 절연체로서 선형 또는 상유전성 전기 분극 특성을 갖는 유전체 재료를 포함할 수 있다. FeRAM 아키텍처도 이러한 설계를 사용할 수 있다. 일부 예에서, 메모리 셀(105)은 교차 결합 인버터 구성에서 프로그램 가능 상태의 표현을 저장할 수 있다. 정적 RAM(SRAM) 아키텍처가 이러한 설계를 사용할 수 있다.
판독 및 기록과 같은 동작은 액세스 라인(110) 및 디지트 라인(115)을 활성화함으로써 메모리 셀(105)에서 수행될 수 있다. 액세스 라인(110)은 또한 워드 라인(110)으로 알려져 있을 수 있고, 비트 라인(115)은 또한 디지트 라인(115)으로 알려져 있을 수 있다. 워드 라인과 비트 라인 또는 그 유사어에 대한 언급은 이해 또는 동작의 손실 없이 상호 교환 가능하다. 워드 라인(110) 또는 디지트 라인(115)을 활성화하는 것은 각각의 라인에 전압을 인가하는 것을 포함할 수 있다.
도 1의 예에 따르면, 메모리 셀(105)의 각각의 행은 단일 워드 라인(110)에 연결될 수 있고, 메모리 셀(105)의 각각의 열은 단일 디지트 라인(115)에 연결될 수 있다. 하나의 워드 라인(110) 및 하나의 디지트 라인(115)을 활성화함으로써(예를 들어, 워드 라인(110) 또는 디지트 라인(115)에 전압을 인가함으로써), 단일 메모리 셀(105)이 그 교차점에서 액세스될 수 있다. 메모리 셀(105)에 액세스하는 것은 메모리 셀(105)을 판독하거나 기록하는 것을 포함할 수 있다. 워드 라인(110)과 디지트 라인(115)의 교차점은 메모리 셀의 어드레스라고 지칭될 수 있다. 추가적으로 또는 대안적으로, 예를 들어, 메모리 셀(105)의 각각의 행은 메모리 셀의 하나 이상의 뱅크에 배열될 수 있다.
일부 아키텍처에서, 셀의 로직 저장 디바이스, 예를 들어 커패시터, 플립플롭은 선택 컴포넌트(도시되지 않음)에 의해 디지트 라인으로부터 전기적으로 격리될 수 있다. 워드 라인(110)은 선택 컴포넌트와 연결되어 그를 제어할 수 있다. 예를 들어, 선택 컴포넌트는 트랜지스터일 수 있고 워드 라인(110)은 트랜지스터의 게이트에 연결될 수 있다. 워드 라인(110)을 활성화하면 메모리 셀(105)의 커패시터와 그에 대응하는 디지트 라인(115) 사이에 전기적 연결 또는 폐회로가 발생할 수 있다. 그 다음, 메모리 셀(105)을 판독하거나 기록하기 위해 디지트 라인이 액세스될 수 있다.
메모리 셀(105)에 대한 액세스는 행 디코더(120) 및 열 디코더(130)를 통해 제어될 수 있다. 예를 들어, 행 디코더(120)는 메모리 제어기(140)로부터 행 어드레스를 수신하고, 수신된 행 어드레스에 기초하여 적절한 워드 라인(110)을 활성화할 수 있다. 유사하게, 열 디코더(130)는 메모리 제어기(140)로부터 열 어드레스를 수신하고 적절한 디지트 라인(115)을 활성화할 수 있다. 행 디코더(120) 및 열 디코더(130)는 메모리 셀의 하나의 특정 뱅크 내에 위치된 메모리 셀에 대한 행 어드레스 및 열 어드레스를 각각 수신할 수 있다. 추가적으로 또는 대안적으로, 메모리 셀의 각각의 뱅크는 별개의 행 디코더(120) 및 열 디코더(130)와 전자 통신할 수 있다. 예를 들어, 메모리 다이(100)는 WL_1 내지 WL_M으로 표시된 다수의 워드 라인(110), 및 DL_1 내지 DL_N으로 표시된 다수의 디지트 라인(115)을 포함할 수 있고, 여기서, M과 N은 어레이 크기에 의존한다. 따라서, 워드 라인(110) 및 디지트 라인(115), 예를 들어, WL_2 및 DL_3을 활성화함으로써, 그 교차점에 있는 메모리 셀(105)이 액세스될 수 있다.
메모리 셀(105)에 액세스할 때, 셀은 메모리 셀(105)의 저장된 상태를 결정하기 위해 감지 컴포넌트(125)에 의해 판독되거나 감지될 수 있다. 예를 들어, 메모리 셀(105)에 액세스한 후, 메모리 셀(105)의 커패시터는 그 대응하는 디지트 라인(115)으로 방전될 수 있다. 커패시터 방전은 일부 경우에 커패시터에 전압을 인가하거나 바이어싱함으로써 발생할 수 있다. 방전은 메모리 셀(105)의 저장된 상태를 결정하기 위해 감지 컴포넌트(125)가 기준 전압(도시되지 않음)과 비교할 수 있는 디지트 라인(115)의 전압의 변화를 야기할 수 있다. 예를 들어, 디지트 라인(115)이 기준 전압보다 더 높은 전압을 갖는 경우, 이때, 감지 컴포넌트(125)는 메모리 셀(105)에 저장된 상태가 로직 1이라고 결정할 수 있고, 그 반대도 마찬가지이다. 감지 컴포넌트(125)는 신호의 차이를 검출 및 증폭하기 위한 다양한 트랜지스터 또는 증폭기를 포함할 수 있으며, 이는 래칭이라고 지칭될 수 있다. 그 다음, 메모리 셀(105)의 검출된 로직 상태는 출력(135)으로서 열 디코더(130)를 통해 출력될 수 있다. 일부 경우에, 감지 컴포넌트(125)는 열 디코더(130) 또는 행 디코더(120)의 일부일 수 있다. 또는, 감지 컴포넌트(125)는 열 디코더(130) 또는 행 디코더(120)에 연결되거나 전자 통신할 수 있다.
메모리 셀(105)은 관련 워드 라인(110) 및 디지트 라인(115)을 유사하게 활성화함으로써 설정 또는 기록될 수 있고- 예를 들어, 로직 값이 메모리 셀(105)에 저장될 수 있다. 열 디코더(130) 또는 행 디코더(120)는 메모리 셀(105)에 기록될 데이터, 예를 들어 입력/출력(135)을 수용할 수 있다. 메모리 셀(105)은 커패시터 양단에 전압을 인가함으로써 기록될 수 있다.
메모리 제어기(140)는 다양한 컴포넌트, 예를 들어, 행 디코더(120), 열 디코더(130) 및 감지 컴포넌트(125)를 통해 메모리 셀(105)의 동작(예를 들어, 판독, 기록, 재기록, 리프레시, 방전 등)을 제어할 수 있다. 메모리 제어기(140)는 메모리 다이(100)의 컴포넌트일 수 있거나 다양한 예에서 메모리 다이(100) 외부에 있을 수 있다. 일부 경우에, 행 디코더(120), 열 디코더(130), 및 감지 컴포넌트(125) 중 하나 이상이 메모리 제어기(140)와 함께 위치할 수 있다. 메모리 제어기(140)는 원하는 워드 라인(110) 및 디지트 라인(115)을 활성화하기 위해 행 및 열 어드레스 신호를 생성할 수 있다. 메모리 제어기(140)는 메모리 다이(100)를 가로지르는 적어도 하나의 채널을 통해 메모리 셀의 특정 뱅크의 원하는 워드 라인(110) 및 디지트 라인(115)을 활성화할 수 있다. 메모리 제어기(140)는 또한 메모리 다이(100)의 동작 동안 사용되는 다양한 전압 또는 전류를 생성 및 제어할 수 있다. 예를 들어, 이는 하나 이상의 메모리 셀(105)에 액세스한 후 워드 라인(110) 또는 디지트 라인(115)에 방전 전압을 인가할 수 있다. 메모리 제어기(140)는 채널(145)을 통해 메모리 셀(105)에 결합될 수 있다. 채널(145)은 행 디코더(120) 및 열 디코더(130)와의 논리적 연결로서 도 1에 예시되어 있지만, 본 기술 분야의 숙련자는 다른 구성이 사용될 수 있음을 인식할 것이다. 본 출원에 설명된 바와 같이, 메모리 제어기(140)는 클록 사이클마다 다수회 셀(105)과 데이터(예를 들어, 판독 또는 기록 동작으로부터)를 교환할 수 있다.
메모리 제어기(140)는 또한 호스트 디바이스(도시되지 않음)와 명령, 데이터, 및 기타 정보를 통신하도록 구성될 수 있다. 메모리 제어기(140)는 메모리 어레이와 호스트 디바이스 사이에서 통신되는 신호를 변조하기 위해 변조 방식을 사용할 수 있다. 어떤 유형의 변조 방식을 선택하느냐에 기초하여 I/O 인터페이스가 구성될 수 있다. 일반적으로, 본 출원에 설명된 인가된 전압 또는 전류의 진폭, 형상, 또는 지속기간은 조절되거나 변경될 수 있고 메모리 다이(100)를 동작시키는 것에 관련하여 설명된 다양한 동작에 대해 상이할 수 있다. 게다가, 메모리 다이(100) 내의 하나, 다수의 또는 모든 메모리 셀(105)은 동시에 또는 함께 액세스될 수 있고; 예를 들어, 메모리 다이(100)의 다수의 또는 모든 셀은 모든 메모리 셀(105) 또는 메모리 셀(105)의 그룹이 단일 로직 상태로 설정되는 리셋 동작 동안 동시에 또는 함께 액세스될 수 있다.
도 2는 본 출원에 개시된 다양한 예에 따른 메모리 디바이스에 대한 채널 라우팅을 지원하는 장치 또는 시스템(290)을 예시한다. 시스템(290)은 호스트 디바이스(205) 및 복수의 스택(210)을 포함할 수 있다. 종래의 시스템에서, 복수의 스택은 DRAM 메모리 다이와 같은 동일한 유형의 적층된 메모리 다이를 포함할 수 있다. 특정 예에서, 스택은 메인 메모리 어레이를 형성하는 DRAM과 같은 용량 기반 메모리 디바이스와 더 빠른 액세스 메모리 아키텍처, 예를 들어, 메모리 어레이의 제2 부분에 대해 셀당 일반적으로 4개에서 6개의 트랜지스터를 포함하는 SRAM과 같은 교차 연결된 인버터 메모리의 혼합을 포함할 수 있다. DRAM 대신, 다른 저장 기술이 사용될 수 있다. 본 발명자는 호스트가 메인 메모리 어레이에 더하여 SRAM 메모리와 같은 더 빠르고 결정적인 제2 유형의 메모리에 직접 액세스할 수 있는 경우 대역폭 개선이 실현될 수 있음을 인식했다. 다른 형태의 메모리가 SRAM의 대안적으로 사용될 수 있다. 일부 예에서, 강유전성 RAM(FeRAM)이 DRAM과 조합하여 이용될 수 있거나; 또는 다른 예에서, 비휘발성 메모리를 제공하기 위해 DRAM과 플래시 메모리를 조합하는 비휘발성 DRAM 디바이스(예컨대, NVDIMM)가 사용될 수 있다. DRAM(또는 기타 메인 메모리 어레이 저장 기술)과 조합하여 액세스 시간이 감소된 메모리 기술로 적어도 속도 측면에서 설명된 시스템의 가장 큰 이점을 경험할 수 있을 것이다.
호스트 디바이스(205)는 프로세서(예를 들어, 중앙 처리 유닛(CPU), 그래픽 처리 유닛(GPU)) 또는 시스템 온 칩(SoC)의 예일 수 있다. 일부 경우에, 호스트 디바이스(205)는 메모리 디바이스와 별도로 제조될 수 있도록 호스트 디바이스(205)는 메모리 디바이스와 별개의 컴포넌트일 수 있다. 호스트 디바이스(205)는 스택(210)의 외부에 있을 수 있다(예를 들어, 랩톱, 서버, 개인용 컴퓨팅 디바이스, 스마트폰, 개인용 컴퓨터). 시스템(290)에서, 메모리 다이(210)의 스택은 호스트 디바이스(205)에 대한 데이터를 저장하도록 구성될 수 있다. 설명된 기술은 아래에 추가로 설명되는 바와 같이 메인 메모리 어레이 또는 SRAM과의 직접 통신을 가능하게 한다.
호스트 디바이스(205)는 신호 경로를 통해 통신되는 신호를 사용하여 메모리 다이(210)의 스택과 정보를 교환할 수 있다. 신호 경로는 메시지 또는 송신이 송신 컴포넌트로부터 수신 컴포넌트로 이동할 수 있는 경로일 수 있다. 일부 경우에, 신호 경로가 적어도 2개의 컴포넌트와 결합된 전도체일 수 있고, 여기서, 전도체는 전자가 적어도 2개의 컴포넌트 사이에서 유동하도록 선택적으로 허용할 수 있다. 신호 경로는 무선 통신(예를 들어, 무선주파수(RF) 또는 광학)의 경우와 같이 무선 매체에 형성될 수 있다. 신호 경로는 메모리 디바이스의 유기 기판과 같은 제1 기판, 및/또는 양자 모두와는 아니더라도 스택(210) 및 호스트 디바이스(205) 중 적어도 하나와 결합될 수 있는 패키지 기판(예를 들어, 제2 유기 기판)과 같은 제2 기판을 적어도 부분적으로 포함할 수 있다. 일부 경우에, 스택(210)은 마스터형 디바이스로 기능할 수 있는 호스트 디바이스(205)에 대해 슬레이브형 디바이스로서 기능할 수 있다.
일부 애플리케이션에서, 시스템(290)은 호스트 디바이스(205)와 메모리 디바이스(210) 사이의 고속 연결로부터 이익을 얻을 수 있다. 이와 같이, 일부 스택(210)은 초당 다수 테라바이트(TB/s)의 대역폭 요구를 갖는 애플리케이션, 프로세스, 호스트 디바이스 또는 프로세서를 지원한다. 수용 가능한 에너지 버짓 내에서, 이러한 대역폭 제약을 충족하는 것은 특정 상황에서 문제를 제기할 수 있다.
스택(210)의 메모리 다이(200)는 다수의 유형의 통신 매체(211)(예를 들어, 유기 기판과 같은 기판 및/또는 실리콘 인터포저와 같은 고밀도 인터포저)와 함께 작동하도록 구성될 수 있다. 호스트 디바이스(205)는 일부 경우에 단자의 설계(예를 들어, 매트릭스 또는 패턴)를 포함하는 인터페이스 또는 볼아웃(ball-out)으로 구성될 수 있다.
일부 경우에, 메모리 다이(200)와 통신 매체(211) 사이에 버퍼 층이 위치할 수 있다. 버퍼 층은 메모리 다이(200)로 및 메모리 다이로부터 신호를 구동(예를 들어, 재구동)하도록 구성될 수 있다. 일부 경우에, 메모리 다이(200)의 스택(210)은 무버퍼일 수 있으며, 이는 버퍼 층이 존재하지 않거나 베이스 층이 다른 컴포넌트 중에서 재구동기를 포함하지 않는다는 것을 의미한다. 무버퍼 메모리의 특정 예에서, 라우팅 층 또는 로직 다이(206)는 메모리 다이(200) 또는 메모리 다이(200)의 스택과 통신 매체(211) 사이에 위치될 수 있다. 특정 예에서, 로직 다이(206)는 메모리 다이(200)의 하부 층을 형성할 수 있다. 특정 예에서, 무버퍼 메모리 스택(210)은 로직 다이 층(206)을 갖는 최하위 메모리 다이(200)를 포함할 수 있다.
도 3은 일반적으로 본 주제에 따른 저장 시스템(310)으로부터 정보를 요청 및 수신할 수 있는 호스트 디바이스(305)를 포함하는 예시적인 저장 시스템(391)을 예시한다. 호스트 디바이스(305)는 CPU, 그래픽 처리 유닛(GPU), 가속 처리 유닛(GPU), 디지털 신호 프로세서(DSP), FPGA(field-programmable gate array), 주문형 집적 회로(ASIC) 및 저장 시스템(310)과 통신하는 더 큰 시스템의 임의의 다른 컴포넌트일 수 있지만 이에 제한되지 않는다. 일부 실시예에서, 디바이스(305)는 동일한 저장 시스템(310)에 액세스하는 다수의 디바이스일 수 있다. 저장 시스템(310)은 동적 랜덤 액세스 메모리(DRAM) 디바이스의 스택과 같은 메모리 스택(320)과 통합된 로직 다이(306)를 포함할 수 있다.
로직 다이(306)는 적층 DRAM 제어(332)와 프리페치 및 캐시 로직(333)에 연결된 호스트 인터페이스(331)를 포함할 수 있다. 적층 DRAM 제어(332)는 메모리 스택(320)에 연결되고 그와 인터페이스한다. 프리페치 및 캐시 로직(333)은 프리페처, 프리페치 버퍼 및 캐시 어레이(334)와 연결될 수 있다. 프리페처는 하드웨어 프리페처일 수 있다. 프리페치 버퍼 및 캐시 어레이(334)는 SRAM 어레이, 임의의 다른 메모리 어레이 기술, 또는 레지스터일 수 있지만, 이에 제한되지 않는다.
호스트 인터페이스(331)는 명령 디코더(335) 및 인터페이스 레지스터(336)를 포함할 수 있다. 호스트 인터페이스(331), 더 구체적으로, 명령 디코더(335)는 디바이스(305)로부터 메모리 스택(320)에 대한 모든 유입 메모리 요청을 수신할 수 있다. 요청은 프리페치 및 캐시 로직(333)(예를 들어, 넥스트-라인, 스트라이드 등)으로 발신될 수 있다. 프리페치 및 캐시 로직(333)은 유입 메모리 요청을 모니터링할 수 있다. 프리페치된 데이터는 프리페치 버퍼 및 캐시 어레이(334)에 배치될 수 있다. 프리페치 및 캐시 로직(333)은 또한 프리페치 버퍼 및 캐시 어레이(334)의 데이터에 대해 임의의 유입 메모리 요청을 확인할 수 있다. 임의의 히트(hit)는 적층 DRAM 제어(332)로 진행하지 않고 프리페치 버퍼 및 캐시 어레이(334)로부터 직접 서빙될 수 있다. 이는 이러한 요청에 대한 서비스 레이턴시를 감소시킬 뿐만 아니라 적층 DRAM 제어(332)에서 임의의 나머지 요청(즉, 프리페치 버퍼 및 캐시 어레이(334)에서 히트되지 않은 요청)의 경합을 감소시킬 수 있다.
프리페처는 임의의 프리페칭 알고리즘/방법 또는 알고리즘/방법의 조합을 포함할 수 있다. 대부분의 메모리 기술(예를 들어, DRAM)의 행 버퍼 기반 조직화로 인해 공간 지역성을 활용하는 프리페치 알고리즘(예를 들어, 넥스트-라인, 소규모 스트라이드 등)은 프리페치 요청이 (아마도) 메모리의 행 버퍼에서 히트할 것이기 때문에 오버헤드가 상대적으로 낮다. 구현은 전체 행 버퍼, 행 버퍼의 절반 또는 다른 입도를 프리페칭하는 것과 같이 큰 데이터 블록(즉, 2개 이상의 64B 캐시 라인 가치의 데이터)에 대한 프리페치 요청을 발행할 수 있다.
프리페치 버퍼 및 캐시 어레이(334)는 직접 맵핑, 세트 연관 내지 완전 연관 캐시형 구조로 구현될 수 있다. 실시예에서, 프리페치 버퍼 및 캐시 어레이(334)는 판독 요청만을 서비스하기 위해 사용될 수 있다(즉, 기록이 프리페치 버퍼 엔트리의 무효화를 야기하거나 동시 기록 정책(write-through policy)이 사용되어야 함). 다른 실시예에서, 프리페치 버퍼 및 캐시 어레이(334)는 LRU(Least Recently Used), LFU(Least Frequency Used) 또는 FIFO(First In First Out)와 같은 대체 정책을 사용할 수 있다. (앞서 설명된 바와 같이) 프리페치 유닛이 캐시 라인보다 더 큰 데이터 크기에 대한 요청을 생성하는 경우, 프리페치 버퍼 및 캐시 어레이(334)는 또한 대응하는 더 넓은 데이터 블록 크기로 구성될 필요가 있을 수 있다. 일부 실시예에서, 서브-블록킹(sub-blocking) 사용될 수 있다.
본 출원에서 하나의 로직 칩과 하나 이상의 메모리 칩으로 조직화된 메모리 구성에 사용되는 것으로 설명되지만 다른 물리적 시현이 존재한다. 하나 이상의 메모리 칩을 갖는 로직 다이의 수직 스택으로 설명되었지만, 다른 실시예는 인터포저 상의 별개의 칩에 로직의 일부 또는 전부를 수평으로 배치하거나 다중 칩 모듈(MCM)에 함께 패키징될 수 있다. 2개 이상의 로직 칩이 전체 스택 또는 시스템에 포함될 수 있다.
특정 예에서, 호스트 인터페이스(331)는 버퍼 및 캐시 어레이(334)의 일부에 직접 액세스하거나 SRAM 유형 메모리(337)의 개별 인스턴스에 직접 액세스할 수 있다. 이러한 예에서, 명령 디코더(335)는 DRAM 메모리 스택(320)에 액세스하고 서비스하는 것 이상으로 확장되는 명령을 포함하는 명령 진리표에 응답한다. 더 구체적으로, 명령 디코더(335)는 로직 다이(306) 상에 위치하는 SRAM 유형 저장소(337)에 직접 액세스하기 위한 명령에 응답할 수 있다. 본 출원에 사용될 때, SRAM 유형 메모리는 저장 시스템의 DRAM 메모리보다 더 적은 레이턴시를 갖는 메모리를 포함한다. 이러한 메모리에서 정보는 적층 메모리(320)에 저장된 정보보다 더 적은 레이턴시로 액세스될 수 있다. 특정 예에서, 예를 들어 로직 다이(306)에서 SRAM(337)의 인스턴스에 직접 액세스하면, 프리페치 및 캐시 로직(333)을 통해 프리페치 버퍼 또는 캐시 어레이(334)에서 이용 가능한 정보보다 더 적은 레이턴시로 정보가 액세스될 수 있다.
도 4a 및 도 4b는 일반적으로 랜덤 액세스 메모리 다이 스택 내에서 제2 유형의 랜덤 액세스 메모리에 대한 액세스를 허용하는 기존 고대역폭 메모리 프로토콜의 예시적인 진리표 확장을 예시한다. 이러한 스택은 고대역폭 메모리 패키지에 사용될 수 있다. 특정 예에서, DRAM과 더 빠른 SRAM의 혼합을 포함하는 메모리 스택과 함께 동작하도록 구성된 시스템은 메모리 다이의 균질한 스택을 포함하는 종래의 메모리 스택 시스템과도 작동할 수 있다. 본 발명자는 기존 인터페이스 프로토콜의 미사용 상태가 전체 저장 시스템 대역폭을 개선하기 위해 메모리 제어기가 더 빠른 메모리를 구체적으로 명령하고 제어할 수 있게 하는 데 활용될 수 있음을 인식했다. 특정 예에서, 각각의 채널은 메모리 스택의 메모리 영역에 대한 독립적인 액세스를 제공할 수 있다. 특정 예에서, 각각의 채널은 다른 채널과 독립적으로 작동할 수 있다. 각각의 채널은 독립적인 명령 및 데이터 인터페이스를 포함할 수 있다. 특정 예에서, 각각의 명령 및 데이터 인터페이스는 특히 데이터(DQ[ND:0), 열 명령/어드레스(C[NC:0]) 및 행 명령/어드레스(R[NR:0])를 포함하는 숫자 신호 또는 종단을 포함할 수 있고, 여기서, ND, NC 및 NR은 신호 또는 종단의 각각의 그룹 또는 버스의 최대 신호 어드레스일 수 있다. 특정 예에서, 메모리 다이 스택의 특정 동작은 클록 신호를 수신하는 동안 행 명령/어드레스 및 열 명령/어드레스의 각각의 신호를 적절하게 설정함으로써 개시될 수 있다. DRAM 스택의 종래의 동작은 행 명령/어드레스 신호의 제1의 몇 개 신호(R[3:0]) 및 열 명령/어드레스 신호의 제1의 몇 개 신호(C[3:0])를 사용하여 DRAM 디바이스 스택의 다양한 동작을 개시한다. 특정 예에서, 채널은 메모리 제어기의 인터페이스를 스택 내의 메모리 다이 중 하나 이상의 디바이스 인터페이스 및 디바이스 제어 회로부와 결합한다.
특정 예에서, 메모리 다이 스택이 하나 이상의 SRAM 어레이를 포함하는 경우, 메모리 제어기는 JEDEC 표준 번호 235B에 제공된 행 및 열 진리표와 같은 종래의 행 및 열 명령 진리표의 확장을 사용하여 SRAM 어레이에 액세스할 수 있다. 도 4a는 일반적으로 예시적인 행 명령 진리표 확장을 예시한다. 도 4b는 일반적으로 열 진리표 확장을 예시한다. 특정 예에서, 종래의 방법과 달리, 행 및 열 명령/어드레스 신호는 메모리 다이 스택 내의 하나 이상의 SRAM 어레이에 액세스하기 위한 개별 동작을 개시하기 위해 협력하여 작동할 수 있다.
예를 들어, 행 명령/어드레스에서 상승 클록 신호 및 추가 신호를 수신하고, 여기서, R0-R2가 각각 로직 "하이"(H), "로우"(L), H인 경우, SRAM 디바이스의 메모리 디바이스 제어기는 메모리 제어기가 SRAM 디바이스에 대한 액세스를 요청하고 있음을 인식할 수 있다. 나머지 행 명령/어드레스 신호 및 열 명령/어드레스 신호는 SRAM 액세스 요청을 확인하기 위한 추가 정보를 제공할 수 있고, 어드레스 정보 및 요청이 판독 요청인지 기록 요청인지 여부 및 요청이 데이터에 대한 버퍼를 사용할 것인지 여부 같은 특정 명령 정보를 제공할 수 있다. 도 4a를 참조하면 클록 신호의 상승 에지에서 신호 또는 종단 R3-R5와 클록 신호의 하강 에지에서 R0, R4 및 R5가 요청된 SRAM 액세스의 SRAM 어드레스(A10-A15)의 일부를 제공할 수 있다. 클록(CLK)의 하강 에지에서 R6의 "D"는 "관련 없음(Do Not Care)"를 나타내며 로직 레벨이 예시된 예와 관련이 없음을 나타낸다. 도 3b를 참조하면 클록의 상승 에지에서 C3-C7, 클록 신호의 하강 에지에서 C1 및 C3-C6을 포함하는 동일한 채널의 열 명령/어드레스 인터페이스의 신호가 요청된 SRAM 액세스에 대한 SRAM 어드레스의 나머지(A0-A9)를 제공할 수 있다. 클록 신호의 상승 에지에서 C0과 C1은 C0이 "로우"로 설정되고 C1이 "하이"로 설정될 때 메모리 제어기에 제공된 명령 어드레스 정보가 SRAM 액세스 요청임을 확인할 수 있다. 또한, 상승 에지에서 C2의 상태는 액세스가 "판독" 액세스인지 또는 "기록" 액세스인지를 나타낼 수 있다. SID0 및 SID1은 SRAM 액세스 명령에 대한 디바이스의 스택 식별을 나타낼 수 있다.
기존 적층 DRAM 디바이스는 다수의 모드에서 동작할 수 있다. 적층 DRAM 기술이 발전함에 따라 일부 모드가 추가되었다. 특정 예에서, 이러한 동작 모드 중 하나는 일반적으로 의사 채널 모드로 지칭된다. 의사 채널 모드는 채널을 2개의 개별 하위 채널 또는 의사 채널로 나눌 수 있다. 두 의사 채널 모두 반독립적으로 동작할 수 있다. 의사 채널은 채널의 행 명령/어드레스 버스와 열 명령/어드레스 버스를 공유할 수 있지만, 그러나, 각각의 의사 채널은 명령을 개별적으로 실행하고 디코딩할 수 있다. 명령/어드레스 신호 BA4는 SRAM 액세스 명령을 2개의 의사 채널 중 하나로 유도하는 데 사용할 수 있다. 특정 예에서, 명령 정보는 행 명령/어드레스 인터페이스 또는 열 명령 어드레스 인터페이스에 대한 명령 정보가 메모리 제어기에 의해 수신되기 전에 손상되지 않았음을 보장하는 데 사용될 수 있는 패러티 비트(PAR)를 포함할 수 있다.
특정 예에서, SRAM 및 DRAM 액세스 명령은 호스트를 호스트 인터페이스와 연결하는 외부 버스로부터 격리될 수 있다. 이러한 예에서, 메모리 액세스 명령은 외부 버스에 판독 데이터를 제공하거나 외부 버스에서 기록 데이터를 수신하지 않고 대신 프리페치 버퍼 또는 유사한 레지스터와 같은 내부 버퍼를 사용하여 SRAM 또는 적층 DRAM에서 판독한 데이터를 캡처하거나 SRAM 기록 또는 적층 DRAM 기록 명령을 위한 데이터를 제공한다. 이러한 예에서, 클록 신호의 하강 에지에서 열 명령 어드레스 신호 C8은 내부 버퍼 또는 외부 버스가 메모리 액세스 명령의 데이터 타겟으로 사용될지 여부를 나타내기 위해 이진 상태를 제공할 수 있다. 특정 예에서, C8 비트와 같은 열 명령/어드레스 비트는 직접 SRAM 또는 적층 DRAM 액세스 명령에 사용하기 위해 클록 신호(CLK)의 하강 에지에서 메모리 제어기 또는 호스트 인터페이스의 명령 디코더에 데이터 위치를 나타내는 데 사용될 수 있다. 제1 상태에서, C8 비트는 메모리 제어기가 메모리 액세스 명령에 대한 데이터 위치로서 외부 데이터 버스를 사용할 수 있음을 나타낼 수 있다. 제2 상태에서, C8 비트는 메모리 제어기가 메모리 액세스 명령에 대한 데이터 위치로서 내부 버퍼를 사용할 수 있음을 나타낼 수 있다.
도 5a 및 도 5b는 일반적으로 랜덤 액세스 메모리 다이 스택 내에서 제2 유형의 랜덤 액세스 메모리에 대한 액세스를 허용하는 기존 고대역폭 메모리 프로토콜의 예시적인 진리표 확장을 예시한다. 이러한 스택은 고대역폭 메모리 패키지에 사용될 수 있다. 도 5a 및 도 5b의 예는 도 4a 및 도 4b의 예에 의해 어드레스될 수 있는 것보다 더 큰 용량의 SRAM을 허용한다.
예를 들어, 행 명령/어드레스에서 상승 클록 신호 및 추가 신호를 수신하고, 여기서, R0-R2가 각각 로직 "하이"(H), "로우"(L), H인 경우, SRAM 디바이스의 메모리 디바이스 제어기는 메모리 제어기가 SRAM 디바이스에 대한 액세스를 요청하고 있음을 인식할 수 있다. 나머지 행 명령/어드레스 신호 및 열 명령/어드레스 신호는 SRAM 액세스 요청을 확인하기 위한 추가 정보를 제공할 수 있고, 어드레스 정보 및 요청이 판독 요청인지 기록 요청인지 여부 및 요청이 데이터에 대한 버퍼를 사용할 것인지 여부 같은 특정 명령 정보를 제공할 수 있다. 도 5a를 참조하면 클록 신호의 상승 에지에서 신호 또는 종단 R3-R5와 클록 신호의 하강 에지에서 R0, R4 및 R5가 요청된 SRAM 액세스의 SRAM 어드레스(A12-A20)의 일부를 제공할 수 있다. 도 3b를 참조하면 클록의 상승 에지에서 C3-C7, 클록 신호의 하강 에지에서 C1 및 C3-C6을 포함하는 동일한 채널의 열 명령/어드레스 인터페이스의 신호가 요청된 SRAM 액세스에 대한 SRAM 어드레스의 나머지(A0-A11)를 제공할 수 있다. 클록 신호의 상승 에지에서 C0과 C1은 C0이 "로우"로 설정되고 C1이 "하이"로 설정될 때 메모리 제어기에 제공된 명령 어드레스 정보가 SRAM 액세스 요청임을 확인할 수 있다. 또한, 상승 에지에서 C2의 상태는 액세스가 "판독" 액세스인지 또는 "기록" 액세스인지를 나타낼 수 있다.
기존 적층 DRAM 다이는 다수의 모드에서 동작할 수 있다. 적층 DRAM 기술이 발전함에 따라 일부 모드가 추가되었다. 특정 예에서, 이러한 동작 모드 중 하나는 일반적으로 의사 채널 모드로 지칭된다. 의사 채널 모드는 채널을 2개의 개별 하위 채널 또는 의사 채널로 나눌 수 있다. 두 의사 채널 모두 반독립적으로 동작할 수 있다. 의사 채널은 채널의 행 명령/어드레스 버스와 열 명령/어드레스 버스를 공유할 수 있지만, 그러나, 각각의 의사 채널은 명령을 개별적으로 실행하고 디코딩할 수 있다. 명령/어드레스 신호 BA4는 SRAM 액세스 명령을 2개의 의사 채널 중 하나로 유도하는 데 사용할 수 있다. 특정 예에서, 명령 정보는 행 명령/어드레스 인터페이스 또는 열 명령 어드레스 인터페이스에 대한 명령 정보가 메모리 제어기에 의해 수신되기 전에 손상되지 않았음을 보장하는 데 사용될 수 있는 패러티 비트(PAR)를 포함할 수 있다.
특정 예에서, SRAM 및 DRAM 액세스 명령은 호스트를 호스트 인터페이스와 연결하는 외부 버스로부터 격리될 수 있다. 이러한 예에서, 메모리 액세스 명령은 외부 버스에 판독 데이터를 제공하거나 외부 버스에서 기록 데이터를 수신하지 않고 대신 프리페치 버퍼 또는 유사한 레지스터와 같은 내부 버퍼를 사용하여 SRAM 또는 적층 DRAM에서 판독한 데이터를 캡처하거나 SRAM 기록 또는 적층 DRAM 기록 명령을 위한 데이터를 제공한다. 이러한 예에서, 클록 신호의 하강 에지에서 열 명령 어드레스 신호 C8은 내부 버퍼 또는 외부 버스가 메모리 액세스 명령의 데이터 타겟으로 사용될지 여부를 나타내기 위해 이진 상태를 제공할 수 있다. 특정 예에서, C8 비트와 같은 열 명령/어드레스 비트는 직접 SRAM 또는 적층 DRAM 액세스 명령에 사용하기 위해 클록 신호(CLK)의 하강 에지에서 메모리 제어기 또는 호스트 인터페이스의 명령 디코더에 데이터 위치를 나타내는 데 사용될 수 있다. 제1 상태에서, C8 비트는 메모리 제어기가 메모리 액세스 명령에 대한 데이터 위치로서 외부 데이터 버스를 사용할 수 있음을 나타낼 수 있다. 제2 상태에서, C8 비트는 메모리 제어기가 메모리 액세스 명령에 대한 데이터 위치로서 내부 버퍼를 사용할 수 있음을 나타낼 수 있다.
도 6은 제1 메모리의 스택을 포함하는 저장 시스템을 동작시키기 위한 예시적인 방법(600)의 흐름도를 일반적으로 예시한다. 특정 예에서, 저장 시스템은 로직 다이, 메모리 제어기, 제1 인터페이스 및 제2 인터페이스를 포함할 수 있다. 로직 다이는 제1 인터페이스를 통해 호스트로부터 수신된 요청을 수신하고 디코딩할 수 있다. 로직 다이는 제1 메모리 스택의 메모리 제어기, 캐시, 로직 다이의 제2 메모리, 또는 그 조합을 통해 저장 시스템의 데이터 액세스를 개시할 수 있다. 일부 예에서, 제1 메모리는 제2 인터페이스를 통해 메모리 제어기에 결합된 DRAM 다이를 포함할 수 있다. 일부 예에서, 제2 메모리는 SRAM 메모리일 수 있다. 로직 다이는 메모리 제어기를 포함하거나 포함하지 않을 수 있다. 특정 예에서, 메모리 제어기는 메모리 다이 스택의 메모리 다이 각각에 별개의 제어기로서 상주할 수 있다. 601에서, 제1 메모리 동작을 식별하기 위해 제1 인터페이스의 제1 명령/어드레스 버스만을 사용하여 제1 메모리의 제1 메모리 동작이 개시되고 실행될 수 있다. 특정 예에서, 제1 명령 어드레스 버스는 예를 들어 고대역폭 메모리 디바이스와 연관된 행 명령 어드레스 버스일 수 있다. 일부 예에서, 제1 메모리 동작은 판독 동작 또는 기록 동작을 포함하지 않는다. 일부 예에서, 제1 메모리 동작은 프리차지 동작, 리프레시 동작, 파워 다운 동작 또는 그 조합을 포함한다.
603에서, 제1 메모리의 제2 메모리 동작은 제2 메모리 액세스 동작을 식별하기 위해 제1 인터페이스의 제2 명령/어드레스 버스만을 사용하여 개시되고 실행될 수 있다. 특정 예에서, 제2 명령 어드레스 버스는 예를 들어 고대역폭 메모리 디바이스와 연관된 열 명령/어드레스 버스일 수 있다. 일부 예에서, 제2 메모리 동작은 판독 동작 또는 기록 동작을 포함한다. 605에서, 로직 다이의 SRAM 어레이와 같은 제2 메모리의 제3 메모리 액세스 동작은 제3 메모리 동작을 식별하기 위해 제1 명령/어드레스 버스와 제2 명령 어드레스 버스 둘 모두를 사용하여 개시되거나 실행될 수 있다. 특정 예에서, 제1 메모리는 DRAM과 같은 용량 기반 랜덤 액세스 메모리 디바이스일 수 있고 제2 메모리는 SRAM일 수 있다. 적층 DRAM 저장 시스템에서 더 빠른 SRAM 유형 메모리에 직접 액세스하면 종래의 적층 DRAM 메모리 또는 저장 시스템에 비교하여 저장 시스템의 대역폭을 개선할 수 있는 기회를 제공할 수 있다.
특정 예에서, 예를 들어 DRAM 메모리 디바이스의 스택을 포함하는 저장 시스템 내의 SRAM 디바이스에 직접 액세스하기 위한 새로운 명령을 제공하는 것에 더하여, 그리고 적층 DRAM 고대역폭 저장 시스템을 구현하기 위한 표준을 위반하지 않고, 본 주제는 또한 호스트 인터페이스 버스를 통해 정보를 전달하는 것을 필요로 하는 대신 로직 다이의 버퍼와 확장된 명령 진리표를 사용하여 DRAM 메모리와 SRAM 메모리 사이의 내부 데이터 이동을 허용할 수 있다. 이러한 내부 전달 명령은 제2 명령/어드레스 버스의 클록의 제2 전이시에 제2 명령/어드레스 버스의 비트를 특정 상태로 설정함으로써 구현될 수 있다. 일부 예에서, 메모리와 버퍼 사이의 이동을 허용하기 위한 비트는 고대역폭 메모리 디바이스와 연관된 열 명령/어드레스 버스의 C8 비트일 수 있다.
특정 예에서, 본 출원에 개시된 랜덤 액세스 메모리(RAM)의 스택에 대한 명령 진리표의 수정은 적층 DRAM 저장 시스템의 SRAM 메모리와 같은 스택의 로직 다이 내의 상이한 유형의 RAM에 대한 직접 액세스를 허용할 수 있고, SRAM을 직접 액세스하고 그 이점을 이용하기 위한 특정 명령을 제공할 수 있다. 이러한 명령은 메모리 제어기가 외부 데이터 버스를 사용하여 SRAM에 판독 또는 기록하고, 저장 시스템 내부의 버퍼를 사용하여 SRAM에 판독 및 기록하고, 외부 버스를 사용하여 DRAM에 판독 및 기록하고, 버퍼를 사용하여 DRAM에 판독 및 기록하는 능력을 가능하게 할 수 있다. 특정 예에서, 버퍼를 데이터 위치로서 사용하는 명령은 명령/동작에서 어드레스된 메모리와 연관된 채널의 데이터 버스(예를 들어, 외부 데이터 버스)에 영향을 미치지 않으며 데이터 버스가 다른 동작을 위해 사용될 수 있게 한다.
특정 예에서, 본 주제에 따른 저장 시스템은 대역폭 증가의 스트레스를 예를 들어, 종래의 고대역폭 디바이스의 성능이 제한된 종래 메모리에 이전하지 않고 고대역폭 메모리에 대한 대역폭의 증가를 제공할 수 있다. 일부 예에서, 기존 고대역폭 메모리 패키지의 핀아웃의 수정 없이 대역폭 증가가 달성될 수 있다.
도 7은 본 출원에 개시된 양태에 따른 적층 DRAM을 포함하는 저장 시스템을 지원하는 디바이스(705)를 포함하는 시스템(700)의 도면을 일반적으로 예시한다. 디바이스(705)는 메모리 제어기(715), 메모리 셀(720), 기본 입력/출력 시스템(BIOS) 컴포넌트(725), 프로세서(730), I/O 제어기(735), 주변 컴포넌트(740), 메모리 칩(755), 시스템 메모리 제어기(760), 인코더(765), 디코더(770) 및 멀티플렉서(775)를 포함하는 통신을 송신 및 수신하기 위한 컴포넌트를 포함하는 양방향 음성 및 데이터 통신을 위한 컴포넌트를 포함할 수 있다. 이러한 컴포넌트는 하나 이상의 버스(예를 들어, 버스(710))를 통해 전자 통신할 수 있다. 예를 들어, 버스(710)는 16개의 데이터 라인("DQ"라인)의 버스 폭을 가질 수 있다. 버스(710)는 메모리 셀의 32개 뱅크와 전자 통신할 수 있다.
메모리 제어기(715 또는 760)는 본 출원에 설명된 바와 같이 하나 이상의 메모리 셀을 동작시킬 수 있다. 구체적으로, 메모리 제어기는 유연한 다채널 메모리를 지원하도록 구성될 수 있다. 일부 경우에, 메모리 제어기(715 또는 760)는 도 1을 참조하여 설명된 바와 같이 행 디코더, 열 디코더, 또는 양자 모두를 동작할 수 있다. 메모리 제어기(715 또는 760)는 호스트와 전자 통신할 수 있고 메모리 제어기(715 또는 760)의 클록 신호의 상승 에지 및 하강 에지 각각 동안 데이터를 전달하도록 구성될 수 있다.
메모리 셀(720)은 본 출원에 설명된 바와 같이 (즉, 논리적 상태의 형태로) 정보를 저장할 수 있다. 메모리 셀(720)은 예를 들어 도 1을 참조하여 설명된 메모리 셀(105)을 나타낼 수 있다. 메모리 셀(720)은 메모리 제어기(715 또는 760)와 전자 통신할 수 있으며, 메모리 셀(720) 및 메모리 제어기(715 또는 760)는 칩(755)에 위치될 수 있고, 이는 본 출원에 설명된 바와 같이 하나 또는 여러 개의 평면 메모리 디바이스일 수 있다. 칩(755)은 예를 들어 시스템 메모리 제어기(715 또는 760)에 의해 관리될 수 있다.
메모리 셀(720)은 기판에 결합된 복수의 구역을 갖는 메모리 셀의 제1 어레이를 나타낼 수 있다. 복수의 구역의 각각의 구역은 복수의 메모리 셀 뱅크 및 메모리 셀의 제1 어레이를 가로지르는 복수의 채널을 포함할 수 있다. 복수의 채널 중 적어도 하나는 적어도 하나의 구역에 결합될 수 있다. 메모리 제어기(715 또는 760)는 결합 구역과 메모리 제어기(715 또는 760) 사이에서 데이터를 전달하도록 구성될 수 있다.
BIOS 컴포넌트(725)는 다양한 하드웨어 컴포넌트를 초기화하고 실행할 수 있는 펌웨어로서 동작하는 BIOS를 포함하는 소프트웨어 컴포넌트일 수 있다. BIOS 컴포넌트(725)는 또한 프로세서와 다양한 다른 컴포넌트, 예를 들어 주변 컴포넌트, 입력/출력 제어 컴포넌트 등 사이의 데이터 흐름을 관리할 수 있다. BIOS 컴포넌트(725)는 판독 전용 메모리(ROM), 플래시 메모리, 또는 임의의 다른 비휘발성 메모리에 저장된 프로그램 또는 소프트웨어를 포함할 수 있다.
프로세서(730)는 지능형 하드웨어 디바이스(예를 들어, 범용 프로세서, DSP(digital signal processor), CPU(central processing unit), 마이크로컨트롤러, ASIC(application-specific integrated circuit), 필드 프로그램 가능 게이트 어레이(FPGA), 프로그램 가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직 컴포넌트, 이산 하드웨어 컴포넌트, 또는 그 임의의 조합)를 포함할 수 있다. 일부 경우에, 프로세서(730)는 메모리 제어기(715 또는 760)를 사용하여 메모리 어레이를 동작하도록 구성될 수 있다. 다른 경우에, 메모리 제어기(715 또는 760)가 프로세서(730)에 통합될 수 있다. 프로세서(730)는 다양한 기능(예를 들어, 유연한 다채널 메모리를 지원하는 기능 또는 태스크)을 수행하기 위해 메모리에 저장된 컴퓨터 판독 가능 명령어를 실행하도록 구성될 수 있다.
I/O 제어기(735)는 디바이스(705)에 대한 입력 및 출력 신호를 관리할 수 있다. I/O 제어기(735)는 또한 디바이스(705)에 통합되지 않은 주변기기를 관리할 수 있다. 일부 경우에, I/O 제어기(735)는 외부 주변기기에 대한 물리적 연결 또는 포트를 나타낼 수 있다. I/O 제어기(735)는 iOS®, ANDROID®, MS-DOS®, MS-WINDOWS®, OS/2®, UNIX®, LINUX®, 또는 다른 알려진 운영 체제와 같은 운영 체제를 이용할 수 있다. 다른 경우에, I/O 제어기(735)는 모뎀, 키보드, 마우스, 터치스크린, 또는 유사한 디바이스를 나타내거나 이와 상호작용할 수 있다. 일부 경우에, I/O 제어기(735)는 프로세서의 일부로서 구현될 수 있다. 사용자는 I/O 제어기(735)를 통해 또는 I/O 제어기(735)에 의해 제어되는 하드웨어 컴포넌트를 통해 디바이스(705)와 상호작용할 수 있다.
주변 컴포넌트(740)는 임의의 입력 또는 출력 디바이스, 또는 이러한 디바이스에 대한 인터페이스를 포함할 수 있다. 예는 디스크 제어기, 사운드 제어기, 그래픽 제어기, 이더넷 제어기, 모뎀, USB(universal serial bus) 제어기, 직렬 또는 병렬 포트, PCI(peripheral component interconnect) 또는 AGP(accelerated graphics port) 슬롯과 같은 주변기기 카드 슬롯을 포함할 수 있다.
입력(745)은 디바이스(705) 또는 그 컴포넌트에 입력을 제공하는 디바이스(705) 외부의 신호 또는 디바이스를 나타낼 수 있다. 이는 사용자 인터페이스 또는 다른 디바이스와의 또는 그 사이의 인터페이스를 포함할 수 있다. 일부 경우에, 입력(745)은 I/O 제어기(735)에 의해 관리될 수 있고 주변 컴포넌트(740)를 통해 디바이스(705)와 상호작용할 수 있다.
출력(750)은 또한 디바이스(705) 또는 그 컴포넌트 중 임의의 것에서 출력을 수신하도록 구성된 디바이스(705) 외부의 신호 또는 디바이스를 나타낼 수 있다. 출력(750)의 예는 그래픽 디스플레이, 오디오 스피커, 인쇄 디바이스, 다른 프로세서 또는 인쇄 회로 보드 등을 포함할 수 있다. 일부 경우에, 출력(750)은 주변 컴포넌트(들)(740)를 통해 디바이스(705)와 인터페이스하는 주변 요소일 수 있다. 출력(750)은 I/O 제어기(735)에 의해 관리될 수 있다.
시스템 메모리 제어기(715 또는 760)는 메모리 셀(예를 들어, 메모리 셀(720))의 제1 어레이와 전자 통신할 수 있다. 호스트는 메모리 제어기(715 또는 760) 및 대응 메모리 어레이가 그 일부인 디바이스에 대한 동작을 제어하거나 지시하는 컴포넌트 또는 디바이스일 수 있다. 호스트는 컴퓨터, 모바일 디바이스 등의 컴포넌트일 수 있다. 또는 디바이스(705)는 호스트로 지칭될 수 있다. 일부 예에서, 시스템 메모리 제어기(715 또는 760)는 GPU이다.
인코더(765)는 디바이스(705) 또는 그 컴포넌트에 저장될 데이터에 대한 오류 정정 인코딩의 수행을 제공하는 디바이스(705) 외부의 신호 또는 디바이스를 나타낼 수 있다. 인코더(765)는 인코딩된 데이터를 적어도 하나의 채널을 통해 적어도 하나의 선택된 메모리에 기록할 수 있고 또한 오류 정정 코딩을 통해 데이터를 인코딩할 수 있다.
디코더(770)는 명령 신호 및 어드레싱 신호를 디바이스(705) 또는 그 컴포넌트로 시퀀싱하는 디바이스(705) 외부의 신호 또는 디바이스를 나타낼 수 있다. 일부 예에서, 메모리 제어기(715 또는 760)는 디코더(770) 내에 함께 위치될 수 있다.
멀티플렉서(775)는 데이터를 디바이스(705) 또는 그 컴포넌트로의 다중화하는 디바이스(705) 외부의 신호 또는 디바이스를 나타낼 수 있다. 멀티플렉서(775)는 인코더(765)로 송신될 데이터를 다중화하고, 인코더(765)로부터 수신한 데이터를 역다중화할 수 있다. 멀티플렉서(775)는 디코더(770)와 전자 통신할 수 있다. 일부 예에서, 멀티플렉서(775)는 시스템 메모리 제어기(715 또는 760)와 같은 제어기와 전자 통신할 수 있다.
디바이스(705)의 컴포넌트는 그 기능을 수행하도록 설계된 회로부를 포함할 수 있다. 이는 다양한 회로 요소, 예를 들어 전도성 라인, 트랜지스터, 커패시터, 인덕터, 저항기, 증폭기, 또는 본 출원에 설명된 기능을 수행하도록 구성된 기타 활성 또는 비활성 요소를 포함할 수 있다. 디바이스(705)는 컴퓨터, 서버, 랩톱 컴퓨터, 노트북 컴퓨터, 태블릿 컴퓨터, 휴대폰, 웨어러블 전자 디바이스, 개인용 전자 디바이스 등일 수 있다. 또는 디바이스(705)는 이러한 디바이스의 일부 또는 양태일 수 있다. 일부 예에서, 디바이스(705)는 차량(예를 들어, 자율 자동차, 비행기, 우주선 등)과 같은 높은 신뢰성, 미션 크리티컬, 또는 저레이턴시 제약 또는 파라미터를 갖는 컴퓨터의 양태이다. 디바이스(705)는 인공 지능(AI), 증강 현실(AR) 또는 가상 현실(VR) 애플리케이션을 위한 로직이거나 이를 포함할 수 있다.
일 예에서, 메모리 디바이스는 메모리 셀의 복수의 뱅크, 및 메모리 셀의 어레이를 가로지르는 복수의 채널을 각각 포함할 수 있는 복수의 구역을 갖는 메모리 셀의 어레이를 포함할 수 있다. 채널 각각은 메모리 셀의 어레이의 구역과 결합될 수 있고, 호스트 디바이스와 함께 구역 내의 메모리 셀의 복수의 뱅크 사이에서 신호를 통신하도록 구성될 수 있다.
일부 예에서, 메모리 디바이스는 메모리 셀의 어레이에 걸쳐 연장하는 I/O 영역을 더 포함할 수 있고, I/O 영역은 메모리 셀이 없을 수 있는 메모리 셀의 어레이의 영역을 점유한다. 메모리 디바이스의 일부 예에서, I/O 영역은 메모리 셀의 어레이를 전력 노드 또는 접지 노드와 결합하도록 구성된 TSV를 포함할 수 있다.
일부 예에서, 메모리 디바이스는 메모리 셀의 어레이에 분포된 복수의 채널 인터페이스를 더 포함할 수 있다. 메모리 디바이스의 일부 예에서, 복수의 채널 인터페이스는 범프 아웃일 수 있다. 메모리 디바이스의 일부 예에서, 복수의 채널 인터페이스의 채널 인터페이스는 메모리 셀의 어레이의 각각의 사분면에 위치될 수 있다.
일부 예에서, 메모리 디바이스는 구역의 메모리 셀과 구역과 연관된 채널 인터페이스 사이에서 연장하는 복수의 신호 경로를 더 포함할 수 있다. 메모리 디바이스의 일부 예에서, 채널 인터페이스는 신호 경로의 길이를 최소화하기 위해 메모리 셀의 어레이에 위치될 수 있다.
일부 예에서, 메모리 디바이스는 메모리 셀의 어레이의 상부에 적층된 메모리 셀의 제2 어레이를 더 포함할 수 있다. 메모리 디바이스의 일부 예에서, 메모리 셀의 제2 어레이는 메모리 셀의 복수의 뱅크를 각각 포함할 수 있는 구역을 가질 수 있다. 일부 예에서, 메모리 디바이스는 메모리 셀의 제2 어레이를 가로지르는 제2 복수의 채널을 더 포함할 수 있다. 메모리 디바이스의 일부 예에서, 제2 복수의 채널의 채널 각각은 메모리 셀의 제2 어레이의 제2 구역과 결합될 수 있고 호스트 디바이스가 있는 제2 구역의 메모리 셀의 복수의 뱅크 사이에서 신호를 통신하도록 구성될 수 있다.
일부 예에서, 메모리 디바이스는 메모리 셀의 제2 어레이를 제2 복수의 채널과 결합하기 위해 메모리 셀의 어레이를 통해 연장하는 TSV를 더 포함할 수 있다. 메모리 디바이스의 일부 예에서, 채널은 구역과 호스트 디바이스 사이에 점대점 연결을 설정할 수 있다. 메모리 디바이스의 일부 예에서, 각각의 채널은 4개 또는 8개의 데이터 핀을 포함할 수 있다. 메모리 디바이스의 일부 예에서, 메모리 셀의 어레이의 구역은 8개 이상의 메모리 셀 뱅크를 포함할 수 있다.
일부 예에서, 메모리 디바이스는 호스트 디바이스와의 양방향 통신을 위해 구성된 인터페이스를 더 포함할 수 있다. 메모리 디바이스의 일부 예에서, 인터페이스는 NRZ 변조 방식 또는 PAM4 방식 중 적어도 하나, 또는 양자 모두를 사용하여 변조된 신호를 통신하도록 구성될 수 있다.
일 예에서, 메모리 디바이스는 메모리 셀의 복수의 뱅크를 각각 포함하는 구역, 메모리 셀의 어레이에 걸쳐 연장되는 I/O 영역- I/O 영역은 신호를 메모리 셀의 어레이에 대해 라우팅하도록 구성된 복수의 단자를 포함할 수 있음 - 및 메모리 셀의 어레이의 I/O 영역에 위치된 복수의 채널을 갖는 메모리 셀의 어레이를 포함할 수 있고, 채널 각각은 메모리 셀의 어레이의 구역과 결합될 수 있고, 호스트 디바이스와 구역의 메모리 셀의 복수의 뱅크 사이에서 신호를 통신하도록 구성될 수 있다.
일부 예에서, 메모리 디바이스는 메모리 셀의 어레이의 I/O 영역에 위치된 복수의 채널 인터페이스를 더 포함할 수 있고, 신호 경로는 구역을 복수의 채널 인터페이스와 결합한다. 메모리 디바이스의 일부 예에서, I/O 영역은 메모리 셀의 어레이의 상부에 적층된 메모리 셀의 제2 어레이를 채널 인터페이스와 결합하도록 구성된 TSV를 포함할 수 있다.
메모리 디바이스의 일부 예에서, 구역의 채널 인터페이스는 채널 인터페이스에 의해 서비스되는 구역을 양분하는 I/O 영역 내에 위치될 수 있다. 메모리 디바이스의 일부 예에서, I/O 영역은 메모리 셀의 어레이를 전력 노드 또는 접지 노드와 결합하도록 구성된 TSV를 포함할 수 있다. 메모리 디바이스의 일부 예에서, I/O 영역은 메모리 셀이 없을 수 있는 메모리 셀의 어레이의 영역을 점유할 수 있다. 메모리 디바이스의 일부 예에서, 메모리 셀의 어레이는 2개의 I/O 영역에 의해 양분될 수 있다. 메모리 디바이스의 일부 예에서, 메모리 셀의 어레이는 4개의 I/O 영역에 의해 양분될 수 있다.
일 예에서, 시스템은 호스트 디바이스, 복수의 메모리 셀 뱅크를 각각 포함할 수 있는 복수의 구역을 갖는 메모리 다이를 포함하는 메모리 디바이스 및 호스트 디바이스와 메모리 디바이스를 통신적으로 결합하도록 구성된 복수의 채널을 포함할 수 있고, 각각의 채널은 메모리 다이의 구역과 결합될 수 있고, 호스트 디바이스와 구역 내의 복수의 메모리 셀 뱅크 사이에서 신호를 통신하도록 구성될 수 있다.
일부 예에서, 시스템은 호스트 디바이스와의 양방향 통신을 위해 구성된 인터페이스를 포함할 수 있다. 시스템의 일부 예에서, 인터페이스는 NRZ 변조 방식 또는 PAM4 방식 중 적어도 하나, 또는 양자 모두를 사용하여 변조된 신호를 통신하도록 구성될 수 있다. 시스템의 일부 예에서, 호스트 디바이스는 GPU의 예일 수 있다. 시스템의 일부 예에서, 메모리 디바이스는 호스트 디바이스와 동일한 패키지에 위치할 수 있다.
일 예에서, 메모리 디바이스는 메모리 셀의 복수의 뱅크를 각각 포함하는 복수의 구역을 갖는 메모리 셀의 어레이와 메모리 셀의 어레이를 가로지르는 복수의 채널을 포함할 수 있으며, 각각의 채널은 메모리 셀의 어레이의 적어도 하나의 구역에 결합될 수 있고, 각각의 채널은 2개 이상의 데이터 핀 및 하나 이상의 명령/어드레스 핀을 포함할 수 있다.
메모리 디바이스의 일부 예에서, 각각의 채널은 2개의 데이터 핀을 포함할 수 있다. 메모리 디바이스의 일부 예에서, 각각의 채널은 하나의 명령/어드레스 핀을 포함할 수 있다. 메모리 디바이스의 일부 예에서, 어레이의 각각의 구역은 4개의 메모리 셀 뱅크를 포함할 수 있다. 메모리 디바이스의 일부 예에서, 각각의 채널은 4개의 데이터 핀을 포함할 수 있다. 메모리 디바이스의 일부 예에서, 각각의 채널은 2개의 명령/어드레스 핀을 포함할 수 있다. 메모리 디바이스의 일부 예에서, 어레이의 각각의 구역은 8개의 메모리 셀 뱅크를 포함할 수 있다. 메모리 디바이스의 일부 예에서, 메모리 셀의 각각의 뱅크는 채널과 인접할 수 있다.
메모리 디바이스의 일부 예에서, 각각의 복수의 뱅크의 제1 세트는 채널과 인접할 수 있고, 각각의 복수의 뱅크의 제2 세트는 다른 뱅크와 인접하고 채널과 인접하지 않을 수 있다. 일부 예에서, 메모리 디바이스는 128개의 데이터 핀을 포함할 수 있고 채널당 2, 4, 또는 8개의 데이터 핀의 비율로 구성될 수 있다.
일부 예에서, 메모리 디바이스는 채널당 1, 2, 3, 4, 또는 6개의 명령/어드레스 핀을 포함할 수 있다. 일부 예에서, 메모리 디바이스는 256개의 데이터 핀들을 포함할 수 있고 채널당 2, 4, 또는 8개의 데이터 핀들의 비율로 구성될 수 있다. 일부 예에서, 메모리 디바이스는 채널당 1, 2, 3, 4, 또는 6개의 명령/어드레스 핀을 포함할 수 있다. 메모리 디바이스의 일부 예에서, 어레이는 각각이 복수의 채널을 포함할 수 있는 복수의 메모리 다이를 포함할 수 있다.
메모리 디바이스의 일부 예에서, 복수의 각각의 메모리 다이는 복수의 채널 중 상이한 채널과 결합될 수 있다. 일부 예에서, 메모리 디바이스는 어레이와 결합된 버퍼 층을 포함할 수 있다. 일부 예에서, 메모리 디바이스는 어레이 하위 유기 기판을 포함할 수 있다.
메모리 디바이스의 일부 예에서, 어레이는 10, 16, 20, 또는 24Gbps의 핀 레이트에 대해 구성될 수 있다. 일부 예에서, 메모리 디바이스는 호스트 디바이스와의 양방향 통신을 위해 구성된 인터페이스를 포함할 수 있다. 메모리 디바이스의 일부 예에서, 인터페이스는 이진 변조 시그널링 또는 펄스 진폭 변조 중 적어도 하나, 또는 양자 모두를 위해 구성될 수 있다.
일 예에서, 시스템은 메모리 셀의 복수의 뱅크를 각각 포함할 수 있는 복수의 구역을 포함할 수 있는 적어도 하나의 메모리 다이, 각각의 메모리 다이와 연관된 하나 이상의 채널- 각각의 채널은 메모리 셀의 다이의 적어도 하나의 구역에 결합될 수 있고 각각의 채널은 적어도 하나의 구역은 2개 이상의 데이터 핀을 포함할 수 있음 -, 및 메모리 다이 하위의 유기 기판을 포함할 수 있다.
일부 예에서, 시스템은 호스트 디바이스, 및 호스트 디바이스와의 양방향 통신을 위해 구성된 인터페이스를 포함할 수 있고, 인터페이스는 NRZ 시그널링 또는 PAM4, 또는 양자 모두 중 적어도 하나를 지원한다. 시스템의 일부 예에서, 호스트 디바이스는 GPU를 포함할 수 있다.
일부 예에서, 시스템은 각각이 128 또는 256 데이터 핀을 포함할 수 있고 채널당 2, 4 또는 8 데이터 핀의 비율로 구성된 복수의 메모리 어레이를 포함할 수 있다. 일부 예에서, 시스템은 적어도 하나의 메모리 다이와 유기 기판 사이에 위치된 버퍼 층을 포함할 수 있다.
본 출원에 설명된 정보 및 신호는 다양한 상이한 기술 및 기법 중 임의의 것을 사용하여 표현될 수 있다. 예를 들어, 위의 설명 전체에서 참조될 수 있는 데이터, 명령어, 명령, 정보, 신호, 비트, 심볼 및 칩은 전압, 전류, 전자기파, 자기장 또는 입자, 광학 필드 또는 입자, 또는 그 임의의 조합으로 표현될 수 있다. 일부 도면은 신호를 단일 신호로서 예시할 수 있지만; 그러나, 본 기술 분야의 숙련자는 신호가 신호의 버스를 나타낼 수 있고, 여기서 버스는 다양한 비트 폭을 가질 수 있다는 것을 이해할 것이다.
본 출원에 사용될 수 있는 바와 같이, 용어 "가상 접지"는 약 0V(0V)의 전압으로 유지되지만 접지와 직접 연결되지 않은 전기 회로의 노드를 지칭한다. 따라서, 가상 접지의 전압은 일시적으로 변동하였다가 정상 상태에서 약 0V로 되돌아갈 수 있다. 가상 접지는 연산 증폭기 및 저항기로 구성된 전압 분배기와 같은 다양한 전자 회로 요소를 사용하여 구현될 수 있다. 다른 구현도 가능하다. "가상 접지하는" 또는 "가상 접지되는"은 약 0V에 연결된 것을 의미한다.
본 출원에 사용될 수 있는 "전자 통신" 및 "결합된"이라는 용어는 컴포넌트 사이의 전자 유동을 지원하는 컴포넌트 사이의 관계를 지칭한다. 이는 컴포넌트 사이의 직접 연결을 포함할 수 있거나 중간 컴포넌트를 포함할 수 있다. 전자 통신 또는 서로 결합된 컴포넌트는 전자 또는 신호를 능동적으로 교환하거나(예를 들어, 활성화된 회로에서), 전자 또는 신호를 능동적으로 교환하지 않을 수 있지만(예를 들어, 비활성화된 회로에서), 회로가 활성화될 때에는 전자 또는 신호를 교환하도록 구성 및 동작할 수 있다. 예로서, 스위치(예를 들어, 트랜지스터)를 통해 물리적으로 연결된 2개의 컴포넌트는 전자 통신하거나 스위치의 상태(즉, 개방 또는 폐쇄)에 무관하게 결합될 수 있다.
본 출원에 사용된 용어 "층"은 기하학적 구조의 지층 또는 시트를 의미한다. 각각의 층은 3차원(예를 들어, 높이, 폭 및 깊이)을 가질 수 있으며 표면의 일부 또는 전부를 덮을 수 있다. 예를 들어, 층은 2개의 차원이 제3 차원보다 더 큰 3차원 구조, 예를 들어 박막일 수 있다. 층은 다른 요소, 컴포넌트 및/또는 재료를 포함할 수 있다. 일부 경우에, 하나의 층이 2개 이상의 하위 층으로 구성될 수 있다. 일부 첨부 도면에서, 3차원 층 중 2개의 차원이 예시의 목적으로 도시되어 있다. 그러나, 본 기술 분야의 숙련자는 층이 본질적으로 3차원이라는 것을 인식할 것이다.
본 출원에 사용될 때, 용어 "전극"은 전기 전도체를 지칭할 수 있고, 일부 경우에 메모리 셀 또는 메모리 어레이의 다른 컴포넌트에 대한 전기적 접촉으로 사용될 수 있다. 전극은 메모리 어레이의 요소 또는 컴포넌트 사이에 전도성 경로를 제공하는 트레이스, 와이어, 전도성 라인, 전도성 층 등을 포함할 수 있다.
용어 "격리된"은 전자가 현재 그 사이에서 유동할 수 없는 컴포넌트 사이의 관계를 지칭하고; 컴포넌트 사이에 개회로가 있으면 컴포넌트가 서로 격리된다. 예를 들어, 스위치에 의해 물리적으로 연결된 2개의 컴포넌트는 스위치가 개방되어 있을 때 서로 격리될 수 있다.
메모리 어레이를 포함하는 본 출원에 설명된 디바이스는 실리콘, 게르마늄, 실리콘-게르마늄 합금, 갈륨 비소, 갈륨 질화물 등과 같은 반도체 기판 상에 형성될 수 있다. 일부 경우에는 기판이 반도체 웨이퍼이다. 다른 경우에, 기판은 SOG(silicon-on-glass) 또는 SOP(silicon-on-sapphire)와 같은 SOI(silicon-on-insulator) 기판, 또는 다른 기판 상의 반도체 재료의 에피택셜 층일 수 있다. 일부 예에서, 기판은 ABF 또는 BT와 같은 재료로부터 형성된 유기 빌드업 기판일 수 있다. 기판의 전도도, 또는 기판의 하위 구역은 인, 붕소 또는 비소를 포함하지만 이에 제한되지 않는 다양한 화학종을 사용하여 도핑을 통해 제어될 수 있다. 도핑은 기판의 초기 형성 또는 성장 동안, 이온 주입에 의해, 또는 임의의 다른 도핑 수단에 의해 수행될 수 있다.
본 출원에 설명된 트랜지스터 또는 트랜지스터들은 전계 효과 트랜지스터(FET)를 나타낼 수 있으며 소스, 드레인 및 게이트를 포함하는 3 단자 디바이스를 포함할 수 있다. 단자는 금속과 같은 전도성 재료, 예를 들어, 금속을 통해 다른 전자 소자와 연결될 수 있다. 소스 및 드레인은 전도성일 수 있고 고농도 도핑된, 예를 들어, 축퇴 반도체 구역을 포함할 수 있다. 소스 및 드레인은 저농도 도핑된 반도체 구역 또는 채널에 의해 분리될 수 있다. 채널이 n-형인 경우(즉, 다수 캐리어가 전자임), 이때, FET는 n-형 FET라고 지칭될 수 있다. 채널이 p-형인 경우(즉, 다수 캐리어가 정공임), 이때, FET는 p-형 FET로 지칭될 수 있다. 채널은 절연 게이트 산화물로 덮일 수 있다. 채널 전도도는 게이트에 전압을 인가함으로써 제어될 수 있다. 예를 들어, n-형 FET 또는 p-형 FET에 각각 양의 전압 또는 음의 전압을 인가하면 채널이 전도성이 될 수 있다. 트랜지스터의 임계 전압 이상인 전압이 트랜지스터 게이트에 인가될 때 트랜지스터는 "온" 또는 "활성화"될 수 있다. 트랜지스터의 임계 전압 미만의 전압이 트랜지스터 게이트에 인가될 때 트랜지스터는 "오프" 또는 "비활성화"될 수 있다.
본 출원의 개시와 관련하여 설명된 다양한 예시적인 블록 및 모듈은 범용 프로세서, DSP, ASIC, FPGA 또는 다른 프로그램 가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트, 또는 본 출원에 설명된 기능을 수행하도록 설계된 그 임의의 조합으로 구현 또는 수행될 수 있다. 범용 프로세서는 마이크로프로세서일 수 있지만 대안적으로 프로세서는 임의의 프로세서, 제어기, 마이크로컨트롤러 또는 상태 기계일 수 있다.
프로세서는 또한 컴퓨팅 디바이스의 조합(예를 들어, DSP와 마이크로프로세서의 조합, 다수의 마이크로프로세서, DSP 코어와 함께 하나 이상의 마이크로프로세서, 또는 임의의 다른 이러한 구성)으로 구현될 수 있다.
제1 예인 예 1에서, 저장 시스템은 데이터를 저장하도록 구성된 제1 메모리 다이의 스택; 및 제1 명령 버스, 제2 명령 버스, 및 데이터 버스를 사용하여 외부 호스트로부터 다수의 메모리 요청을 수신하도록 구성된 인터페이스 회로, 및 제1 메모리 다이의 스택으로부터 데이터를 저장 및 검색하도록 제1 메모리 다이의 스택과 인터페이스하도록 구성된 제어기를 포함하는 로직 다이를 포함할 수 있고; 로직 다이는, 제1 메모리 다이의 스택의 디바이스들보다 더 빠른 액세스 시간을 갖는 제2 메모리를 포함하고; 인터페이스 회로는 복수의 메모리 요청 중 제1 메모리 요청에 응답하여 제2 메모리에 직접 액세스하도록 구성된다.
예 2에서, 예 1의 주제에 있어서, 제1 메모리 다이의 스택은 DRAM(dynamic random-access memory) 다이이다.
예 3에서, 예 2의 주제에 있어서, 제2 메모리는 SRAM(static random-access memory) 디바이스이다.
예 4에서, 예 1 내지 3의 주제에 있어서, 인터페이스 회로의 명령 디코더는 제2 메모리에 직접 액세스하기 위한 명령을 수신하도록 구성된다.
예 5에서, 예 1 내지 4의 주제에 있어서, 제1 명령 버스는 행(row) 명령 버스이다.
예 6에서, 예 5의 주제에 있어서, 제2 명령 버스는 열(column) 명령 버스이다.
예 7에서, 예 1 내지 6의 주제에 있어서, 제1 명령 버스의 다수의 선택된 비트는 다수의 선택된 비트 각각의 상태에 기초하여 제1 명령 버스의 클록 신호의 제1 전이시에 적어도 제1 명령 식별자를 제공하도록 구성되고; 제어기는 제1 명령 식별자에 응답하여 제2 메모리 디바이스에 직접 액세스하도록 구성된다.
예 8에서, 예 7의 주제에 있어서, 명령 버스의 다수의 선택된 비트는 명령 버스의 적어도 3 비트를 포함한다.
예 9에서, 예 8의 주제에 있어서, 명령 버스의 다수의 선택된 비트는 명령 버스의 제1의 3 비트를 포함한다.
예 10에서, 예 9의 주제에 있어서, 제1 명령 식별자는 제1 명령 버스의 클록 신호의 제1 전이에서 제1 명령 버스의 제1의 3 비트가 하이(HIGH), 로우(LOW), 하이(HIGH)인 것에 응답하여 제공된다.
예 11에서, 예 7 내지 10의 주제에 있어서, 명령 버스의 다수의 선택된 비트는 명령 버스의 다수의 초기 비트를 포함한다.
예 12에서, 예 7 내지 11의 주제에 있어서, 상기 다수의 선택된 비트의 상태의 고유한 조합이 그 외에는 상기 명령 버스 상에 존재하지 않는다는 것에 응답하여 상기 제1 명령 버스의 상기 다수의 선택된 비트의 상태는 상기 제1 명령 식별자를 제공하도록 구성된다.
예 13에서, 예 12의 주제에 있어서, 명령 버스는 JDEC 고대역폭 메모리 표준(JESD235B)을 준수한다.
예 14에서, 예 7 내지 13의 주제에 있어서, 인터페이스 회로는 제1 명령 버스의 클록 신호의 제1 전이시에 제1 명령 버스의 제1의 3 비트가 각각 하이(HIGH), 로우(LOW), 하이(HIGH)가 아닐 때 제2 메모리 디바이스에 직접 액세스하지 않도록 구성된다.
예 15에서, 예 7 내지 14의 주제에 있어서, 인터페이스 회로는 제2 명령 버스의 클록의 제1 전이시에 제2 명령 버스의 비트의 제1 상태에 응답하여 제2 메모리 디바이스의 데이터를 판독하도록 구성된다.
예 16에서, 예 15의 주제에 있어서, 인터페이스 회로는 제2 명령 버스의 클록의 제1 전이시에 제2 명령 버스의 비트의 제2 상태에 응답하여 제2 메모리 디바이스에 데이터를 기록하도록 구성된다.
예 17에서, 예 7 내지 16의 주제에 있어서, 제2 명령 버스의 제1의 2 비트는 제2 명령 버스의 클록 신호의 제1 전이시에 명령 식별자를 제공하도록 구성되고; 인터페이스 회로는 제2 명령 버스의 클록 신호의 제1 전이시에 각각 로우(LOW), 하이(HIGH)인 제2 명령 버스의 제1의 2 비트에 응답하여 제2 메모리 디바이스에 직접 액세스하도록 구성된다.
예 18에서, 예 17의 주제에 있어서, 인터페이스 회로는 제2 메모리 디바이스에 액세스하고 제2 명령 버스의 클록의 제2 전이 동안 제2 명령 버스의 비트의 제1 상태에 응답하여 데이터 타겟으로서 로직 다이의 버퍼를 사용하도록 구성된다.
예 19에서, 예 18의 주제에 있어서, 인터페이스 회로는 제2 명령 버스의 클록의 제2 전이 동안 제1 상태의 제2 명령 버스의 비트에 응답하여 제어기가 로직 다이의 버퍼를 데이터 타겟으로 사용하여 제1 메모리 다이의 스택에 액세스하는 것을 개시하도록 구성된다.
예 20은 방법이고, 이는 제1 메모리 액세스 동작을 식별하기 위해 제1 명령/어드레스 버스만을 사용하여 메모리 다이 스택을 갖는 메모리 디바이스의 제1 메모리 액세스 동작을 실행하는 단계; 제2 메모리 액세스 동작을 식별하기 위해 제2 명령/어드레스 버스만을 사용하여 메모리 디바이스의 제2 메모리 액세스 동작을 실행하는 단계; 및 제3 메모리 액세스 동작을 식별하기 위해 제1 명령/어드레스 버스 및 제2 명령/어드레스 버스 둘 모두를 사용하여 메모리 디바이스의 제3 메모리 액세스 동작을 실행하는 단계- 제3 메모리 동작은 메모리 디바이스의 로직 다이의 제2 메모리에 액세스하도록 구성되고, 제2 메모리는 메모리 다이의 스택과 상이함 -를 포함한다.
예 21에서, 예 20의 주제에 있어서, 메모리 다이의 스택은 DRAM(dynamic random-access memory)을 포함한다.
예 22에서, 예 20 또는 21의 주제에 있어서, 제2 메모리는 SRAM(static random-access memory)이다.
예 23에서, 예 20 내지 22의 주제에 있어서, 제3 메모리 액세스 동작을 실행하는 단계는 제2 명령/어드레스 버스의 클록의 하강 전이 동안 제2 명령/어드레스 버스의 비트를 제1 상태 또는 제2 상태 중 하나로 설정하는 단계; 비트가 제1 상태로 설정될 때, 로직 다이의 버퍼를 제3 메모리 액세스 동작의 데이터 위치로 사용하는 단계; 및 비트가 제2 상태로 설정될 때, 제3 메모리 액세스 동작의 데이터 위치로서 호스트 디바이스와 로직 다이를 결합하는 데이터 버스를 사용하는 단계를 포함한다.
예 24는 저장 디바이스용 로직 다이이고, 로직 다이는 저장 디바이스의 메모리 다이 스택과 통신하기 위한 제1 인터페이스; 호스트 디바이스와 결합하도록 구성된 제2 인터페이스; 제2 인터페이스로부터 직접 액세스 가능한 제2 메모리; 및 처리 회로부를 포함하고, 처리 회로부는 호스트 디바이스로부터의 제1 요청에 응답하여 메모리 다이 스택의 제1 메모리 액세스 동작을 개시하고- 제1 요청은 제1 메모리 액세스 동작을 식별하기 위해 제2 인터페이스의 제1 명령/어드레스 버스만을 사용함 -; 호스트 디바이스로부터의 제2 요청에 응답하여 메모리 다이 스택의 제2 메모리 액세스 동작을 개시하고- 제2 요청은 제2 메모리 액세스 동작을 식별하기 위해 제2 인터페이스의 제2 명령/어드레스 버스만을 사용함 -; 및 호스트 디바이스로부터의 제3 요청에 응답하여 저장 디바이스의 제2 메모리의 제3 메모리 액세스 동작을 개시하는- 제3 요청은 제3 메모리 액세스 동작을 식별하기 위해 제1 명령/어드레스 버스와 제2 명령/어드레스 버스 둘 모두를 사용함 - 것이다.
예 25에서, 예 24의 주제에 있어서, 제3 메모리 액세스 동작은 상기 제2 메모리의 상기 제3 메모리 액세스 동작을 식별하기 위해 상기 제1 명령/어드레스 버스의 제1의 3 비트는 상기 제1 명령/어드레스 버스의 클록 신호의 제1 전이에 동안 로직 하이(HIGH), 로우(LOW), 하이(HIGH)로 각각 설정하고; 상기 제2 메모리의 상기 제3 메모리 액세스 동작을 식별하기 위해 상기 제2 명령/어드레스 버스의 제1의 2 비트는 상기 제2 명령/어드레스 버스의 클록 신호의 제1 전이에 동안 각각 로직 로우(LOW), 하이(HIGH)로 설정하고; 판독 동작으로서 상기 제2 메모리의 상기 제3 메모리 액세스 동작을 식별하기 위해 상기 제2 명령/어드레스 버스의 상기 클록 신호의 제2 전이 동안 상기 제2 명령/어드레스 버스의 제3 비트는 제1 상태로; 및 기록 동작으로서 상기 제2 메모리의 상기 제3 메모리 액세스 동작을 식별하는 상기 제2 명령/어드레스 버스의 상기 클록 신호의 제2 전이 동안 제2 명령/상기 어드레스 버스의 상기 제3 비트는 제2 상태로 하는 것을 포함한다.
예 26에서, 예 25의 주제에 있어서, 제2 또는 제3 메모리 액세스 동작 중 어느 하나에 응답하여, 처리 회로부는 제2 명령/어드레스 버스의 제4 비트가 제2 명령/어드레스 버스의 클록 신호의 제2 전이 동안 제3 상태로 설정될 때 데이터 위치로서 제2 인터페이스의 데이터 버스를 사용하고; 제2 명령/어드레스 버스의 제4 비트가 제2 명령/어드레스 버스의 클록 신호의 제2 전이 동안 데이터 위치로서 제3 상태로 설정될 때 로직 다이의 버퍼를 사용하도록 구성된다.
예 27은 처리 회로부에 의해 실행될 때 처리 회로부가 예 1 내지 26 중 어느 하나를 구현하도록 동작을 수행하게 하는 명령어를 포함하는 적어도 하나의 기계 판독 가능 매체이다.
예 28은 예 1 내지 26 중 어느 하나를 구현하기 위한 수단을 포함하는 장치이다.
예 29는 예 1 내지 26 중 어느 하나를 구현하기 위한 시스템이다.
예 30은 예 1 내지 26 중 어느 하나를 구현하기 위한 방법이다.

Claims (26)

  1. 저장 시스템에 있어서,
    데이터를 저장하도록 구성된 제1 메모리 다이의 스택; 및
    제1 명령 버스, 제2 명령 버스, 및 데이터 버스를 사용하여 외부 호스트로부터 다수의 메모리 요청을 수신하도록 구성된 인터페이스 회로, 및 상기 제1 메모리 다이의 스택으로부터 상기 데이터를 저장 및 검색하도록 상기 제1 메모리 다이의 스택과 인터페이스하도록 구성된 제어기를 포함하는 로직 다이를 포함하고;
    상기 로직 다이는 상기 제1 메모리 다이의 스택의 디바이스들보다 더 빠른 액세스 시간을 갖는 제2 메모리를 포함하고; 및
    상기 인터페이스 회로는 상기 다수의 메모리 요청 중 제1 메모리 요청에 응답하여 상기 제2 메모리에 직접 액세스하도록 구성된, 저장 시스템.
  2. 청구항 1에 있어서, 상기 제1 메모리 다이의 스택은 DRAM(dynamic random-access memory) 다이인, 저장 시스템.
  3. 청구항 2에 있어서, 상기 제2 메모리는 SRAM(static random-access memory) 디바이스인, 저장 시스템.
  4. 청구항 1에 있어서, 상기 인터페이스 회로의 명령 디코더는 상기 제2 메모리에 직접 액세스하기 위한 명령을 수신하도록 구성된, 저장 시스템.
  5. 청구항 1에 있어서, 상기 제1 명령 버스는 행(row) 명령 버스인, 저장 시스템.
  6. 청구항 5에 있어서, 상기 제2 명령 버스는 열(column) 명령 버스인, 저장 시스템.
  7. 청구항 1에 있어서, 상기 제1 명령 버스의 다수의 선택된 비트는 상기 다수의 선택된 비트 각각 상태에 기초하여, 상기 제1 명령 버스의 클록 신호의 제1 전이(transition)시에 적어도 제1 명령 식별자를 제공하도록 구성되고; 및
    상기 제어기는 상기 제1 명령 식별자에 응답하여 상기 제2 메모리 디바이스에 직접 액세스하도록 구성된, 저장 시스템.
  8. 청구항 7에 있어서, 상기 명령 버스의 상기 다수의 선택된 비트는 상기 명령 버스의 적어도 3 비트를 포함하는, 저장 시스템.
  9. 청구항 8에 있어서, 상기 명령 버스의 상기 다수의 선택된 비트는 상기 명령 버스의 제1의 3 비트를 포함하는, 저장 시스템.
  10. 청구항 9에 있어서, 상기 제1 명령 버스의 클록 신호의 제1 전이시에 상기 제1 명령 버스의 제1의 3 비트가 하이(HIGH), 로우(LOW), 하이(HIGH)인 것에 응답하여 상기 제1 명령 식별자가 제공되는, 저장 시스템.
  11. 청구항 7에 있어서, 상기 명령 버스의 다수의 선택된 비트는 상기 명령 버스의 다수의 초기 비트를 포함하는, 저장 시스템.
  12. 청구항 7에 있어서, 상기 다수의 선택된 비트의 상태의 고유한 조합이 그 외에는 상기 명령 버스 상에 존재하지 않는다는 것에 응답하여 상기 제1 명령 버스의 상기 다수의 선택된 비트의 상태는 상기 제1 명령 식별자를 제공하도록 구성된, 저장 시스템.
  13. 청구항 12에 있어서, 상기 명령 버스는 JDEC 고대역폭 메모리 표준(JESD235B)을 준수하는, 저장 시스템.
  14. 청구항 7에 있어서, 상기 인터페이스 회로는 상기 제1 명령 버스의 상기 클록 신호의 상기 제1 전이시에 상기 제1 명령 버스의 제1의 3 비트가 각각 하이(HIGH), 로우(LOW), 하이(HIGH)가 아닌 경우 상기 제2 메모리 디바이스에 직접 액세스하지 않도록 구성된, 저장 시스템.
  15. 청구항 7에 있어서, 상기 인터페이스 회로는 상기 제2 명령 버스의 클록의 제1 전이시에 상기 제2 명령 버스의 비트의 제1 상태에 응답하여 상기 제2 메모리 디바이스의 데이터를 판독하도록 구성된, 저장 시스템.
  16. 청구항 15에 있어서, 상기 인터페이스 회로는 상기 제2 명령 버스의 상기 클록의 상기 제1 전이시에 상기 제2 명령 버스의 비트의 제2 상태에 응답하여 상기 제2 메모리 디바이스에 데이터를 기록하도록 구성된, 저장 시스템.
  17. 청구항 7에 있어서, 상기 제2 명령 버스의 제1의 2 비트는 상기 제2 명령 버스의 클록 신호의 상기 제1 전이시에 명령 식별자를 제공하도록 구성되고; 및
    상기 인터페이스 회로는 상기 제2 명령 버스의 상기 클록 신호의 상기 제1 전이시에 각각 로우(LOW), 하이(HIGH)인 상기 제2 명령 버스의 제1의 2 비트에 응답하여 상기 제2 메모리 디바이스에 직접 액세스하도록 구성된, 저장 시스템.
  18. 청구항 17에 있어서, 상기 인터페이스 회로는 상기 제2 메모리 디바이스에 액세스하고, 상기 제2 명령 버스의 클록의 제2 전이 동안 상기 제2 명령 버스의 비트의 제1 상태에 응답하여 데이터 타겟으로서 상기 로직 다이의 버퍼를 사용하도록 구성된, 저장 시스템.
  19. 청구항 18에 있어서, 상기 인터페이스 회로는 상기 제2 명령 버스의 클록의 상기 제2 전이 동안 제1 상태의 상기 제2 명령 버스의 비트에 응답하여 상기 제어기가 상기 로직 다이의 버퍼를 데이터 타겟으로 사용하여 상기 제1 메모리 다이의 스택에 액세스하는 것을 개시하도록 구성된, 저장 시스템.
  20. 방법에 있어서,
    제1 메모리 액세스 동작을 식별하기 위해 제1 명령/어드레스 버스만을 사용하여 메모리 다이 스택을 갖는 메모리 디바이스의 제1 메모리 액세스 동작을 실행하는 단계;
    제2 메모리 액세스 동작을 식별하기 위해 제2 명령/어드레스 버스만을 사용하여 상기 메모리 디바이스의 제2 메모리 액세스 동작을 실행하는 단계; 및
    제3 메모리 액세스 동작을 식별하기 위해 상기 제1 명령/어드레스 버스 및 상기 제2 명령/어드레스 버스 둘 모두를 사용하여 상기 메모리 디바이스의 제3 메모리 액세스 동작을 실행하는 단계- 상기 제3 메모리 동작은 상기 메모리 디바이스의 로직 다이의 제2 메모리에 액세스하도록 구성되고, 상기 제2 메모리는 상기 메모리 다이의 스택과 상이함 -를 포함하는, 방법.
  21. 청구항 20에 있어서, 상기 메모리 다이 스택은 DRAM(dynamic random-access memory)을 포함하는, 방법.
  22. 청구항 20에 있어서, 상기 제2 메모리는 SRAM(static random-access memory)인, 방법.
  23. 청구항 20에 있어서, 상기 제3 메모리 액세스 동작을 실행하는 단계는,
    상기 제2 명령/어드레스 버스의 클록의 하강 전이 동안 상기 제2 명령/어드레스 버스의 비트를 제1 상태 또는 제2 상태 중 하나로 설정하는 단계;
    상기 비트가 제1 상태로 설정될 때, 상기 로직 다이의 버퍼를 상기 제3 메모리 액세스 동작의 데이터 위치로 사용하는 단계; 및
    상기 비트가 상기 제2 상태로 설정될 때, 상기 제3 메모리 액세스 동작의 상기 데이터 위치로서 상기 로직 다이를 호스트 디바이스와 결합하는 데이터 버스를 사용하는 단계를 포함하는, 방법.
  24. 저장 디바이스용 로직 다이에 있어서, 상기 로직 다이는,
    상기 저장 디바이스의 메모리 다이 스택과 통신하기 위한 제1 인터페이스;
    호스트 디바이스와 결합하도록 구성된 제2 인터페이스;
    상기 제2 인터페이스로부터 직접 액세스 가능한 제2 메모리; 및
    처리 회로부를 포함하고, 상기 처리 회로부는,
    상기 호스트 디바이스로부터의 제1 요청에 응답하여 상기 메모리 다이 스택의 제1 메모리 액세스 동작을 개시하고- 상기 제1 요청은 상기 제1 메모리 액세스 동작을 식별하기 위해 상기 제2 인터페이스의 제1 명령/어드레스 버스만을 사용함 -;
    상기 호스트 디바이스로부터의 제2 요청에 응답하여 상기 메모리 다이 스택의 제2 메모리 액세스 동작을 개시하고- 상기 제2 요청은 상기 제2 메모리 액세스 동작을 식별하기 위해 상기 제2 인터페이스의 제2 명령/어드레스 버스만을 사용함 -; 및
    상기 호스트 디바이스로부터의 제3 요청에 응답하여 상기 저장 디바이스의 상기 제2 메모리의 제3 메모리 액세스 동작을 개시하고- 상기 제3 요청은 상기 제3 메모리 액세스 동작을 식별하기 위해 상기 제1 명령/어드레스 버스와 상기 제2 명령/어드레스 버스 둘 모두를 사용함 -, 로직 다이.
  25. 청구항 24에 있어서, 상기 제3 메모리 액세스 동작은,
    상기 제2 메모리의 상기 제3 메모리 액세스 동작을 식별하기 위해 상기 제1 명령/어드레스 버스의 제1의 3 비트는 상기 제1 명령/어드레스 버스의 클록 신호의 제1 전이에 동안 로직 하이(HIGH), 로우(LOW), 하이(HIGH)로 각각 설정하고;
    상기 제2 메모리의 상기 제3 메모리 액세스 동작을 식별하기 위해 상기 제2 명령/어드레스 버스의 제1의 2 비트는 상기 제2 명령/어드레스 버스의 클록 신호의 제1 전이에 동안 각각 로직 로우(LOW), 하이(HIGH)로 설정하고;
    판독 동작으로서 상기 제2 메모리의 상기 제3 메모리 액세스 동작을 식별하기 위해 상기 제2 명령/어드레스 버스의 상기 클록 신호의 제2 전이 동안 상기 제2 명령/어드레스 버스의 제3 비트는 제1 상태로; 및
    기록 동작으로서 상기 제2 메모리의 상기 제3 메모리 액세스 동작을 식별하는 상기 제2 명령/어드레스 버스의 상기 클록 신호의 제2 전이 동안 제2 명령/상기 어드레스 버스의 상기 제3 비트는 제2 상태로 하는 것을 포함하는, 로직 다이.
  26. 청구항 25에 있어서, 상기 제2 또는 제3 메모리 액세스 동작 중 어느 하나에 응답하여, 상기 처리 회로부는,
    상기 제2 명령/어드레스 버스의 제4 비트가 상기 제2 명령/어드레스 버스의 상기 클록 신호의 상기 제2 전이 동안 제3 상태로 설정될 때 데이터 위치로서 상기 제2 인터페이스의 데이터 버스를 사용하고; 및
    상기 제2 명령/어드레스 버스의 제4 비트가 상기 제2 명령/어드레스 버스의 상기 클록 신호의 상기 제2 전이 동안 제3 상태로 설정될 때 데이터 위치로서 상기 로직 다이의 버퍼를 사용하도록 구성된, 로직 다이.
KR1020227023779A 2019-12-26 2020-12-18 적층 메모리 시스템을 위한 진리표 확장 KR20220110295A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962953819P 2019-12-26 2019-12-26
US62/953,819 2019-12-26
PCT/US2020/066208 WO2021133692A1 (en) 2019-12-26 2020-12-18 Truth table extension for stacked memory systems

Publications (1)

Publication Number Publication Date
KR20220110295A true KR20220110295A (ko) 2022-08-05

Family

ID=76546219

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227023779A KR20220110295A (ko) 2019-12-26 2020-12-18 적층 메모리 시스템을 위한 진리표 확장

Country Status (5)

Country Link
US (2) US11561731B2 (ko)
EP (1) EP4081890A4 (ko)
KR (1) KR20220110295A (ko)
CN (1) CN114930282A (ko)
WO (1) WO2021133692A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220116259A (ko) 2019-12-26 2022-08-22 마이크론 테크놀로지, 인크. 적층 메모리 시스템의 비-결정 동작을 위한 기술
KR20220110295A (ko) 2019-12-26 2022-08-05 마이크론 테크놀로지, 인크. 적층 메모리 시스템을 위한 진리표 확장
EP4081889A4 (en) 2019-12-26 2023-05-31 Micron Technology, Inc. HOST TECHNIQUES FOR STACKED STORAGE SYSTEMS

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6526484B1 (en) 1998-11-16 2003-02-25 Infineon Technologies Ag Methods and apparatus for reordering of the memory requests to achieve higher average utilization of the command and data bus
US7127574B2 (en) 2003-10-22 2006-10-24 Intel Corporatioon Method and apparatus for out of order memory scheduling
US8407395B2 (en) 2006-08-22 2013-03-26 Mosaid Technologies Incorporated Scalable memory system
KR100764749B1 (ko) * 2006-10-03 2007-10-08 삼성전자주식회사 멀티-칩 패키지 플래시 메모리 장치 및 그것의 카피 백방법
US7915603B2 (en) 2006-10-27 2011-03-29 Qimonda Ag Modifiable gate stack memory element
US7584335B2 (en) 2006-11-02 2009-09-01 International Business Machines Corporation Methods and arrangements for hybrid data storage
US8127185B2 (en) 2009-01-23 2012-02-28 Micron Technology, Inc. Memory devices and methods for managing error regions
US8966208B2 (en) 2010-02-25 2015-02-24 Conversant Ip Management Inc. Semiconductor memory device with plural memory die and controller die
KR20120028484A (ko) * 2010-09-15 2012-03-23 삼성전자주식회사 모바일 기기에 채용하기 적합한 복합형 반도체 장치
KR101854251B1 (ko) * 2010-11-30 2018-05-03 삼성전자주식회사 멀티 채널 반도체 메모리 장치 및 그를 구비하는 반도체 장치
US20120239874A1 (en) 2011-03-02 2012-09-20 Netlist, Inc. Method and system for resolving interoperability of multiple types of dual in-line memory modules
US8880831B2 (en) 2011-05-12 2014-11-04 Advanced Micro Devices, Inc. Method and apparatus to reduce memory read latency
WO2013071399A1 (en) * 2011-11-14 2013-05-23 Mosaid Technologies Incorporated Package having stacked memory dies with serially connected buffer dies
US9202551B2 (en) * 2012-06-28 2015-12-01 Intel Corporation Flexible command addressing for memory
US20140181415A1 (en) 2012-12-21 2014-06-26 Advanced Micro Devices, Inc. Prefetching functionality on a logic die stacked with memory
US9824004B2 (en) 2013-10-04 2017-11-21 Micron Technology, Inc. Methods and apparatuses for requesting ready status information from a memory
US10108372B2 (en) 2014-01-27 2018-10-23 Micron Technology, Inc. Methods and apparatuses for executing a plurality of queued tasks in a memory
US20150261701A1 (en) 2014-03-14 2015-09-17 International Business Machines Corporation Device table in system memory
US9733847B2 (en) 2014-06-02 2017-08-15 Micron Technology, Inc. Systems and methods for transmitting packets in a scalable memory system protocol
US9684622B2 (en) 2014-06-09 2017-06-20 Micron Technology, Inc. Method and apparatus for controlling access to a common bus by multiple components
US20160283111A1 (en) 2015-03-26 2016-09-29 Intel Corporation Read operations in memory devices
US20170206165A1 (en) 2016-01-14 2017-07-20 Samsung Electronics Co., Ltd. Method for accessing heterogeneous memories and memory module including heterogeneous memories
US10373657B2 (en) * 2016-08-10 2019-08-06 Micron Technology, Inc. Semiconductor layered device with data bus
US10372531B2 (en) 2017-01-05 2019-08-06 Texas Instruments Incorporated Error-correcting code memory
US10592121B2 (en) 2017-09-14 2020-03-17 Samsung Electronics Co., Ltd. Quasi-synchronous protocol for large bandwidth memory systems
US11403241B2 (en) * 2017-10-02 2022-08-02 Micron Technology, Inc. Communicating data with stacked memory dies
US10866900B2 (en) 2017-10-17 2020-12-15 Samsung Electronics Co., Ltd. ISA extension for high-bandwidth memory
US10593380B1 (en) 2017-12-13 2020-03-17 Amazon Technologies, Inc. Performance monitoring for storage-class memory
US10296230B1 (en) 2017-12-22 2019-05-21 Advanced Micro Devices, Inc. Scheduling memory requests with non-uniform latencies
US10489085B2 (en) 2018-02-28 2019-11-26 Micron Technology, Inc. Latency-based scheduling of command processing in data storage devices
US10996885B2 (en) * 2018-03-12 2021-05-04 Samsung Electronics Co., Ltd. High bandwidth memory device and system device having the same
US10534731B2 (en) 2018-03-19 2020-01-14 Micron Technology, Inc. Interface for memory having a cache and multiple independent arrays
US10678478B2 (en) 2018-08-24 2020-06-09 Apple Inc. Ordering memory requests based on access efficiency
US11281589B2 (en) 2018-08-30 2022-03-22 Micron Technology, Inc. Asynchronous forward caching memory systems and methods
US11281585B2 (en) 2018-08-30 2022-03-22 Micron Technology, Inc. Forward caching memory systems and methods
EP4081889A4 (en) 2019-12-26 2023-05-31 Micron Technology, Inc. HOST TECHNIQUES FOR STACKED STORAGE SYSTEMS
KR20220110295A (ko) 2019-12-26 2022-08-05 마이크론 테크놀로지, 인크. 적층 메모리 시스템을 위한 진리표 확장
KR20220116259A (ko) 2019-12-26 2022-08-22 마이크론 테크놀로지, 인크. 적층 메모리 시스템의 비-결정 동작을 위한 기술

Also Published As

Publication number Publication date
WO2021133692A1 (en) 2021-07-01
US20230161508A1 (en) 2023-05-25
CN114930282A (zh) 2022-08-19
US20210200475A1 (en) 2021-07-01
EP4081890A4 (en) 2024-01-17
US11561731B2 (en) 2023-01-24
EP4081890A1 (en) 2022-11-02
US11934705B2 (en) 2024-03-19

Similar Documents

Publication Publication Date Title
US11853578B2 (en) Systems, devices, and methods for data migration
US11782626B2 (en) Systems, devices, techniques, and methods for data migration
US11934705B2 (en) Truth table extension for stacked memory systems
US11455098B2 (en) Host techniques for stacked memory systems
US11709613B2 (en) Data migration for memory operation
US11714714B2 (en) Techniques for non-deterministic operation of a stacked memory system
US11442648B2 (en) Data migration dynamic random access memory
US11907546B2 (en) Memory system and operations of the same