JP4819707B2 - 冗長演算システムよび演算部 - Google Patents

冗長演算システムよび演算部 Download PDF

Info

Publication number
JP4819707B2
JP4819707B2 JP2007009549A JP2007009549A JP4819707B2 JP 4819707 B2 JP4819707 B2 JP 4819707B2 JP 2007009549 A JP2007009549 A JP 2007009549A JP 2007009549 A JP2007009549 A JP 2007009549A JP 4819707 B2 JP4819707 B2 JP 4819707B2
Authority
JP
Japan
Prior art keywords
counter value
clock
arithmetic
count end
arithmetic unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007009549A
Other languages
English (en)
Other versions
JP2008176578A (ja
Inventor
幸弘 淺田
慶多 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Engineering Ltd
Original Assignee
NEC Engineering Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Engineering Ltd filed Critical NEC Engineering Ltd
Priority to JP2007009549A priority Critical patent/JP4819707B2/ja
Publication of JP2008176578A publication Critical patent/JP2008176578A/ja
Application granted granted Critical
Publication of JP4819707B2 publication Critical patent/JP4819707B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Description

本発明は、冗長演算システムおよびこれに使用される演算部に関する。
図8は、並列処理を行う3つの演算部を備えた冗長演算システム(従来例1)を示す(例えば、特許文献1参照)。この冗長演算システムでは、演算部を構成するMPU,メモリ等の1故障を許容できるシステムであり、一つの故障が発生した場合には、多数決回路によって多数決処理され、外部機器対して正常な動作が行うことができる。
図9は、演算部と1対1対応にCLK出力回路を設けた冗長演算システム(従来例2)を示す(例えば、特許文献2参照)。この冗長演算システムでは、演算部Aは、CLK出力回路Aより出力される動作クロックAの周波数によって動作する。よって処理時間は、動作クロックAの周波数に依存する。また、演算部B,Cも同様に、動作クロックB,Cの周波数に依存する。CLK出力回路を構成する水晶発振器は、部品固有の周波数であり、同一部品であっても周波数に微小なズレがあることは良く知られている。そのため、演算部の処理時間にも微小なズレがある。このズレ時間について、多数決回路で一定時間待ことにより調整し、多数決処理を行うことでシステムの並列処理を可能としている。
図10は、CLK出力回路を冗長化した冗長演算システム(従来例3)を示す(例えば、特許文献3参照)。この冗長演算システムは、冗長化された演算部の外でCLK出力回路部の水晶発振器を多重化して演算部に対する動作クロックを切り換える方式である。例えば、図10に示すように、1つの現用クロックと予備クロックの相互間を位相監視し接点切換により演算部に動作クロックを出力する方法である。現用クロックに異常が発生した場合でも、動作クロックの位相を、異常発生前後でズレが発生しないようにしている。これは、演算部を構成するMPUの内部にPLLが実装されているものが多く、位相にズレが発生するとMPUが正常に動作できないためである。
次に動作を説明する。現用クロックと予備クロックは、それぞれ遅延回路を通り切換回路により選択されて出力される。また、現用クロックと予備クロックは位相同期監視部内にある立上がり検出部に入力され、それぞれのクロックの立上がりで一定のパルスが形成される。立上がり検出部で形成されたパルスは比較回路により、両系のパルスが揃っている時にパルスを出力し、パルス検出回路で比較回路から出力されたパルスを監視する。判定回路では両系クロックの断検出回路と、パルス検出回路からの出力から、クロックを切り換えるか否かを判定する。判定回路は現用クロック断発生時には、パルス比較回路の出力に関わらず、予備クロックの断検出のみにより切換を行い、両系クロックが正常時にはパルス検出回路の出力により判定が行なえるような優先順位を持たせている。
特開平10−133900号公報(第頁−第頁、図) 特開2001−306348号公報(第頁−第頁、図) 特開平5−136768号公報(第頁−第頁、図)
しかし、上述した従来例1の冗長演算システムでは、演算部は冗長化されているが、CLK出力回路が冗長化されていないため、CLK出力回路の1故障により演算部の動作クロックの停止及び周波数の異常が発生しシステム全体の機能が失われる。従って信頼度が低い冗長演算システムである。
また、従来例2の冗長演算システムでは、水晶発振器、部品固有の周波数ズレによる演算部の処理時間ズレを多数決回路で待つことで解消している。しかし、この待ち時間は、システムとしての機能が停止していることになる。さらに、システムを長時間動作させると、この処理時間のズレが累積され、大きな時間なるとシステムの冗長並列同時処理としての性能が低下してしまうという問題点がある。
また、従来例3の冗長演算システムでは、演算部、水晶発振器は冗長化されているが、切換回路が冗長化されていないため、切換回路部の1故障により、演算部の動作クロックの停止や周波数の異常が発生しシステム全体の機能が失われる。従って信頼度が低い冗長システムである。
そこで、本発明の目的は、1故障発生時において、冗長並列処理の停止および性能低下を起こすことのない冗長演算システムおよびこれに使用される演算部を提供することにある。
本発明の演算部は、並列処理を行う3つ以上の演算部の演算結果に対する多数決処理を行う冗長演算システムにおける前記演算部それぞれおいて、周波数Fの原振クロックを発生する水晶発振器(図2の211等)と、原振クロックを繰り返しカウントして、1からNまでのカウンタ値を出力し、また第1のカウンタ値のとき‘1’、カウンタ値がNのとき‘0’とするカウント終了フラグを出力する同期カウンタ(図2の213等)と、カウンタ値がN/2のときに‘0’、Nのときに‘1’とする周波数F/Nの動作クロックを該演算部の演算プロセッサへ出力するクロック出力回路と、全ての演算部におけるカウント終了フラグを相互比較し当該演算部に異常あるときは当該同期カウンタが出力するカウンタ値をスキップすることにより補正するクロック補正回路(図2の212等)を有するクロック生成回路を設けたことを特徴とする。
好ましくは、クロック補正回路(図2の212等)は、第2のカウンタ値のときに全ての演算部におけるカウント終了フラグ(カウント終了フラグ列という)をラッチし異常状態ラッチ1として保持することと、第1のカウンタ値から原振クロックを所定数だけ進めた第3のカウンタ値のときにカウント終了フラグ列をラッチ・ビット反転し異常状態ラッチ2として保持することと、第1のカウンタ値のときに、入力するカウント終了フラグ列と、保持している異常状態ラッチ1と、保持している異常状態ラッチ2それぞれのビット対応に論理和演算し、論理和演算の結果(カウント終了状態という)に多数決処理し、その結果を同期カウンタへ出力する多数決回路であり、同期カウンタは、第1のカウンタ値において、多数決処理の結果により‘1’が多数なら第3のカウンタ値へカウントアップし、それ以外なら第3のカウンタ値まで1つずつカウントアップすることを特徴とする。
例えば、第1のカウンタ値は(N−4)、第2のカウンタ値はN/2、第3のカウンタ値は(N−2)とする。
また、水晶発振器またはクロック出力回路の出力周波数を逓倍するPLLを設けてもよい(図7)。
本発明の冗長演算システムは、上記のいずれかの演算部における演算プロセッサの演算結果について多数決処理を行うことを特徴とする。
本発明の冗長演算システムにおける各演算部は、水晶発振器,多数決回路,同期カウンタおよびクロック出力回路を有するクロック生成回路を設け、冗長化された演算部に搭載された水晶発振器の部品固体差とクロック周期ズレを互いに監視し、高速な原振クロックを分周してMPU動作クロックを生成し、多数決の結果により位相を同期化する。
このとき、複数個の演算部の内、1つに故障または異常が生じても、残りの正常な演算部の動作クロックの位相を同期した状態で保つことが可能である。従って、演算部の1故障が発生した場合でも、残りの正常な演算部によって、システムの冗長並列処理の停止や性能低下を起こすことなく処理継続が可能なため、高信頼性冗長システムを得ることができる。
次に、発明の実施の形態について図面を参照して詳細に説明する。
[構成の説明]
図1は、本発明の演算部が使用される冗長演算システムの一例を示す。この冗長システム1は、3つの演算部2,3,4と、インタフェース部5で構成されている。演算部2,3,4はインタフェース部5に接続される。演算部2,3,4で得られた演算結果はインタフェース部5の多数決回路部6で比較され、多数決結果により、外部機器7に外部I/F信号8を出力する。
演算部2,3,4の詳細な構成を図2に示す。図2において、演算部2,3,4は同一な回路構成、回路機能であり、クロック生成回路21,31,41と、MPU22,32,42と、メモリ23,33,43により構成されている。クロック生成回路21,31,41も同構成であって、MPU22,32,42の動作クロック24,34,44を生成する機能を有し、原振クロック215,315,415を発生する水晶発振器211,311,411と、クロックの同期状態を保つためにN回カウントを行う同期カウンタ213,313,413と、多数決回路212,312,412と、クロック出力回路214,314,414を含んだ構成である。以下、クロック生成回路21について説明する。
水晶発振器211は、周波数Fの原振クロック215を発生して同期カウンタ213に供給している。同期カウンタ213は、水晶発振器211から入力する原振クロック215を繰り返しカウントして、1からNまでのカウンタ値217をクロック出力回路214と多数決回路212へ出力する。
クロック出力回路214は、カウンタ値217がN/2のときに動作クロック24を‘0’とし、カウンタ値217がNのときに動作クロック24を‘1’とする。この結果、周波数F/Nの動作クロック24をMPU22に供給することができる。
同期カウンタ213は、カウンタ値217が(N−4)のときカウント終了フラグ218として‘1’、カウンタ値217がNのときカウント終了フラグ218として‘0’をそれぞれ出力する。カウント終了フラグ218は多数決回路212の他、クロック生成回路31の多数決回路312およびクロック生成回路41の多数決回路412にも供給される。
また、同期カウンタ213は、後述のように、カウンタ値217が(N−4)のとき多数決回路212から入力する多数決結果216により、‘1’が2つ以上ならカウンタ値217=(N−2)とし、それ以外ならカウンタ値217=(N−3)とする。
上述の説明から明らかなように、多数決回路212には、クロック生成回路31の同期カウンタ313からカウント終了フラグ318と、クロック生成回路41の同期カウンタ413からカウント終了フラグ418も供給される。多数決回路212は、同期カウンタ213から入力するカウンタ値217がN/2のときにカウント終了フラグ218,318,418(この3ビット列をカウント終了フラグ列という)をラッチする。そして、このときのカウント終了フラグ列を異常状態ラッチ1として保持する。
また、多数決回路212は、同期カウンタ213から入力するカウンタ値217が(N−2)のときに、カウント終了フラグ列をラッチし、これをビット反転し異常状態ラッチ2として保持する。
また、多数決回路212は、説明が前後するが、同期カウンタ213から入力するカウンタ値217が(N−4)のときに、入力するカウント終了フラグ列と、保持している異常状態ラッチ1と、保持している異常状態ラッチ2それぞれのビット対応に論理和演算する。この場合の異常状態ラッチ2は前サイクルにおけるものということになる。論理和演算の結果(カウント終了状態という)は多数決結果216として同期カウンタ213へ出力する。多数決結果216は、カウント終了状態において‘1’が2つ以上か否かを示す。
以上に説明した同期カウンタ213と多数決回路212とクロック出力回路214の関係は、図3を参照してする以下の時系列的な説明により明瞭なものとなる。
電源投入後、演算部2内の同期カウンタ213は、リセットされカウンタ値=1(図3のS1)となり、水晶発振器211は原振クロック215を常に出力する。同期カウンタ213は、原振クロック215によりカウンタ値=2(図3のS2)、3、4・・・Nとカウントアップする。また、カウント終了フラグ218は‘0’を初期値とする。
同期カウンタ213のカウンタ値217=N/2(図3のS3)のとき、クロック出力回路214は動作クロック24を‘0’とする(図3のS3−1)。また、多数決回路212は、カウント終了フラグ列を異常状態ラッチ1として保持する(図3のS3−2)。
この時、すべての演算部が正常であれば、カウント終了フラグ:“000”となり、異常状態ラッチ1:“000”をラッチした状態となる。カウント終了フラグ418,318,218に‘1’を出力している演算部は、異常ケースが発生していると判断でき、異常状態ラッチ1の該当ビットに‘1’がラッチされた状態となる。例えば、演算部2に異常が発生時、異常状態ラッチ1:“001”となる。同期カウンタ213のカウンタ値217=(N−4)(図4のS4)のとき、カウント終了フラグ218=‘1’を出力する(図3のS4−1)。
同時に、多数決回路212で、3ビットで示されるカウント終了状態のビットについて多数決処理し(図3のS4−2)、カウント終了状態3ビットの内、1ビット以下が‘1’の場合、カウンタ値217=(N−3)へカウントアップする(図3のS5)。一方、カウント終了状態3ビットの内、2ビット以上が‘1’の場合、カウンタ値217=(N−2)へ2カウントアップする(図3のS6)。
ここで、カウント終了状態とは、カウント終了フラグ列と異常状態ラッチ1(図3のS3−2)と異常状態ラッチ2(図3のS6−1)それぞれのビット対応について論理和演算した結果を意味する。例えば、カウント終了フラグ列が“100”、異常状態ラッチ1が“001”、異常状態ラッチ2が“000”なら、カウント終了状態は“101”となる。
このカウント終了フラグ218出力(図3のS4−1)と多数決処理(図3のS4−2)は、同時に行われるため、演算部2から出力するカウント終了フラグ218‘1’は、演算部2の多数決回路212の多数決処理(図3のS4−2)では反映されない。
従って、「カウント終了状態3ビットの内、2ビット以上が‘1’」とは、他の演算部3,4からカウント終了フラグ318,418が出力されている状態であり、同期カウンタ213が、他の同期カウンタ313,413より、1カウント遅れていることになる。 これは、水晶発振器211,311,411の部品固体差による原振クロック215,315,415の周波数(F2<F3,F2<F4)のズレによるものである。このズレを補正するため、「カウント終了状態3ビットの内、2ビット以上が‘1’」のとき、図3のS6において、2カウントアップ(カウンタ値:(N−4)→(N−2))している。
同期カウンタ213のカウンタ値217=(N−3)(図3のS5)のとき、原振クロック215により(N−2)へカウントアップする。同期カウンタ213のカウンタ値217=(N−2)(図3のS6)のとき、多数決回路212は、カウント終了フラグ列をビット反転させ異常状態ラッチ2として保持する(図3のS6−1)。
このとき、すべての演算部が正常であれば、カウント終了フラグ:“111”を反転させ、異常状態ラッチ2として“000”をラッチする。カウント終了フラグ418,318,218として‘0’を出力している演算部は、異常ケースが発生していると判断でき、異常状態ラッチ2の該当ビットに‘1’がラッチされる。例えば、演算部2に異常が発生しているときは、異常状態ラッチ2は“001”となる。
同期カウンタ213のカウンタ値217=(N−1)(図3のS7)のとき、原振クロック215によりNへカウントアップする。同期カウンタ213のカウンタ値217=N(図3のS8)のとき、クロック出力回路214は、動作クロック24を‘1’とする(図3のS8−1)。また、同時にカウント終了フラグ218=‘0’を出力する(図3のS8−2)。
[動作の説明]
次に、本クロック生成回路の動作について、タイミングチャートを参照しながら場合に分けて説明する。なお、カウンタ値N=16とする。
(1)水晶発振器の固体差による周波数ズレ(図4)
図4は、原振クロックの位相が、215,315,415の順に進んでいる場合の演算部2,3,4それぞれにおける原振クロック,カウンタ値,カウント終了フラグ,カウント終了フラグ列,異常状態ラッチ1,異常状態ラッチ2,カウント終了状態,動作クロックの波形を示している。
図4のタイミングAは、演算部4における同期カウンタ413のカウンタ値417=(N−4)(図4のS4)の時点である。この時、演算部4のカウンタ値417は、図示のように他のカウンタ値217,317より遅れているため、他のカウント終了フラグ218,318が既に出力されている状態である。従って、演算部4のカウント終了状態は、“011”であり、多数決回路412は多数決結果(図3のS4−2において‘1’が2つ以上)により、カウンタ値417を2カウントアップ(12→14)していることが分かる。これは、他のカウンタ値より1カウント早く進めることにより、この遅れ(ズレ)を補正しているためである。タイミングC,Dでも同様である。
また、演算部3における同期カウンタ313のカウンタ値317=(N−4)(図4のS4)の時点であるタイミングBも、演算部3のカウンタ値317は、他のカウンタ値217,417より遅れているため、同様に補正している。カウンタ値417よりも遅れているのはタイミングAにおける補正の結果による。
これらの補正を行う際に、動作クロック34,44のLOWレベルの期間が、原振クロックの1クロック分短くなり、動作クロック24,34,44間の位相ズレは、原振クロックの2クロックの範囲となる。補正の結果、得られる動作クロック24,34,44は、以下の式を用いて表すことができる。
周波数 = 原振クロック周波数 × カウンタ値N (誤差:+0%、−100/N%)
位相ズレ時間 = 原振クロックの2クロック分(2/F)以下
上記の2つの式より、高い精度の動作クロックを必要とする場合、カウンタ値Nを大きな値をとすることにより、動作クロックの周波数精度を上げること、また、原振クロックの周波数を高くすることにより、位相ズレ時間を小さくできることが容易に分かる。
(2)水晶発振器の故障による原振クロック停止(図5)
異常ケースとして以下の4つが想定される。
(a)水晶発振器故障(原振クロック停止)によるカウント終了フラグ出力不能
(b)水晶発振器故障(原振クロック周波数異常)よるカウント終了フラグ出力タイミング異常
(c)同期カウンタ故障によるカウント終了フラグ出力不能及び出力タイミング異常
(d)多数決回路故障によるカウント終了フラグ出力不能及び出力タイミング異常
図5は、演算部4の水晶発振器411の故障により、原振クロック415が停止した異常ケース(a)において、演算部2,3,4それぞれにおける原振クロック,カウンタ値,カウント終了フラグ,カウント終了フラグ列,異常状態ラッチ1,異常状態ラッチ2,カウント終了状態,動作クロックの波形を示している。
図5のタイミングE(カウンタ値“15”)で原振クロック415が停止し、それ以降は出力されていない。従って、カウンタ値417が“16”になることがないため、タイミングE以降ではカウント終了フラグ418は“1”を維持する。動作クロック44が‘1’となることもない。この結果、演算部3における同期カウンタ313のカウンタ値317=N/2(図3のS3)となる時点であるタイミングFにおいて、多数決回路312は、
カウント終了フラグ列の状態“100”を異常状態ラッチ1:“100”としてラッチする(図3のS3−2)。また、やや遅れて演算部2の多数決回路212も異常状態ラッチ1:“100”としてラッチする(図3のS3−2)。ここで、異常状態ラッチ1:“100”は、演算部4の異常を検知したことを示している。
異常検知以降、演算部2における同期カウンタ213のカウンタ値217=(N−4)(図4のS4)の時点であるタイミングGでは、演算部2のカウンタ値217は、演算部3のカウンタ値317より遅れているため、演算部3のカウント終了フラグ318は既に出力されている状態にある。このときの演算部2のカウント終了状態は、“110”であり、多数決回路212の多数決結果(図3のS4−2において‘1’が2つ以上)により、カウンタ値217を2カウントアップ(12→14)し遅れ(ズレ)を補正していることを示している。
このときの演算部2の異常状態ラッチ1,異常状態ラッチ2およびカウント終了状態と、演算部2,演算部3,演算部4のカウント終了フラグを下表に示す。
Figure 0004819707
また、演算部3における同期カウンタ313のカウンタ値317=(N−4)(図4のS4)の時点であるタイミングHでも、同様に、演算部3のカウンタ値317は、演算部2のカウンタ値217より遅れているため、補正している状態である。このように、演算部4の原振クロック415が停止したことを検知した後は、演算部4をズレの補正対象としないことで、演算部2,3の動作クロック24,34の位相同期が可能である。
(3)水晶発振器の故障による原振クロックの周波数低下(図6)
図6は、演算部4の水晶発振器411の故障により、原振クロック415の周波数が低下した異常ケース(b)において、演算部2,3,4それぞれにおける原振クロック,カウンタ値,カウント終了フラグ,カウント終了フラグ列,異常状態ラッチ1,異常状態ラッチ2,カウント終了状態,動作クロックの波形を示している。
図6のタイミングIで原振クロック415の周波数が低下している。演算部3における同期カウンタ313のカウンタ値317=(N−2)(図3のS6)となるタイミングJのとき多数決回路312、やや遅れて演算部2の多数決回路212は、カウント終了フラグ列“011”をビット反転させ異常状態ラッチ2:“100”を保持する(図3のS6−1)。ここで、異常状態ラッチ2:“100”は、演算部4の異常を検知したことを示している。
異常検知以降、演算部3における同期カウンタ313のカウンタ値317=(N−4)(図4のS4)の時点であるタイミングKのとき、演算部3のカウンタ値317は、演算部2のカウンタ値217より遅れているため、演算部2のカウント終了フラグ218が既に出力されている状態である。このときの演算部3のカウント終了状態は、下表に示すように、“101”であり、多数決回路312の多数決結果(図3のS4−2、‘1’が2つ以上)により、カウンタ値317を2カウントアップ(12→14)し遅れ(ズレ)を補正していることを示している。
Figure 0004819707
演算部4の周波数異常を検知した後、演算部4をズレの補正対象としないことで、演算部2,3の動作クロック24,34の位相同期が可能である。異常ケース(c)(d)についても同様の動作を行い動作クロック24,34の位相同期が可能である。
以上、上記動作を各演算部2,3,4のクロック生成回路21、31、41が行うことにより、各演算部内で使用しているMPUへの動作クロック24,34,44の位相を同期することができ、演算部で実施するシステムの冗長並列処理の処理ステップを同期することが可能である。また、演算部2,3,4の内、1つが故障した場合でも、残りの演算部でシステムの冗長並列処理を継続して行うことが可能である。
本発明の実施例2は、その基本的原理は実施例1と変わりがないが、原振クロックの生成方法、動作クロックの出力方法についてさらに工夫し、また、冗長構成数を増やすことで、更なる高信頼度化を得ることを可能としている。
その構成を図7に示す。本図において、PLL219は、水晶発振器211より出力されるクロック(周波数:f)をM倍し、原振クロック215(周波数:Mf)を得ることが可能である。また、PLL220は、クロック出力回路214より出力される分周クロック(周波数:Mf/N)をL倍し、動作クロック24(周波数:LMf/N)を得ることができる。この2つのPLL219,220によって、水晶発振器211より出力される比較的低周波数のクロックから、動作クロック24を容易に得ることを可能としている。
例えば、同期カウンタ213(N=100カウント)より動作クロック24(10MHz)を得る場合、M=10のPLL219を使用して、水晶発振器211(周波数:10MHz)から、100MHzの原振クロック215を生成する。同期カウンタ213は、100MHz×100カウントし、クロック出力回路214は1MHzの分周クロックを生成する。この分周クロックをPLL220により10倍し、10MHzの動作クロック24を容易に得ることが可能である。
PLLを使用しない場合、水晶発振器211の原振クロック215(周波数:1GHz)×100カウントし、10MHzの動作クロック24を得ることとなる。これに対して、上述のように、低周波数クロックより、同様の動作クロックを得られることは、ノイズ対策として有効であり、また、回路設計を容易にしていると言える。
図7の実施例では、演算部2,3,4,5,6の冗長構成:5としている。これにより、多数決方法を3/5にすることで、演算部の2故障まで対応可能な高信頼性冗長システムを構成している。さらに、冗長構成:7とすれば、多数決方法を4/7とすることで、3故障まで対応可能なことは、明白である。
本発明の活用例として、高信頼性が要求される宇宙搭載機器を挙げることができる。
本発明の演算部が使用される冗長演算システムの一例を示すブロック図 本発明の演算部の実施例1を示すブロック図 図1の演算部の構成要素の時系列的な関係を示す図 本発明の動作を説明するための第1のタイミングチャート 本発明の動作を説明するための第2のタイミングチャート 本発明の動作を説明するための第3のタイミングチャート 本発明の演算部の実施例2を示すブロック図 従来例1の冗長演算システムを示すブロック図 従来例2の冗長演算システムを示すブロック図 従来例3の冗長演算システムを示すブロック図
符号の説明
1 冗長演算システム
2〜4 演算部
5 インタフェース部
6 多数決回路
7 外部機器
8 外部I/F信号
21,31,41 クロック生成回路
22,32,42 MPU
23,33,43 メモリ
211,311,411 水晶発振器
212,312,412 多数決回路
213,313,413 同期カウンタ
214,314,414クロック出力回路
215,315,415 原振クロック
216,316,416多数決結果
217,317,417 カウンタ値
218,318,418 カウント終了フラグ
219,220 PLL

Claims (5)

  1. 並列処理を行う3つ以上の演算部の演算結果に対する多数決処理を行う冗長演算システムにおける前記演算部それぞれおいて、
    周波数Fの原振クロックを発生する水晶発振器と、
    前記原振クロックを繰り返しカウントして、1からNまでのカウンタ値を出力し、また第1のカウンタ値のとき‘1’、前記カウンタ値がNのとき‘0’とするカウント終了フラグを出力する同期カウンタと、
    前記カウンタ値がN/2のときに‘0’、Nのときに‘1’とする周波数F/Nの動作クロックを該演算部の演算プロセッサへ出力するクロック出力回路と、
    全ての前記演算部における前記カウント終了フラグを相互比較し当該演算部に異常あるときは当該同期カウンタが出力するカウンタ値をスキップすることにより補正するクロック補正回路を有することを特徴とする演算部。
  2. 前記クロック補正回路は、
    第2のカウンタ値のときに全ての演算部における前記カウント終了フラグ(カウント終了フラグ列という)をラッチし異常状態ラッチ1として保持することと、
    前記第1のカウンタ値から前記原振クロックを所定数だけ進めた第3のカウンタ値のときに前記カウント終了フラグ列をラッチ・ビット反転し異常状態ラッチ2として保持することと、
    前記第1のカウンタ値のときに、入力するカウント終了フラグ列と、保持している前記異常状態ラッチ1と、保持している前記異常状態ラッチ2それぞれのビット対応に論理和演算し、論理和演算の結果(カウント終了状態という)に多数決処理し、その結果を前記同期カウンタへ出力する多数決回路であり、
    前記同期カウンタは、前記第1のカウンタ値において、前記多数決処理の結果により‘1’が多数なら前記第3のカウンタ値へカウントアップし、それ以外なら前記第3のカウンタ値まで1つずつカウントアップするクロック生成回路を設けたことを特徴とする請求項1記載の演算部。
  3. 前記第1のカウンタ値は(N−4)、前記第2のカウンタ値はN/2、前記第3のカウンタ値は(N−2)とすることを特徴とする請求項2記載の演算部。
  4. 前記水晶発振器または前記クロック出力回路の出力周波数を逓倍するPLLを設けたことを特徴とする請求項1ないし請求項3のいずれかに記載の演算部。
  5. 請求項1ないし請求項4記載のいずれかに演算部における前記演算プロセッサの演算結果について多数決処理を行うことを特徴とする冗長演算システム。
JP2007009549A 2007-01-18 2007-01-18 冗長演算システムよび演算部 Expired - Fee Related JP4819707B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007009549A JP4819707B2 (ja) 2007-01-18 2007-01-18 冗長演算システムよび演算部

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007009549A JP4819707B2 (ja) 2007-01-18 2007-01-18 冗長演算システムよび演算部

Publications (2)

Publication Number Publication Date
JP2008176578A JP2008176578A (ja) 2008-07-31
JP4819707B2 true JP4819707B2 (ja) 2011-11-24

Family

ID=39703550

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007009549A Expired - Fee Related JP4819707B2 (ja) 2007-01-18 2007-01-18 冗長演算システムよび演算部

Country Status (1)

Country Link
JP (1) JP4819707B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101901176B (zh) * 2010-07-22 2012-01-11 北京交大资产经营有限公司 冗余时钟***
JP5484595B2 (ja) 2011-01-13 2014-05-07 三菱電機株式会社 ビット生成装置及びビット生成方法
JP5949160B2 (ja) * 2012-05-28 2016-07-06 富士通株式会社 通信装置
JP6297853B2 (ja) * 2014-02-18 2018-03-20 ルネサスエレクトロニクス株式会社 マルチプロセッサシステム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3530346B2 (ja) * 1997-06-25 2004-05-24 株式会社ルネサステクノロジ 半導体集積回路装置
JP2000163275A (ja) * 1998-11-30 2000-06-16 Nec Eng Ltd 同期フラグ合わせ回路及びその同期フラグ合わせ方法
JP2004185470A (ja) * 2002-12-05 2004-07-02 Konica Minolta Holdings Inc クロック異常検出回路

Also Published As

Publication number Publication date
JP2008176578A (ja) 2008-07-31

Similar Documents

Publication Publication Date Title
KR101436042B1 (ko) 클럭 스위칭 회로에서 글리치를 방지하기 위한 장치 및방법
US8369477B2 (en) Clock frequency divider circuit and clock frequency division method
US10033389B2 (en) Clock signal stop detection circuit
JP4819707B2 (ja) 冗長演算システムよび演算部
JP2011147058A (ja) クロック装置
CN103513955A (zh) 用于产生随机数的方法
JP2017022490A (ja) デジタル制御発振回路
JP4862984B2 (ja) クロック切り替え装置及びクロック切り替え方法
JP5381001B2 (ja) 半導体集積回路及び半導体集積回路の試験方法
KR101297413B1 (ko) 적응형 클럭 생성 장치 및 방법
CN103514080A (zh) 用于监控随机发生器的输出的方法
JP2005252447A (ja) ロック検出回路、ロック検出方法
CN110795289B (zh) 一种多时钟自动切换方法
JP2013197692A (ja) Pllクロック発生回路
WO2008132644A1 (en) Electronic device and method of correcting clock signal deviations in an electronic device
TW201406050A (zh) 相位內插裝置以及相位內插方法
JP5270524B2 (ja) クロック位相同期回路
JP2856108B2 (ja) 周波数逸脱検出回路
JPH04306930A (ja) クロック異常検出器
US6825705B2 (en) Clock signal generation circuit and audio data processing apparatus
JP2002296309A (ja) 周波数異常検出回路およびそれに用いる異常検出値設定回路
US11287471B1 (en) Electronic circuit for online monitoring a clock signal
JP2006031133A (ja) 半導体装置
US8270557B2 (en) Integrated circuit and method for driving the same
JP4718387B2 (ja) 周波数比較回路、pll周波数シンセサイザテスト回路及びそのテスト方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090915

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110825

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110901

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140909

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4819707

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees