KR102317657B1 - Nvdimm을 포함하는 장치 및 그것의 엑세스 방법 - Google Patents

Nvdimm을 포함하는 장치 및 그것의 엑세스 방법 Download PDF

Info

Publication number
KR102317657B1
KR102317657B1 KR1020160044912A KR20160044912A KR102317657B1 KR 102317657 B1 KR102317657 B1 KR 102317657B1 KR 1020160044912 A KR1020160044912 A KR 1020160044912A KR 20160044912 A KR20160044912 A KR 20160044912A KR 102317657 B1 KR102317657 B1 KR 102317657B1
Authority
KR
South Korea
Prior art keywords
memory
address
nvdimm
exposed
host
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020160044912A
Other languages
English (en)
Korean (ko)
Other versions
KR20170041616A (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 KR20170041616A publication Critical patent/KR20170041616A/ko
Application granted granted Critical
Publication of KR102317657B1 publication Critical patent/KR102317657B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0646Configuration or reconfiguration
    • G06F12/0653Configuration or reconfiguration with centralised address assignment
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0646Configuration or reconfiguration
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/7201Logical to physical mapping or translation of blocks or pages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Memory System (AREA)
KR1020160044912A 2015-10-07 2016-04-12 Nvdimm을 포함하는 장치 및 그것의 엑세스 방법 Active KR102317657B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562238660P 2015-10-07 2015-10-07
US62/238,660 2015-10-07
US15/060,596 2016-03-03
US15/060,596 US10031674B2 (en) 2015-10-07 2016-03-03 DIMM SSD addressing performance techniques

Publications (2)

Publication Number Publication Date
KR20170041616A KR20170041616A (ko) 2017-04-17
KR102317657B1 true KR102317657B1 (ko) 2021-10-26

Family

ID=58498625

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160044912A Active KR102317657B1 (ko) 2015-10-07 2016-04-12 Nvdimm을 포함하는 장치 및 그것의 엑세스 방법

Country Status (5)

Country Link
US (1) US10031674B2 (enExample)
JP (1) JP6799427B2 (enExample)
KR (1) KR102317657B1 (enExample)
CN (1) CN106776358B (enExample)
TW (2) TWI699646B (enExample)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10437483B2 (en) 2015-12-17 2019-10-08 Samsung Electronics Co., Ltd. Computing system with communication mechanism and method of operation thereof
US10635553B2 (en) * 2017-10-20 2020-04-28 Microsoft Technology Licensing, Llc Error recovery in non-volatile storage partitions
KR102353859B1 (ko) * 2017-11-01 2022-01-19 삼성전자주식회사 컴퓨팅 장치 및 비휘발성 듀얼 인라인 메모리 모듈
CN111108488B (zh) * 2017-11-07 2022-05-10 华为技术有限公司 内存块回收方法和装置
KR102410671B1 (ko) 2017-11-24 2022-06-17 삼성전자주식회사 스토리지 장치, 스토리지 장치를 제어하는 호스트 장치, 및 스토리지 장치의 동작 방법
JP2019121195A (ja) 2018-01-05 2019-07-22 東芝メモリ株式会社 メモリシステム及びプロセッサシステム
US11029879B2 (en) 2018-01-29 2021-06-08 Samsung Electronics Co., Ltd Page size synchronization and page size aware scheduling method for non-volatile memory dual in-line memory module (NVDIMM) over memory channel
US10838637B2 (en) 2018-02-08 2020-11-17 Micron Technology, Inc. Status management in storage backed memory package
US11074189B2 (en) 2019-06-20 2021-07-27 International Business Machines Corporation FlatFlash system for byte granularity accessibility of memory in a unified memory-storage hierarchy
US11113188B2 (en) 2019-08-21 2021-09-07 Microsoft Technology Licensing, Llc Data preservation using memory aperture flush order
KR102657760B1 (ko) 2019-09-23 2024-04-17 에스케이하이닉스 주식회사 메모리 시스템 및 그 메모리 시스템의 동작 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040215856A1 (en) 2003-04-28 2004-10-28 Yves Leduc Terminal management bus
US20090154254A1 (en) 2004-09-02 2009-06-18 Micron Technology, Inc. Cluster based non-volatile memory translation layer
US20130019048A1 (en) 2011-07-15 2013-01-17 International Business Machines Corporation Memory Access To A Dual In-line Memory Module Form Factor Flash Memory
US20130227196A1 (en) 2012-02-27 2013-08-29 Advanced Micro Devices, Inc. Circuit and method for initializing a computer system

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6732249B1 (en) * 2000-06-09 2004-05-04 3Com Corporation Host computer virtual memory within a network interface adapter
US20060168485A1 (en) * 2005-01-26 2006-07-27 Via Technologies, Inc Updating instruction fault status register
US7716411B2 (en) * 2006-06-07 2010-05-11 Microsoft Corporation Hybrid memory device with single interface
TWI453751B (zh) * 2006-08-04 2014-09-21 Marvell World Trade Ltd 具有誤差修正功能之完全緩衝式雙直列記憶體模組
US8874831B2 (en) 2007-06-01 2014-10-28 Netlist, Inc. Flash-DRAM hybrid memory module
US9251899B2 (en) * 2008-02-12 2016-02-02 Virident Systems, Inc. Methods for upgrading main memory in computer systems to two-dimensional memory modules and master memory controllers
US8082384B2 (en) * 2008-03-26 2011-12-20 Microsoft Corporation Booting an electronic device using flash memory and a limited function memory controller
US7941568B2 (en) * 2008-05-05 2011-05-10 International Business Machines Corporation Mapping a virtual address to PCI bus address
US20110035540A1 (en) 2009-08-10 2011-02-10 Adtron, Inc. Flash blade system architecture and method
JP5756622B2 (ja) * 2010-11-30 2015-07-29 株式会社日立製作所 半導体装置
US9575908B2 (en) 2011-02-08 2017-02-21 Diablo Technologies Inc. System and method for unlocking additional functions of a module
US9552175B2 (en) 2011-02-08 2017-01-24 Diablo Technologies Inc. System and method for providing a command buffer in a memory system
WO2013028854A1 (en) * 2011-08-24 2013-02-28 Rambus Inc. Methods and systems for mapping a peripheral function onto a legacy memory interface
US9026717B2 (en) * 2011-09-30 2015-05-05 SanDisk Technologies, Inc. Apparatus, system, and method for a persistent object store
WO2013048500A1 (en) * 2011-09-30 2013-04-04 Intel Corporation Apparatus and method for implementing a multi-level memory hierarchy over common memory channels
KR20130078455A (ko) * 2011-12-30 2013-07-10 삼성전자주식회사 메모리 특성 정보를 저장하는 반도체 메모리 장치, 이를 포함하는 메모리 모듈, 메모리 시스템 및 반도체 메모리 장치의 동작방법
US9280497B2 (en) 2012-12-21 2016-03-08 Dell Products Lp Systems and methods for support of non-volatile memory on a DDR memory channel
JP6224483B2 (ja) * 2014-02-26 2017-11-01 Necプラットフォームズ株式会社 半導体記憶装置、メモリアクセス制御方法、およびコンピュータ・プログラム
CN106688217B (zh) * 2014-03-08 2021-11-12 狄亚曼提公司 用于融合联网和存储的方法和系统
CN104881371B (zh) * 2015-05-29 2018-02-09 清华大学 持久性内存事务处理缓存管理方法与装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040215856A1 (en) 2003-04-28 2004-10-28 Yves Leduc Terminal management bus
US20090154254A1 (en) 2004-09-02 2009-06-18 Micron Technology, Inc. Cluster based non-volatile memory translation layer
US20130019048A1 (en) 2011-07-15 2013-01-17 International Business Machines Corporation Memory Access To A Dual In-line Memory Module Form Factor Flash Memory
US20130227196A1 (en) 2012-02-27 2013-08-29 Advanced Micro Devices, Inc. Circuit and method for initializing a computer system

Also Published As

Publication number Publication date
TWI718969B (zh) 2021-02-11
TWI699646B (zh) 2020-07-21
US20170102873A1 (en) 2017-04-13
TW201714090A (zh) 2017-04-16
US10031674B2 (en) 2018-07-24
JP2017073129A (ja) 2017-04-13
JP6799427B2 (ja) 2020-12-16
TW202040367A (zh) 2020-11-01
CN106776358B (zh) 2021-10-26
KR20170041616A (ko) 2017-04-17
CN106776358A (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
KR102317657B1 (ko) Nvdimm을 포함하는 장치 및 그것의 엑세스 방법
KR102363526B1 (ko) 복수의 엑세스 모드를 지원하는 불휘발성 메모리를 포함하는 시스템 및 그것의 엑세스 방법
CN104903868B (zh) 数据存储装置、用于进行直接用户空间通信的方法和系统
KR102161448B1 (ko) 멀티 채널 메모리를 포함하는 시스템 및 그 동작 방법
US9256545B2 (en) Shared memory access using independent memory maps
US10373668B2 (en) Memory device shared by two or more processors and system including the same
US20170255565A1 (en) Method and apparatus for providing a contiguously addressable memory region by remapping an address space
US10503657B2 (en) DIMM SSD Addressing performance techniques
EP3850474B1 (en) Hybrid memory system interface
US10592113B2 (en) Method for transferring command from host to device controller and system using the same
KR102457095B1 (ko) 딜레이 가변 소자를 포함하는 메모리 모듈 및 그것의 딜레이 설정 방법
US20210117114A1 (en) Memory system for flexibly allocating memory for multiple processors and operating method thereof
US9239768B2 (en) Distributed pin map memory
US20250231891A1 (en) Smart storage devices
US20170031633A1 (en) Method of operating object-oriented data storage device and method of operating system including the same
CN107155307B (zh) 访问文件的方法、系统和主机
HK1214386B (en) Data storage device, method and system for direct user space communication

Legal Events

Date Code Title Description
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PA0302 Request for accelerated examination

St.27 status event code: A-1-2-D10-D17-exm-PA0302

St.27 status event code: A-1-2-D10-D16-exm-PA0302

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

U11 Full renewal or maintenance fee paid

Free format text: ST27 STATUS EVENT CODE: A-4-4-U10-U11-OTH-PR1001 (AS PROVIDED BY THE NATIONAL OFFICE)

Year of fee payment: 5