CN106168928B - 一种解决混合内存读延迟不确定性的方法 - Google Patents

一种解决混合内存读延迟不确定性的方法 Download PDF

Info

Publication number
CN106168928B
CN106168928B CN201610526793.XA CN201610526793A CN106168928B CN 106168928 B CN106168928 B CN 106168928B CN 201610526793 A CN201610526793 A CN 201610526793A CN 106168928 B CN106168928 B CN 106168928B
Authority
CN
China
Prior art keywords
scm
dram
read
address
memory
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
CN201610526793.XA
Other languages
English (en)
Other versions
CN106168928A (zh
Inventor
景蔚亮
李辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Xinchu Integrated Circuit Co Ltd
Original Assignee
Shanghai Xinchu Integrated Circuit Co Ltd
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 Shanghai Xinchu Integrated Circuit Co Ltd filed Critical Shanghai Xinchu Integrated Circuit Co Ltd
Priority to CN201610526793.XA priority Critical patent/CN106168928B/zh
Publication of CN106168928A publication Critical patent/CN106168928A/zh
Application granted granted Critical
Publication of CN106168928B publication Critical patent/CN106168928B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)

Abstract

本发明公开了一种解决混合内存读延迟不确定性的方法,涉及混合内存领域,包括提供一包括通信连接的DRAM和SCM的混合内存,所述DRAM按照存储单元保持时间包括主要分布区和尾端分布区,将暴读(Read‑heavy)数据或暴读(Write‑heavy)数据放入将被SCM替换的DRAM尾端分布区,且所述混合内存中预存有地址查找转换表,所述地址查找转换表中包括发生替换存储的所述DRAM地址和所述SCM地址的映射项。解决内存瓶颈和功耗瓶颈不是一件容易的事情,但是通过各个方面的交叉努力,如工艺配方,存储器新型设计,结构创新,系统支持等,还是存在可能的机会,甚至无需更改DRAM,存储控制器和操作系统。随着DRAM和SCM在页读延迟上的差别减小,在一个固定周期内的PCM访问差别将会消失。

Description

