(57)【要約】【課題】初期化の後のデータの書き換え又は消去から保護されるレジスタを有する半導体装置を提供すること。【解決手段】初期化の際に所定の値が入力されるレジスタ回路と、前記レジスタ回路を、初期化の後の書き込み又は消去から保護するプロテクト手段とを有し、前記レジスタ回路は、クロック信号のエッジをトリガとして書き込み又は消去が行われ、前記プロテクト手段は、前記レジスタ回路に入力される前記クロック信号を遮断する半導体装置。【選択図】図２
2008140166.tif 000002
【特許請求の範囲】
【請求項１】
初期化の際に所定の値が入力されるレジスタ回路と、
前記レジスタ回路を、初期化の後の書き込み又は消去から保護するプロテクト手段と、
を有する半導体装置。
【請求項２】
前記レジスタ回路は、クロック信号のエッジをトリガとして書き込み又は消去が行われ、
前記プロテクト手段は、前記レジスタ回路に入力される前記クロック信号を遮断すること
を特徴とする請求項１記載の半導体装置。
【請求項３】
前記プロテクト手段は、プロテクトレジスタ回路として構成され、
前記レジスタ回路の初期化の後に、前記プロテクトレジスタ回路に対し、所定の値が入力されることにより、前記レジスタ回路を書き込み又は消去から保護することを特徴とする請求項１記載の半導体装置。
【請求項４】
前記プロテクト手段は、外部から信号が入力される端子を有して構成され、
前記端子から所定の値が入力された場合に、前記プロテクト手段は、前記レジスタ回路を書き込み又は消去から保護すること
を特徴とする請求項１記載の半導体装置。
【請求項５】
前記レジスタ回路は、前記半導体装置のコンフィギュレーションデータを保持することを特徴とする請求項１記載の半導体装置。
【請求項６】
コンピュータに、
レジスタ回路に対し、所定の値を入力するレジスタ回路初期化ステップと、
前記レジスタ初期化ステップの後に、前記レジスタ回路を書き込み又は消去から保護するプロテクト回路に所定の値を入力するプロテクト回路初期化ステップと、
を実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置及びコンピュータプログラムに関する。
【背景技術】
【０００２】
従来から、記憶領域に保持されるデータのうち、装置やシステム等の起動時の初期化の後に、書き換えられないように保護されるのが望ましいデータを保護する機能を有する装置又は方法がある。
【０００３】
例えば、特開平１１−２３７９８３号公報（特許文献１）には、ワンチップマイコンにおけるブート領域にアクセスする際に、ＣＰＵが保持する所定のレジスタを介することにより、アクセスの許可を判断する方法が開示されている。
【０００４】
ところで、パーソナルコンピュータ等で使用されるコントローラＬＳＩ等において、そのＬＳＩの機能等を設定するためのコンフィギュレーションデータを保持するレジスタを有するＬＳＩがある。そのようなレジスタは、ＬＳＩの初期化の際に、設定値が保持されているシリアルＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）（以下、「ＳＲＯＭ」という。）等から読み出された所定の値を保持する。
【０００５】
このようなコンフィギュレーションデータは、初期化の後は、書き換えられないことが望ましい。そこで、書き換えから保護する方法として、コンフィギュレーションデータを保持するレジスタへのアクセスの前に、キーコードレジスタに所定のキーコードを書き込むことにより、コンフィギュレーションレジスタへのアクセスが許可される方法がある。
【特許文献１】特開平１１−２３７９８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、キーコードによるアクセスの制限方法では、キーコードが判れば、コンフィギュレーションデータを保持するレジスタへのアクセスを行うこと可能になるため、ＬＳＩやＬＳＩを有する装置等の設計者が意図しない設定を、操作者が設定することが可能になってしまうという課題があった。
【０００７】
本発明は、上記の点に鑑みて、これらの問題を解消するために発明されたものであり、初期化の後のデータの書き換え又は消去から保護されるレジスタ回路を有する半導体装置を提供することを目的としている。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の半導体装置は次の如き構成を採用した。
【０００９】
本発明の半導体装置は、初期化の際に所定の値が入力されるレジスタ回路と、前記レジスタ回路を、初期化の後の書き込み又は消去から保護するプロテクト手段と、を有する構成とすることができる。
【００１０】
これにより、初期化の後のデータの書き換え又は消去から保護されるレジスタ回路を有する半導体装置を提供することができる。
【００１１】
また、上記目的を達成するために、本発明の半導体装置は、さらに、前記レジスタ回路は、クロック信号のエッジをトリガとして書き込み又は消去が行われ、前記プロテクト手段は、前記レジスタ回路に入力される前記クロック信号を遮断するように構成することができる。
【００１２】
これにより、レジスタ回路への書き込み又は消去のトリガとなるクロックが遮断されることにより、レジスタ回路を書き込み又は消去から保護することができる。
【００１３】
また、上記目的を達成するために、本発明の半導体装置は、さらに、前記プロテクト手段は、プロテクトレジスタ回路として構成され、前記レジスタ回路の初期化の後に、前記プロテクトレジスタ回路に対し、所定の値が入力されることにより、前記レジスタ回路を書き込み又は消去から保護するように構成することができる。
【００１４】
これにより、プロテクトレジスタ回路が、レジスタ回路の初期化の後に、初期化されることにより、レジスタ回路を書き込み又は消去から保護することができる。
【００１５】
また、上記目的を達成するために、本発明の半導体装置は、さらに、前記プロテクト手段は、外部から信号が入力される端子を有して構成され、前記端子から前記レジスタ回路の初期化の後に所定の値が入力された場合に、前記プロテクト手段は、前記レジスタ回路を書き込み又は消去から保護することように構成することができる。
【００１６】
これにより、外部から所定の信号を入力することにより、レジスタ回路を書き込み又は消去から保護することができる。
【００１７】
また、上記目的を達成するために、本発明の半導体装置は、さらに、前記レジスタ回路は、前記半導体装置のコンフィギュレーションデータを保持するように構成することができる。
【００１８】
これにより、コンフィギュレーションデータを、新たな書き込み又は消去から保護することができる。
【００１９】
また、上記目的を達成するために、本発明のコンピュータプログラムは、さらに、コンピュータに、レジスタ回路に対し、所定の値を入力するレジスタ回路初期化ステップと、前記レジスタ初期化ステップの後に、前記レジスタ回路を書き込み又は消去から保護するプロテクト回路に所定の値を入力するプロテクト回路初期化ステップとを実行させるように構成することができる。
【発明の効果】
【００２０】
本発明の半導体装置によれば、初期化の後のデータの書き換え又は消去から保護されるレジスタを有する半導体装置を提供することが可能になる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施例を図面に基づき説明する。    
〔第一の実施の形態〕
（キーコードによる保護の例）
本発明の理解を容易にするために、本発明の実施の形態の説明に先立ち、キーコードによるレジスタ回路の保護について説明する。なお、「レジスタ回路の保護」とは、レジスタ回路を、データの書き込み又は保持するデータの消去から、保護することをいう。
【００２２】
図１は、３２ビットのキーコードレジスタを説明する図である。図１（Ａ）は、キーコードレジスタに、例えば、ＡＡＢＢＣＣＤＤｈの値が書き込まれ保持されている場合に、保護されるレジスタへの書き込み又は保護されるレジスタが保持する値の消去が可能になる。
【００２３】
図１（Ｂ）は、キーコードを含む例である。図１（Ｂ）では、０から３１ビットのうち、２４ビットから３１ビットまでがキーコードを保持するアドレスである。２４ビットから３１ビットまでの８ビットに、例えば、ＡＡｈの値が書き込まれ保持されている場合に、０から２３ビットのアドレスへの書き込み又は値の消去が可能になる。
【００２４】
（本発明の一実施の形態に係るプロテクト手段の例）
図２は、本発明の一実施の形態に係るプロテクト手段の例である。図２では、レジスタ回路１０が、プロテクト手段２０によって保護される。レジスタ回路１０は、書き込まれた値を保持する手段である。レジスタ回路１０は、例えば、入力される書き込みクロック信号のエッジをトリガとして、値の書き込み、読み出し、又は、消去を行う。プロテクト手段２０は、レジスタ回路１０への値の書き込み、又は、レジスタ回路１０が保持する値の消去を遮断する手段である。プロテクト手段２０は、例えば、入力されるデータ２の値が所定の値の場合に、レジスタ回路１０へのデータ１の書き込みを遮断し、レジスタ回路１０を保護する。
【００２５】
（外部端子を有するプロテクト手段の例）
図３は、本発明の一実施の形態に係る半導体装置の例であって、プロテクト手段がＩＣの外部端子を有する場合の例である。図３の例では、ＩＣ１００が有するレジスタ回路１０へのデータ１の書き込み又は消去を、プロテクト手段である回路２１及び端子２２によって制限する。回路２１は、端子２２から入力されるデータ２の値に基づき、レジスタ回路１０への書き込み又は消去からの保護を行う。
【００２６】
（プロテクトレジスタ回路として構成されるプロテクト手段の例）
図４は、プロテクトレジスタ回路として構成されるプロテクト手段の例である。図４では、プロテクトレジスタ回路２０ａが、レジスタ回路１０ａへのデータの書き込み又は消去の保護を行う。
【００２７】
プロテクトレジスタ回路２０ａは、フリップフロップ２３、インバータ２４、ＡＮＤ回路２５、及び、ＡＮＤ回路２６を有する。フリップフロップ２３は、クロックＷＲＣＫ２のエッジをトリガとして、ＷｒｉｔｅＤａｔａ２を取り込み、次に更新されるまでその値を保持する。インバータ２４は、フリップフロップ２３の出力を反転させる。インバータ２４の出力は、ＡＮＤ回路２５及びＡＮＤ回路２６へ出力される。
【００２８】
ＡＮＤ回路２５は、フリップフロップ２３からインバータ２４を経て出力される分周信号と、フリップフロップ２３への書き込み等のトリガとなるクロックＷＲＣＫ２との、論理和を出力する。
【００２９】
ＡＮＤ回路２６は、インバータ２４からの出力と、フリップフロップ１０ａへの書き込みのトリガとなるクロックＷＲＣＫ１との論理和を出力する。
【００３０】
以上の構成により、ＷｒｉｔｅＤａｔａ２として、値１を入力すると、フリップフロップ２３を経てインバータ２４から出力される値は０となり、インバータ２４から、ＡＮＤ回路２５及びＡＮＤ回路２６に対し、値０が供給される。
【００３１】
そこで、フリップフロップ２３への書き込みのトリガとなるクロック信号ＷＲＣＫ２と値０とが入力されたＡＮＤ回路２５の出力は０になる。ＡＮＤ回路２５の出力が０になることにより、フリップフロップ２３は、保持した値１が書き換えられることなく、インバータ２４に対して値１を出力し続ける。
【００３２】
一方、フリップフロップ１０ａへの書き込みのトリガとなるクロック信号ＷＲＣＫ１と値０とが入力されたＡＮＤ回路２６の出力は０になるため、フリップフロップ１０ａは、トリガとなるクロック信号のエッジが入力されず、書き込み又は消去から保護される。
【００３３】
そこで、初期化の際に、先ずフリップフロップ１０ａに対して所定の値ＷｒｉｔｅＤａｔａ１を入力し、その後に、フリップフロップ２３に対して所定の値ＷｒｉｔｅＤａｔａ２として値１を入力することにより、初期化されたフリップフロップ１０ａが、保持する値の書き換え又は消去から保護される。
【００３４】
なお、レジスタ回路の初期化とは、ＩＣのブート時又はリセット時に、図示しないＳＲＯＭ等に保持されている所定の値が入力されることである。
【００３５】
そこで、初期化の際に入力される値を保持するＳＲＯＭが保持する値により、プロテクト手段２０ａによるフリップフロップ１０ａの保護の機能を有効又は無効にすることができる。すなわち、フリップフロップ１０ａを保護する場合には、フリップフロップ２３に対して初期化の際に入力される値としてＳＲＯＭが１を保持し、フリップフロップ１０ａを保護しない場合には、フリップフロップ２３に対して初期化の際に入力される値としてＳＲＯＭが０を保持する。
【００３６】
また、図４では、レジスタであるフリップフロップ１０ａが１ビットの値を保持する場合の例であるが、本発明の実施の形態は、図４の例に限らない。多ビットの値を保持するレジスタに対しても、同様に拡張できることは、図４より容易に理解できる。
【００３７】
（コンピュータの構成）
図５は、本発明の半導体装置の一実施の形態であるＣＰＵを含むコンピュータによって制御される画像形成装置の構成図である。図５の画像形成装置は、主処理部４００、入力デバイス４１０、表示装置４２０、プリンタ４３０、スキャナ４４０、及び、ＨＤＤ４９０を有する。主処理部４００は、コンピュータの機能を実現する部分であり、ＣＰＵ４０１、ＲＯＭ４０８、及び、ＲＡＭ４０９を有する。ＣＰＵ４０１は、コンピュータプログラムをＲＯＭ４０８等から読み出し、ＲＡＭ４０９に展開して実行する。ＣＰＵ４０１は、例えば、レジスタ回路１０及びプロテクト手段２０を有し、コンピュータプログラムに基づく手順により、それらのレジスタ回路１０及びプロテクト手段２０の初期化を行う。
【００３８】
ＲＯＭ４０８は不揮発性のメモリであり、ＣＰＵ４０１によって実行されるプログラム、及び、画像形成装置の制御に必要なパラメータ等を保持する。ＲＡＭ４０９は、ＣＰＵ４０１が処理を行う際の、ワークメモリである。
【００３９】
入力デバイス４１０は、例えば、キーボード等であり、操作者が指示の入力を行う際に使用する。表示装置４２０は、コンピュータの状態等の表示を行う。プリンタ４３０は、画像を媒体に形成して出力する装置であり、スキャナ４４０は、媒体上に形成された画像を光学的に読み取る装置である。ＨＤＤ４９０は、画像のデータ等の大容量のデータを格納する。
【００４０】
本発明のコンピュータプログラムは、ＨＤＤ４９０、又は、ＲＯＭ４０８に格納される他に、その他図示しないドライブ装置に挿入可能な記録媒体に格納されていてもよい。
【００４１】
以上、発明を実施するための最良の形態について説明を行ったが、本発明は、この最良の形態で述べた実施の形態に限定されるものではない。本発明の主旨をそこなわない範囲で変更することが可能である。
【図面の簡単な説明】
【００４２】
【図１】キーコードによるレジスタの保護の例。
【図２】本発明の一実施の形態に係るプロテクト手段の例。
【図３】外部端子を有するプロテクト手段の例。
【図４】プロテクトレジスタ回路として構成されるプロテクト手段の例。
【図５】本発明の一実施の形態に係るコンピュータプログラムを実行するコンピュータの構成の例。
【符号の説明】
【００４３】
１、２  データ
１０、１０ａ  レジスタ回路
２０、２０ａ  プロテクト手段
２１  回路
２２  端子
２３  フリップフロップ
２４  インバータ
２５  ＡＮＤ回路
２６  ＡＮＤ回路
４００  コンピュータの主処理部
４０１  ＣＰＵ
４０８  ＲＯＭ
４０９  ＲＡＭ
４１０  入力デバイス
４２０  表示装置
４３０  プリンタ
４４０  スキャナ
４９０  ＨＤＤ
【図１】
2008140166.tif 000003
【図２】
2008140166.tif 000004
【図３】
2008140166.tif 000005
【図４】
2008140166.tif 000006
【図５】
2008140166.tif 000007