[go: up one dir, main page]

JP2014022004A - 記憶制御装置、記憶装置、および、それらにおける処理方法 - Google Patents

記憶制御装置、記憶装置、および、それらにおける処理方法 Download PDF

Info

Publication number
JP2014022004A
JP2014022004A JP2012159688A JP2012159688A JP2014022004A JP 2014022004 A JP2014022004 A JP 2014022004A JP 2012159688 A JP2012159688 A JP 2012159688A JP 2012159688 A JP2012159688 A JP 2012159688A JP 2014022004 A JP2014022004 A JP 2014022004A
Authority
JP
Japan
Prior art keywords
memory
operation instruction
write
bit
state
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.)
Pending
Application number
JP2012159688A
Other languages
English (en)
Inventor
Yasushi Fujinami
靖 藤波
Naohiro Adachi
直大 足立
Takeshi Ishii
健 石井
Hideaki Okubo
英明 大久保
Keiichi Tsutsui
敬一 筒井
Kenichi Nakanishi
健一 中西
Tatsuo Shinbashi
龍男 新橋
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 JP2012159688A priority Critical patent/JP2014022004A/ja
Priority to US13/906,378 priority patent/US20140025907A1/en
Priority to CN201310291555.1A priority patent/CN103577341A/zh
Publication of JP2014022004A publication Critical patent/JP2014022004A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5678Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using amorphous/crystalline phase transition storage elements
    • 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/0653Monitoring storage devices or systems
    • 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/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/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5685Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using storage elements comprising metal oxide memory material, e.g. perovskites
    • 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
    • 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/0073Write using bi-directional cell biasing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Materials Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

