(57)【特許請求の範囲】
【請求項１】
二重化されたシステムクロック発生部を有するシステムクロック同期装置において、
他の系からのクロックを受けて、自系と他系のクロックの位相を検出する位相検出部と、
該位相検出部の出力を受けて、クロックの遅延量を制御するＣＰＵを内蔵した回路遅延作成部と、
前記アクト系とスタンバイ系のＣＰＵ間を接続し、位相情報のやりとりを行なうメートＣＣインタフェースと、
を具備すると共に、二重系のシステムクロックが同期した時の各遅延量を記憶する記憶手段を前記回路遅延作成部内に設け、
前記回路遅延作成部は、ＣＰＵによりクロック遅延量を自動的に設定することができるように構成されていることを特徴とするシステムクロック同期装置。
【請求項２】
前記回路遅延作成部は、複数の遅延出力を受けるデコーダと、該デコーダに入力する遅延量を選択するＣＰＵとを具備することを特徴とする請求項１記載のシステムクロック同期装置。
【請求項３】
位相調整自動化のために、両系に折り返し信号を具備することを特徴とする請求項１記載のシステムクロック同期装置。
【請求項４】
前記位相検出部は、自己のクロックと他系のクロックとを受けて双方の位相差を検出し、検出結果を前記回路遅延作成部に与えることを特徴とする請求項１記載のシステムクロック同期装置。
【請求項５】
二重化系装置のバックワイアリングボード上で双方の系の配線長を調整することを特徴とする請求項１記載のシステムクロック同期装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はシステムクロック同期装置に関する。プロセッサハードウェアの開発時、部品ロッドのばらつきにより発生するクロック信号のばらつきが生じるため、初期設定時、及び工場出荷時にクロックの位相調整を工注（ディップスイッチにより所定の状態を設定すること）にて行ない、その後、出荷している。これをＰＷＣＢ（プリント・ワイアリング・サーキット・ボード）毎に人手で設定しなければならないので、これを改良する必要があった。
【０００２】
【従来の技術】
図５は従来システムの構成例を示す図である。図では、システム０とシステム１の二重化構成を示している。システム０において、１はクロックを発生するクロック発振器、２はクロックの制御を行なうＣＰＵ、３は発振器１の出力を受けてクロックの制御を行なうクロックコントロール回路で、ＣＰＵ２から制御信号を受ける。
【０００３】
４はクロックコントロール回路３の出力を所定時間遅らせるディレイライン、５はディレイライン４の出力を受けて他系に出力するバッファ、６はクロックコントロール回路３の出力を所定時間遅らせるディレイライン、７はディレイライン６の出力と、他系からのクロックを受けて、何れか一方を選択するセレクタである。
【０００４】
８は該セレクタ７の出力を受けてクロックを出力するバッファ、９は他系からのクロックを受けるバッファで、その出力はセレクタ７の一方の入力に入っている。そして、バッファ８の出力が被同期化装置２０に与えられている。被同期化装置２０としては、例えば各種のＩ／Ｏ装置等が考えられる。
【０００５】
一方、システム１系の構成もシステム０系と同じである。即ち、クロック発振器１１、ＣＰＵ１２、クロックコントロール回路１３、ディレイライン１４、バッファ１５、ディレイライン１６、セレクタ１７、バッファ１８、バッファ１９から構成されている。２１はバッファ１８の出力を受ける被同期化装置で、非同期装置２０と同様のものである。
【０００６】
このように構成されたシステムにおいて、０系がアクト系（現用系）、１系がスタンバイ系（待機系）であるものとすると、セレクタ７は、ディレイライン６の出力を選択し、バッファ８を介して出力される。一方、１系では、セレクタ１７は、バッファ１９を介して入力される０系のクロックを選択し、バッファ１８を介して出力される。この時、両系のクロックの位相が合うように、ＣＰＵ２，１２がディレイライン４，６，１４，１６の遅延量を制御する。そして、０系又は１系の何れか一方がアクト系となり、他方がスタンバイ系となる。通常動作状態においては、図に示すようにシステム０クロックとシステム１クロックとは同期がとれている。
【０００７】
このようなシステムのプロセッサボードでは、設計から出荷までに、以下の工程をとっている。
▲１▼ＰＷＣＢ試作設計時にクロックの遅延を計算し、両系の位相が一致するようにある程度の予想を立てる。遅延のｍｉｎ／ｍａｘ値の間で調整が可能なようにディレイラインを挿入し、工注回路にて調整できる回路にする。
【０００８】
▲２▼試作評価時に、工注を設定し、二重化系装置の位相調整により、ロッドのばらつきも考慮したディレイライン値の大枠を決定する。
▲３▼量産設計時に、試作評価にて設定したライン値に固定する。
【０００９】
▲４▼量産出荷品にて、最後の位相調整を行ない、工注を固定する。そして、カバーをつけてフィールドにて工注設定に変更ができないようにしてある。
ところが、上記の場合、各部品のテクノロジ変更やロッドのばらつきにより工注にて調整しきれない場合は、再度回路を変更する必要が生じる。また、部品の経年変化により微妙にタイミングがずれた場合は、工注の値を二度とフィールドにて調整できないため、工場にリペアリターンして再度調整を行わなければならなかった。
【００１０】
図６は回路遅延作成部の詳細回路例を示す図である。図５と同一のものは、同一の符号を付して示す。図において、４ａ、４ｂはディレイライン４を構成するもので、４ａが遅延部、４ｂがディップスイッチである。クロックコントロール回路３がＣＰＵ２の指示に従い、適当なディレイを選択する。選択されたディレイに相当するディップスイッチ４ｂがオンになり、バッファ５に入る。
【００１１】
この構成は、システム１側においても同様である。即ち、１４ａ、１４ｂはディレイライン１４を構成するもので、１４ａが遅延部、１４ｂがディップスイッチである。クロックコントロール回路１３がＣＰＵ１２の指示に従い、適当なディレイを選択する。選択されたディレイに相当するディップスイッチ１４ｂがオンになり、バッファ１５に入る。
【００１２】
この回路では、バッファ５、８、９、ディレイ４ａが素子の経年変化等によりタイミングが変化する可能性のあるものである。同じことは、システム１側についてもいえる。
【００１３】
【発明が解決しようとする課題】
▲１▼位相調整を工注にて実施しているため、人為的なミスを侵して出荷しかねない。
【００１４】
▲２▼上記実施のための工場側工数を削減したい。
▲３▼部品の経年変化やロッドのばらつきでタイミングが変化し、出荷後に動作不良が発生するおそれがある。
【００１５】
▲４▼部品変更／ロッドのばらつきで、現在設計している回路に変更を余儀なくされる場合がある。
▲５▼フィールドに出てから、クロック調整ができないため、工注設定カバーを誤って外し、設定値を変えてしまった場合は、再度調整する必要があり、通常はリペアリターン（ｒｅｐａｉｒ  ｒｅｔｕｒｎ）となるので、現地／工場の工数の削減が必要となる。
【００１６】
▲６▼将来回路の高速化のため、クロック速度のアップが予想されるが、ディレイライン他の基本回路を継承し、エンハンス（改善）時の回路の流用を実現したい。
【００１７】
本発明はこのような課題に鑑みてなされたものであって、二重化系のクロックの位相調整を自動的に行なうことができるシステムクロック同期装置を提供することを目的としている。
【００１８】
【課題を解決するための手段】
（１）図１は本発明の原理ブロック図である。図６と同一のものは、同一の符号を付して示す。図において、４ａは複数の遅延を得るために複数の遅延量が得られる遅延素子群、４ｃはこれら遅延素子群の中から１個の遅延素子を選択するためのデコーダである。該デコーダ４ｃの出力はバッファ５に入る。
【００１９】
３０は自系と他系のクロックの位相差を検出し、ＣＰＵ２に通知する位相検出部としての位相調整用検出回路である。セレクタ７の出力クロックは、位相調整用検出回路３０に入り、該位相調整用検出回路３０には、バッファ９ｂを介して他系のクロックが入力される。
【００２０】
位相調整用検出回路３０の出力は、ＣＰＵ２に通知され、該ＣＰＵ２は、この位相差を受けてクロックコントロール回路３を制御し、必要な遅延素子を選択する。また、デコーダ４ｃ、６ｃにセレクト信号を与えている。位相調整用検出回路３０には、バッファ９ｂを介して他系の出力クロックが入力されている。そして、位相調整用検出回路３０の出力は、被同期化装置２０に入力される。
【００２１】
以上の動作は、システム１系についても同様である。即ち、図において、１４ａは複数の遅延を得るために複数の遅延量が得られる遅延素子群、１４ｃはこれら遅延素子群の中からＣＰＵ１２からの選択信号により１個の遅延素子を選択するためのデコーダである。該デコーダ１４ｃの出力はバッファ１５に入る。
【００２２】
３１は自系と他系のクロックの位相差を検出し、ＣＰＵ１２に通知する位相検出部としての位相調整用検出回路である。セレクタ１７の出力クロックは、位相調整用検出回路３１に入り、該位相調整用検出回路３１には、バッファ１９ｂを介して他系のクロックが入力される。
【００２３】
位相調整用検出回路３１の出力は、ＣＰＵ１２に通知され、該ＣＰＵ１２は、この位相差を受けてクロックコントロール回路１３を制御し、必要な遅延素子を選択する。位相調整用検出回路３１には、バッファ１９ｂを介して他系の出力クロックが入力されている。そして、位相調整用検出回路３１の出力は、被同期化装置２１に入力される。４０はシステム０とシステム１間を直接接続するＭａｔｅ  ＣＣインタフェースで、相互に位相情報のやりとりを行なっている。
【００２４】
この発明の構成によれば、ＣＰＵ２がディレイ素子４ａの中から特定の値を持つものを選んで、自系及び他系に遅延されたクロックを送る。位相調整用検出回路３０では、自系と他系の位相を調整し、ＣＰＵ２に送る。ＣＰＵ２は、位相差に応じて必要な遅延素子を選択してデコーダ４ｃから出力する。このような動作を０系と１系がそれぞれ行なうことにより、二重化系のクロックの位相調整を自動的に行なうことができるシステムクロック同期装置を提供することができる。
また、この発明では、二重系のシステムクロックが同期した時の、各遅延量を記憶する記憶手段を回路遅延作成部に記憶させるようになっている。このように構成すれば、電源オフ等によりシステムがダウンした時でも、各遅延量を記憶しておくので、電源がオンになった時に速やかに定常状態に移行することができる。
【００２６】
（２）請求項２では、前記回路遅延作成部は、複数の遅延出力を受けるデコーダと、該デコーダに入力する遅延量を選択するＣＰＵとを具備することを特徴とする。
【００２７】
このように構成すれば、０系と１系のクロックの位相差に応じて最適な遅延量を選択することができる。
（３）請求項３では、位相調整自動化のために、両系に折り返し信号を具備することを特徴とする。
【００２８】
このように構成すれば、両系間で信号のやりとりを速やかに行なうことができる。
（４）請求項４では、前記位相検出部は、自系のクロックと他系のクロックとを受けて双方の位相差を検出し、検出結果を回路遅延作成部に与えることを特徴とする。
【００２９】
このように構成すれば、自系と他系の位相差に応じた信号を回路遅延作成部に与えることができ、位相差を速やかに一致させることができる。
（５）請求項５では、二重化系装置のバックワイアリングボード上で双方の系の配線長を調整することを特徴とする。
【００３０】
このように構成すれば、各系の信号線の長さを揃えることで、ディレイを同じにすることができる。
【００３１】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態例を詳細に説明する。
図２は本発明の一実施の形態例を示すブロック図である。図１と同一のものは、同一の符号を付して示す。図において、バッファ５，９，１５，１９，３１，３２，３６，３７は３ステートバッファを用い、制御信号をコモンラインに接続して、常時バッファとして動作するようにしている。
【００３２】
位相調整用検出回路３０において、３１はＤからの自装置クロックを受けるバッファ、３２は他系のＣからのクロックを受けるバッファである。３３はバッファ３１，３２の出力を受ける排他的論理和ゲート（ＥＯＲゲート）、３４は該ＥＯＲゲート３３の出力を受けるノイズフィルタである。
【００３３】
３５はそのＲ入力（リセット入力）に、クロックコントロール回路３の出力を、Ｃ入力（セット入力）にノイズフィルタ３４の出力を受け、そのＱ出力をクロックコントロール回路３に与えるＲＳフリップフロップである。セレクタ７の出力は、バッファ３６，３７に与えられ、バッファ３６の出力は、Ｃ端子から被同期化装置２０に与えられ、バッファ３７の出力は、自装置のバッファ３１に与えられている。バッファ３６の出力は被同期化装置２０に与えられると共に他系に与えられている。ＣＰＵ２とクロックコントロール回路３と、ディレイ素子群４ａとデコーダ４ｃとで回路遅延作成部を構成している。以上の構成は、システム１系についても同様である。このように構成された回路の動作を説明すれば、以下の通りである。
【００３４】
本発明の特徴を以下に列挙する。
１）工注を削除し、デコーダにてディレイ値をＣＰＵから制御できるようにしている。
【００３５】
２）ディレイ調整をＣＰＵにより自動化し、素子の経年変化が生じてもいつでも位相を調整する（一致させる）ことができる。
３）位相調整用の検出回路を具備する。
【００３６】
４）ＢＷＢ／ＰＷＣＢにおいて、配線長を調整する。
５）Ｍａｔｅ  ＣＣ  インタフェースを使用し、位相情報のやりとりを行なう。
【００３７】
６）ＰＷＣＢ内は、ＣＰＵ内蔵の回路であり、各指示はそのマイクロプログラムが実行する。
７）フラッシュメモリ若しくはバックアップ電源つきのメモリを使用して、装置電源瞬断等があっても位相情報を失わない。
【００３８】
ＣＰＵ２はクロックコントロール回路３を制御して、遅延素子群４ａの適当な値を瀬選択する。選択結果はデコーダ４ｃに入り、該デコーダ４ｃの出力は、バッファ５を介して他系のバッファ１９に入る。一方、遅延素子群６ａからは適当な値が選択され、デコーダ６ｃから出力されセレクタ７の一方の入力に入る。セレクタ７には、バッファ９を介して他系の位相調整を受けたクロックが入力されている。このように、本発明によれば、回路遅延作成部は、複数の遅延出力を受けるデコーダと、該デコーダに入力する遅延量を選択するＣＰＵとを具備することにより、０系と１系のクロックの位相差に応じて最適な遅延量を選択することができる。
【００３９】
セレクタ７はその何れかを選択して位相調整用検出回路３０に送る。位相調整用検出回路３０では、バッファ３６，３７がこのセレクタ出力をバッファリングして出力し、バッファ３６の出力は、非同期装置、メインメモリ又は各種のＩ／Ｏ装置にクロックとして供給される。
【００４０】
バッファ３７の出力は、端子Ｄから配線１を介してＢ端子に入り、バッファ３１に入る。一方、バッファ３２には、他系の出力クロックが配線２を介して入力される。ここで、信号線による遅延を同じにするため、配線１と配線２の長さを統一している。これにより、各系の信号線の長さを揃えることでて  ディレイを同じにすることができる。
【００４１】
ＥＯＲゲート３３は、自系のクロックと他系のクロックとを受けてその排他論理和をとる。この結果、双方の位相が異なる時に“１”レベルを出力する。このＥＯＲゲート３３の出力は、ノイズフィルタ３４によりノイズが除去された後、フリップフロップのＣ入力に入る。ノイズフィルタ３４は、回路の動作安定化のために、ＥＯＲ出力される可能性のある特定のハザードレベルの波形（例えば４ｎｓ以内のもの）を除去する。
【００４２】
一方、フリップフロップ３５のＲ入力には、自系の位相調整前のクロックが与えられる。そして、該フリップフロップ３５の出力（位相差信号）は、クロックコントロール回路３を介してＣＰＵ２に与えられる。
【００４３】
本発明によれば、自系と他系の位相差に応じた信号を回路遅延作成部に与えることができ、位相差を速やかに一致させることができる。
ＣＰＵ２は、時間当たりのカウント数を検出し、位相ずれの有無を確認する。そして、遅延素子群４ａ、６ａのどの遅延素子を選択するかを決定する。最終的には、ＥＯＲゲート３３の出力が“０”となり、自系クロックと他系のクロックとが位相が合うことになる。以上の動作は、１系においても同様である。
【００４４】
以上、説明したように、位相の同期調整は、ＣＰＵ２からのデコーダ制御により、ディレイライン４ａの遅延量を調整することにより行なわれる。なお、ディレイラインの値は、システム内のクロック速度に合わせて適宜選択する。ここでは、クロックの位相調整が±５ｎｓの範囲でよい場合の例である。
【００４５】
Ｍａｔｅ  ＣＣインタフェース４０は、従来より具備していたが、クロック調整用としても使用される。これによれば、両系間で信号のやりとりを速やかに行なうことができる。
【００４６】
本発明によれば、ＣＰＵ２，１２内に二重系のシステムクロックが同期した時の、各遅延量を記憶する記憶手段、例えばメモリを具備している。このメモリは、フラッシュメモリか又は電池バックアップのメモリである。このメモリに、二重系のシステムが同期した時の、各遅延量を記録することにより、電源の瞬断等によりシステムがダウンした時の、各遅延量を記憶しておくので、電源がオンになった時に速やかに定常状態に移行することができる。
【００４７】
図３は両系の位相のずれを示す図である。１）は両系の位相がずれている場合を示す。図で、Ａは０系のクロック、Ｂは１系のクロック、ＥはＥＯＲゲート３３の出力Ｅを示す。１）では、位相差が小さい程、ＥＯＲ出力パルス幅は小さくなる。そして、このＥＯＲ出力により後段のカウンタを更新する。
【００４８】
２）は、両系の位相がずれている場合を示す。位相差が０になると、ＥＯＲ出力は常時“０”になり、後段のカウンタを更新しない。３）は両系の位相が一致している場合を示し、ＥＯＲ出力は常時“０”（Ｌ）である。
【００４９】
図４は位相調整部のＣＰＵの動作を示すフローチャートである。先ず、電源がオンされると（Ｓ１）、発振源（発振器１）よりクロックが出力される（Ｓ２）。装置は、Ｍａｔｅ系電源がオンで、自系がＡＣＴであるどうかチェックする（Ｓ３）。Ｍａｔｅ系電源がオンで、自系がＡＣＴでない場合、処理はその時点で終了する。Ｍａｔｅ系電源がオンで、自系がＡＣＴである場合には、ＣＰＵ２が立ち上がり、マイクロプログラムが動作を開始する（Ｓ４）。
【００５０】
そして、先ずディレイラインにて指定可能なデコーダ入力をオール“０”に設定する（Ｓ５）。この状態で、位相調整用検出回路３０はディレイ値を監視する（Ｓ６）。ＣＰＵ２はディレイの比較結果により、比較結果を受信する（Ｓ７）。この場合において、サンプリング周波数は回路により任意である。
【００５１】
次に、全てのデコーダ４ｃの組み合わせが終了したかどうかチェックする（Ｓ８）。そうでない場合には、デコーダの値を変更し（Ｓ９）ステップＳ６に戻り、ディレイ値を監視する。そうである場合には、クロックコントロール回路３はディレイ比較回路（位相調整用検出回路）３０より、同期しているデコード値を選択する（Ｓ１０）。
【００５２】
この結果、デコード値は再設定される（Ｓ１１）。そして、障害発生時の対処としてＣＰＵ２付属の不揮発性メモリへデータを格納する（Ｓ１２）。この時のデコード値を記憶しておくことにより、電源瞬断時でも、再度位相調整を行なうことなく、両系のクロック位相を速やかに同期させることができる。
【００５３】
本発明では、図２に示すように、全ての同期化をＣＰＵとマイクロプログラムにより最適化することが可能であるため、設計時から工場出荷又はフィールドに出てからクロック同期が最適化される。
【００５４】
このように、本発明によれば、ＰＷＣＢ設計から保守まで寄与するところが大きい。
▲１▼位相調整を、工注にて実施しないため、人為的なミスがない。
【００５５】
▲２▼上記実施のための工場側工数を削減できる。
▲３▼部品の経年変化やロッドのばらつきで、タイミングが変化し、出荷後に動作不良が発生する可能性がない。
【００５６】
▲４▼部品変更、ロッドのばらつきで、現在設計している回路に変更の心配がない。
▲５▼フィールドに出てから、クロック調整ができるため、工注設定カバーを誤って外して設定値を変えてしまった場合でも、自動的に調整でき、再度調整する必用がない。
【００５７】
▲６▼将来、回路の高速化のため、クロック速度のアップが予想されるが、ディレイライン他の基本回路を継承し、エンハンス時の回路の流用ができる。
【００５８】
【発明の効果】
以上説明したように、本発明によれば、以下の効果が得られる。
（１）請求項１によれば、二重化されたシステムクロック発生部を有するシステムクロック同期装置において、位相調整用検出回路では、自系と他系の位相を調整し、ＣＰＵに送り、ＣＰＵは、位相差に応じて必要な遅延素子を選択してデコーダから出力する動作を０系と１系がそれぞれ行なうことにより、二重化系のクロックの位相調整を自動的に行なうことができるシステムクロック同期装置を提供することができる。
また、二重化系のシステムクロックが同期した時の、各遅延量を記憶する記憶手段を回路遅延作成部に記憶させることにより、電源オフ等によりシステムがダウンした時でも、各遅延量を記憶しておくので、電源がオンになった時に速やかに定常状態に移行することができる。
【００６０】
（２）請求項２によれば、前記回路遅延作成部は、複数の遅延出力を受けるデコーダと、該デコーダに入力する遅延量を選択するＣＰＵとを具備することにより、０系と１系のクロックの位相差に応じて最適な遅延量を選択することができる。
【００６１】
（３）請求項３によれば、位相調整自動化のために、両系に折り返し信号を具備することにより、両系間で信号のやりとりを速やかに行なうことができる。
（４）請求項４によれば、前記位相検出部は、自系のクロックと他系のクロックとを受けて双方の位相差を検出し、検出結果を回路遅延作成部に与えることにより、自系と他系の位相差に応じた信号を回路遅延作成部に与えることができ、位相差を速やかに一致させることができる。
【００６２】
（５）請求項５によれば、二重化系装置のバックワイアリングボード上で双方の系の配線長を調整することにより、各系の信号線の長さを揃えることで、ディレイを同じにすることができる。
【００６３】
このように、本発明によれば、二重化系のクロックの位相調整を自動的に行なうことができるシステムクロック同期装置を提供することができる。
【図面の簡単な説明】
【図１】本発明の原理ブロック図である。
【図２】本発明の一実施の形態例を示すブロック図である。
【図３】両系の位相のずれを示す図である。
【図４】位相調整部のＣＰＵの動作を示すフローチャートである。
【図５】従来システムの構成例を示す図である。
【図６】回路遅延作成部の詳細回路例を示す図である。
【符号の説明】
１，１１  発振器
２，１２  ＣＰＵ
３，１３  クロックコントロール回路
４ａ，１４ａ  遅延素子群
４ｃ，１４ａ  デコーダ
５，１５  バッファ
６ａ，１６ａ  遅延素子群
６ｃ，１６ｃ  デコーダ
７，１７  セレクタ
９，１９  バッファ
９ａ，９ｂ，１９ａ，１９ｂ  バッファ
２０，２１  被同期化装置
３０，３１  位相調整用検出回路
４０  Ｍａｔｅ  ＣＣインタフェース
【図１】
0003909169.tif 000002
【図２】
0003909169.tif 000003
【図３】
0003909169.tif 000004
【図４】
0003909169.tif 000005
【図５】
0003909169.tif 000006
【図６】
0003909169.tif 000007