CN107844263B - 存储器系统及处理器系统 - Google Patents

存储器系统及处理器系统 Download PDF

Info

Publication number
CN107844263B
CN107844263B CN201710132910.9A CN201710132910A CN107844263B CN 107844263 B CN107844263 B CN 107844263B CN 201710132910 A CN201710132910 A CN 201710132910A CN 107844263 B CN107844263 B CN 107844263B
Authority
CN
China
Prior art keywords
memory
storage unit
queue
page
write
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
CN201710132910.9A
Other languages
English (en)
Other versions
CN107844263A (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.)
Kioxia Corp
Original Assignee
Toshiba Memory Corp
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 Toshiba Memory Corp filed Critical Toshiba Memory Corp
Publication of CN107844263A publication Critical patent/CN107844263A/zh
Application granted granted Critical
Publication of CN107844263B publication Critical patent/CN107844263B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • 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
    • 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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • 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/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1673Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1677Verifying circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1675Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1693Timing circuits or methods
    • 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)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Memory System (AREA)

Abstract

本发明提供一种存储器系统及处理器系统。本发明的实施方式涉及存储器系统及处理器系统。提供一种能够实现错误发生概率下降、存取速度提高以及低功耗化的存储器系统及处理器系统。一个实施方式所涉及的存储器系统具备:非易失性存储器;存储部,能够进行与所述非易失性存储器相比高速的存取,在对所述非易失性存储器进行存取之前存储针对所述非易失性存储器的存取信息;以及存储器控制部,根据所述存储部的空白容量或存储在所述存储部中的所述存取信息,对所述非易失性存储器的写入脉冲宽度进行控制。

Description

