(57)【要約】【課題】  情報処理装置の負荷を低減し、スループットの向上を図ることが可能な情報処理装置を提供する。【解決手段】  シーケンスフラグ監視部４１はステータスチェック信号のアサートを検出したことをバッファ制御部４２に通知し、バッファ制御部４２によってバッファをディセーブルし、チップイネーブル、アウトプットイネーブル、アドレスバスを制御することによってバスアクセスを生成してフラッシュメモリ内部のシーケンスフラグをリードし、自動消去動作実行状況の監視を開始する。シーケンスフラグ監視部４１が正常終了を検出したことを通知すると、割込み生成部４３は割込み信号をアサートしてＣＰＵに対して自動消去動作の完了を通知する。シーケンスフラグ監視部４１が異常を検出したことを通知すると、エラー生成部４４はエラー信号をアサートしてＣＰＵに対して異常を通知する。【選択図】      図２                                                  
2005141338.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサのメモリ空間内に特定のコマンドシーケンス及びシーケンスフラグを含むフラッシュメモリが配置された情報処理装置であって、
前記プロセッサから前記フラッシュメモリに対してコマンドを入力することで開始される前記フラッシュメモリの内部動作を監視する監視手段を有し、
前記監視手段をハードウェアのみからなるモニタ回路に配設したことを特徴とする情報処理装置。
【請求項２】
前記フラッシュメモリの内部動作は、少なくとも前記フラッシュメモリ内部の自動消去動作及び自動書込み動作のいずれかであることを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記フラッシュメモリの内部動作の完了を割込み信号にて前記プロセッサに通知する割込み手段を前記モニタ回路に含むことを特徴とする請求項１または請求項２記載の情報処理装置。
【請求項４】
前記フラッシュメモリの内部動作の異常をエラー信号にて前記プロセッサに通知するエラー通知手段を前記モニタ回路に含むことを特徴とする請求項１から請求項３のいずれか記載の情報処理装置。
【請求項５】
前記プロセッサと前記フラッシュメモリとの間に配設されかつ前記プロセッサと前記フラッシュメモリとの間においてストローブ信号、アドレスバス、データバスとを遮断するためのバッファを含むことを特徴とする請求項１から請求項４のいずれか記載の情報処理装置。
【請求項６】
前記プロセッサから前記フラッシュメモリへのコマンドを監視するコマンド監視手段を前記モニタ回路に含み、前記監視手段が前記コマンド監視手段からの指示に応答して前記フラッシュメモリの内部動作を監視することを特徴とする請求項１から請求項５のいずれか記載の情報処理装置。
【請求項７】
プロセッサのメモリ空間内に特定のコマンドシーケンス及びシーケンスフラグを含むフラッシュメモリが配置された情報処理装置において前記フラッシュメモリを制御するフラッシュメモリ制御方法であって、ハードウェアのみからなるモニタ回路に配設された監視手段にて、前記プロセッサから前記フラッシュメモリに対してコマンドを入力することで開始される前記フラッシュメモリの内部動作を監視することを特徴とするフラッシュメモリ制御方法。
【請求項８】
前記フラッシュメモリの内部動作は、少なくとも前記フラッシュメモリ内部の自動消去動作及び自動書込み動作のいずれかであることを特徴とする請求項１記載のフラッシュメモリ制御方法。
【請求項９】
前記モニタ回路に配設された割込み手段にて、前記フラッシュメモリの内部動作の完了を割込み信号によって前記プロセッサに通知することを特徴とする請求項７または請求項８記載のフラッシュメモリ制御方法。
【請求項１０】
前記モニタ回路に配設されたエラー通知手段にて、前記フラッシュメモリの内部動作の異常をエラー信号によって前記プロセッサに通知することを特徴とする請求項７から請求項９のいずれか記載のフラッシュメモリ制御方法。
【請求項１１】
前記フラッシュメモリとの間においてストローブ信号、アドレスバス、データバスとを遮断するためのバッファを前記プロセッサと前記フラッシュメモリとの間に配設したことを特徴とする請求項７から請求項１０のいずれか記載のフラッシュメモリ制御方法。
【請求項１２】
前記モニタ回路に配設されたコマンド監視手段にて、前記プロセッサから前記フラッシュメモリへのコマンドを監視し、その監視結果に応じて前記フラッシュメモリの内部動作を監視することを特徴とする請求項７から請求項１１のいずれか記載のフラッシュメモリ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置及びそれに用いるフラッシュメモリ制御方法に関し、特にメモリ空間内に特定のコマンドシーケンス及びシーケンスフラグを持つフラッシュメモリの制御方法に関する。
【背景技術】
【０００２】
従来、この種のフラッシュメモリを備える情報処理装置においては、図６に示すように、ＣＰＵ（中央処理装置）８と、メモリコントローラ９と、シーケンスフラグ１０ａを持つフラッシュメモリ１０とから構成されている。
【０００３】
この構成において、フラッシュメモリ１０に対するバスアクセスはＣＰＵ８によって実行される以外になく、フラッシュメモリ１０の消去を実行する場合、ＣＰＵ８はアドレスバス及びデータバスに、特定の値を示す数回のライトバスアクセスにて特定のコマンドシーケンスを実行している。この場合、コマンド入力後のフラッシュメモリ１０内部のシーケンスフラグ１０ａの監視も、ＣＰＵ８によるリードバスアクセスを繰り返すことによって実行されている。
【０００４】
【特許文献１】特開２００１−３５０７３８号公報
【特許文献２】特開平０２−３１０６４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した従来のフラッシュメモリ制御方法では、フラッシュメモリの消去及び書込みにおいて、フラッシュメモリ内部のシーケンスフラグの監視をＣＰＵがリードバスアクセスを繰り返すことによって実行する必要があるため、フラッシュメモリ内部の自動消去動作あるいは自動書込み動作が実行されている間のソフトウェア処理がシーケンスフラグの監視に占有されてしまうという問題がある。
【０００６】
例えば、セクタ構成を持つフラッシュメモリの消去時間は、１セクタ当たりの消去時間と消去するセクタ数との乗算であり、数十メガビットの容量を持つフラッシュメモリの消去時間は数十秒となり、情報処理装置のスループットを低下させるには十分な時間となる。
【０００７】
そこで、本発明の目的は上記の問題点を解消し、情報処理装置の負荷を低減することができ、スループットの向上を図ることができる情報処理装置及びそれに用いるフラッシュメモリ制御方法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明による情報処理装置は、プロセッサのメモリ空間内に特定のコマンドシーケンス及びシーケンスフラグを含むフラッシュメモリが配置された情報処理装置であって、
前記プロセッサから前記フラッシュメモリに対してコマンドを入力することで開始される前記フラッシュメモリの内部動作を監視する監視手段を有し、
前記監視手段をハードウェアのみからなるモニタ回路に配設している。
【０００９】
本発明によるフラッシュメモリ制御方法は、プロセッサのメモリ空間内に特定のコマンドシーケンス及びシーケンスフラグを含むフラッシュメモリが配置された情報処理装置において前記フラッシュメモリを制御するフラッシュメモリ制御方法であって、ハードウェアのみからなるモニタ回路に配設された監視手段にて、前記プロセッサから前記フラッシュメモリに対してコマンドを入力することで開始される前記フラッシュメモリの内部動作を監視している。
【００１０】
すなわち、本発明のフラッシュメモリ制御方法は、ＣＰＵ（プロセッサ）のメモリ空間内に特定のコマンドシーケンス及びシーケンスフラグを有するフラッシュメモリが配置された情報処理装置において、ＣＰＵによってフラッシュメモリに対して消去コマンドを入力することで開始されるフラッシュメモリ内部の自動消去動作の監視をソフトウェアを介すことなく、ハードウェアのみで実現することによって、情報処理装置の負荷を低減し、スループットの向上を図るものである。
【００１１】
より具体的に説明すると、本発明のフラッシュメモリ制御方法では、フラッシュメモリを消去する場合、ＣＰＵがメモリコントローラを介してアドレスバス及びデータバスに特定の値を示すバスアクセスを実行することによって、フラッシュメモリに対して消去コマンドを入力する。同時に、ＣＰＵはフラッシュメモリステータスモニタに対し、消去コマンドを入力した旨を通知する。
【００１２】
フラッシュメモリステータスモニタはＣＰＵ及びメモリコントローラとフラッシュメモリとの間に接続される複数のバッファをディセーブルすることによって、フラッシュメモリとＣＰＵとを切離す。フラッシュメモリステータスモニタは自回路においてフラッシュメモリ内部のシーケンスフラグをリードするバスアクセスを生成し、フラッシュメモリの内部で実行されている自動消去動作を監視する。フラッシュメモリステータスモニタは自動消去動作の完了を検出すると、割込みを介してＣＰＵへその旨を通知する。
【００１３】
上記のように、本発明のフラッシュメモリ制御方法は、フラッシュメモリの内部で実行されている自動消去動作の監視をハードウェアのみで実行することによって、情報処理装置の負荷を低減し、スループットの向上を図ることが可能となる。
【発明の効果】
【００１４】
本発明は、以下に述べるような構成及び動作とすることで、情報処理装置の負荷を低減することができ、スループットの向上を図ることができるという効果が得られる。
【発明を実施するための最良の形態】
【００１５】
次に、本発明の実施例について図面を参照して説明する。図１は本発明の一実施例による情報処理装置の構成を示すブロック図である。図１において、本発明の一実施例による情報処理装置はＣＰＵ（中央処理装置）１と、メモリコントローラ２と、フラッシュメモリ３と、フラッシュメモリステータスモニタ４と、バッファ５〜７とから構成されている。フラッシュメモリ３はＣＰＵ１のメモリ空間内に特定のコマンドシーケンス及びシーケンスフラグ３ａを有している。
【００１６】
ＣＰＵ１によって実行されるバスアクセスの転送方向（リード／ライト）及びアドレスバスはメモリコントローラ２に入力される。メモリコントローラ２はフラッシュメモリ３に対するバスアクセスを検出すると、チップイネーブル、アウトプットイネーブルまたはライトイネーブルの各ストローブ信号を生成し、バッファ５を介してフラッシュメモリ３へ出力する。また、アドレスバス及びデータバスはバッファ６，７を介してフラッシュメモリ３へと接続される。
【００１７】
バッファ５を介してフラッシュメモリ３との間に接続されるチップイネーブル及びアウトプットイネーブルはフラッシュメモリステータスモニタ４にも接続される。バッファ６を介してフラッシュメモリ３との間に接続されるアドレスバス、バッファ７を介してフラッシュメモリ３との間に接続されるデータバスはそれぞれ、上記と同様に、フラッシュメモリステータスモニタ４に接続される。
【００１８】
ＣＰＵ１及びメモリコントローラ２とフラッシュメモリ３との間に接続されるバッファ５〜７のイネーブル／ディセーブル制御は、フラッシュメモリステータスモニタ４によって行われる。また、ＣＰＵ１とフラッシュメモリステータスモニタ４との間には、ＣＰＵ１がフラッシュメモリ３に対してチップイレースコマンドを入力し、フラッシュメモリ３内部のシーケンスフラグの監視を開始すべきことをフラッシュメモリステータスモニタ４へ通知するステータスチェック信号、ＣＰＵ１に対してフラッシュメモリ３内部の自動消去動作の完了を通知する割込み信号、自動消去動作の異常発生時に異常を通知するエラー信号がそれぞれ接続される。
【００１９】
図２は図１のフラッシュメモリステータスモニタ４の内部構成を示すブロック図である。図２において、フラッシュメモリステータスモニタ４はシーケンスフラグ監視部４１と、バッファ制御部４２と、割込み生成部４３と、エラー生成部４４とから構成されている。
【００２０】
フラッシュメモリ３に接続されるチップイネーブル、アウトプットイネーブル、アドレスバス、データバスはそれぞれシーケンスフラグ監視部４１に接続され、ＣＰＵ１によって制御されるステータスチェック信号もシーケンスフラグ監視部４１に接続されている。
【００２１】
シーケンスフラグ監視部４１はステータスチェック信号のアサートを検出すると、バッファ制御部４２にその旨を通知し、バッファ制御部４２によってバッファ５〜７をディセーブルし、続けてチップイネーブル、アウトプットイネーブル、アドレスバスを制御することによってバスアクセスを生成し、フラッシュメモリ３内部のシーケンスフラグ３ａをリードし、自動消去動作実行状況の監視を開始する。
【００２２】
シーケンスフラグ監視部４１は自動消去動作の監視において、正常終了を検出すると、割込み生成部４３にその旨を通知する。割込み生成部４３は割込み信号のアサートによって、ＣＰＵ１に対して自動消去動作の完了を通知する。
【００２３】
また、自動消去動作の監視において、異常を検出した場合には、エラー生成部４４にその旨を通知する。エラー生成部４４はエラー信号のアサートによって、ＣＰＵ１に対して自動消去動作に異常が発生したことを通知する。
【００２４】
さらに、シーケンスフラグ監視部４１は自動消去動作の正常終了、異常検出のいずれの場合にもバッファ制御部４２を介して、バッファ５〜７をイネーブルする。
【００２５】
図３は本発明の一実施例による情報処理装置の動作を示すフローチャートである。これら図１〜図３を参照して本発明の一実施例による情報処理装置の動作について説明する。
【００２６】
フラッシュメモリ３の消去を実行する場合、ＣＰＵ１はアドレスバス及びデータバスに特定の値を示して数回のライトバスアクセスを実行することによって、メモリコントローラ２がチップイネーブル、ライトイネーブルの各ストローブ信号を生成し、フラッシュメモリ３の消去コマンドシーケンスを実行する（図３ステップＳ１１）。
【００２７】
ＣＰＵ１は消去コマンドシーケンスを実行すると、フラッシュメモリ３内部のシーケンスフラグ３ａの監視を開始すべきことをフラッシュメモリステータスモニタ４へ通知するステータスチェック信号をアサートする（図３ステップＳ１２）。これらステップＳ１１，Ｓ１２によってＣＰＵ実行処理Ｓ１が形成される。
【００２８】
フラッシュメモリステータスモニタ４内のシーケンスフラグ監視部４１はステータスチェック信号のアサートを検出すると、バッファ制御部４２を介してバッファ５〜７をディセーブルすることによって、フラッシュメモリ３に接続され、ＣＰＵ１によって制御されるアドレスバス及びデータバス、メモリコントローラ２によって制御される各ストローブ信号をハイ・インピーダンスとし、ＣＰＵ１及びメモリコントローラ２とフラッシュメモリ３とを切離す（図３ステップＳ２１）。
【００２９】
シーケンスフラグ監視部４１はチップイネーブルと、アウトプットイネーブルと、アドレスバスとを制御することによって、リードバスアクセスを生成し、フラッシュメモリ３内部のシーケンスフラグ３ａをリードし、自動消去動作実行状況の監視を実行する（図３ステップＳ２２）。
【００３０】
シーケンスフラグ監視部４１は自動消去動作の開始を検出すると、リードバスアクセスを生成し、自動消去動作の完了を検出するまでフラッシュメモリ３内部のシーケンスフラグ３ａのリードを繰返す（図３ステップＳ２３）。
【００３１】
シーケンスフラグ監視部４１は自動消去動作の完了を検出すると、割込み生成部４３にその旨を通知する。割込み生成部４３は割込み信号のアサートによって、ＣＰＵ１に対して自動消去動作の完了を通知する（図３ステップＳ２４）。
【００３２】
また、シーケンスフラグ監視部４１はバッファ制御部４２を介してバッファ５〜７をイネーブルに戻し、ＣＰＵ１及びメモリコントローラ２とフラッシュメモリ３との接続を有効にする（図３ステップＳ２５）。
【００３３】
次に、上記のステップＳ２２の自動消去動作実行状況の監視において、自動消去動作の開始が検出されない場合の動作について説明する。この場合、シーケンスフラグ監視部４１は消去コマンドが正常に受け付けられなかったものとし、エラー生成部４４を介してＣＰＵ１へのエラー信号をアサートし、自動消去動作に異常が発生したことを通知する（図３ステップＳ２６）。
【００３４】
また、シーケンスフラグ監視部４１はバッファ制御部４２を介してバッファ５〜７をイネーブルに戻し、ＣＰＵ１及びメモリコントローラ２とフラッシュメモリ３との接続を有効にする（図３ステップＳ２５）。これらステップＳ２１〜Ｓ２６によってフラッシュメモリステータスモニタ実行処理Ｓ２が形成される。
【００３５】
このように、本実施例では、フラッシュメモリ３内部の自動消去動作の監視をソフトウェアを介すことなく、ハードウェア（フラッシュメモリステータスモニタ４）のみで実現することによって、フラッシュメモリ３内部で自動消去動作が実行されている間のソフトウェア処理が自動消去動作の監視に占有されることがなくなるので、ＣＰＵ１のメモリ空間内に特定のコマンドシーケンス及びシーケンスフラグ３ａを有するフラッシュメモリ３が配置されたシステムにおいて、情報処理装置の負荷を低減することができ、スループットの向上を図ることができる。
【００３６】
また、本実施例では、一般的に、フラッシュメモリ３の消去コマンドと書込みコマンドとがコマンドシーケンスにおけるバスアクセス回数及び設定する値が異なるのみであり、シーケンスフラグ３ａの監視方法に差異がないので、フラッシュメモリ３の消去動作に限らず、データの書込み動作においても、回路構成を変更することなく、上記の監視方法を容易に適用することが可能となる。
【００３７】
さらに、本実施例では、ハードウェアによってフラッシュメモリ３内部の自動消去動作の監視を行っている間、ＣＰＵ１とフラッシュメモリ３との間の各信号をバッファ制御によって分離するため、ＣＰＵ１のメモリ空間内に存在するフラッシュメモリ３以外のデバイスに対するアクセスに影響を与えることがないので、情報処理装置の構成に制限を与えることなく、その情報処理装置を実現することができる。
【００３８】
図４は本発明の他の実施例によるフラッシュメモリステータスモニタの内部構成を示すブロック図である。図４において、本発明の他の実施例によるフラッシュメモリステータスモニタはコマンド監視部４５を追加した以外は図２に示す本発明の一実施例によるフラッシュメモリステータスモニタ４と同様の構成となっており、同一構成要素には同一符号を付してある。
【００３９】
コマンド監視部４５はチップイネーブル、アウトプットイネーブル、ライトイネーブル、アドレスバス、データバスが接続されており、これらの信号をデコードすることによって、フラッシュメモリ３に入力される特定のコマンドシーケンスを監視する。
【００４０】
図５は本発明の他の実施例による情報処理装置の動作を示すフローチャートである。本発明の他の実施例による情報処理装置の構成は図１に示す本発明の一実施例による情報処理装置と同様の構成となっているので、これら図１と図４と図５とを参照して本発明の他の実施例による情報処理装置の動作について説明する。
【００４１】
フラッシュメモリ３の消去を実行する場合、ＣＰＵ１はアドレスバス及びデータバスに特定の値を示して数回のライトバスアクセスを実行することによって、メモリコントローラ２がチップイネーブル、ライトイネーブルの各ストローブ信号を生成し、フラッシュメモリ３の消去コマンドシーケンスを実行する（図５ステップＳ３１）。このステップＳ３１によってＣＰＵ実行処理Ｓ３が形成される。
【００４２】
フラッシュメモリステータスモニタ４内のコマンド監視部４５はチップイネーブル、アウトプットイネーブル、ライトイネーブル、アドレスバス、データバスの各信号をデコードし、フラッシュメモリ３に入力される特定のコマンドシーケンスを監視する（図５ステップＳ４１）。
【００４３】
コマンド監視部４５は有効なコマンド入力を検出すると、シーケンスフラグ監視部４１に対してフラッシュメモリ３内部のシーケンスフラグ３ａの監視を開始すべきことを通知する。
【００４４】
シーケンスフラグ監視部４１はステータスチェック信号のアサートを検出すると、バッファ制御部４２を介してバッファ５〜７をディセーブルすることによって、フラッシュメモリ３に接続され、ＣＰＵ１によって制御されるアドレスバス及びデータバス、メモリコントローラ２によって制御される各ストローブ信号をハイ・インピーダンスとして遮断し、ＣＰＵ１及びメモリコントローラ２とフラッシュメモリ３とを切離す（図５ステップＳ４２）。
【００４５】
シーケンスフラグ監視部４１はチップイネーブルと、アウトプットイネーブルと、アドレスバスとを制御することによって、リードバスアクセスを生成し、フラッシュメモリ３内部のシーケンスフラグ３ａをリードし、自動消去動作実行状況の監視を実行する（図５ステップＳ４３）。
【００４６】
シーケンスフラグ監視部４１は自動消去動作の開始を検出すると、リードバスアクセスを生成し、自動消去動作の完了を検出するまでフラッシュメモリ３内部のシーケンスフラグ３ａのリードを繰返す（図５ステップＳ４４）。
【００４７】
シーケンスフラグ監視部４１は自動消去動作の完了を検出すると、割込み生成部４３にその旨を通知する。割込み生成部４３は割込み信号のアサートによって、ＣＰＵ１に対して自動消去動作の完了を通知する（図５ステップＳ４５）。
【００４８】
また、シーケンスフラグ監視部４１はバッファ制御部４２を介してバッファ５〜７をイネーブルに戻し、ＣＰＵ１及びメモリコントローラ２とフラッシュメモリ３との接続を有効にする（図５ステップＳ４６）。
【００４９】
一方、コマンド監視部４５は有効なコマンド入力が検出できなかった場合、エラー生成部４４を介して、ＣＰＵ１に対してエラー信号をアサートし、コマンドが無効であったことを通知する（図５ステップＳ４７）。
【００５０】
この後、シーケンスフラグ監視部４１はバッファ制御部４２を介してバッファ５〜７をイネーブルに戻し、ＣＰＵ１及びメモリコントローラ２とフラッシュメモリ３との接続を有効にする（図５ステップＳ４６）。これらステップＳ４１〜Ｓ４７によってフラッシュメモリステータスモニタ実行処理Ｓ４が形成される。
【００５１】
本実施例では、フラッシュメモリ３に対するコマンド入力をハードウェアで検出し、シーケンスフラグ３ａの監視を実行するため、上述した本発明の一実施例よりも情報処理装置の負荷を低減することができる。
【００５２】
また、本実施例では、アドレスバス及びデータバスに特定の値を示し、数回のライトバスアクセスによって実行されるコマンドシーケンスをハードウェアで監視することによって、不正な値によるバスアクセスや特定のシーケンスにしたがわなかったことで、コマンドが受付けられない状態を速やかに検出することができるという新たな効果を奏する。
【図面の簡単な説明】
【００５３】
【図１】本発明の一実施例による情報処理装置の構成を示すブロック図である。
【図２】図１のフラッシュメモリステータスモニタの内部構成を示すブロック図である。
【図３】本発明の一実施例による情報処理装置の動作を示すフローチャートである。
【図４】本発明の他の実施例によるフラッシュメモリステータスモニタの内部構成を示すブロック図である。
【図５】本発明の他の実施例による情報処理装置の動作を示すフローチャートである。
【図６】従来例による情報処理装置の構成を示すブロック図である。
【符号の説明】
【００５４】
１  ＣＰＵ
２  メモリコントローラ
３  フラッシュメモリ
３ａ  シーケンスフラグ
４  フラッシュメモリステータスモニタ
５〜７  バッファ
４１  シーケンスフラグ監視部
４２  バッファ制御部
４３  割込み生成部
４４  エラー生成部
４５  コマンド監視部
【図１】
2005141338.tif 000003
【図２】
2005141338.tif 000004
【図３】
2005141338.tif 000005
【図４】
2005141338.tif 000006
【図５】
2005141338.tif 000007
【図６】
2005141338.tif 000008