(57)【要約】【課題】ソフトウエアの不具合による不正書き込みが発生した場合に、コマンドシーケンスエラーとなり即座に検出可能な記憶装置、情報処理装置及び不正書込検出方法を提供する。【解決手段】内部での状態遷移を管理するステートマシン１０６が、不正なコマンドを受け付けた際に、割込信号線１０３を使用してＣＰＵ１０１に通知することにより、フラッシュメモリ１０７への不正な書き込みの検出が可能となり、ソフトウエアの不具合の修正が容易になる。また、フラッシュメモリ１０７は、コマンド受付の為のステートマシン１０６やコントローラ１０９のような回路をもともと具備しており、大きな変更なくして前述の効果が得られる。【選択図】図１
2008234358.tif 000002
【特許請求の範囲】
【請求項１】
割込信号線を具備し、
記憶装置へのコマンドの状態遷移が不正となった場合、前記割込信号線によりＣＰＵに通知することを特徴とする記憶装置。
【請求項２】
前記記憶装置内部の状態遷移を管理する手段が、不正なコマンドを受け付けてコマンドシーケンスエラーを検出した際に、前記割込信号線を使用して前記ＣＰＵに通知することを特徴とする請求項１記載の記憶装置。
【請求項３】
最後に書き込んだアドレス、値を記録しておくデバッグレジスタをさらに具備し、
前記デバッグレジスタは、記録した内容を前記ＣＰＵに返却することを特徴する請求項１又は２記載の記憶装置。
【請求項４】
請求項１から３のいずれか１項に記載の記憶装置を有することを特徴とする情報処理装置。
【請求項５】
記憶装置への不正な書き込みを検出するための不正書込検出方法であって、
前記記憶装置へのコマンドの状態遷移が不正となった場合、割込信号によりＣＰＵに通知することを特徴とする不正書込検出方法。
【請求項６】
前記記憶装置内部の状態遷移を管理中に、不正なコマンドを受け付けてコマンドシーケンスエラーを検出した際に、前記割込信号を使用して前記ＣＰＵに通知することを特徴とする請求項５記載の不正書込検出方法。
【請求項７】
最後に書き込んだアドレス、値を記録しておき、
前記記録した内容を前記ＣＰＵに返却することを特徴する請求項５又は６記載の不正書込検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不正な書き込みを検出できる記憶装置、情報処理装置及び不正書込検出方法に関する。
【背景技術】
【０００２】
従来、ＭＭＵ(メモリマネージメントユニット:Memory Management Unit)等のメモリ管理機能を有しているＣＰＵ（中央処理装置：Central Processing Unit）であれば、不正書き込みを検出可能であるが、当該機能を有していないＣＰＵの場合、不正書き込みの検出が困難であった。すなわち、従来、ソフトウエアの不具合による誤ったアドレスへの書き込みが発生した場合、正確な場所の検出が困難であった。
【０００３】
従来技術例として、以下のものがある。
特許文献１には、メモリアレイのパリティーチェックに関してＣＰＵに通知する技術が開示されているが、コマンドのシーケンスエラーに関しては、この特許文献１には開示されていない。
特許文献２には、チップの消去エラーに関してＣＰＵに通知する技術が開示されているが、コマンドのシーケンスエラーに関しては、この特許文献２には開示されていない。
【特許文献１】特開昭６３−０６４１４７号公報
【特許文献２】特開２００５−１４１３３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、上記事情に鑑みてなされたものであり、ＣＰＵに対する割込信号線を具備し、不正書き込みなどにより、コマンドの状態遷移が不正となったときに、上記割込信号線によりＣＰＵに通知する記憶装置、情報処理装置及び不正書込検出方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
かかる目的を達成するために、請求項１記載の発明は、割込信号線を具備し、記憶装置へのコマンドの状態遷移が不正となった場合、割込信号線によりＣＰＵに通知することを特徴とする。
【０００６】
請求項２記載の発明は、請求項１記載の発明において、記憶装置内部の状態遷移を管理する手段が、不正なコマンドを受け付けてコマンドシーケンスエラーを検出した際に、割込信号線を使用してＣＰＵに通知することを特徴とする。
【０００７】
請求項３記載の発明は、請求項１又は２記載の発明において、最後に書き込んだアドレス、値を記録しておくデバッグレジスタをさらに具備し、デバッグレジスタは、記録した内容をＣＰＵに返却することを特徴する。
【０００８】
請求項４記載の発明は、請求項１から３のいずれか１項に記載の記憶装置を有することを特徴とする。
【０００９】
請求項５記載の発明は、記憶装置への不正な書き込みを検出するための不正書込検出方法であって、記憶装置へのコマンドの状態遷移が不正となった場合、割込信号によりＣＰＵに通知することを特徴とする。
【００１０】
請求項６記載の発明は、請求項５記載の発明において、記憶装置内部の状態遷移を管理中に、不正なコマンドを受け付けてコマンドシーケンスエラーを検出した際に、割込信号を使用してＣＰＵに通知することを特徴とする。
【００１１】
請求項７記載の発明は、請求項５又は６記載の発明において、最後に書き込んだアドレス、値を記録しておき、記録した内容をＣＰＵに返却することを特徴する。
【発明の効果】
【００１２】
本発明によれば、ソフトウエアの不具合による不正書き込みが発生した場合に、コマンドシーケンスエラーとなり即座に検出することが可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明を実施するための最良の形態について添付図面を参照して詳細に説明する。
【実施例１】
【００１４】
本発明の記憶装置の一実施例であるフラッシュメモリ（書き換え可能であり、電源を切ってもデータが消えない不揮発性半導体メモリ。フラッシュＲＯＭ）は、割込信号線を具備するフラッシュメモリであって、不正書き込みなどにより、フラッシュメモリへのコマンドの状態遷移が不正となったときに、上記割込信号線によりＣＰＵに通知することを特徴とする。
【００１５】
図１を用いて、本発明の実施例の構成を説明する。
図１に示すように、本発明の一実施例である情報処理装置は、ＣＰＵ１０１と、本発明の記憶装置の一実施例であるフラッシュメモリ１０７と、を有する。そして、これらＣＰＵ１０１とフラッシュメモリ１０７間には、割込信号線１０３、アドレスバス１０４、データバス１０５が具備される。
【００１６】
ＣＰＵ１０１は、アドレスバス１０４、データバス１０５を使用してフラッシュメモリ１０７のデータの取得、消去コマンドの発行、書き込みコマンドの発行などを行う。
【００１７】
フラッシュメモリ１０７は、ステートマシン１０６、Ｉ／Ｆ回路１０８、コントローラ１０９、メモリアレイ１１０を有する。
【００１８】
Ｉ／Ｆ回路１０８は、アドレスバス１０４、データバス１０５に接続され、ＣＰＵ１０１からのアクセス内容を解釈する。
【００１９】
コントローラ１０９は、ステートマシン１０６の状態により、メモリアレイ１１０からデータを読み出したり、ステートマシン１０６の状態を返却したりするなどの制御を行う。
【００２０】
ステートマシン１０６は、消去エラー、書き込みエラー、パリティエラーを検出した場合には、従来どおり読み込み動作に応じて状態をＣＰＵ１０１に返却する機能を具備し、消去エラー、書き込みエラー、パリティエラーに加えて、本実施例ではコマンドシーケンスエラーに関しても割込信号線１０３で割り込みを発生させてＣＰＵ１０１に通知することを特徴とする。
【００２１】
なお、フラッシュメモリ１０７には、電気的消去に使用する高い電圧を得る為の昇圧回路等、他にも必要な回路が存在する。しかしながら、図１においては本発明と関係のないブロックの図示を省略している。よって、図１に示すフラッシュメモリ１０７の回路構成に限定するものではない。
【００２２】
図２を用いて、本発明の実施例の動作（不正書込検出方法）を説明する。なお、以下に説明する本実施例の動作は、本実施例のフラッシュメモリがプログラムに従って制御されることにより実行される。
【００２３】
以下の説明では、例として、ＮＯＲ型フラッシュメモリにおいて、１６進数で０×ＢＡを書き込むのは、ステータスを読むことが可能なステータスモード２０２に移行するコマンド、０×ＢＢを書き込むのは、通常のランダムアクセスが可能な通常モード２０１に戻るコマンドとする。
【００２４】
ステータスモード２０２では、最後に行った消去、書き込みなどのコマンドの実行結果であるエラーコードが読み取り可能である。ステータスモード２０２では０×ＢＢ以外の書き込みはエラーとする。また、通常モード２０１で例示した０×ＢＢや他のコマンド以外の書き込みがあった場合もエラーとする。
【００２５】
通常モード２０１において０×ＢＡを書き込むことにより、ステータスモード２０２に移行する（ステップ２０３）。ステータスモード２０２で読み込み動作を行うと、ステータスを読むことが可能となる（ステップ２０５）。そして、０×ＢＢを書き込むと、通常モード２０１へ移行する（ステップ２０４）。
【００２６】
ステータスモード２０２のステップ２０５において、０×ＢＢ以外の書き込みがされた場合、もしくは、通常モード２０１で例示した０×ＢＢや他のコマンド以外の書き込みがあった場合は、図１に示す割込信号線１０３にてＣＰＵ１０１に通知する。Ｃ言語のポインタ不正などで、不正な書き込みを行った場合は、直ちに検出可能となる。
【００２７】
以上のように、本実施例によれば、内部での状態遷移を管理するステートマシン１０６が、不正なコマンドを受け付けた際に、割込信号線１０３を使用してＣＰＵ１０１に通知することにより、フラッシュメモリ１０７への不正な書き込みの検出が可能となり、ソフトウエアの不具合の修正が容易になる。また、フラッシュメモリ１０７は、コマンド受付の為のステートマシン１０６やコントローラ１０９のような回路をもともと具備しており、大きな変更なくして前述の効果が得られる。
【００２８】
よって、本実施例によれば、ソフトウエアの不具合による不正書き込みが発生した場合に、コマンドシーケンスエラーとなり即座に検出可能である。
【実施例２】
【００２９】
本実施例では、実施例１のフラッシュメモリの構成に加え、最後に書き込んだアドレス、値を記録しておくデバッグレジスタを具備することにより、不正書き込みが発生した際にデバッグを容易とすることを特徴する。
【００３０】
本実施例のフラッシュメモリは、図３に示すように、実施例１（図１）で示す構成（機能）に加え、最後に書き込んだアドレス、値を記録しておくデバッグ用のデバッグレジスタ３１１を設ける。そして、新設するデバッグレジスタモードで、デバッグレジスタ３１１の記録内容をＣＰＵ１０１に返却することにより、不正書き込みが発生した際にデバッグをさらに容易にすることが可能となる。
【００３１】
以上、本発明の実施例について説明したが、上記記載に限定されるものではなく、その要旨を逸脱しない範囲において種々の変形が可能である。
【産業上の利用可能性】
【００３２】
本発明は、組み込み機器に適用できる。
【図面の簡単な説明】
【００３３】
【図１】本発明の実施例１に係る全体構成を示すブロック図である。
【図２】本発明の実施例１に係る動作を説明するための図である。
【図３】本発明の実施例２に係る全体構成を示すブロック図である。
【符号の説明】
【００３４】
１０１、３０１    ＣＰＵ
１０３、３０３    割込信号線
１０４、３０４    アドレスバス
１０５、３０５    データバス
１０６、３０６    ステートマシン
１０７、３０７    フラッシュメモリ
１０８、３０８    Ｉ／Ｆ回路
１０９、３０９    コントローラ
１１０、３１０    メモリアレイ
２０１    通常モード
２０２    ステータスモード
【図１】
2008234358.tif 000003
【図２】
2008234358.tif 000004
【図３】
2008234358.tif 000005