【課題】メモリの1ビット当りの指示の情報量を複数ビットとすることにより、適応的な制御を行う。
【解決手段】記憶制御装置は、メモリの記憶状態を取得するメモリ状態取得部と、操作指示を生成する操作指示生成部とを備える。メモリ状態取得部は、ライト対象に係るメモリの記憶状態を取得する。操作指示生成部は、取得された記憶状態とライトデータとからライト対象に係るメモリの1セル(1ビット)当り少なくとも2ビットの操作指示を生成する。
【選択図】図4

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)などが挙げられる。
従来の一般的なメモリシステムでは、メモリに対する書込みの指示における情報量は、メモリに書き込む1ビット当り1ビットであり、書込み動作後のメモリセルの状態が0または1の何れになるかの二者択一となっていた(例えば、非特許文献1参照。)。これは、例えば、DRAMに対するライトコマンドにおいて、ライトイネーブル端子をアサートした状態でデータバスがラッチされ、ラッチされたデータが指定されたアドレスに対して書き込まれることに対応する。
桑野雅彦著:「メモリICの実践活用法」、CQ出版社、2001年9月、p.54、100、120、191
上述の従来技術では、メモリの1ビット当り指示の情報量が1ビットであるため、メモリ外部から与えることができる情報が限られたものとなっていた。一方、ReRAMやPCRAMなどの不揮発性ランダムアクセスメモリを用いるメモリシステムでは、高効率のエラー訂正機能を併用することが多い。そのような高効率のエラー訂正機能は、ハードウェア規模が大きいため、例えばメモリコントローラと呼ばれるメモリの外部のチップに置かれることが多い。また、このようなメモリシステムでは、エラー訂正機能により知ることができるエラー位置情報などを用いて適応的な制御を行う可能性があるが、従来の一般的なメモリにおけるインターフェースの機能限界から、適応的な制御を行うことが困難であった。
本技術はこのような状況に鑑みて生み出されたものであり、メモリの1ビット当りの指示の情報量を複数ビットとすることにより、適応的な制御を行うことを目的とする。
本技術は、上述の問題点を解消するためになされたものであり、その第1の側面は、ライト対象に係るメモリの記憶状態を取得するメモリ状態取得部と、上記取得された記憶状態とライトデータとから上記ライト対象に係るメモリの1セル当り少なくとも2ビットの操作指示を生成する操作指示生成部とを具備する記憶制御装置またはその制御方法である。これにより、ライト対象に係るメモリの記憶状態に応じて適応的な制御を行うという作用をもたらす。
また、この第1の側面において、上記メモリ状態取得部は、上記ライト対象に係るメモリに記憶されているデータを読み出してリードデータとするリード処理部と、上記リードデータについてエラー検出を行って、エラーが検出された位置を示すエラー位置情報を生成するエラー検出部とを備え、上記リードデータおよび上記エラー位置情報を上記記憶状態として取得するようにしてもよい。これにより、リードデータおよびエラー位置情報に応じて適応的な制御を行うという作用をもたらす。
また、この第1の側面において、上記操作指示は、上記ライト対象に係るメモリに対する書込みの極性および強度の組合せに関する指示を含むようにしてもよい。これにより、ライト対象に係るメモリの記憶状態に応じて書込みの極性および強度の組合せを制御するという作用をもたらす。
この場合において、上記メモリが可変抵抗素子である場合において、上記書込みの極性は、上記可変抵抗素子において所定の閾値により判別される高抵抗状態または低抵抗状態の何れか一方の状態であり、上記書込みの強度は、上記可変抵抗素子における抵抗状態の強度であるようにしてもよい。
また、この第1の側面において、上記操作指示は、上記ライト対象に係るメモリに対する互いに異なる極性の2回の書込みに関する指示を含むようにしてもよい。これにより、連続して同じ極性の書込みを回避するという作用をもたらす。
また、この第1の側面において、上記操作指示生成部は、上記操作指示を可変長符号により符号化するようにしてもよい。これにより、操作指示のサイズを小さくするという作用をもたらす。
また、本技術の第2の側面は、複数のメモリセルからなるメモリと、上記ライト対象に係る上記メモリセルの1セル当り少なくとも2ビットの操作指示を取得する操作指示取得部と、上記操作指示に従って上記ライト対象に係る上記メモリセルに対するライト処理を行う制御部とを具備する記憶装置である。これにより、ライト対象に係るメモリセルの記憶状態に応じて適応的な制御を受けるという作用をもたらす。
また、本技術の第3の側面は、複数のメモリセルからなるメモリと、ライト対象に係る上記メモリセルの記憶状態を取得するメモリ状態取得部と、上記取得された記憶状態とライトデータとから上記ライト対象に係る上記メモリセルの1セル当り少なくとも2ビットの操作指示を生成する操作指示生成部と、上記操作指示に従って上記ライト対象に係る上記メモリセルに対するライト処理を行う制御部とを具備する記憶装置である。これにより、ライト対象に係るメモリセルの記憶状態に応じて適応的な制御を行うという作用をもたらす。
本技術によれば、メモリの1ビット当りの指示の情報量を複数ビットとすることにより、適応的な制御を行うことができるという優れた効果を奏し得る。
本技術の実施の形態における情報処理システムの一構成例を示す図である。 本技術の実施の形態における論理ページの管理例を示す図である。 本技術の実施の形態における物理ページの管理例を示す図である。 本技術の実施の形態における記憶制御装置200の機能構成例を示す図である。 本技術の実施の形態におけるメモリ100の構成例を示す図である。 本技術の実施の形態におけるメモリセルアレイ110の構造の一例を示す図である。 本技術の実施の形態におけるメモリセルアレイ110のドライブ電圧を説明するための図である。 本技術の実施の形態におけるメモリセルアレイ110の抵抗状態の極性と強度を説明するための図である。 本技術の第1の実施の形態におけるリードデータ、ライトデータおよびエラー位置情報とメモリ100における処理内容との関係例を示す図である。 本技術の第1の実施の形態における操作指示番号の例を示す図である。 本技術の第1の実施の形態におけるメモリ操作指示パターンの例を示す図である。 本技術の第1の実施の形態におけるセルパターンの種別例を示す図である。 本技術の第1の実施の形態におけるセルパターンの具体例を示す図である。 本技術の実施の形態における記憶制御装置200のライトコマンドに対する動作の処理手順例を示す流れ図である。 本技術の実施の形態におけるメモリ100のリードリクエストに対する動作の処理手順例を示す流れ図である。 本技術の実施の形態におけるメモリ100のライトリクエストに対する動作の処理手順例を示す流れ図である。 本技術の実施の形態におけるメモリ100のセット動作の処理手順例を示す流れ図である。 本技術の実施の形態におけるメモリ100の強セット動作の処理手順例を示す流れ図である。 本技術の実施の形態におけるメモリ100のリセット動作の処理手順例を示す流れ図である。 本技術の実施の形態におけるメモリ100の強リセット動作(ステップS970)の処理手順例を示す流れ図である。 本技術の第2の実施の形態における操作指示番号の割当て例を示す図である。 本技術の第2の実施の形態における操作指示番号の仮想的な言語表現を用いた定義例を示す図である。 本技術の第3の実施の形態における操作指示番号の割当て例を示す図である。 本技術の第3の実施の形態における操作指示番号の仮想的な言語表現を用いた定義例を示す図である。 本技術の第4の実施の形態におけるリードデータ、ライトデータおよびエラー位置情報とメモリ100における処理内容との関係例を示す図である。 本技術の第4の実施の形態における操作指示番号の例を示す図である。
以下、本技術を実施するための形態(以下、実施の形態と称する)について説明する。説明は以下の順序により行う。
1.第1の実施の形態(強書込みを想定した例)
2.第2の実施の形態(メモリ操作指示パターンに可変長符号を用いた例)
3.第3の実施の形態(強書込みおよび弱書込みを想定した例)
4.第4の実施の形態(2回操作を想定した例)
<1.第1の実施の形態>
[情報処理システムの構成]
図1は、本技術の実施の形態における情報処理システムの一構成例を示す図である。この情報処理システムは、ホストコンピュータ300と、記憶制御装置200と、メモリ100とを備えている。ホストコンピュータ300は、この情報処理システムにおける各処理を実行する装置であり、メモリ100に対してリードコマンドやライトコマンドを発行することにより、メモリ100へのアクセスを行うコンピュータである。メモリ100は、ホストコンピュータ300の処理に必要なデータを記憶するメモリである。このメモリ100としては、不揮発性メモリ、特に可変抵抗素子からなるメモリセルアレイを備える抵抗変化型メモリ(ReRAM)を想定する。このメモリ100は、データとともにエラー訂正コード(ECC)を記憶することにより、データ保持特性の改善を図る。記憶制御装置200は、ホストコンピュータ300とメモリ100の間に接続され、ホストコンピュータ300からのリクエストに応じてメモリ100の制御を行う装置である。なお、エラー訂正コードはエラー(誤り)検出の機能も包含しているため、誤り検出符号、エラー検出符号、エラー検出コードなどと呼称する場合もある。
記憶制御装置200は、メモリインターフェース210と、ホストインターフェース230と、制御部240と、ROM250と、RAM260と、ECC処理部270とを備えている。これらはバス290を介して相互に接続されている。
メモリインターフェース210は、メモリ100との間のやりとりを行うインターフェース回路である。ホストインターフェース230は、ホストコンピュータ300との間のやりとりを行うインターフェース回路である。
制御部240は、記憶制御装置200における種々の処理を実行する処理装置である。ROM250は、制御部240において実行されるプログラムやその実行に必要なパラメータなどを記憶する読出し専用のメモリである。RAM260は、制御部240における処理に必要な作業領域を記憶するメモリである。
ECC処理部270は、メモリ100に記憶されるエラー訂正コードに関する処理を行うものである。このECC処理部270は、後述するように、エラー訂正コードを生成する機能およびメモリ100から読み出されたデータとエラー訂正コードとからエラー検出およびエラー訂正を行う機能を含む。
図2は、本技術の実施の形態における論理ページの管理例を示す図である。メモリ100のアクセス空間は固定長の物理ページに区分けして管理される。メモリ100の物理ページの各々は論理ページにマッピングされる。ホストコンピュータ300からは、基本的には論理アドレスによりアクセスされる。以下では、論理ページのデータサイズを256バイトとする。
ライトコマンドでは、ライト対象となる論理ページのアドレスと、指定された論理ページ全体を書き換えるべきライトデータ(256バイト)とが、ホストコンピュータ300から記憶制御装置200に供給される。また、リードコマンドでは、リード対象となる論理ページのアドレスがホストコンピュータ300から記憶制御装置200に供給され、メモリ100から読み出された論理ページ全体(256バイト)が一括してホストコンピュータ300に返送される。
図3は、本技術の実施の形態における物理ページの管理例を示す図である。物理ページにはエラー訂正コードが付与されて記憶される。以下では、物理ページには256バイトのデータおよび16バイトのエラー訂正コードが記憶されるものとする。すなわち、物理ページのサイズは272バイトとなる。ただし、これらのサイズは一例であり、本技術はこれに限定されるものではない。
[記憶制御装置の機能構成]
図4は、本技術の実施の形態における記憶制御装置200の機能構成例を示す図である。この記憶制御装置200では、RAM260内に、ライトデータバッファ261、リードデータバッファ262、エラー位置情報バッファ263、アドレスバッファ264、および、メモリ操作指示パターンバッファ265の領域が割り当てられている。また、この記憶制御装置200は、リード処理部241と、操作指示生成部242と、ECC生成部271と、エラー検出部272とを備えている。リード処理部241および操作指示生成部242は、制御部240において構成することができる。ECC生成部271およびエラー検出部272は、ECC処理部270において構成することができる。
ライトデータバッファ261は、ライトデータおよびそのエラー訂正コード(ECC)を保持するバッファである。リードデータバッファ262は、リードデータおよびそのECCを保持するバッファである。エラー位置情報バッファ263は、エラー検出処理により検出されたエラーのビット位置を保持するバッファである。これら3つのバッファのサイズは、上述のように272バイトとなる。
アドレスバッファ264は、ライト対象またはリード対象となるメモリ100におけるアドレスを保持するバッファである。メモリ操作指示パターンバッファ265は、後述するメモリ操作指示パターンを保持するバッファである。
リード処理部241は、メモリ100からの読出し処理を行うものである。このリード処理部241は、ホストコンピュータ300からのリードコマンドに対して、リード対象アドレスに記憶されているデータをリードデータ(およびECC)として読み出す。また、このリード処理部241は、ホストコンピュータ300からのライトコマンドに対して、ライト対象アドレスに既に記憶されているデータをプレリードデータ(およびECC)として読み出す。このリード処理部241によって読み出されたデータはリードデータバッファ262に保持される。なお、リード処理部241は、特許請求の範囲に記載のリード処理部またはメモリ状態取得部の一例である。
ECC生成部271は、データに対応するエラー訂正コード(ECC)を生成するものである。このECC生成部271は、ホストコンピュータ300から指示されたライトデータについてECCを生成して、ライトデータとともにライトデータバッファ261に保持させる。
エラー検出部272は、ECCに基づいてデータのエラー検出処理を行うものである。このエラー検出部272は、リード処理部241によってメモリ100から読み出されたリードデータおよびそのECCに基づいてリードデータのエラー検出を行うものである。このエラー検出部272により検出されたエラーのリードデータにおけるビット位置はエラー位置情報バッファ263に保持される。なお、エラー検出部272は、特許請求の範囲に記載のエラー検出部またはメモリ状態取得部の一例である。
操作指示生成部242は、ライトデータバッファ261に保持されたライトデータ、リードデータバッファ262に保持されたリードデータ、および、エラー位置情報バッファ263に保持されたエラー位置情報に基づいて、メモリ操作指示パターンを生成する。この操作指示生成部242により生成されたメモリ操作指示パターンは、メモリ操作指示パターンバッファ265に保持され、または、メモリ100に対して出力される。メモリ100に対するメモリ操作指示パターンは、メモリ100の1セル(1ビット)当り少なくとも2ビットを占める。
ここで、リードデータバッファ262に保持されたリードデータ、および、エラー位置情報バッファ263に保持されたエラー位置情報は、ライト対象に係るメモリの記憶状態を構成する。また、メモリ操作指示パターンは、操作指示を構成する。
[メモリ構成]
図5は、本技術の実施の形態におけるメモリ100の構成例を示す図である。メモリ100は、複数のブロック101、102等に分割された記憶部と、制御インターフェース120と、制御部130とを備える。制御インターフェース120は、記憶制御装置200との間のやりとりを司るインターフェースである。制御部130は、各ブロックに対するアクセスを制御するものである。なお、制御インターフェース120は、特許請求の範囲に記載の操作指示取得部の一例である。
記憶部のブロック(例えば、ブロック101)は、メモリセルアレイ110と、ワードラインデコーダ140と、ビットラインセレクタ150と、ドライバ160とを備えている。
メモリセルアレイ110は、N本のワードライン(WL:Word Lines)とM本のビットライン(BL:Bit Lines)の交点にそれぞれアクセストランジスタと可変抵抗素子を有する。ワードラインは、ワードラインデコーダ140に接続される。ビットラインは、ビットラインセレクタ150に接続される。プレート端子は、ドライバ160のプレート電圧出力に接続される。以下、ビットラインの数Mは2176ビットであることを前提に説明する。2176ビットをバイトの単位である8ビットで除すると272が得られる。すなわち、メモリセルアレイ110は、ワードラインあたり272バイトの記憶容量となり、上述の物理ページサイズの272バイトと一致する。
メモリセルアレイ110の可変抵抗素子は、高抵抗状態(HRS:High Resistive State)と低抵抗状態(LRS:Low Resistive State)の2状態で1ビットの情報を記録する。各状態と論理値との対応付けは任意であるが、以下では低抵抗状態を用いて論理値「0」を表現し、高抵抗状態を用いて論理値「1」を表現するものと定義する。また、2つの状態間の遷移を行う操作をビット反転操作と呼ぶ。ビット反転操作はセット操作とリセット操作の2種類で構成される。以下では、セット操作により高抵抗状態のビットを低抵抗状態に遷移させ、リセット操作により低抵抗状態のビットを高抵抗状態に遷移させる。すなわち、セット操作により論理値「1」のビットを論理値「0」に遷移させ、リセット操作により論理値「0」のビットを論理値「1」に遷移させる。ライト処理においては、セット操作およびリセット操作が順番に行われるが、その順序は何れが先であっても構わない。なお、この低抵抗状態および高抵抗状態の2状態の何れであるかを、以下では極性と称する場合がある。
ワードラインデコーダ140は、制御部130からのワードライン指定を受け取り、メモリセルアレイ110のN本のワードラインを制御する。すなわち、ワードラインデコーダ140は、制御部130によって指定されたワードラインを論理値「H」でドライブし、それ以外のワードラインを論理値「L」でドライブする機能を有する。ワードライン指定が行われていない場合、または、ワードライン指定が取り消された場合には、ワードラインデコーダ140は全てのワードラインを論理値「L」でドライブする。
ビットラインセレクタ150は、制御部130および制御インターフェース120との間で、メモリセルアレイ110から読み出したリードデータ、および、書込みを行うためのライトデータをやりとりする。また、このビットラインセレクタ150は、ドライバ160からビットラインをドライブするための電圧を受け取る。
このビットラインセレクタ150は、大きく分けると二つの機能を有する。すなわち、ビットラインセレクタ150は、メモリセルアレイ110の読出し時にはセンスアンプとしての機能を有する。具体的には、ビットラインセレクタ150は、ビットラインを流れる電流量を計測することにより、選択している可変抵抗素子が低抵抗状態または高抵抗状態の何れであるかを判別し、それぞれのビットラインに対する論理値「0」あるいは「1」を決定する。決定された論理値は、制御部130または制御インターフェース120に対して出力される。
また、このビットラインセレクタ150は、メモリセルアレイ110の書込み時には、制御部130による指定に基づいてビットライン毎のドライブ電圧を選択する機能を有する。具体的には、ビットラインセレクタ150は、各ビットラインに対して、ドライバ160から供給されるプレート電圧またはビットライン電圧のいずれかを選択的に供給する。
ドライバ160は、ビットラインセレクタ150にビットライン電圧を供給するとともに、ビットラインセレクタ150およびメモリセルアレイ110にプレート電圧を供給するドライバである。すなわち、このドライバ160は、プレートとビットラインとの間のドライブ電圧を供給する。
[メモリセルアレイの構造]
図6は、本技術の実施の形態におけるメモリセルアレイ110の構造の一例を示す図である。この図では、1本のワードラインWL_0にそった断面を模式的に表しているが、他のワードラインについても同様の構造を有する。ここでは、先頭8本のビットラインBL_0乃至BL_7のみを図示している。ワードラインWL_0と8本のビットライン(BL_0乃至BL_7)の交点には、アクセストランジスタであるFET(Field Effect Transistor:電界効果トランジスタ)112と、可変抵抗素子111が接続されている。
ワードラインWL_0は8つのFET112のゲート端子に接続されており、8本のビットライン(BL_0乃至BL_7)はそれぞれ対応するFET112のドレイン端子に接続される。8つのFETのソース端子はそれぞれ可変抵抗素子111を経由してプレート113に接続される。同一ブロックにおけるメモリセルアレイ110を構成する全ての(ここではN×M個の)FET112のソース端子は、それぞれに対応する可変抵抗素子111を経由してプレート113に接続される。
図7は、本技術の実施の形態におけるメモリセルアレイ110のドライブ電圧を説明するための図である。メモリセルアレイ110の可変抵抗素子111に対する操作としては、上述のセット操作およびリセット操作の他に、可変抵抗素子111の状態を読み出すためのリード操作がある。これら3つの操作、すなわちリード操作、セット操作およびリセット操作において、プレート113とビットラインBL_0との間のドライブ電圧は異なるものとなる。
セット操作の場合には、プレート113がビットラインに対して「+Vset」の電位となるように電圧バイアスを設定する。リセット操作の場合には、ビットラインがプレート113に対して「+Vreset」の電位となるように電圧バイアスを設定する。また、リード操作の場合には、ビットラインがプレート113に対して「+Vread」の電圧になるように電圧バイアスを設定する。
図8は、本技術の実施の形態におけるメモリセルアレイ110の抵抗状態の極性と強度を説明するための図である。上述のように、メモリセルアレイ110の可変抵抗素子は、高抵抗状態(HRS)と低抵抗状態(LRS)の2状態で1ビットの情報を記録する。同図において、横軸を抵抗値、縦軸を相対的な累積ビット数とすると、抵抗値の低い部分と高い部分に分布が分かれる。抵抗値の低い部分がLRS状態、抵抗値の高い部分がHRS状態である。
この可変抵抗素子においては、データ保持力を長くするために、より大きいパルス電圧を使用して書込みを行うことや、通常の書込み後に追加のパルス印加を行うことによって強書込みを行う技術が提案されている。すなわち、LRS状態に遷移させる際に強書込みを行った場合には、通常のLRS状態よりも低い抵抗状態(以下、強LRS状態と称する。)となる。また、HRS状態に遷移させる際に強書込みを行った場合には、通常のHRS状態よりも高い抵抗状態(以下、強HRS状態と称する。)となる。このような強書込みによれば、その書込みによるデータ保持力は長くなるが、その反面、メモリセルに与えるストレスも大きくなり、耐久性は低下することになる。なお、通常の書込みにより形成された抵抗状態および強書込みにより形成された抵抗状態の何れであるかを、以下では強度と称する場合がある。
[メモリ操作指示パターン]
図9は、本技術の第1の実施の形態におけるリードデータ、ライトデータおよびエラー位置情報とメモリ100における処理内容との関係例を示す図である。ここでは、リードデータ、ライトデータおよびエラー位置情報のビット毎の組合せとして8通りの組合せを示している。以下では、これら8通りの組合せがライトデータバッファ261、リードデータバッファ262およびエラー位置情報バッファ263の先頭8ビットであったと仮定して、順番にB0乃至B7のビット番号を付して説明する。ここでは、先頭8ビットのみを切り出して説明するが、実際にはライトデータバッファ261、リードデータバッファ262およびエラー位置情報バッファ263のビット数(この例では2176ビット)分の組合せが生じる。なお、ここでいうリードデータは、ライト対象アドレスに既に記憶されているデータを読み出したプレリードデータである。
ビット番号B0乃至B3については、エラー位置情報の値が「0」であるため、エラーは検出されていないことを示している。したがって、リードデータとライトデータとを比較することにより、必要な操作内容が決定される。ビット番号B0およびB3の場合、リードデータとライトデータとが等しいため、操作の必要はない。ビット番号B1の場合、「0」から「1」へ遷移させる必要があるため、リセット操作を行う。ビット番号B2の場合、「1」から「0」へ遷移させる必要があるため、セット操作を行う。
ビット番号B4乃至B7については、エラー位置情報の値が「1」であるため、リードデータにはエラーが含まれていることが前提となる。すなわち、そのセルは特定の値について保持力が弱いことを意味する。
ビット番号B4の場合、もともと「1」にライトされたセルが経時変化により「0」としてリードされる状態に変化したと考えられる。現時点での抵抗値は「1」と「0」の中間値で、「0」に近い付近に存在すると考えられる。そのため、セット操作により「0」に対応する抵抗値に遷移させる。このメモリセルの「1」の保持力は弱いと考えられるが、このメモリセルの「0」の保持力の強弱はこの段階では不明なため、通常のセット操作を行う。
ビット番号B5の場合、もともと「1」にライトされたセルが経時変化により「0」としてリードされる状態に変化したと考えられる。現時点での抵抗値は「1」と「0」の中間値で、「0」に近い付近に存在すると考えられる。そのため、リセット操作により「1」に対応する抵抗値に遷移させる。また、このメモリセルの「1」の保持力は弱いと考えられるため、通常のリセット操作より強めに操作を行う強リセット操作を行う。
ビット番号B6の場合、もともと「0」にライトされたセルが経時変化により「1」としてリードされる状態に変化したと考えられる。現時点での抵抗値は「1」と「0」の中間値で、「1」に近い付近に存在すると考えられる。そのため、セット操作により「0」に対応する抵抗値に遷移させる。また、このメモリセルの「0」の保持力は弱いと考えられるため、通常のセット操作より強めに操作を行う強セット操作を行う。
ビット番号B7の場合、もともと「0」にライトされたセルが経時変化により「1」としてリードされる状態に変化したと考えられる。現時点での抵抗値は「1」と「0」の中間値で、「1」に近い付近に存在すると考えられる。そのため、リセット操作により「1」に対応する抵抗値に遷移させる。このメモリセルの「0」の保持力は弱いと考えられるが、このメモリセルの「1」の保持力の強弱はこの段階では不明なため、通常のリセット操作を行う。
図10は、本技術の第1の実施の形態における操作指示番号の例を示す図である。この例では、操作しない場合には、操作指示番号として「0」("000")を示している。リセット操作をする場合には、操作指示番号として「1」("001")を示している。セット操作をする場合には、操作指示番号として「2」("010")を示している。強リセット操作をする場合には、操作指示番号として「3」("011")を示している。強セット操作をする場合には、操作指示番号として「4」("100")を示している。
図11は、本技術の第1の実施の形態におけるメモリ操作指示パターンの例を示す図である。この例では、上述のビット番号B0乃至B7について、先頭から順番に操作指示番号を3ビットずつの2進数で並べたものをメモリ操作指示パターンとしている。
すなわち、ビット番号B0に対しては、操作しないことを表す"000"が示されている。ビット番号B1に対しては、リセット操作をすることを表す"001"が示されている。ビット番号B2に対しては、セット操作をすることを表す"010"が示されている。ビット番号B3に対しては、操作しないことを表す"000"が示されている。ビット番号B4に対しては、セット操作をすることを表す"010"が示されている。ビット番号B5に対しては、強リセット操作をすることを表す"011"が示されている。ビット番号B6に対しては、強セット操作をすることを表す"100"が示されている。ビット番号B7に対しては、リセット操作をすることを表す"001"が示されている。
このように、この例では、メモリ操作指示パターンとして、ビット番号B0乃至7の8ビットに対して24ビットの操作指示を含んでいる。すなわち、メモリ100の1セル当り3ビットの操作指示が含まれていることになる。このメモリ操作指示パターンは、操作指示生成部242によって生成され、メモリ100に出力される。なお、上述のように、ここでは、先頭8ビットのみを切り出して説明したが、実際にはライトデータバッファ261、リードデータバッファ262またはエラー位置情報バッファ263のビット数に対して3ビットずつメモリ操作指示パターンが生成される。したがって、この例では、メモリ操作指示パターンは2176×3ビットとなる。
図12は、本技術の第1の実施の形態におけるセルパターンの種別例を示す図である。記憶制御装置200から3ビットのメモリ操作指示パターンを受け取ったメモリ100は、制御部130において4ビットのセルパターンを生成する。このセルパターンは、メモリセルアレイ110に対する制御を行うための制御信号である。ここでは便宜上、各セルパターンに対してセルパターン番号を付与している。
セルパターン番号C0については、リセット操作または強リセット操作を行うセルには「1」、何れも行わないセルには「0」を示す。セルパターン番号C1については、強リセット操作を行うセルには「1」、強リセット操作を行わないセルには「0」を示す。セルパターン番号C2については、セット操作または強セット操作を行うセルには「1」、何れも行わないセルには「0」を示す。セルパターン番号C3については、強セット操作を行うセルには「1」、強セット操作を行わないセルには「0」を示す。
図13は、本技術の第1の実施の形態におけるセルパターンの具体例を示す図である。この図では、上述のビット番号B0乃至B7の例に対して、セルパターンを生成した例が示されている。
ビット番号B0およびB3については、何も操作が行われないため、何れのセルパターンも「0」を示す。ビット番号B1およびB7については、強リセット操作ではなく、リセット操作を行うため、セルパターン番号C0のみが「1」を示す。ビット番号B2およびB4については、強セット操作ではなく、セット操作を行うため、セルパターン番号C2のみが「1」を示す。ビット番号B5については、強リセット操作を行うため、セルパターン番号C0およびC1が「1」を示す。ビット番号B6については、強セット操作を行うため、セルパターン番号C2およびC3が「1」を示す。
これらセルパターンを生成するためのメモリ操作指示パターンの走査は、例えばソフトウェアを用いることによりビット毎に順次確認することができ、また、ハードウェアを用いて並列に確認することもできる。
メモリ100において、制御部130は、このようにして生成されたセルパターンを用いて、メモリセルアレイ110に対する操作を行う。
[情報処理システムの動作]
図14は、本技術の実施の形態における記憶制御装置200のライトコマンドに対する動作の処理手順例を示す流れ図である。記憶制御装置200は、ホストコンピュータ300からライトコマンドを受け取ると、以下の手順に沿った処理を行う。
ホストコンピュータ300から指示されたライトコマンドは、ホストインターフェース230経由で記憶制御装置200に入力される。ライトコマンドは、ライト対象の論理ページアドレス、および、ライトデータから構成される。ライトデータの大きさは論理ページのサイズであり、具体的には256バイトである。ライトコマンドのうちライトデータはRAM260のライトデータバッファ261の先頭256バイトに一時的に格納される。
まず、ホストコンピュータ300から指定されたライトデータに対するECCが生成される(ステップS911)。具体的には、ECC処理部270のECC生成部271に対して、ライトデータバッファ261の先頭アドレスと、パリティ生成の指示が与えられる。ECC生成部271は、ライトデータバッファ261の先頭から256バイトを読み出し、16バイトのECCを生成し、ライトデータバッファ261の末尾16バイトに書き込み、物理ページのイメージである272バイトを完成する。
ホストコンピュータ300から指示されたライトコマンドにおいて指定された論理ページに対応する物理ページのデータ読み出しが行われる(ステップS920)。具体的には、記憶制御装置200はメモリ100に対して、リードを指示するリードリクエストと物理ページアドレスとを与える。このとき、物理ページアドレスとして指定する値は、ホストコンピュータ300から指示されたライト対象の論理ページアドレスと同じ値である。メモリ100は、指定された物理ページアドレスに対応するページの内容を読み出し、記憶制御装置200に返送する。記憶制御装置200は、メモリ100から転送された物理ページのデータをリードデータバッファ262に格納する。なお、メモリ100におけるリードリクエスト処理の詳細は後述する。
そして、エラー検出が行われ、エラー位置情報が確定される(ステップS913)。具体的には、ECC処理部270のエラー検出部272に対して、リードデータバッファ262の先頭アドレスと、エラー位置検出の指示とを与える。
上述のように、物理ページには論理ページに該当するデータ256バイトとECC16バイトとが含まれている。エラー検出部272は、いわゆるエラー訂正処理のうち、シンドローム計算およびエラー位置の推定を行い、エラーが検出された位置のビットに値「1」、それ以外の位置のビットに値「0」を設定したエラー位置情報をエラー位置情報バッファ263に保持させる。エラー位置情報の大きさは物理ページのサイズ(272バイト)に等しい。
なお、ここでは、検出されたエラーに対する訂正処理、すなわちエラーとされたビットを反転する処理は行わない。したがって、リードデータバッファ262には依然としてメモリ100から読み出したそのままのデータが置かれていることになる。
次に、物理ページを構成するすべてのビット(272バイト×8ビット)に対して、メモリ100に対するメモリ操作指示パターンが形成される(ステップS914)。上述の例では、1セル(1ビット)のデータに対して3ビットずつのメモリ操作指示パターンが形成されるため、物理ページ全体では272バイト×8ビット×3となる。メモリ操作指示パターンの具体的な例は、図9乃至11により詳述したとおりである。
そして、ホストコンピュータ300から指示されたライトコマンドで指定された論理ページに対応する物理ページに対してライト処理が行われる(ステップS930)。具体的には、記憶制御装置200はメモリ100に対して、ライトを指示するライトリクエストと、ライト対象となる物理ページアドレスと、メモリ操作指示パターンとを供給する。なお、メモリ100におけるライトリクエスト処理の詳細は後述する。
記憶制御装置200は、メモリ100からのライトリクエストに対する完了通知を待ち受け、完了通知を確認するとライト動作を終了し、ホストコンピュータ300に対して完了通知を出力する(ステップS916)。なお、ライトリクエストに対する完了通知が制限時間内に到着しない場合や、ライトに失敗したなどの状況に対応するエラー処理は省略している。
なお、ここまでの説明では、ライトデータ、リードデータに加えて、ライト対象ページの現時点におけるエラー状況(読み出してECCによるエラー検出を行った結果)を加味してセルに対する操作を決定していた。このほかにも、ページごとに保存されたエラー状況を用いてセルに対する操作を決定することが可能である。
記憶制御装置200は、RAM260内部の領域にページエラー状況を保持するようにしてもよい。ページエラー状況は、記憶制御装置200の起動時にメモリ100の特定の領域から読み出され、また記憶制御装置200の停止時にメモリ100の特定の領域に書き戻される。このページエラー状況は、ページごとのエラーセルの位置とその状況が記述されている。ホストコンピュータ300からのライト指示に対し、ライトデータ、リードデータに加えて、ページエラー状況に記録されたエラー履歴を加味して、セルごとの操作を決定することができる。
図15は、本技術の実施の形態におけるメモリ100のリードリクエストに対する動作の処理手順例を示す流れ図である。なお、この処理はステップS920において記憶制御装置200から指示された動作に対応するものである。
メモリ100の制御部130は、制御インターフェース120からの通知によりリクエストを受け取ったことを知り、そのコマンド種類を判別する。受け取ったリクエストがリードリクエストであることを知った制御部130は、以下の手順に沿った処理を行う。なお、ここでは、説明を簡略にするために、リードリクエストの構成要素である物理ページアドレスにおいて指定された値を、そのままワードライン番号として使用する。
まず、制御部130は、制御インターフェース120からリードリクエストの構成要素である物理ページアドレスを取得する(ステップS921)。
そして、制御部130は、ドライバ160に対してリード操作における電圧バイアスの発生を指示する(ステップS922)。具体的には、ビットライン電圧がプレート電圧に対して+Vreadとなるように設定を行う。ドライバ160から供給されたプレート電圧によりメモリセルアレイ110のプレートがドライブされる。
制御部130は、ビットラインセレクタ150に対して全てのビットラインをビットライン電圧でドライブするように指示を行う(ステップS923)。ビットラインセレクタ150は、制御部130からの指示に従い、全てのビットラインに対してドライバ160から供給されたビットライン電圧を供給する。
制御部130は、リードリクエストで指定されたワードライン番号(すなわち、指定された物理ページアドレス)をワードラインデコーダ140に設定する(ステップS924)。そして、ビットラインセレクタ150に対してリード動作の開始を指示する(ステップS925)。
ワードラインデコーダ140は、指定されたワードライン番号に対応するワードラインを論理値「H」でドライブする。これにより、該当するワードラインに接続されたアクセストランジスタが導通状態となり、ドライバ160で発生したリード操作における電圧バイアスがReRAM素子に印可される。そして、それぞれの素子の高抵抗状態または低抵抗状態に応じた電流が、ビットラインを通じてビットラインセレクタ150に流入される。ビットラインセレクタ150は、流入した電流量を測定することにより、それぞれのReRAM素子に対応する論理「0」または「1」を決定する。これにより、指定されたワードライン番号に接続されたReRAM素子の論理状態が、ビットラインセレクタ150により読み出される。
制御部130は、ビットラインセレクタ150に対するリード動作の停止を指示し、ワードラインデコーダ140に対するワードライン番号の設定を取り消す。そして、ビットラインセレクタ150に対するビットラインのドライブ指示を取り消し、ドライバ160に対する電圧バイアスの発生の停止を指示する(ステップS926)。
なお、リード完了のタイミングは、制御部130などが内部に持つ時計によって決定される場合や、ビットラインセレクタ150において十分な電流量が確保できたことを確認することによって決定される場合などが考えられるが、ここでは詳細な説明を省略する。
制御部130は、ビットラインセレクタ150が読み出したデータを制御インターフェース120に出力することを指示する(ステップS927)。そして、制御部130は、制御インターフェース120に指示し、リードデータを記憶制御装置200に供給する(ステップS928)。
図16は、本技術の実施の形態におけるメモリ100のライトリクエストに対する動作の処理手順例を示す流れ図である。なお、この処理はステップS930において記憶制御装置200から指示された動作に対応するものである。
メモリ100の制御部130は、制御インターフェース120からの通知によりリクエストを受け取ったことを知り、そのコマンド種類を判別する。受け取ったリクエストがライトリクエストであることを知った制御部130は、以下の手順に沿った処理を行う。なお、ここでは、説明を簡略にするために、ライトリクエストの構成要素である物理ページアドレスにおいて指定された値を、そのままワードライン番号として使用する。
制御部130は、制御インターフェース120からライトリクエストの構成要素である物理ページアドレスと、メモリ操作指示パターンとを取得する(ステップS931)。ここでは、メモリ操作指示パターンの具体例として、上述の図11の例を想定する。制御部130は、メモリ操作指示パターンの数値の意味を把握している。すなわち、記憶制御装置200が符号化したメモリ操作指示パターンの対応表を、メモリ100の制御部130も知っている。この対応表を用いることにより、制御部130は6528ビットのメモリ操作指示パターンから2176セル分の処理内容を解釈することができる。
制御部130は、メモリ操作指示パターンからセルパターンを生成する(ステップS932)。セルパターンの具体的な例は、図13により詳述したとおりである。上述のように、4つのセルパターンのそれぞれは、2176ビットで構成されている。これはワードラインあたりのセル数と一致している。
このようにして生成されたセルパターンを用いて、セット動作(ステップS940)、強セット動作(ステップS950)、リセット動作(ステップS960)、強リセット動作(ステップS970)が順次実行される。これらの動作が完了すると、制御部130は、制御インターフェース120に指示し、ライトリクエストの終了を記憶制御装置200に通知する(ステップS937)。
図17は、本技術の実施の形態におけるメモリ100のセット動作(ステップS940)の処理手順例を示す流れ図である。
制御部130は、ドライバ160に対してセット操作における電圧バイアスの発生を指示する(ステップS941)。具体的にはプレート電圧がビットライン電圧に対して+Vsetとなるように設定を行う。ドライバ160から供給されたプレート電圧によりメモリセルアレイ110のプレートがドライブされる。
制御部130は、ビットラインセレクタ150に対してセット操作を行うセルパターンを与え、値「1」に対応するビットラインをビットライン電圧で、値「0」に対応するビットラインをプレート電圧でドライブするよう指示する(ステップS942)。ビットラインセレクタ150は、制御部130からの指示に従い、ドライバ160から供給されたビットライン電圧またはプレート電圧を供給する。
ステップS941乃至S946の処理は、S947における判定結果に応じて繰り返される。その際、ステップS942を1回目に実行する場合には、セット操作を行うセルパターンは、セルパターン番号C2である。ステップS942を2回目以降に実行する際には、S947において正常にセット操作が行われなかったことが判明したビットのみを「1」としたパターンが使用される。
ステップS942を1回目に実行する場合を説明する。ここで、ライトするページの先頭8セルに注目すると、セルパターン番号C2の先頭8ビットは"00101010"であるため、ビット番号B2、B4、B6に対応するビットラインのみがビットライン電圧でドライブされる。そして、それ以外の対応するビット番号B0、B1、B3、B5、B7に対応するビットラインはプレート電圧でドライブされる。
制御部130は、ライトリクエストで指定されたワードライン番号(すなわち、指定された物理ページアドレス)をワードラインデコーダ140に設定する(ステップS943)。ワードラインデコーダ140は、指定されたワードライン番号に対応するワードラインを論理値「H」でドライブする。これにより、該当ワードラインに接続されたアクセストランジスタが導通状態となる。
このとき、メモリセルアレイ110のプレートは、ドライバ160から供給されたプレート電圧でドライブされており、ビット番号B2、B4、B6に対応するビットラインは、ステップS942における設定によりビットライン電圧でドライブされている。これはセット操作に必要な電圧バイアスであるため、該当ワードラインとビット番号B2、B4、B6に対応するビットラインの交点に接続されたReRAM素子に対してセット操作が行われる。
一方、ビット番号B0、B1、B3、B5、B7に対応するビットラインは、ステップS942における設定によりプレート電圧でドライブされている。そのため、アクセストランジスタが導通状態となってもReRAM素子の両端に電位差が生じず、ビット反転操作は行われない。
制御部130は、ワードラインデコーダ140に対するワードライン番号の設定を取り消し、ビットラインセレクタ150に対するビットラインのドライブ指示を取り消し、ドライバ160に対する電圧バイアスの発生の停止を指示する(ステップS944)。
なお、セット操作完了のタイミングは、制御部130などが内部に持つ時計によって決定されることなどが考えられるが、ここでは詳細な説明を省略する。
制御部130は、図15のリードリクエストの動作におけるステップS922乃至S926までの処理を行い、操作中のワードライン番号に対応するセルに記録されている値を読み出す(ステップS945)。そして、制御部130は、ビットラインセレクタ150にアクセスし、メモリセルアレイ110から読み出したリードデータを取得する(ステップS946)。
制御部130は、リードデータとセルパターン番号C2とを比較して、正常にセット操作が行われたか否かを確認する(ステップS947)。正常にセット操作が行われた場合には(ステップS947:Yes)、セット動作を終了する。一方、正常にセット操作が行われていない場合には(ステップS947:No)、ステップS941に遷移し、再びセット操作を行う。
なお、2回目以降のセット操作ではステップS947において正常にセット操作が行われなかったことが判明したビットのみを対象として、ステップS942におけるセット操作を行うセルパターンとする。
また、セット操作のリトライを行う回数の上限を定めるために、カウンタを設けて規定回数以上の失敗をエラーとするという手法も考えられるが、ここでは説明を省略する。
図18は、本技術の実施の形態におけるメモリ100の強セット動作(ステップS950)の処理手順例を示す流れ図である。ここで説明する強セット操作とは、セルパターン番号C3で指定されたセルにのみ、セット操作におけるステップS941乃至S944と同様の操作をさらに1回行うものである。ステップS947において、すでにセットされたと判断されたセルに対して、再度追加のセット操作を行うことにより強セット操作が実現される。なお、追加のセット操作を行う手法以外に、印加する電圧や電流を大きくする手法や、その印加時間を長くするという手法も考えられる。
制御部130は、ドライバ160に対してセット操作における電圧バイアスの発生を指示する(ステップS951)。具体的には、プレート電圧がビットライン電圧に対して+Vsetとなるように設定を行う。ドライバ160から供給されたプレート電圧によりメモリセルアレイ110のプレートがドライブされる。
制御部130は、ビットラインセレクタ150に対して強セット操作を行うセルパターン(C3)を与え、値「1」に対応するビットラインをビットライン電圧で、値「0」に対応するビットラインをプレート電圧でドライブするよう指示する(ステップS952)。ビットラインセレクタ150は、制御部130からの指示に従い、ドライバ160から供給されたビットライン電圧またはプレート電圧を供給する。
ここで、書き込むべきページの先頭8セルに注目すると、セルパターン番号C3の先頭8ビットは"00000010"であるため、ビット番号B6に対応するビットラインのみがビットライン電圧でドライブされる。そして、それ以外の対応するビットライン(ビット番号B0乃至B5およびB7)はプレート電圧でドライブされる。
制御部130は、ライトリクエストで指定されたワードライン番号(すなわち、指定された物理ページアドレス)をワードラインデコーダ140に設定する(ステップS953)。ワードラインデコーダ140は、指定されたワードライン番号に対応するワードラインを論理値「H」でドライブする。これにより、該当ワードラインに接続されたアクセストランジスタが導通状態となる。
このとき、メモリセルアレイ110のプレートはドライバ160から供給されたプレート電圧でドライブされており、ビット番号B6に対応するビットラインは、ステップS952における設定によりビットライン電圧でドライブされている。これはセット操作に必要な電圧バイアスであるため、該当ワードラインとビット番号B6に対応するビットラインの交点に接続されたReRAM素子に対してセット操作が行われる。
一方、ビット番号B0乃至B5およびB7に対応するビットラインは、ステップS952における設定によりプレート電圧でドライブされている。そのため、アクセストランジスタが導通状態となってもReRAM素子の両端に電位差が生じず、ビット反転操作は行われない。
制御部130は、ワードラインデコーダ140に対するワードライン番号の設定を取り消し、ビットラインセレクタ150に対するビットラインのドライブ指示を取り消し、ドライバ160に対する電圧バイアスの発生の停止を指示する(ステップS954)。
なお、セット操作完了のタイミングは、制御部130などが内部に持つ時計によって決定されることなどが考えられるが、ここでは詳細な説明を省略する。
図19は、本技術の実施の形態におけるメモリ100のリセット動作(ステップS960)の処理手順例を示す流れ図である。
制御部130は、ドライバ160に対してリセット操作における電圧バイアスの発生を指示する(ステップS961)。具体的には、ビットライン電圧がプレート電圧に対して+Vresetとなるように設定を行う。ドライバ160から供給されたプレート電圧によりメモリセルアレイ110のプレートがドライブされる。
制御部130は、ビットラインセレクタ150に対してリセット操作を行うセルパターンを与え、値「1」に対応するビットラインをビットライン電圧で、値「0」に対応するビットラインをプレート電圧でドライブするよう指示する(ステップS962)。ビットラインセレクタ150は、制御部130からの指示に従い、ドライバ160から供給されたビットライン電圧またはプレート電圧を供給する。
ステップS961乃至S966の処理は、S967における判定結果に応じて繰り返される。その際、ステップS962を1回目に実行する場合には、リセット操作を行うセルパターンは、セルパターン番号C0である。ステップS962を2回目以降に実行する際には、S967において正常にリセット操作が行われなかったことが判明したビットのみを「1」としたパターンが使用される。
ステップS962を1回目に実行する場合を説明する。ここで、ライトするページの先頭8セルに注目すると、セルパターン番号C0の先頭8ビットは"01000101"であるため、ビット番号B1、B5、B7に対応するビットラインのみがビットライン電圧でドライブされる。そして、それ以外の対応するビット番号B0、B2乃至B4、B6に対応するビットラインはプレート電圧でドライブされる。
制御部130は、ライトリクエストで指定されたワードライン番号(すなわち、指定された物理ページアドレス)をワードラインデコーダ140に設定する(ステップS963)。ワードラインデコーダ140は、指定されたワードライン番号に対応するワードラインを論理値「H」でドライブする。これにより、該当ワードラインに接続されたアクセストランジスタが導通状態となる。
このとき、メモリセルアレイ110のプレートは、ドライバ160から供給されたプレート電圧でドライブされており、ビット番号B1、B5、B7に対応するビットラインは、ステップS962における設定によりビットライン電圧でドライブされている。これはリセット操作に必要な電圧バイアスであるため、該当ワードラインとビット番号B1、B5、B7に対応するビットラインの交点に接続されたReRAM素子に対してリセット操作が行われる。
一方、ビット番号B0、B2乃至B4、B6に対応するビットラインは、ステップS962における設定によりプレート電圧でドライブされている。そのため、アクセストランジスタが導通状態となってもReRAM素子の両端に電位差が生じず、ビット反転操作は行われない。
制御部130は、ワードラインデコーダ140に対するワードライン番号の設定を取り消し、ビットラインセレクタ150に対するビットラインのドライブ指示を取り消し、ドライバ160に対する電圧バイアスの発生の停止を指示する(ステップS964)。
なお、リセット操作完了のタイミングは、制御部130などが内部に持つ時計によって決定されることなどが考えられるが、ここでは詳細な説明を省略する。
制御部130は、図15のリードリクエストの動作におけるステップS922乃至S926までの処理を行い、操作中のワードライン番号に対応するセルに記録されている値を読み出す(ステップS965)。そして、制御部130は、ビットラインセレクタ150にアクセスし、メモリセルアレイ110から読み出したリードデータを取得する(ステップS966)。
制御部130は、リードデータとセルパターン番号C0とを比較して、正常にリセット操作が行われたか否かを確認する(ステップS967)。正常にリセット操作が行われた場合には(ステップS967:Yes)、リセット動作を終了する。一方、正常にリセット操作が行われていない場合には(ステップS967:No)、ステップS961に遷移し、再びリセット操作を行う。
なお、2回目以降のリセット操作ではステップS967において正常にリセット操作が行われなかったことが判明したビットのみを対象として、ステップS962におけるリセット操作を行うセルパターンとする。
また、リセット操作のリトライを行う回数の上限を定めるために、カウンタを設けて規定回数以上の失敗をエラーとするという手法も考えられるが、ここでは説明を省略する。
図20は、本技術の実施の形態におけるメモリ100の強リセット動作(ステップS970)の処理手順例を示す流れ図である。ここで説明する強リセット操作とは、セルパターン番号C1で指定されたセルにのみ、リセット操作におけるステップS961乃至S964と同様の操作をさらに1回行うものである。ステップS967において、すでにリセットされたと判断されたセルに対して、再度追加のリセット操作を行うことにより強リセット操作が実現されるなお、追加のリセット操作を行う手法以外に、印加する電圧や電流を大きくする手法や、その印加時間を長くするという手法も考えられる。
制御部130は、ドライバ160に対してリセット操作における電圧バイアスの発生を指示する(ステップS971)。具体的には、プレート電圧がビットライン電圧に対して+Vresetとなるように設定を行う。ドライバ160から供給されたプレート電圧によりメモリセルアレイ110のプレートがドライブされる。
制御部130は、ビットラインセレクタ150に対して強リセット操作を行うセルパターン(C1)を与え、値「1」に対応するビットラインをビットライン電圧で、値「0」に対応するビットラインをプレート電圧でドライブするよう指示する(ステップS972)。ビットラインセレクタ150は、制御部130からの指示に従い、ドライバ160から供給されたビットライン電圧またはプレート電圧を供給する。
ここで、書き込むべきページの先頭8セルに注目すると、セルパターン番号C1の先頭8ビットは"00000100"であるため、ビット番号B5に対応するビットラインのみがビットライン電圧でドライブされる。そして、それ以外の対応するビットライン(ビット番号B0乃至B4、B6、B7)はプレート電圧でドライブされる。
制御部130は、ライトリクエストで指定されたワードライン番号(すなわち、指定された物理ページアドレス)をワードラインデコーダ140に設定する(ステップS973)。ワードラインデコーダ140は、指定されたワードライン番号に対応するワードラインを論理値「H」でドライブする。これにより、該当ワードラインに接続されたアクセストランジスタが導通状態となる。
このとき、メモリセルアレイ110のプレートはドライバ160から供給されたプレート電圧でドライブされており、ビット番号B5に対応するビットラインは、ステップS972における設定によりビットライン電圧でドライブされている。これはリセット操作に必要な電圧バイアスであるため、該当ワードラインとビット番号B5に対応するビットラインの交点に接続されたReRAM素子に対してリセット操作が行われる。
一方、ビット番号B0乃至B4、B6、B7に対応するビットラインは、ステップS972における設定によりプレート電圧でドライブされている。そのため、アクセストランジスタが導通状態となってもReRAM素子の両端に電位差が生じず、ビット反転操作は行われない。
制御部130は、ワードラインデコーダ140に対するワードライン番号の設定を取り消し、ビットラインセレクタ150に対するビットラインのドライブ指示を取り消し、ドライバ160に対する電圧バイアスの発生の停止を指示する(ステップS974)。
なお、リセット操作完了のタイミングは、制御部130などが内部に持つ時計によって決定されることなどが考えられるが、ここでは詳細な説明を省略する。
このように、本技術の第1の実施の形態によれば、記憶制御装置200からメモリ100への1ビット当りのメモリ操作指示パターンの情報量を3ビットとすることにより、メモリ100に対する適応的制御を行うことができる。
<2.第2の実施の形態>
上述の実施の形態では、各処理内容に対して均等に3ビットずつの操作指示番号を割り当てていた。ReRAMデバイスの研究開発では、保持力が小さいことにより強セット操作または強リセット操作を必要とするセルの割合を小さくしようとする努力が続いている。また、強セット操作または強リセット操作を必要とするセルの割合が大きくなったページについては、信頼性が低いものとして、代替ページと置き換えてしまうことが考えられる。その場合、実際に使用されているページの範囲内で考えると、強セット操作または強リセット操作を必要とするセルの割合は、小さくなることが期待される。
そこで、この第2の実施の形態では、強書込みの発生頻度が比較的低いことを想定し、各処理内容に対する符号の割当てを可変長とする。なお、情報処理システムとしての基本的な構成については、第1の実施の形態と同様であるため、構成に関する詳細な説明は省略する。
[メモリ操作指示パターン]
図21は、本技術の第2の実施の形態における操作指示番号の割当て例を示す図である。この例では、強書込みの発生頻度が比較的低いことを前提として、強書込みの操作に対しては3ビットの符号、それ以外の操作に対しては2ビットの符号、すなわち可変長符号を割り当てている。
この例では、操作しない場合には、操作指示番号の符号として"00"が割り当てられている。リセット操作をする場合には、操作指示番号の符号として"01"が割り当てられている。セット操作をする場合には、操作指示番号の符号として"10"が割り当てられている。強リセット操作をする場合には、操作指示番号の符号として"110"が割り当てられている。強セット操作をする場合には、操作指示番号の符号として"111"が割り当てられている。
図22は、本技術の第2の実施の形態における操作指示番号の仮想的な言語表現を用いた定義例を示す図である。
第811行は、定義の開始を宣言している。「メモリ操作指示パターン」の引数として与えられる「処理内容[]」は、2176個の要素を持つ配列である。第812行のfor文により2176個のセルに対するループ処理を制御している。第813行のswitch文により、それぞれのセルに対する処理内容を振り分けている。第814乃至818行のcase文により、各セルの操作内容に応じた長さ、および、パターンの符号が出力される。
このように可変長符号化された「メモリ操作指示パターン」を受信したメモリ100の制御インターフェース120は、以下のように可変長符号の復号を行う。すなわち、制御インターフェース120は、「メモリ操作指示パターン」の先頭2ビットを取得する。このときそれが"00"の場合には0、"01"の場合には1、"10"の場合には2の値をそれぞれ出力する。先頭2ビットが"11"の場合には「メモリ操作指示パターン」の先頭1ビットをさらに取得し、追加して読み出した1ビットが"0"の場合には3、"1"の場合には4をそれぞれ出力する。
なお、ここではソフトウェア的なアルゴリズムを示したが、バレルシフタを用いるような可変長符号の復号方法を用いることも可能である。
このように、本技術の第2の実施の形態によれば、メモリ操作指示パターンに可変長符号を割り当てることにより、メモリ操作指示パターンのサイズを小さくすることができる。
<3.第3の実施の形態>
上述の実施の形態では、セルに対する操作が「操作しない」も含めて5種類に限定されることを前提として例示していた。しかし、ReRAMのセル操作に関するパラメータは、電圧や時間など多様な選択肢が存在する。ただし、特別なパラメータを使用するべきセルの割合は小さい。このため、特別な操作を行うセルに関する情報をメモリ操作指示パターンの後半にまとめて記述するという方法がある。
すなわち、メモリ操作指示パターンの前半は2176セル×2ビットの大きさのデータにより、全てのセルに対する状況を表現する。そして、後半には「その他の操作」としたセルの位置情報とその操作を具体的に示す情報を記述する。
[メモリ操作指示パターン]
図23は、本技術の第3の実施の形態における操作指示番号の割当て例を示す図である。この例では、「操作しない」、「リセット操作」、「セット操作」にはそれぞれ2ビットで構成される"00"、"01"、"10"を割り当てている。さらに、「それ以外の操作」を行うべきセルには"11"を割り当てている。
そして、「それ以外の操作」の場合には、さらに複数の選択肢のうちから何れかを指定するようになっている。すなわち、「強リセット操作」であれば"0000"、「強セット操作」であれば"0001"、「弱リセット操作」であれば"0010"、「弱セット操作」であれば"0011"をそれぞれ割り当てている。
ここで、弱リセット操作および弱セット操作は、図8により説明した強書込みとは逆に、弱い書込みを行うものである。すなわち、LRS状態に遷移させる際に小さいパルス電圧を使用して書込みを行った場合には、通常のLRS状態よりも高い抵抗状態(以下、弱LRS状態と称する。)となる。また、HRS状態に遷移させる際に小さいパルス電圧を使用して書込みを行った場合には、通常のHRS状態よりも低い抵抗状態(以下、弱HRS状態と称する。)となる。
図24は、本技術の第3の実施の形態における操作指示番号の仮想的な言語表現を用いた定義例を示す図である。
第821行は、定義の開始を宣言している。「メモリ操作指示パターン」の引数として与えられる「処理内容[]」は、2176個の要素を持つ配列である。第822行において内部変数COUNTを宣言し、値「0」で初期化している。第823行のfor文により2176個のセルに対する1回目のループ処理を制御している。第824行のswitch文により、それぞれのセルに対する処理内容を振り分けている。第825乃至827行のcase文により、操作しない、リセット操作、セット操作の3つの場合に対する符号が出力される。第828行のdefault文により上述の3つの場合以外の操作に対する符号"11"が出力される。また、内部変数COUNTがインクリメントされる。
ここまでの第1のループにより、2176個のセルに対する第1の情報が出力される。内部変数COUNTは、2176個のセルのうち「処理内容」が「強リセット操作」、「強セット操作」、「弱リセット操作」、「弱セット操作」の何れかであるセルの数を示している。
第831行では、内部変数COUNTの値を出力している。ここで関数int2bin()は、第1引数の値を、第2引数のビット数で出力する関数である。この例では、内部変数COUNTの値を16ビットの2進数によって出力している。第832行のfor文により、2176個のセルに対する2回目のループ処理を制御している。第833行のif文により、操作しない、リセット操作、セット操作、の何れでもない場合に対して、第834乃至839行の情報出力を行う。第834行では、セルの位置を12ビットの2進数で出力している。第835行では、switch文により、セルに対する処理内容を振り分けている。第836乃至839行のcase文により、強リセット操作、強セット操作、弱リセット操作、弱セット操作の何れかに対する符号が出力される。
このように、本技術の第3の実施の形態によれば、メモリ操作指示パターンの後半にその他の操作をまとめることにより、例外的な処理を分けて管理することができる。
<4.第4の実施の形態>
上述の実施の形態では、通常のセット操作の後に再度セット操作を行うことによって強セット操作が実現されるデバイスを例にしていた。しかしながら、デバイスによっては連続したセット操作または連続したリセット操作によりデバイスの破壊が発生してしまう場合がある。このようなデバイスを用いる場合には、以下のような判断と指示を適用することができる。
[メモリ操作指示パターン]
図25は、本技術の第4の実施の形態におけるリードデータ、ライトデータおよびエラー位置情報とメモリ100における処理内容との関係例を示す図である。この例は、図9において説明したものと比べて、ビット番号B5およびB6の処理内容が異なっている。他のビット番号B0乃至B4およびB7については、図9において説明したものと同様であるため、説明を省略する。
ビット番号B5の場合、もともと「1」にライトされたセルが経時変化により「0」としてリードされる状態に変化したと考えられるが、このセルを「1」とするために連続してリセット操作を行ってしまうと、デバイスの品質問題が発生する場合がある。そこで、一旦セット操作により「0」に対応する抵抗値に遷移させた後にリセット操作を行って「1」に対応する抵抗値に遷移させることにより、同一セルに対する連続リセット操作を回避する。
ビット番号B6の場合、もともと「0」にライトされたセルが経時変化により「1」としてリードされる状態に変化したと考えられるが、このセルを「0」とするために連続してセット操作を行ってしまうと、デバイスの品質問題が発生する場合がある。そこで、一旦リセット操作により「1」に対応する抵抗値に遷移させた後にセット操作を行って「0」に対応する抵抗値に遷移させることにより、同一セルに対する連続セット操作を回避する。
図26は、本技術の第4の実施の形態における操作指示番号の例を示す図である。この例では、操作しない場合には、操作指示番号として「0」("000")を示している。リセット操作をする場合には、操作指示番号として「1」("001")を示している。セット操作をする場合には、操作指示番号として「2」("010")を示している。セット操作後にリセット操作をする場合には、操作指示番号として「3」("011")を示している。リセット操作後にセット操作をする場合には、操作指示番号として「4」("100")を示している。
このように、本技術の第4の実施の形態によれば、セット操作またはリセット操作を連続して行うことが適切ではないデバイスを利用したメモリ100に対してもメモリ操作指示パターンによる適応的制御を行うことができる。
なお、上述の実施の形態は本技術を具現化するための一例を示したものであり、実施の形態における事項と、特許請求の範囲における発明特定事項とはそれぞれ対応関係を有する。同様に、特許請求の範囲における発明特定事項と、これと同一名称を付した本技術の実施の形態における事項とはそれぞれ対応関係を有する。ただし、本技術は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において実施の形態に種々の変形を施すことにより具現化することができる。
なお、本技術は以下のような構成もとることができる。
(1)ライト対象に係るメモリの記憶状態を取得するメモリ状態取得部と、
前記取得された記憶状態とライトデータとから前記ライト対象に係るメモリの1セル当り少なくとも2ビットの操作指示を生成する操作指示生成部と
を具備する記憶制御装置。
(2)前記メモリ状態取得部は、
前記ライト対象に係るメモリに記憶されているデータを読み出してリードデータとするリード処理部と、
前記リードデータについてエラー検出を行って、エラーが検出された位置を示すエラー位置情報を生成するエラー検出部とを備え、
前記リードデータおよび前記エラー位置情報を前記記憶状態として取得する
前記(1)に記載の記憶制御装置。
(3)前記操作指示は、前記ライト対象に係るメモリに対する書込みの極性および強度の組合せに関する指示を含む前記(1)または(2)に記載の記憶制御装置。
(4)前記メモリが可変抵抗素子である場合において、
前記書込みの極性は、前記可変抵抗素子において所定の閾値により判別される高抵抗状態または低抵抗状態の何れか一方の状態であり、
前記書込みの強度は、前記可変抵抗素子における抵抗状態の強度である
前記(3)に記載の記憶制御装置。
(5)前記操作指示は、前記ライト対象に係るメモリに対する互いに異なる極性の2回の書込みに関する指示を含む前記(1)から(4)のいずれかに記載の記憶制御装置。
(6)前記操作指示生成部は、前記操作指示を可変長符号により符号化する
前記(1)から(5)のいずれかに記載の記憶制御装置。
(7)複数のメモリセルからなるメモリと、
前記ライト対象に係る前記メモリセルの1セル当り少なくとも2ビットの操作指示を取得する操作指示取得部と、
前記操作指示に従って前記ライト対象に係る前記メモリセルに対するライト処理を行う制御部と
を具備する記憶装置。
(8)複数のメモリセルからなるメモリと、
ライト対象に係る前記メモリセルの記憶状態を取得するメモリ状態取得部と、
前記取得された記憶状態とライトデータとから前記ライト対象に係る前記メモリセルの1セル当り少なくとも2ビットの操作指示を生成する操作指示生成部と、
前記操作指示に従って前記ライト対象に係る前記メモリセルに対するライト処理を行う制御部と
を具備する記憶装置。
(9)ライト対象に係るメモリの記憶状態を取得するメモリ状態取得手順と、
前記取得された記憶状態とライトデータとから前記ライト対象に係るメモリの1セル当り少なくとも2ビットの操作指示を生成する操作指示生成手順と
を具備する記憶制御方法。
100 メモリ
101 ブロック
110 メモリセルアレイ
111 可変抵抗素子
113 プレート
120 制御インターフェース
130 制御部
140 ワードラインデコーダ
150 ビットラインセレクタ
160 ドライバ
200 記憶制御装置
210 メモリインターフェース
230 ホストインターフェース
240 制御部
241 リード処理部
242 操作指示生成部
261 ライトデータバッファ
262 リードデータバッファ
263 エラー位置情報バッファ
264 アドレスバッファ
265 メモリ操作指示パターンバッファ
270 ECC処理部
271 ECC生成部
272 エラー検出部
290 バス
300 ホストコンピュータ