一种解决混合内存读延迟不确定性的方法
技术领域
本发明涉及混合内存领域,尤其涉及一种解决混合内存读延迟不确定性的方法。
背景技术
现有技术中采用混合内存的方式提高DRAM的性能,降低刷新功耗,方法是为DRAM添加非易失性的新型存储器(New Concept Memory, NCM)。在DRAM非繁忙状态下将存储在DRAM尾端分布区的存储单元中的数据转移至新型存储器中,然后提高DRAM刷新周期,从而能够大大降低DRAM的刷新功耗,提高DRAM的性能。对混合存储器读操作的实现方式可通过地址查找转换表来存储DRAM地址和NCM地址的映射关系,通过对DRAM读操作地址的匹配查找,根据匹配结果控制数据输出来自DRAM或NCM。申请号为CN201510808165.6的发明申请公开的技术方案解决了如何对混合内存中的NCM进行写操作。
由于存储级存储器(Storage Class Memory,SCM)的读延迟与DRAM有非常大的不同,实际上,SCM的读延迟是DRAM的4倍,这使得SCM的读取无法兼容原始的DDR协议,因此,在LPDDR和移动设备的应用场景中,必须考虑如何解决SCM的读延迟太大的问题。另一个问题是读延迟的不确定性,在读操作中,如果被读取的数据来自SCM,那么,常规的DRAM时序是无法满足的,因为当前的DDR协议只支持确定的读取和写入的时序,这种不确定的读延迟将会在数据总线上造成冲突。
因此,本领域的技术人员致力于开发一种解决混合内存读延迟不确定性的方法。
发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是如何解决SCM的读延迟太大和不确定性问题。
为实现上述目的,本发明提供了一种解决混合内存读延迟不确定性的方法,包括提供一包括通信连接的DRAM和SCM的混合内存,所述DRAM按照存储单元保持时间包括主要分布区和尾端分布区,将暴读(Read-heavy)数据放入将被SCM替换的DRAM尾端分布区,且所述混合内存中预存有地址查找转换表,所述地址查找转换表中包括发生替换存储的所述DRAM地址和所述SCM地址的映射项。
进一步地,所述SCM采用两个单元每位技术。
进一步地,所述两个单元每位技术采用差分读取,SCM编程过程被配置为使得两个差分单元的表征相反逻辑状态的物理状态尽可能地区分开,以便加速存储位逻辑值的获得。
进一步地,所述SCM为PCM或ReRAM或MRAM。
本发明还提供了一种解决混合内存读延迟不确定性的方法,包括提供一包括通信连接的DRAM和SCM的混合内存,所述DRAM按照存储单元保持时间包括主要分布区和尾端分布区,将暴写(Write-heavy)数据放入将被SCM替换的DRAM尾端分布区,且所述混合内存中预存有地址查找转换表,所述地址查找转换表中包括发生替换存储的所述 DRAM地址和所述SCM地址的映射项。
进一步地,所述PCM为基于Ge-Sb-Te技术,并通过提高Sb的百分比来提高PCM的转换速度。
进一步地,在数据中心服务器的空闲状态时,周期性地恢复SCM数据。
进一步地于,如果SCM必须被读,则可以重用“页错误中断”,带尾端存储位的地址将被MMU识别成“页丢失”,从而产生一个特定的中断。
进一步地,在中断处理程序中,特定的tRAS将被配置在存储控制器的参数寄存器中替代默认值,然后在SCM上的那个页地址将被访问,访问结束后,默认的tRAS将被重新配置回去进行后续的DRAM访问。
解决内存瓶颈和功耗瓶颈不是一件容易的事情,但是通过各个方面的交叉努力,如工艺配方,存储器新型设计,结构创新,系统支持等,还是存在可能的机会,甚至无需更改DRAM,存储控制器和操作系统。随着DRAM和SCM在页读延迟上的差别减小,在一个固定周期内的PCM访问差别将会消失。
具体实施方式
为了让具备本项发明所属领域常规知识的人员轻松实施本项发明,对本项发明的实例进行详细说明。但本项发明可按照不同的形态实施,不仅仅局限于在此说明的实例。
在本项发明的整个说明书中,某一个部分与另一个部分的“连接”,不仅包括“直接连接”,还包括通过其他元器件相连的“电气性连接”。
在本项发明的整个说明书中,某一个部件位于另一个部件的“上方”,不仅包括某一个部件与另一个部件相接处的状态,还包括两个部件之间还设有另一个部件的状态。
在本项发明的整个说明书中,某个部分“包括”某个构成要素是指,在没有特别禁止器材的前提下,并不是排除其他构成要素,而是还能包括其他构成要素。
在本项发明的整个说明书中采用的程度用语“约”、“实质上”等, 如果提示有制造及物质容许误差,就表示相应数值或接近该数值;其目的是,防止不良人员将涉及准确数值或绝对数值的公开内容用于不当用途。在本项发明的整个说明书中使用的程度用语“~(中的)阶段”或“~的阶段”,并不是“为了~的阶段”。
本说明书中的‘部件’是指,由硬件构成的单元(unit)、由软件构成的单元、由软件和硬件构成的单元。
另外,一个单元可由两个以上的硬件构成或者两个以上的单元由一个硬件构成。本说明书中,通过终端、装置或设备实施的操作或功能,其中的一部分可利用与相应终端、装置或设备相连的服务器代替实施。同样,通过服务器实施的操作或功能,其中的一部分也可以利用与该服务器相连的终端、装置或设备代替实施。
下面对本发明做进一步详细的阐述:
由于SCM的访问延迟比DRAM大,因此,无论串行还是并行,存储控制器必须重新设计来支持混合存储器构架。举例来说,和DDR4标准协议并不完全兼容的DDR4扩展协议据说用来支持3DxPoint作为主存储器。当然,混合存储器要被工业界接受还存在很大障碍,但是,由于基于多DRAM少SCM的混合存储器,超高容量的SCM并不是目标。如果尾端存储单元的IO级数据已经存在于SCM的读缓存中,这便不会影响保持时间敏感的混合存储器(Retention-Aware Hybrid Main Memory, RAHMM)的性能,也就是说在DRAM的某一行上的要被SCM替代的尾端存储单元的IO级数据必须全部被分配在SCM中的某一页上。如果超出了SCM的页长度,则DRAM的那行应当被无效。于是在RAHMM的优点和DRAM的无效行中存在一个平衡点,这个数字将会非常小。
最坏情况是被访问的尾端存储单元的IO级数据都不在SCM的读缓存中。因此,对于最坏情况,需要更长的tRAS或页读延迟。比如,对于一个8Gb DDR SDRAM,最小的tRAS是32ns,而对于一个4GB PCM,页读延迟是50ns。因此,基于这两个工业界的数据,下面来解释,在暴读和暴写的情况下,如何在不改变存储控制器的情况下支持RAHMM:
暴读(read-heavy)情况:
当使用两单元每位(2 cell per bit)技术设计小密度SCM时,对两个单元采用差分读取将大大提高SCM的读取性能。举例来说,如果两个PCM或ReRAM单元被设计成表示一个存储位,在任何时候,一个单元被编程处于高阻态,如1M欧,而另一个为低阻态,如3k欧。在差分读取的过程中,两个单元上的巨大的电流差将很快被翻译成这个存储位的逻辑值。于此同时,利用隐藏缓存策略(Hidden Buffer Strategy)的优势,在SCM编程上可以花费更多时间来使得两个差分单元的阻值尽可能地区分开,以便加速差分读取的操作。1.56x的页读延迟可以缩减几乎一半,如减至32ns。同时,利用“数据重排”技术,将“比较暴读”的数据移出SCM,把它们分配到尾端存储单元的DRAM行中,因此写SCM的可能性将大大下降,甚至没有。“最暴读”的数据仍存储和安排在没有尾端存储单元的DRAM行中。结合两单元每位技术、隐藏缓存策略以及“数据重排”,可以提高RAHMM的性能,减小RAHMM的功耗,甚至不改变当前主内存接口协议。另外,读延迟几乎和DRAM一样的MRAM,也可以被用来作为SCM使用。
暴写(write-heavy)情况:
总所周知,SCM的写延迟是个大问题,但是这样的结论是基于SCM的数据保持必须像传统的Flash(10年)。基于Ge-Sb-Te的PCM中增加Sb的比例将极大地加快转换速度。快速的编程速度意味着较低的写功耗,但是数据保持将变得非常短,如6个月,但这不是个大问题,在数据中心服务器的空闲状态时,可以周期性地恢复SCM数据。将“比较暴写”的数据分配到尾端存储单元的DRAM行中,因此读SCM的可能性将大大下降,甚至没有。“最暴写”的数据仍存储和安排在没有尾端存储单元的DRAM行中。如果SCM必须被读,则可以重用“页错误中断”,这些带尾端存储位的地址将被MMU识别成“页丢失”,从而产生一个特定的中断。在中断处理程序中,如50ns tRAS,将被配置在存储控制器的参数寄存器中替代默认值,然后在RAHMM上的那个页地址将被访问,访问结束后,默认的 32ns tRAS将被重新配置回去进行后续的DRAM访问。由于读SCM的机会非常低,因此对性能的影响可以被忽略。
前面所述的本项发明相关说明只限于某一个实例;只要是具备本项发明所属技术领域的常规知识,在无需变更本项发明技术性思想或者必要特点,就能将本项发明变更为其他形态。因此,前面所述的实例涵盖本项发明的任何一种实施形态,并不仅仅局限于本说明书中的形态。例如,定义为单一型的各构成要素可分散实施;同样,定义为分散的构成要素,也能以结合形态实施。
本项发明的范畴并不局限于上述详细说明,可涵盖后面所述的专利申请范围;从专利申请范围的定义、范围以及同等概念中导出的所有变更或者变更形态均包括在本项发明的范畴内。