存储器系统及处理器系统
本申请以日本专利申请2016-183330(申请日:2016年9月20日)为基础,基于该申请享受优先权。通过参照该申请而包括该申请的全部内容。
技术领域
本发明的实施方式涉及存储器系统及处理器系统。
背景技术
用于移动信息终端的处理器要求低功耗。为此,进行用非易失性存储器来置换高速缓冲存储器、主存储器的研究。
MRAM(Magnetoresistive Random Access Memory,磁阻式随机存取存储器)在各种各样的非易失性存储器中,作为能够同时满足高改写耐性、快速进行读出和写入的动作性能和可高度集成的单元面积这三个特征而受到关注。在将MRAM用作高速缓冲存储器时,由于动作速度与其它非易失性存储器相比更为快速、并且面积效率与现有的存储器相比更高且能够将大容量的高速缓冲存储器搭载于处理器,因此对于MRAM寄予很大的期待。特别是在MRAM之中,在使用被称为STT-MRAM MRAM(Spin Transfer Torque MRAM,自旋转移转矩)的垂直磁的自旋注入的方式中,写入电流和写入延迟非常小且能够进行高速动作,因此期待得到广泛应用。
但是,MRAM与SRAM、DRAM相比,存在写入时的错误发生概率高这样的问题。还考虑在写入数据后进行读出检验的验证处理,但由于验证处理需要花费时间,因此存取速度下降。或者,还考虑提高写入电压,但这成为功耗增加的主要原因。另外,还考虑使写入脉冲宽度变长,但存取速度仍旧下降。
发明内容
一个实施方式涉及一种存储器系统,具备:
非易失性存储器;
存储部,能够进行与所述非易失性存储器相比高速的存取,在对所述非易失性存储器进行存取之前存储针对所述非易失性存储器的存取信息;以及
存储器控制部,根据所述存储部的空白容量或存储在所述存储部中的所述存取信息,对所述非易失性存储器的写入脉冲宽度进行控制。
附图说明
图1是示出一个实施方式的具备存储器系统的处理器系统的概略结构的框图。
图2是示出MRAM的构造的图。
图3是示出的队列保存部的构造的图。
图4是示出通过页面簇控制部生成的簇的一例的图。
图5是示出控制器核心部的处理动作的一例的流程图。
图6是示出控制器核心部的处理动作的一例的流程图。
符号说明
2处理器系统;3处理器;4主机电路;5存储器控制器;6 MRAM;7 MRAM控制部;8时钟同步化部;9主机接口部;10控制器核心部;11队列保存部;12队列追加部;13队列出队部;14页面簇控制部;15队列执行部;16验证控制部;17队列输出部;18状态转变控制部;19初始化控制部;20地址生成部;21存储库管理部。
具体实施方式
下面,参照附图,对一个实施方式进行说明。图1是示出一个实施方式的具备存储器系统的处理器系统2的概略结构的框图。图1的处理器系统2除了存储器系统以外,还具备包括处理器3的主机电路4。
主机电路4的具体的内部结构不受限定。被设置在主机电路4内的处理器3既可以为单核的处理器3,也可以为多核的处理器3。主机电路4的内部结构是任意的,例如还可以在主机电路4内设置一层以上的高速缓冲存储器。另外,也可以在主机电路4内设置对从处理器3发布的地址进行管理的MMU(Memory Management Unit,存储器管理单元)、进行地址转换的页面表格、TLB(Translation Lookaside Buffer,转译后备缓冲器)等。
存储器系统具有存储器控制器5和MRAM6。存储器系统内的MRAM6既可以为使用垂直磁化方式的MTJ(Magnetic Tunnel Junction,磁隧道结)存储元件进行自旋注入写入的STT-MRAM,也可以为其它写入方式的MRAM6。
图1的MRAM6既可以为通过处理器3进行存取的主存储器,还可以为与主存储器相比存取优先等级更高的高速缓冲存储器。例如,当在主机电路4内包含处理器3和低阶的高速缓冲存储器时,图1的MRAM6可以为高阶的高速缓冲存储器。
此外,还可以将图1的MRAM6置换为ReRAM等其它非易失性存储器。另外,在将图1的MRAM6用作主存储器时,也可以除了图1的MRAM6以外,还设置DRAM(Dynamic RAM,动态RAM)等易失性存储器,做成混合结构的主存储器。
图1的存储器控制器5按照来自主机电路4内的处理器3的存取请求,进行相对于MRAM6的数据的写入控制和读出控制。图1的存储器控制器5具有MRAM控制部7、时钟同步化部8、主机接口部9和控制器核心部10。
MRAM控制部7进行相对于MRAM6的数据的写入控制和读出控制。时钟同步化部8生成与从外部输入的时钟信号CLK同步化的信号并提供给MRAM控制部7。据此,MRAM控制部7实现与从外部输入的时钟信号CLK的同步,进行相对于MRAM6的数据的写入控制和读出控制。
主机接口部9在与主机电路4之间发送接收各种信号。从主机电路4向主机接口部9发送的信号例如为命令、地址、数据等。命令包括写入命令和读出命令。从主机接口部9向主机电路4发送的信号例如为命令响应信号、地址、数据、占线信号等。
控制器核心部10与MRAM控制部7一起进行向MRAM6的存取控制。控制部核心部10具有:队列保存部(存储部)11、队列追加部12、队列出队部13、页面簇控制部14、队列执行部15、验证控制部16、队列输出部17、状态转变控制部18、初始化控制部19、地址生成部20和存储库管理部21。
队列保存部11在对MRAM6进行存取之前暂时存储主机电路4对MRAM6请求的存取信息。下面,将各个存取信息称为队列。各个队列包括命令、地址和数据。
队列保存部11例如可由D型触发器电路等组成的寄存器构成。队列保存部11为小容量,并且能够进行比MRAM6更快速的数据的写入和读出。
队列追加部12在从主机电路4发送来新的存取信息的情况下,进行将该存取信息作为新的队列写入到队列保存部11的控制。另外,如后所述,在推迟了针对MRAM6的验证处理的情况下,队列追加部12从MRAM控制部7接收用于验证处理的队列,进行追加到队列保存部11的控制。
页面簇控制部14将队列保存部11内的队列以页面为单位进行分类,生成以页面为单位的簇,针对各簇进行取出队列的控制。队列出队部13在页面簇控制部14的控制之下,将接下来应执行的队列从队列保存部11中取出并提供给队列执行部15。
队列执行部15执行从队列保存部11经由队列出队部13取出的队列中包含的命令。如果命令为写入命令,则如后所述,进行写入模式的选择。队列执行部15针对将队列保存部11内的队列以页面为单位进行分类而得到的各簇中包含的各队列,选择写入模式。
如后所述,在本实施方式中,作为写入模式,具有第一模式和第二模式。第一模式为根据队列保存部11的空白容量或保存在队列保存部11中的队列,进行对MRAM6写入数据后读出并检验所写入的数据的验证处理的模式。第二模式为以比第一模式长的写入脉冲宽度不进行验证处理地写入数据的模式。
更具体而言,队列执行部15对各簇内的写入命令数Nw、各簇内的读出命令数Nr和各簇内的总命令数Nq进行计测。而且,队列执行部15在Nq达到队列保存部11可保存的最大数时或Nw>Nr时,选择第二模式,除此以外,选择第一模式。
队列执行部15也可以不判定是否Nw>Nr,而判定在写入命令之后是否接着至少一个以上的读出命令。在这种情况下,在写入命令之后接着至少一个以上的读出命令时,选择第一模式,在写入命令之后不接着读出命令时,选择第二模式。
第二模式与第一模式相比,使写入脉冲宽度变长,因此认为即使不进行验证处理,错误发生概率也低。反过来说的话,在第二模式中,使写入脉冲宽度变长,以使得错误发生概率下降至在实用上没有问题的程度。
由于第一模式与第二模式相比,写入脉冲宽度短,因此能够实现向MRAM6的快速的写入,但这样的话错误发生概率有可能会提高。因此,在写入后进行验证处理,当通过验证处理检测出写入错误时,再次进行写入。但是,在每当有写入命令时都进行验证处理的情况下,无法迅速处理后续的队列,队列保存部11中变满。特别是当在写入命令之后有读出命令时,如果在写入命令的处理之中进行至验证处理,则导致读出命令的处理定时延迟,处理器3的处理性能下降。因此,在本实施方式中,在第一模式时,不进行验证处理地连续执行相同页面内的写入命令,当移动页面时,一并执行该页面内的验证处理。据此,能够迅速处理相同页面内的读出命令,能够防止存取性能的下降。
验证控制部16在队列执行部15选择第一模式时,进行推迟各写入命令的验证处理的控制。具体而言,生成用于验证处理的队列并发送给队列追加部12。队列追加部12将用于验证处理的队列追加并保存到队列保存部11中。
状态转变控制部18根据由队列执行部15实施的队列的执行结果,生成用于对MRAM6进行存取的各种控制信号。初始化控制部19在电源启动等时进行对控制器核心部10的内部进行初始化的控制。地址生成部20根据队列中包含的地址,生成用于对MRAM6进行存取的地址。
存储库管理部21将MRAM6分割为多个存储库,针对各存储库进行存取控制。各存储库中分别包括多个页面。存储库管理部21能够单独选择针对各存储库应进行存取的页面。
图2是示出MRAM6的构造的图。如图2所示,MRAM6被分为多个存储库b1~bn,各存储库具有多个存储器区域6a。各存储器区域6a分别与单个页面对应。针对各存储器区域6a,进行驱动的字线不同。通过对来自处理器3的存取信息中包含的地址进行解码,从而确定进行驱动的字线,但由于字线的负荷大,因此驱动需要花费时间。因此,在对与各页面对应的各存储器区域6a进行存取时,最好连续进行相对于该存储器区域6a的写入处理和读出处理。
另外,为了对不同页面的存储器区域6a进行存取,需要进行对新的地址进行解码并驱动新的字线的处理,这种处理被称为页面的打开处理。另外,结束向某页面的存储器区域6a的存取时的处理被称为关闭处理。例如,在从向页面A的存储器区域6a的存取切换为向同一存储库内的页面B的存储器区域6a的存取时,需要在进行页面A的关闭处理之后,进行页面B的打开处理。通常,由于在各存储库中设为打开的状态的页面数为一个页面,因此为了对同一存储库内的其它页面进行存取,需要对打开的页面进行关闭处理。这是由于安装于各存储库的读出放大器电路和保存所读出数据的行缓冲器电路的数量有限,能够保持打开的状态的页面数有限。
这样,每当切换页面时,都需要进行打开处理和关闭处理,因此希望页面的切换尽可能减少。因此,在本实施方式中,生成针对各页面将队列保存部11内的队列分开而得到的多个簇,针对各簇进行向MRAM6的存取。
图3是示出队列保存部11的构造的图。队列保存部11并不以页面为单位进行划分,而是按顺序保存来自主机电路4的存取信息。由于存取信息包括命令、地址和数据,因此在队列保存部11中设置有保存这三种信息的区域。如上所述,队列保存部11例如由寄存器构成,但也可以由SRAM这样的高速存储器构成。
将队列保存部11内的队列分成簇的处理是通过页面簇控制部14进行的。图4是示出通过页面簇控制部14生成的簇的一例的图。图4的簇A和B分别对应于页面A和页面B。在簇A中保存有针对页面A的队列的信息。更具体而言,在簇A和B中分别保存有针对页面A和B的写入命令、读出命令。在簇A和B中按照主机电路4内的处理器3进行发布的顺序存储有存取信息。
队列执行部15从簇A的开头的存取信息的命令起依次执行。在执行开头的命令之前,进行与簇A对应的页面A的打开处理。
簇A内的命令包括写入命令和读出命令。在读出命令的情况下,按照预先确定的顺序进行与从MRAM6指定的地址对应的数据的读出。在写入命令的情况下,如后所述,根据队列保存部11的空白容量或队列保存部11内的队列,选择第一模式或第二模式,进行向MRAM6的数据的写入。例如在选择第一模式的情况下,不执行验证处理地按顺序执行簇A内的所有写入命令。然后,在簇A内的所有命令的执行结束而开始下一簇的处理之前,一并进行验证处理。在开始下一簇的处理之前进行验证处理的理由在于,在下一簇的处理为同一存储库的其它页面时,进行了页面A的关闭处理。如果在执行页面A的关闭处理之后想要进行验证处理,则需要再次进行页面A的打开处理,造成存储器存取的效率下降,因此在开始下一簇的处理之前,一并进行验证处理的话效率更加良好。
此外,如图4的簇A所示,在读出命令和写入命令混合存在时,队列执行部15维持其顺序地执行各命令。即,不调换读出命令和写入命令的执行顺序。如果调换命令的顺序来执行,则有可能无法取得数据的匹配性,但在本实施方式中,由于不调换读出命令和写入命令的顺序,因此不会发生无法取得数据的匹配性这样的不佳状况。如此,队列执行部15仅在涉及仅推迟第一模式时的执行写入命令时的验证处理时,进行无序(out-of-order)处理。
这里,在处理各簇时,作为页面的打开/关闭的策略,具有打开页面策略和关闭页面策略。打开页面策略是指使一旦打开了的页面持续打开直至对同一存储库内的其它页面进行存取为止的策略。在该策略中,在接下来进行存取的是其它页面时,需要进行至今为止一直打开的页面的关闭处理。另一方面,在接下来进行存取的是同一页面时,使得页面保持打开的状态,因此能够省略页面的打开处理。关闭页面策略是指当向页面的存取完成时每次一定关闭页面的策略。在接下来向该存储库的存取为其它页面时,能够提前进行关闭处理,因此能够顺利地进行打开处理,另一方面,即使接下来向该存储库的存取为同一页面,也必须进行关闭处理和打开处理。
队列执行部15在结束图4的簇A内的所有命令执行时,接着开始执行簇B的命令。在MRAM6采用关闭页面策略时,或者在簇B的页面B与簇A的页面A是同一存储库的不同页面时,簇A的页面A进行关闭处理。在簇B的页面B不是已经打开的页面时,当执行图4的簇B时,进行与簇B对应的页面B的打开处理。队列执行部15从簇B的开头的存取信息的命令起依次执行。在应执行的命令为写入命令时,选择第一模式或第二模式。例如,队列的空白容量为零时,选择第二模式。队列执行部15在选择第二模式的情况下,当执行簇B内的各写入命令时,使写入脉冲宽度变长。
图5和图6是示出控制器核心部10的处理动作的一例的流程图。图5是采用打开页面策略时的流程图,图6是采用关闭页面策略时的流程图。图5和图6的流程图在图1之中,主要示出页面簇控制部14、队列执行部15、验证控制部16和状态转变控制部18进行的处理。进行图5和图6的处理的页面簇控制部14、队列执行部15、验证控制部16和状态转变控制部18构成存储器控制部。该存储器控制部根据队列保存部11的空白容量或保存在队列保存部11中的存取信息,对MRAM6的写入脉冲宽度进行控制。换言之,存储器控制部根据队列保存部11的空白容量或保存在队列保存部11中的写入命令和读出命令,对MRAM6的写入脉冲宽度进行控制。
首先,对图5的流程图的处理进行说明。队列执行部15选择与队列保存部11内的未处理的页面对应的簇(步骤S1)。如上所述,簇的生成是通过页面簇控制部14进行的。接着,判断相应页面是否已经打开(步骤S2)。如果相应页面还未打开,则关闭当前打开的页面(步骤S3)。
接着,队列执行部15打开与所选择的簇对应的页面(步骤S4)。这里,经由MRAM控制部7,驱动与相应页面对应的存储器区域6a的字线。
接着,队列执行部15经由队列出队部13从开头起依次获取簇内的各队列(步骤S5)。接着,队列执行部15判定所获取的队列的命令是否为读出命令(步骤S6)。如果为读出命令,则经由MRAM控制部7,针对MRAM6的相应地址进行存取,进行读出相应数据的控制(步骤S7)。
在步骤S6的判定为“否”(NO)时,判断为写入命令,判定队列保存部11是否没有空白容量(步骤S8)。或者,也可以在步骤S8中,判定保存在队列保存部11中的队列的写入命令数是否多于读出命令数。或者,还可以在步骤S8中,判定在步骤S3中获取的队列的写入命令之后是否接着读出命令。在步骤S8的判定为“是”(YES)时,选择第二模式(步骤S9)。然后,通过状态转变控制部18,生成比通常的写入脉冲宽度长的写入脉冲,经由MRAM控制部7对MRAM6进行存取,对由在步骤S5中获取的队列指定的地址写入数据(步骤S10)。在这种情况下,由于写入脉冲宽度长,因此可认为数据写入的可靠性高,故而省略验证处理。
此外,步骤S10中生成的写入脉冲的脉冲宽度是即使没有验证处理也可视为数据写入的可靠性十分高的程度的脉冲宽度,事先调查这种脉冲宽度。
在步骤S8的判定为“否”(NO)时,选择第一模式(步骤S11)。然后,通过状态转变控制部18,生成通常的写入脉冲,经由MRAM控制部7对MRAM6进行存取,对由在步骤S5中获取的队列指定的地址写入数据(步骤S12)。
在步骤S10或S12的处理结束时,判定簇内是否还残留有队列(步骤S13)。在还残留有队列时(在步骤S13的判定为“是”(YES)时),重复进行步骤S5以后的处理。在步骤S13的判定为“否”(NO)时,判定是否还存在与未处理的页面对应的簇(步骤S14)。在还存在未处理的簇时(在步骤S14为“是”(YES)时),重复进行步骤S1以后的处理。在不存在未处理的簇时(在步骤S14为“否”(NO)时),结束图5的处理。
接着,对图6的流程图的处理进行说明。首先,选择未处理的簇(步骤S21)。接着,打开与所选择的簇对应的页面(步骤S22)。在关闭页面策略时,即使在持续进行向同一存储库内的同一页面的存取的情况下,每当各存取结束时都进行页面的关闭处理。因此,当开始新的存取时,必须进行页面的打开处理。
然后,由于步骤S23~S31与图5的步骤S5~S13相同,因此省略说明。当在步骤S31中判定为簇内未残留有队列时,关闭至今为止一直打开的页面(步骤S32)。如此,在图6中每当各簇的处理结束时都关闭页面这点与图5不同。然后,判定是否存在未处理的簇(步骤S33),如果还存在,则重复进行步骤S22以后的处理,如果不存在,则结束图6的处理。
如此,在本实施方式中,当对MRAM6等非易失性存储器进行存取时,根据队列保存部11的空白容量或保存在队列保存部11中的队列,对非易失性存储器的写入脉冲宽度进行控制。更具体而言,在没有队列保存部11的空白容量时、在保存在队列保存部11中的写入命令数大于读出命令数时,与通常相比使向非易失性存储器的写入脉冲的脉冲宽度变长。据此,即使不进行验证处理,错误发生概率也不会增大。另外,由于不需要验证处理,能够避免产生队列保存部11中无法保存的队列。
另外,在本实施方式中,当在写入命令之后不接着读出命令时,使写入脉冲的脉冲宽度变长而不需要验证处理,当在写入命令之后接着读出命令时,不进行验证处理地依次进行相同页面内的数据写入,之后,在关闭该页面时一并进行验证处理。据此,能够使读出命令的执行定时提前,能够提高针对处理器3的非易失性存储器的存取性能。
此外,能够将上述的实施方式汇总为以下的技术方案。
技术方案1
一种存储器系统,具备:
非易失性存储器;
存储部,能够进行与所述非易失性存储器相比高速的存取,在对所述非易失性存储器进行存取之前存储针对所述非易失性存储器的存取信息;以及
存储器控制部,根据所述存储部的空白容量或存储在所述存储部中的所述存取信息,对所述非易失性存储器的写入脉冲宽度进行控制。
技术方案2
根据技术方案1,存储在所述存储部中的所述存取信息包括通过处理器发布的针对所述非易失性存储器的存取的命令、应进行存取的地址以及数据。
技术方案3
根据技术方案1或2,所述存储器控制部根据所述存储部的空白容量或存储在所述存储部中的写入命令和读出命令,对所述非易失性存储器的写入脉冲宽度进行控制。
技术方案4
根据技术方案3,所述存储器控制部根据所述存储部的空白容量或存储在所述存储部中的写入命令和读出命令,选择第一模式和第二模式中的某一种,所述第一模式在以第一写入脉冲宽度对所述非易失性存储器写入数据之后进行读出并检验所写入的数据的验证处理,所述第二模式在不进行所述验证处理的情况下以比所述第一模式的所述第一写入脉冲宽度长的第二写入脉冲宽度写入数据。
技术方案5
根据技术方案4,所述存储器控制部当在所述存储部中没有空白容量或者在存储在所述存储部中的写入命令之后有应执行的读出命令时,选择所述第二模式。
技术方案6
根据技术方案1至5中的任一项,所述非易失性存储器包括多个存储器区域,
所述存储部与所述多个存储器区域中的应进行存取的存储器区域对应起来地存储所述存取信息。
技术方案7
根据技术方案6,所述存储器控制部在对存储在所述存储部中的针对一个存储器区域的存取信息进行处理之后,按顺序处理针对其它存储器区域的存取信息。
技术方案8
根据技术方案6或7,所述存储器控制部针对应进行存取的各存储器区域,选择所述第一模式或所述第二模式。
技术方案9
根据技术方案8,所述存储器控制部在选择所述第一模式的情况下,按顺序进行向作为写入对象的一个存储器区域的数据的写入,在针对所述一个存储器区域的存取结束而开始向其它存储器区域存取之前,进行对在所述一个存储器区域中写入的数据的验证处理。
技术方案10
根据技术方案8或9,所述存储器控制部当在存储在所述存储部中的针对一个存储器区域的存取信息之中包含写入命令和读出命令的情况下,按照存储在所述存储部中的顺序,执行针对所述一个存储器区域的写入处理和读出处理。
技术方案11
根据技术方案1至10中的任一项,所述存储部具备易失性存储器。
技术方案12
根据技术方案1至11中的任一项,所述非易失性存储器具备MRAM(Magnetoresistive Random Access Memory,磁阻式随机存取存储器)。
技术方案13
一种处理器系统,具备:
处理器;
非易失性存储器,通过所述处理器进行存取;
存储部,能够进行与所述非易失性存储器相比高速的存取,在对所述非易失性存储器进行存取之前存储针对所述非易失性存储器的存取信息;以及
存储器控制部,根据所述存储部的空白容量或存储在所述存储部中的所述存取信息,对所述非易失性存储器的写入脉冲宽度进行控制。
上面对本发明的若干实施方式进行了说明,但这些实施方式仅作为示例提示,并不限定发明的范围。这些新的实施方式能够以其它各种方式实施,在不脱离发明的宗旨的范围内,能够进行各种省略、置换、变更。这些实施方式及其变形包含在发明的范围和宗旨中,并且包含在权利要求记载的发明及其均等的范围中。

