JP2013101455A - 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 - Google Patents
記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 Download PDFInfo
- Publication number
- JP2013101455A JP2013101455A JP2011244266A JP2011244266A JP2013101455A JP 2013101455 A JP2013101455 A JP 2013101455A JP 2011244266 A JP2011244266 A JP 2011244266A JP 2011244266 A JP2011244266 A JP 2011244266A JP 2013101455 A JP2013101455 A JP 2013101455A
- Authority
- JP
- Japan
- Prior art keywords
- error correction
- address
- memory
- data strings
- correction code
- 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
Images
Abstract
【解決手段】記憶制御装置は、エラー訂正コード付与規則保持部とエラー訂正部とを備える。エラー訂正コード付与規則保持部は、メモリ内の一群のデータ列に対するエラー訂正コードの付与規則を一群のデータ列のアドレスごとに対応付けて保持する。エラー訂正部は、メモリに対してアクセスが発生した場合にそのアクセスアドレスに対応付けられた付与規則に従ってメモリ内の一群のデータ列についてエラー訂正を行う。
【選択図】図1
Description
1.第1の実施の形態(論理ページアドレス毎にECCタイプを設定する例)
2.第2の実施の形態(物理ページアドレス毎にECCタイプを設定する例)
3.変形例
[情報処理システムの構成]
図1は、本技術の実施の形態における情報処理システムの一構成例を示す図である。この情報処理システムは、ホストコンピュータ100と、記憶制御装置200と、メモリ300とを備えている。ホストコンピュータ100は、この情報処理システムにおける各処理を実行する装置である。メモリ300は、ホストコンピュータ100の処理に必要なデータを記憶するメモリである。このメモリ300としては、不揮発性メモリを想定する。このメモリ300は、データとともにエラー訂正コード(ECC)を記憶することにより、データ保持特性の改善を図る。記憶制御装置200は、ホストコンピュータ100とメモリ300の間に接続され、ホストコンピュータ100からのリクエストに応じてメモリ300の制御を行う装置である。なお、エラー訂正コードはエラー(誤り)検出の機能も包含しているため、誤り検出符号、エラー検出符号、エラー検出コードなどと呼称する場合もある。
図4は、本技術の実施の形態のメモリ300におけるページ構造の一例を示す図である。同図(a)に示すように、この実施の形態ではメモリセル330に記憶される物理ページのサイズを272バイトとしている。そして、この物理ページに256バイトのデータと16バイトのエラー訂正コード(パリティ)を記憶する場合、エラー訂正コードの付与規則として以下の2つのタイプを想定する。
図5は、本技術の実施の形態における空きページテーブル261の一構成例を示す図である。この空きページテーブル261は、物理ページアドレスごとに対応する物理ページの使用状況を保持している。この空きページテーブル261のそれぞれのエントリ(行)は、「物理ページアドレス」と「使用状況」の二つの要素により構成されている。
図8は、本技術の第1の実施の形態における記憶制御装置200の機能構成例を示す図である。ここでは、上述のアドレス変換テーブル262およびECCタイプテーブル264を示している。また、ECC処理部270の一部として、ECC生成部271とエラー訂正部272とを示している。
図9は、本技術の実施の形態におけるライトデータと論理ページの関係を説明するための図である。この例では、ライトコマンドの開始論理アドレスが"0x0000−0000−00F0"であり、ライトサイズが512バイトである場合を示している。すなわち、このライトコマンドは、論理ページ"0x0000−0000"から"0x0000−0002"の3つの論理ページに跨って書込みを行う。
図11は、本技術の実施の形態における情報処理システムの読出し動作例を示す流れ図である。まず、ホストコンピュータ100から指示されたリードコマンド(リードリクエスト)はホストインターフェース210を介して記憶制御装置200に入力される。リードコマンドは「リードアドレス」および「リードデータサイズ」から構成されている。「リードアドレス」は、読出し対象データの論理アドレスである。
[記憶制御装置の機能]
図14は、本技術の第2の実施の形態における記憶制御装置200の機能構成例を示す図である。この第2の実施の形態は、ECCタイプテーブル264に供給されるアドレスが物理アドレスである点において異なっており、それ以外の点については第1の実施の形態と同様の機能構成を備えている。
[部分書換えの際のエラー訂正コード再計算の省略]
ECCタイプがタイプAのページに対する部分書換えの場合、書換えの影響を受けないサブページについては、本来、エラー訂正コードを再計算する必要がない。そこで、この変形例では、このような部分書換えにおいて、書換えの影響を受けないサブページについては、ステップS952においてエラー訂正コードの再計算を行わない。この場合、ステップS943において読み出され、エラー訂正処理が施された物理ページイメージ領域267に保存されているデータをそのまま利用することができる。ただし、新規割当てではない既存の論理ページの部分書換えであり、かつ、ECCタイプに変更がないことが条件である。
処理中の論理ページのECCタイプがいずれもタイプAである場合、読出し対象となるサブページのみをエラー訂正して、それ以外のサブページについてはエラー訂正を省略してもよい。具体的には、ステップS917においてエラー訂正処理を行う際に、ECCタイプとしてタイプAが指定されている場合、以下の処理を各サブページに対して行う。すなわち、各サブページのエラー訂正処理を行う前に、各サブページに対する転送が要求されているか否かを判断し、ページ内読出し範囲にそのサブページが含まれない場合にはそのサブページに対するエラー訂正処理をスキップする。一方、ページ内読出し範囲に各サブページが含まれる場合にはそのサブページに対するエラー訂正処理を行う。
処理中の論理ページのECCタイプがいずれもタイプAである場合、エラー訂正処理が終わったサブページから順次、ホストコンピュータ100に転送するようにしてもよい。すなわち、上述の実施の形態では、エラー訂正処理(ステップS917)、データ抜き出し(ステップS918)、ホストコンピュータ100への転送(ステップS921)を論理ページ単位で逐次に行っているが、これらをサブページ単位で行ってもよい。これにより処理の高速化を図ることができる。
(1)メモリ内の一群のデータ列に対するエラー訂正コードの付与規則を前記一群のデータ列のアドレスごとに対応付けて保持するエラー訂正コード付与規則保持部と、
前記メモリに対してアクセスが発生した場合にそのアクセスアドレスに対応付けられた前記付与規則に従って前記メモリ内の前記一群のデータ列についてエラー訂正を行うエラー訂正部と
を具備する記憶制御装置。
(2)前記付与規則は、前記一群のデータ列の全体から前記エラー訂正コードが生成される場合と、前記一群のデータ列を構成する複数の部分データ列の各々から独立して前記エラー訂正コードが生成される場合の何れであるかを定義する
前記(1)に記載の記憶制御装置。
(3)前記エラー訂正部は、前記一群のデータ列を構成する複数の部分データ列の各々から独立して前記エラー訂正コードが生成される旨が前記アクセスアドレスに対応付けられた前記付与規則において定義されている場合、前記複数の部分データ列のうち前記アクセスに係る部分データ列のみについてエラー訂正を行う
前記(1)または(2)に記載の記憶制御装置。
(4)前記メモリに対してライトアクセスが発生した場合、前記ライトアクセスにおいて指示された前記付与規則に従って前記ライトアクセスに係るライトデータに対するエラー訂正コードを生成するエラー訂正コード生成部をさらに具備する前記(1)から(3)のいずれかに記載の記憶制御装置。
(5)前記エラー訂正コード生成部は、前記一群のデータ列を構成する複数の部分データ列の各々から独立して前記エラー訂正コードが生成される旨が前記ライトアドレスに対応付けられた前記付与規則において定義されている場合、前記複数の部分データ列のうち前記ライトアクセスに係る部分データ列のみについてエラー訂正コードを生成する
前記(4)に記載の記憶制御装置。
(6)前記エラー訂正コード付与規則保持部は、リクエストを発行するホストコンピュータからの指示に従って前記付与規則を保持する前記(1)から(5)のいずれかに記載の記憶制御装置。
(7)前記エラー訂正コード付与規則保持部は、前記メモリに対してライトアクセスが発生した場合、前記ライトアクセスにおいて指示された前記付与規則を前記ライトアクセスに係るライトアドレスに対応付けて保持する前記(1)から(6)のいずれかに記載の記憶制御装置。
(8)前記メモリに対するアクセスアドレスが論理アドレスである場合に前記論理アドレスを物理アドレスに変換して前記メモリに出力するアドレス変換部をさらに具備し、
前記エラー訂正コード付与規則保持部は、前記付与規則を前記一群のデータ列の前記論理アドレスごとに対応付けて保持し、
前記エラー訂正部は、前記論理アドレスに対応付けられた前記付与規則に従って前記メモリ内の前記一群のデータ列についてエラー訂正を行う
前記(1)から(7)のいずれかに記載の記憶制御装置。
(9)前記メモリに対するアクセスアドレスが論理アドレスである場合に前記論理アドレスを物理アドレスに変換して前記メモリに出力するアドレス変換部をさらに具備し、
前記エラー訂正コード付与規則保持部は、前記付与規則を前記一群のデータ列の前記物理アドレスごとに対応付けて保持し、
前記エラー訂正部は、前記物理アドレスに対応付けられた前記付与規則に従って前記メモリ内の前記一群のデータ列についてエラー訂正を行う
前記(1)から(8)のいずれかに記載の記憶制御装置。
(10)データ領域において一群のデータ列に対するエラー訂正コードを前記一群のデータ列とともに記憶するメモリと、
前記一群のデータ列に対する前記エラー訂正コードの付与規則を前記一群のデータ列のアドレスごとに対応付けて保持するエラー訂正コード付与規則保持部と、
前記メモリに対してアクセスが発生した場合にそのアクセスアドレスに対応付けられた前記付与規則に従って前記メモリ内の前記一群のデータ列についてエラー訂正を行うエラー訂正部と
を具備する記憶装置。
(11)前記付与規則は、前記一群のデータ列の全体から前記エラー訂正コードが生成される場合と、前記一群のデータ列を構成する複数の部分データ列の各々から独立して前記エラー訂正コードが生成される場合の何れであるかを定義し、
前記メモリは、前記一群のデータ列を構成する複数の部分データ列の各々から独立して前記エラー訂正コードが生成される旨を前記付与規則が定義する場合、前記複数の部分データ列の各々に連続する位置に前記エラー訂正コードを記憶する
前記(10)に記載の記憶装置。
(12)前記メモリは不揮発性メモリである前記(10)または(11)に記載の記憶装置。
(13)一群のデータ列に対してエラー訂正コードを記憶するメモリと、
前記一群のデータ列に対する前記エラー訂正コードの付与規則を前記一群のデータ列のアドレスごとに対応付けて保持するエラー訂正コード付与規則保持部と、
前記メモリに対してアクセスが発生した場合にそのアクセスアドレスに対応付けられた前記付与規則に従って前記メモリ内の前記一群のデータ列についてエラー訂正を行うエラー訂正部と、
前記メモリに対して前記データ領域のリードまたはライトを要求するリクエストを発行するホストコンピュータと
を具備する情報処理システム。
(14)メモリ内の一群のデータ列に対するエラー訂正コードの付与規則を前記一群のデータ列のアドレスごとに対応付けて定義するエラー訂正コード付与規則定義手順と、
前記メモリに対してアクセスが発生した場合にそのアクセスアドレスに対応付けられた前記付与規則に従って前記メモリ内の前記一群のデータ列についてエラー訂正を行うエラー訂正手順と
を具備する記憶制御方法。
200 記憶制御装置
210 ホストインターフェース
230 メモリインターフェース
240 制御部
261 空きページテーブル
262 アドレス変換テーブル
263 データバッファ
264 ECCタイプテーブル
266 論理ページイメージ領域
267 物理ページイメージ領域
270 ECC処理部
271 ECC生成部
272 エラー訂正部
290 バス
300 メモリ
310 制御インターフェース
320 アドレスデコーダ
330 メモリセル
340 ページバッファ
380 制御部
390 バス
Claims (14)
- メモリ内の一群のデータ列に対するエラー訂正コードの付与規則を前記一群のデータ列のアドレスごとに対応付けて保持するエラー訂正コード付与規則保持部と、
前記メモリに対してアクセスが発生した場合にそのアクセスアドレスに対応付けられた前記付与規則に従って前記メモリ内の前記一群のデータ列についてエラー訂正を行うエラー訂正部と
を具備する記憶制御装置。 - 前記付与規則は、前記一群のデータ列の全体から前記エラー訂正コードが生成される場合と、前記一群のデータ列を構成する複数の部分データ列の各々から独立して前記エラー訂正コードが生成される場合の何れであるかを定義する
請求項1記載の記憶制御装置。 - 前記エラー訂正部は、前記一群のデータ列を構成する複数の部分データ列の各々から独立して前記エラー訂正コードが生成される旨が前記アクセスアドレスに対応付けられた前記付与規則において定義されている場合、前記複数の部分データ列のうち前記アクセスに係る部分データ列のみについてエラー訂正を行う
請求項1記載の記憶制御装置。 - 前記メモリに対してライトアクセスが発生した場合、前記ライトアクセスにおいて指示された前記付与規則に従って前記ライトアクセスに係るライトデータに対するエラー訂正コードを生成するエラー訂正コード生成部をさらに具備する請求項1記載の記憶制御装置。
- 前記エラー訂正コード生成部は、前記一群のデータ列を構成する複数の部分データ列の各々から独立して前記エラー訂正コードが生成される旨が前記ライトアドレスに対応付けられた前記付与規則において定義されている場合、前記複数の部分データ列のうち前記ライトアクセスに係る部分データ列のみについてエラー訂正コードを生成する
請求項4記載の記憶制御装置。 - 前記エラー訂正コード付与規則保持部は、リクエストを発行するホストコンピュータからの指示に従って前記付与規則を保持する請求項1記載の記憶制御装置。
- 前記エラー訂正コード付与規則保持部は、前記メモリに対してライトアクセスが発生した場合、前記ライトアクセスにおいて指示された前記付与規則を前記ライトアクセスに係るライトアドレスに対応付けて保持する請求項1記載の記憶制御装置。
- 前記メモリに対するアクセスアドレスが論理アドレスである場合に前記論理アドレスを物理アドレスに変換して前記メモリに出力するアドレス変換部をさらに具備し、
前記エラー訂正コード付与規則保持部は、前記付与規則を前記一群のデータ列の前記論理アドレスごとに対応付けて保持し、
前記エラー訂正部は、前記論理アドレスに対応付けられた前記付与規則に従って前記メモリ内の前記一群のデータ列についてエラー訂正を行う
請求項1記載の記憶制御装置。 - 前記メモリに対するアクセスアドレスが論理アドレスである場合に前記論理アドレスを物理アドレスに変換して前記メモリに出力するアドレス変換部をさらに具備し、
前記エラー訂正コード付与規則保持部は、前記付与規則を前記一群のデータ列の前記物理アドレスごとに対応付けて保持し、
前記エラー訂正部は、前記物理アドレスに対応付けられた前記付与規則に従って前記メモリ内の前記一群のデータ列についてエラー訂正を行う
請求項1記載の記憶制御装置。 - データ領域において一群のデータ列に対するエラー訂正コードを前記一群のデータ列とともに記憶するメモリと、
前記一群のデータ列に対する前記エラー訂正コードの付与規則を前記一群のデータ列のアドレスごとに対応付けて保持するエラー訂正コード付与規則保持部と、
前記メモリに対してアクセスが発生した場合にそのアクセスアドレスに対応付けられた前記付与規則に従って前記メモリ内の前記一群のデータ列についてエラー訂正を行うエラー訂正部と
を具備する記憶装置。 - 前記付与規則は、前記一群のデータ列の全体から前記エラー訂正コードが生成される場合と、前記一群のデータ列を構成する複数の部分データ列の各々から独立して前記エラー訂正コードが生成される場合の何れであるかを定義し、
前記メモリは、前記一群のデータ列を構成する複数の部分データ列の各々から独立して前記エラー訂正コードが生成される旨を前記付与規則が定義する場合、前記複数の部分データ列の各々に連続する位置に前記エラー訂正コードを記憶する
請求項10記載の記憶装置。 - 前記メモリは不揮発性メモリである請求項10記載の記憶装置。
- 一群のデータ列に対してエラー訂正コードを記憶するメモリと、
前記一群のデータ列に対する前記エラー訂正コードの付与規則を前記一群のデータ列のアドレスごとに対応付けて保持するエラー訂正コード付与規則保持部と、
前記メモリに対してアクセスが発生した場合にそのアクセスアドレスに対応付けられた前記付与規則に従って前記メモリ内の前記一群のデータ列についてエラー訂正を行うエラー訂正部と、
前記メモリに対して前記データ領域のリードまたはライトを要求するリクエストを発行するホストコンピュータと
を具備する情報処理システム。 - メモリ内の一群のデータ列に対するエラー訂正コードの付与規則を前記一群のデータ列のアドレスごとに対応付けて定義するエラー訂正コード付与規則定義手順と、
前記メモリに対してアクセスが発生した場合にそのアクセスアドレスに対応付けられた前記付与規則に従って前記メモリ内の前記一群のデータ列についてエラー訂正を行うエラー訂正手順と
を具備する記憶制御方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011244266A JP2013101455A (ja) | 2011-11-08 | 2011-11-08 | 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 |
US13/666,738 US20130117632A1 (en) | 2011-11-08 | 2012-11-01 | Storage control apparatus |
CN201210441123.XA CN103197985B (zh) | 2011-11-08 | 2012-11-01 | 存储控制装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011244266A JP2013101455A (ja) | 2011-11-08 | 2011-11-08 | 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013101455A true JP2013101455A (ja) | 2013-05-23 |
Family
ID=48622031
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011244266A Pending JP2013101455A (ja) | 2011-11-08 | 2011-11-08 | 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013101455A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015029230A1 (ja) * | 2013-08-30 | 2015-03-05 | 株式会社日立製作所 | 記憶装置及びデータ制御方法 |
US9252810B2 (en) | 2014-02-20 | 2016-02-02 | Kabushiki Kaisha Toshiba | Memory system and method of controlling memory system |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110271164A1 (en) * | 2008-12-30 | 2011-11-03 | Indilinx Co., Ltd. | Memory controller and memory management method |
-
2011
- 2011-11-08 JP JP2011244266A patent/JP2013101455A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110271164A1 (en) * | 2008-12-30 | 2011-11-03 | Indilinx Co., Ltd. | Memory controller and memory management method |
JP2012514266A (ja) * | 2008-12-30 | 2012-06-21 | インディリンクス カンパニー リミテッド | メモリコントローラおよびメモリ管理方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015029230A1 (ja) * | 2013-08-30 | 2015-03-05 | 株式会社日立製作所 | 記憶装置及びデータ制御方法 |
JPWO2015029230A1 (ja) * | 2013-08-30 | 2017-03-02 | 株式会社日立製作所 | 記憶装置及びデータ制御方法 |
US10102060B2 (en) | 2013-08-30 | 2018-10-16 | Hitachi, Ltd. | Storage apparatus and data control method of storing data with an error correction code |
US9252810B2 (en) | 2014-02-20 | 2016-02-02 | Kabushiki Kaisha Toshiba | Memory system and method of controlling memory system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI527037B (zh) | 資料儲存方法、記憶體控制電路單元與記憶體儲存裝置 | |
US10437737B2 (en) | Data storage device | |
JP5319723B2 (ja) | メモリシステムおよびプログラム | |
US8996791B2 (en) | Flash memory device, memory control device, memory control method, and storage system | |
JP6102632B2 (ja) | 記憶制御装置、ホストコンピュータ、情報処理システムおよび記憶制御装置の制御方法 | |
JP5768654B2 (ja) | 記憶制御装置、記憶装置、情報処理システム、および、記憶制御方法 | |
JP2006318366A (ja) | メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法 | |
JP5929456B2 (ja) | 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 | |
JP6034183B2 (ja) | 半導体記憶装置 | |
TWI591643B (zh) | 資料保護方法、記憶體控制電路單元與記憶體儲存裝置 | |
US9519541B2 (en) | Data storage device and data checking and correction for volatile memory | |
JP2016524770A (ja) | データをフラッシュメモリ装置に書き込む方法、フラッシュメモリ装置及び記憶システム | |
TW201606503A (zh) | 資料管理方法、記憶體控制電路單元以及記憶體儲存裝置 | |
US20160266827A1 (en) | Memory controller, memory device, data transfer system, data transfer method, and computer program product | |
JP4751037B2 (ja) | メモリカード | |
KR20100063495A (ko) | 플래시 메모리를 포함하는 반도체 장치 및 이의 어드레스 사상 방법 | |
JP2013171343A (ja) | ストレージデバイス | |
JP6107625B2 (ja) | 記憶制御装置、記憶装置、情報処理システムおよびその記憶制御方法 | |
JP2013101455A (ja) | 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 | |
WO2016035451A1 (ja) | 記憶制御装置、記憶装置、および、記憶制御方法 | |
TWI571881B (zh) | 有效資料合併方法、記憶體控制器與記憶體儲存裝置 | |
JP4513786B2 (ja) | メモリコントローラ、メモリシステム及びメモリ制御方法 | |
JP5845876B2 (ja) | 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 | |
WO2017168905A1 (ja) | メモリ制御装置、記憶装置および情報処理システム | |
WO2016056290A1 (ja) | メモリコントローラ、メモリシステム、記憶装置、情報処理システムおよび記憶制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20141015 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150428 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150430 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150616 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150714 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150831 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20151006 |