JP5839048B2 - 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 - Google Patents

記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 Download PDF

Info

Publication number
JP5839048B2
JP5839048B2 JP2013553233A JP2013553233A JP5839048B2 JP 5839048 B2 JP5839048 B2 JP 5839048B2 JP 2013553233 A JP2013553233 A JP 2013553233A JP 2013553233 A JP2013553233 A JP 2013553233A JP 5839048 B2 JP5839048 B2 JP 5839048B2
Authority
JP
Japan
Prior art keywords
value
data
read
memory cell
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
JP2013553233A
Other languages
English (en)
Other versions
JPWO2013105414A1 (ja
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2013553233A priority Critical patent/JP5839048B2/ja
Publication of JPWO2013105414A1 publication Critical patent/JPWO2013105414A1/ja
Application granted granted Critical
Publication of JP5839048B2 publication Critical patent/JP5839048B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0033Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • 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/1675Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0035Evaluating degradation, retention or wearout, e.g. by counting writing cycles
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0059Security or protection circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • G11C7/1009Data masking during input/output
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0004Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • G11C2013/0076Write operation performed depending on read result
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2263Write conditionally, e.g. only if new data and old data differ
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50004Marginal testing, e.g. race, voltage or current testing of threshold voltage

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

本技術は、記憶制御装置に関する。詳しくは、不揮発性メモリのための記憶制御装置、記憶装置、情報処理システム、および、これらにおける処理方法ならびに当該方法をコンピュータに実行させるプログラムに関する。
情報処理システムにおいては、ワークメモリとしてDRAM(Dynamic Random Access Memory)等が用いられる。このDRAMは、通常、揮発性メモリであり、電源の供給が停止するとその記憶内容は消失する。一方、近年、不揮発性メモリ(NVM:Non-Volatile Memory)が用いられるようになっている。この不揮発性メモリとしては、大きなサイズを単位としたデータアクセスに対応したフラッシュメモリと、小さな単位での高速なランダムアクセスが可能な不揮発性ランダムアクセスメモリ(NVRAM:Non-Volatile RAM)とに大別される。ここで、フラッシュメモリの代表例としては、NAND型フラッシュメモリが挙げられる。一方、不揮発性ランダムアクセスメモリの例としては、ReRAM(Resistance RAM)、PCRAM(Phase-Change RAM)、MRAM(Magnetoresistive RAM)などが挙げられる。
ReRAMは、可変抵抗素子を用いた不揮発性メモリであり、データの書込みに先立ってブロック単位で消去を行う必要がなく、必要ページのみを直接書き換えることが可能である。この点で、浮遊ゲートの電化蓄積量による閾値をデータとして記憶するNANDフラッシュメモリ等とは異なっている。可変抵抗素子は、高抵抗状態(HRS:High Resistive State)と低抵抗状態(LRS:Low Resistive State)の2状態で1ビットの情報を記録することができる。この可変抵抗素子は、多数回連続して同じ極性の電圧を印加した場合には、可変抵抗処置の抵抗値が変化してしまい抵抗分布を乱すという問題がある。たとえば、同じ極性が連続する回数が増えていくにしたがって、HRSがLRSに、LRSがHRSに変化してしまう。このように抵抗値が変化すると、次に逆極性の電圧を印加する際に、通常と同じ電圧では正しく記録が行えなかったり、正しく記録を行うために絶対値の大きい電圧が必要になったりするおそれがある。そこで、従来、ライト処理の際に既書込みデータを読み出してライトデータと比較を行って、必要なビットのみを選択的に書き換えおよび消去する書込み方法が提案されている(例えば、特許文献1参照。)。
特表2007−525785号公報
上述の従来技術では、既書込みデータとライトデータとが同一データであれば書込みパルスを発生しないことにより、同一データを連続して書き込まないようにしている。しかしながら、このような制御を行った場合、同一データが連続する限りはそのメモリセルに物理的な書込みが発生しない状態が続き、時間経過とともにデータ保持特性(リテンション)が低下してしまうという問題が生じる。
本技術はこのような状況に鑑みて生み出されたものであり、不揮発性メモリのデータ保持特性を向上させることを目的とする。
本技術は、上述の問題点を解消するためになされたものであり、その第1の側面は、メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、ライトデータが上記第1の値であって上記第1リードデータが上記第2の値である場合に上記メモリセルを上記第1の値に書き換える第1ライト処理部と、上記メモリセルにおいて上記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、上記ライトデータが上記第2の値であって上記第2リードデータが上記第1の値である場合に上記メモリセルを上記第2の値に書き換える第2ライト処理部とを具備する記憶制御装置である。これにより、記憶制御装置において、標準の閾値とは異なる第1の閾値または第2の閾値を用いたプレリードデータに基づいてライト処理のためのビット操作を制御してデータ保持特性の強化を図るという作用をもたらす。なお、第1ライト処理部は、上記ライトデータが上記第1の値であって上記第1リードデータが上記第2の値である場合以外のときには書換えを行わないようにすることができる。また、第2ライト処理部は、上記ライトデータが上記第2の値であって上記第2リードデータが上記第1の値である場合以外のときには書換えを行わないようにすることができる。
また、この第1の側面において、上記メモリセルは可変抵抗素子であって、上記第1の閾値は標準の閾値よりも高抵抗状態側に設定され、上記第2の閾値は上記標準の閾値よりも低抵抗状態側に設定されてもよい。この場合、上記第1の値は論理0値であり、上記第2の値は論理1値であることを想定することができる。
また、この第1の側面において、上記メモリセルは可変抵抗素子であって、上記第1の閾値は標準の閾値よりも低抵抗状態側に設定され、上記第2の閾値は上記標準の閾値よりも高抵抗状態側に設定されてもよい。この場合、上記第1の値は論理1値であり、上記第2の値は論理0値であることを想定することができる。
また、本技術の第2の側面は、動作モードとして第1のモードまたは第2のモードの何れか一方を設定する動作モード設定部と、上記第1のモードが設定されている場合において、メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、上記第1のモードが設定されている場合において、ライトデータが上記第1の値であって上記第1リードデータが上記第2の値である場合に上記メモリセルを上記第1の値に書き換える第1ライト処理部と、上記第1のモードが設定されている場合において、上記メモリセルにおいて上記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、上記第1のモードが設定されている場合において、上記ライトデータが上記第2の値であって上記第2リードデータが上記第1の値である場合に上記メモリセルを上記第2の値に書き換える第2ライト処理部と、上記第2のモードが設定されている場合において、上記メモリセルにおいて標準の閾値を基準として第3リードデータとして読み出す第3リード処理部と、上記第2のモードが設定されている場合において、上記ライトデータが上記第1の値であって上記第3リードデータが上記第2の値である場合に上記メモリセルを上記第1の値に書き換え、上記ライトデータが上記第2の値であって上記第3リードデータが上記第1の値である場合に上記メモリセルを上記第2の値に書き換える第3ライト処理部とを具備する記憶制御装置である。これにより、第1の閾値または第2の閾値を用いたプレリードを行う第1のモードと、標準の閾値を用いたプレリードを行う第2のモードとを切り換えることによって、データ保持特性の強化とプレリード回数の均衡を図るという作用をもたらす。なお、第1ライト処理部は、上記ライトデータが上記第1の値であって上記第1リードデータが上記第2の値である場合以外のときには書換えを行わないようにすることができる。また、第2ライト処理部は、上記ライトデータが上記第2の値であって上記第2リードデータが上記第1の値である場合以外のときには書換えを行わないようにすることができる。また、第3ライト処理部は、上記ライトデータが上記第1の値であって上記第3リードデータが上記第2の値である場合、または、上記ライトデータが上記第2の値であって上記第3リードデータが上記第1の値である場合以外のときには書換えを行わないようにすることができる。
また、この第2の側面において、リード処理の際にエラーが検出されてそのエラー訂正が行われると、上記動作モードとして上記第1のモードを設定して、上記エラー訂正に係るアドレスを上記ライトアドレスとし、上記エラー訂正されたデータを上記ライトデータとして書き直すようにしてもよい。これにより、第1のモードによりデータリフレッシュを行うという作用をもたらす。
また、本技術の第3の側面は、メモリセルを備えるメモリアレイと、上記メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、ライトデータが上記第1の値であって上記第1リードデータが上記第2の値である場合に上記メモリセルを上記第1の値に書き換える第1ライト処理部と、上記メモリセルにおいて上記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、上記ライトデータが上記第2の値であって上記第2リードデータが上記第1の値である場合に上記メモリセルを上記第2の値に書き換える第2ライト処理部とを具備する記憶装置である。これにより、記憶装置において、メモリセルの標準の閾値とは異なる第1の閾値または第2の閾値を用いたプレリードデータに基づいてライト処理のためのビット操作を制御してデータ保持特性の強化を図るという作用をもたらす。なお、第1ライト処理部は、上記ライトデータが上記第1の値であって上記第1リードデータが上記第2の値である場合以外のときには書換えを行わないようにすることができる。また、第2ライト処理部は、上記ライトデータが上記第2の値であって上記第2リードデータが上記第1の値である場合以外のときには書換えを行わないようにすることができる。
また、本技術の第4の側面は、メモリセルを備えるメモリアレイと、動作モードとして第1のモードまたは第2のモードの何れか一方を設定する動作モード設定部と、上記第1のモードが設定されている場合において、上記メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、上記第1のモードが設定されている場合において、ライトデータが上記第1の値であって上記第1リードデータが上記第2の値である場合に上記メモリセルを上記第1の値に書き換える第1ライト処理部と、上記第1のモードが設定されている場合において、上記メモリセルにおいて上記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、上記第1のモードが設定されている場合において、上記ライトデータが上記第2の値であって上記第2リードデータが上記第1の値である場合に上記メモリセルを上記第2の値に書き換える第2ライト処理部と、上記第2のモードが設定されている場合において、上記メモリセルにおいて標準の閾値を基準として第3リードデータとして読み出す第3リード処理部と、上記第2のモードが設定されている場合において、上記ライトデータが上記第1の値であって上記第3リードデータが上記第2の値である場合に上記メモリセルを上記第1の値に書き換え、上記ライトデータが上記第2の値であって上記第3リードデータが上記第1の値である場合に上記メモリセルを上記第2の値に書き換える第3ライト処理部とを具備する記憶装置である。これにより、記憶装置において第1の閾値または第2の閾値を用いたプレリードを行う第1のモードと、標準の閾値を用いたプレリードを行う第2のモードとを切り換えることによって、データ保持特性の強化とプレリード回数の均衡を図るという作用をもたらす。なお、第1ライト処理部は、上記ライトデータが上記第1の値であって上記第1リードデータが上記第2の値である場合以外のときには書換えを行わないようにすることができる。また、第2ライト処理部は、上記ライトデータが上記第2の値であって上記第2リードデータが上記第1の値である場合以外のときには書換えを行わないようにすることができる。また、第3ライト処理部は、上記ライトデータが上記第1の値であって上記第3リードデータが上記第2の値である場合、または、上記ライトデータが上記第2の値であって上記第3リードデータが上記第1の値である場合以外のときには書換えを行わないようにすることができる。
また、本技術の第5の側面は、メモリセルを備えるメモリアレイと、動作モードとして第1のモードまたは第2のモードの何れか一方を設定する動作モード設定部と、上記第1のモードが設定されている場合において、上記メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、上記第1のモードが設定されている場合において、ライトデータが上記第1の値であって上記第1リードデータが上記第2の値である場合に上記メモリセルを上記第1の値に書き換える第1ライト処理部と、上記第1のモードが設定されている場合において、上記メモリセルにおいて上記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、上記第1のモードが設定されている場合において、上記ライトデータが上記第2の値であって上記第2リードデータが上記第1の値である場合に上記メモリセルを上記第2の値に書き換える第2ライト処理部と、上記第2のモードが設定されている場合において、上記メモリセルにおいて標準の閾値を基準として第3リードデータとして読み出す第3リード処理部と、上記第2のモードが設定されている場合において、上記ライトデータが上記第1の値であって上記第3リードデータが上記第2の値である場合に上記メモリセルを上記第1の値に書き換え、上記ライトデータが上記第2の値であって上記第3リードデータが上記第1の値である場合に上記メモリセルを上記第2の値に書き換える第3ライト処理部と、上記メモリアレイに対するリードコマンドまたはライトコマンドを発行するホストコンピュータとを具備する情報処理システムである。これにより、情報処理システムにおいて第1の閾値または第2の閾値を用いたプレリードを行う第1のモードと、標準の閾値を用いたプレリードを行う第2のモードとを切り換えて、データ保持特性の強化とプレリード回数の均衡を図るという作用をもたらす。なお、第1ライト処理部は、上記ライトデータが上記第1の値であって上記第1リードデータが上記第2の値である場合以外のときには書換えを行わないようにすることができる。また、第2ライト処理部は、上記ライトデータが上記第2の値であって上記第2リードデータが上記第1の値である場合以外のときには書換えを行わないようにすることができる。また、第3ライト処理部は、上記ライトデータが上記第1の値であって上記第3リードデータが上記第2の値である場合、または、上記ライトデータが上記第2の値であって上記第3リードデータが上記第1の値である場合以外のときには書換えを行わないようにすることができる。
また、この第5の側面において、上記ホストコンピュータは、上記ライトコマンドに係るライトデータの書換え頻度に関する情報を上記ライトコマンドに付加して発行し、
上記動作モード設定部は、上記ライトデータの書換え頻度が低い頻度を示している場合には上記第1のモードを設定し、それ以外の場合には上記第2のモードを設定するようにしてもよい。これにより、ホストコンピュータからの指示に従って、動作モードを設定するという作用をもたらす。
また、本技術の第6の側面は、メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理手順と、ライトデータが上記第1の値であって上記第1リードデータが上記第2の値である場合に上記メモリセルを上記第1の値に書き換える第1ライト処理手順と、上記メモリセルにおいて上記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理手順と、上記ライトデータが上記第2の値であって上記第2リードデータが上記第1の値である場合に上記メモリセルを上記第2の値に書き換える第2ライト処理手順とを具備する記憶制御方法である。これにより、標準の閾値とは異なる第1の閾値または第2の閾値を用いたプレリードデータに基づいてライト処理のためのビット操作を制御してデータ保持特性の強化を図るという作用をもたらす。なお、第1ライト処理部は、上記ライトデータが上記第1の値であって上記第1リードデータが上記第2の値である場合以外のときには書換えを行わないようにすることができる。また、第2ライト処理部は、上記ライトデータが上記第2の値であって上記第2リードデータが上記第1の値である場合以外のときには書換えを行わないようにすることができる。
本技術によれば、不揮発性メモリのデータ保持特性を向上させることができるという優れた効果を奏し得る。
本技術の実施の形態における情報処理システムの一構成例を示す図である。 本技術の実施の形態における不揮発性ランダムアクセスメモリ301の一構成例を示す図である。 本技術の実施の形態における機能構成例を示す図である。 可変抵抗素子の抵抗分布を模式的に示した図である。 本技術の実施の形態における低抵抗閾値および高抵抗閾値を説明するための図である。 可変抵抗素子に対して消去およびプログラムにより書込みを行う具体例を示す図である。 本技術の実施の形態において書込みを行う具体例を示す図である。 本技術の実施の形態における保護モードのライト処理手順例を示す流れ図である。 本技術の第2の実施の形態における情報処理システムの処理手順例を示す流れ図である。 本技術の実施の形態における標準モードのライト処理の手順例を示す流れ図である。 本技術の第3の実施の形態における情報処理システムの処理手順例を示す流れ図である。 本技術の第4の実施の形態における情報処理システムの処理手順例を示す流れ図である。
以下、本技術を実施するための形態(以下、実施の形態と称する)について説明する。説明は以下の順序により行う。
1.第1の実施の形態(ライトに先立って読出し閾値をシフトさせて2回プレリードを行う例)
2.第2の実施の形態(プレリード回数の異なる2つのモードを有する例)
3.第3の実施の形態(エラー訂正が発生した際にリフレッシュを行う例)
4.第4の実施の形態(データ属性に応じてモード切替を行う例)
<1.第1の実施の形態>
[情報処理システムの構成]
図1は、本技術の実施の形態における情報処理システムの一構成例を示す図である。この情報処理システムは、ホストコンピュータ100と、メモリ300と、メモリ制御部200とを備える。メモリ制御部200およびメモリ300は、メモリシステム400を構成する。ホストコンピュータ100は、メモリシステム400に対してデータのリードまたはライトを要求するコマンドを発行するものである。
メモリ300は、通常の揮発性メモリ303以外に、不揮発性メモリを含む。不揮発性メモリとしては、大きなサイズを単位としたデータアクセスに対応したフラッシュメモリ302と、小さな単位での高速なランダムアクセスが可能な不揮発性ランダムアクセスメモリ(NVRAM)301とに大別される。ここで、フラッシュメモリ302の代表例としては、NAND型フラッシュメモリが挙げられる。一方、NVRAM301の例としては、ReRAM、PCRAM、MRAMなどが挙げられるが、この実施の形態では、特に可変抵抗素子を用いたReRAMを想定する。揮発性メモリ303は、作業領域として用いられ、また、管理用のデータを格納するためにも用いられる。さらに、揮発性メモリ303は、キャッシュとして用いることも可能である。揮発性メモリ303は、DRAM、SRAMなどにより実現することができる。揮発性メモリ303に格納されるデータは、電源断に備えて、必要に応じてNVRAM301またはフラッシュメモリ302に保持しておいて、次に電源投入された際に再利用されるようにしてもよい。
メモリ制御部200は、プロセッサ210と、内蔵メモリ220と、ECC処理部230と、周辺回路250と、ホストインターフェース201と、メモリインターフェース291乃至293とを備える。これらはバス280により相互に接続される。
プロセッサ210は、ホストコンピュータ100からの制御コマンドを解釈して実行する処理装置である。このプロセッサ210は、内蔵メモリ220における記憶領域をプログラム格納領域およびワーク領域としてプログラムを実行する。
内蔵メモリ220は、図示しない内蔵ROMおよび内蔵RAMを含むメモリである。プログラムは内蔵ROMに格納しておいてもよく、また、メモリ300から起動時に内蔵RAMに転送するようにしてもよい。この内蔵RAMは、ワーク領域や管理用データなどの一時格納など様々な用途に用いられる。
ECC処理部230は、データの各々に対応して付加されるエラー訂正コード(ECC:Error Correcting Code)の生成およびそのECCを用いたエラー訂正を行うものである。このECC処理部230は、ハードウェアとして実現してもよく、また、プロセッサ210においてプログラムを実行することによりソフトウェアとして実現してもよい。
周辺回路250は、プロセッサ210の周辺回路であり、例えば内蔵タイマーや汎用入出力(GPIO:General Purpose Input/Output)等を含む。
ホストインターフェース201は、ホストコンピュータ100とのやりとりを行うインターフェースである。メモリシステム400はホストインターフェース201を介して接続され、ホストコンピュータ100から、メモリ300を制御するための制御コマンドを受信し、この制御コマンドによって制御されてメモリシステムとして動作する。このホストインターフェース201としては、例えば、SATA、PCI Express、eMMC、USBなどを利用することができる。
メモリインターフェース291は、NVRAM301とのやりとりを行うインターフェースである。メモリインターフェース292は、フラッシュメモリ302とのやりとりを行うインターフェースである。メモリインターフェース293は、揮発性メモリ303とのやりとりを行うインターフェースである。
メモリシステム400は、ライトコマンドによりメモリ300へのデータの書込みを行い、リードコマンドによりメモリ300からのデータの読出しを行う。ライトコマンドおよびリードコマンドは、対象データの存在する先頭論理アドレスおよびデータサイズをパラメータとして指定する。メモリシステム400がライトコマンドのデータを受信すると、このデータに対してECCが付加され、不揮発性メモリ(NVRAM301またはフラッシュメモリ302)に書き込まれる。
図2は、本技術の実施の形態における不揮発性ランダムアクセスメモリ(NVRAM)301の一構成例を示す図である。NVRAM301は、メモリアレイ310と、センスアンプ313と、ライトバッファ320と、リードバッファ330と、論理評価部340と、制御部350と、閾値設定部360と、制御インターフェース309とを備えている。
制御インターフェース309は、メモリ制御部200との間の接続を司るインターフェースである。この制御インターフェース309には、ライトバッファ320、リードバッファ330、論理評価部340および制御部350が接続される。
メモリアレイ310は、ビット毎に所定の状態を保持するメモリセルを格子状に並べたものである。メモリアレイ310のメモリセルは可変抵抗素子により構成される抵抗変化型メモリである。メモリアレイ310は複数のページから構成される。ページ内には、データを格納するデータ部311の他に冗長部312が設けられており、エラー訂正コード(ECC)などが格納される。メモリアレイ310はセンスアンプ313を経由して、読出しまたは書込みが行われる。
センスアンプ313は、メモリアレイ310からの電圧を増幅するための増幅回路である。このセンスアンプ313には、ライトバッファ320、リードバッファ330、論理評価部340、制御部350および閾値設定部360が接続される。
ライトバッファ320は、メモリアレイ310にライトされるデータを一時的に保持するバッファである。このライトバッファ320には制御インターフェース309からのライトデータが信号線305を介して保持され、信号線328を介してセンスアンプ313に出力される。
リードバッファ330は、メモリアレイ310からリードされたデータを一時的に保持するバッファである。このリードバッファ330には、ライトの際には、ライトに先立ってプレリードデータが保持される。このリードバッファ330にはセンスアンプ313からのリードデータが信号線318を介して保持され、信号線338を介して制御インターフェース309に出力される。
論理評価部340は、ライトバッファ320およびリードバッファ330に保持されたデータに基づいて論理評価を行い、マスクデータを生成するものである。この論理評価部340において生成されたマスクデータは、信号線348を介してメモリアレイ310に供給される。
制御部350は、NVRAM301内の各ブロックを制御するコントローラである。この制御部350は、例えばシーケンサにより実現される。この制御部350は、信号線306を介して制御インターフェース309からのリードまたはライト等の指示を受け取り、信号線357を介して制御インターフェース309に対する応答を伝達する。また、制御部350は、信号線358を介してセンスアンプ313に対する制御信号を伝達し、信号線319を介してセンスアンプ313からの応答を受け取る。また、制御部350は、信号線359を介して論理評価部340に対する制御信号を伝達する。
閾値設定部360は、メモリアレイ310からのリードの際の閾値を設定するものである。この閾値設定部360により設定される閾値の詳細については後述する。この閾値設定部360は、センスアンプ313における読出し電圧と比較される参照電圧源または参照電流源であり、例えば複数の抵抗を有してこれらを切り替えることにより実現することができる。この閾値設定部360の出力は、信号線369によってセンスアンプ313に伝達される。また、閾値の切替えの際には、制御部350から信号線358を介してセンスアンプ313に指示が伝達される。
図3は、本技術の実施の形態における機能構成例を示す図である。ここでは、論理評価部340においてマスク生成部341の機能を有し、メモリアレイ310においてビット操作部315、メモリセル316およびリード処理部317の機能を有することを想定している。
マスク生成部341は、ライトバッファ320に保持されたライトデータと、リードバッファ330に保持されたプレリードデータとをビット毎に比較して、それぞれ対応するビットからなる消去マスクまたはプログラムマスクを生成するものである。消去マスクは、プレリードデータがHレベルかつライトデータがLレベルであるビットについてはHレベルをLレベルに消去する旨を示し、それ以外のビットについてはマスクする旨を示す。プログラムマスク、プレリードデータがLレベルかつライトデータがHレベルであるビットについてはLレベルをHレベルにプログラムする旨を示し、それ以外のビットについてはマスクする旨を示す。
ビット操作部315は、マスク生成部341によって生成された消去マスクまたはプログラムマスクに従って、メモリセル316のライトアドレスに係るデータ領域において、各ビットの消去またはプログラムを行う。すなわち、消去マスクが与えられた場合には消去する旨を示すビットについてのみLレベルに消去する操作を行い、それ以外のビットは何も書換えを行わない。また、プログラムマスクが与えられた場合にはプログラムする旨を示すビットについてのみHレベルにプログラムする操作を行い、それ以外のビットは何も書換えを行わない。
リード処理部317は、ライト動作に先立ち、閾値設定部360において設定された閾値を基準として、メモリセル316のライトアドレスに係るデータ領域からデータを読み出すものである。このようにしてライト動作に先立って読み出されたデータは、プレリードデータとしてリードバッファ330に保持される。
この機能構成例における処理は、制御部350によって必要に応じて適宜繰り返される。後述するように、この実施の形態では、消去マスクおよびプログラムマスクのそれぞれの生成のために、リード処理部317におけるプレリードが行われる。また、ビット操作部315において消去およびプログラムが行われる。すなわち、リード処理部317は特許請求の範囲に記載の第1リード処理部、第2リード処理部および第3リード処理部の一例であり、ビット操作部315は特許請求の範囲に記載の第1ライト処理部、第2ライト処理部および第3ライト処理部の一例である。なお、この実施の形態では制御部350による繰返し実行を想定したが、第1リード処理部と、第2リード処理部と、第3リード処理部、および、第1ライト処理部と、第2ライト処理部と、第3ライト処理部は、それぞれ独立した構成要素として実現してもよい。
[プレリードの閾値]
図4は、可変抵抗素子の抵抗分布を模式的に示した図である。横軸は抵抗値Rを示しており、縦軸はセルの数の統計的な分布を相対値により示している。この図が示すように、可変抵抗素子の抵抗分布は大きく2つの分布に分かれており、それぞれ低抵抗状態(LRS:Low-Resistance State)および高抵抗状態(HRS:High-Resistance State)と称する。これら低抵抗状態と高抵抗状態とを分離するために通常用いられる敷値を標準閾値と呼ぶことにする。
可変抵抗素子の高抵抗状態および低抵抗状態をそれぞれ論理0値または論理1値の何れかに対応付けることにより、可変抵抗素子はメモリセルとして機能する。論理0値または論理1値の何れに対応付けるかは任意である。高抵抗状態を論理0値に対応付けて、低抵抗状態を論理1値に対応付けた場合には、低抵抗状態のセルが高抵抗状態になるよう消去され、高抵抗状態のセルが低抵抗状態になるようプログラムされる。低抵抗状態を論理0値に対応付けて、高抵抗状態を論理1値に対応付けた場合には、高抵抗状態のセルが低抵抗状態になるよう消去され、低抵抗状態のセルが高抵抗状態になるようプログラムされる。
図5は、本技術の実施の形態における低抵抗閾値および高抵抗閾値を説明するための図である。同図のaにおいて、高抵抗状態の裾ビット801は、その他のビットに比べてデータの保持特性が良くない。そのため、この裾ビット801の状態にあるメモリセルについては、再度書込みをすることによってその状態を改善することが望ましい。しかしながら、同じ状態となる書込みを許容しない制御を行っている場合には、このメモリセルを高抵抗状態と認識してしまうと、連続して高抵抗状態になるように書込みを行うことが許容されなくなる。そこで、この実施の形態では、高抵抗状態の裾ビット801については低抵抗状態にあるものとみなすように、基準となる閾値を高抵抗状態側にシフトして、高抵抗閾値によりプレリードを行う。これにより、裾ビット801については低抵抗状態にあるものとしてプレリードされ、その後、高抵抗状態になるように書込みが行われる。
同様に、同図のbにおいて、低抵抗状態の裾ビット802は、その他のビットに比べてデータの保持特性が良くない。そこで、裾ビット801の場合と同様に、低抵抗状態の裾ビット802については高抵抗状態にあるものとみなすように、基準となる閾値を低抵抗状態側にシフトして、低抵抗閾値によりプレリードを行う。これにより、裾ビット802については高抵抗状態にあるものとしてプレリードされ、その後、低抵抗状態になるように書込みが行われる。
[消去およびプログラムの具体例]
図6は、可変抵抗素子に対して消去およびプログラムにより書込みを行う具体例を示す図である。ここでは、標準敷値を用いた大まかな流れを示しており、低抵抗閾値および高抵抗状態を使い分けたものではない。この例では、ライトデータ「LLLLHHHH」を書き込む際に予めプレリードが行われ、現在の値として「LHHLHLHL」が得られたものと想定している。そして、同じ状態となる書込みが発生しないように、「L」に消去すべきビットは現在の値が「H」のビット位置のみとなるように消去マスクを作成し、「H」にプログラムすべきビットは現在の値が「L」のビット位置のみとなるようにプログラムマスクを作成する。なお、この例では、「L」レベルを論理0値に、「H」レベルを論理1値にそれぞれ対応付けている。
この場合、現在の値「H」を「L」に消去する必要があるのは第5ビットおよび第6ビットであるため、消去マスクとしては「MEEMMMMM」というパターンが得られる。ここで、「E」は消去対象となるビットを、「M」は消去対象とならないビットをそれぞれ意味する。
一方、現在の値「L」を「H」にプログラムする必要があるのは第0ビットおよび第2ビットであるため、プログラムマスクとしては「MMMMMPMP」というパターンが得られる。ここで、「P」はプログラム対象となるビットを、「M」はプログラム対象とならないビットをそれぞれ意味する。
これら消去マスクおよびプログラムマスクが用意されると、消去マスクに従って消去が行われ、プログラムマスクに従ってプログラムが行われる。なお、プログラムおよび消去の順番はどちらが先でも構わない。
図7は、本技術の実施の形態において書込みを行う具体例を示す図である。ここでは、低抵抗閾値および高抵抗状態を使い分けてプレリードが行われる。この例でも、ライトデータ「LLLLHHHH」を書き込む際に予めプレリードが行われ、現在の値として「LHHLHLHL」が得られたものと想定している。ただし、メモリセルの状態として、第3ビットが低抵抗状態の裾ビット802にあり、第7ビットが高抵抗状態の裾ビット801にあるものとする。
まず、消去マスクを生成するために、高抵抗閾値によりプレリードが行われる。この例では第7ビットが高抵抗状態の裾ビット801にあるため、「H」レベルとして読み出される。そのため、消去マスクとしては「EEEMMMMM」というパターンが得られる。すなわち、この例では第7ビットも消去対象となる。
続いて、プログラムマスクを生成するために、低抵抗閾値によりプレリードが行われる。この例では第3ビットが低抵抗状態の裾ビット802にあるため、「L」レベルとして読み出される。そのため、プログラムマスクとしては「MMMMPPMP」というパターンが得られる。すなわち、この例では第3ビットもプログラム対象となる。
[情報処理システムの動作]
図8は、本技術の実施の形態における情報処理システムのライト処理手順例を示す流れ図である。まず、NVRAM301に対してライトデータおよびライト指示が発行されると(ステップS931)、消去マスクを作成するために高抵抗閾値がセットされて(ステップS932)、メモリセル316からプレリードが行われる(ステップS933)。このプレリードは、リード処理部317により実行される。ライトデータはライトバッファ320に保持され、プレリードデータはリードバッファ330に保持される。
そして、マスク生成部341は、ライトデータとプレリードデータを比較して(ステップS934)、上述の要領で消去マスクを生成する(ステップS935)。すなわち、ライトデータが「L」レベルでプレリードデータが「H」レベルのビット位置については「E」を、それ以外のビット位置については「M」をそれぞれパターンとする消去マスクを生成する。そして、この消去マスクに従って、ビット操作部315によってメモリセル316に対する消去処理が行われる(ステップS936)。この消去の際には検証(Verify)が行われ(ステップS937)、検証に成功するまで繰り返される(ステップS938:No)。ただし、繰り返し上限回数に達すると(ステップS939:Yes)、標準閾値にリセットされて(ステップS952)、エラー終了する。
次に、プログラムマスクを作成するために低抵抗閾値がセットされて(ステップS942)、メモリセル316からプレリードが行われる(ステップS943)。このプレリードは、リード処理部317により実行され、プレリードデータはリードバッファ330に保持される。
そして、マスク生成部341は、ライトデータとプレリードデータを比較して(ステップS944)、上述の要領でプログラムマスクを生成する(ステップS945)。すなわち、ライトデータが「H」レベルでプレリードデータが「L」レベルのビット位置については「P」を、それ以外のビット位置については「M」をそれぞれパターンとするプログラムマスクを生成する。そして、このプログラムマスクに従って、ビット操作部315によってメモリセル316に対するプログラム処理が行われる(ステップS946)。このプログラムの際には検証(Verify)が行われ(ステップS947)、検証に成功するまで繰り返される(ステップS948:No)。ただし、繰り返し上限回数に達すると(ステップS949:Yes)、標準閾値にリセットされて(ステップS952)、エラー終了する。
消去およびプログラムが完了すると、標準閾値にリセットされて(ステップS951)、正常終了する。なお、ここでは消去の後にプログラムを行う例について説明したが、この順序は逆でもよく、プログラムの後に消去を行うようにしてもよい。
このように、本技術の第1の実施の形態によれば、プレリードの閾値を変更することにより、裾ビットについては異なる状態として読み出して、再度修正書込みを行うことができ、データ保持特性を改善することができる。
<2.第2の実施の形態>
上述の第1の実施の形態では、消去マスクを作成する際には高抵抗閾値にセットし、プログラムマスクを作成する際には低抵抗閾値にセットすることにより、常時強制的に裾ビットの再書込みを行っていた。この場合、ライトのたびにプレリードを2回行うことになるため、動作が遅くなるという問題がある。そこで、第1の実施の形態における動作モードを保護モードと称し、必要なときのみ保護モードによる動作を行うようにしたものを第2の実施の形態として説明する。基本的なシステム構成は第1の実施の形態において説明したものと同様であり、例えば制御部350がこの動作モードの設定を行う。すなわち、制御部350は、特許請求の範囲に記載の動作モード設定部の一例である。
[情報処理システムの動作]
図9は、本技術の第2の実施の形態における情報処理システムの処理手順例を示す流れ図である。この第2の実施の形態では、ホストコンピュータ100からの指示により、NVRAM301の制御部350において動作モードを決定することを想定する。標準モードにおいてはライトに先立って標準閾値によるプレリードが1回行われる。一方、保護モードにおいては第1の実施の形態と同様に、ライトに先立って高抵抗閾値によるプレリードと低抵抗閾値によるプレリードが併せて2回行われる。
ライト処理の際、ホストコンピュータ100からの指示が保護モードを示している場合には(ステップS901:Yes)、保護モードによるライト処理が行われる(ステップS930)。一方、ホストコンピュータ100からの指示が標準モードを示している場合には(ステップS901:No)、標準モードによるライト処理が行われる(ステップS910)。標準モードによるライト処理(ステップS930)は、図8により説明した処理手順と同様である。
図10は、本技術の第2の実施の形態における標準モードのライト処理(ステップS910)の手順例を示す流れ図である。まず、NVRAM301に対してライトデータおよびライト指示が発行されると(ステップS911)、消去マスクおよびプログラムマスクを作成するために、メモリセル316から標準閾値によるプレリードが行われる(ステップS913)。このプレリードは、リード処理部317により実行される。ライトデータはライトバッファ320に保持され、プレリードデータはリードバッファ330に保持される。
そして、マスク生成部341は、ライトデータとプレリードデータを比較して(ステップS914)、上述の要領で消去マスクを生成する(ステップS915)。すなわち、ライトデータが「L」レベルでプレリードデータが「H」レベルのビット位置については「E」を、それ以外のビット位置については「M」をそれぞれパターンとする消去マスクを生成する。そして、この消去マスクに従って、ビット操作部315によってメモリセル316に対する消去処理が行われる(ステップS916)。この消去の際には検証(Verify)が行われ(ステップS917)、検証に成功するまで繰り返される(ステップS918:No)。ただし、繰り返し上限回数に達すると(ステップS919:Yes)、エラー終了する。
次に、マスク生成部341は、上述の要領でプログラムマスクを生成する(ステップS925)。すなわち、ライトデータが「H」レベルでプレリードデータが「L」レベルのビット位置については「P」を、それ以外のビット位置については「M」をそれぞれパターンとするプログラムマスクを生成する。そして、このプログラムマスクに従って、ビット操作部315によってメモリセル316に対するプログラム処理が行われる(ステップS926)。このプログラムの際には検証(Verify)が行われ(ステップS927)、検証に成功するまで繰り返される(ステップS928:No)。ただし、繰り返し上限回数に達すると(ステップS929:Yes)、エラー終了する。
消去およびプログラムが完了すると、ライト処理は正常終了する。なお、ここでは消去の後にプログラムを行う例について説明したが、この順序は逆でもよく、プログラムの後に消去を行うようにしてもよい。
このように、本技術の第2の実施の形態によれば、状況に応じて裾ビットの強制的再修正を行わないように動作モードを変更することにより、プレリード回数を抑制することができる。
<3.第3の実施の形態>
可変抵抗素子を用いたReRAMでは、データを保持してから時間が経過するにつれてデータ保持特性が悪化し、これによりエラー訂正コード(ECC)により検出訂正されるエラー数が増加する。例えば、4ビットの訂正能力を有するエラー訂正コードを用いた場合、4ビットまでのエラーは訂正できるが、それ以上であれば訂正ができなくなる。そのため、訂正不可能になる前にエラー訂正後のデータを書き直す手法(データリフレッシュ)が有効である。しかしながら、上述の第2の実施の形態における標準モードのような制御を行った場合には、プレリードデータとライトデータが同じである場合には全てのビットにおいてプログラムも消去を行われない。一方、保護モードのような制御を常に行った場合には、プレリード回数が増えて動作が遅くなるおそれがある。
そこで、以下の第3の実施の形態では、標準閾値を用いてリード動作を行い、エラーが検出された場合に、検出されたエラーが訂正可能な場合には保護モードによりデータリフレッシュを行う。これにより、常に保護モードを用いるよりも、動作速度の観点で改善を行い、また、保護モードを用いたデータリフレッシュ時には、裾ビットに対して修正書込みを行ってデータ保持特性を改善する。なお、これらデータリフレッシュのための一連の動作はメモリシステム400内で閉じており、上位のホストコンピュータ100側ではこれを意識する必要はない。また、基本的なシステム構成は第1の実施の形態において説明したものと同様である。
[情報処理システムの動作]
図11は、本技術の第3の実施の形態における情報処理システムの処理手順例を示す流れ図である。この第3の実施の形態では、ホストコンピュータ100からリードコマンドを受けると、リード処理部317によって、NVRAM301の指定されたリードアドレスから標準閾値によりデータが読み出される(ステップS961)。このリードアドレスが論理アドレスである場合、メモリシステム400内で物理アドレスに変換して、NVRAM301の該当する物理アドレスからデータが読み出される。その場合、論理アドレスを物理アドレスに変換するためのアドレス変換テーブルを備えてもよい。
次に、読み出されたデータにエラーが含まれるか否かがECC処理部230によってチェックされる。エラーが検出されなければ(ステップS962:No)、読み出されたデータをホストコンピュータ100に対して出力し(ステップS963)、ステータスを「正常」に更新する(ステップS964)。このステータスは、例えばレジスタに記憶されており、ホストコンピュータ100はこのレジスタを読み出すことにより、正常終了したか否かを確認することができる。
エラーが検出された場合には(ステップS962:Yes)、そのエラーが訂正可能なものであるかが判断される。エラー訂正できない場合には(ステップS965:No)、読み出されたデータを訂正せずにホストコンピュータ100に対して出力し(ステップS966)、ステータスを「訂正不能エラー」に更新する(ステップS967)。なお、この場合にはエラー終了になるため、読み出されたデータをホストコンピュータ100に対して出力しないという選択も考えられる。
エラー訂正が可能な場合には(ステップS965:Yes)、ECC処理部230においてエラー訂正が行われる(ステップS968)。そして、訂正後のデータをホストコンピュータ100に対して出力し(ステップS969)、ステータスを「訂正可能エラー」に更新する(ステップS971)。
エラー訂正後(ステップS971)、データリフレッシュを行うか否かの判断が行われる。例えば、ECC処理部230の訂正能力が4ビットの場合において3ビット以上の訂正可能エラーが生じるとデータリフレッシュを行う、といったビット数を閾値とした基準が設けられる。データリフレッシュが必要と判断された場合(ステップS972:Yes)、書き戻しに備えて、訂正後のデータをメモリ300等の何れかの領域に一時的に格納しておく(ステップS973)。
そして、動作モードを標準モードから保護モードに切り替える(ステップS974)。ECCエラーが発生している一つの要因は時間経過によるデータ保持特性の低下と考えられ、ECCエラーが発生したビット以外でも裾ビットが多発しているおそれがあるため、保護モードに切り替えることにより修正書込みを行うためである。
そして、その切り替えられた保護モードにおいて、メモリに一時格納されている訂正後のデータを、該当アドレスに対して書き直す(ステップS975)。これによりECCエラーが発生したビットと、これ以外の裾ビットに対して修正書込みが行われる。可変抵抗素子を用いた不揮発性メモリは、浮遊ゲートを用いた例えばNANDフラッシュメモリと異なり、同一アドレスに対する書戻しが可能である。したがって、論理アドレスを物理アドレスに変換するためのアドレス変換テーブルを備えていたとしても、その更新を行う必要はない。
その後、動作モードを標準モードに切り替えて(ステップS976)、リード動作を終了する。
このように、本技術の第3の実施の形態によれば、リードアクセスの際に訂正可能なエラーが検出された場合には、訂正されたデータを保護モードにおいて書き直すことによりデータリフレッシュを実現することができる。
<4.第4の実施の形態>
情報処理システムにおいては、上位のホストコンピュータ100側のアプリケーションによって、データが「ホット」または「コールド」の何れかに分類される場合がある。「ホット」データとはより頻繁に書換えが行われるデータであり、「コールド」データとはあまり書換えが行われないデータである。例えば、オペレーティングシステムのカーネルのようなデータは一旦書き込まれた後は書き換えられることが少ないため、「コールド」データに分類することができる。この「ホット」または「コールド」のデータの分類は、アプリケーションに大きく依存するため、上位のホストコンピュータ100から、メモリシステム400に、この「ホット」または「コールド」の通知や制御が行われることが望ましい。この第4の実施の形態では、ホストコンピュータ100からコマンドを用いて、データの属性を「ホット」、「コールド」、または、それ以外の「通常」の3つに分類して指定することを想定する。
図12は、本技術の第4の実施の形態における情報処理システムの処理手順例を示す流れ図である。メモリシステム400がホストコンピュータ100からライトコマンドを受信して、指定されたデータの属性が「コールド」に指定されていれば(ステップS902)、保護モードを用いてNVRAM301に対して書込みを行う(ステップS930)。保護モードを用いることで、データ保持特性の良くないビットに対しても、例えば最初に「コールド」データを書き込む際に、修正書込みおよび修正消去が行われ、エラーの発生を未然に防止することができる。
また、「コールド」属性以外の「通常」属性のデータおよび「ホット」属性のデータの書込みに対しては、標準モードによる書込みを行う(ステップS910)。これは、書込み時間の観点で有利だからである。一方、「コールド」属性のデータはそもそも書込みを行う頻度が少ないため、保護モードを用いることによる速度低下のペナルティは問題となり難い。
ここで、ステップS910の処理手順は図10により説明したものと同様であり、ステップS930の処理手順は図8により説明したものと同様である。
このように、本技術の第4の実施の形態によれば、データの属性に応じて動的に動作モードを変更することにより、プレリード回数を適切に抑制することができる。
なお、この第4の実施の形態では、ホストコンピュータ100から明示的に「ホット」または「コールド」の属性を指定することにより、NVRAM301に対する書込み方法を選択するという例を示した。しかし、USBやSATAなどのように、使用するストレージインターフェースによってはデータの属性をメモリシステム400に通知することができない仕様も存在する。このようなメモリシステム400の場合は、メモリシステム400内のプロセッサ210によってメモリアクセスパターンを解析することで、自律的に「ホット」または「コールド」を判別して、動作モードを選択することも考えられる。
なお、上述の実施の形態は本技術を具現化するための一例を示したものであり、実施の形態における事項と、特許請求の範囲における発明特定事項とはそれぞれ対応関係を有する。同様に、特許請求の範囲における発明特定事項と、これと同一名称を付した本技術の実施の形態における事項とはそれぞれ対応関係を有する。ただし、本技術は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において実施の形態に種々の変形を施すことにより具現化することができる。
また、上述の実施の形態において説明した処理手順は、これら一連の手順を有する方法として捉えてもよく、また、これら一連の手順をコンピュータに実行させるためのプログラム乃至そのプログラムを記憶する記録媒体として捉えてもよい。この記録媒体として、例えば、CD(Compact Disc)、MD(MiniDisc)、DVD(Digital Versatile Disk)、メモリカード、ブルーレイディスク(Blu-ray Disc(登録商標))等を用いることができる。
なお、本技術は以下のような構成もとることができる。
(1)メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、
ライトデータが前記第1の値であって前記第1リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換える第1ライト処理部と、
前記メモリセルにおいて前記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、
前記ライトデータが前記第2の値であって前記第2リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第2ライト処理部と
を具備する記憶制御装置。
(2)前記メモリセルは可変抵抗素子であって、
前記第1の閾値は標準の閾値よりも高抵抗状態側に設定され、
前記第2の閾値は前記標準の閾値よりも低抵抗状態側に設定される
前記(1)に記載の記憶制御装置。
(3)前記第1の値は論理0値であり、
前記第2の値は論理1値である
前記(2)に記載の記憶制御装置。
(4)前記メモリセルは可変抵抗素子であって、
前記第1の閾値は標準の閾値よりも低抵抗状態側に設定され、
前記第2の閾値は前記標準の閾値よりも高抵抗状態側に設定される
前記(1)に記載の記憶制御装置。
(5)前記第1の値は論理1値であり、
前記第2の値は論理0値である
前記(4)に記載の記憶制御装置。
(6)動作モードとして第1のモードまたは第2のモードの何れか一方を設定する動作モード設定部と、
前記第1のモードが設定されている場合において、メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、
前記第1のモードが設定されている場合において、ライトデータが前記第1の値であって前記第1リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換える第1ライト処理部と、
前記第1のモードが設定されている場合において、前記メモリセルにおいて前記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、
前記第1のモードが設定されている場合において、前記ライトデータが前記第2の値であって前記第2リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第2ライト処理部と、
前記第2のモードが設定されている場合において、前記メモリセルにおいて標準の閾値を基準として第3リードデータとして読み出す第3リード処理部と、
前記第2のモードが設定されている場合において、前記ライトデータが前記第1の値であって前記第3リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換え、前記ライトデータが前記第2の値であって前記第3リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第3ライト処理部と
を具備する記憶制御装置。
(7)リード処理の際にエラーが検出されてそのエラー訂正が行われると、前記動作モードとして前記第1のモードを設定して、前記エラー訂正に係るアドレスを前記ライトアドレスとし、前記エラー訂正されたデータを前記ライトデータとして書き直す前記(6)に記載の記憶制御装置。
(8)メモリセルを備えるメモリアレイと、
前記メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、
ライトデータが前記第1の値であって前記第1リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換える第1ライト処理部と、
前記メモリセルにおいて前記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、
前記ライトデータが前記第2の値であって前記第2リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第2ライト処理部と
を具備する記憶装置。
(9)メモリセルを備えるメモリアレイと、
動作モードとして第1のモードまたは第2のモードの何れか一方を設定する動作モード設定部と、
前記第1のモードが設定されている場合において、前記メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、
前記第1のモードが設定されている場合において、ライトデータが前記第1の値であって前記第1リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換える第1ライト処理部と、
前記第1のモードが設定されている場合において、前記メモリセルにおいて前記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、
前記第1のモードが設定されている場合において、前記ライトデータが前記第2の値であって前記第2リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第2ライト処理部と、
前記第2のモードが設定されている場合において、前記メモリセルにおいて標準の閾値を基準として第3リードデータとして読み出す第3リード処理部と、
前記第2のモードが設定されている場合において、前記ライトデータが前記第1の値であって前記第3リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換え、前記ライトデータが前記第2の値であって前記第3リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第3ライト処理部と
を具備する記憶装置。
(10)メモリセルを備えるメモリアレイと、
動作モードとして第1のモードまたは第2のモードの何れか一方を設定する動作モード設定部と、
前記第1のモードが設定されている場合において、前記メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、
前記第1のモードが設定されている場合において、ライトデータが前記第1の値であって前記第1リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換える第1ライト処理部と、
前記第1のモードが設定されている場合において、前記メモリセルにおいて前記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、
前記第1のモードが設定されている場合において、前記ライトデータが前記第2の値であって前記第2リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第2ライト処理部と、
前記第2のモードが設定されている場合において、前記メモリセルにおいて標準の閾値を基準として第3リードデータとして読み出す第3リード処理部と、
前記第2のモードが設定されている場合において、前記ライトデータが前記第1の値であって前記第3リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換え、前記ライトデータが前記第2の値であって前記第3リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第3ライト処理部と、
前記メモリアレイに対するリードコマンドまたはライトコマンドを発行するホストコンピュータと
を具備する情報処理システム。
(11)前記ホストコンピュータは、前記ライトコマンドに係るライトデータの書換え頻度に関する情報を前記ライトコマンドに付加して発行し、
前記動作モード設定部は、前記ライトデータの書換え頻度が低い頻度を示している場合には前記第1のモードを設定し、それ以外の場合には前記第2のモードを設定する前記(10)に記載の記憶制御装置。
(12)メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理手順と、
ライトデータが前記第1の値であって前記第1リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換える第1ライト処理手順と、
前記メモリセルにおいて前記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理手順と、
前記ライトデータが前記第2の値であって前記第2リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第2ライト処理手順と
を具備する記憶制御方法。
100 ホストコンピュータ
200 メモリ制御部
201 ホストインターフェース
210 プロセッサ
220 内蔵メモリ
230 ECC処理部
250 周辺回路
280 バス
291〜293 メモリインターフェース
300 メモリ
301 不揮発性ランダムアクセスメモリ(NVRAM)
302 フラッシュメモリ
303 揮発性メモリ
309 制御インターフェース
310 メモリアレイ
311 データ部
312 冗長部
313 センスアンプ
315 ビット操作部
316 メモリセル
317 リード処理部
320 ライトバッファ
330 リードバッファ
340 論理評価部
341 マスク生成部
350 制御部
360 閾値設定部
400 メモリシステム

Claims (12)

  1. メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、
    ライトデータが前記第1の値であって前記第1リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換える第1ライト処理部と、
    前記メモリセルにおいて前記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、
    前記ライトデータが前記第2の値であって前記第2リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第2ライト処理部と
    を具備する記憶制御装置。
  2. 前記メモリセルは可変抵抗素子であって、
    前記第1の閾値は標準の閾値よりも高抵抗状態側に設定され、
    前記第2の閾値は前記標準の閾値よりも低抵抗状態側に設定される
    請求項1記載の記憶制御装置。
  3. 前記第1の値は論理0値であり、
    前記第2の値は論理1値である
    請求項2記載の記憶制御装置。
  4. 前記メモリセルは可変抵抗素子であって、
    前記第1の閾値は標準の閾値よりも低抵抗状態側に設定され、
    前記第2の閾値は前記標準の閾値よりも高抵抗状態側に設定される
    請求項1記載の記憶制御装置。
  5. 前記第1の値は論理1値であり、
    前記第2の値は論理0値である
    請求項4記載の記憶制御装置。
  6. 動作モードとして第1のモードまたは第2のモードの何れか一方を設定する動作モード設定部と、
    前記第1のモードが設定されている場合において、メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、
    前記第1のモードが設定されている場合において、ライトデータが前記第1の値であって前記第1リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換える第1ライト処理部と、
    前記第1のモードが設定されている場合において、前記メモリセルにおいて前記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、
    前記第1のモードが設定されている場合において、前記ライトデータが前記第2の値であって前記第2リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第2ライト処理部と、
    前記第2のモードが設定されている場合において、前記メモリセルにおいて標準の閾値を基準として第3リードデータとして読み出す第3リード処理部と、
    前記第2のモードが設定されている場合において、前記ライトデータが前記第1の値であって前記第3リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換え、前記ライトデータが前記第2の値であって前記第3リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第3ライト処理部と
    を具備する記憶制御装置。
  7. リード処理の際にエラーが検出されてそのエラー訂正が行われると、前記動作モードとして前記第1のモードを設定して、前記エラー訂正に係るアドレスを前記ライトアドレスとし、前記エラー訂正されたデータを前記ライトデータとして書き直す請求項6記載の記憶制御装置。
  8. メモリセルを備えるメモリアレイと、
    前記メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、
    ライトデータが前記第1の値であって前記第1リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換える第1ライト処理部と、
    前記メモリセルにおいて前記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、
    前記ライトデータが前記第2の値であって前記第2リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第2ライト処理部と
    を具備する記憶装置。
  9. メモリセルを備えるメモリアレイと、
    動作モードとして第1のモードまたは第2のモードの何れか一方を設定する動作モード設定部と、
    前記第1のモードが設定されている場合において、前記メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、
    前記第1のモードが設定されている場合において、ライトデータが前記第1の値であって前記第1リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換える第1ライト処理部と、
    前記第1のモードが設定されている場合において、前記メモリセルにおいて前記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、
    前記第1のモードが設定されている場合において、前記ライトデータが前記第2の値であって前記第2リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第2ライト処理部と、
    前記第2のモードが設定されている場合において、前記メモリセルにおいて標準の閾値を基準として第3リードデータとして読み出す第3リード処理部と、
    前記第2のモードが設定されている場合において、前記ライトデータが前記第1の値であって前記第3リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換え、前記ライトデータが前記第2の値であって前記第3リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第3ライト処理部と
    を具備する記憶装置。
  10. メモリセルを備えるメモリアレイと、
    動作モードとして第1のモードまたは第2のモードの何れか一方を設定する動作モード設定部と、
    前記第1のモードが設定されている場合において、前記メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理部と、
    前記第1のモードが設定されている場合において、ライトデータが前記第1の値であって前記第1リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換える第1ライト処理部と、
    前記第1のモードが設定されている場合において、前記メモリセルにおいて前記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理部と、
    前記第1のモードが設定されている場合において、前記ライトデータが前記第2の値であって前記第2リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第2ライト処理部と、
    前記第2のモードが設定されている場合において、前記メモリセルにおいて標準の閾値を基準として第3リードデータとして読み出す第3リード処理部と、
    前記第2のモードが設定されている場合において、前記ライトデータが前記第1の値であって前記第3リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換え、前記ライトデータが前記第2の値であって前記第3リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第3ライト処理部と、
    前記メモリアレイに対するリードコマンドまたはライトコマンドを発行するホストコンピュータと
    を具備する情報処理システム。
  11. 前記ホストコンピュータは、前記ライトコマンドに係るライトデータの書換え頻度に関する情報を前記ライトコマンドに付加して発行し、
    前記動作モード設定部は、前記ライトデータの書換え頻度が低い頻度を示している場合には前記第1のモードを設定し、それ以外の場合には前記第2のモードを設定する請求項10記載の情報処理システム。
  12. メモリセルにおいて第1の閾値を基準として第1の値または第2の値の何れか一方の値を有するデータを第1リードデータとして読み出す第1リード処理手順と、
    ライトデータが前記第1の値であって前記第1リードデータが前記第2の値である場合に前記メモリセルを前記第1の値に書き換える第1ライト処理手順と、
    前記メモリセルにおいて前記第1の閾値とは異なる第2の閾値を基準として第2リードデータを読み出す第2リード処理手順と、
    前記ライトデータが前記第2の値であって前記第2リードデータが前記第1の値である場合に前記メモリセルを前記第2の値に書き換える第2ライト処理手順と
    を具備する記憶制御方法。
JP2013553233A 2012-01-12 2012-12-20 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 Active JP5839048B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013553233A JP5839048B2 (ja) 2012-01-12 2012-12-20 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2012004433 2012-01-12
JP2012004433 2012-01-12
JP2013553233A JP5839048B2 (ja) 2012-01-12 2012-12-20 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法
PCT/JP2012/083091 WO2013105414A1 (ja) 2012-01-12 2012-12-20 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法

Publications (2)

Publication Number Publication Date
JPWO2013105414A1 JPWO2013105414A1 (ja) 2015-05-11
JP5839048B2 true JP5839048B2 (ja) 2016-01-06

Family

ID=48781372

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013553233A Active JP5839048B2 (ja) 2012-01-12 2012-12-20 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法

Country Status (5)

Country Link
US (1) US9396132B2 (ja)
EP (1) EP2800097B1 (ja)
JP (1) JP5839048B2 (ja)
CN (1) CN104040634A (ja)
WO (1) WO2013105414A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6330150B2 (ja) * 2013-07-17 2018-05-30 パナソニックIpマネジメント株式会社 不揮発性半導体記憶装置とその書換方法
JP6149598B2 (ja) * 2013-08-19 2017-06-21 ソニー株式会社 記憶制御装置、記憶装置、情報処理システムおよび記憶制御方法
US9257175B2 (en) * 2013-09-26 2016-02-09 Intel Corporation Refresh of data stored in a cross-point non-volatile memory
US9613675B2 (en) * 2013-12-14 2017-04-04 Qualcomm Incorporated System and method to perform low power memory operations
JP6497393B2 (ja) * 2014-10-31 2019-04-10 ソニー株式会社 メモリコントローラ、記憶装置、情報処理システムおよびメモリの制御方法
JP6497394B2 (ja) * 2014-11-26 2019-04-10 ソニー株式会社 メモリシステム、記憶装置、および、メモリシステムの制御方法
JP2018045742A (ja) * 2016-09-13 2018-03-22 ルネサスエレクトロニクス株式会社 記憶装置及び記憶装置の管理方法
KR102636091B1 (ko) * 2016-10-14 2024-02-14 에스케이하이닉스 주식회사 저항성 메모리 장치, 이를 위한 선택적 쓰기 장치 및 동작 방법
KR20180053113A (ko) * 2016-11-11 2018-05-21 에스케이하이닉스 주식회사 반도체장치
US10950315B1 (en) * 2019-12-16 2021-03-16 Micron Technology, Inc. Preread and read threshold voltage optimization
US11199999B2 (en) * 2020-01-30 2021-12-14 Micron Technology, Inc. Management of write operations in a non-volatile memory device using a variable pre-read voltage level
US11562792B2 (en) * 2020-03-18 2023-01-24 Kioxia Corporation Memory system having a non-volatile memory and a controller configured to switch a mode for controlling an access operation to the non-volatile memory

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6158000A (en) * 1998-09-18 2000-12-05 Compaq Computer Corporation Shared memory initialization method for system having multiple processor capability
JP4285082B2 (ja) * 2003-05-27 2009-06-24 ソニー株式会社 記憶装置
US7079436B2 (en) * 2003-09-30 2006-07-18 Hewlett-Packard Development Company, L.P. Resistive cross point memory
DE102004019860B4 (de) * 2004-04-23 2006-03-02 Infineon Technologies Ag Verfahren und Vorrichtung zur Programmierung von CBRAM-Speicherzellen
US7849381B2 (en) * 2004-12-21 2010-12-07 Sandisk Corporation Method for copying data in reprogrammable non-volatile memory
US7440315B2 (en) * 2007-01-09 2008-10-21 Macronix International Co., Ltd. Method, apparatus and computer program product for stepped reset programming process on programmable resistive memory cell
US7778070B2 (en) * 2007-06-29 2010-08-17 Qimonda Ag Memory with dynamic redundancy configuration
US7864565B2 (en) * 2007-07-31 2011-01-04 Infineon Technologies Ag Data retention monitor
CN101548335B (zh) * 2007-08-01 2012-07-11 松下电器产业株式会社 非易失性存储装置
CN102227778B (zh) * 2008-11-26 2014-11-12 夏普株式会社 非易失性半导体存储装置及其驱动方法
JP5197448B2 (ja) * 2009-03-13 2013-05-15 株式会社東芝 抵抗変化メモリ装置
KR20110107190A (ko) * 2010-03-24 2011-09-30 삼성전자주식회사 저항성 메모리의 마모 셀 관리 방법 및 장치
US8593853B2 (en) * 2010-03-30 2013-11-26 Panasonic Corporation Nonvolatile storage device and method for writing into the same
US8451664B2 (en) * 2010-05-12 2013-05-28 Micron Technology, Inc. Determining and using soft data in memory devices and systems
JP5143203B2 (ja) * 2010-09-24 2013-02-13 株式会社東芝 メモリシステム

Also Published As

Publication number Publication date
JPWO2013105414A1 (ja) 2015-05-11
EP2800097A4 (en) 2015-07-22
EP2800097A1 (en) 2014-11-05
WO2013105414A1 (ja) 2013-07-18
EP2800097B1 (en) 2018-03-21
CN104040634A (zh) 2014-09-10
US20150234749A1 (en) 2015-08-20
US9396132B2 (en) 2016-07-19

Similar Documents

Publication Publication Date Title
JP5839048B2 (ja) 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法
JP5853899B2 (ja) 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法
JP5853906B2 (ja) 記憶制御装置、記憶装置、情報処理システムおよび記憶制御方法
US9665425B2 (en) Nonvolatile memory system and related method of operation
JP5942781B2 (ja) 記憶制御装置、メモリシステム、情報処理システム、および、記憶制御方法
JP5929456B2 (ja) 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法
JP2014026712A (ja) 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法
JP6497394B2 (ja) メモリシステム、記憶装置、および、メモリシステムの制御方法
WO2013108456A1 (ja) 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法
JPWO2017138234A1 (ja) メモリコントローラ、メモリシステム、および、メモリコントローラの制御方法
JP2014086062A (ja) 記憶制御装置、記憶装置、情報処理システム、および、記憶制御方法
JP5867264B2 (ja) 記憶制御装置、メモリシステム、情報処理システム、および、記憶制御方法
JP6107625B2 (ja) 記憶制御装置、記憶装置、情報処理システムおよびその記憶制御方法
JP2014022004A (ja) 記憶制御装置、記憶装置、および、それらにおける処理方法
WO2016035451A1 (ja) 記憶制御装置、記憶装置、および、記憶制御方法
JP6497395B2 (ja) メモリコントローラ、メモリシステム、および、メモリコントローラの制御方法
JP2014013635A (ja) 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法
JPWO2020031435A1 (ja) 記憶制御装置、記憶装置および記憶制御方法
JP2017021877A (ja) 不揮発メモリ、メモリコントローラ、記憶装置、情報処理システムおよび不揮発メモリの制御方法
WO2017043149A1 (ja) メモリコントローラ、メモリおよびメモリシステム

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151013

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151026

R151 Written notification of patent or utility model registration

Ref document number: 5839048

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250