(57)【要約】【課題】データの転送速度は、データ記録ブロックの使用状況や書き込み、消去単位に大きく影響されるので、記録媒体の種類、容量等からは正確な転送速度情報を得ることができない。【解決手段】半導体メモリカード１はデータ格納部にユーザデータ領域２１と管理情報領域２２とを有している。メモリアクセス装置６からの書き込みテストコマンドに基づいてメモリコントローラ３でユーザデータの所定の領域にデータを書き込んでその速度を測定する。そして測定結果をホストインターフェース４を介してメモリアクセス装置６に伝送する。これによりメモリアクセス装置６側で書き込み速度を認識することができる。【選択図】図１
2005222201.tif 000002
【特許請求の範囲】
【請求項１】
情報を格納したユーザデータ領域、及び、半導体メモリカードの管理情報を格納した管理情報領域とをもつ不揮発性のデータ格納部と、
一時的にデータを格納するＲＡＭと、
メモリアクセス装置より発行されるコマンド、及びデータを受け取ると共に、半導体メモリカードからのレスポンス、及びデータをメモリアクセス装置へ提供するホストインターフェイス部と、
前記ホストインターフェイス部、前記データ格納部、及び前記ＲＡＭの制御を行うメモリコントローラとを具備し、
前記メモリコントローラは、前記メモリアクセス装置から書き込みテストコマンドが与えられると、半導体メモリカードの内部の状態に応じて決定した領域に書き込みテストを行い、書き込み時間の測定結果を前記メモリアクセス装置へ知らせることを特徴とする半導体メモリカード。
【請求項２】
前記コントローラは、前記データ格納部の使用状態に応じて、書き込み領域を選定することを特徴とする請求項１記載の半導体メモリカード。
【請求項３】
前記コントローラは、前記メモリアクセス装置より指定された前記データ格納部の領域に書き込みを行うことを特徴とする請求項１記載の半導体メモリカード。
【請求項４】
前記データ格納部は、前記管理情報領域に書き込み時間情報を格納する書込時間情報格納領域をもつことを特徴とする請求項１又は２記載の半導体メモリカード。
【請求項５】
前記コントローラは、前記メモリアクセス装置から書き込みアクセスコマンドが与えられたときに前記書込時間情報格納領域を検索し、同一条件の書き込み時間情報があればその情報に基づいてメモリアクセス装置に書き込み時間を知らせると共に、同一条件の情報がなければ前記メモリカード内で書き込みテストを行うことを特徴とする請求項４記載の半導体メモリカード。
【請求項６】
情報を格納したユーザデータ領域、及び、半導体メモリカードの管理情報を格納した管理情報領域とをもつ不揮発性のデータ格納部と、
一時的にデータを格納するＲＡＭと、
メモリアクセス装置より発行されるコマンド、及びデータを受け取ると共に、半導体メモリカードからのレスポンス、及びデータをメモリアクセス装置へ提供するホストインターフェイス部と、
前記ホストインターフェイス部、前記データ格納部、及び前記ＲＡＭの制御を行うメモリコントローラとを具備し、
前記メモリコントローラは、前記メモリアクセス装置からカード内情報開示コマンドが与えられると、カード内部の管理情報領域の情報を前記メモリアクセス装置に知らせることを特徴とする半導体メモリカード。
【請求項７】
請求項１，２，４，５のいずれか１項記載の半導体メモリカードにアクセスしてデータを書き込むメモリアクセス装置であって、
前記半導体メモリカードに対して書き込みテストコマンドを送出するテストコマンド送出手段と、
前記半導体メモリカードより得られた書き込み時間情報に基づいて書き込みデータを転送するデータ書込手段と、を有することを特徴とするメモリアクセス装置。
【請求項８】
請求項３記載の半導体メモリカードにアクセスしてデータを書き込むメモリアクセス装置であって、
前記半導体メモリカードに対してホスト書き込みテストコマンドを送出し、半導体メモリカードから得られた管理情報に基づいて書き込み開始位置の物理アドレスとを決定し、書き込みデータを転送するメモリカードテスト手段と、
前記半導体メモリカードより得られた書き込み時間情報に基づいて書き込みデータを転送するデータ書込手段と、を有することを特徴とするメモリアクセス装置。
【請求項９】
請求項６記載の半導体メモリカードにアクセスしてデータを書き込むメモリアクセス装置であって、
前記半導体メモリカードに対してカード内情報開示コマンドを送出するカード情報取得手段と、
前記半導体メモリカードより得られたカード内部の管理情報に基づいて書き込みデータを転送するデータ書込手段と、を有することを特徴とするメモリアクセス装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体メモリカード及び、半導体メモリカードにアクセスするメモリアクセス装置に関する。
【背景技術】
【０００２】
音楽コンテンツや、映像データなどのデジタルデータを記録する記録媒体には、磁気ディスク、光ディスク、光磁気ディスクなど、様々な種類が存在する。これら記録媒体の１種類である半導体メモリカードは、記録素子としてフラッシュメモリなどの半導体メモリを使用しており、記録媒体の小型化が図れることから、特許文献１に示されるようにデジタルスチルカメラや携帯電話端末など、小型の携帯機器を中心に急速に普及しつつある。また、同時に携帯機器といえども、デジタルデータの高品位化、例えば、高画質化が要望されており、データ記録時などにおける高転送レート化が加速されている。
【０００３】
次に半導体メモリカードのメモリとして用いられているＮＡＮＤ型フラッシュメモリの特徴について説明する。まずＮＡＮＤ型フラッシュメモリでは、データを書き込む前に一旦書き込み先に記録されているデータを消去して、白紙の状態に戻してからデータ書き込みを行わなければならないという特徴がある。
【０００４】
ここでデータを消去する単位は消去ブロックと呼ばれ、アクセスの最小単位であるセクタが複数個集まったブロックとして管理されている。図２は消去ブロックとセクタとの関係の一例を示した図である。図２の例では、１つの消去ブロックは３２セクタから構成されている。アクセスはセクタ（例えば５１２バイト）単位で行うことが可能であるが、書き込みに先立ち必要となるデータの消去処理は消去ブロック（１６ｋＢ）単位で行われる。
【０００５】
この半導体メモリカードにおけるデータを消去して書き込む処理の例を、図３、図４を用いて説明する。図３では、書き込み処理の一例として、消去ブロック倍数長のデータを書き込む場合における半導体メモリカード内部の処理手順を示す。図３では、先ずメモリアクセス装置から送信されたコマンドと引数を受信する（Ｓ３０１）。次に、受信したコマンドを参照し、自身が認識できない不正コマンドか否かを判定する（Ｓ３０２）。不正コマンドの場合、メモリアクセス装置にエラーを通知して処理を終了する（Ｓ３０３）。認識可能なコマンドの場合、そのコマンドが書き込みコマンドであるか判定する（Ｓ３０４）。書き込みコマンド以外の場合、各コマンドに対応した他の処理を実施する（Ｓ３０５）。書き込みコマンドの場合、引数に格納された書き込み位置、書き込みサイズの情報から、実際にフラッシュメモリにデータを書き込む消去ブロックの物理アドレスを決定する（Ｓ３０６）。次に、書き込みに先立ち、メモリコントローラを介して、フラッシュメモリに存在するＳ３０６で決定した消去ブロックに存在するデータを消去する（Ｓ３０７）。次に、メモリアクセス装置から１セクタ分のデータを受信する（Ｓ３０８）。データの受信を完了すると、受信した１セクタ分のデータをフラッシュメモリへ書き込む（Ｓ３０９）。こうしてＳ３０８、Ｓ３０９のデータ受信、書き込み処理を、１消去ブロック分のデータ書き込みが完了するまで繰り返し実施する（Ｓ３１０）。Ｓ３０６からＳ３１０までの１消去ブロック分のデータ書き込み処理を、メモリメモリアクセス装置から指定された書き込みサイズ分のデータ書き込みが完了するまで繰り返し実施する（Ｓ３１１）。メモリアクセス装置から指定された書き込みサイズ分のデータ書き込みが完了した場合、処理を終了する。
【０００６】
次に図４は１セクタのデータを書き込む場合における半導体メモリカード内部の処理手順を示す。ＮＡＮＤ型のフラッシュメモリでは、データ書き込みに先立ち一旦データを消去する必要がある。この消去処理は消去ブロック単位でしか行えないため、１セクタのデータを書き込む場合でも、１消去ブロック分のデータ消去が必要である。図４におけるデータ記録処理において、図３の処理と異なる点は、S４０７において１消去ブロックのデータ消去の前にそのデータを一旦退避させて消去する。又Ｓ４１０において書き込みを行う消去ブロックに含まれるデータのうち、メモリアクセス装置からデータを受信する１セクタ以外のあらかじめ退避させていたデータを、Ｓ４０６で決定した消去ブロックに書き戻す点である。
【０００７】
図３、図４で示したようにデータ記録処理では、大きく分けてコマンド解釈処理、データ消去処理、データ書き込み処理の３つの処理が存在する。ここで例えば、コマンド解釈のオーバーヘッドに３ｍ秒、１セクタの書き込み処理に２００μ秒、１消去ブロック（１６ｋＢ）の消去処理に２ｍ秒かかるフラッシュメモリを想定する。このフラッシュメモリの１消去ブロック（１６ｋＢ）の書き込みでは、図３に示す処理が実行され、コマンド解釈に３ｍ秒、消去処理に２ｍ秒、書き込み処理に３２×２００μ秒かかり、合計１１．４ｍ秒となる。同様に１セクタ（５１２Ｂ）の書き込みでは、図４に示す処理が実行され、コマンド解釈に３ｍ秒、消去処理に２ｍ秒、書き込み処理に２００μ秒＋３１×２００μ秒かかり、合計１１．４ｍ秒となる。
【０００８】
すなわち、１６ｋＢのデータを書き込んだ場合と１セクタのデータを書き込んだ場合でほぼ同じ時間がかかることになる。この例ではデータ転送時間などを考慮せず極端に性能差が出る場合について説明したが、実際のフラッシュメモリにおいても、消去ブロック単位で書き込みを行った場合に書き込み時間が最短になるという特徴を持つことが一般に知られている。
【０００９】
また、半導体メモリカードでは、記録素子として複数枚のフラッシュメモリを使用する場合がある。図５は、２枚のフラッシュメモリを使用した半導体メモリカードの構成例を示した図である。図５に示す２枚のフラッシュメモリは、いずれも１つの消去ブロックが３２セクタで構成されており、２枚のフラッシュメモリに存在する各セクタには、３２セクタ単位で２枚のフラッシュメモリが交互に入れ替わるように昇順の物理セクタ番号が付与されている。これら複数枚のフラッシュメモリから構成されている半導体メモリの場合、複数枚のフラッシュメモリに対して並列に読み書き処理が行えるように半導体メモリカードを構成することで、高速アクセスを実現することが可能となる。例えば図５の例において物理セクタ番号をＰＳＮとすると、ＰＳＮ０から６３までの６４セクタにデータを書き込む際に、消去ブロック０＿０、１＿０の２つの消去ブロックに対し並列にデータを書き込むことで、高速にデータを書き込むことが可能となる。
【００１０】
図６（ａ）は、図５で示したフラッシュメモリ２枚で半導体メモリカードを構成した場合における、１消去ブロック書き込み時のタイミング、図６（ｂ）はその２消去ブロック並列書き込み時のタイミングの一例を示した図である。図６においてＴ１は、１消去ブロックの書き込み処理にかかる時間を表す。また、Ｔ１’＋Ｔ２’は２消去ブロックの並列書き込み処理にかかる時間を表す。すなわち、１消去ブロックずつ２回に分けてデータを書き込んだ場合の書き込み処理時間はＴ１×２となり、２消去ブロックの並列書き込みを行った場合の書き込み処理時間はＴ１’＋Ｔ２’となる。後者は２枚のフラッシュメモリに並列に書き込むため、Ｔ１とＴ２’はほぼ同じ時間となることから、図６の例では半導体メモリカードに対し２消去ブロック単位で書き込んだ場合に書き込み時間が最短となる。
【００１１】
上記の従来技術には次のような問題点がある。データの転送速度は、データ記録ブロックの使用状況や書き込み開始位置、消去単位などにより大きく変化する。すなわち、半導体メモリカードへの書き込み時間は、消去ブロックの大きさだけに依存するのではなく、半導体メモリカードに使用するフラッシュメモリの枚数、フラッシュメモリの管理方法などにも依存し、半導体メモリカードの世代や製造者の違いにより、半導体メモリカードのアクセス性能は異なる。つまり、転送速度は、メモリアクセス装置が知り得ない、カード内部の構成、さらには、セクタなどの状態により大きく異なることになる。
【００１２】
そのため、例えば、デジタルスチルカメラなどでリアルタイムで動画記録を行う場合において、半導体メモリカードの種類によりデータ書き込み処理がデータ取り込み処理に追従できなくなり、正しくデータ記録が行われなくなる場合があった。
【００１３】
そこで、特許文献１ではデジタルスチルカメラなどのメモリアクセス装置が、使用する半導体メモリカードのメーカ名、メモリカードの容量、転送方法などの情報を事前に取得できるように構成されていた。さらには、データ書き込み前に、メモリアクセス装置が、あらかじめ転送方法を試行し、使用する半導体メモリカードに適用可能な１つ以上の転送方法の中から１つの転送方法を選出し、データ転送を行う構成であった。
【特許文献１】特開２００１−２４５２４９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
しかし、従来のメモリアクセス装置は、半導体メモリカード内部の状態、つまり、データ記録ブロックの使用状況や、半導体メモリカード固有のデータ書き込み、及び消去単位などを知る手段を有していない。従って、従来技術での転送試験では、正確な転送速度情報を得ることができないという欠点があった。
【００１５】
本発明はこのような従来の問題点に着目してなされたものであって、半導体メモリカード内の書き込み時間を測定し、これをメモリアクセス装置に伝えることによってメモリアクセス装置側で正確な書き込み速度情報を得ることができうようにすることを目的とする。
【課題を解決するための手段】
【００１６】
この課題を解決するために、本発明の半導体メモリカードは、情報を格納したユーザデータ領域、及び、半導体メモリカードの管理情報を格納した管理情報領域とをもつ不揮発性のデータ格納部と、一時的にデータを格納するＲＡＭと、メモリアクセス装置より発行されるコマンド、及びデータを受け取ると共に、半導体メモリカードからのレスポンス、及びデータをメモリアクセス装置へ提供するホストインターフェイス部と、前記ホストインターフェイス部、前記データ格納部、及び前記ＲＡＭの制御を行うメモリコントローラとを具備し、前記メモリコントローラは、前記メモリアクセス装置から書き込みテストコマンドが与えられると、半導体メモリカードの内部の状態に応じて決定した領域に書き込みテストを行い、書き込み時間の測定結果を前記メモリアクセス装置へ知らせることを特徴とするものである。
【００１７】
ここで前記コントローラは、前記データ格納部の使用状態に応じて、書き込み領域を選定するようにしてもよい。
【００１８】
ここで前記コントローラは、前記メモリアクセス装置より指定された前記データ格納部の領域に書き込みを行うようにしてもよい。
【００１９】
ここで前記データ格納部は、前記管理情報領域に書き込み時間情報を格納する書込時間情報格納領域をもつようにしてもよい。
【００２０】
ここで前記コントローラは、前記メモリアクセス装置から書き込みアクセスコマンドが与えられたときに前記書込時間情報格納領域を検索し、同一条件の書き込み時間情報があればその情報に基づいてメモリアクセス装置に書き込み時間を知らせると共に、同一条件の情報がなければ前記メモリカード内で書き込みテストを行うようにしてもよい。
【００２１】
この課題を解決するために、本発明の半導体メモリカードは、情報を格納したユーザデータ領域、及び、半導体メモリカードの管理情報を格納した管理情報領域とをもつ不揮発性のデータ格納部と、一時的にデータを格納するＲＡＭと、メモリアクセス装置より発行されるコマンド、及びデータを受け取ると共に、半導体メモリカードからのレスポンス、及びデータをメモリアクセス装置へ提供するホストインターフェイス部と、前記ホストインターフェイス部、前記データ格納部、及び前記ＲＡＭの制御を行うメモリコントローラとを具備し、前記メモリコントローラは、前記メモリアクセス装置からカード内情報開示コマンドが与えられると、カード内部の管理情報領域の情報を前記メモリアクセス装置に知らせることを特徴とするものである。
【００２２】
この課題を解決するために、本発明のメモリアクセス装置は、請求項１，２，４，５のいずれか１項記載の半導体メモリカードにアクセスしてデータを書き込むメモリアクセス装置であって、前記半導体メモリカードに対して書き込みテストコマンドを送出するテストコマンド送出手段と、前記半導体メモリカードより得られた書き込み時間情報に基づいて書き込みデータを転送するデータ書込手段と、を有することを特徴とするものである。
【００２３】
この課題を解決するために、本発明のメモリアクセス装置は、請求項３記載の半導体メモリカードにアクセスしてデータを書き込むメモリアクセス装置であって、前記半導体メモリカードに対してホスト書き込みテストコマンドを送出し、半導体メモリカードから得られた管理情報に基づいて書き込み開始位置の物理アドレスとを決定し、書き込みデータを転送するメモリカードテスト手段と、前記半導体メモリカードより得られた書き込み時間情報に基づいて書き込みデータを転送するデータ書込手段と、を有することを特徴とするものである。
【００２４】
この課題を解決するために、本発明のメモリアクセス装置は、請求項６記載の半導体メモリカードにアクセスしてデータを書き込むメモリアクセス装置であって、前記半導体メモリカードに対してカード内情報開示コマンドを送出するカード情報取得手段と、前記半導体メモリカードより得られたカード内部の管理情報に基づいて書き込みデータを転送するデータ書込手段と、を有することを特徴とするものである。
【発明の効果】
【００２５】
本発明の請求項１〜５，７，８の発明によれば、メモリコントローラはメモリカードの内部の状態に応じてデータ格納部に対して書き込みテストを行い、その結果をメモリアクセス装置に転送しているため、メモリアクセス装置側で書き込みの条件に応じた実際の書き込み速度を認識することができる。又請求項６，９の発明では、半導体メモリカードのカード内の情報に応じて書き込み速度を認識することができる。
【発明を実施するための最良の形態】
【００２６】
以下、本発明のメモリアクセス装置、及び半導体メモリカードの実施の形態について、図面を参照しながら説明する。
（実施の形態１）
本実施の形態１のメモリアクセス装置、及び半導体メモリカードの構成を図１に示す。図１において、半導体メモリカード１は、データ格納部２、メモリコントローラ３、ホストインターフェース部４、ＲＡＭ５により構成されている。データ格納部２は、例えばＮＡＮＤ型フラッシュメモリにより構成され、ユーザデータ領域２１、管理情報領域２２が設けられる。又管理情報領域２２内にはユーザデータの使用状況を格納したカード情報格納領域２２１が設けられている。本実施の形態においては、データ格納部２はフラッシュメモリ１個により構成される。ホストインターフェース部４はメモリメモリアクセス装置６との情報の受け渡しを行うものである。又メモリアクセス装置６は半導体メモリカード１に対してテストコマンドを送出するテストコマンド送出手段７と、半導体メモリカード１にデータを書き込むデータ書込手段８及びデータを読み出すデータ読出手段９を有している。
【００２７】
次に、本実施の形態１による内部動作に関して、図７、８を用いて説明する。図７に書き込み速度測定時の処理フローを示す。まずメモリアクセス装置６はテストコマンド送出手段７より書き込みテストコマンドを送出する。このとき同時に書き込みサイズを半導体メモリカード１に送出するものとする。半導体メモリカード１はメモリアクセス装置６から送信されたコマンドと引数を、ホストインターフェース部４を介して受信する（Ｓ７０１）。次に、受信したコマンドを参照し、自身が認識できない不正コマンドか否かを判定する（Ｓ７０２）。不正コマンドの場合、メモリアクセス装置６にエラーを通知して処理を終了する（Ｓ７０３）。正常コマンドである場合、そのコマンドが書き込みテストコマンドであるか判定する（Ｓ７０４）。書き込みテストコマンド以外の場合、各コマンドに対応した他の処理を実施する（Ｓ７０５）。書き込みテストコマンドが書き込みサイズと共に与えられると、ステップＳ７０６においてデータ格納部２の管理情報領域２２に格納されたカード情報格納領域２２１、すなわち、ユーザデータ領域の使用状態についての情報を取得する。ユーザデータ領域の情報の一例を図８に示す。本図に示すように、物理ブロックアドレス内のセクタの使用状況の情報を読出す。これらの情報をもとに、メモリカード内部のメモリコントローラ３が書き込み位置を決定する。例えば図８の物理ブロックアドレス１に示すように時間がかかるアドレスも含んでおくことが好ましい。この処理は、テスト用物理アドレスの決定（Ｓ７０７）で行われる。
【００２８】
次に、メモリコントローラ３を介して、データ格納部２に存在するＳ７０７で決定した消去ブロックに存在するデータを消去する（Ｓ７０８）。このとき有効なデータは消去に先立ってＲＡＭ５への退避が自動的に行われる。次に、メモリアクセス装置６から１セクタ分のデータを、ホストインターフェース部４を介して受信する（Ｓ７０９）。データの受信を完了すると、受信した１セクタ分のデータを、メモリコントローラを介して、データ格納部２へ書き込む（Ｓ７１０）。この際の書き込み時間、すなわち、ビジー時間を測定し、ＲＡＭ５に記録する。Ｓ７０９、Ｓ７１０、Ｓ７１１において１セクタ分のデータ受信、書き込み、書き込み速度測定処理を、１消去ブロック分のデータ書き込みが完了するまで繰り返し実施する（Ｓ７１２）。Ｓ７０８からＳ７１２までの１消去ブロック分のデータ書き込み処理を、メモリアクセス装置６から指定された書き込みサイズ分のデータ書き込みが完了するまで繰り返し実施する（Ｓ７１３）。メモリアクセス装置６から指定された書き込みサイズ分のデータ書き込みが完了した時点で、それまでに書き込み時間を測定したデータを集計する（Ｓ７１４）。その結果の一例を図９に示す。この例では書き込みデータサイズ１６ｋＢについて示している。そして１セクタ単位での書き込み時間とその最小値、最大値、及び、平均値を算出し、メモリアクセス装置からのコマンド受信から全データの書き込み終了までの時間、及び、書き込みデータサイズをＲＡＭ５に格納する。その後、このデータをメモリアクセス装置６へ送信（Ｓ７１５）し、処理を終了する。
【００２９】
こうすれば以後メモリアクセス装置６は、ここで得られた書き込み時間情報に基づいて半導体メモリカード１へのデータ書き込みを行うことができる。尚このときの書き込みがダミーの情報である場合には消去してもよく、又管理情報領域に無効なデータであることを示すフラグを立てておくようにしてもよい。
【００３０】
なお、本実施の形態１で使用されているフラッシュメモリの種類、枚数、物理ブロックの容量、構成などは特定されるものではなく、違った組み合わせにおいても同様の効果が得られることは言うまでもないことである。
【００３１】
また、書き込み単位、ＲＡＭに蓄えられる情報に関して、本実施の形態以外の情報を格納しても同様の効果が得られることは言うまでもないことである。
【００３２】
（実施の形態２）
本実施の形態２のメモリアクセス装置、及び半導体メモリカードについて説明する。
基本構成は図１と同様であるが、書き込み速度測定の処理フローが実施の形態１と異なる。実施の形態１では、書き込みテストを実施する際、メモリアクセス装置からは書き込みサイズの情報が発行され、書き込み開始ブロックの決定等の処理全てをメモリカード内で行い、書き込み時間情報をメモリアクセス装置へ送信した。実施の形態２では、メモリアクセス装置がメモリカード２から内部情報を取得し、書き込み開始ブロックや書き込みのサイズを決定するという点が異なる。
【００３３】
図１０は実施の形態２のメモリアクセス装置及び半導体メモリカードを示すブロック図である。半導体メモリカード３１は、データ格納部３２、メモリコントローラ３３、ホストインターフェース部３４、ＲＡＭ３５により構成されている。データ格納部３２は、例えばＮＡＮＤ型フラッシュメモリにより構成され、ユーザデータ領域３２１、管理情報領域３２２が設けられる。又管理情報領域３２２内にはユーザデータの使用状況を格納したカード情報格納領域３２３が設けられている。本実施の形態においては、データ格納部３２はフラッシュメモリ１個により構成される。ホストインターフェース部３４はメモリメモリアクセス装置３６との情報の受け渡しを行うものである。メモリアクセス装置３６はホスト書き込みテストコマンドを送信してテストする物理アドレスを決定するメモリカードテスト手段３７、及びデータ書込手段３８、データ読出手段３９を有している。
【００３４】
次に本実施の形態において、半導体メモリのテストをする場合について説明する。まずメモリアクセス装置３６から送信されたコマンドと引数を、ホストインターフェース部３４を介して受信する（Ｓ１１０１）。次に、受信したコマンドを参照し、自身が認識できない不正コマンドか否かを判定する（Ｓ１１０２）。不正コマンドの場合、メモリアクセス装置３６にエラーを通知して処理を終了する（Ｓ１１０３）。正常コマンドである場合、そのコマンドがホスト書き込みテストコマンドであるか判定する（Ｓ１１０４）。ホスト書き込みテストコマンド以外の場合、各コマンドに対応した他の処理を実施する（Ｓ１１０５）。ホスト書き込みテストコマンドの場合、データ格納部３２内の管理情報領域３２２の中に納められた各ブロック、セクタの使用状況、例えば、前述の図８に示す情報を取得してメモリアクセス装置３６へ送信（Ｓ１１０６）する。メモリアクセス装置３６のメモリカードテスト手段３７はＳ１１０６で得られた情報と自らの持つ書き込みデータサイズ等の情報により、書き込み開始位置の物理アドレス等を決定し、メモリカード３１へ情報送信する。半導体メモリカード１はメモリアクセス装置３６から送信されたこの情報を受信する（Ｓ１１０７）。
【００３５】
次に、メモリコントローラ３３を介して、データ格納部３２に存在するＳ１１０７で決定した消去ブロックに存在するデータを消去する（Ｓ１１０８）。このとき有効データがあれば、消去に先立ってＲＡＭ３５への退避が自動的に行われる。次に、メモリアクセス装置３６から１セクタ分のデータを、ホストインターフェース部３４を介して受信する（Ｓ１１０９）。データの受信を完了すると、受信した１セクタ分のデータを、メモリコントローラ３３を介して、データ格納部３２へ書き込む（Ｓ１１１０）。この際の書き込み時間、すなわち、ビジー時間を測定し、ＲＡＭ３５に記録する。Ｓ１１０９、Ｓ１１１０、Ｓ１１１１のデータ受信、書き込み、書き込み速度測定処理を、１消去ブロック分のデータ書き込みが完了するまで繰り返し実施する（Ｓ１１１２）。Ｓ１１０８からＳ１１１２までの１消去ブロック分のデータ書き込み処理を、メモリアクセス装置３６から指定された書き込みサイズ分のデータ書き込みが完了するまで繰り返し実施する（Ｓ１１１３）。メモリアクセス装置３６から指定された書き込みサイズ分のデータ書き込みが完了した時点で、それまでに書き込み時間を測定したデータを集計する（Ｓ１１１４）。その結果の一例を前述の図９に示す。すなわち、１セクタ単位での書き込み時間とその最小値、最大値、及び、平均値、また、メモリアクセス装置からのコマンド受信から全データの書き込み終了までの時間、及び、書き込みデータサイズをＲＡＭ３５に格納する。その後、このデータをメモリアクセス装置３６へ送信（Ｓ１１１５）し、処理を終了する。
【００３６】
こうすれば以後メモリアクセス装置３６は、ここで得られた書き込み時間情報に基づいて半導体メモリカード３１へのデータ書き込みを行うことができる。尚このときの書き込みがダミーの情報である場合には消去してもよく、又管理情報領域に無効なデータであることを示すフラグを立てておくようにしてもよい。
【００３７】
（実施の形態３）
本実施の形態３のメモリアクセス装置、及び半導体メモリカードの構成を図１２に示す。図１３は実施の形態３のメモリアクセス装置及び半導体メモリカードを示すブロック図である。半導体メモリカード４１は、データ格納部４２、メモリコントローラ４３、ホストインターフェース部４４、ＲＡＭ４５により構成されている。データ格納部４２は、例えばＮＡＮＤ型フラッシュメモリにより構成され、ユーザデータ領域４２１、管理情報領域４２２が設けられる。管理情報領域４２２はユーザデータ領域の使用状況を格納するカード情報格納領域４２３と、書き込み時間の情報を格納する書込時間情報格納領域４２４の領域を有している。この書込時間情報格納領域４２４は実施の形態１及び２における書き込み時間測定時にＲＡＭ５に格納される情報を保持する領域である。すなわち、実施の形態１及び２では、速度測定後、メモリカードの電源を切断すると測定情報は消えてしまうが、実施の形態３では、消えることなく保持される。本実施の形態においては、データ格納部４２はフラッシュメモリ１個により構成される。ホストインターフェース部４４はメモリメモリアクセス装置３６との情報の受け渡しを行うものである。メモリアクセス装置４６は半導体メモリカード４１に対してテストコマンド送出するテストコマンド送出手段４７、及びデータ書込手段４８、データ読出手段４９を有している。
【００３８】
また、書き込み速度測定時の処理フローを図１３に示す。まずメモリアクセス装置４６から送信されたコマンドと引数を、ホストインターフェース部４４を介して受信する（Ｓ１３０１）。次に、受信したコマンドを参照し、自身が認識できない不正コマンドか否かを判定する（Ｓ１３０２）。不正コマンドの場合、メモリアクセス装置にエラーを通知して処理を終了する（Ｓ１３０３）。正常コマンドである場合、そのコマンドが書き込みテストコマンドであるか判定する（Ｓ１３０４）。書き込みテストコマンド以外の場合、各コマンドに対応した他の処理を実施する（Ｓ１３０５）。書き込みテストコマンドの場合、データ格納部４２の管理情報領域２２内の書込時間格納領域４２４に納められた既測定の書き込み時間情報（具体例は、前述の図９に示す）を確認する（Ｓ１３０６）。同一条件の測定データとは、例えば書き込みサイズを同一とする書き込み時間情報としてもよく、又同一の書き込みサイズの中でもデータ格納部４２のユーザデータ領域の使用状況に応じたいくつかのパターンを準備しておき、その状況に合った書き込み時間情報としてもよい。この同一条件が存在している場合（Ｓ１３０７）は、メモリアクセス装置４６へ書き込み時間情報を送信（Ｓ１３１７）し、処理を終了する。
【００３９】
また、同一条件の測定データが存在していない場合（Ｓ１３０７）は、書き込みテストコマンドの引数に格納された書き込みサイズの情報と、メモリカード内部の管理情報領域４２２に格納されカード情報領域、すなわち、ユーザデータ領域の使用状態について情報を取得する。ユーザ領域の情報は前述した図８に示すように、物理ブロックアドレス内のセクタの使用状況の情報を保持している。これらの情報をもとに、メモリカード内部のメモリコントローラが書き込み位置を決定する。この処理は、テスト用物理アドレスの決定（Ｓ１３０８）で行われる。
【００４０】
次に、メモリコントローラ４３を介して、データ格納部４２のユーザデータ領域４２１に存在するＳ１３０８で決定した消去ブロックに存在するデータを消去する（Ｓ１３０９）。このとき有効データがあれば、消去に先立ってＲＡＭ４５への退避が自動的に行われる。次に、メモリアクセス装置４６から１セクタ分のデータを、ホストインターフェース部４４を介して受信する（Ｓ１３１０）。データの受信を完了すると、受信した１セクタ分のデータを、メモリコントローラ４３を介して、データ格納部４２のユーザデータ領域４２１へ書き込む（Ｓ１３１１）。この際の書き込み時間、すなわち、ビジー時間を測定し、ＲＡＭ４５に記録する。Ｓ１３１０、Ｓ１３１１、Ｓ１１１２のデータ受信、書き込み、書き込み時間測定処理を、１消去ブロック分のデータ書き込みが完了するまで繰り返し実施する（Ｓ１３１３）。Ｓ１３０９からＳ１３１３までの１消去ブロック分のデータ書き込み処理を、メモリアクセス装置４６から指定された書き込みサイズ分のデータ書き込みが完了するまで繰り返し実施する（Ｓ１３１４）。メモリアクセス装置４６から指定された書き込みサイズ分のデータ書き込みが完了した時点で、それまでに書き込み時間を測定したデータを集計する（Ｓ１３１５）。その結果の一例を前述の図９に示す。すなわち、１セクタ単位での書き込み時間とその最小値、最大値、及び、平均値、また、メモリアクセス装置４６からのコマンド受信から全データの書き込み終了までの時間、及び、書き込みデータサイズをＲＡＭ４５に格納する。その後、ＲＡＭ４５上のデータを書込時間情報格納領域４２４へ格納（Ｓ１３１６）し、このデータをメモリアクセス装置４６へ送信（Ｓ１３１７）し、処理を終了する。こうすれば種々の測定条件のデータが書込時間情報格納領域４２４に格納されるため、書き込み前の測定処理が不要となることが多くなり、書き込みを迅速に行うことができる。
【００４１】
尚、書き込み速度の測定は、半導体メモリカードの製造後に工場の工程検査時に行うようにしてもよい。こうすればメモリカードが工場から出荷される前に、転送速度測定が行われ、得られたデータはメモリカード内の書込時間情報格納領域４２４へ格納される。
【００４２】
（実施の形態４）
本実施の形態４のメモリアクセス装置４及び半導体メモリカードについて説明する。基本構成は図１と同様であるが、メモリアクセス装置は半導体メモリカードに対してカード内の情報開示コマンドを送出し、半導体メモリカードはこの情報開示コマンドに応じてカード内のメモリ使用状況を返送するものである。
【００４３】
図１４は実施の形態４のメモリアクセス装置及び半導体メモリカードを示すブロック図である。半導体メモリカード５１は、データ格納部５２、メモリコントローラ５３、ホストインターフェース部５４、ＲＡＭ５５により構成されている。データ格納部５２は、例えばＮＡＮＤ型フラッシュメモリにより構成され、ユーザデータ領域５２１、管理情報領域５２２が設けられる。本実施の形態においては、データ格納部５２はフラッシュメモリ１個により構成される。ホストインターフェース部５４はメモリメモリアクセス装置５６との情報の受け渡しを行うものである。メモリアクセス装置５６はカード内情報開示コマンドを発行して半導体メモリカード５１のユーザデータの使用状態を確認するカード情報取得手段５７、及びデータ書込手段５８、データ読出手段５９を有している。
【００４４】
図１５は半導体メモリカード５１のユーザデータの情報をメモリアクセス装置５６が取得する際の動作を示すフローチャートである。まずメモリアクセス装置５６から送信されたコマンドと引数を、ホストインターフェース部５４を介して受信する（Ｓ１５０１）。次に、受信したコマンドを参照し、自身が認識できない不正コマンドか否かを判定する（Ｓ１５０２）。不正コマンドの場合、メモリアクセス装置にエラーを通知して処理を終了する（Ｓ１５０３）。正常コマンドである場合、そのコマンドがカード内情報開示コマンドであるか判定する（Ｓ１５０４）。カード内情報開示コマンド以外の場合、各コマンドに対応した他の処理を実施する（Ｓ１００５）。カード内情報開示コマンドの場合、引数に格納された情報に基づき、管理情報領域５２２に格納された書き込み領域、すなわち、ユーザデータ領域の使用状態についての情報を取得する（Ｓ１５０６）。取得された情報の一例は、前述の図８と同様であり、物理ブロックアドレス内のセクタの使用状況の情報をエントリテーブルとして保持している。この情報をメモリアクセス装置５６へ送信（Ｓ１５０７）し、処理を終了する。
【００４５】
この場合にはメモリアクセス装置５６はこの使用状況に基づいてどの物理ブロックにデータを書き込むかを判断したり、カード内の情報に応じて書き込み速度を認識することができる。
【産業上の利用可能性】
【００４６】
本発明に関わるメモリアクセス装置、及び半導体メモリカードは、メモリアクセス装置側、半導体メモリカード側のいずれか、あるいは両者の処理を最適化することにより、半導体メモリカードに対する高速アクセスを実現することができる。このような半導体メモリカード、及びメモリアクセス装置は、半導体メモリカードを記録媒体として使用するデジタルＡＶ機器や携帯電話端末、ＰＣ等に利用できる。また、転送レートの高い高品質ＡＶデータを記録する記録媒体、及び機器に使用する場合、特に好適に機能する。
【図面の簡単な説明】
【００４７】
【図１】本発明の実施の形態１における半導体メモリカード、及びメモリアクセス装置の構成を示す図である。
【図２】ＮＡＮＤ型フラッシュメモリにおける消去ブロックとセクタとの一例を示した図である。
【図３】書き込み処理の一例として、消去ブロック倍数長のデータを書き込む場合における半導体メモリカード内部の処理手順の一例を示した処理フロー図である。
【図４】１セクタのデータを書き込む場合における半導体メモリカード内部の処理手順の一例を示した処理フロー図である。
【図５】２枚のフラッシュメモリを使用した半導体メモリカードの構成例を示した図である。
【図６】図５で示したフラッシュメモリ２枚で半導体メモリカードを構成した場合における、１消去ブロック書き込み時のタイミング、２消去ブロック並列書き込み時のタイミングの一例を示した図である。
【図７】本実施の形態１における内部処理フロー図である。
【図８】本実施の形態１におけるユーザデータ領域の情報の一例を示す図である。
【図９】書き込み速度を測定したデータの集計結果の一例を示す図である。
【図１０】本実施の形態２における内部処理フロー図である。
【図１１】本実施の形態２における内部処理フロー図である。
【図１２】本発明の実施の形態３における半導体メモリカード、及びメモリアクセス装置の構成を示す図である。
【図１３】本実施の形態３における内部処理フロー図である。
【図１４】本発明の実施の形態４における半導体メモリカード及びメモリアクセス装置の構成を示す図である。
【図１５】本実施の形態４における内部処理フロー図である。
【符号の説明】
【００４８】
１，３１，４１，５１  半導体メモリカード
２，３２，４２，５２  データ格納部
３，３３，４３，５３  メモリコントローラ
４，３４，４４，５４  ホストインターフェース部
５，３５，４５，５５  ＲＡＭ
６，３６，４６，５６  メモリアクセス装置
３７  ホストコマンド送出手段
３８  データ書込手段
３９  データ読出手段
３２１  ユーザデータ領域
３２２，４２２  管理情報領域
３２３，４２３  カード情報格納領域
４２４  書込時間情報格納領域
【図１】
2005222201.tif 000003
【図２】
2005222201.tif 000004
【図３】
2005222201.tif 000005
【図４】
2005222201.tif 000006
【図５】
2005222201.tif 000007
【図６】
2005222201.tif 000008
【図７】
2005222201.tif 000009
【図８】
2005222201.tif 000010
【図９】
2005222201.tif 000011
【図１０】
2005222201.tif 000012
【図１１】
2005222201.tif 000013
【図１２】
2005222201.tif 000014
【図１３】
2005222201.tif 000015
【図１４】
2005222201.tif 000016
【図１５】
2005222201.tif 000017