Claims (9)

1.一种存储器系统,具备:
非易失性存储器;
存储部,能够进行与所述非易失性存储器相比高速的存取,在对所述非易失性存储器进行存取之前存储针对所述非易失性存储器的包括写入命令和读出命令中的至少一方的存取信息;以及
存储器控制部,根据所述存储部的空白容量或存储在所述存储部中的写入命令和读出命令,选择第一模式和第二模式中的某一种,所述第一模式在以第一写入脉冲宽度对所述非易失性存储器写入数据之后进行读出并检验所写入的数据的验证处理,所述第二模式在不进行所述验证处理的情况下以比所述第一模式的所述第一写入脉冲宽度长的第二写入脉冲宽度写入数据。
2.根据权利要求1所述的存储器系统,其特征在于,
存储在所述存储部中的所述存取信息包括通过处理器发布的针对所述非易失性存储器的存取的命令、应进行存取的地址以及数据。
3.根据权利要求1或2所述的存储器系统,其特征在于,
所述存储器控制部当在所述存储部中没有空白容量或者在存储在所述存储部中的写入命令之后有应执行的读出命令时,选择所述第二模式。
4.根据权利要求1或2所述的存储器系统,其特征在于,
所述非易失性存储器包括多个存储器区域,
所述存储部与所述多个存储器区域中的应进行存取的存储器区域对应起来地存储所述存取信息。
5.根据权利要求4所述的存储器系统,其特征在于,
所述存储器控制部在对存储在所述存储部中的针对一个存储器区域的存取信息进行处理之后,按顺序处理针对其它存储器区域的存取信息。
6.根据权利要求4所述的存储器系统,其特征在于,
所述存储器控制部针对应进行存取的各存储器区域,选择所述第一模式或所述第二模式。
7.根据权利要求6所述的存储器系统,其特征在于,
所述存储器控制部在选择所述第一模式的情况下,按顺序进行向作为写入对象的一个存储器区域的数据的写入,在针对所述一个存储器区域的存取结束而开始向其它存储器区域存取之前,进行对在所述一个存储器区域中写入的数据的验证处理。
8.根据权利要求6所述的存储器系统,其特征在于,
所述存储器控制部当在存储在所述存储部中的针对一个存储器区域的存取信息之中包含写入命令和读出命令的情况下,按照存储在所述存储部中的顺序,执行针对所述一个存储器区域的写入处理和读出处理。
9.根据权利要求7所述的存储器系统,其特征在于,
所述存储器控制部当在存储在所述存储部中的针对一个存储器区域的存取信息之中包含写入命令和读出命令的情况下,按照存储在所述存储部中的顺序,执行针对所述一个存储器区域的写入处理和读出处理。
CN201710132910.9A 2016-09-20 2017-03-08 存储器系统及处理器系统 Active CN107844263B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016-183330 2016-09-20
JP2016183330A JP2018049672A (ja) 2016-09-20 2016-09-20 メモリシステムおよびプロセッサシステム

