(57)【要約】【課題】誤ったデータの書き込みを防止し、信頼性の高いレジスタ装置を提供することを目的とする。【解決手段】書き込まれたデータと次に書き込まれるデータが所定の関係を満たす必要のあるレジスタ装置において、データバス２００上のデータがｎビットレジスタ１１０に書き込まれたデータに対して所定の関係を満たす場合にのみレｎビットジスタ１１０にデータバス２００上のデータを保持する構成にすることにより、誤ったデータの書き込みを防止し、信頼性の高いレジスタ装置を提供することができる。また、書き込み要求時にｎビットレジスタ１１０に格納されたデータとデータバス２００上のデータを比較してその結果が所定の関係でない場合には、誤り検出信号４００を出力して書き込みに不具合があることを検出し、書き込みに不具合がある場合にはそれを検知しながら、誤ったデータの書き込みを防止し、信頼性の高いレジスタ装置を提供することができる。【選択図】    図２
2004295696.tif 000002
【特許請求の範囲】
【請求項１】
データを格納する任意ビット長のレジスタと、
前記レジスタの保持データが書き込みを要求されているデータと所定の関係であることを判別して書き込み許可信号を出力するデータデコード回路と、
前記書き込み許可信号とデータ書き込みを要求する書き込み制御信号を入力してデータ書き込み要求時に前記レジスタの保持データが前記書き込みを要求されているデータと所定の関係である時に制御信号を出力する第１の論理回路と、
前記レジスタの保持データと前記書き込みを要求されているデータを入力して前記制御信号の制御によって前記レジスタの保持データが前記書き込みを要求されているデータと所定の関係である時に前記書き込みを要求されているデータを前記レジスタに出力するセレクタと
を有し、書き込み要求時であり、かつ前記レジスタの保持データが前記書き込みを要求されているデータと所定の関係である時にのみ、前記書き込みを要求されているデータを前記レジスタに格納することを特徴とするレジスタ装置。
【請求項２】
前記書き込み許可信号と前記書き込み制御信号を入力し、書き込み要求時であり、かつ前記レジスタの保持データが前記書き込みを要求されているデータと所定の関係でない場合に、誤り検出信号を出力する第２の論理回路を有することを特徴とする請求項１記載のレジスタ装置。
【請求項３】
前記所定の関係として、前記レジスタの保持データと前記書き込みを要求されているデータの差異が１ビット分の差異であることを特徴とする請求項１または請求項２のいずれかに記載のレジスタ装置。
【請求項４】
前記所定の関係として、前記レジスタの保持データと前記書き込みを要求されているデータの差異が０ビット目と１ビット目が同時に異なるか、または、０ビット目と２ビット目が同時に異なることを特徴とする請求項１または請求項２のいずれかに記載のレジスタ装置。
【請求項５】
前記所定の関係として、所定の制御信号が入力されている時に、前記レジスタの保持データと前記書き込みを要求されているデータの差異が０ビット目または１ビット目にあることを特徴とする請求項１または請求項２のいずれかに記載のレジスタ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はマイクロプロセッサ等に使用されるレジスタ装置に関する。
【０００２】
【従来の技術】
マイクロプロセッサ等の制御装置に用いられるレジスタ装置は、レジスタの仕様事項として、前記レジスタの保持データと格納するデータとの間に一定の関係を規定しているものが多く存在する。
【０００３】
ところが、従来のレジスタ装置は、次に書き込むデータの値に関係なく、ＣＰＵからのライトイネーブル信号がイネーブル状態であり、かつ、アドレスデコーダが予め設定された値をデコードした時に、前記レジスタに値が格納される（例えば、特許文献１参照）。
【０００４】
【特許文献１】
特開平０４−９７６４０号公報
【０００５】
【発明が解決しようとする課題】
しかしながら、上記従来のレジスタ装置は入力される信号の状態によっては、装置が誤動作する場合があった。
【０００６】
すなわち、マイクロプロセッサ等の制御装置を定義するような重要な値を保持するレジスタ装置においては、外来ノイズ等の影響によって無関係なデータが書き込まれないことが要求される。ところが、従来のレジスタ装置では、書き込むデータの値に関係なくレジスタへデータを格納してしまう。そのため、外来のノイズ等の影響で回路全体が暴走し、その重要なレジスタに対して無関係なデータが書き込まれてしまう可能性があり、最悪の場合は正常な動作に復帰できないことも生じるという問題点があった。
【０００７】
本発明はかかる問題点に鑑み、誤ったデータの書き込みを防止し、信頼性の高いレジスタ装置を提供することを目的とする。
【０００８】
【課題を解決するための手段】
本発明の請求項１記載のレジスタ装置は、データを格納する任意ビット長のレジスタと、前記レジスタの保持データが書き込みを要求されているデータと所定の関係であることを判別して書き込み許可信号を出力するデータデコード回路と、前記書き込み許可信号とデータ書き込みを要求する書き込み制御信号を入力してデータ書き込み要求時に前記レジスタの保持データが前記書き込みを要求されているデータと所定の関係である時に制御信号を出力する第１の論理回路と、前記レジスタの保持データと前記書き込みを要求されているデータを入力して前記制御信号の制御によって前記レジスタの保持データが前記書き込みを要求されているデータと所定の関係である時に前記書き込みを要求されているデータを前記レジスタに出力するセレクタとを有し、書き込み要求時であり、かつ前記レジスタの保持データが前記書き込みを要求されているデータと所定の関係である時にのみ、前記書き込みを要求されているデータを前記レジスタに格納することを特徴とする。
【０００９】
請求項２記載のレジスタ装置は、請求項１記載のレジスタ装置において、前記書き込み許可信号と前記書き込み制御信号を入力し、書き込み要求時であり、かつ前記レジスタの保持データが前記書き込みを要求されているデータと所定の関係でない場合に、誤り検出信号を出力する第２の論理回路を有することを特徴とする。
【００１０】
請求項３記載のレジスタ装置は、請求項１または請求項２のいずれかに記載のレジスタ装置において、前記所定の関係として、前記レジスタの保持データと前記書き込みを要求されているデータの差異が１ビット分の差異であることを特徴とする。
【００１１】
請求項４記載のレジスタ装置は、請求項１または請求項２のいずれかに記載のレジスタ装置において、前記所定の関係として、前記レジスタの保持データと前記書き込みを要求されているデータの差異が０ビット目と１ビット目が同時に異なるか、または、０ビット目と２ビット目が同時に異なることを特徴とする。
【００１２】
請求項５記載のレジスタ装置は、請求項１または請求項２のいずれかに記載のレジスタ装置において、前記所定の関係として、所定の制御信号が入力されている時に、前記レジスタの保持データと前記書き込みを要求されているデータの差異が０ビット目または１ビット目にあることを特徴とする。
【００１３】
このことにより、誤ったデータの書き込みを防止し、信頼性の高いレジスタ装置を提供することができる。
【００１４】
【発明の実施の形態】
（実施の形態１）
本来、重要な動作の制御に用いられるレジスタ装置に書き込まれる、ＣＰＵ等を制御する命令データは１ビットのみをアクティブにすることにより操作することが一般的である。ただし、外来ノイズ等の影響により、誤ったデータが書き込まれてしまう可能性もあり、回路の信頼性を下げる要因になっていた。
【００１５】
以下、本発明の実施の形態１について、図１，図３，図４を用いて説明する。ここで、実施の形態１のレジスタ装置は、ｎ番目にレジスタに書き込まれる値と（ｎ＋１）番目にレジスタに書き込まれる値とが１ビットのみ異なる場合のみ正常動作する仕様を有するものであるとする。
【００１６】
図１は本発明の実施の形態１におけるレジスタ装置の構成を示すブロック図、図３は本発明のレジスタ装置の動作を説明するタイミングチャート、図４は本発明のレジスタ装置におけるデータデコード回路の回路図である。
【００１７】
図１において、レジスタ装置１００はｎビットレジスタ１１０とデータデコード回路１２０とセレクタ１５０とで構成され、ｎビットのデータバス２００を介してＣＰＵ３００に接続されている。データデコード回路１２０は比較回路１２１とデコード回路１２２から構成されている。
【００１８】
ｎビットレジスタ１１０はｎビットのデータを格納する記憶装置である。
データデコード回路１２０はｎビットレジスタ１１０の保持データとｎビットのデータバス２００の値とを比較回路１２１を用いて比較し、デコード回路１２２はその比較結果が所定の関係を満たしていることを判別する。その判別後の書き込み許可信号１２３とＣＰＵ３００から出力される書込み制御信号１３０との論理積をとり、その出力信号１４０はセレクタ１５０の制御端子へと接続される。
【００１９】
セレクタ１５０はｎビットレジスタ１１０の保持データとｎビットのデータバス２００のデータを信号１４０の値によって選択し、ｎビットレジスタ１１０へ接続する。
【００２０】
図４において、比較回路１２１はｎビットレジスタの保持データとｎビットのデータバス上の格納データをビット毎に排他的論理和する。論理和したそれぞれの結果を加算器１２７で加算し、一致回路１２８で‘１’と比較をとり、一致している場合は書込み許可信号１２３が‘１’となる。
【００２１】
以上のように構成されたレジスタ装置の動作を、図１，３を用いて説明する。動作の説明は、８ビットレジスタの保持データと８ビットデータバス上のデータの関係が１ビットのみ異なる場合に前記レジスタへの書き込みを許可するデータデコード回路を搭載したレジスタ装置を例に、書き込みが行なわれる場合と行なわれない場合とに分けて説明する。
【００２２】
まず、書き込み動作が行われる場合は、例えば、ＣＰＵ３００より８ビットデータバス２００にＴ１時にデータが出力され、Ｔ２時に書き込み制御信号１３０が出力される。また、データデコード回路１２０において、８ビットレジスタ１１０の保持データ（０ｘ００）と８ビットデータバス２００上のデータ（０ｘ０１）を比較し、１ビットのみデータの値が異なるため、Ｔ１時に書き込み許可信号１２３を出力し、セレクタ１５０は８ビットデータバス２００のデータを出力する。８ビットレジスタはセレクタ１５０の出力をＴ３時のクロック信号１１１によって格納することにより、８ビットデータバス２００の値を保持することになる。
【００２３】
次に、書き込み動作が行われない場合は、例えば、ＣＰＵ３００より８ビットデータバス２００にＴ４時にデータが出力され、Ｔ５時に書き込み制御信号１３０が出力される。また、データデコード回路１２０において、８ビットレジスタ１１０の保持データ（０ｘ０１）と８ビットデータバス２００上のデータ（０ｘＦＦ）を比較し、１ビット以上データの値が異なるため、Ｔ４時に書き込み許可信号１２３は出力されず、セレクタ１５０は８ビットデータバス２００のデータではなく、前記レジスタ１１０の保持データを出力する。８ビットレジスタはセレクタ１５０の出力をクロック信号１１１によって格納し、結果として８ビットレジスタには保持データがそのまま格納される。
【００２４】
以上のように、書き込まれたデータと次に書き込まれるデータの違いが１ビットとなる仕様のレジスタにおいて、書き込まれたデータとデータバス上のデータを比較してデータの違いが１ビットの場合に書き込み許可信号を出力し、この書き込み許可信号により、書き込まれたデータとデータバス上のデータのうちからデータバス上のデータを選択してレジスタに保持することにより、誤ったデータの書き込みを防止し、信頼性の高いレジスタ装置を提供することができる。
【００２５】
（実施の形態２）
次に本発明の実施の形態２におけるレジスタ装置の構成を、図２，図３を用いて詳細に説明する。
【００２６】
ここで、実施の形態２のレジスタ装置は、ｎ番目にレジスタに書き込まれる値と（ｎ＋１）番目にレジスタに書き込まれる値とが１ビットのみ異なる場合のみ正常動作する仕様を有するものであるとする。
【００２７】
図２は本発明の実施の形態２におけるレジスタ装置の構成を示すブロック図であり、実施の形態１におけるレジスタ装置に、さらに誤り検出信号出力用の回路１６０を搭載している。
【００２８】
誤り検出信号出力用の回路１６０は、データ書き込み許可信号１２３の負論理出力とＣＰＵ３００から出力されるデータ書き込み制御信号１３０の論理積をとり、前記レジスタの保持データと次格納データが所定の関係でなく、かつＣＰＵ３００から書き込み制御信号が出力された場合、誤り検出信号４００を出力する。
【００２９】
以上のように構成された実施の形態２のレジスタ装置の動作を、図２，３を用いて説明する。基本的な動作は、前述の実施の形態１での動作説明と同じであるため、前記レジスタへ書き込みが行なわれる場合と行なわれない場合の誤り検出信号出力についてのみ説明する。
【００３０】
まず、書き込みが行なわれる場合の誤り検出信号の動作については、例えば、Ｔ１時に書き込み許可信号１２３が出力され、Ｔ２時にＣＰＵ３００からデータ書き込み制御信号１３０が出力される。そのため、誤り検出信号４００は出力されず、正常にレジスタへ書き込みが行なわれる。
【００３１】
次に、書き込みが行なわれない場合の誤り検出信号の動作については、Ｔ５時にＣＰＵ３００からデータ書き込み制御信号１３０が出力されるが、データデコード回路にて１ビット以上のデータ変化を検出し、データ書き込み許可信号１２３が出力されないため、Ｔ５時に誤り検出信号４００が出力される。
【００３２】
以上のように、書き込まれたデータと次に書き込まれるデータの違いが１ビットとなる仕様のレジスタにおいて、レジスタに格納されたデータとデータバス上のデータを比較してデータの違いが１ビットの場合に書き込み許可信号を出力し、書き込み制御信号が入力された書き込み要求時にこの書き込み許可信号が出力されていない場合には誤り検出信号を出力して書き込みに不具合があることを検出し、この書き込み許可信号により、書き込まれたデータとデータバス上のデータのうちからデータバス上のデータを選択してレジスタに保持することにより、書き込みに不具合がある場合にはそれを検知しながら、誤ったデータの書き込みを防止し、信頼性の高いレジスタ装置を提供することができる。
【００３３】
（実施の形態３）
次に本発明の実施の形態３におけるレジスタ装置の構成を、図１，図２，図５を用いて詳細に説明する。
【００３４】
図５は本発明の実施の形態３におけるデータデコード回路の回路図である。
ここでは、タイマ制御用のレジスタの場合について説明し、タイマ制御用のレジスタが、タイマカウントクロック選択用ビットと同時に他のタイマ機能選択用ビットを同時に変更してはいけないという仕様を有するものであるとする。
【００３５】
そこで、本発明の実施の形態３におけるレジスタ装置は、本発明の実施の形態１または実施の形態２のレジスタ装置において、データデコード回路１２０の構成を、「０ビット目と１ビット目が同時に変化してはいけない」または「０ビット目と２ビット目が同時に変化してはいけない」という条件を満たした時にレジスタへの書き込みを許可するように、図４から図５に置き換えたものである。
【００３６】
図５において、比較回路１２１はｎビットレジスタの保持データとｎビットのデータバス上の格納データをビット毎に排他的論理和する。論理和したそれぞれの結果を、本発明の実施の形態３におけるデータデコードの条件に基づき、第０ビット目の比較結果１２４と第１ビット目の比較結果１２５の排他的論理和をとり、第０ビット目の比較結果１２４と第２ビット目の比較結果１２６の排他的論理和をとる。その結果をそれぞれ第０ビット目の比較結果の負論理と論理和し、その結果を論理積することにより、書込み許可信号１２３を生成する。
【００３７】
以上のように構成された実施の形態３のレジスタ装置の基本的な動作と効果は、前述の実施の形態１、２での動作説明と同じであるため、説明は割愛する。
（実施の形態４）
次に本発明の実施の形態４におけるレジスタ装置の構成を、図１，図２，図６を用いて詳細に説明する。
【００３８】
図６は本発明の実施の形態４におけるデータデコード回路の回路図である。
ここでは、割込み制御用のレジスタの場合について説明する。
割込み制御用のレジスタにおいて、マスカブル割込み許可信号が許可状態のときには、予期しない割込みが発生してしまう場合があるため、割込み制御レジスタのあるビットに対して書込み動作を行なってはいけないという仕様を有するものがある。
【００３９】
本発明の実施の形態４におけるレジスタ装置は、本発明の実施の形態１または実施の形態２のレジスタ装置において、データデコード回路１２０の構成を、下記仕様に伴い、図４から図６に置き換えたものである。
【００４０】
ここで、実施の形態４のレジスタ装置は、制御信号１２９が‘Ｈ’レベルのときは、ｎビットレジスタにおいて、０ビット目と１ビット目の書込み動作を禁止する仕様であるとする。
【００４１】
図６は本発明の実施の形態４におけるデータデコード回路の内部回路を示すものである。
図６において、比較回路１２１はｎビットレジスタの保持データの０ビット目と１ビット目とｎビットのデータバス上の格納データの０ビット目と１ビット目をビット毎に排他的論理和する。論理和したそれぞれの結果を、本発明の実施の形態４における禁止事項に基づき、第０ビット目の比較結果１２４もしくは第１ビット目の比較結果１２５と制御信号１２９の排他的論理和をとる。その結果を論理積することにより、書込み許可信号１２３を生成する。
【００４２】
以上のように構成された実施の形態４のレジスタ装置の基本的な動作と効果は、前述の実施の形態１、２での動作説明と同じであるため、説明は割愛する。
【００４３】
【発明の効果】
以上のように、書き込まれたデータと次に書き込まれるデータが所定の関係を満たす必要のあるレジスタ装置において、データバス上のデータがレジスタに書き込まれたデータに対して所定の関係を満たす場合にのみレジスタにデータバス上のデータを保持する構成にすることにより、誤ったデータの書き込みを防止し、信頼性の高いレジスタ装置を提供することができる。
【００４４】
また、書き込み要求時にレジスタに格納されたデータとデータバス上のデータを比較してその結果が所定の関係でない場合には、誤り検出信号を出力して書き込みに不具合があることを検出し、書き込みに不具合がある場合にはそれを検知しながら、誤ったデータの書き込みを防止し、信頼性の高いレジスタ装置を提供することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態１におけるレジスタ装置の構成を示すブロック図
【図２】本発明の実施の形態２におけるレジスタ装置の構成を示すブロック図
【図３】本発明のレジスタ装置の動作を説明するタイミングチャート
【図４】本発明のレジスタ装置におけるデータデコード回路の回路図
【図５】本発明の実施の形態３におけるデータデコード回路の回路図
【図６】本発明の実施の形態４におけるデータデコード回路の回路図
【符号の説明】
１００    レジスタ装置
１１０    ｎビットレジスタ
１１１    クロック信号
１２０    データデコード回路
１２１    比較回路
１２２    デコード回路
１２３    書き込み許可信号
１３０    書き込み制御信号
１４０    信号
１５０    セレクタ
１６０    誤り検出信号出力用の回路
２００    データバス
３００    ＣＰＵ
４００    誤り検出信号
１２４    第０ビット目の比較結果
１２５    第１ビット目の比較結果
１２６    第２ビット目の比較結果
１２７    加算器
１２８    一致回路
１２９    制御信号
【図１】
2004295696.tif 000003
【図２】
2004295696.tif 000004
【図３】
2004295696.tif 000005
【図４】
2004295696.tif 000006
【図５】
2004295696.tif 000007
【図６】
2004295696.tif 000008