KR101629615B1 - 저전력 저지연 고용량 스토리지 클래스 메모리용 장치 및 방법 - Google Patents

저전력 저지연 고용량 스토리지 클래스 메모리용 장치 및 방법 Download PDF

Info

Publication number
KR101629615B1
KR101629615B1 KR1020150143016A KR20150143016A KR101629615B1 KR 101629615 B1 KR101629615 B1 KR 101629615B1 KR 1020150143016 A KR1020150143016 A KR 1020150143016A KR 20150143016 A KR20150143016 A KR 20150143016A KR 101629615 B1 KR101629615 B1 KR 101629615B1
Authority
KR
South Korea
Prior art keywords
dram
memory
pcm
nand flash
data
Prior art date
Application number
KR1020150143016A
Other languages
English (en)
Other versions
KR20150120919A (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 KR20150120919A publication Critical patent/KR20150120919A/ko
Application granted granted Critical
Publication of KR101629615B1 publication Critical patent/KR101629615B1/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
    • 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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • 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
    • 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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0638Combination of memories, e.g. ROM and RAM such as to permit replacement or supplementing of words in one module by words in another module
    • 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
    • G06F13/1694Configuration of memory controller to different memory types
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/068Hybrid storage device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/005Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor comprising combined but independently operative RAM-ROM, RAM-PROM, RAM-EPROM cells
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2024Rewritable memory not requiring erasing, e.g. resistive or ferroelectric RAM
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/205Hybrid memory, e.g. using both volatile and non-volatile memory
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

동적 랜덤 접속 메모리(DRAM)로 구성되는 직접 연결된 양면 메모리(DIMM, dual in line memory) 카드 및 예를 들어, 상변화 메모리(PCM, phase change memory), 저항형 RAM(ReRAM), 스핀주입 자화 반전 메모리(STT-RAM, spin transfer-torque RAM), 및 NAND 플래시 칩들인 적어도 하나의 비휘발성 메모리를 포함하는, 강화된 고체-상태 스토리지 클래스 메모리(eSCM)를 구현하기 위한 방법 및 스토리지 시스템이 제공된다. eSCM 프로세서는 주로 데이터 세트 사이즈를 기반으로 DRAM 및 적어도 하나의 비휘발성 메모리 사이의 데이터의 선택적 할당을 제어한다.

Description

저전력 저지연 고용량 스토리지 클래스 메모리용 장치 및 방법 {APPARATUS AND METHOD FOR LOW POWER LOW LATENCY HIGH CAPACITY STORAGE CLASS MEMORY}
본 발명은 일반적으로 데이터 스토리지 분야에 관한 것으로, 보다 상세하게는, 데이터 접속에 있어서 사이즈가 크고, 저전력 및 저지연(low latency)을 갖는 스토리지 클래스 메모리를 구현하는 방법 및 스토리지 시스템에 관한 것이다. 상기 스토리지 클래스 메모리는, 주변 장치 연결(PCI, peripheral component interconnect), 또는 PCIe, 또는 직렬 ATA 또는 SATA, 또는 직렬 연결형 SCSI(SAS)와 같은 공통 스토리지 인터페이스들과 같은 컴퓨터 시스템들 내의 메모리 버스 또는 주변 인터페이스들에 직접 연결될 수 있다.
NAND 플래시와 같은 비휘발성 고체 상태 메모리 기술들이 컴퓨터 시스템들 내의 데이터 스토리지에 사용되어 왔다. 컴퓨터 시스템 내에서 사용되는 고체 상태 드라이브(SSD)는 하드 디스크 드라이브(HDD)의 폼 팩터 및 인터페이스 모두를 가질 수 있다. 그럼에도 불구하고, SSD는 HDD에 비하여 보다 빠른 데이터 접속 솔루션을 제공한다. 최근 SSD는 대체 가능한 폼 팩터 및 PCIe 인터페이스를 통한 접속을 제공하도록 발달되어 왔다. 저장된 데이터로의 보다 훨씬 빠른 접속을 제공하는 것을 도모하기 위하여, 그 고체 상태 스토리지 솔루션들을 위해 컴퓨터 시스템 내의 메모리 버스로의 직접적인 연결을 사용하는 것이 제안되어 왔다.
컴퓨터 시스템들 내의 메모리 버스상에서는, 대역폭에서의 성능 요건 및 저지연으로 인하여, 휘발성 동적 랜덤 접속 메모리(DRAM)가 통상적으로 사용된다. 또한, 메모리 내의 데이터는 빈번하게 접속되므로, 현재의 비휘발성 고체 상태 기술의 상대적으로 낮은 내구성을 고려해 볼 때, 비휘발성 메모리 기술들은 초기의 실패에 노출될 수 있었다.
최근, 대역폭의 중요한 갭 및 컴퓨터 시스템들 내의 메모리 및 스토리지 사이에서의 지연을 고려하여, 스토리지 클래스 메모리(SCM)라고 하는 새로운 체계가 제안되고 있다. SCM은 공통 스토리지 체계에 비하여 메모리 요건에 보다 가까운 저지연 및 높은 대역폭의 속성을 가질 것이며, SCM은 또한 스토리지 기술들과 연관된 비휘발성의 속성을 가질 것이다.
유감스럽게도, 상기 스토리지 클래스 메모리 개념은 부분적으로 밖에 실현되지 못했다. 일부 예들에서, SCM은, 기본적으로 데이터 접속에서의 지연에 있어서 일부의 개선점들이 얻어진 통상의 NAND 플래시-기반 고체 상태 스토리지이다. 다른 실현에 있어서, SCM은 주로 상기 실현에 비휘발성이 추가된 메모리 솔루션이다. 후자의 경우에 있어서, SCM의 용량이 절충되었거나, SCM 비용이 상대적으로 좋지 못했다.
본 발명의 양태는 용량을 희생시키지 않고 저전력, 고성능, 저지연 및 비휘발성을 제공하여 SCM에 요구되는 속성을 실현시킬 수 있는 스토리지 클래스 메모리(SCM)용 장치 및 방법을 제공하는 데에 있다.
본 발명의 양태는, 강화된 고체-상태 스토리지 사용을 구현하는 방법 및 스토리지 시스템을 제공하는 데에 있다. 본 발명의 다른 중요한 양태들은, 실질적으로 부정적인 효과가 없으면서 종래의 방식들의 불리한 점들 중 일부를 극복할 수 있는 그러한 방법 및 스토리지 시스템을 제공하는 데에 있다.
간단하게 말해서, 동적 랜덤 접속 메모리(DRAM)로 구성되는 직접 연결된 양면 메모리(DIMM, dual in line memory) 카드 및 예를 들어, 상변화 메모리(PCM, phase change memory), 저항형 RAM(ReRAM), 스핀주입 자화 반전 메모리(STT-RAM, spin-transfer-torque RAM), 및 NAND 플래시 칩들과 같은 적어도 하나의 비휘발성 메모리를 포함하는, 강화된 고체-상태 스토리지 클래스 메모리(eSCM)를 구현하기 위한 방법 및 스토리지 시스템이 제공된다. eSCM 프로세서는 데이터 세트 사이즈를 기반으로 DRAM 및 적어도 하나의 비휘발성 메모리 사이의 이동 데이터를 선택적으로 제어한다.
상기한 그리고 다른 목적들 및 이점들과 함께 본 발명은 도면들에 도시된 본 발명의 실시예들의 하기 상세한 설명으로부터 최상으로 이해될 수 있다.
도 1은 본 발명의 실시예에 따른 강화된 고체-상태 스토리지 성능을 구현하는 강화된 고체-상태 스토리지 클래스 메모리(eSCM)를 대표하는 블럭도이다.
도 2a는 본 발명의 실시예에 따른 도 1의 강화된 고체-상태 스토리지 클래스 메모리를 포함하는 컴퓨터 시스템을 대표하는 블럭도이다.
도 2b는 호스트 CPU와 클라우드 어플리케이션들을 지지하는 본 실시예의 간섭 없이 서로 다른 컴퓨터 시스템 내의 SCM이 데이터를 교환할 수 있는 본 발명의 실시예에 따른 도 1의 강화된 고체-상태 스토리지 클래스 메모리를 각각 포함하는 컴퓨터 시스템들을 대표하는 블럭도이다.
도 3a 및 도 3b는 본 발명의 실시예에 따른 도 1의 강화된 고체-상태 스토리지 클래스 메모리 및 강화된 고체-상태 스토리지 사용 성능을 구현하는 도 2의 HDD/SSD의 데이터 세트 사이즈들을 기반으로 하는 데이터 위치의 예를 개략적으로 도시한다.
도 4a, 도 4b 및 도 4c는 본 발명의 실시예에 따른 강화된 고체-상태 스토리지 사용 성능을 구현하는 도 1의 강화된 고체-상태 스토리지 클래스 메모리의 동작들의 예를 도시하는 흐름도들이다.
도 5는 본 발명의 실시예에 따른 강화된 고체-상태 스토리지 성능을 구현하는 강화된 고체-상태 스토리지 클래스 메모리의 보다 상세한 다른 예를 개략적으로 도시한다.
도 6a, 도 6b, 및 도 6c는 본 발명의 실시예에 따른 스토리지 클래스 메모리 내에서 지연을 감추는 과정을 구현하는 도 1의 강화된 고체-상태 스토리지 클래스 메모리의 동작들의 예를 개략적으로 도시하는 차트들이다.
다수의 컴퓨터 시스템들 내에서, 메인 메모리는 통상적으로 동적 랜덤 접속 메모리(DRAM)를 포함한다. DRAM은 일반적으로 고가이며, 요구되는 메모리 재생의 결과로 높은 전력 손실을 가진다.
저비용, 저전력 및 고용량 스토리지 시스템을 포함하는 강화된 고체-상태 스토리지 성능을 구현하는 효과적이고 효율적인 방법 및 스토리지 시스템에 대한 요구가 존재한다.
하기의 본 발명의 실시예들의 상세한 설명에 있어서, 본 발명이 실시될 수 있는 실시예들을 도시하는 첨부된 도면들에 대하여 기준이 정해진다. 본 발명의 범위를 벗어나지 않고 다른 실시예들이 활용될 수 있고 구조적으로 변경될 수 있음이 이해되어야 할 것이다.
여기에서 사용되는 용어는 단지 특정의 실시예들을 설명하기 위한 것뿐이며, 본 발명을 한정하기 위해 의도된 것이 아니다. 문맥에서 다르게 명확하게 지시하지 않는 한, 여기에서 사용되는 바와 같은, 단수형태 "a", "an" 및 "상기"는 또한 복수의 형태들을 포함하는 것으로 의도된다. 또한, 본 명세서에서 사용되는 용어들 "포함한다" 및/또는 "포함하는"은 기재된 특징들, 정수들, 단계들, 동작들, 요소들, 및/또는 부품들의 존재를 구체화하며, 하나 이상의 특징들, 정수들, 단계들, 동작들, 요소들, 부품들, 및/또는 이들의 그룹들의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 할 것이다.
본 발명의 실시예들의 특징들에 따르면, 동적 랜덤 접속 메모리(DRAM)로 구성되는 직접 연결된 양면 메모리(DIMM, dual in line memory) 카드 및 상변화 메모리(PCM, phase change memory), 저항형 RAM(ReRAM), 스핀주입 자화 반전 메모리(STT-RAM, spin-transfer-torque RAM), 및 NAND 플래시 칩들과 같은 적어도 하나의 비휘발성 메모리를 포함하는, 강화된 고체-상태 스토리지 클래스 메모리를 구현하기 위한 방법 및 스토리지 시스템이 제공된다.
일 실시예에 기재된 저전력, 저지연, 고용량, 강화된 스토리지 클래스 메모리를 위한 장치 및 방법은, 다수의 고체 상태 메모리 기술들로 구성되는 직접 연결된 양면 메모리(DIMM) 카드와, 전력 중단에 대한 데이터 보호, 저전력 동작 및 데이터 접속에 있어서의 저지연을 제공하는 목적을 가지는 스토리지 데이터를 관리하는 방법을 이용한다. 이러한 강화된 스토리지 클래스 메모리에 있어서, 단지 예시적 목적으로, 동적 랜덤 접속 메모리(DRAM), 상변화 메모리(PCM), 저항형 RAM(ReRAM), 스핀주입 자화 반전 메모리(STT-RAM), 및 NAND 플래시 칩들이, 구현의 예로서 제공된다. 본 기술분야에서 통상의 기술을 가진 자는, 본 발명의 사상을 벗어나지 않는 서로 다른 메모리 기술들을 사용하는 예에 있어서의 변경을 쉽게 알 수 있을 것이다.
다른 실시예에 있어서, 강화된 스토리지 클래스 메모리는 상기 메모리 버스에 직접 연결된 상태로 사용되는 eSCM의 예시에서 상기 사용된 것과 다른 컴퓨터 시스템에 대하여 다른 인터페이스들을 사용할 수 있다.
서로 다른 고체 상태 메모리 기술들은 최종적인 eSCM 솔루션에 대하여 서로 다른 이득들을 제공한다. 본 발명의 eSCM의 실시예들은 그 서로 다른 기술들을 하이브리드 방식으로 활용함으로써 최종적인 솔루션을 개선할 수 있다. 하나의 예시적인 실시예에 있어서, 큰 용량 및 저비용이 NAND 플래시를 사용하는 것에 의하여 달성된다. 상변화 메모리와 같은 기타의 고체 상태 메모리 기술들이 하이브리드 솔루션에 추가됨으로써, 저지연 접속 및 비휘발성을 제공한다. 데이터의 매우 빈번한 겹쳐 쓰기(overwriting)가 상기 eSCM 내에서의 DRAM의 실질적인 존재에 의하여 지지된다.
순수한 DRAM 솔루션에 대하여 비-DRAM SCM 메모리 셀들 내에서 데이터를 재생할 필요가 없으므로, 상기 eSCM의 비휘발성 속성에 의하여 저전력이 달성된다.
상기 eSCM 내에서의 특정 알고리즘에 의하여 상기 메모리에 커밋이 수행된 데이터 세트 사이즈에 따른 서로 다른 고체 상태 기술들 사이에서 데이터를 분배하는 것에 의하여 저지연이 달성된다. 이는 상기 eSCM 데이터 트래픽의 통계의 이점을 취하는 동적 전략이다.
이러한 방법 및 스토리지 시스템에 의하여 제공되는 본 발명의 이러한 동적 전략이, 실질적으로 부정적인 효과가 없이 종래 기술 방식의 단점들 중 일부를 극복할 수 있는 저지연 목적들을 달성한다는 것을 본 기술분야에서 통상의 기술을 가진 자가 알 수 있을 것이다.
본 발명의 실시예들의 특징들에 따르면, 예를 들면, 동적 랜덤 접속 메모리(DRAM)로 구성되는 직접 연결된 양면 메모리(DIMM) 카드, 상변화 메모리(PCM), 저항형 RAM(ReRAM), 스핀주입 자화 반전 메모리(STT-RAM), 및 NAND 플래시 칩들을 포함하는, 강화된 고체-상태 스토리지 클래스 메모리를 구현하기 위한 방법 및 스토리지 시스템이 제공된다.
이제 도면들을 참조하면, 도 1에서, 본 발명의 실시예에 따른, 일반적으로 도면 부호 100으로 지정된, 강화된 고체-상태 스토리지 클래스 메모리를 구현하는 고체-상태 스토리지 시스템의 일례가 도시되어 있다. 고체-상태 스토리지 시스템(100)은 직접 연결된 양면 메모리(DIMM) 카드(102)상에 구성된 고체-상태 스토리지 장치들을 포함한다. 강화된 고체-상태 스토리지 클래스 메모리(eSCM) 시스템(100)은 저전력, 저비용의 큰 메모리 공간, 예를 들어, 수백 기가바이트(GB)의 메모리 공간을 가능하게 한다.
강화된 고체-상태 스토리지 클래스 메모리(eSCM) 시스템(100)은, 예를 들면, 상기 DIMM 카드(102)상에 구성된 휘발성 데이터 스토리지 동적 랜덤 접속 메모리(DRAM)(104), 상변화 메모리(PCM)(105), 저항형 RAM(ReRAM)(106), 스핀주입 자화 반전 메모리(STT-RAM)(107), 및 NAND 플래시 메모리(108)를 포함하는 비휘발성 데이터 스토리지 장치들을 포함한다. 내장된(embedded) 프로세싱 유닛과 같은 eSCM 프로세싱 유닛(110)은 상기 DIMM 카드(102)상에 DRAM(104), PCM(105), ReRAM(106), STT-RAM(107), 및 NAND 플래시 메모리(108)를 구비한다. 상기 eSCM 프로세싱 유닛 또는 eSCM 제어기(110)는 강화된 지연 및 스루풋 성능을 가능하게 하는 DRAM(104), PCM(105), ReRAM(106), STT-RAM(107), 및 NAND 플래시 메모리(108) 사이에서 데이터를 선택적으로 이동시킨다. eSCM 시스템(100)은 데이터 세트 활성도 검출(activity detection) 및 범주화(categorization)를 위한 스마트 결정 알고리즘들을 구현하는 제어 코드(112)를 포함한다. eSCM 시스템(100)은 상기 eSCM 프로세서 유닛(110)에 결합된 메모리 전기 인터페이스 회로들(114)을 포함한다.
도 2a를 또한 참조하면, 본 발명의 일 실시예에 따른 도 1의 상기 eSCM 시스템(100)을 포함하는 프로세서 또는 컴퓨터 시스템의 일례가 도시되어 있다. 시스템(200)은 중앙 프로세서 유닛(CPU)(202) 및 복수의 캐시 메모리L1(204), L2(206), L3(208)를 포함한다. 시스템(200)은 메모리 제어기(212)와, 상기 시스템(200) 내에서 하드웨어 장치들(미도시)을 연결하는 SDD(shingled disk drive) 또는 주변 장치 연결(PCI) 컴퓨터 버스를 포함하는 고체 상태 드라이브 (SSD) 또는 하드 디스크 드라이브(HDD)와 같은 직접 접속 스토리지 장치들(DASD)와 같은 스토리지(214)를 포함한다. 일반적인 목적으로서, CPU(202)는 시스템 버스(220)와 같은 인터페이스(220)에 의하여 상기 eSCM(100)에 또한 연결되도록 도시된다. 시스템(200)에서, DRAM(104)의 체계는 상기 eSCM(100)에 포함되며, 상기 eSCM(100)에 존재하는 고체 상태 메모리 기술들의 하이브리드 집합 중의 데이터 이동의 관리는, 예를 들면, 아래에 설명된 바와 같이, 상기 eSCM 프로세서(110) 그 자체에 수용된 특정 알고리즘들에 의하여 구동된다. eSCM(100)는 상기 호스트 CPU(202)의 간섭 없이 인터페이스(260)를 가진다. 본 기술분야에서 통상의 기술을 가진 자는 상기 eSCM가 상기 호스트 CPU의 중재 없이 eSCM(100) 및 스토리지(214) 사이에서 데이터를 전달할 수 있다는 것을 알 수 있을 것이다.
도 2b를 또한 참조하면, 상기 호스트 CPU(202)의 중재 없이, 인터페이스(250)에서 지시된 바와 같이, 서로 다른 컴퓨터 시스템들(200) 내의 상기 eSCM(100)이 데이터를 교환할 수 있는 본 발명의 실시예에 따른 도 1의 강화된 스토리지 클래스 메모리(100)를 각각 포함하는 도 2a의 컴퓨터 시스템(200) 한 쌍의 일례가 도시되어 있다. 본 기술분야에서 통상의 기술을 가진 자는, 상기 호스트 CPU의 중재 없이 컴퓨터 시스템들 사이에서 데이터를 전달할 수 있는 상기 eSCM의 능력은 둘 이상의 많은 컴퓨터 시스템들에 확장될 수 있고, 클라우드 어플리케이션들에 사용되는 바와 같이 컴퓨터 시스템들의 큰 조립체의 효율적인 데이터 이동을 지지하는 데에 사용될 수 있다는 것을 알 수 있을 것이다.
본 발명의 실시예들의 특징들에 따르면, eSCM 프로세서(110)는 상기 양면 메모리 모듈(DIMM) 소켓 내의 표준 메인 메모리 DRAM 모듈로서 상기 메모리 제어기 또는 CPU(202)와 통신한다. 상기 메모리 버스(220)는 240개 라인들을 가지는 표준 DRAM 버스 또는 보다 좁은 완전히 버퍼링된 고속 DRAM 버스일 수 있다. 양 경우에 있어서, 상기 버스 내의 모든 신호들은, 미리 정의된 알고리즘들에 따라 데이터를 DRAM(104), PCM(105), ReRAM(106), STT-RAM(107), 또는 NAND 플래시(108)로 커밋을 수행하는 것을 결정하는 상기 eSCM 프로세서(110)로 전송된다.
본 발명의 원리들이 특정 버스 배열에 한정되지 않으며, 기타 여러 가지의 버스 구성들이 본 발명의 사상을 벗어나지 않고 가능하다는 것으로 이해되어야 할 것이다.
본 발명의 실시예들의 특징들에 따르면, 제어 코드(112)는 상기 eSCM 시스템(100)의 eSCM 프로세서(110)가 그 자체의 지능형(intelligent) 데이터 감지 알고리즘들을 이용할 수 있도록 하여 언제 데이터가 DRAM(104), PCM(105), 또는 NAND 플래시(108)로 커밋이 수행되어야 하는 지를 판단한다. 선택적으로, 상기 eSCM 프로세서(110)는 상기 호스트 CPU(202)로 조정할 수 있으며, DRAM(104), PCM(105), ReRAM(106), STT-RAM(107), 또는 NAND 플래시(108)에 대해 이용 가능한 상기 기술들 또는 메모리 층 중 하나로 커밋이 수행되는 특정 데이터 세트를 추천하는 특정 데이터 요건들을 상기 CPU(202)로부터 학습할 수 있다.
본 발명의 실시예들의 특징들에 따르면, 다른 신기술에서, 데이터 세트들은 데이터 세트 사이즈들에 따라 서로 다른 고체 상태 메모리 기술들로 커밋이 수행된다. 그것은, 데이터가 재사용의 빈도와 공간 및 위치 근접성의 상관관계에 따른 서로 다른 메모리(또는 스토리지) 체계로 커밋이 수행되는 통상의 체계적인 메모리 개념들로부터 벗어난 것이다. 상기 eSCM 시스템(100)의 메모리 제어 코드(112)는, 호스트 CPU(202)를 이용한 특징들의 조정, 검출, 및 범주화를 허용한다. 예를 들면, 본 발명의 제어 코드(112)는 선택적으로 상기 호스트 시스템(200)의 상기 CPU(202)가, 이러한 특징들의 조합 중에서, 캐시 또는 쓰기 버퍼를 위한 DRAM(104)의 사이즈, 어떤 데이터 세트가 PCM(105) 또는 NAND 플래시(108)로 곧바로 커밋이 수행되어야 하는지, 및 판독 동작 중 PCM(105) 또는 NAND 플래시(108)로부터 어떤 주소를 직접적으로 불러 와야 하는지를 결정하게 한다.
eSCM 시스템(100) 및 시스템(200)이 본 발명을 이해하는 데에 충분한 단순화된 형태로 도시되어 있다. 본 발명의 원리들은 도시된 eSCM 시스템(100) 및 도시된 시스템(200)에 한정되지 않는다는 것으로 이해되어야 할 것이다. 상기 도시된 시스템(200)이 건축적인 또는 기능적인 제한들을 암시하는 것으로 의도되지 않는다. 본 발명은, 본 발명의 실시예에 따라, 다양한 하드웨어 구현예들 및 시스템들과, 다양한 기타 내부 하드웨어 장치들과 함께 사용될 수 있다.
본 발명의 실시예들의 특징들에 따르면, 상기 eSCM 프로세서(110)는 강화된 지연 및 스루풋 성능을 가능하게 하는 DRAM(104), PCM(105), ReRAM(106), STT-RAM(107), 및 NAND 플래시 메모리(108) 사이에서 데이터를 선택적으로 이동시킨다. 세 개의 기술을 사용하여, 예를 들면, 본 발명의 DRAM(104), PCM(105), 및 NAND 플래시(108)를 포함하는 직접 연결된 DIMM 카드(102)는, 큰 데이터 세트가 HDD 또는 SSD와 같은 스토리지(214) 내에서만 이용 가능한 경우에 발생된 지연과 비교하여, 강화된 지연 및 스루풋 성능을 제공한다. eSCM(100)는 메인 메모리 클래스를 가지는 저지연 스토리지이다.
본 발명의 실시예들의 특징들에 따르면, 저비용 NAND 플래시 메모리(108)의 광범위한 사용에 의하여 상기 eSCM 시스템(100)의 비용을 줄일 수 있다. PCM(105) 및 NAND 플래시 메모리(108)을 포함하는 비휘발성 메모리 공간의 광범위한 사용 및 DRAM(104)을 포함하는 사용되지 않은 메모리 칩들의 선택적인 전원 차단에 의하여 저전력이 달성된다. DRAM 층(104)이 양쪽의 다른 층들에 대한 캐시로서 보다는 쓰기 버퍼로서 동작할 수 있도록 하는 PCM(105) 및 NAND 플래시(108)에 의하여 극히 큰 메모리 공간이 유리하게 규정된다. 판독 동작에서의 데이터는, DRAM(104)에서 이용 가능하지 않을 때, PCM(105) 또는 NAND 플래시(108)로부터 직접적으로 검색될 수 있다. 그러므로, 일 실시예에 있어서, 상기 eSCM(100) 내의 상기 데이터의 단지 하나의 복사본이 존재할 수 있으며, 이에 따라, 상기 고체 상태 기술들이 캐시로서 사용되지 않는다.
도 3a를 참조하면, 본 발명의 다른 신기술에 있어서, 일반적으로 도면 부호 300으로 지정된 상기 eSCM(100)의 동작들의 예는 데이터 세트들이 서로 다른 메모리 기술들을 가로지르게 하는 것을 포함한다. 도 3a에서, 상기 eSCM(100)는 시스템(200)의 스토리지(214)와 함께 도시된다. 도 3a에서, 데이터 세트 사이즈들을 기반으로 하는 데이터 위치들의 예가 상기 eSCM(100)의 DRAM(104), PCM(105), 및 NAND 플래시(108)와 함께 도시된다. 301로 표시된 제1 데이터 세트에서처럼, 작은 데이터 세트들이 DRAM 내에 완전하게 위치된다. 이후에 단일 세트로서 판독될 것으로 예상되는 점진적인 큰 데이터 세트가 다른 고체 상태 메모리 기술들에 완전하게 저장되거나 서로 다른 고체 상태 메모리 기술들에 걸쳐 저장된다. 302 및 304로 표시된 제2 데이터 세트는 각각 상기 DRAM(104) 및 PCM(105)에 저장된다. 즉, 제2 데이터 세트(302, 304)는 DRAM(104)에 저장된 그 데이터의 부분 및 PCM(105)에 저장된 그 데이터의 부분을 가지므로, 서로 다른 두 개의 고체 상태 메모리 기술들을 따라 가로지르는 데이터 세트이다. 306, 308, 310으로 표시된 제3 데이터 세트는 각각 상기 DRAM(104)에 일부분, PCM(105)에 일부분, 및 NAND 플래시(108)에 일부분이 저장된다. 312, 314으로 표시된 제4 데이터 세트는 각각 상기 PCM(105)에 일부분, 및 NAND 플래시(108)에 일부분이 저장된다.
도 3b를 또한 참조하면, 본 발명의 다른 신기술에 있어서, 일반적으로 도면 부호 318으로 지정된 상기 eSCM(100)의 동작들의 예는, 데이터 세트들을 시스템(200)의 상기 eSCM(100) 및 상기 HDD/SSD(214)의 서로 다른 메모리 기술들을 횡단하여 가로지르게 하는 것을 포함한다. 320, 321, 322, 323으로 표시된 제5 데이터 세트는 각각 상기 DRAM(104)에 일부분, PCM(106)에 일부분, NAND 플래시(108)에 일부분, 및 HDD/SSD(214)에 일부분이 저장된다. 324, 325, 326으로 표시된 제6 데이터 세트는 각각 PCM(106)에 일부분, NAND 플래시(108)에 일부분, 및 HDD/SSD(214)에 일부분이 저장된다. 327, 328으로 표시된 제7 데이터 세트는 각각 NAND 플래시(108)에 일부분, 및 HDD/SSD(214)에 일부분이 저장된다. 329로 표시된 추가적인 데이터 세트는 상기 NAND 플래시(108)에 저장되고, 330으로 표시된 데이터 세트는 상기 HDD/SSD(214)에 저장된다. 이러한 신기술은, 정해진 고체 상태 메모리 기술의 보다 높은 판독 지연이 보다 낮은 판독 지연을 가지는 다른 고체 상태 메모리 기술의 동작에 의하여 부분적으로 또는 완전하게 가려지는 본 발명의 다른 신기술을 지지하는 데에 사용될 수 있다는 것으로 이해되어야 할 것이다.
이제 도 4a, 도 4b, 및 도 4c를 참조하면, 본 발명의 실시예들에 따른 강화된 고체-상태 스토리지 사용 성능을 구현하는 상기 eSCM(100)의 동작들의 예를 나타내는 흐름도들이 도시된다.
도 4a에서, 예를 들면, CPU(110)에 의하여 수행되는 동작들의 예가 블럭(400)에 나타낸 바와 같이 시작한다. eSCM CPU 또는 eSCM 제어기(110)는 작업 부하 인식을 수행하고, 블럭(402)에 나타낸 바와 같이, 메모리 인터페이스만을 상기 컴퓨터 시스템(200)에 제공하여DRAM만을 사용하여 컴퓨터 시스템들과의 완전한 소프트웨어 호환성뿐만 아니라 완전한 하드웨어 호환성을 허용한다. 그러므로, 실질적으로 모든 기존 시스템들 내에 있는 기존의 DIMM들은 본 발명의 실시예들에 따른 새로운 eSCM(100)으로 교체될 수 있다. 블럭(404)에 나타낸 바와 같이, eSCM 제어기(110)는, 개선된 지연 및 스루풋 성능 특성들을 달성하는 데에 사용되는 데이터 타입들을 가지는 DRAM(104), PCM(105), ReRAM(106), STT-RAM(107), 및 NAND 플래시(108) 사이에서 데이터를 선택적으로 이동시킨다.
도 4b에서, 본 발명의 실시예들에 따르면, 예를 들면, eSCM 제어기(110) 의하여 수행되는 동작들의 예는, 상기 NAND 플래시(108)에 계속하여 데이터를 쓰되, 초기에 PCM(105)에 데이터를 절대로 쓰지 않고, 블럭(410)에 표시된 바와 같이, 모든 쓰기는 DRAM 내에서 버퍼링되고, 상기 NAND 플래시로 전송된다. 이러한 전략은, 본 발명의 실시예에서, PCM과는 대조적인 NAND 플래시에서의 짧은 쓰기 프로세스 시간 그리고 또한 PCM에 대하여 상대적인 NAND 플래시 내에서 가능한 보다 큰 용량으로 더욱 평행으로 접속하기 위한 디자인 결정의 가능성을 모두 활용한다. 블럭(412)에 나타낸 바와 같이, 데이터는 데이터 세트 사이즈들에 따라 DRAM(104), PCM(105), ReRAM(106), STT-RAM(107), 및 NAND 플래시(108) 사이에서 선택적으로 이동된다. 블럭(414)에 나타낸 바와 같이, 판독은 DRAM(104), PCM(105), ReRAM(106), STT-RAM(107), 및 NAND 플래시(108)을 포함하는 상기 메모리 기술들 중 어느 하나로부터 데이터를 검색한다. 이는 본 발명의 일 실시예에서 이러한 고체 상태 메모리 기술들이 다른 캐시로서 사용되지 않는다는 것을 표시하는 다른 상세이다. 그럼에도 불구하고, 본 기술분야에서 통상의 기술을 가진 자는 본 발명 내에서 설명된 전략에 더하여 캐시 전략을 추가하는 것은 본 발명의 사상을 벗어나지 않고 간단하다는 것을 쉽게 알 수 있을 것이다.
도 4c에서, 예를 들면, eSCM 제어기(110)에 의하여 수행되는 동작들의 예는, 데이터 스토리지 및 쓰기 버퍼에 사용하기 위한 DRAM 사이즈를 확인하는 것을 포함하고, 블럭(420)에 나타낸 바와 같이, 스마트 결정 알고리즘은 데이터 세트 활성도 검출 및 범주화에 사용된다. 블럭(422)에 나타낸 바와 같이, 큰 DRAM 세트들을 재생하는 대신 저전력을 위해 비휘발성을 활용하여, 데이터를 주로 비휘발성 PCM(105), 및 NAND 플래시(108)에 선택적으로 할당한다. 배열 디자인에 의한 PCM(105)은 저밀도, 저지연, 및 보다 작은 사이즈의 데이터 세트들에 맞게 조정된다. 배열 디자인에 의한 NAND 플래시(108)는 고밀도, 상대적으로 높은 지연, 및 큰 사이즈의 데이터 세트들에 맞게 조정된다. 쓰기 빈도가 높은 보다 작은 데이터 세트들은 바람직하게는 그로부터 보다 작은 데이터 세트들이 최소 지연으로 검색될 수 있는 DRAM(104) 그 자체로 커밋이 수행된다.
다른 중요한 신기술로서, 블럭(424)에 나타낸 바와 같이, 데이터 세트 사이즈들에 따라, 정해진 데이터 세트가 DRAM(104), PCM(105), ReRAM(106), STT-RAM(107), 및 NAND 플래시(108)를 포함하는 서로 다른 고체-상태 기술들을 선택적으로 횡단하여 가로지르고, 선택적으로 HDD/SSD(204)를 더 횡단한다. 이는 아래에 설명되는 바와 같이, 일부의 데이터 세트들에 있어서, PCM(105) 또는 NAND 플래시(108)의 지연들을 감추는 것을 허용한다.
이제 도 5를 참조하면, 일반적으로 도면 부호 500으로 지정된, 본 발명의 실시예들에 따른 강화된 고체-상태 강화된 스토리지 클래스 메모리(eSCM)를 구현하는 고체-상태 스토리지 시스템의 보다 상세한 다른 예가 개략적으로 도시되어 있다. 상기 예에서, eSCM(500), ReRAM, 및 STT-RAM는 도시되지 않는다. 본 실시예에 있어서, NAND 플래시는, 단일 레벨(SLC) 및 다수 레벨 셀(MLC) 기술들로 더 구분된다. 그러므로, 고체-상태 강화된 스토리지 클래스 메모리(eSCM) 시스템(500)은, DRAM 칩들(502)을 포함하는 DRAM(104), PCM 칩들(504)을 포함하는 PCM(105), 및 NAND 플래시 단일 레벨 셀(SLC) 칩들(506) 및 NAND 플래시 다수 레벨 셀(MLC) 칩들(508)의 조합을 포함하는 NAND 플래시(108)를 포함한다. 고체-상태 스토리지 시스템 eSCM(500)은, 상기 DRAM 칩들(502), PCM 칩들(504), 및 NAND 플래시 SLC 칩들(506) 및 NAND 플래시 MLC 칩들(508)과 함께 프로세서(510) 및 복수의 버스 버퍼들(1-N, 512)을 포함한다.
본 발명의 실시예들의 특징들에 따르면, 상기 DRAM 칩들(502), PCM 칩들(504), 및 NAND 플래시 SLC 칩들(506) 및 NAND 플래시 MLC 칩들(508)과 함께 버스 버퍼들(1-N, 512)을 사용하여 버퍼링 및 평행화함으로써, 대역폭이 eSCM 프로세서(510)에 의하여 다루어진다.
사이즈에 따라, 데이터 세트들이 서로 다른 고체 상태 메모리 기술들을 가로지를 수 있다는 것을 상기하면, 하나의 고체 상태 메모리 기술로부터의 지연이 또 다른 보다 낮은 지연 고체 상태 기술에 의하여 감추어질 수 있거나 부분적으로 감추어질 수 있다. 이제 도 6a, 도 6b, 및 도 6c를 참조하면, 본 발명의 실시예들에 따른 강화된 고체-상태 스토리지 사용 성능을 구현하는 상기 eSCM 시스템(100) 또는 고체-상태 스토리지 시스템 eSCM(500)의 판독 동작들의 예를 개략적으로 나타내는 차트들이 도시된다. 상기한 바와 같이, 강화된 고체-상태 스토리지 지연 성능을 구현하기 위하여, 데이터를 데이터 세트 사이즈들에 따라 DRAM(108), PCM(105), 및 NAND 플래시(104) 및 DRAM 칩들(502), PCM 칩들(504), 및 NAND 플래시 SLC 칩들(506) 및 NAND 플래시 MLC 칩들(508) 사이에서 이동시킨다.
도 6a에서는, 일반적으로 도면 부호 600으로 지정된 판독 동작들의 예는, 예를 들어, DRAM(104) 및 PCM(105)로부터 작은 덩어리의 데이터 판독 플로우(602)로 eSCM 제어기(110)에 의하여 수행된다. 예를 들면, 작은 요청들은 때때로 32 바이트(B) 또는 64 바이트(B) 만큼 작으나, 평균 메인 메모리 접속들은 평균 16 킬로바이트(KB)의 덩어리를 얻는 경향이 있다. 본 예에 있어서, DRAM(104) 및 PCM(105) 기술들을 가로지르는 데이터 세트가 판독된다. 상기 SCM은 DRAM(104) 내에 존재하는 요청된 데이터의 일부를 먼저 전송하는 것에 의하여 상기 판독 요청에 응답한다. 이에 병행하여, 상기 호스트로부터 감추어지고, 상기 SCM은 PCM 105으로부터 남은 데이터를 가져오는 것을 시작한다. 그러므로, 상기 PCM(105) 기술로부터의 지연은, DRAM(104) 접속에 있어서의 지연 및 그 데이터를 DRAM(104)로부터 상기 호스트(202)로 전달하는데 소요되는 시간에 의하여 감추어지거나 부분적으로 감추어진다. DRAM(104) 및 PCM(105) 내에서의 상기 데이터 세트의 부분들의 사이즈, 이러한 두 개의 기술들의 지연 및 상기 버스의 속도에 따라, 상기 PCM 접속으로부터의 더 높은 지연이 상기 호스트(202)에 의하여 완전히 감추어져 눈에 띄지 않게 될 수 있다. 그러므로, 이러한 솔루션은, 모든 데이터 세트가 DRAM 내에 있는 것처럼 동작하지만, 이러한 솔루션의 비용은, PCM 및 DRAM의 상대적인 양에 비례하여 낮아지게 된다. 또한, 전력 손실의 경우, DRAM 내에 존재하는 데이터의 일부만이 상기 eSCM 내의 비휘발성 메모리에 저장될 필요가 있다. 도 6b에서, 일반적으로 도면 부호 610으로 지정된 판독 동작들의 예는, 예를 들어, DRAM(108), PCM(105), 및 NAND 플래시(104)로부터 중간 사이즈의 덩어리들의 데이터 판독 플로우(612)로 eSCM 제어기(110)에 의하여 수행된다. 이와 같은 경우, 상기 데이터 세트는 세 개의 서로 다른 기술들을 가로지르기 위해 충분히 크다. 상기 데이터의 일부가 순차적으로 판독되어 상기 최하측 지연 메모리 기술들로부터 상기 호스트로 전송됨에 따라, 또한 요청된 나머지 메모리 기술들로부터의 데이터가 불러와진다. 상기 메모리 기술들 각각에 할당된 요청된 데이터의 부분들의 사이즈, 서로 다른 고체 상태 메모리 기술들의 실제 지연, 및 상기 버스의 속도에 따라, 상기 PCM(105) 및 NAND 플래시(108)의 접속들로부터의 지연이 상기 호스트에 의하여 완전히 감추어져 눈에 띄지 않게 될 수 있다.
본 기술분야에서 통상의 기술을 가진 자는, 다른 메모리 기술들이 상기 eSCM에서 사용될 수 있고, 여기에서 설명되는 동일한 발명으로부터 이익을 얻는다는 것을 쉽게 알 수 있을 것이다. 본 기술분야에서 통상의 기술을 가진 자는 또한 상기 데이터 세트가 가로지르는 각 메모리 기술에서 상기 데이터 세트 부분들의 사이즈는 사용된 고체 상태 메모리 기술들의 실제 지연들과 상기 버스의 속도의 함수라는 것을 알 것이다. 일 실시예에 있어서, 데이터 세트가 얼마나 중요한 가에 따라 주의 깊은 디자인이 부분적 또는 전체 감춰진 지연들을 제공할 수 있다.
도 6c에서, 일반적으로 도면 부호 620으로 지정된 판독 동작들의 예는, 예를 들어, NAND 플래시(108)로부터 매우 긴 덩어리들의 데이터 판독 플로우(622)로 eSCM 제어기(110)에 의하여 수행된다. 예를 들면, 320 KB 이상의 임의의 요청이 NAND 플래시(108)를 판독에 관여하도록 할 것이다. 이러한 매우 큰 사이즈의 데이터 세트에서, NAND 플래시(108)로부터의 지연은 그 자체는 덜 중요하며, 상기 SCM은 NAND 플래시(108)에 전체 데이터 세트를 할당할 수 있다.
본 기술분야에서 통상의 기술을 가진 자는, 주로 데이터 세트 사이즈에 따라 데이터를 할당하는 전략은, 특정 사이즈의 많은 양의 데이터가 특정 고체 상태 메모리 기술에서 이용 가능한 메모리 공간에 맞지 않는 경우, 부수적인 전략들과 함께 사용될 수 있음을 쉽게 알 수 있을 것이다. 이와 같은 경우, 데이터 세트의 사용 빈도를 기반으로 하는 이차적인 판단 기준이 어떤 데이터 세트가 상기 스토리지 내의 보다 낮은 지연 위치에서 전체적으로 또는 부분적으로 위치될 것인가를 결정하는 데에 사용될 수 있다(데이터 세트가 적어도 하나의 고체 상태 기술을 가로지르는 경우).
본 기술분야에서 통상의 지식을 가진 자는, 본 발명의 데이터를 할당하는 전략은, 정해진 데이터 세트가 DRAM(104), PCM(105), ReRAM(106), STT-RAM(107), 및 NAND 플래시(108)를 포함하는 서로 다른 고체-상태 기술들을 선택적으로 횡단하여 가로지르고, HDD/SSD(204)을 선택적으로 더 횡단하는 것을 포함하는 것으로 쉽게 알 수 있을 것이다.
도면에 도시된 본 발명의 실시예들의 상세들을 참조하여 본 발명이 설명되었으나, 이러한 상세들은 첨부된 특허청구범위에 청구된 바와 같은 본 발명의 범위를 한정하는 것으로 의도되지 않는다.

Claims (30)

  1. 동적 랜덤 접속 메모리(DRAM)와 적어도 하나의 비휘발성 메모리로 구성되는 직접 연결 양면 메모리(DIMM) 카드로서, 상기 적어도 하나의 비휘발성 메모리는 상변화 메모리(PCM) 및 NAND 플래시 메모리를 포함하는, DIMM 카드를 제공하는 단계;
    상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리를 가지는 상기 DIMM 카드 상에 eSCM 프로세서를 제공하는 단계; 및
    상기 eSCM 프로세서를 사용하여, 강화된 지연 및 스루풋 성능을 가능하게 하기 위해, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계를 포함하고,
    상기 강화된 지연 및 스루풋 성능을 가능하게 하기 위해, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계는, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 데이터 세트 사이즈들에 기초하여 선택적으로 이동시키는 단계를 포함하고,
    상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계는, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 분할하는 단계를 포함하는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 방법.
  2. 동적 랜덤 접속 메모리(DRAM)와 적어도 하나의 비휘발성 메모리로 구성되는 직접 연결 양면 메모리(DIMM) 카드로서, 상기 적어도 하나의 비휘발성 메모리는 상변화 메모리(PCM) 및 NAND 플래시 메모리를 포함하는, DIMM 카드를 제공하는 단계;
    상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리를 가지는 상기 DIMM 카드 상에 eSCM 프로세서를 제공하는 단계; 및
    상기 eSCM 프로세서를 사용하여, 강화된 지연 성능 및 스루풋 성능을 가능하게 하기 위해, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계를 포함하고,
    상기 강화된 지연 성능 및 스루풋 성능을 가능하게 하기 위해, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계는, 먼저 상기 NAND 플래시 메모리에 데이터를 쓰고, 상기 PCM 및 상기 DRAM 중 적어도 하나에 데이터를 선택적으로 이동시키는 단계를 포함하고,
    상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계는, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 분할하는 단계를 포함하는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 방법.
  3. 동적 랜덤 접속 메모리(DRAM)와 적어도 하나의 비휘발성 메모리로 구성되는 직접 연결 양면 메모리(DIMM) 카드로서, 상기 적어도 하나의 비휘발성 메모리는 상변화 메모리(PCM) 및 NAND 플래시 메모리를 포함하는, DIMM 카드를 제공하는 단계;
    상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리를 가지는 상기 DIMM 카드 상에 eSCM 프로세서를 제공하는 단계; 및
    상기 eSCM 프로세서를 사용하여, 강화된 지연 성능 및 스루풋 성능을 가능하게 하기 위해, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계를 포함하고,
    상기 강화된 지연 성능 및 스루풋 성능을 가능하게 하기 위해, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계는, 데이터를 상기 PCM 및 상기 NAND 플래시 메모리를 포함하는 상기 비휘발성 메모리에 선택적으로 할당하는 단계를 포함하고,
    상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계는, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 분할하는 단계를 포함하는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 방법.
  4. 동적 랜덤 접속 메모리(DRAM)와 적어도 하나의 비휘발성 메모리로 구성되는 직접 연결 양면 메모리(DIMM) 카드로서, 상기 적어도 하나의 비휘발성 메모리는 상변화 메모리(PCM) 및 NAND 플래시 메모리를 포함하는, DIMM 카드를 제공하는 단계;
    상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리를 가지는 상기 DIMM 카드 상에 eSCM 프로세서를 제공하는 단계; 및
    상기 eSCM 프로세서를 사용하여, 강화된 지연 성능 및 스루풋 성능을 가능하게 하기 위해, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계를 포함하고,
    상기 강화된 지연 성능 및 스루풋 성능을 가능하게 하기 위해, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계는, 상대적으로 중간 사이즈의 데이터 세트들을 저장하기 위해 상기 PCM을 이용하는 단계를 포함하고,
    상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계는, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 분할하는 단계를 포함하는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 방법.
  5. 삭제
  6. 제1항 내지 제4항 중 어느 한 항에 있어서,
    요청된 데이터의 일부가 DRAM으로부터 판독되는 판독 동작을 수행하고, 동시에 상기 적어도 하나의 비휘발성 메모리로부터 상기 요청된 데이터의 다른 일부를 불러오는 단계를 포함하는 강화된 고체-상태 스토리지 성능을 구현하는 방법.
  7. 제1항에 있어서,
    사용 빈도를 기반으로 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계를 더 포함하는 강화된 고체-상태 스토리지 성능을 구현하는 방법.
  8. 제1항 내지 제4항 중 어느 한 항에 있어서,
    강화된 지연 및 스루풋 성능을 가능하게 하기 위해, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계는, 상기 NAND 플래시 메모리로 커밋을 수행시키기 전에 상기 DRAM에 써지는 데이터를 버퍼링하는 단계; 및 상기 NAND 플래시 메모리에서 커밋이 수행된 상기 데이터를 선택적으로 유지하거나, 상기 NAND 플래시 메모리로 커밋이 수행된 데이터를 상기 DRAM 및 상기 PCM중 상기 적어도 하나로 선택적으로 이동시키는 단계를 포함하는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 방법.
  9. 제1항 내지 제4항 중 어느 한 항에 있어서,
    강화된 지연 및 스루풋 성능을 가능하게 하기 위해, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계는, 동적 랜덤 접속 메모리(DRAM)와 적어도 하나의 비휘발성 메모리로 구성되는 직접 연결 양면 메모리(DIMM) 카드를 포함하는 제2 컴퓨터 시스템으로의 메모리 인터페이스를 제시하는 단계를 포함하는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 방법.
  10. 제1항 내지 제4항 중 어느 한 항에 있어서,
    강화된 지연 및 스루풋 성능을 가능하게 하기 위해, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계는, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 중 어느 하나로부터 데이터를 판독하는 단계를 포함하는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 방법.
  11. 제1항 내지 제4항 중 어느 한 항에 있어서,
    강화된 지연 및 스루풋 성능을 가능하게 하기 위해, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 단계는, 상대적으로 큰 데이터 세트들을 저장하는 상기 NAND 플래시 메모리를 이용하는 단계를 포함하는 강화된 고체-상태 스토리지 성능을 구현하는 방법.
  12. 동적 랜덤 접속 메모리(DRAM)와 적어도 하나의 비휘발성 메모리로 구성되는 직접 연결 양면 메모리(DIMM) 카드로서, 상기 적어도 하나의 비휘발성 메모리는 상변화 메모리(PCM) 및 NAND 플래시 메모리를 포함하는, DIMM 카드; 및
    상기 DIMM 카드상의 상기 DRAM 및 상기 적어도 하나의 비휘발성 메모리에 연결된 eSCM 프로세서를 포함하고, 상기 eSCM 프로세서는 지능형 데이터 사이즈 검출 알고리즘을 사용하여, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 것인
    강화된 고체-상태 스토리지 성능을 구현하는 장치.
  13. 동적 랜덤 접속 메모리(DRAM)와 적어도 하나의 비휘발성 메모리로 구성되는 직접 연결 양면 메모리(DIMM) 카드로서, 상기 적어도 하나의 비휘발성 메모리는 상변화 메모리(PCM) 및 NAND 플래시 메모리를 포함하는, DIMM 카드;
    상기 DIMM 카드상의 상기 DRAM 및 상기 적어도 하나의 비휘발성 메모리에 연결된 eSCM 프로세서로서, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 상기 eSCM 프로세서; 및
    제2 컴퓨터 시스템으로의 메모리 인터페이스를 포함하고,
    상기 제2 컴퓨터 시스템은 동적 랜덤 접속 메모리(DRAM)와 상기 메모리 인터페이스에 결합된 적어도 하나의 비휘발성 메모리로 구성되는 직접 연결 양면 메모리(DIMM) 카드를 포함하는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 장치.
  14. 제12항 또는 제13항에 있어서,
    컴퓨터 판독 가능 매체 상에 저장되는 제어 코드를 포함하고,
    상기 eSCM 프로세서가 데이터 세트 활성도 검출(activity detection) 및 범주화(categorization)를 위한 스마트 결정 알고리즘들을 구현하는 상기 제어 코드를 사용하는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 장치.
  15. 제12항 또는 제13항에 있어서,
    상기 적어도 하나의 비휘발성 메모리는 저항형 RAM(ReRAM) 및 스핀 주입 자화 반전 메모리(STT-RAM) 중 적어도 하나를 더 포함하는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 장치.
  16. 제12항에 있어서,
    상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 상기 eSCM 프로세서는, 상기 NAND 플래시 메모리에 쓰고 데이터를 상기 PCM으로 선택적으로 이동시키는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 장치.
  17. 제12항에 있어서,
    상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 상기 eSCM 프로세서는, 데이터 세트 사이즈들에 따라 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 장치.
  18. 제12항에 있어서,
    상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 상기 eSCM 프로세서는, 상기 PCM, 및 상기 NAND 플래시 메모리를 포함하는 비휘발성 메모리에 데이터를 선택적으로 할당하는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 장치.
  19. 제12항에 있어서,
    상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 상기 eSCM 프로세서는, 상대적으로 중간 사이즈의 데이터 세트들을 저장하는 상기 PCM을 이용하는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 장치.
  20. 제12항에 있어서,
    상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 상기 eSCM 프로세서는, 큰 데이터 세트들을 저장하는 상기 NAND 플래시 메모리를 이용하는 것인, 강화된 고체-상태 스토리지 성능을 구현하는 장치.
  21. 동적 랜덤 접속 메모리(DRAM);
    상변화 메모리(PCM) 및 NAND 플래시 메모리를 포함하는 적어도 하나의 비휘발성 메모리; 및
    상기 DRAM 및 상기 적어도 하나의 비휘발성 메모리에 결합되는 프로세서로서, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 프로세서를 포함하고,
    상기 프로세서는, 데이터 세트 사이즈를 기반으로, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키고,
    상기 프로세서는, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 분할하는 것인, 강화된 고체-상태 스토리지 클래스 메모리(eSCM) 시스템.
  22. 동적 랜덤 접속 메모리(DRAM);
    상변화 메모리(PCM) 및 NAND 플래시 메모리를 포함하는 적어도 하나의 비휘발성 메모리; 및
    상기 DRAM 및 상기 적어도 하나의 비휘발성 메모리에 결합되는 프로세서로서, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 프로세서를 포함하고,
    상기 프로세서는, 먼저 상기 NAND 플래시 메모리에 데이터를 쓰고, 상기 PCM 및 상기 DRAM 중 적어도 하나로 데이터를 선택적으로 이동시키고,
    상기 프로세서는, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 분할하는 것인, 강화된 고체-상태 스토리지 클래스 메모리(eSCM) 시스템.
  23. 동적 랜덤 접속 메모리(DRAM);
    상변화 메모리(PCM) 및 NAND 플래시 메모리를 포함하는 적어도 하나의 비휘발성 메모리; 및
    상기 DRAM 및 상기 적어도 하나의 비휘발성 메모리에 결합되는 프로세서로서, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 프로세서를 포함하고,
    상기 프로세서는, 데이터를 상기 PCM 및 상기 NAND 플래시 메모리를 포함하는 상기 비휘발성 메모리에 선택적으로 할당하고,
    상기 프로세서는, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 분할하는 것인, 강화된 고체-상태 스토리지 클래스 메모리(eSCM) 시스템.
  24. 동적 랜덤 접속 메모리(DRAM);
    상변화 메모리(PCM) 및 NAND 플래시 메모리를 포함하는 적어도 하나의 비휘발성 메모리; 및
    상기 DRAM 및 상기 적어도 하나의 비휘발성 메모리에 결합되는 프로세서로서, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 프로세서를 포함하고,
    상기 프로세서는, 상대적으로 중간 사이즈의 데이터 세트들을 저장하는 상기 PCM을 이용하고,
    상기 프로세서는, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 분할하는 것인, 강화된 고체-상태 스토리지 클래스 메모리(eSCM) 시스템.
  25. 삭제
  26. 동적 랜덤 접속 메모리(DRAM);
    상변화 메모리(PCM) 및 NAND 플래시 메모리를 포함하는 적어도 하나의 비휘발성 메모리;
    상기 DRAM 및 상기 적어도 하나의 비휘발성 메모리에 결합되는 프로세서로서, 상기 DRAM, 상기 PCM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 프로세서; 및
    제2 컴퓨터 시스템으로의 메모리 인터페이스를 포함하고,
    상기 제2 컴퓨터 시스템은 동적 랜덤 접속 메모리(DRAM)와 상기 메모리 인터페이스에 결합된 적어도 하나의 비휘발성 메모리로 구성되는 직접 연결 양면 메모리(DIMM) 카드를 포함하는 것인, 강화된 고체-상태 스토리지 클래스 메모리(eSCM) 시스템.
  27. 제21항 내지 제24항 및 제26항 중 어느 한 항에 있어서,
    상기 동적 랜덤 접속 메모리(DRAM)와, 상변화 메모리(PCM)와, NAND 플래시 메모리로 구성되는 직접 연결 양면 메모리(DIMM) 카드를 포함하는 강화된 고체-상태 스토리지 클래스 메모리(eSCM) 시스템.
  28. 제21항 내지 제24항 및 제26항 중 어느 한 항에 있어서,
    고체 상태 드라이브(SSD), 및 하드 디스크 드라이브(HDD) 중 적어도 하나를 포함하는 다른 스토리지 시스템으로의 메모리 인터페이스를 포함하는 강화된 고체-상태 스토리지 클래스 메모리(eSCM) 시스템.
  29. 제21항 내지 제24항 및 제26항 중 어느 한 항에 있어서,
    상기 적어도 하나의 비휘발성 메모리는 저항형 RAM(ReRAM), 및 스핀 주입 자화 반전 메모리(STT-RAM) 중 적어도 하나를 더 포함하는 것인, 강화된 고체-상태 스토리지 클래스 메모리(eSCM) 시스템.
  30. 제29항에 있어서,
    고체 상태 드라이브(SSD) 및 하드 디스크 드라이브(HDD) 중 적어도 하나를 포함하는 제2 스토리지 시스템으로의 메모리 인터페이스;
    상기 DRAM, 상기 PCM, 상기 ReRAM, 상기 STT-RAM, 및 상기 NAND 플래시 메모리 사이에서 데이터를 선택적으로 이동시키는 상기 프로세서; 및
    상기 제2 스토리지 시스템을 더 포함하는 강화된 고체-상태 스토리지 클래스 메모리(eSCM) 시스템.
KR1020150143016A 2012-10-08 2015-10-13 저전력 저지연 고용량 스토리지 클래스 메모리용 장치 및 방법 KR101629615B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/647,273 2012-10-08
US13/647,273 US20140101370A1 (en) 2012-10-08 2012-10-08 Apparatus and method for low power low latency high capacity storage class memory

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020130118516A Division KR20140045269A (ko) 2012-10-08 2013-10-04 저전력 저지연 고용량 스토리지 클래스 메모리용 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20150120919A KR20150120919A (ko) 2015-10-28
KR101629615B1 true KR101629615B1 (ko) 2016-06-13

Family

ID=49553463

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020130118516A KR20140045269A (ko) 2012-10-08 2013-10-04 저전력 저지연 고용량 스토리지 클래스 메모리용 장치 및 방법
KR1020150143016A KR101629615B1 (ko) 2012-10-08 2015-10-13 저전력 저지연 고용량 스토리지 클래스 메모리용 장치 및 방법

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020130118516A KR20140045269A (ko) 2012-10-08 2013-10-04 저전력 저지연 고용량 스토리지 클래스 메모리용 장치 및 방법

Country Status (5)

Country Link
US (2) US20140101370A1 (ko)
JP (1) JP5823469B2 (ko)
KR (2) KR20140045269A (ko)
DE (1) DE102013016609A1 (ko)
GB (1) GB2507410B (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200049506A (ko) * 2018-10-30 2020-05-08 웨스턴 디지털 테크놀로지스, 인코포레이티드 호스트 dram을 이용함으로써 ssd 내구성을 향상시키기 위한 방법
KR20200077805A (ko) 2018-12-21 2020-07-01 주식회사 태진인포텍 저전력 스토리지 시스템을 위한 컨트롤러

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140101370A1 (en) 2012-10-08 2014-04-10 HGST Netherlands B.V. Apparatus and method for low power low latency high capacity storage class memory
US9128847B2 (en) * 2012-10-18 2015-09-08 Hitachi, Ltd. Cache control apparatus and cache control method
US9250954B2 (en) * 2013-01-17 2016-02-02 Xockets, Inc. Offload processor modules for connection to system memory, and corresponding methods and systems
CN103970219B (zh) * 2013-01-30 2018-03-20 鸿富锦精密电子(天津)有限公司 存储设备及支持所述存储设备的主板
KR101752583B1 (ko) 2013-03-14 2017-07-11 마이크론 테크놀로지, 인크. 트레이닝, 데이터 조직, 및/또는 섀도잉을 포함하는 메모리 시스템들 및 방법들
US9507714B2 (en) * 2014-03-27 2016-11-29 Intel Corporation Managed runtime extensions to reduce power consumption in devices with hybrid memory
US9478274B1 (en) 2014-05-28 2016-10-25 Emc Corporation Methods and apparatus for multiple memory maps and multiple page caches in tiered memory
US9535844B1 (en) 2014-06-30 2017-01-03 EMC IP Holding Company LLC Prioritization for cache systems
TWI549137B (zh) * 2014-09-18 2016-09-11 宏碁股份有限公司 記憶體晶片、其資料讀取方法以及資料儲存系統
US10235054B1 (en) * 2014-12-09 2019-03-19 EMC IP Holding Company LLC System and method utilizing a cache free list and first and second page caches managed as a single cache in an exclusive manner
US20160188414A1 (en) * 2014-12-24 2016-06-30 Intel Corporation Fault tolerant automatic dual in-line memory module refresh
CN104636452B (zh) * 2015-01-28 2018-02-27 江苏大学 一种面向scm的统一文件系统管理方法
US9696934B2 (en) 2015-02-12 2017-07-04 Western Digital Technologies, Inc. Hybrid solid state drive (SSD) using PCM or other high performance solid-state memory
JP2016167215A (ja) 2015-03-10 2016-09-15 株式会社東芝 メモリ装置
KR102506135B1 (ko) 2015-03-16 2023-03-07 삼성전자주식회사 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템
JP6384375B2 (ja) 2015-03-23 2018-09-05 富士通株式会社 情報処理装置、記憶装置制御方法、記憶装置制御プログラム及び情報処理システム
US10025747B2 (en) * 2015-05-07 2018-07-17 Samsung Electronics Co., Ltd. I/O channel scrambling/ECC disassociated communication protocol
KR102473197B1 (ko) * 2015-06-08 2022-12-02 삼성전자주식회사 읽기 데이터를 전송 단위로 전송하는 불휘발성 메모리 모듈, 스토리지 장치, 및 전자 장치
JP6460940B2 (ja) * 2015-08-06 2019-01-30 東芝メモリ株式会社 記憶装置およびデータ退避方法
US9431457B1 (en) 2015-08-25 2016-08-30 HGST Netherlands B.V. Implementing deposition growth method for magnetic memory
US10157656B2 (en) 2015-08-25 2018-12-18 Western Digital Technologies, Inc. Implementing enhanced magnetic memory cell
US9444036B1 (en) 2015-08-25 2016-09-13 HGST Netherlands B.V. Implementing segregated media based magnetic memory
US9520444B1 (en) 2015-08-25 2016-12-13 Western Digital Technologies, Inc. Implementing magnetic memory pillar design
US9780143B2 (en) 2015-08-25 2017-10-03 Western Digital Technologies, Inc. Implementing magnetic memory integration with CMOS driving circuits
US9443905B1 (en) 2015-08-25 2016-09-13 HGST Netherlands B.V. Implementing 3D scalable magnetic memory with interlayer dielectric stack and pillar holes having programmable area
US9880778B2 (en) * 2015-11-09 2018-01-30 Google Inc. Memory devices and methods
KR102420152B1 (ko) 2015-11-18 2022-07-13 삼성전자주식회사 메모리 시스템에서의 다중 통신 장치
US10108542B2 (en) 2016-01-04 2018-10-23 Avalanche Technology, Inc. Serial link storage interface (SLSI) hybrid block storage
US10073644B2 (en) 2016-03-21 2018-09-11 Toshiba Memory Corporation Electronic apparatus including memory modules that can operate in either memory mode or storage mode
US9965017B2 (en) 2016-04-12 2018-05-08 International Business Machines Corporation System and method for conserving energy in non-volatile dual inline memory modules
US10866897B2 (en) * 2016-09-26 2020-12-15 Samsung Electronics Co., Ltd. Byte-addressable flash-based memory module with prefetch mode that is adjusted based on feedback from prefetch accuracy that is calculated by comparing first decoded address and second decoded address, where the first decoded address is sent to memory controller, and the second decoded address is sent to prefetch buffer
US10929309B2 (en) 2017-12-19 2021-02-23 Western Digital Technologies, Inc. Direct host access to storage device memory space
US11720283B2 (en) 2017-12-19 2023-08-08 Western Digital Technologies, Inc. Coherent access to persistent memory region range
US11017126B2 (en) 2017-12-19 2021-05-25 Western Digital Technologies, Inc. Apparatus and method of detecting potential security violations of direct access non-volatile memory device
KR102631380B1 (ko) * 2018-05-17 2024-02-01 에스케이하이닉스 주식회사 데이터 연산을 수행할 수 있는 다양한 메모리 장치를 포함하는 반도체 시스템
KR102549346B1 (ko) 2018-07-24 2023-06-28 삼성전자주식회사 솔리드 스테이트 드라이브 및 그의 메타 데이터 액세스 방법
KR102546229B1 (ko) 2018-10-05 2023-06-22 삼성전자주식회사 리드 리클레임 동작 시에 버퍼 메모리를 이용하는 스토리지 장치
KR102583266B1 (ko) 2018-10-24 2023-09-27 삼성전자주식회사 스토리지 모듈, 스토리지 모듈의 동작 방법, 및 스토리지 모듈을 제어하는 호스트의 동작 방법
CN109960471B (zh) * 2019-03-29 2022-06-03 深圳大学 数据存储方法、装置、设备以及存储介质
JP7457342B2 (ja) * 2019-04-16 2024-03-28 株式会社ポトスセミコンダクタ データストレージ装置
US11392428B2 (en) 2019-07-17 2022-07-19 Memverge, Inc. Fork handling in application operations mapped to direct access persistent memory
US20210081318A1 (en) 2019-09-17 2021-03-18 Micron Technology, Inc. Flexible provisioning of multi-tier memory
US11650742B2 (en) * 2019-09-17 2023-05-16 Micron Technology, Inc. Accessing stored metadata to identify memory devices in which data is stored
US10963396B1 (en) 2019-09-17 2021-03-30 Micron Technology, Inc. Memory system for binding data to a memory namespace
US11269780B2 (en) 2019-09-17 2022-03-08 Micron Technology, Inc. Mapping non-typed memory access to typed memory access
US11474941B2 (en) 2020-03-09 2022-10-18 International Business Machines Corporation Using multi-tiered cache to satisfy input/output requests
US20230148253A1 (en) * 2021-11-08 2023-05-11 Ambiq Micro, Inc. Flexible and low power cache memory architecture

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008018258A1 (fr) 2006-08-09 2008-02-14 Hitachi Ulsi Systems Co., Ltd. Dispositif de stockage
US7584335B2 (en) 2006-11-02 2009-09-01 International Business Machines Corporation Methods and arrangements for hybrid data storage

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5956743A (en) * 1997-08-25 1999-09-21 Bit Microsystems, Inc. Transparent management at host interface of flash-memory overhead-bytes using flash-specific DMA having programmable processor-interrupt of high-level operations
US6336174B1 (en) * 1999-08-09 2002-01-01 Maxtor Corporation Hardware assisted memory backup system and method
JP2005025364A (ja) * 2003-06-30 2005-01-27 Sony Corp メモリへの電源供給制御回路及び方法、並びにメモリ搭載装置
US8397013B1 (en) * 2006-10-05 2013-03-12 Google Inc. Hybrid memory module
US7716411B2 (en) * 2006-06-07 2010-05-11 Microsoft Corporation Hybrid memory device with single interface
US7802034B2 (en) * 2006-12-31 2010-09-21 Sandisk Corporation Method for performing full transfer automation in a USB controller
JP4109313B2 (ja) 2007-08-27 2008-07-02 オリンパス株式会社 医療用カプセル装置
TWI425523B (zh) * 2008-03-25 2014-02-01 Asmedia Technology Inc 混合型快閃儲存裝置及其操作方法
US20090254705A1 (en) 2008-04-07 2009-10-08 International Business Machines Corporation Bus attached compressed random access memory
JP2011186563A (ja) * 2010-03-04 2011-09-22 Toshiba Corp メモリ管理装置およびメモリ管理方法
TWI460588B (zh) * 2009-07-17 2014-11-11 Toshiba Kk Memory management device and memory information processing device
US20110035540A1 (en) 2009-08-10 2011-02-10 Adtron, Inc. Flash blade system architecture and method
US20110167197A1 (en) * 2010-01-05 2011-07-07 Mark Leinwander Nonvolatile Storage with Disparate Memory Types
KR101713051B1 (ko) * 2010-11-29 2017-03-07 삼성전자주식회사 하이브리드 메모리 시스템, 및 그 관리 방법
JP2011258229A (ja) * 2011-08-22 2011-12-22 Toshiba Corp メモリシステム
EP2761480A4 (en) * 2011-09-30 2015-06-24 Intel Corp APPARATUS AND METHOD FOR IMPLEMENTING MULTINIVE MEMORY HIERARCHY ON COMMON MEMORY CHANNELS
CN104246719A (zh) * 2012-05-01 2014-12-24 惠普发展公司,有限责任合伙企业 预先布置数据以提交到非易失性存储器
US20140101370A1 (en) 2012-10-08 2014-04-10 HGST Netherlands B.V. Apparatus and method for low power low latency high capacity storage class memory

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008018258A1 (fr) 2006-08-09 2008-02-14 Hitachi Ulsi Systems Co., Ltd. Dispositif de stockage
US7584335B2 (en) 2006-11-02 2009-09-01 International Business Machines Corporation Methods and arrangements for hybrid data storage

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200049506A (ko) * 2018-10-30 2020-05-08 웨스턴 디지털 테크놀로지스, 인코포레이티드 호스트 dram을 이용함으로써 ssd 내구성을 향상시키기 위한 방법
KR102324798B1 (ko) 2018-10-30 2021-11-09 웨스턴 디지털 테크놀로지스, 인코포레이티드 호스트 dram을 이용함으로써 ssd 내구성을 향상시키기 위한 방법
KR20200077805A (ko) 2018-12-21 2020-07-01 주식회사 태진인포텍 저전력 스토리지 시스템을 위한 컨트롤러

Also Published As

Publication number Publication date
US20140101370A1 (en) 2014-04-10
GB201317108D0 (en) 2013-11-06
DE102013016609A1 (de) 2014-04-10
JP2014078231A (ja) 2014-05-01
GB2507410B (en) 2015-07-29
JP5823469B2 (ja) 2015-11-25
GB2507410A (en) 2014-04-30
KR20150120919A (ko) 2015-10-28
US10860477B2 (en) 2020-12-08
KR20140045269A (ko) 2014-04-16
US20180018259A1 (en) 2018-01-18

Similar Documents

Publication Publication Date Title
KR101629615B1 (ko) 저전력 저지연 고용량 스토리지 클래스 메모리용 장치 및 방법
US11068170B2 (en) Multi-tier scheme for logical storage management
KR101908581B1 (ko) 저장 디바이스들에서의 웨어 레벨링
US10282286B2 (en) Address mapping using a data unit type that is variable
JP5759623B2 (ja) メモリシステムコントローラを含む装置および関連する方法
US9645769B2 (en) Performance acceleration during shutdown of a data storage device
US20110320690A1 (en) Mass storage system and method using hard disk and solid-state media
WO2012050934A2 (en) Apparatus, system, and method for a direct interface between a memory controller and non-volatile memory using a command protocol
CN105786400B (zh) 一种异构混合内存组件、系统及存储方法
US8850128B2 (en) Implementing data storage and dual port, dual-element storage device
WO2013097618A1 (zh) 存储虚拟化的装置、存储系统及数据存储方法及系统
US9582192B2 (en) Geometry aware block reclamation
US11755491B2 (en) Mapping supporting non-sequential writes at sequentially-written memory devices
US11210011B2 (en) Memory system data management
WO2023045483A1 (zh) 一种存储设备、数据存储方法及存储系统
JP2023518242A (ja) メモリサブシステムにおける作業負荷レベルに基づく電力モードの設定
WO2017107162A1 (zh) 一种异构混合内存组件、系统及存储方法
KR20220103340A (ko) 데이터 저장 장치 및 그것의 동작 방법
KR102589609B1 (ko) 분할된 저장장치에서의 스냅샷 관리
US11194489B2 (en) Zone-based device with control level selected by the host
US20240143171A1 (en) Systems, methods, and devices for using a reclaim unit based on a reference update in a storage device

Legal Events

Date Code Title Description
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190429

Year of fee payment: 4