Publications (2)

Publication Number Publication Date
CN107844263A CN107844263A (zh) 2018-03-27
CN107844263B true CN107844263B (zh) 2021-02-05

Family

ID=61621016

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710132910.9A Active CN107844263B (zh) 2016-09-20 2017-03-08 存储器系统及处理器系统

Country Status (4)

Country Link
US (1) US10592163B2 (zh)
JP (1) JP2018049672A (zh)
CN (1) CN107844263B (zh)
TW (1) TWI663543B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109903800A (zh) * 2019-03-15 2019-06-18 中国科学院上海微系统与信息技术研究所 相变储存器控制装置、相变储存器控制方法、电子装置及存储介质
JP2023077829A (ja) * 2021-11-25 2023-06-06 ソニーセミコンダクタソリューションズ株式会社 電子機器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101625898A (zh) * 2008-07-10 2010-01-13 海力士半导体有限公司 对非易失性存储器设备进行编程的方法
CN103854705A (zh) * 2012-11-30 2014-06-11 三星电子株式会社 用于提供智能存储器架构的方法和系统
CN105659331A (zh) * 2013-10-28 2016-06-08 高通股份有限公司 电阻式存储器中的写脉冲宽度方案

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3591887B2 (ja) * 1994-09-12 2004-11-24 富士通株式会社 半導体記憶装置
JP4192060B2 (ja) 2003-09-12 2008-12-03 シャープ株式会社 不揮発性半導体記憶装置
US20080126690A1 (en) 2006-02-09 2008-05-29 Rajan Suresh N Memory module with memory stack
JP5400262B2 (ja) 2005-12-28 2014-01-29 ピーエスフォー ルクスコ エスエイアールエル 半導体装置
US8130535B2 (en) * 2009-09-01 2012-03-06 Qualcomm Incorporated Flexible word-line pulsing for STT-MRAM
US8347175B2 (en) * 2009-09-28 2013-01-01 Kabushiki Kaisha Toshiba Magnetic memory
JP4956640B2 (ja) 2009-09-28 2012-06-20 株式会社東芝 磁気メモリ
DE112009005413B4 (de) * 2009-12-02 2018-11-29 Micron Technology, Inc. Verfahren zur Aktualisierung für nichtflüchtige Speicher und Nichtflüchtiger-Speicher-Vorrichtung
JP5560944B2 (ja) 2010-06-18 2014-07-30 ソニー株式会社 記憶素子の駆動方法
JP5010723B2 (ja) * 2010-09-22 2012-08-29 株式会社東芝 半導体記憶制御装置
JP2014026681A (ja) * 2012-07-24 2014-02-06 Ps4 Luxco S A R L 半導体装置及びこれを備えた情報処理システム
JP6107625B2 (ja) * 2013-12-02 2017-04-05 ソニー株式会社 記憶制御装置、記憶装置、情報処理システムおよびその記憶制御方法
US9418721B2 (en) * 2014-01-21 2016-08-16 International Business Machines Corporation Determining and storing bit error rate relationships in spin transfer torque magnetoresistive random-access memory (STT-MRAM)
US9406368B2 (en) * 2014-01-21 2016-08-02 International Business Machines Corporation Dynamic temperature adjustments in spin transfer torque magnetoresistive random-access memory (STT-MRAM)
KR102364381B1 (ko) * 2015-03-06 2022-02-18 에스케이하이닉스 주식회사 메모리 시스템 및 그의 동작방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101625898A (zh) * 2008-07-10 2010-01-13 海力士半导体有限公司 对非易失性存储器设备进行编程的方法
CN103854705A (zh) * 2012-11-30 2014-06-11 三星电子株式会社 用于提供智能存储器架构的方法和系统
CN105659331A (zh) * 2013-10-28 2016-06-08 高通股份有限公司 电阻式存储器中的写脉冲宽度方案