Claims (7)

1.一种解决混合内存读延迟不确定性的方法,包括提供一包括通信连接的DRAM和SCM的混合内存,其特征在于,所述DRAM按照存储单元保持时间包括主要分布区和尾端分布区,将暴读(Read-heavy)数据放入将被SCM替换的DRAM尾端分布区,且所述混合内存中预存有地址查找转换表,所述地址查找转换表中包括发生替换存储的所述DRAM地址和所述SCM地址的映射项;所述SCM采用两个单元每位技术。
2.如权利要求1所述的解决混合内存读延迟不确定性的方法,其特征在于,所述两个单元每位技术采用差分读取,SCM编程过程被配置为使得两个差分单元的表征相反逻辑状态的物理状态区分开,以便加速存储位逻辑值的获得。
3.如权利要求2所述的解决混合内存读延迟不确定性的方法,其特征在于,所述SCM为PCM或ReRAM或MRAM。
4.一种解决混合内存读延迟不确定性的方法,包括提供一包括通信连接的DRAM和SCM的混合内存,其特征在于,所述DRAM按照存储单元保持时间包括主要分布区和尾端分布区,将暴写(Write-heavy)数据放入将被SCM替换的DRAM尾端分布区,且所述混合内存中预存有地址查找转换表,所述地址查找转换表中包括发生替换存储的所述DRAM地址和所述SCM地址的映射项;
在数据中心服务器的空闲状态时,周期性地恢复SCM数据。
5.如权利要求4所述的解决混合内存读延迟不确定性的方法,其特征在于,所述SCM为基于Ge-Sb-Te技术制作的PCM,并通过提高Sb的百分比来提高PCM的转换速度。
6.如权利要求4所述的解决混合内存读延迟不确定性的方法,其特征在于,如果SCM必须被读,则可以重用“页错误中断”,带尾端存储位的地址将被MMU识别成“页丢失”,从而产生一个特定的中断。
7.如权利要求6所述的解决混合内存读延迟不确定性的方法,其特征在于,在中断处理程序中,特定的tRAS将被配置在存储控制器的参数寄存器中替代默认值,然后在SCM上的那个页地址将被访问,访问结束后,默认的tRAS将被重新配置回去进行后续的DRAM访问。
CN201610526793.XA 2016-07-06 2016-07-06 一种解决混合内存读延迟不确定性的方法 Active CN106168928B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610526793.XA CN106168928B (zh) 2016-07-06 2016-07-06 一种解决混合内存读延迟不确定性的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610526793.XA CN106168928B (zh) 2016-07-06 2016-07-06 一种解决混合内存读延迟不确定性的方法

