(57)【要約】【課題】１回の書き込み動作で誤書き込み防止対象レジスタへの誤書き込みを防止する。【解決手段】書き込みデータを保持する第一データ保持部１１１と、第一データ保持部とは異なるタイミングで書き込みデータを保持する第二データ保持部１１２と、第一および第二データ保持部に保持されたデータの一致を比較判別して書き込みデータの誤書き込み防止対象レジスタ１２への書き込みを許可する保持データ比較部１１４とを備える。【選択図】  図１
2004164509.tif 000002
【特許請求の範囲】
【請求項１】
外部から入力される書き込みデータが書き込まれる記憶手段を有する半導体回路に搭載され、前記記憶手段への誤書き込みを防止する誤書き込み防止回路において、
前記書き込みデータを保持する第一の保持手段と、前記第一の保持手段とは異なるタイミングで前記書き込みデータを保持する第二の保持手段と、前記第一および第二の保持手段に保持された書き込みデータの一致を比較判別して前記書き込みデータの前記記憶手段への書き込みを許可する比較手段とを備える誤書き込み防止回路。
【請求項２】
請求項１記載の誤書き込み防止回路において、
前記比較手段による前記第一および第二の保持手段に保持された書き込みデータの不一致を検出して、再度前記第一および第二の保持手段に前記書き込みデータを異なるタイミングで保持させ、前記第一および第二の保持手段に保持された書き込みデータを比較させる制御手段を備える誤書き込み防止回路。
【請求項３】
外部から入力される書き込みデータが書き込まれる記憶手段を有する半導体回路に搭載され、前記記憶手段への誤書き込みを防止する誤書き込み防止方法において、
前記書き込みデータを異なるタイミングで複数保持するステップと、保持された複数の書き込みデータを比較するステップと、前記複数の書き込みデータが一致した場合に前記書き込みデータを前記記憶手段に書き込むステップとを含む誤書き込み防止方法。
【請求項４】
請求項３記載の誤書き込み防止方法において、
前記複数の書き込みデータが不一致の場合に再度前記書き込みデータを異なるタイミングで複数保持するステップと、保持された複数の書き込みデータを比較するステップと、前記複数の書き込みデータが一致した場合に前記書き込みデータを前記記憶手段に書き込むステップとを含む誤書き込み防止方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、レジスタに誤ったデータを書き込むことを防止する誤書き込み防止回路および方法に関するものである。
【０００２】
【従来の技術】
従来、例えば外部のＣＰＵ等から半導体回路内部のレジスタへデータを書き込む際に、ノイズなどが原因で誤ったデータが書き込まれることがあり、これを防止する誤書き込み防止回路がある。この誤書き込み防止回路は、誤書き込み防止対象レジスタに対して、書き込みを許可するフラグレジスタを持ち、そのフラグレジスタの値を書き換えることにより誤書き込み防止対象レジスタへの書き込みを許可する構成として、誤書き込みを防止している（特許文献１等）。
【０００３】
【特許文献１】
特開２００１−２２６４１号公報
【０００４】
【発明が解決しようとする課題】
従来の誤書き込み防止回路では、ノイズよる不正なレジスタの書き換えが行われてしまうことを防ぐために、フラグレジスタに対する書き込みと、誤書き込み防止対象レジスタに対する書き込み、即ち外部のＣＰＵから２個のレジスタへの２回の書き込み動作が必要であり、その分、外部のＣＰＵのノイズ対策処理負担を増加させている。
【０００５】
本発明は、上記問題を解決するものであり、１回の書き込み動作で誤書き込み防止対象レジスタへの誤書き込みを防止することができる誤書き込み防止回路および方法を提供することを目的とする。
【０００６】
【課題を解決するための手段】
請求項１の誤書き込み防止回路は、外部から入力される書き込みデータが書き込まれる記憶手段（誤書き込み防止対象レジスタ１２）を有する半導体回路（半導体回路１）に搭載され、前記記憶手段への誤書き込みを防止する誤書き込み防止回路（誤書き込み防止回路１３）において、前記書き込みデータを保持する第一の保持手段（第一データ保持部１１１）と、前記第一の保持手段とは異なるタイミングで前記書き込みデータを保持する第二の保持手段（第二データ保持部１１２）と、前記第一および第二の保持手段に保持されたデータの一致を比較判別して前記書き込みデータの前記記憶手段への書き込みを許可する比較手段（保持データ比較部１１４）とを備える。
【０００７】
請求項３の誤書き込み防止方法は、外部から入力される書き込みデータが書き込まれる記憶手段を有する半導体回路に搭載され、前記記憶手段への誤書き込みを防止する誤書き込み防止方法において、前記書き込みデータを異なるタイミングで複数保持するステップと、保持された複数のデータを比較するステップと、前記複数のデータが一致した場合に前記書き込みデータを前記記憶手段に書き込むステップとを含む。
【０００８】
請求項１および３に係る発明によれば、書き込みデータを異なるタイミングで複数保持し、書き込みデータの一致を判別して記憶手段への書き込みが許可されるため、１回の書き込み動作で記憶手段に対する誤書き込みを防止することができる。
【０００９】
請求項２の誤書き込み防止回路は、請求項１記載の誤書き込み防止回路において、前記比較手段による前記第一および第二の保持手段に保持されたデータの不一致を検出して、再度前記第一および第二の保持手段に前記書き込みデータを異なるタイミングで保持させ、前記第一および第二の保持手段に保持されたデータを比較させる制御手段（データ保持制御部１１３）を備える。
【００１０】
請求項４の誤書き込み防止方法は、請求項３記載の誤書き込み防止方法において、前記複数のデータが不一致の場合に再度前記書き込みデータを異なるタイミングで複数保持するステップと、保持された複数のデータを比較するステップと、前記複数のデータが一致した場合に前記書き込みデータを前記記憶手段に書き込むステップとを含む。
【００１１】
請求項２および４に係る発明によれば、保持された複数の書き込みデータが一致しない場合でも、再度、書き込みデータを異なるタイミングで複数保持し、書き込みデータの一致を判別して記憶手段への書き込みを許可するようにすることで、ノイズ等により書き込みデータが変化するような場合でも、再度の比較により記憶手段に正しいデータを書き込むことができる。
【００１２】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照し説明を行う。
（実施の形態１）
図１は、本発明の実施の形態１に係る誤書き込み防止回路を備えた半導体回路の構成を示すブロック図である。半導体回路１は、誤書き込み防止回路１１と、誤書き込み防止対象レジスタ１２とを有し、外部のＣＰＵ２に接続されている。
【００１３】
誤書き込み防止回路１１は、外部のＣＰＵ２から入力される書き込みデータを保持する第一データ保持部１１１および第二データ保持部１１２と、第一データ保持部１１１および第二データ保持部１１２に異なるタイミングでデータ保持信号を出力するデータ保持制御部１１３と、第一データ保持部１１１および第二データ保持部１１２に保持されたデータが同一であるかを比較判別する保持データ比較部１１４とを備える。
【００１４】
保持データ比較部１１４は誤書き込み防止対象レジスタライト信号を誤書き込み防止対象レジスタ１２に出力することにより、誤書き込み防止対象レジスタ１２へのデータの書き込みを許可する。
【００１５】
図２は、誤書き込み防止対象レジスタ１２へデータを書き込む手順を示すフローチャートである。外部のＣＰＵ２から半導体回路１の誤書き込み防止対象レジスタ１２への書き込み動作が発生すると、外部のＣＰＵ２からのライト信号がデータ保持制御部１１３に入力され、データ保持制御部１１３から第一データ保持信号が第一データ保持部１１１に出力され、ＣＰＵ２から入力されるデータが第一データ保持部１１１に保持される（Ｓ１）。
【００１６】
第一データ保持部１１１への第一データ保持信号と異なるタイミング、例えば第一データ保持信号の出力時点から２クロック後、データ保持制御部１１３から第二データ保持信号が第二データ保持部１１２に出力され、第二データ保持部１１２にＣＰＵ２から入力されるデータが保持される（Ｓ２）。
【００１７】
第二データ保持信号により第二データ保持部１１２にデータが保持された後、例えば第二データ保持信号の出力時点から２クロック後、データ保持制御部１１３より比較指示信号が第一データ保持部１１１および第二データ保持部１１２に同時に出力され、第一データ保持部１１１に保持されたデータおよび第二データ保持部１１２に保持されたデータが保持データ比較部１１４に取り込まれて比較される（Ｓ３）。
【００１８】
第一データ保持部１１１に保持されたデータと第二データ保持部１１２に保持されたデータが同一であれば、保持データ比較部１１４から誤書き込み防止対象レジスタライト信号が誤書き込み防止対象レジスタ１１２へ出力され、第一データ保持部１１１に保持されているデータが誤書き込み防止対象レジスタ１１２に書き込まれる（Ｓ４）。
【００１９】
第一データ保持部１１１に保持されたデータと第二データ保持部１１２に保持されたデータが同一でなければ、保持データ比較部１１４から誤書き込み防止対象レジスタライト信号は出力されず、比較データ不一致信号が外部のＣＰＵ２に出力され（Ｓ５）、データの書き込みがされなかったことをＣＰＵ２へ通知する。
【００２０】
図３は、誤書き込み防止対象レジスタ１２にデータ”ＦＦＦＦ”を書き込む際の各部の動作タイミングを示す波形図である。
【００２１】
図３（Ａ）は、書き込みデータがノイズの影響を受けず、第一データ保持部１１１と第二データ保持部１１２に同一のデータが保持される場合の波形図である。第一段階として、外部のＣＰＵ２からのライト信号がデータ保持制御部１１３に入力されることにより、第一データ保持信号が出力され、第一データ保持部１１１に外部のＣＰＵ２からの書き込みデータとして”ＦＦＦＦ”が保持される（タイミング（１））。
【００２２】
第二段階として、第一データ保持部１１１への第一データ保持信号の出力タイミングと異なるタイミング、即ち第一データ保持信号の出力時点から２クロック後、データ保持制御部１１３から第二データ保持信号が出力され、第二データ保持部１１２に外部のＣＰＵ２からの書き込みデータとして”ＦＦＦＦ”が保持される（タイミング（２））。
【００２３】
第三段階として、第二データ保持信号により第二データ保持部１１２にデータが保持された後、第二データ保持信号の出力時点から２クロック後、比較指示信号がデータ保持制御部１１３より出力され、第一データ保持部１１１に保持されたデータと第二データ保持部１１２に保持されたデータを保持データ比較部１１４で比較する。
【００２４】
この場合、第一データ保持部１１１と第二データ保持部１１２に保持されたデータが同一であるので、保持データ比較部１１４から誤書き込み防止対象レジスタライト信号が出力され（タイミング（３））、第一データ保持部１１１の保持するデータ”ＦＦＦＦ”が誤書き込み防止対象レジスタ１１２に書き込まれる（タイミング（４））。
【００２５】
図３（Ｂ）は、書き込みデータがノイズの影響を受け、第一データ保持部１１１と第二データ保持部１１２に異なるデータが保持される場合の波形図である。第一段階として、外部のＣＰＵ２からのライト信号がデータ保持制御部１１３に入力されることにより、第一データ保持信号が出力され、第一データ保持部１１１に外部のＣＰＵ２からの書き込みデータとして”ＦＦＦＦ”が保持される（タイミング（５））。
【００２６】
第二段階として、第一データ保持信号の出力タイミングと異なるタイミング、即ち第一データ保持信号の出力時点から２クロック後、データ保持制御部１１３から第二データ保持信号が出力され、第二データ保持部１１２に外部のＣＰＵ２からの書き込みデータとして”７ＦＦＦ”が保持される（タイミング６）。
【００２７】
第三段階として、第二データ保持信号により第二データ保持部１１２にデータが保持された後、第二データ保持信号の出力時点から２クロック後、比較指示信号がデータ保持制御部１１３より出力され、第一データ保持部１１１に保持されたデータと第二データ保持部１１２に保持されたデータを保持データ比較部１１４で比較する。この場合、第一データ保持部１１１と第二データ保持部１１２に保持されたデータが異なるので、保持データ比較部１１４から誤書き込み防止対象レジスタライト信号が出力されないため、誤書き込み防止対象レジスタ１１２への書き込みは行われず、比較データ不一致信号がＣＰＵ２に出力される。（タイミング（７））。
【００２８】
本実施の形態によれば、タイミングをずらして第一データ保持部１１１に保持したデータと第二データ保持部１１２に保持したデータが異なるということは、ノイズなどの影響でデータが短い時間の間に変化して不安定であることを示しており、このような場合は誤書き込み防止対象レジスタ１２に防止対象レジスタライト信号を出力しないようにして、誤書き込み防止対象レジスタ１２へのデータの書き込みを行なわないようにすることによって、従来必要であったフラグレジスタを省略でき、外部のＣＰＵ２は１度しか書き込み動作を行わなくとも、誤書き込み防止対象レジスタ１２へのデータの誤書き込みを防止することができる。これにより、外部のＣＰＵ２の誤書き込み対策処理負担を軽減させることができ、その分、ＣＰＵ２の他の処理パフォーマンスを向上させることができる。
【００２９】
（実施の形態２）
図４は、本発明の実施の形態２に係る誤書き込み防止回路を備えた半導体回路の構成を示すブロック図である。なお、図１と同一部分には同一符号を付して説明する。半導体回路１は、誤書き込み防止回路１３と、誤書き込み防止対象レジスタ１２とを有し、外部のＣＰＵ２に接続されている。
【００３０】
誤書き込み防止回路１３は、外部のＣＰＵ２から入力される書き込みデータを保持する第一データ保持部１３１および第二データ保持部１３２と、第一データ保持部１３１および第二データ保持部１３２に異なるタイミングでデータ保持信号を出力するデータ保持制御部１３３と、第一データ保持部１３１および第二データ保持部１３２に保持されたデータが同一であるかを比較判別する保持データ比較部１３４とを備える。
【００３１】
保持データ比較部１３４は誤書き込み防止対象レジスタライト信号を誤書き込み防止対象レジスタ１２に出力することにより、誤書き込み防止対象レジスタ１２へのデータの書き込みを許可する。
【００３２】
実施の形態１と異なる点は、保持データ比較部１３４が、第一データ保持部１３１の保持データと第二データ保持部１３２の保持データの比較データ不一致信号、比較データ一致信号をデータ保持制御部１３３に出力するため、比較データ不一致信号が戻ってきた場合のアクセスサイクルを伸ばす動作にあり、また、データ保持制御部１３３はアクノリッジ信号を外部のＣＰＵ２に出力することにある。
【００３３】
外部のＣＰＵ２とのアクセスがハンドシェーク方式である場合、保持データ比較部１３４でデータを比較した際に、両保持データが不一致の場合に比較データ不一致信号をデータ保持制御部１３３へ出力する構成にすることにより、誤書き込み防止対象レジスタ１２にデータが書き込まれなかった場合のアクセスサイクルを伸ばし、誤書き込み防止対象レジスタ１２へのデータの書き込みが成功するまでデータ書き込み手順を繰り返すことが可能である。
【００３４】
図５は、誤書き込み防止対象レジスタ１２へデータを書き込む手順を示すフローチャートである。外部のＣＰＵ２から誤書き込み防止対象レジスタ１２へのデータ書き込み動作が発生すると、外部のＣＰＵ２からのライト信号がデータ保持制御部１３３に入力されることにより、アクノリッジ信号がＣＰＵ２にアサートされる（Ｓ１１）。次いで、データ保持制御部１３３から第一データ保持信号が第一データ保持部１３１に出力され、第一データ保持部１３１にＣＰＵ２から入力されるデータが保持される（Ｓ１２）。
【００３５】
第一データ保持部１３１へのデータ保持信号の出力時点と異なるタイミング、例えば第一データ保持信号の出力時点から２クロック後、第二データ保持信号が第二データ保持部１３２に出力され、第二データ保持部１３２にデータが保持される（Ｓ１３）。
【００３６】
第二データ保持信号により第二データ保持部１３２にデータが保持された後、例えば第二データ保持信号の出力時点から２クロック後、比較指示信号がデータ保持制御部１３３より保持データ比較部１３４に出力され、第一データ保持部１３１に保持されたデータと第二データ保持部１３２に保持されたデータが比較される（Ｓ１４）。
【００３７】
第一データ保持部１３１に保持されたデータと第二データ保持部１３２に保持されたデータが同一であれば、保持データ比較部１３４は誤書き込み防止対象レジスタ１２に誤書き込み防止対象レジスタライト信号を出力し、第一データ保持部１３１に保持されているデータが誤書き込み防止対象レジスタ１２に書き込まれる（Ｓ１５）。次いで保持データ比較部１３４から比較データ一致信号がデータ保持制御部１３３に出力され、データ保持制御部１３３はアクノリッジ信号をネゲートする（Ｓ１６）。
【００３８】
第一データ保持部１３１に保持されたデータと第二データ保持部１３２に保持されたデータが同一でなければ、保持データ比較部１３４から比較データ不一致信号がデータ保持制御部１３３に出力され（Ｓ１７）、データの書き込みがなされなかったことをデータ保持制御部１３３に通知し、これにより、データ保持制御部１３３はステップＳ１２の処理に戻って、再度誤書き込み防止対象レジスタ１２への書き込み処理を行う。
【００３９】
図６は、誤書き込み防止対象レジスタ１２にデータ”ＦＦＦＦ”を書き込む際の各部の動作タイミングを示す波形図である。図６において、最初の書き込み処理では、書き込みデータがノイズの影響を受け、第一データ保持部１３１と第二データ保持部１３２に異なるデータが保持され、二度目の書き込み処理では同一のデータが保持された場合の波形が示されている。
【００４０】
第一段階として、外部のＣＰＵ２からのライト信号がデータ保持制御部１３３に入力されることにより、第一データ保持信号が出力され、第一データ保持部１３１に外部のＣＰＵ２からの書き込みデータとして”ＦＦＦＦ”が保持される（タイミング（８））。同時にＣＰＵ２にアクノリッジ信号がアサートされる（タイミング（９））。
【００４１】
第二段階として、第一データ保持信号の出力タイミングと異なるタイミング、即ち第一データ保持信号の出力時点から２クロック後、データ保持制御部１３３から第二データ保持信号が出力され、第二データ保持部１３２に外部のＣＰＵ２からの書き込みデータとして”７ＦＦＦ”が保持される（タイミング（１０））。
【００４２】
第三段階として、第二データ保持信号により第二データ保持部１３２にデータが保持された後、第二データ保持信号の出力時点から２クロック後、比較指示信号がデータ保持制御部１３３より保持データ比較部１３４に出力され、第一データ保持部１３１に保持されたデータと第二データ保持部１３２に保持されたデータを保持データ比較部１３４で比較する。
【００４３】
この場合、第一データ保持部１３１と第二データ保持部１３２に保持されたデータが異なるので、比較データ不一致信号がデータ保持制御部１３３に出力される（タイミング（１１））。
【００４４】
そのため、再度の第一段階として、データ保持制御部１３３から第一データ保持信号が第一データ保持部１３１に出力され、第一データ保持部１３１に外部のＣＰＵ２からの書き込みデータとして”ＦＦＦＦ”が保持される（タイミング（１２））。
【００４５】
再度の第二段階として、第二データ保持信号が出力され、第二データ保持部１３２に外部のＣＰＵ２からの書き込みデータとして”ＦＦＦＦ”が保持される（タイミング（１３））。
【００４６】
再度の第三段階として、第二データ保持信号により第二データ保持部１３２にデータが保持された後、比較指示信号がデータ保持制御部１３３より保持データ比較部１３４に出力され、第一データ保持部１３１に保持されたデータと第二データ保持部１３２に保持されたデータを保持データ比較部１３４で比較する。
【００４７】
この場合、第一データ保持部１３１と第二データ保持部１３２に保持されたデータは同一であるので、保持データ比較部１３４から誤書き込み防止対象レジスタライト信号が誤書き込み防止対象レジスタ１２に出力され（タイミング（１４））、第一データ保持部１３１の保持するデータが誤書き込み防止対象レジスタ１２に書き込まれる（タイミング（１５））。同時に比較データ一致信号がデータ保持制御部１３３に出力され、データ保持制御部１３３よりアクノリッジ信号がネゲートされる（タイミング（１６））。
【００４８】
本実施の形態によれば、第一段階で第一データ保持部１３１に保持されるデータと第二段階で第二データ保持部１３２に保持されるデータが同一でない限り、誤書き込み防止対象レジスタ１２へのデータの書き込みは行われず、ノイズによる誤書き込みの可能性を低減することが可能であるのみならず、ノイズ等によるデータの変化が生じた場合でも、誤書き込み防止回路１３の内部で再度書き込み手順を繰り返すため、外部のＣＰＵ２から再度書き込み動作を行う必要は無く、必ず誤書き込み防止対象レジスタ１２へ正しいデータを書き込むことができる。
【００４９】
【発明の効果】
以上説明したように、本発明によれば、書き込みデータを異なるタイミングで複数保持し、書き込みデータの一致を判別して記憶手段への書き込みを許可するため、１回の書き込み動作で記憶手段に対する誤書き込みを防止することができる。これにより、ノイズ等による誤書き込みの可能性を大幅に低減することが可能である。
【図面の簡単な説明】
【図１】本発明の第一の実施の形態に係る誤書き込み防止回路を備えた半導体回路の構成を示すブロック図である。
【図２】図１に示した誤書き込み防止対象レジスタへデータを書き込む手順を示すフローチャートである。
【図３】図１に示した誤書き込み防止対象レジスタにデータ”ＦＦＦＦ”を書き込む際の各部の動作タイミングを示す波形図である。
【図４】本発明の第二の実施の形態に係る誤書き込み防止回路を備えた半導体回路の構成を示すブロック図である。
【図５】図４に示した誤書き込み防止対象レジスタへデータを書き込む手順を示すフローチャートである。
【図６】図４に示した誤書き込み防止対象レジスタにデータ”ＦＦＦＦ”を書き込む際の各部の動作タイミングを示す波形図である。
【符号の説明】
１  半導体集積回路
２  ＣＰＵ
１１、１３  誤書き込み防止回路
１２  誤書き込み防止対象レジスタ
１１１、１３１  第一データ保持部
１１２、１３２  第二データ保持部
１１３、１３３  データ保持制御部
１１４、１３４  保持データ比較部
【図１】
2004164509.tif 000003
【図２】
2004164509.tif 000004
【図３】
2004164509.tif 000005
【図４】
2004164509.tif 000006
【図５】
2004164509.tif 000007
【図６】
2004164509.tif 000008