Also Published As

Publication number Publication date
US20180081593A1 (en) 2018-03-22
US10592163B2 (en) 2020-03-17
JP2018049672A (ja) 2018-03-29
TW201814494A (zh) 2018-04-16
TWI663543B (zh) 2019-06-21
CN107844263A (zh) 2018-03-27

Similar Documents

Publication Publication Date Title
JP6122170B1 (ja) 不揮発性ram及び不揮発性ramを含むシステム
US8645723B2 (en) Asynchronous management of access requests to control power consumption
KR101056560B1 (ko) 고체 상태 디스크 시스템에서 버퍼 캐시의 프로그래밍 방법및 장치
US8954672B2 (en) System and method for cache organization in row-based memories
US20050055493A1 (en) [method for accessing large block flash memory]
US20110131366A1 (en) Memory management unit and memory management method
US10997082B2 (en) Memory system, computing system, and methods thereof for cache invalidation with dummy address space
US8495286B2 (en) Write buffer for improved DRAM write access patterns
CN109891397A (zh) 用于固态装置中的操作系统高速缓冲存储器的设备及方法
CN107844263B (zh) 存储器系统及处理器系统
JP2014154119A (ja) メモリ制御装置及び半導体記憶装置
US10496546B2 (en) Cache memory and processor system
US20070016720A1 (en) Non-volatile memory cell device, programming element and method for programming data into a plurality of non-volatile memory cells
US20180188976A1 (en) Increasing read pending queue capacity to increase memory bandwidth
KR101645003B1 (ko) 메모리 제어기 및 그 메모리 제어기가 탑재된 컴퓨팅 장치
CN102362263A (zh) Ssd控制器与ssd控制器的操作方法
US20130332665A1 (en) Memory with bank-conflict-resolution (bcr) module including cache
CN110543430B (zh) 一种使用mram的存储装置
US10553276B2 (en) Semiconductor memory device
US20130073790A1 (en) Magnetic random access memory with burst access
CN105320470B (zh) 存储设备中的访问抑制
KR101977866B1 (ko) 병렬 tlc stt mram 기반 대용량 llc 및 이의 동작 제어 방법
US10185510B2 (en) Bank interleaving controller and semiconductor device including the same
CN112579481B (zh) 数据处理方法、数据处理装置和计算装置
CN112965816B (zh) 内存管理技术及计算机系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: Tokyo

Patentee after: TOSHIBA MEMORY Corp.

Address before: Tokyo

Patentee before: Japanese businessman Panjaya Co.,Ltd.

Address after: Tokyo

Patentee after: Kaixia Co.,Ltd.

Address before: Tokyo

Patentee before: TOSHIBA MEMORY Corp.

CP01 Change in the name or title of a patent holder
TR01 Transfer of patent right

Effective date of registration: 20220701

Address after: Tokyo

Patentee after: Japanese businessman Panjaya Co.,Ltd.

Address before: Tokyo

Patentee before: TOSHIBA MEMORY Corp.

TR01 Transfer of patent right