Publications (2)

Publication Number Publication Date
CN106168928A CN106168928A (zh) 2016-11-30
CN106168928B true CN106168928B (zh) 2020-01-07

Family

ID=58065847

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610526793.XA Active CN106168928B (zh) 2016-07-06 2016-07-06 一种解决混合内存读延迟不确定性的方法

Country Status (1)

Country Link
CN (1) CN106168928B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022133955A1 (en) * 2020-12-24 2022-06-30 Alibaba Group Holding Limited Hybrid memory management systems and methods with in-storage processing and attribute data management

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104021813A (zh) * 2013-02-28 2014-09-03 爱思开海力士有限公司 存储器、包括存储器的存储系统及存储器控制器的操作方法
CN104899154A (zh) * 2015-06-10 2015-09-09 山东大学 基于嵌入式系统混合主存的页面管理方法
CN105373348A (zh) * 2015-10-23 2016-03-02 上海新储集成电路有限公司 一种混合内存的硬件实现系统及方法
CN105446899A (zh) * 2015-11-09 2016-03-30 上海交通大学 基于存储级内存的内存数据快速持久化的方法
CN105468539A (zh) * 2015-11-19 2016-04-06 上海新储集成电路有限公司 一种混合内存写操作的实现方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9298383B2 (en) * 2012-08-17 2016-03-29 International Business Machines Corporation Memory with mixed cell array and system including the memory
US9606908B2 (en) * 2012-08-17 2017-03-28 International Business Machines Corporation Memory controller for memory with mixed cell array and method of controlling the memory

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104021813A (zh) * 2013-02-28 2014-09-03 爱思开海力士有限公司 存储器、包括存储器的存储系统及存储器控制器的操作方法
CN104899154A (zh) * 2015-06-10 2015-09-09 山东大学 基于嵌入式系统混合主存的页面管理方法
CN105373348A (zh) * 2015-10-23 2016-03-02 上海新储集成电路有限公司 一种混合内存的硬件实现系统及方法
CN105446899A (zh) * 2015-11-09 2016-03-30 上海交通大学 基于存储级内存的内存数据快速持久化的方法
CN105468539A (zh) * 2015-11-19 2016-04-06 上海新储集成电路有限公司 一种混合内存写操作的实现方法