Claims (9)

  1. ライト対象に係るメモリの記憶状態を取得するメモリ状態取得部と、
    前記取得された記憶状態とライトデータとから前記ライト対象に係るメモリの1セル当り少なくとも2ビットの操作指示を生成する操作指示生成部と
    を具備する記憶制御装置。
  2. 前記メモリ状態取得部は、
    前記ライト対象に係るメモリに記憶されているデータを読み出してリードデータとするリード処理部と、
    前記リードデータについてエラー検出を行って、エラーが検出された位置を示すエラー位置情報を生成するエラー検出部とを備え、
    前記リードデータおよび前記エラー位置情報を前記記憶状態として取得する
    請求項1記載の記憶制御装置。
  3. 前記操作指示は、前記ライト対象に係るメモリに対する書込みの極性および強度の組合せに関する指示を含む請求項1記載の記憶制御装置。
  4. 前記メモリが可変抵抗素子である場合において、
    前記書込みの極性は、前記可変抵抗素子において所定の閾値により判別される高抵抗状態または低抵抗状態の何れか一方の状態であり、
    前記書込みの強度は、前記可変抵抗素子における抵抗状態の強度である
    請求項3記載の記憶制御装置。
  5. 前記操作指示は、前記ライト対象に係るメモリに対する互いに異なる極性の2回の書込みに関する指示を含む請求項1記載の記憶制御装置。
  6. 前記操作指示生成部は、前記操作指示を可変長符号により符号化する
    請求項1記載の記憶制御装置。
  7. 複数のメモリセルからなるメモリと、
    前記ライト対象に係る前記メモリセルの1セル当り少なくとも2ビットの操作指示を取得する操作指示取得部と、
    前記操作指示に従って前記ライト対象に係る前記メモリセルに対するライト処理を行う制御部と
    を具備する記憶装置。
  8. 複数のメモリセルからなるメモリと、
    ライト対象に係る前記メモリセルの記憶状態を取得するメモリ状態取得部と、
    前記取得された記憶状態とライトデータとから前記ライト対象に係る前記メモリセルの1セル当り少なくとも2ビットの操作指示を生成する操作指示生成部と、
    前記操作指示に従って前記ライト対象に係る前記メモリセルに対するライト処理を行う制御部と
    を具備する記憶装置。
  9. ライト対象に係るメモリの記憶状態を取得するメモリ状態取得手順と、
    前記取得された記憶状態とライトデータとから前記ライト対象に係るメモリの1セル当り少なくとも2ビットの操作指示を生成する操作指示生成手順と
    を具備する記憶制御方法。
