(57)【要約】【課題】ライトプロテクト解除に関するシリアルＥＥＰＲＯＭ書き込み方式を提供する。【解決手段】シリアルＥＥＰＲＯＭインターフェイス部４は、ホストＣＰＵからの命令によりシリアルＥＥＰＲＯＭ５のアクセスを行う手段と、ホストＣＰＵからアクセス可能なステータスストアレジスタと、シリアルＥＥＰＲＯＭ５のライトアクセス時に、ＷＲＤＩ（Ｗｒｉｔｅ  Ｄｉｓａｂｌｅ  ）コマンドとステータスリードコマンドを自動発行する手段と、リードしたステータスストアレジスタの値をステータスストアレジスタに格納する機能を設けた。こうすることでライトアクセス時にＷＲＤＩコマンドとステータスリードコマンドを自動発行するため煩雑な制御を必要とせず、システム負荷を軽減することが可能である。【選択図】        図１
2004227421.tif 000002
【特許請求の範囲】
【請求項１】
シリアルＥＥＰＲＯＭインターフェイス部は、
ホストＣＰＵからの命令によりシリアルＥＥＰＲＯＭのアクセスを行う手段と、
前記ホストＣＰＵからアクセス可能なステータスストアレジスタと、
前記シリアルＥＥＰＲＯＭのライトアクセス時に、ＷＲＤＩ（Ｗｒｉｔｅ  Ｄｉｓａｂｌｅ）コマンドとステータスリードコマンドを自動発行する手段と、
リードしたステータスストアレジスタの値をステータスストアレジスタに格納する手段を有することを特徴とするシリアルＥＥＰＲＯＭ書き込み方式。
【請求項２】
前記シリアルＥＥＰＲＯＭインターフェイス部は、
前記ステータスリードコマンドを自動発行し、前記ステータスストアレジスタに格納した後、前記ステータスストアレジスタのＷＥＬ（Ｗｒｉｔｅ  Ｅｎａｂｌｅ  Ｌａｔｃｈ）ビットが０の時に割込みを発生する手段を有することを特徴とする請求項１に記載のシリアルＥＥＰＲＯＭ書き込み方式。
【請求項３】
前記シリアルＥＥＰＲＯＭインターフェイス部は、
前記シリアルＥＥＰＲＯＭのライトアクセス時にＷＲＤＩコマンドとステータスライトコマンドとステータスリードコマンドを自動発行しする手段を有し、
前記ステータスストアレジスタのＢＰ０、ＢＰ１ビット（Ｍｅｍｏｒｙ  Ｂｌｏｃｋ  ＷｒｉｔｅＰｒｏｔｅｃｔｉｏｎ  Ｂｉｔ  ）によってライトプロテクトされているメモリエリアがある場合は、前記メモリエリアとライトするメモリアドレスを比較し一致した場合に割込みを発生する手段を有することを特徴とする請求項２に記載のシリアルＥＥＰＲＯＭ書き込み方式。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、マイクロプロセッサシステム内のシリアルＥＥＰＲＯＭの書込み方式に関する。
【０００２】
【従来の技術】
電気的にデータのリードライト可能な不揮発性メモリであるＥＥＰＲＯＭをメモリ空間内に持つマイクロプロセッサシステムにおいて、特にＳＰＩ（Ｓｉｒｉａｌ  Ｐｅｒｉｐｈｅｒａｌ  Ｉｎｔｅｒｆａｃｅ  ）の方式のシリアルインターフェイスを有するＥＥＰＲＯＭはメモリのライトプロテクト機能を有している。
【０００３】
上記ＥＥＰＲＯＭは、ステータスレジスタを内蔵しており、ステータスレジスタのＷＥＬ（Ｗｒｉｔｅ  Ｅｎａｂｌｅ  Ｌａｔｃｈ）ビットが０のとき全てのメモリがライトプロテクトされる。
【０００４】
またＷＥＬビットは、ＷＲＤＩ（Ｗｒｉｔｅ  Ｄｉｓａｂｌｅ  ）コマンドで０にクリアされ、ＷＲＥＮ（Ｓｅｔ  Ｗｒｉｔｅ  Ｅｎａｂｌｅ  Ｌａｔｃｈ）コマンドで１にセットされる。さらにライトアクセス終了時に０にクリアされる。
【０００５】
そのため、システムプログラムは、ライトコマンドを発行する前に、ＷＲＥＮコマンドを実行し、ＷＥＬビットを１にセットしてライトプロテクトを解除する必要がある。
【０００６】
また、より確実にシステムを動作させるためには、上記動作に続いて、ステータスレジスタリードコマンドを実行し、ＷＥＬビットが１であることを確認することが推奨される。
【０００７】
上記動作はライトコマンドを実行する度に必要となり、煩雑な制御を必要とし、システムの負荷を増大させる。
【０００８】
さらに上記ＥＥＰＲＯＭは、メモリブロックライトプロテクト機能を有しステータスレジスタのＷＥＬビットが１のときでもステータスレジスタのＢＰ０、ＢＰ１ビット（Ｍｅｍｏｒｙ  Ｂｌｏｃｋ  Ｗｒｉｔｅ  Ｐｒｏｔｅｃｔｉｏｎ  Ｂｉｔ  ）によって特定のメモリエリアをライトプロテクトする機能を持つ。
【０００９】
そのため、システムプログラムは、ライトコマンドを発行する前に、ＷＲＥＮコマンドを実行し、ＷＥＬビットを１にセットしてライトプロテクトを解除する必要があり、さらにライトステータスレジスタコマンドを発行してＢＰ０、ＢＰ１ビットを０にクリアしてメモリブロックライトプロテクトを解除する必要がある。
【００１０】
また、より確実にシステムを動作させるためには、上記動作に続いて、ステータスレジスタリードコマンドを実行し、ＷＥＬビットが１であることを確認することが推奨され、さらにＢＰ０、ＢＰ１ビットが０であることを確認することが推奨される。
【００１１】
上記動作はライトコマンドを実行する度に必要となり、煩雑な制御を必要とし、システムの負荷を増大させる。
【００１２】
コマンド制御に関しては、特許文献１記載の技術の様に同一バス上に接続される内部処理機能付きメモリに対するコマンド制御を自動に行う制御技術は存在するが、本発明のようにライトプロテクト解除に関するものはない。
【００１３】
【特許文献１】
特開２０００−１０５７３４号公報
【００１４】
【発明が解決しようとする課題】
本発明は、上記の問題点を鑑みたものであり、請求項毎に以下の目的を採り上げた。
【００１５】
請求項１に係る発明は、ライトアクセス時にＷＲＤＩコマンドとステータスリードコマンドを自動発行するため煩雑な制御を必要とせず、システム負荷を軽減することが可能であるシリアルＥＥＰＲＯＭ書き込み方式を提供することを目的とする。
【００１６】
請求項２に係る発明は、ライトアクセス時にＷＲＤＩコマンドとステータスリードコマンドを自動発行し、ライトプロテクトされている場合は割込みを発生するためシステムプログラムはライトプロテクトされているためにライトコマンドが正常に終了しなかったことを割込みによって知ることができるシリアルＥＥＰＲＯＭ書き込み方式を提供することを目的とする。
【００１７】
請求項３に係る発明は、ライトアクセス時にＷＲＤＩコマンドとステータスライトコマンドとステータスリードコマンドを自動発行し、ライトプロテクトされている場合は割込みを発生するためシステムプログラムはライトプロテクトされているためにライトコマンドが正常に終了しなかったことを割込みによって知ることができるシリアルＥＥＰＲＯＭ書き込み方式を提供することを目的とする。
【００１８】
【課題を解決するための手段】
かかる目的を解決するため、請求項１に記載の発明は、シリアルＥＥＰＲＯＭインターフェイス部は、ホストＣＰＵからの命令によりシリアルＥＥＰＲＯＭのアクセスを行う手段と、ホストＣＰＵからアクセス可能なステータスストアレジスタと、シリアルＥＥＰＲＯＭのライトアクセス時に、ＷＲＤＩ（Ｗｒｉｔｅ  Ｄｉｓａｂｌｅ  ）コマンドとステータスリードコマンドを自動発行する手段と、リードしたステータスストアレジスタの値をステータスストアレジスタに格納する手段を有することを特徴とする。
【００１９】
請求項２に記載の発明は、請求項１に記載の発明において、シリアルＥＥＰＲＯＭインターフェイス部は、ステータスリードコマンドを自動発行し、ステータスストアレジスタに格納した後、ステータスストアレジスタのＷＥＬ（Ｗｒｉｔｅ  Ｅｎａｂｌｅ  Ｌａｔｃｈ）ビットが０の時に割込みを発生する手段を有することを特徴とする。
【００２０】
請求項３に記載の発明は、請求項２に記載の発明において、シリアルＥＥＰＲＯＭインターフェイス部は、シリアルＥＥＰＲＯＭのライトアクセス時にＷＲＤＩコマンドとステータスライトコマンドとステータスリードコマンドを自動発行しする手段を有し、ステータスストアレジスタのＢＰ０、ＢＰ１ビット（ＭｅｍｏｒｙＢｌｏｃｋ  Ｗｒｉｔｅ  Ｐｒｏｔｅｃｔｉｏｎ  Ｂｉｔ  ）によってライトプロテクトされているメモリエリアがある場合は、メモリエリアとライトするメモリアドレスを比較し一致した場合に割込みを発生する手段を有することを特徴とする。
【００２１】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
【００２２】
＜構成＞
まず本実施例システムの構成をを図１に示し、各部の作概要を説明する。
【００２３】
制御部１は、メモリ１（２）に記憶されているシステムプログラムに従い装置全体を制御する。
【００２４】
メモリ１（２）は、ランダムアクセスメモリで装置全体を制御するシステムプログラムが記憶されている。
【００２５】
メモリ２（３）は、ランダムアクセスメモリでプログラムのワークエリア等に使用される。
【００２６】
シリアルＥＥＰＲＯＭインターフェイス部４は、シリアルＥＥＰＲＯＭ５とのデータ転送を行う。
【００２７】
シリアルＥＥＰＲＯＭ５は、電気的にリードライト可能な不揮発性メモリで、バックアップが必要なデータを格納する。
【００２８】
システムバス６は、各部がデータ転送を行う役割を担う。
【００２９】
シリアルＥＥＰＲＯＭのインターフェイスには、Ｉ２Ｃ（ＩＩＣ：Ｉｎｔｅｒ  ＩＣ  Ｂｕｓ）、Ｍｉｃｒｏｗｉｒｅ  Ｂｕｓ  、ＳＰＩ（Ｓｉｒｉａｌ  Ｐｅｒｉｐｈｅｒａｌ  Ｉｎｔｅｒｆａｃｅ  ）の方式が知られており、インターフェイスの用途は、ＥＥＰＲＯＭにとどまらず広く活用されている。
本実施形態は、ＳＰＩ（Ｓｉｒｉａｌ  Ｐｅｒｉｐｈｅｒａｌ  Ｉｎｔｅｒｆａｃｅ  ）方式のシリアルＥＥＰＲＯＭに関するものである。
【００３０】
ＳＰＩ方式ＥＥＰＲＯＭのメモリデータのリードライトは、インストラクション、アドレスを順次送信し、続いてデータを送受信する。それから上記メモリデータのリードライトとは別に、ＥＥＰＲＯＭのステータスレジスタをリードライトすることが可能であり、この場合は、インストラクションを送信し、続いてデータを送受信する。
【００３１】
またＥＥＰＲＯＭは、メモリのライトプロテクション機能を有し、ＷＲＤＩコマンドでメモリのライトプロテクトをオンし、ＷＲＥＮコマンドでオフする。この場合は、インストラクションのみを送信する。メモリがライトプロテクトされているか否かは、ステータスレジスタのＷＥＬビットにて確認でき、ＷＥＬ＝０でライトプロテクトされている。またＥＥＰＲＯＭは、メモリライトを実行した後にＷＥＬを０にクリアする。
【００３２】
さらにＥＥＰＲＯＭは、メモリブロックライトプロテクト機能を有し、ステータスレジスタのＷＥＬビットが１のときでもステータスレジスタのＢＰ０、ＢＰ１ビットによって特定のメモリエリアをライトプロテクトすることが可能である。
【００３３】
ライトプロテクトするエリアとＢＰ０、ＢＰ１の関係はデバイス毎に異なるが、下記に１例を示す。
ＢＰ１＝０、ＢＰ０＝０  のとき全エリアライトプロテクトなし。
ＢＰ１＝０、ＢＰ０＝１  のときメモリの上位１／４をライトプロテクト。
ＢＰ１＝１、ＢＰ０＝０  のときメモリの上位１／２をライトプロテクト。
ＢＰ１＝１、ＢＰ０＝１  のとき全エリアライトプロテクト。
【００３４】
＜動作＞
請求項１〜３を実現するシリアルＥＥＰＲＯＭインターフェイス部４の実施例１〜３をそれぞれ図２〜４に示し、各部の動作概要を説明する。
【００３５】
＜実施例１＞
ホストインターフェイス部４−１は、制御部１からのメモリライト要求がある場合、アドレスを送信アドレス生成部４−３に渡し、データを送信データ生成部４−４に渡す。
また制御部１からのメモリリード要求がある場合、アドレスを送信アドレス生成部４−３にし、受信データバッファ部４−５のデータを制御部１に渡す。
また制御部１からのステータスレジスタライト要求がある場合、データを送信データ生成部４−４に渡す。
また制御部１からのステータスレジスタリード要求がある場合、受信データバッファ部４−５のデータを制御部１に渡す。
【００３６】
インストラクション生成部４−２は、制御部１からのメモリリード要求及びステータスレジスタリードライト要求及びＷＲＤＩコマンドまたはＷＲＥＮコマンド要求に応じ、インストラクションコードを生成し、シリアルデータ転送を開始する。
特に実施例１では、メモリライトコマンド要求を受け取ると、ＷＲＥＮインストラクションコードを生成し、シリアルデータ転送を行い、ステータスレジスタリードのインストラクコードを生成し、シリアルデータ転送を行い、メモリライトのインストラクコードを生成し、シリアルデータ転送を行う。
【００３７】
送信アドレス生成部４−３は、ホストインターフェイス部４−１からのアドレスを格納する。
【００３８】
送信データ生成部４−４は、ホストインターフェイス部４−１からのデータを格納する。
【００３９】
受信データバッファ部４−５は、受信データ制御部４−８からのデータを格納する。
【００４０】
クロック生成部４−６は、インストラクション生成部４−２がシリアルデータ転送を開始すると、チップセレクトをアサートし、シリアルデータクロックを送信する。
【００４１】
送信データ制御部４−７は、インストラクション生成部４−２がシリアルデータ転送を開始すると、インストラクション生成部４−２からのインストラクション、送信アドレス生成部４−３からの送信アドレス、ライト要求の場合は送信データ生成部４−４からの送信データを順次、パラレル−シリアル変換し送信する。
【００４２】
受信データ制御部４−８は、受信データをシリアル−パラレル変換し、受信データバッファ部４−５に渡す。
【００４３】
ステータスストアレジスタ４−９は特に実施例１では、メモリライトコマンド要求時のステータスレジスタリード動作完了後、受信データバッファ４−５のデータを格納する。
【００４４】
＜実施例２＞
実施例２では実施例１に対し更に割込み生成部４−１０を備え、割込み生成部４−１０は、ステータスストアレジスタ４−９のＷＥＬビットが０の時に割込み要求を発行する。
その他の各部は実施例１と同様である。
【００４５】
＜実施例３＞
実施例２との相違点を説明する。その他の各部は実施例１と同様である。
【００４６】
インストラクション生成部４−２は、特に実施例３では、メモリライトコマンド要求を受け取ると、ＷＲＥＮインストラクションコードを生成し、シリアルデータ転送を行う。
またステータスレジスタライトのインストラクコードを生成し、シリアルデータ転送を行う。
またステータスレジスタリードのインストラクコードを生成し、シリアルデータ転送を行う。
またメモリライトのインストラクコードを生成し、シリアルデータ転送を行う。
【００４７】
送信データ生成部４−４は、ホストインターフェイス部４−１からのデータを格納する。
特に実施例３では、メモリライトコマンド要求を受け取ると、ステータスレジスタライトのインストラクコード生成時に、ＢＰ０、ＢＰ１ビットをクリアするデータを生成する。
【００４８】
割込み生成部４−１は、特に実施例３では、ステータスストアレジスタ４−９のＢＰ０、ＢＰ１ビットのいずれかが１の場合はライトプロテクトされているメモリエリアとライトアドレスを比較し、ライトするアドレスがライトプロテクトされている場合に割込み要求を発行する。
【００４９】
【発明の効果】
本発明により、以下の効果を得られる。
【００５０】
請求項１に記載の発明は、ライトアクセス時にＷＲＤＩコマンドとステータスリードコマンドを自動発行するため煩雑な制御を必要とせず、システム負荷を軽減することが可能である。
【００５１】
請求項２に記載の発明は、ライトアクセス時にＷＲＤＩコマンドとステータスリードコマンドを自動発行し、ライトプロテクトされている場合は割込みを発生するためシステムプログラムはライトプロテクトされているためにライトコマンドが正常に終了しなかったことを割込みによって知ることができる。
【００５２】
請求項３に記載の発明は、ライトアクセス時にＷＲＤＩコマンドとステータスライトコマンドとステータスリードコマンドを自動発行し、ライトプロテクトされている場合は割込みを発生するためシステムプログラムはライトプロテクトされているためにライトコマンドが正常に終了しなかったことを割込みによって知ることができる。
【図面の簡単な説明】
【図１】本発明に関する構成図である。
【図２】実施例１に関するシリアルＥＥＰＲＯＭインターフェイス部４の内部構成図である。
【図３】実施例２に関するシリアルＥＥＰＲＯＭインターフェイス部４の内部構成図である。
【図４】実施例３に関するシリアルＥＥＰＲＯＭインターフェイス部４の内部構成図である。
【符号の説明】
４  シリアルＥＥＰＲＯＭインターフェイス部
４−１  ホストインターフェイス部
４−２  インストラクション生成部
４−３  送信アドレス生成部
４−４  送信データ生成部
４−５  受信データバッファ部
４−６  クロック生成部
４−７  送信データ制御部
４−８  受信データ制御部
４−９  ステータスストアレジスタ
４−１０  割込み生成部
【図１】
2004227421.tif 000003
【図２】
2004227421.tif 000004
【図３】
2004227421.tif 000005
【図４】
2004227421.tif 000006