Also Published As

Publication number Publication date
CN106168928A (zh) 2016-11-30

Similar Documents

Publication Publication Date Title
JP6730453B2 (ja) 細かい粒度のリフレッシュ
CN106257400B (zh) 处理设备、计算系统及处理设备访问主存储器的方法
US8954672B2 (en) System and method for cache organization in row-based memories
US7764551B2 (en) Semiconductor memory system having volatile memory and non-volatile memory that share bus, and method of controlling operation of non-volatile memory
CN113168864A (zh) 用于多库和多泵刷新操作的设备和方法
US8060705B2 (en) Method and apparatus for using a variable page length in a memory
US9852792B2 (en) Non-volatile multi-level-cell memory with decoupled bits for higher performance and energy efficiency
US10223273B2 (en) Memory access method, storage-class memory, and computer system
US10762008B2 (en) Delay circuit and write and read latency control circuit of memory, and signal delay method thereof
CN110678927B (zh) 具有校准支持的存储器中的延迟回写
US9786389B2 (en) Memory system
US10410733B2 (en) Memory device and controlling method thereof
CN106856098B (zh) 一种用于DRAM或eDRAM刷新的装置及其方法
US10991418B2 (en) Semiconductor memory device comprising an interface conforming to JEDEC standard and control device therefor
CN109219850B (zh) 存储器中的延迟回写
DE102017100584A1 (de) Verfahren zum Zugreifen auf heterogene Speicher und Speichermodul, welches heterogene Speicher aufweist
US11216386B2 (en) Techniques for setting a 2-level auto-close timer to access a memory device
US9003121B2 (en) Multi-ported memory with multiple access support
CN106168928B (zh) 一种解决混合内存读延迟不确定性的方法
JP7343257B2 (ja) ホストシステム、方法、及び、システム
US9921782B2 (en) Memory device for emulating dynamic Random access memory (DRAM)
TW201908980A (zh) 混合式高速快取記憶體及用於縮短其延遲之方法
JP7420472B2 (ja) ページサイズ認識スケジューリング方法及び非一時的なコンピュータ読取可能記録媒体
US10185510B2 (en) Bank interleaving controller and semiconductor device including the same
US20190065115A1 (en) Memory system, operation method of the memory system, and memory device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Jing Weiliang

Inventor after: Li Hui

Inventor before: Jing Weiliang

CB03 Change of inventor or designer information
GR01 Patent grant
GR01 Patent grant