JP2012159688A 2012-07-18 2012-07-18 記憶制御装置、記憶装置、および、それらにおける処理方法 Pending JP2014022004A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2012159688A JP2014022004A (ja) 2012-07-18 2012-07-18 記憶制御装置、記憶装置、および、それらにおける処理方法
US13/906,378 US20140025907A1 (en) 2012-07-18 2013-05-31 Storage control apparatus, storage apparatus, and processing methods thereof
CN201310291555.1A CN103577341A (zh) 2012-07-18 2013-07-11 存储控制装置、存储装置及其处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012159688A JP2014022004A (ja) 2012-07-18 2012-07-18 記憶制御装置、記憶装置、および、それらにおける処理方法

Publications (1)

Publication Number Publication Date
JP2014022004A true JP2014022004A (ja) 2014-02-03

Family

ID=49947558

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012159688A Pending JP2014022004A (ja) 2012-07-18 2012-07-18 記憶制御装置、記憶装置、および、それらにおける処理方法

Country Status (3)

Country Link
US (1) US20140025907A1 (ja)
JP (1) JP2014022004A (ja)
CN (1) CN103577341A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019212356A (ja) * 2018-06-08 2019-12-12 ウィンボンド エレクトロニクス コーポレーション 半導体記憶装置
WO2021131234A1 (ja) * 2019-12-25 2021-07-01 ソニーセミコンダクタソリューションズ株式会社 記憶装置、記憶制御装置、および、記憶装置の制御方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10579290B2 (en) * 2016-03-23 2020-03-03 Winbond Electronics Corp. Option code providing circuit and providing method thereof
WO2020000316A1 (zh) * 2018-06-28 2020-01-02 华为技术有限公司 容错处理的方法、装置和服务器

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019212356A (ja) * 2018-06-08 2019-12-12 ウィンボンド エレクトロニクス コーポレーション 半導体記憶装置
US10908989B2 (en) 2018-06-08 2021-02-02 Winbond Electronics Corp. Variable resistance random-access memory and method for write operation having error bit recovering function thereof
WO2021131234A1 (ja) * 2019-12-25 2021-07-01 ソニーセミコンダクタソリューションズ株式会社 記憶装置、記憶制御装置、および、記憶装置の制御方法
US12046281B2 (en) 2019-12-25 2024-07-23 Sony Semiconductor Solutions Corporation Storage apparatus, storage control apparatus, and storage apparatus control method

Also Published As

Publication number Publication date
CN103577341A (zh) 2014-02-12
US20140025907A1 (en) 2014-01-23

Similar Documents

Publication Publication Date Title
JP5839048B2 (ja) 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法
CN103324443B (zh) 存储控制装置、存储装置、信息处理系统及其处理方法
CN103377139B (zh) 存储控制装置、存储器系统、信息处理系统及存储控制方法
JP5853906B2 (ja) 記憶制御装置、記憶装置、情報処理システムおよび記憶制御方法
KR20200056880A (ko) 저장 장치 및 그 동작 방법
KR20130030640A (ko) 저장 매체에 데이터를 저장하는 방법 및 그것을 포함하는 데이터 저장 장치
JP5929456B2 (ja) 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法
JP6497394B2 (ja) メモリシステム、記憶装置、および、メモリシステムの制御方法
WO2015170550A1 (ja) 記憶制御装置、記憶装置、および、その記憶制御方法
JP6891817B2 (ja) メモリコントローラ、メモリシステム、および、メモリコントローラの制御方法
US20140164683A1 (en) Nonvolatile memory apparatus, operating method thereof, and data processing system having the same
JP2014022004A (ja) 記憶制御装置、記憶装置、および、それらにおける処理方法
EP2799998A1 (en) Storage control device, storage device, information processing system, and processing methods in same
JP2016053808A (ja) 記憶制御装置、記憶装置、および、記憶制御方法
JP2013228767A (ja) 記憶制御装置、メモリシステム、情報処理システム、および、記憶制御方法
JP2015106324A (ja) 記憶制御装置、記憶装置、情報処理システムおよびその記憶制御方法
CN103377693B (zh) 存储控制装置、存储装置和处理方法
WO2017010147A1 (ja) 不揮発メモリ、メモリコントローラ、記憶装置、情報処理システムおよび不揮発メモリの制御方法
WO2016056290A1 (ja) メモリコントローラ、メモリシステム、記憶装置、情報処理システムおよび記憶制御方法
JP2014013635A (ja) 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法
JPWO2007116476A1 (ja) メモリカードおよびデータの書き込み方法
JP2010026584A (ja) メモリコントローラおよび不揮発性記憶装置
JPWO2015008438A1 (ja) 不揮発性半導体記憶装置とその書換方法