(57)【要約】【課題】メモリカードに内蔵されたフラッシュメモリの寿命に伴うリテンションフェールにより、メモリカードの消費電力が増加するという課題がある。【解決手段】少なくとも１つの半導体メモリカード１０９と、ホスト機器からのアクセス要求に応じて半導体メモリカード１０９へのアクセスを制御するメモリカード制御部１０３と、を含むメモリカードドライブ１００であって、半導体メモリカード１０９は、不揮発性メモリ１１０と、不揮発性メモリ１１０で発生したエラーを訂正するエラー訂正部１１１と、を備え、メモリカード制御部１０３は、不揮発性メモリ１１０の寿命を推定する推定部１０４と、推定部１０４による推定結果を基に、インターフェイス部１０８によるアクセス時のクロックを制御するクロック制御部１０５と、を備える。【選択図】図１
2011138289.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つの半導体メモリカードと、ホスト機器からのアクセス要求に応じて前記半導体メモリカードへのアクセスを制御するメモリカード制御部と、を含むメモリカードドライブであって、
前記半導体メモリカードは、
不揮発性メモリと、
前記不揮発性メモリへのアクセスを制御するメモリ制御部と、
前記メモリ制御部を介して、前記不揮発性メモリで発生したエラーを訂正するエラー訂正部と、
を備え、
前記メモリカード制御部は、
前記半導体メモリカードにアクセスするインターフェイス部と、
前記不揮発性メモリの寿命を推定する推定部と、
前記推定部による推定結果を基に、前記インターフェイス部によるアクセス時のクロックを制御するクロック制御部と、
を備えるメモリカードドライブ。
【請求項２】
複数の半導体メモリカードと、ホスト機器からのアクセス要求に応じて前記半導体メモリカードへのアクセスを制御するメモリカード制御部と、を含むメモリカードドライブであって、
前記半導体メモリカードは、
不揮発性メモリと、
前記不揮発性メモリへのアクセスを制御するメモリ制御部と、
前記メモリ制御部を介して、前記不揮発性メモリで発生したエラーを訂正するエラー訂正部と、
を備え、
前記メモリカード制御部は、
前記複数の半導体メモリカードにアクセスするインターフェイス部と、
前記不揮発性メモリの寿命を推定する推定部と、
前記推定部による推定結果を基に、前記インターフェイス部を用いてアクセスする前記半導体メモリカードの数を変更するメモリカード枚数制御部と、
を備えるメモリカードドライブ。
【請求項３】
複数の半導体メモリカードと、ホスト機器からのアクセス要求に応じて前記半導体メモリカードへのアクセスを制御するメモリカード制御部と、を含むメモリカードドライブであって、
前記半導体メモリカードは、
不揮発性メモリと、
前記不揮発性メモリへのアクセスを制御するメモリ制御部と、
前記メモリ制御部を介して、前記不揮発性メモリで発生したエラーを訂正するエラー訂正部と、
を備え、
前記メモリカード制御部は、
前記複数の半導体メモリカードにアクセスするインターフェイス部と、
前記不揮発性メモリの寿命を推定する推定部と、
前記推定部による推定結果を基に、前記インターフェイス部を用いてアクセスする前記半導体メモリカードの数を変更するメモリカード枚数制御部と、
前記推定部による推定結果を基に、前記インターフェイス部によるアクセス時のクロックを制御するクロック制御部と、
を備えるメモリカードドライブ。
【請求項４】
前記推定部は、
前記不揮発性メモリへの書き換え回数を計測し、計測した書き換え回数を所定の閾値と比較することにより、前記不揮発性メモリの寿命を推定する、
請求項１から３の何れかに記載のメモリカードドライブ。
【請求項５】
前記推定部は、
前記不揮発性メモリへの書き換え以降の経過時間を計測し、計測した経過時間を所定の閾値と比較することにより、前記不揮発性メモリの寿命を推定する、
請求項１から３の何れかに記載のメモリカードドライブ。
【請求項６】
エラー訂正を行う少なくとも一つの半導体メモリカードにアクセスするインターフェイス部と、
前記半導体メモリカード内部の不揮発性メモリの寿命を推定する推定部と、
前記推定部による推定結果を基に、前記インターフェイス部によるアクセス時のクロックを制御するクロック制御部と、
を備えるメモリカードドライブ。
【請求項７】
エラー訂正を行う複数の半導体メモリカードにアクセスするインターフェイス部と、
前記半導体メモリカード内部の不揮発性メモリの寿命を推定する推定部と、
前記推定部による推定結果を基に、前記インターフェイス部を用いてアクセスする前記半導体メモリカードの数を変更するメモリカード枚数制御部と、
を備えるメモリカードドライブ。
【請求項８】
エラー訂正を行う複数の半導体メモリカードにアクセスするインターフェイス部と、
前記半導体メモリカード内部の不揮発性メモリの寿命を推定する推定部と、
前記推定部による推定結果を基に、前記インターフェイス部を用いてアクセスする前記半導体メモリカードの数を変更するメモリカード枚数制御部と、
前記推定部による推定結果を基に、前記インターフェイス部によるアクセス時のクロックを制御するクロック制御部と、
を備えるメモリカードドライブ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリカードを記録媒体として利用したメモリカードドライブに関するものであり、特に、メモリカードに内蔵されたフラッシュメモリの寿命に伴うリテンションフェールによる消費電力の増加を抑制するメモリカードドライブに関するものである。
【背景技術】
【０００２】
現在、ＳＤカード等のフラッシュメモリが内蔵されたカード型の記録媒体であるメモリカードは、超小型、超薄型であり、その取り扱い易さから、ディジタルスチルカメラ等のディジタル機器に広く利用されている。
【０００３】
メモリカードに内蔵されているフラッシュメモリは、一定サイズの多数の物理ブロックから成り、物理ブロックの単位でデータを消去できるメモリである。昨今の大容量化の要請に対応すべく、フラッシュメモリは１セルで２ビット以上のデータが蓄積できる多値フラッシュメモリが商品化されている。多値のフラッシュメモリでは、閾値電圧Ｖｔｈに複数の状態を設けてフラッシュメモリの電子の蓄積量を制御する多値記録を行い、大容量化を実現している。
【０００４】
しかしながら、フラッシュメモリは、書き込みや消去を繰り返すことにより、電子の維持が困難となり、電子が抜け落ちるリテンションフェール（ｒｅｔｅｎｔｉｏｎ  ｆａｉｌ）が発生する。リテンションフェールが発生すると、電子が抜け落ちる事により閾値電圧（Ｖｔｈ）が変わり、書き込み時のデータとは異なるデータに変化してしまうため、例えば画像データの場合では正しく表示することが不可能となる。特に多値フラッシュメモリは、電子の蓄積量によって４状態を識別するために、各状態間の閾値電圧（Ｖｔｈ）の差が、２値フラッシュメモリより小さく、リテンションフェールの影響を受けやすい。
【０００５】
そこでリテンションフェールへの解決手段として、書き換え回数を制限したり、エラー訂正を強化することが行われている。エラー訂正にはエラー訂正能力の高いＥＣＣ符号をユーザデータと共に記録し、読み出し時にエラー訂正を実施している。ところが、リテンションフェールの発生するページの増加や、複数のフラッシュメモリで同時にリテンションフェールが発生するなど、エラー訂正処理の頻度の増加により、消費電力が増加し、消費電力に制限のあるシステムではデータの読み出しが出来なくなるという問題がある。
【０００６】
メモリカード等の消費電力を削減する方法として、特許文献１では、データ転送に不要な区間のインターフェイスのクロックを停止する方法が提案されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００３−７６９５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１に開示の方法では、あらかじめデータ転送の不要な区間が分かっている場合や消費電力の増加するタイミングが分かっている場合についてのみ適用可能である。前述したメモリカードが行っているエラー訂正処理など、メモリカード内部で行われる制御については、メモリカードを制御する側は動作の有無を知る手段がなく、消費電力を削減するタイミングを特定することができない。
【０００９】
本発明は上記課題を解決するものであり、リテンションフェールの発生頻度が増加したメモリカードや、リテンションフェールが複数のメモリカードで同時に発生した場合において、消費電力の増加を抑制するメモリカードドライブを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明のメモリカードドライブは、少なくとも１つの半導体メモリカードと、ホスト機器からのアクセス要求に応じて前記半導体メモリカードへのアクセスを制御するメモリカード制御部と、を含むメモリカードドライブであって、前記半導体メモリカードは、不揮発性メモリと、前記不揮発性メモリへのアクセスを制御するメモリ制御部と、前記メモリ制御部を介して、前記不揮発性メモリで発生したエラーを訂正するエラー訂正部と、を備え、前記メモリカード制御部は、前記半導体メモリカードにアクセスするインターフェイス部と、前記不揮発性メモリの寿命を推定する推定部と、前記推定部による推定結果を基に、前記インターフェイス部のアクセス時のクロックを制御するクロック制御部と、を備える。
【発明の効果】
【００１１】
上記の構成によって、メモリカードドライブは、メモリカードの寿命に伴うリテンションフェールによるリードエラーの発生頻度を推測し、それに基づきメモリカードへのアクセスを制御することによって、リテンションフェールによる消費電力の増加を抑制することができる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１におけるメモリカードドライブの構成を示すブロック図
【図２】実施の形態１における書き換え回数制御手段の構成を示すブロック図
【図３】実施の形態１におけるメモリカードドライブの動作を示すフローチャート
【図４】実施の形態１におけるメモリカードへのアクセスの詳細を示す図
【図５】実施の形態１におけるクロック制御の動作を示す模式図
【図６】実施の形態１における書き換え回数とクロック制御の関連を示すグラフ
【図７】実施の形態２におけるメモリカードドライブの構成を示すブロック図
【図８】実施の形態２におけるメモリカードドライブの動作を示すフローチャート
【発明を実施するための形態】
【００１３】
（実施の形態１）
図１は実施の形態１におけるメモリカードドライブ１００の構成を示すブロック図である。これらの全ての構成要件が、１枚のＰＣＭＣＩＡカードに内蔵されている。
【００１４】
同図において外部インターフェイス手段１０１は、ＰＣＭＣＩＡカードに準拠したプロトコルによってコマンドの発行やデータ転送を行う。
【００１５】
コマンド解析手段１０２は、ホスト機器より外部インターフェイス手段１０１を介して発行されたコマンドの解析を行う。具体的にはＰＣＭＣＩＡカードのプロトコルを介して発行されたＡＴＡベースのコマンドを解析し、メモリカード制御手段１０３にリード等の動作を命令する。
【００１６】
メモリカード制御手段１０３は、書き換え回数制御手段１０４と、リードクロック制御手段１０５と、ユーザデータリード手段１０６と、ユーザデータライト手段１０７と、メモリカードインターフェイス手段１０８とから構成される。
【００１７】
書き換え回数制御手段１０４は、メモリカード１０９に内蔵されるフラッシュメモリ１１０の書き換え回数を計数する。図２は書き換え回数制御手段１０４の詳細な構成を示すブロック図である。
【００１８】
書き換え回数制御手段１０４は、メモリカードインターフェイス手段１０８を介して書き換え回数を読み出す、書き換え回数リード手段２０１と、書き換え回数の計数および更新を行う書き換え回数計数手段２００と、メモリカードインターフェイス手段１０８を介して、更新した書き換え回数を書き込む、書き換え回数ライト手段２０２とから構成される。
【００１９】
図１において、リードクロック制御手段１０５は、書き換え回数制御手段１０４で計数された書き換え回数に応じて、メモリカードインターフェイス手段１０８からメモリカード１０９に対して出力されるインターフェイスクロックの制御を行う。
【００２０】
ユーザデータリード手段１０６は、メモリカード１０９からメモリカードインターフェイス手段１０８を介して読み出したユーザデータを、外部インターフェイス手段１０１を介してホスト機器へ転送する。
【００２１】
ユーザデータライト手段１０７は、ホスト機器から外部インターフェイス手段１０１を介して転送されたユーザデータを、メモリカードインターフェイス手段１０８を介してメモリカード１０９へ書き込む。
【００２２】
メモリカードインターフェイス手段１０８は、メモリカード１０９のインターフェイスプロトコルを用いてデータの読み書きを行う。
【００２３】
メモリカード１０９は、フラッシュメモリ１１０とエラー訂正手段１１１を内蔵する。フラッシュメモリ１１０は、ユーザデータライト手段１０７によって書き込まれたユーザデータ、エラー訂正手段１１１が生成するエラー訂正符号、及び書き換え回数制御手段１０４によって計数された書き換え回数を記録する。
【００２４】
エラー訂正手段１１１は、フラッシュメモリ１１０へデータを書き込む場合にエラー訂正符号を生成し、ユーザデータと共にフラッシュメモリ１１０へ書き込む。また、フラッシュメモリ１１０からの読み出し時において、読み出したデータにエラーが発生した場合は、エラー訂正手段１１１は、ユーザデータと共に書き込まれたエラー訂正符号を用いてエラー訂正処理を行った後、ユーザデータを出力する。
【００２５】
以上の構成を有するメモリカードドライブ１００の動作について、図３に示すフローチャートを用いて説明する。
【００２６】
まず、メモリカードドライブ１００の電源が投入される（Ｓ３００）と、書き換え回数制御手段１０４に内蔵される書き換え回数リード手段２０１は、フラッシュメモリ１１０から記録されている書き換え回数を読み出し、書き換え回数計数手段２００の初期値として設定する（Ｓ３０１）。
【００２７】
書き換え回数が読み出された後、メモリカード制御手段１０３は、ホスト機器からのリードおよびライトコマンドを受信するための待ち状態となる（Ｓ３０２）。
【００２８】
コマンド解析手段１０２によって受信したコマンドがメモリカード１０９からの読み出しである場合（Ｓ３０３でＹｅｓ）、リードクロック制御手段１０５は書き換え回数計数手段２００よりフラッシュメモリ１０９の書き換え回数を取り込み、メモリカードインターフェイス手段１０８から出力するクロックを切替えるための閾値比較を行う（Ｓ３０４）。
【００２９】
リードクロック制御手段１０５は閾値よりも書き換え回数が下回っていた場合（Ｓ３０４でＹｅｓ）、メモリカードインターフェイス手段１０８に対して高速クロックモードを設定し（Ｓ３０５）、書き換え回数が閾値以上であった場合（Ｓ３０４でＮｏ）は、メモリカードインターフェイス手段１０８に対して低速クロックモードを設定する（Ｓ３０６）。
【００３０】
メモリカードインターフェイス手段１０８は、設定されたクロックモードに応じたクロックをメモリカード１０９に供給し、データをメモリカード１０９より読み出し（Ｓ３０７）、ユーザデータリード手段１０６へ出力する。
【００３１】
最終データの読み出し完了後、メモリカード制御手段１０３は再びホスト機器からのリードおよびライトコマンドを受信するための待ち状態となる（Ｓ３０２）。
【００３２】
一方、コマンド解析手段１０２によって受信したコマンドがメモリカード１０９への書き込みである場合（Ｓ３０３でＮｏ）、書き換え回数計数手段２００は、初期からの総書き換え回数の計数を行い、ユーザデータライト手段１０７は、ホスト機器より外部インターフェイス手段１０１を介して転送されたユーザデータを、メモリカードインターフェイス手段１０８を介してメモリカード１０９に書き込む（Ｓ３０８）。
【００３３】
書き換え回数計数手段２００によって更新された書き換え回数は、書き換え回数ライト手段２０２によってメモリカードインターフェイス手段１０８を介してメモリカード１０９へ転送される（Ｓ３０９）。
【００３４】
書き込み回数の更新後、メモリカード制御手段１０３は再びホスト機器からのリードおよびライトコマンドを受信するための待ち状態となる（Ｓ３０２）。
【００３５】
次にメモリカードインターフェイス手段１０８とメモリカード１０９とのインターフェイスプロトコルについて図４を用いて説明する。
【００３６】
メモリカードインターフェイス手段１０８とメモリカード１０９は「コマンド」、「クロック」、「データ」、「レスポンス」の信号線によって接続され、同図における矢印は信号の向きを示している。なお、「コマンド」、「データ」、「レスポンス」は全て「クロック」に同期した転送である。
【００３７】
書き込み時のメモリカードインターフェイス手段１０８の制御は次の通りである。
【００３８】
（１）書き込みの開始を示すライトコマンドに続いて書き込むメモリカード１０９のアドレスを転送する。
【００３９】
（２）メモリカード１０９からのレスポンスを待つ。
【００４０】
（３）レスポンスの受信後、データをメモリカード１０９に一定の単位で転送する。
【００４１】
（４）一定の単位ごとにメモリカード１０９からのレスポンスを待つ。
【００４２】
（５）（３）、（４）について最終データを書き込むまで行う。
【００４３】
（６）最終データのレスポンスを受信後、書き込みの終了を示すストップコマンドを転送する。
【００４４】
一方、読み出し時のメモリカードインターフェイス手段１０８の制御は次の通りである。
【００４５】
（１）読み出しの開始を示すリードコマンドに続いて読み出すメモリカード１０９のアドレスを転送する。
【００４６】
（２）メモリカード１０９からのレスポンスを待つ。
【００４７】
（３）レスポンスの受信後、メモリカード１０９から一定の単位で転送されてくるデータを取り込む。
【００４８】
（４）最終データの読み出し完了後、読み出しの終了を示すストップコマンドを転送する。
【００４９】
このようにメモリカード１０９のプロトコルは、最初にコマンドとアドレスを転送することにより、以降のアドレスはメモリカード１０９の内部で自動的にインクリメントされるため、連続的なデータの書き込みおよび読み出しに適したプロトコルとなっている。
【００５０】
このようなプロトコルに於いて、メモリカードインターフェイス手段１０８は周波数の異なる高速モードと低速モードに対応した２種類のリードクロックを生成する手段を持ち、リードクロック制御手段１０５からの設定に応じてリードクロックの周波数を切り替えてメモリカード１０９へ出力する。
【００５１】
図５にアドレスＮから１ＫＢを読み出す時のリードプロトコルを示す。図５（ａ）にリードクロック制御手段１０５が閾値比較（Ｓ３０４）により、高速クロックモードが設定（Ｓ３０５）された場合、図５（ｂ）に低速クロックモードが設定（Ｓ３０６）された場合について示す。なお、説明の簡略化のためにリードプロトコルにおける一定の単位を５１２Ｂとしている。
【００５２】
図５（ａ）では高速クロック（クロック周期Ｔ）で１ＫＢのデータを読み出しているのに対して、図５（ｂ）では低速クロック（クロック周期２Ｔ）により図５（ａ）の１／２の速度で読み出す様子を示している。
【００５３】
書き換え回数が多くなったフラッシュメモリ１１０は、リードエラーの発生頻度が高くなっているため、メモリカード１０９に内蔵されているエラー訂正手段１１１によるエラー訂正処理が行われる頻度が高くなり、メモリカード１０９の消費電力増加を引き起こす。そこで、フラッシュメモリ１１０の書き換え回数によるデータ読み出し時のクロック制御手段を導入し、データの転送レートを落とすことにより消費電力の増加を抑制することが可能である。
【００５４】
なお、図５においてクロックは高速と低速の２種類の動作を示したが、書き換え回数の閾値を細分化することにより、複数のクロックを使い分けてもよい。複数のクロックを使い分ける場合について図６を用いて説明する。
【００５５】
横軸を書き換え回数、縦軸をメモリカードインターフェイスクロックの周波数とすると、ある一定の書き換え回数（Ｔ１）まではメモリカード１０９が受信可能な最大周波数Ｆ１を使用し、書き換え回数がＴ１からＴ２までは最大周波数Ｆ１の１／２であるＦ２、Ｔ２から書き換え回数の限界値（Ｔ３）までは更に１／２のＦ３を使用するといった段階的にクロックを下げて運用してもよい。
【００５６】
また、図５（ｂ）において全体的に低速クロックモードでの制御を行っているが、消費電力の増加に起因するリードデータのみ低速クロックモードで行い、消費電力の増加とは関係のないコマンド等については高速クロックモードで行うなど、リードプロトコル中において複数のクロックモードを時分割に使い分けてもよい。
【００５７】
また、例えば映像・音声データの再生のようにリアルタイム性が要求されるシステムでは、低速クロックモードで読み出した場合に必要なデータの転送が再生に間に合わず映像または音声が途切れてしまう危険性があるため、ユーザにその危険性を通知してもよい。
【００５８】
また、図１、図２においてメモリカード１０９の寿命判定に書き換え回数を採用したが、前回記録してからの経過時間を用いてもよい。メモリカード１０９は、前回記録してからの経過時間が長くなるにつれて、リテンションフェールが発生しやすくなり、消費電力が増加する。したがって、メモリカード１０９のフラッシュメモリ１１０への書き換え以降の経過時間を計測し、計測した経過時間を所定の閾値と比較することによって、フラッシュメモリ１１０の寿命を推定することができる。
【００５９】
（実施の形態２）
実施の形態１では１枚のメモリカードに対する制御であったが、実施の形態２では複数のメモリカードを用いてＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｄｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋ  ｄｒｉｖｅｓ）を構成し、大容量かつ高速転送が可能なメモリカードドライブを実現する場合について説明する。なお、実施の形態２では２枚のメモリカードを用いてＲＡＩＤ０（ストライピング）を構成し、データをある一定の単位でそれぞれのメモリカードに分散して書き込みおよび読み出しを行う場合について説明する。実施の形態２では、２枚のメモリカードを用いる場合について説明するが、メモリカードが３枚以上であっても同様である。
【００６０】
図７は実施の形態２におけるメモリカードドライブ７００の構成を示すブロック図である。これらの全ての構成要件が１枚のＰＣＭＣＩＡカードに内蔵されている。
【００６１】
同図においてメモリカード制御手段７０１は、メモリカード駆動枚数制御手段７０２と、書き換え回数制御手段７０３と、リードクロック制御手段７０４と、ユーザデータリード手段７０５と、ユーザデータライト手段７０６と、メモリカードインターフェイス手段７０７とから構成される。
【００６２】
なお、同図において外部インターフェイス手段１０１、コマンド解析手段１０２に関しては実施の形態１と同様であるため説明を省略する。
【００６３】
メモリカード駆動枚数制御手段７０２は、書き換え回数制御手段７０３で計数されたそれぞれのメモリカード７０８、７０９に内蔵されるフラッシュメモリ７１０、７１１の書き換え回数に応じて、同時動作するメモリカード７０８、７０９の枚数制御を行う。
【００６４】
書き換え回数制御手段７０３は、メモリカード７０８、７０９に内蔵されるフラッシュメモリ７１０、７１１のそれぞれの書き換え回数を計数する。なお、計数方法に関しては実施の形態１と同様であるため説明を省略する。
【００６５】
リードクロック制御手段７０４は、書き換え回数制御手段７０３で計数されたそれぞれのメモリカード７０８、７０９に内蔵されるフラッシュメモリ７１０、７１１の書き換え回数に応じて、メモリカードインターフェイス手段７０７からメモリカード７０８、７０９に対して出力されるインターフェイスクロックの制御を行う。
【００６６】
ユーザデータリード手段７０５は、メモリカード７０８、７０９からメモリカードインターフェイス手段７０７を介して読み出したそれぞれのユーザデータを、外部インターフェイス手段１０１を介してホスト機器へ転送する。
【００６７】
ユーザデータライト手段７０６は、ホスト機器から外部インターフェイス手段１０１を介して転送されたユーザデータを、メモリカードインターフェイス手段７０７を介してメモリカード７０８、７０９へ書き込む。
【００６８】
メモリカードインターフェイス手段７０７は、メモリカード７０８、７０９のインターフェイスプロトコルを用いて複数のメモリカードからデータの読み書きを行う。
【００６９】
メモリカード７０８、７０９は、フラッシュメモリ７１０、７１１とエラー訂正手段７１２、７１３をそれぞれ内蔵する。フラッシュメモリ７１０、７１１はユーザデータライト手段７０６によって書き込まれたユーザデータ、エラー訂正手段７１２、７１３が生成するエラー訂正符号、及び書き換え回数制御手段７０３によって計数された書き換え回数を記録する。
【００７０】
エラー訂正手段７１２、７１３は、フラッシュメモリ７１０、７１１へデータを書き込む場合にエラー訂正符号を生成し、ユーザデータと共にフラッシュメモリ７１０、７１１へ書き込む。また、フラッシュメモリ７１０、７１１からの読み出し時において、読み出したデータにエラーが発生した場合は、エラー訂正手段７１２、７１３は、ユーザデータと共に書き込まれたエラー訂正符号を用いてエラー訂正処理を行った後、ユーザデータを出力する。
【００７１】
以上の構成を有するメモリカードドライブ７００の動作について、図８に示すフローチャートを用いて説明する。
【００７２】
まず、メモリカードドライブ７００の電源が投入される（Ｓ３００）と、書き換え回数制御手段７０３は、フラッシュメモリ７１０、７１１に記録されている書き換え回数を読み出し、書き換え回数計数手段２００の初期値として設定する（Ｓ８００）。
【００７３】
ホスト機器からのコマンド受信制御（Ｓ３０２、Ｓ３０３）と閾値制御（Ｓ３０４）に関しては実施の形態１と同様であるため説明を省略する。
【００７４】
コマンド解析手段１０２によって受信したコマンドがリードと判断され、書き換え回数が閾値よりも下回っていた場合（Ｓ３０４でＹｅｓ）、メモリカードインターフェイス手段７０７に対して２枚のメモリカード７０８、７０９に対して同時に読み出しを行うメモリカード同時動作モードを設定し（Ｓ８０２）、書き換え回数が閾値以上であった場合（Ｓ３０４でＮｏ）は２枚のメモリカード７０８、７０９に対して個別に読み出しを行うメモリカード個別動作モードを設定する（Ｓ８０１）。
【００７５】
メモリカードインターフェイス手段７０７は設定された動作モードに応じてメモリカード７０８、７０９よりデータを読み出し（Ｓ８０３）、ユーザデータリード手段７０５に出力する。
【００７６】
一方、コマンド解析手段１０２によって受信したコマンドがライトと判断された場合（Ｓ３０３でＮｏ）、書き換え回数計数手段２００は、各フラッシュメモリ７１０、７１１の初期からの総書き換え回数の計数を行い、ユーザデータライト手段７０６はホスト機器より外部インターフェイス手段１０１を介して転送されたユーザデータを、フラッシュメモリ７１０、７１１それぞれに分散して書き込むためのデータ分割を行い、メモリカードインターフェイス手段７０７を介して各メモリカード７０８、７０９へ転送する（Ｓ８０４）。
【００７７】
書き換え回数計数手段２００によって更新された書き換え回数は、書き換え回数ライト手段２０２によってメモリカードインターフェイス手段７０７を介して各メモリカード７０８、７０９へ転送される（Ｓ８０５）。
【００７８】
なお、最終データの読み出し完了後、および書き込み回数の更新後の動作に関しては実施の形態１と同様のため説明を省略する。
【００７９】
また、メモリカードインターフェイス手段７０７とメモリカード７０８、７０９との個々のインターフェイスプロトコルに関しては実施の形態１と同様のため説明を省略する。
【００８０】
書き換え回数の多くなったフラッシュメモリ７１０、７１１はリードエラーの発生頻度が高くなり、メモリカード７０８、７０９の同時動作によってリードエラーが同時に発生する頻度も高くなる。これによりメモリカード７０８、７０９に内蔵さているエラー訂正手段７１２、７１３によるエラー訂正処理が同時に機能する頻度が高くなり、その結果メモリカードドライブ７００全体の消費電力の増加を引き起こす。そこで、フラッシュメモリ７１０、７１１の書き換え回数を計数し、駆動するメモリカードの枚数を制御する手段を導入することにより、消費電力の増加を抑制することが可能である。
【００８１】
なお、図８ではデータの読み出しにおいてメモリカード７０８、７０９の駆動枚数の制御のみを行っているが、個々のメモリカード７０８、７０９に対するリードクロック制御手段７０４を組み合わせてもよい。
【００８２】
また、書き換え回数制御手段７０３は２枚のフラッシュメモリを仮想的に１枚の大容量なフラッシュメモリとして扱い、実施の形態１と同様の制御を行ってもよい。
【００８３】
また、書き換え回数制御手段７０３は２枚のフラッシュメモリを個別に制御する手段と仮想的に大容量なフラッシュメモリとして制御する手段の両方を持ち、ホスト機器からの設定により切り替えて運用してもよい。
【産業上の利用可能性】
【００８４】
本実施の形態におけるメモリカードドライブは、メモリカードの寿命に伴うリテンションフェールによるリードエラーの発生頻度を推測し、リテンションフェールによる消費電力の増加を抑制することができるため、複数の半導体メモリカードからなる半導体メモリ装置等に適用することができ、有用である。
【符号の説明】
【００８５】
１００、７００  メモリカードドライブ
１０１  外部インターフェイス手段
１０２  コマンド解析手段
１０３、７０１  メモリカード制御手段
１０４、７０３  書き換え回数制御手段
１０５、７０４  リードクロック制御手段
１０６、７０５  ユーザデータリード手段
１０７、７０６  ユーザデータライト手段
１０８、７０７  メモリカードインターフェイス手段
１０９、７０８、７０９  メモリカード
１１０、７１０、７１１  フラッシュメモリ
１１１、７１２、７１３  エラー訂正手段
２００  書き換え回数計数手段
２０１  書き換え回数リード手段
２０２  書き換え回数ライト手段
７０２  メモリカード駆動枚数制御手段
【図１】
2011138289.tif 000003
【図２】
2011138289.tif 000004
【図３】
2011138289.tif 000005
【図４】
2011138289.tif 000006
【図５】
2011138289.tif 000007
【図６】
2011138289.tif 000008
【図７】
2011138289.tif 000009
【図８】
2011138289.tif 000010