JP2012252558A - 不揮発性メモリ、メモリコントローラ、不揮発性メモリのアクセス方法、およびプログラム - Google Patents
不揮発性メモリ、メモリコントローラ、不揮発性メモリのアクセス方法、およびプログラム Download PDFInfo
- Publication number
- JP2012252558A JP2012252558A JP2011125079A JP2011125079A JP2012252558A JP 2012252558 A JP2012252558 A JP 2012252558A JP 2011125079 A JP2011125079 A JP 2011125079A JP 2011125079 A JP2011125079 A JP 2011125079A JP 2012252558 A JP2012252558 A JP 2012252558A
- Authority
- JP
- Japan
- Prior art keywords
- access
- ecc
- cell array
- memory cell
- access path
- 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
Links
- 230000015654 memory Effects 0.000 title claims abstract description 257
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000012545 processing Methods 0.000 claims abstract description 178
- 238000012937 correction Methods 0.000 claims abstract description 62
- 238000001514 detection method Methods 0.000 claims abstract description 46
- 239000000872 buffer Substances 0.000 claims description 93
- 230000006870 function Effects 0.000 claims description 8
- 230000000717 retained effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 230000014759 maintenance of location Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000006866 deterioration Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1405—Saving, restoring, recovering or retrying at machine instruction level
- G06F11/141—Saving, restoring, recovering or retrying at machine instruction level for bus or memory accesses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4247—Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
- G06F13/4252—Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using a handshaking protocol
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4265—Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
- G06F13/4269—Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus using a handshaking protocol, e.g. Centronics connection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4286—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8053—Vector processors
- G06F15/8061—Details on data memory access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
- G06F9/3871—Asynchronous instruction pipeline, e.g. using handshake signals between stages
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/65—Purpose and implementation aspects
- H03M13/6566—Implementations concerning memory access contentions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Read Only Memory (AREA)
Abstract
【解決手段】ワード単位でアクセス可能で固定レイテンシでアクセス可能な第1アクセスモードと可変レイテンシでアクセス可能な第2アクセスモードによりアクセス可能な不揮発性メモリセルアレイを少なくとも含む不揮発性メモリセルデバイスと、第1アクセス経路に配置され、第1アクセスモード時にメモリセルアレイから出力されたデータに対してECCを適用した誤り検出処理および訂正処理を行う第1ECC処理部と、第2アクセス経路に配置され、第2アクセスモード時にメモリセルアレイから出力されたデータに対してECCを適用した誤り検出処理および訂正処理を行う第2ECC処理部とを有する。
【選択図】図1
Description
PCRAMやReRAMはNANDフラッシュと異なり、DRAMやSRAMのようにワード単位でアクセスが可能であることから、NVRAMと呼ばれる。
NANDフラッシュが連続データのシーケンシャルアクセスで高速であるのに対し、NVRAMはNANDフラッシュでは実現できない高速なランダムアクセスに対応できることを大きな特徴とする不揮発性メモリである。
これに対して、ワード単位でアクセス可能なNVRAMは、CPUから直接データにアクセスが可能であるため不揮発性のワークメモリとしてeXecute In Place(XIP)モデルの用途で使用できることを特徴としている。
NANDフラッシュをベースとした不揮発性メモリは、セクタ単位にECCを計算しており、エラー検出訂正には、最小でもセクタ単位で読み出す必要があるため、セクタ以下のサイズでのランダムアクセスが遅い欠点があった。
特許文献1では、32〜128ビットのデータに対してECCによるエラー検出訂正をすることで、セクタより小さいデータのランダムアクセスパフォーマンスを改善している。
つまり、特許文献1では、NANDフラッシュを対象としているため、メモリセルのアクセスがページ単位であり、アクセス単位よりも小さいデータに対してECC処理を行う手法を提案している。
・アクセスのレイテンシは固定であることが望ましい。
ECC処理によるアクセスのレイテンシへの影響を最小限にすることが望ましい。
前者については、メモリインターフェースではハンドシェークを省き、固定レイテンシでアクセスする方が高速である。ハンドシェーク信号をポーリングし、その結果を判断して信号制御に反映することは、アクセスサイクルを増加させる要因になる。
後者については、ECC処理に必要とするクロック数が単純に少ない方が好ましいことに加え、ビット誤りの訂正処理が発生した場合には、その分アクセスサイクルを増やす必要があり、前者の課題とも関連性を持つ。
また、逆にシーケンシャルアクセスでは、固定アクセスタイムにされたアクセスを複数繰り返した場合には、固定化によるパフォーマンスのオーバーヘッドが累積され、本来のパフォーマンスからの低下が増大する課題も発生する。
XIP対応と、シーケンシャルアクセス対応を両立させることにも課題がある。
また、特許文献2にも同様の技術が開示されているが、この手法を用いてもパフォーマンス改善の効果を得ることは困難である。
なお、説明は以下の順序で行う。
1.第1の実施形態(不揮発性メモリの第1の構成例)
2.第2の実施形態(不揮発性メモリの第2の構成例)
3.第3の実施形態(不揮発性メモリの第3の構成例)
4.第4の実施形態(不揮発性メモリの第4の構成例)
図1は、本第1の実施形態に係る不揮発性メモリの構成を示す図である。
不揮発性メモリ10は、メモリコントローラ30を通してNVRAM20にアクセス可能なホスト装置(CPU)40、およびホスト装置40が直接的にアクセス可能なワークメモリとしてのDRAM50を含んで構成されている。
本実施形態の不揮発性メモリ10は、NVRAM20の不揮発性記憶領域に対するアクセスモードとして、XIP用ECC処理を備えた第1アクセスモードと、シーケンシャル用ECC処理を備えた第2アクセスモードを持つことを特徴とする。
第1アクセスモードは、たとえばXIP動作時のパフォーマンスオーバーヘッドについて最適化されたアクセスモードであり、固定レイテンシでアクセスが可能である。
第2アクセスモードは、シーケンシャルアクセスオーバーヘッドについて最適化されたアクセスモードであり、アクセスレイテンシが変化する。
本実施形態の不揮発性メモリ10は、不揮発性記憶領域について、この2つのアクセスモードによって使い分けることで、メモリシステムとしての動作効率を改善できることを特徴とする。
第1アクセスモードは、XIP用として、CPU40からワード単位で直接アクセス可能な領域として使用するモードであって、XIPに最適な小さいデータ単位に対してECC処理を行い、ビット誤りの検出処理と訂正処理を行う。
さらに、第1アクセスモードは、固定時間のアクセスで完了する仕様である、第1アクセスモードは、ビット誤りが発生していないデータに対しても誤り訂正に必要な分の処理時間を含むことになる。本実施形態では、インターフェースで発生するハンドシェークの処理を不要とすることで、アクセスサイクルを短縮することを特徴とする。
第2アクセスモードは、シーケンシャルアクセス用として、第1アクセスモードよりも大きなデータ単位にECC処理を行うため、第1のモードを繰り返してアクセスした場合よりも高速にアクセスが可能となる。
また、第1アクセスモードより大きなデータ単位である第2アクセスモードでは、ビット誤りが発生した場合の訂正時間が誤り数が大きいほど長くなるため、ハンドシェークを行うインターフェースを持つことで、アクセス時間を最適化することを特徴とする。
NVRAM20は、NVRAMセルアレイ21、第1ECC処理部22、第1バッファ23、第1アクセスモード時に適用される第1アクセス経路24、および第2アクセスモード時に適用される第2アクセス経路25を有する。
第1アクセス経路24は固定レイテンシでアクセス可能な第1アクセスモード時に適用され、第2アクセス経路25は可変レイテンシでアクセス可能な第2アクセスモード時に適用される。
なお、図においては、NVRAMセルアレイ21の入出力は共通のアクセス経路CMPとして示されている。
NVRAMセルアレイ21は、ホスト装置(CPU)40からNVRAMコントローラ30を通して、固定レイテンシでアクセス可能な第1アクセスモードと可変レイテンシでアクセス可能な第2アクセスモードによりアクセス可能である。
第1ECC処理部22は、第1アクセス経路24に配置され、第1アクセスモード時にNVRAMセルアレイ21から出力された(読み出された)データに対して、誤り訂正コード(ECC)を適用した誤り検出処理および訂正処理を行う。第1ECC処理部22は、ECC処理後のデータを第1バッファ23に出力する。
第1ECC処理部22は、第1アクセスモード時にNVRAMコントローラ30から転送され、第1バッファ23に保持されたたNVRAMセルアレイ21への書き込みデータに、生成した第1ECCを付加する。第1ECC処理部22は、第1ECCが付加された書き込みデータを第1アクセス経路24を介してNVRAMセルアレイ21に出力する。
第1バッファ23は、NVRAMセルアレイ21から読み出され第1アクセス経路24を伝送され第1ECC処理部22で処理されたデータ、NVRAMセルアレイ21から読み出され第2アクセス経路25を伝送されたデータを保持する。
第1バッファ23は、NVRAMセルアレイ21に書き込むために外部のNVRAMコントローラ30の第1アクセス経路を伝送されたデータを保持する。
第1バッファ23は、NVRAMセルアレイ21に書き込むためにNVRAMコントローラ30の第2アクセス経路を伝送され第2ECC処理が施された入力データを保持する。
NVRAMコントローラ30は、第2ECC処理部33、第2バッファ34、第1アクセス経路35、および第2アクセス経路36を有する。
第1アクセス経路35および第2アクセス経路36は、CPUインターフェース31とNVRAMインターフェース32との間に並列に配置されている。
第1アクセス経路35は固定レイテンシでアクセス可能な第1アクセスモード時に適用され、第2アクセス経路36は可変レイテンシでアクセス可能な第2アクセスモード時に適用される。
第2ECC処理部33は、第2アクセスモード時にCPU40から転送され、CPUインターフェース31を通して入力された書き込みデータに第2ECCを付加して、第2アクセス経路36を通ししてNVRAMインターフェース32に出力する。
第2バッファ34は、NVRAMセルアレイ32から読み出され、第2アクセス経路25を伝送され、第1バッファ23に保持され、NVRAMインターフェース32を介して入力され、第2ECC処理部33で処理されたデータを保持する。
第2バッファ34は、CPUインターフェース31を通して入力され、NVRAMセルアレイ21に書き込むために第2アクセス経路36を伝送されたデータを保持する。
第1アクセス経路35には、第1アクセスモード時に、NVRAMセルアレイ21から出力され第1ECC処理部22で第1ECC処理が施され、第1バッファ23に保持され、さらにNVRAMインターフェース32を介して入力してデータが伝送される。
第1アクセス経路35には、第1アクセスモード時に、CPUインターフェース31を通して入力された書き込みデータが伝送される。
図3(A)および(B)は、ハンドシェーク信号を用いない固定サイクルを処理する第1インターフェースとハンドシェーク信号を用いた可変サイクルの第2インターフェースの制御信号、データの一例を示すタイミングチャートである。
本技術では、図3(A)に示すように、第1アクセスモード時にはハンドシェーク信号による制御を行わず、第2アクセスモード時には、図3(B)に示すように、ハンドシェーク信号、図3(B)の例ではビジー信号xBsyによる制御を行う。
一般的に、不揮発性メモリセルの書込みに要するビジー(Busy)時間(Program→Verifyの繰り返し回数)はある分布を持つ。
図4において、横軸はライトビジー(Write Busy)時間を示し、縦軸がメモリセル個数を示している。
固定サイクルにするには、少なくともオールパス(All Pass)の時間が必要である。
時間Typの時間で書き込みが完了できるセルではΔtはオーバーヘッドとなる。
シーケンシャルアクセスを固定サイクルの繰り返しで行うと、このオーバーヘッド分も加算されるため、可変サイクルで実現することが望ましい。
第1アクセスモードにおいて、書き込み時のアクセスレイテンシとして、第1ECCの生成時間と、NVRAMセルアレイ21への書き込み時間を含む。
第2アクセスモードにおいて、可変である読み出し時のアクセスレイテンシは、最大の場合として、NVRAMセルアレイ21からの読み出し時間と、第2ECC処理部33のビット誤り検出時間と、第2ECC処理部33のビット訂正時間を含む。
2アクセスモードにおいて、書き込み時のアクセスレイテンシとして、第2ECCの生成時間と、NVRAMセルアレイ21への書き込み時間を含む。
図1の構成では、第1アクセスモードの処理を行うために、NVRAM20内に、第1アクセス経路24に配置された第1ECC処理部22、および第1バッファ23を有する。
NVRAM20では、第1ECC処理部22でNVRAMセルアレイ21から出力されたデータに対して直接誤り検出・訂正を行い、検出・訂正を行ったデータを第1バッファ23に保持する。
CPU40は、NVRAMコントローラ30を介して固定レイテンシで第1バッファ23のデータにバイトまたはワード単位でアクセス可能である。
第2アクセスモードの処理を行うために、NVRAMコントローラ30に、第2アクセス経路36に配置された第2ECC処理部33、および第2バッファ33を有する。
NVRAMコントローラ30では、NVRAMインターフェース32を介して読み出したデータに対して、第2ECC処理部33でデータの誤り検出・訂正を行い、検出・訂正を行ったデータを第2バッファ34に保持する。
そして、NVRAMコントローラ30は、NVRAM20へのアクセスと、NVRAM20からNVRAMコントローラ30へのデータ転送と、第2ECC処理部33の処理と、データが第2バッファ34に格納されるまでビジー信号xBsyを出力する。
第1ECC処理部22は、第1バッファ23のサイズのデータに対して処理を行い、書き込み時には第1ECC処理部22が生成した第1ECCを付加して、NVRAMセルアレイ21へデータを保存する。
したがって、NVRAMセルアレイ21としては、第1バッファサイズがアクセスサイズとなるが、第1バッファサイズ上に保存されたデータは、NVRAMインターフェース32を介してバイトあるいはワード単位でアクセス可能である。
またそのインターフェースは、アクセスサイクルが固定され、第1バッファ23へのアクセスではNVRAMインターフェース32には、ハンドシェーク信号の制御を必要としない。
第1バッファ23のサイズの例としては、CPU40の内部のキャッシュエントリのサイズと一致することが望ましく、一般的な値としては、32バイト、64バイトといった値になる。
第2ECC処理部33は、第2バッファ34のサイズのデータに対して処理を行い、書き込み時には第2ECC処理部33が生成した第2ECCを付加して、NVRAMセルアレイ21にデータを保存する。
したがって、第2バッファ34のサイズは、第1バッファ23のサイズの整数倍であることが望ましい。ここでいう第1バッファサイズは、第1ECCを格納する領域まで含めたサイズを指す。
第2ECC処理はNVRAMコントローラ30内の第2ECC処理部33で処理されるため、第2バッファ34に読み込まれるデータはNVRAMインターフェース32を介して、複数回の第1バッファへのアクセスによって実行される。
このとき、第1アクセスモードにおいて有効だった第1ECCは無効とされ、第1ECC格納用の領域含めたすべてのデータが、NVRAM20のメモリセルから第1バッファ23に読み込まれたあと、NVRAMインターフェース33を介して出力される。
NVRAM20から出力されたデータは、NVRAMコントローラ30内で第2ECC処理部33に入力され、ビット誤りの検出、訂正処理が完了後のデータが最終的に第2バッファ34上に格納される。
CPU40は、第2バッファ34上のデータにアクセスを行うため、NVRAMコントローラ30に第2アクセスモードで指示を出したあと、すべての処理が完了するまで待つ必要がある。このため、NVRAMコントローラ30のインターフェースに存在するハンドシェーク信号(ビジー信号xBsy)を監視する。
第2バッファ34のサイズとしては、仮想メモリシステムのページサイズに一致することが望ましく、一般的な値としては、2048バイト、4096バイトといった値になる。
NVRAMとしてECCによるデータの信頼性を改善しつつ、高速なランダムアクセス性能を提供する領域と、高速なシーケンシャルアクセス性能を提供する領域を使い分ることが可能であり、高速な不揮発性記メモリを実現することができる。
図5は、本第2の実施形態に係る不揮発性メモリの構成を示す図である。
本不揮発性メモリ10Aでは、NVRAM20AにNVRAMコントローラの機能を持たせている。
これに対応して、NVRAM20Aに、CPUインターフェース26が配置され、第2アクセスモードに必要となる第2ECC処理部27と第2バッファ28が内蔵されている。
NVRAMインターフェース(図示せず)は、第1アクセスモードではハンドシェーク信号を使用せず、第2アクセスモードではハンドシェーク信号を制御する。
第2ECC処理部27よび第2バッファ28の構成および機能は、図1の第2ECC処理部33および第2バッファ34と同様である。
第2ECC処理部27および第2バッファ28は、CPUインターフェース26と第1バッファ23との間の第2アクセス経路25に配置されている。
図6は、本第3の実施形態に係る不揮発性メモリの構成を示す図である。
本不揮発性メモリ10Bでは、NVRAM20Bにおいて、NVRAMセルアレイ21、第1ECC処理部22、第1バッファ23、第1アクセス経路24、第2アクセス経路25が複数(n個)配置されている。
そして、第1バッファと第2バッファが共用され、複数の第1バッファ23−1〜23−nが第2バッファの機能を併せ持つ。
本第3の実施形態では、各第1バッファ21−1〜21−nに接続されたNVRAMセルアレイ21−1〜21−nが同時並列的に制御されることを特徴とする。
そして、NVRAMインターフェースは、第1アクセスモードではハンドシェーク信号を使用せず、第2アクセスモードではハンドシェーク信号を制御する。
図7は、本第4の実施形態に係る不揮発性メモリの構成を示す図である。
本不揮発性メモリ10Cでは、NVRAM20CにはNVRAMセルアレイ21のみが配置され、NVRAMコントローラ30Cに第1ECC処理部37および第1バッファ38が配置されている。
第1ECC処理部37および第1バッファ38の構成および機能は、図1の第1ECC処理部22および第1バッファ23と同様である。
第1ECC処理部37は、CPUインターフェース31を通して入力された書き込みデータに第1ECCを付加して、NVRAMインターフェース32に出力する。
第1バッファ38は、CPUインターフェース31と第1ECC処理部37との間の第1アクセス経路35、並びに、NVRAMインターフェース32と第2ECC処理部33との間の第2アクセス経路36に接続されている。
また、このようなプログラムは、半導体メモリ、磁気ディスク、光ディスク、フロッピー(登録商標)ディスク等の記録媒体、この記録媒体をセットしたコンピュータによりアクセスし上記プログラムを実行するように構成可能である。
(1)ワード単位でアクセス可能で、少なくとも固定レイテンシでアクセス可能な第1アクセスモードと可変レイテンシでアクセス可能な第2アクセスモードによりアクセス可能な不揮発性メモリセルアレイを少なくとも含む不揮発性メモリセルデバイスと、
上記第1アクセスモード時に適用される第1アクセス経路と、
上記第2アクセスモード時に適用される第2アクセス経路と、
上記第1アクセス経路に配置され、上記第1アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して誤り訂正コード(ECC)を適用した誤り検出処理および訂正処理を行う第1ECC処理部と、
上記第2アクセス経路に配置され、上記第2アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ECCを適用した誤り検出処理および訂正処理を行う第2ECC処理部と
を有する不揮発性メモリ。
(2)上記第1アクセスモードにおいて、
固定時間である読み出し時のアクセスレイテンシは、上記不揮発性メモリセルアレイからの読み出し時間と、上記第1ECC処理部のビット誤り検出時間と、上記第1ECC処理部のビット訂正時間を含む
上記(1)記載の不揮発性メモリ。
(3)上記第1アクセスモードにおいて、
上記第1ECC処理部は、書き込み時には生成した第1ECCをデータに付加し、
書き込み時のアクセスレイテンシとして、上記第1ECCの生成時間と、上記不揮発性メモリセルアレイへの書き込み時間を含む
上記(1)または(2)記載の不揮発性メモリ。
(4)上記第2アクセスモードにおいて、
可変である読み出し時のアクセスレイテンシは、最小の場合として、上記不揮発性メモリセルアレイからの読み出し時間と、上記第2ECC処理部のビット誤り検出時間を含み、最大の場合として、上記不揮発性メモリセルアレイからの読み出し時間と、上記第2ECC処理部のビット誤り検出時間と、上記第2ECC処理部のビット訂正時間を含む
上記(1)から(3)のいずれか一に記載の不揮発性メモリ。
(5)上記第2アクセスモードにおいて、
上記第2ECC処理部は、書き込み時には生成した第2ECCをデータに付加し、
書き込み時のアクセスレイテンシとして、上記第2ECCの生成時間と、上記不揮発性メモリセルアレイへの書き込み時間を含む
上記(1)から(4)のいずれか一に記載の不揮発性メモリ。
(6)上記不揮発性メモリセルデバイスにアクセスするインターフェースは、
データの授受を監視するハンドシェーク信号による制御が可能で、
上記第1アクセスモード時にはハンドシェーク信号による制御を行わず、
上記第2アクセスモード時にハンドシェーク信号による制御を行う
上記(1)から(5)のいずれか一に記載の不揮発性メモリ。
(7)上記第1アクセス経路および上記第2アクセス経路に接続された第1バッファと、
上記第2アクセス経路に接続された第2バッファと、を含み、
上記第1バッファは、
上記不揮発性メモリセルアレイから読み出され上記第1アクセス経路を伝送され第1ECC処理部で処理されたデータ、上記不揮発性メモリセルアレイから読み出され上記第2アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために上記第1アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために上記第2アクセス経路を伝送され上記第2バッファおよび上記第2ECC処理部を介したデータのうちの少なくともいずれかのデータを保持し、
上記第2バッファは、
上記不揮発性メモリセルアレイから読み出され上記第2アクセス経路を伝送され、上記第1バッファに保持され、さらに上記第2ECC処理部で処理されたデータ、上記不揮発性メモリセルアレイに書き込むために上記第2アクセス経路を伝送されたデータのうちの少なくともいずれかのデータを保持する
上記(1)から(6)のいずれか一に記載の不揮発性メモリ。
(8)上記第1バッファと上記第2バッファが共用され、上記第1バッファが上記第2バッファの機能を併せ持つ
上記(7)記載の不揮発性メモリ。
(9)ホスト装置とのホストインターフェースおよび上記不揮発性メモリセルアレイとのメモリインターフェースを含み、上記不揮発性メモリセルデバイスへのアクセスを制御するメモリコントローラを有し、
上記メモリコントローラは、
上記第1アクセス経路、上記第2アクセス経路、並びに当該第2アクセス経路に配置された第2ECC処理部および上記第2バッファを含み、
上記不揮発性メモリセルデバイスは、
上記不揮発性メモリセルアレイ、上記第1アクセス経路、上記第2アクセス経路、当該第1アクセス経路に接続された上記第1ECC処理部、並びに、上記第1アクセス経路および上記第2アクセス経路に接続された上記第1バッファを含む
上記(7)記載の不揮発性メモリ。
(10)ホスト装置とのホストインターフェースを含み、
上記不揮発性メモリセルデバイスは、
上記不揮発性メモリセルアレイ、上記ホストインターフェース、上記第1アクセス経路、上記第2アクセス経路、当該第1アクセス経路に接続された上記第1ECC処理部、上記第1アクセス経路および上記第2アクセス経路に接続された上記第1バッファ、並びに当該第2アクセス経路に配置された第2ECC処理部および上記第2バッファを含む
上記(7)または(8)記載の不揮発性メモリ。
(11)ワード単位でアクセス可能で、少なくとも固定レイテンシでアクセス可能な第1アクセスモードと可変レイテンシでアクセス可能な第2アクセスモードによりアクセス可能な不揮発性メモリセルアレイと、
上記第1アクセスモード時に適用される第1アクセス経路と、
上記第2アクセスモード時に適用される第2アクセス経路と、
上記第1アクセス経路に配置され、上記第1アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード(ECC)を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに生成した第1ECCを付加第1ECC処理部と
を有する不揮発性メモリ。
(12)上記第1アクセス経路および上記第2アクセス経路に接続された第1バッファを含み、
上記第1バッファは、
上記不揮発性メモリセルアレイから読み出され上記第1アクセス経路を伝送され第1ECC処理部で処理されたデータ、上記不揮発性メモリセルアレイから読み出され上記第2アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために外部の第1アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために外部の第2アクセス経路を伝送され第2ECC処理が施された入力データのうちの少なくともいずれかのデータを保持する
上記(11)記載の不揮発性メモリ。
(13)ホスト装置とのホストインターフェースと、
ワード単位でアクセス可能な不揮発性メモリセルアレイとのメモリインターフェースと、
上記ホストインターフェースと上記メモリインターフェース間に接続され、固定レイテンシでアクセス可能な第1アクセスモード時に適用する第1アクセス経路と、
上記ホストインターフェースと上記メモリインターフェース間に接続され、可変レイテンシでアクセス可能な第2アクセスモード時に適用する第2アクセス経路と、
上記第2アクセス経路に配置され、上記第2アクセスモード時に、上記不揮発性メモリセルアレイから出力され上記メモリインターフェースを介して入力したデータに対して、誤り訂正符号(ECC)を適用した誤り検出処理および訂正処理を行い、上記ホストインターフェースを通して入力された書き込みデータに第2ECCを付加して、上記メモリインターフェースに出力する第2ECC処理部と、を少なくとも含み、
上記第1アクセス経路には、
上記第1アクセスモード時に、上記不揮発性メモリセルアレイから出力され第1ECC処理が施され、上記メモリインターフェースを介して入力したデータ、および第1アクセスモード時に、上記ホストインターフェースを通して入力された書き込みデータが伝送される
メモリコントローラ。
(14)上記第1アクセス経路に配置され、上記第1アクセスモード時に、上記不揮発性メモリセルアレイから出力され上記メモリインターフェースを介して入力したデータに対して、ECCを適用した誤り検出処理および訂正処理を行い、上記ホストインターフェースを通して入力された書き込みデータに第1ECCを付加して、上記メモリインターフェースに出力する第1ECC処理部を含む
上記(13)記載のメモリコントローラ。
(15)上記ホストインターフェースと上記第2ECC処理部との間の上記第2アクセス経路に接続された第2バッファを含む
上記(14)記載のメモリコントローラ。
(16)上記ホストインターフェースと上記第1ECC処理部との間の上記第1アクセス経路、並びに、上記メモリインターフェースと上記第2ECC処理部との間の上記第2アクセス経路に接続された第1バッファと、
上記ホストインターフェースと上記第2ECC処理部との間の上記第2アクセス経路に接続された第2バッファと、を含む
上記(14)のメモリコントローラ。
(17)ワード単位でアクセス可能で不揮発性メモリセルアレイにアクセスする際に、
固定レイテンシでアクセス可能な第1アクセスモードで第1アクセス経路を介してアクセスする第1アクセスステップと、
可変レイテンシでアクセス可能な第2アクセスモードにより第2アクセス経路を介してアクセスする第2アクセスステップと、を含み
上記第1アクセスステップにおいては、
上記第1アクセス経路に配置され第1ECC処理部で、上記第1アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード(ECC)を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第1ECC処理部で生成した第1ECCを付加し、
上記第2アクセスステップにおいては、
上記第2アクセス経路に配置され第2ECC処理部で、上記第2アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ECCを適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第2ECC処理部で生成した第2ECCを付加する
不揮発性メモリのアクセス方法。
(18)ワード単位でアクセス可能で不揮発性メモリセルアレイにアクセスする際に、
固定レイテンシでアクセス可能な第1アクセスモードで第1アクセス経路を介してアクセスする第1アクセス処理と、
可変レイテンシでアクセス可能な第2アクセスモードにより第2アクセス経路を介してアクセスする第2アクセス処理と、を含み
上記第1アクセス処理においては、
上記第1アクセス経路に配置され第1ECC処理部で、上記第1アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード(ECC)を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第1ECC処理部で生成した第1ECCを付加し、
上記第2アクセス処理においては、
上記第2アクセス経路に配置され第2ECC処理部で、上記第2アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ECCを適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第2ECC処理部で生成した第2ECCを付加する
不揮発性メモリのアクセス処理をコンピュータに実行させるプログラム。
Claims (18)
- ワード単位でアクセス可能で、少なくとも固定レイテンシでアクセス可能な第1アクセスモードと可変レイテンシでアクセス可能な第2アクセスモードによりアクセス可能な不揮発性メモリセルアレイを少なくとも含む不揮発性メモリセルデバイスと、
上記第1アクセスモード時に適用される第1アクセス経路と、
上記第2アクセスモード時に適用される第2アクセス経路と、
上記第1アクセス経路に配置され、上記第1アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して誤り訂正コード(ECC)を適用した誤り検出処理および訂正処理を行う第1ECC処理部と、
上記第2アクセス経路に配置され、上記第2アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ECCを適用した誤り検出処理および訂正処理を行う第2ECC処理部と
を有する不揮発性メモリ。 - 上記第1アクセスモードにおいて、
固定時間である読み出し時のアクセスレイテンシは、上記不揮発性メモリセルアレイからの読み出し時間と、上記第1ECC処理部のビット誤り検出時間と、上記第1ECC処理部のビット訂正時間を含む
請求項1記載の不揮発性メモリ。 - 上記第1アクセスモードにおいて、
上記第1ECC処理部は、書き込み時には生成した第1ECCをデータに付加し、
書き込み時のアクセスレイテンシとして、上記第1ECCの生成時間と、上記不揮発性メモリセルアレイへの書き込み時間を含む
請求項1記載の不揮発性メモリ。 - 上記第2アクセスモードにおいて、
可変である読み出し時のアクセスレイテンシは、最小の場合として、上記不揮発性メモリセルアレイからの読み出し時間と、上記第2ECC処理部のビット誤り検出時間を含み、最大の場合として、上記不揮発性メモリセルアレイからの読み出し時間と、上記第2ECC処理部のビット誤り検出時間と、上記第2ECC処理部のビット訂正時間を含む
請求項1記載の不揮発性メモリ。 - 上記第2アクセスモードにおいて、
上記第2ECC処理部は、書き込み時には生成した第2ECCをデータに付加し、
書き込み時のアクセスレイテンシとして、上記第2ECCの生成時間と、上記不揮発性メモリセルアレイへの書き込み時間を含む
請求項1記載の不揮発性メモリ。 - 上記不揮発性メモリセルデバイスにアクセスするインターフェースは、
データの授受を監視するハンドシェーク信号による制御が可能で、
上記第1アクセスモード時にはハンドシェーク信号による制御を行わず、
上記第2アクセスモード時にハンドシェーク信号による制御を行う
請求項1記載の不揮発性メモリ。 - 上記第1アクセス経路および上記第2アクセス経路に接続された第1バッファと、
上記第2アクセス経路に接続された第2バッファと、を含み、
上記第1バッファは、
上記不揮発性メモリセルアレイから読み出され上記第1アクセス経路を伝送され第1ECC処理部で処理されたデータ、上記不揮発性メモリセルアレイから読み出され上記第2アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために上記第1アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために上記第2アクセス経路を伝送され上記第2バッファおよび上記第2ECC処理部を介したデータのうちの少なくともいずれかのデータを保持し、
上記第2バッファは、
上記不揮発性メモリセルアレイから読み出され上記第2アクセス経路を伝送され、上記第1バッファに保持され、さらに上記第2ECC処理部で処理されたデータ、上記不揮発性メモリセルアレイに書き込むために上記第2アクセス経路を伝送されたデータのうちの少なくともいずれかのデータを保持する
請求項1から6のいずれか一に記載の不揮発性メモリ。 - 上記第1バッファと上記第2バッファが共用され、上記第1バッファが上記第2バッファの機能を併せ持つ
請求項7記載の不揮発性メモリ。 - ホスト装置とのホストインターフェースおよび上記不揮発性メモリセルアレイとのメモリインターフェースを含み、上記不揮発性メモリセルデバイスへのアクセスを制御するメモリコントローラを有し、
上記メモリコントローラは、
上記第1アクセス経路、上記第2アクセス経路、並びに当該第2アクセス経路に配置された第2ECC処理部および上記第2バッファを含み、
上記不揮発性メモリセルデバイスは、
上記不揮発性メモリセルアレイ、上記第1アクセス経路、上記第2アクセス経路、当該第1アクセス経路に接続された上記第1ECC処理部、並びに、上記第1アクセス経路および上記第2アクセス経路に接続された上記第1バッファを含む
請求項7記載の不揮発性メモリ。 - ホスト装置とのホストインターフェースを含み、
上記不揮発性メモリセルデバイスは、
上記不揮発性メモリセルアレイ、上記ホストインターフェース、上記第1アクセス経路、上記第2アクセス経路、当該第1アクセス経路に接続された上記第1ECC処理部、上記第1アクセス経路および上記第2アクセス経路に接続された上記第1バッファ、並びに当該第2アクセス経路に配置された第2ECC処理部および上記第2バッファを含む
請求項7または8記載の不揮発性メモリ。 - ワード単位でアクセス可能で、少なくとも固定レイテンシでアクセス可能な第1アクセスモードと可変レイテンシでアクセス可能な第2アクセスモードによりアクセス可能な不揮発性メモリセルアレイと、
上記第1アクセスモード時に適用される第1アクセス経路と、
上記第2アクセスモード時に適用される第2アクセス経路と、
上記第1アクセス経路に配置され、上記第1アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード(ECC)を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに生成した第1ECCを付加第1ECC処理部と
を有する不揮発性メモリ。 - 上記第1アクセス経路および上記第2アクセス経路に接続された第1バッファを含み、
上記第1バッファは、
上記不揮発性メモリセルアレイから読み出され上記第1アクセス経路を伝送され第1ECC処理部で処理されたデータ、上記不揮発性メモリセルアレイから読み出され上記第2アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために外部の第1アクセス経路を伝送されたデータ、上記不揮発性メモリセルアレイに書き込むために外部の第2アクセス経路を伝送され第2ECC処理が施された入力データのうちの少なくともいずれかのデータを保持する
請求項11記載の不揮発性メモリ。 - ホスト装置とのホストインターフェースと、
ワード単位でアクセス可能な不揮発性メモリセルアレイとのメモリインターフェースと、
上記ホストインターフェースと上記メモリインターフェース間に接続され、固定レイテンシでアクセス可能な第1アクセスモード時に適用する第1アクセス経路と、
上記ホストインターフェースと上記メモリインターフェース間に接続され、可変レイテンシでアクセス可能な第2アクセスモード時に適用する第2アクセス経路と、
上記第2アクセス経路に配置され、上記第2アクセスモード時に、上記不揮発性メモリセルアレイから出力され上記メモリインターフェースを介して入力したデータに対して、誤り訂正符号(ECC)を適用した誤り検出処理および訂正処理を行い、上記ホストインターフェースを通して入力された書き込みデータに第2ECCを付加して、上記メモリインターフェースに出力する第2ECC処理部と、を少なくとも含み、
上記第1アクセス経路には、
上記第1アクセスモード時に、上記不揮発性メモリセルアレイから出力され第1ECC処理が施され、上記メモリインターフェースを介して入力したデータ、および第1アクセスモード時に、上記ホストインターフェースを通して入力された書き込みデータが伝送される
メモリコントローラ。 - 上記第1アクセス経路に配置され、上記第1アクセスモード時に、上記不揮発性メモリセルアレイから出力され上記メモリインターフェースを介して入力したデータに対して、ECCを適用した誤り検出処理および訂正処理を行い、上記ホストインターフェースを通して入力された書き込みデータに第1ECCを付加して、上記メモリインターフェースに出力する第1ECC処理部を含む
請求項13記載のメモリコントローラ。 - 上記ホストインターフェースと上記第2ECC処理部との間の上記第2アクセス経路に接続された第2バッファを含む
請求項13記載のメモリコントローラ。 - 上記ホストインターフェースと上記第1ECC処理部との間の上記第1アクセス経路、並びに、上記メモリインターフェースと上記第2ECC処理部との間の上記第2アクセス経路に接続された第1バッファと、
上記ホストインターフェースと上記第2ECC処理部との間の上記第2アクセス経路に接続された第2バッファと、を含む
請求項14記載のメモリコントローラ。 - ワード単位でアクセス可能で不揮発性メモリセルアレイにアクセスする際に、
固定レイテンシでアクセス可能な第1アクセスモードで第1アクセス経路を介してアクセスする第1アクセスステップと、
可変レイテンシでアクセス可能な第2アクセスモードにより第2アクセス経路を介してアクセスする第2アクセスステップと、を含み
上記第1アクセスステップにおいては、
上記第1アクセス経路に配置され第1ECC処理部で、上記第1アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード(ECC)を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第1ECC処理部で生成した第1ECCを付加し、
上記第2アクセスステップにおいては、
上記第2アクセス経路に配置され第2ECC処理部で、上記第2アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ECCを適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第2ECC処理部で生成した第2ECCを付加する
不揮発性メモリのアクセス方法。 - ワード単位でアクセス可能で不揮発性メモリセルアレイにアクセスする際に、
固定レイテンシでアクセス可能な第1アクセスモードで第1アクセス経路を介してアクセスする第1アクセス処理と、
可変レイテンシでアクセス可能な第2アクセスモードにより第2アクセス経路を介してアクセスする第2アクセス処理と、を含み
上記第1アクセス処理においては、
上記第1アクセス経路に配置され第1ECC処理部で、上記第1アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、誤り訂正コード(ECC)を適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第1ECC処理部で生成した第1ECCを付加し、
上記第2アクセス処理においては、
上記第2アクセス経路に配置され第2ECC処理部で、上記第2アクセスモード時に上記不揮発性メモリセルアレイから出力されたデータに対して、ECCを適用した誤り検出処理および訂正処理を行い、上記不揮発性メモリセルアレイへの書き込みデータに上記第2ECC処理部で生成した第2ECCを付加する
不揮発性メモリのアクセス処理をコンピュータに実行させるプログラム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011125079A JP2012252558A (ja) | 2011-06-03 | 2011-06-03 | 不揮発性メモリ、メモリコントローラ、不揮発性メモリのアクセス方法、およびプログラム |
US13/474,280 US8862963B2 (en) | 2011-06-03 | 2012-05-17 | Nonvolatile memory, memory controller, nonvolatile memory accessing method, and program |
EP20120169202 EP2530593B1 (en) | 2011-06-03 | 2012-05-24 | Nonvolatile memory, memory controller, nonvolatile memory accessing method, and program |
CN201210180219.5A CN102810336B (zh) | 2011-06-03 | 2012-06-01 | 非易失性存储器、存储器控制器及其访问方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011125079A JP2012252558A (ja) | 2011-06-03 | 2011-06-03 | 不揮発性メモリ、メモリコントローラ、不揮発性メモリのアクセス方法、およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012252558A true JP2012252558A (ja) | 2012-12-20 |
Family
ID=46229200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011125079A Pending JP2012252558A (ja) | 2011-06-03 | 2011-06-03 | 不揮発性メモリ、メモリコントローラ、不揮発性メモリのアクセス方法、およびプログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US8862963B2 (ja) |
EP (1) | EP2530593B1 (ja) |
JP (1) | JP2012252558A (ja) |
CN (1) | CN102810336B (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8438429B2 (en) * | 2010-12-01 | 2013-05-07 | Hitachi, Ltd. | Storage control apparatus and storage control method |
JP2013242694A (ja) * | 2012-05-21 | 2013-12-05 | Renesas Mobile Corp | 半導体装置、電子装置、電子システム及び電子装置の制御方法 |
US9141296B2 (en) | 2012-05-31 | 2015-09-22 | Sandisk Technologies Inc. | Method and host device for packing and dispatching read and write commands |
US20130326169A1 (en) * | 2012-05-31 | 2013-12-05 | Amir Shaharabany | Method and Storage Device for Detection of Streaming Data Based on Logged Read/Write Transactions |
US8910017B2 (en) * | 2012-07-02 | 2014-12-09 | Sandisk Technologies Inc. | Flash memory with random partition |
US9298549B2 (en) * | 2013-12-11 | 2016-03-29 | International Business Machines Corporation | Read buffer architecture supporting integrated XOR-reconstructed and read-retry for non-volatile random access memory (NVRAM) systems |
TWI550615B (zh) * | 2014-08-28 | 2016-09-21 | 群聯電子股份有限公司 | 資料存取方法、記憶體儲存裝置及記憶體控制電路單元 |
US9519442B2 (en) * | 2014-10-27 | 2016-12-13 | Aeroflex Colorado Springs Inc. | Method for concurrent system management and error detection and correction requests in integrated circuits through location aware avoidance logic |
US10108546B2 (en) * | 2014-12-30 | 2018-10-23 | Sandisk Technologies Llc | Method and system for using non-volatile memory as a replacement for volatile memory |
KR20170057902A (ko) * | 2015-11-17 | 2017-05-26 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR102407437B1 (ko) | 2015-12-30 | 2022-06-10 | 삼성전자주식회사 | 불휘발성 메모리 모듈을 포함하는 메모리 시스템 및 전자 장치 |
US10410738B2 (en) * | 2016-03-15 | 2019-09-10 | Toshiba Memory Corporation | Memory system and control method |
DE102016107285B4 (de) * | 2016-04-20 | 2019-04-25 | Infineon Technologies Ag | Verfahren zur verwendung einer speichervorrichtung, speichervorrichtung und speichervorrichtungsanordnung |
KR20180109142A (ko) * | 2017-03-27 | 2018-10-08 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
US11747985B2 (en) | 2019-12-06 | 2023-09-05 | SK Hynix Inc. | Memory system, integrated circuit system, and operation method of memory system |
US11322219B2 (en) | 2019-12-06 | 2022-05-03 | SK Hynix Inc. | Memory system, integrated circuit system, and operation method of memory system |
US11990201B2 (en) | 2021-01-14 | 2024-05-21 | Changxin Memory Technologies, Inc. | Storage system |
CN114765054B (zh) * | 2021-01-14 | 2024-05-14 | 长鑫存储技术有限公司 | 纠错*** |
EP4071762B1 (en) | 2021-01-14 | 2023-07-05 | Changxin Memory Technologies, Inc. | Error correction system |
JP2023512892A (ja) | 2021-01-14 | 2023-03-30 | チャンシン メモリー テクノロジーズ インコーポレイテッド | 比較システム |
CN114765056B (zh) | 2021-01-14 | 2024-07-12 | 长鑫存储技术有限公司 | 存储*** |
US11599417B2 (en) | 2021-01-14 | 2023-03-07 | Changxin Memory Technologies, Inc. | Error correction system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998001806A1 (fr) * | 1996-07-03 | 1998-01-15 | Hitachi, Ltd. | Processeur d'informations |
JP2011081776A (ja) * | 2009-09-11 | 2011-04-21 | Sony Corp | 不揮発性メモリ装置、メモリコントローラ、およびメモリシステム |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040098549A1 (en) * | 2001-10-04 | 2004-05-20 | Dorst Jeffrey R. | Apparatus and methods for programmable interfaces in memory controllers |
US7266587B2 (en) * | 2002-05-15 | 2007-09-04 | Broadcom Corporation | System having interfaces, switch, and memory bridge for CC-NUMA operation |
TWI227395B (en) * | 2003-06-02 | 2005-02-01 | Genesys Logic Inc | Method for parallel processing of memory data and error correction code and related device thereof |
US20060026375A1 (en) * | 2004-07-30 | 2006-02-02 | Christenson Bruce A | Memory controller transaction scheduling algorithm using variable and uniform latency |
US7624209B1 (en) * | 2004-09-15 | 2009-11-24 | Xilinx, Inc. | Method of and circuit for enabling variable latency data transfers |
US7590796B2 (en) * | 2006-07-31 | 2009-09-15 | Metaram, Inc. | System and method for power management in memory systems |
US7404057B2 (en) * | 2005-06-24 | 2008-07-22 | Dell Products L.P. | System and method for enhancing read performance of a memory storage system including fully buffered dual in-line memory modules |
US20070005922A1 (en) * | 2005-06-30 | 2007-01-04 | Swaminathan Muthukumar P | Fully buffered DIMM variable read latency |
US7571297B2 (en) * | 2005-12-30 | 2009-08-04 | Intel Corporation | Data invalid signal for non-deterministic latency in a memory system |
JP2007310927A (ja) | 2006-05-16 | 2007-11-29 | Matsushita Electric Ind Co Ltd | 不揮発性メモリ、メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム |
US20080028135A1 (en) * | 2006-07-31 | 2008-01-31 | Metaram, Inc. | Multiple-component memory interface system and method |
US7573744B2 (en) * | 2006-09-29 | 2009-08-11 | Kabushiki Kaisha Toshiba | Semiconductor memory device having different capacity areas |
JP2008084499A (ja) | 2006-09-29 | 2008-04-10 | Toshiba Corp | 半導体記憶装置 |
JP4349532B2 (ja) * | 2007-04-11 | 2009-10-21 | エヌイーシーコンピュータテクノ株式会社 | メモリ制御装置、メモリ制御方法、情報処理システム、そのプログラム及び記憶媒体 |
WO2008142683A2 (en) * | 2007-05-21 | 2008-11-27 | Ramot At Tel Aviv University Ltd. | Memory-efficient ldpc decoding |
WO2009021176A2 (en) * | 2007-08-08 | 2009-02-12 | Sandisk Corporation | Urgency and time window manipulation to accommodate unpredictable memory operations |
US8352806B2 (en) * | 2008-01-31 | 2013-01-08 | International Business Machines Corporation | System to improve memory failure management and associated methods |
US8181094B2 (en) * | 2008-01-31 | 2012-05-15 | International Business Machines Corporation | System to improve error correction using variable latency and associated methods |
US20090282308A1 (en) * | 2008-05-09 | 2009-11-12 | Jan Gutsche | Memory Cell Arrangement and Method for Reading State Information From a Memory Cell Bypassing an Error Detection Circuit |
US20090327535A1 (en) * | 2008-06-30 | 2009-12-31 | Liu Tz-Yi | Adjustable read latency for memory device in page-mode access |
US7929356B2 (en) * | 2008-09-05 | 2011-04-19 | Atmel Corporation | Method and system to access memory |
US8407427B2 (en) * | 2008-10-29 | 2013-03-26 | Silicon Image, Inc. | Method and system for improving serial port memory communication latency and reliability |
US8341311B1 (en) * | 2008-11-18 | 2012-12-25 | Entorian Technologies, Inc | System and method for reduced latency data transfers from flash memory to host by utilizing concurrent transfers into RAM buffer memory and FIFO host interface |
US8438453B2 (en) * | 2009-05-06 | 2013-05-07 | Apple Inc. | Low latency read operation for managed non-volatile memory |
JP2011108306A (ja) * | 2009-11-16 | 2011-06-02 | Sony Corp | 不揮発性メモリおよびメモリシステム |
JP2011125079A (ja) | 2009-12-08 | 2011-06-23 | Mitsuba Corp | ブラシレスモータの駆動装置、及びブラシレスモータの始動方法 |
US8291126B2 (en) * | 2010-03-23 | 2012-10-16 | Spansion Llc | Variable read latency on a serial memory bus |
US8589655B2 (en) * | 2010-09-15 | 2013-11-19 | Pure Storage, Inc. | Scheduling of I/O in an SSD environment |
US20120084507A1 (en) * | 2010-10-01 | 2012-04-05 | John Colgrove | Multi-level protection with intra-device protection in a raid array based storage system |
-
2011
- 2011-06-03 JP JP2011125079A patent/JP2012252558A/ja active Pending
-
2012
- 2012-05-17 US US13/474,280 patent/US8862963B2/en active Active
- 2012-05-24 EP EP20120169202 patent/EP2530593B1/en active Active
- 2012-06-01 CN CN201210180219.5A patent/CN102810336B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998001806A1 (fr) * | 1996-07-03 | 1998-01-15 | Hitachi, Ltd. | Processeur d'informations |
JP2011081776A (ja) * | 2009-09-11 | 2011-04-21 | Sony Corp | 不揮発性メモリ装置、メモリコントローラ、およびメモリシステム |
Also Published As
Publication number | Publication date |
---|---|
CN102810336A (zh) | 2012-12-05 |
US8862963B2 (en) | 2014-10-14 |
CN102810336B (zh) | 2017-04-12 |
EP2530593A2 (en) | 2012-12-05 |
EP2530593B1 (en) | 2015-01-07 |
US20120311408A1 (en) | 2012-12-06 |
EP2530593A3 (en) | 2013-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2012252558A (ja) | 不揮発性メモリ、メモリコントローラ、不揮発性メモリのアクセス方法、およびプログラム | |
US8386699B2 (en) | Method for giving program commands to flash memory for writing data according to a sequence, and controller and storage system using the same | |
US9348521B2 (en) | Semiconductor storage device and method of throttling performance of the same | |
KR101581857B1 (ko) | 불휘발성 메모리 시스템 및 그것의 인터리브 유닛 구성 방법 | |
JP5368735B2 (ja) | ソリッドステートディスクコントローラ及びソリッドステートディスクコントローラのデータ処理方法 | |
JP5464528B2 (ja) | 同時読み出し及び書き込みメモリ動作を実行する方法及び装置 | |
TWI525430B (zh) | 快取記憶體裝置以及該裝置的資料處理方法 | |
JP5914148B2 (ja) | Ssd(ソリッドステートドライブ)装置 | |
JP2007115390A (ja) | メモリ機器、データを転送する方法、およびデータを格納する方法 | |
US9606928B2 (en) | Memory system | |
JP4966404B2 (ja) | メモリ制御装置、記憶装置、及びメモリ制御方法 | |
US11314669B2 (en) | Deterministic operation of storage class memory | |
KR20160144560A (ko) | 호스트에 의해 접근되는 오류 정보를 생성하는 불휘발성 메모리 모듈, 스토리지 장치, 및 전자 장치 | |
CN114546254A (zh) | 写入数据的方法和非易失性存储器装置 | |
KR101861647B1 (ko) | 메모리 시스템 및 그 리프레시 제어 방법 | |
KR20170021557A (ko) | 다수의 맵핑 단위를 이용하는 불휘발성 메모리 시스템 및 그 동작방법 | |
US11710532B2 (en) | Safety and correctness data reading in non-volatile memory devices | |
US20230251792A1 (en) | Memory Device Based Accelerated Deep-Learning System | |
JP2007172129A (ja) | 不揮発性メモリアクセス制御装置および不揮発性メモリ制御システム | |
JP2011118922A (ja) | 半導体記憶装置の読出し・書き込み方法 | |
EP4375839A1 (en) | Method of operating storage device using program suspension control and storage device performing the same | |
JP2016154031A (ja) | Ssd(ソリッドステートドライブ)装置 | |
JP2024528636A (ja) | ホストデバイスからのドアベルトランザクションのコマンドをグループ化するためのデータ記憶デバイス、システム、及び関連する方法 | |
KR102473197B1 (ko) | 읽기 데이터를 전송 단위로 전송하는 불휘발성 메모리 모듈, 스토리지 장치, 및 전자 장치 | |
KR20220134885A (ko) | 스토리지 시스템 및 그 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140514 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141009 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141202 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150126 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20150609 |