JP2009193504A - Fault tolerant computer, synchronization control method, and program - Google Patents
Fault tolerant computer, synchronization control method, and program Download PDFInfo
- Publication number
- JP2009193504A JP2009193504A JP2008035938A JP2008035938A JP2009193504A JP 2009193504 A JP2009193504 A JP 2009193504A JP 2008035938 A JP2008035938 A JP 2008035938A JP 2008035938 A JP2008035938 A JP 2008035938A JP 2009193504 A JP2009193504 A JP 2009193504A
- Authority
- JP
- Japan
- Prior art keywords
- clock
- clock cycles
- unit
- difference
- units
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 20
- 238000007726 management method Methods 0.000 claims description 25
- 230000001360 synchronised effect Effects 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 6
- 230000000694 effects Effects 0.000 description 6
- 230000003111 delayed effect Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Abstract
Description
本発明は、複数の演算部を備え、当該複数の演算部が同じ演算を行うフォルトトレラントコンピュータ、その同期制御方法、及びそのプログラムに関する。 The present invention relates to a fault-tolerant computer that includes a plurality of calculation units, and in which the plurality of calculation units perform the same calculation, a synchronization control method thereof, and a program thereof.
フォルトトレラントコンピュータは、複数の演算部と複数のIO部とを備え、各IO部は、複数の演算部から同時にIO命令を受信した場合に、複数の演算部が同期していると判別し、IO処理を行う。 The fault tolerant computer includes a plurality of operation units and a plurality of IO units, and each IO unit determines that the plurality of operation units are synchronized when receiving an IO command simultaneously from the plurality of operation units, Perform IO processing.
例えば、特許文献1のフォルトトレラントコンピュータは、クロック源、クロック源が出力するクロックをカウントする動作カウンタ、タイミング調整部、演算部等から構成されるシステムを複数、備える。そして、動作カウンタがカウントしたカウント値に基づいて、タイミング調整部に、複数の演算部がIO命令を発行するタイミングを調整させる。このフォルトトレラントコンピュータは、複数のクロック源を備えるため、クロック源が単一障害点になることがない。
しかし、特許文献1のフォルトトレラントコンピュータは、タイミング調整部等を備えており、装置の構成が複雑であった。
また、IO部から各演算部へ同じ命令を配信する場合に、配信された命令は、各演算部のシステムクロックのずれに対応していなかった。
本発明は、上記問題点に鑑みてなされたもので、複数の演算部と複数のクロック源とを備える簡便なフォルトトレラントコンピュータ、その同期制御方法、及びそのプログラムを提供することを目的とする。
However, the fault tolerant computer of Patent Document 1 includes a timing adjustment unit and the like, and the configuration of the apparatus is complicated.
Further, when the same instruction is distributed from the IO unit to each arithmetic unit, the distributed instruction does not correspond to a shift in the system clock of each arithmetic unit.
The present invention has been made in view of the above problems, and an object thereof is to provide a simple fault-tolerant computer including a plurality of arithmetic units and a plurality of clock sources, a synchronization control method thereof, and a program thereof.
上記目的を達成するために、本発明の第1の観点に係るフォルトトレラントコンピュータは、
独立した複数のクロック源と、当該複数のクロック源毎に接続され、接続されたクロック源より供給されたシステムクロックに基づいて同じ演算を行い、同じIO命令を発行する複数の演算部と、当該複数の演算部が入出力するデータを検証する中間制御部と、当該複数の演算部と他装置とのデータの送受信を制御する入出力部と、から構成され、
前記演算部は、それぞれ、
前記クロック源から供給されたシステムクロックのクロックサイクル数を計数し、計数結果を前記中間制御部に送信するクロック管理部を備え、
前記中間制御部は、
前記複数の演算部がそれぞれ発行した複数のIO命令を受信して比較し、一致するか否かを判別し、一致すると判別した場合に、当該IO命令を前記入出力部に供給するIO比較部と、
複数の前記クロック管理部が送信した複数の計数結果を比較して、クロックサイクル数の差がある場合には、前記IO比較部が当該クロックサイクル数の差に基づいた異なるタイミングで前記複数のIO命令を受信して比較するように調整するFT制御部と、を備え、
前記FT制御部は、
前記入出力部から前記演算部への転送命令を受信すると、前記クロックサイクル数の差に基づいて、前記複数の演算部毎に異なったタイミングで、前記複数の演算部毎に当該転送命令を配信する、
ことを特徴とする。
In order to achieve the above object, a fault tolerant computer according to the first aspect of the present invention comprises:
A plurality of independent clock sources, a plurality of operation units connected to each of the plurality of clock sources, performing the same operation based on the system clock supplied from the connected clock sources, and issuing the same IO command; An intermediate control unit that verifies data input and output by a plurality of calculation units, and an input / output unit that controls transmission and reception of data between the plurality of calculation units and other devices,
The calculation units are respectively
A clock management unit that counts the number of clock cycles of the system clock supplied from the clock source and transmits the counting result to the intermediate control unit;
The intermediate control unit
An IO comparison unit that receives and compares a plurality of IO commands issued by the plurality of arithmetic units, determines whether or not they match, and supplies the IO command to the input / output unit when it is determined that they match When,
When a plurality of count results transmitted by the plurality of clock management units are compared and there is a difference in the number of clock cycles, the IO comparison unit performs the plurality of IOs at different timings based on the difference in the number of clock cycles. An FT controller that adjusts to receive and compare instructions,
The FT control unit
When a transfer command from the input / output unit to the calculation unit is received, the transfer command is distributed to the plurality of calculation units at different timings for the plurality of calculation units based on the difference in the number of clock cycles. To
It is characterized by that.
本発明の第2の観点に係る同期制御方法は、
独立した複数のクロック源と、当該複数のクロック源毎に接続され、且つ、接続されたクロック源より供給されたシステムクロックに基づいて同じ演算を行う複数の演算部と、当該複数の演算部と他装置とのデータの送受信を制御する入出力部と、から構成されるフォルトトレラントコンピュータの同期制御方法であって、
前記クロック源それぞれから前記複数の演算部に供給された複数のシステムクロックのクロックサイクル数を計数する計数ステップと、
前記計数ステップで計数した複数のシステムクロックのクロックサイクル数の差があるか否かを判別する判別ステップと、
前記複数の演算部がそれぞれ発行した複数のIO命令を比較して、一致するか否かを判別し、一致すると判別した場合に、当該IO命令を前記入出力部に供給する比較ステップと、
前記判別ステップで前記クロックサイクル数の差がある場合には、前記比較ステップで当該クロックサイクル数の差に基づいた異なるタイミングで前記複数のIO命令を受信して比較するように調整する調整ステップと、
前記入出力部が受信した前記演算部への転送命令を、前記クロックサイクル数の差に基づいて、前記複数の演算部毎に異なったタイミングで、前記複数の演算部に当該転送命令を配信する配信ステップと、を備える、
ことを特徴とする。
The synchronization control method according to the second aspect of the present invention provides:
A plurality of independent clock sources, a plurality of arithmetic units connected to each of the plurality of clock sources and performing the same calculation based on a system clock supplied from the connected clock sources, and the plurality of arithmetic units A method for synchronous control of a fault tolerant computer comprising an input / output unit for controlling transmission and reception of data with other devices,
A counting step of counting the number of clock cycles of a plurality of system clocks supplied to the plurality of arithmetic units from each of the clock sources;
A determination step of determining whether there is a difference in the number of clock cycles of the plurality of system clocks counted in the counting step;
A comparison step of comparing the plurality of IO instructions issued by the plurality of arithmetic units, determining whether or not they match, and supplying the IO instruction to the input / output unit when determined to match;
An adjustment step for adjusting the reception and comparison of the plurality of IO instructions at different timings based on the difference in the number of clock cycles in the comparison step when there is a difference in the number of clock cycles in the determination step; ,
The transfer instruction received by the input / output unit is distributed to the plurality of arithmetic units at different timings for the plurality of arithmetic units based on the difference in the number of clock cycles. A delivery step;
It is characterized by that.
本発明の第3の観点に係るプログラムは、
独立した複数のクロック源と、当該複数のクロック源毎に接続され、且つ、接続されたクロック源より供給されたシステムクロックに基づいて同じ演算を行う複数の演算部と、当該複数の演算部と他装置とのデータの送受信を制御する入出力部と、から構成されるフォルトトレラントコンピュータを、
前記クロック源それぞれから前記複数の演算部に供給された複数のシステムクロックのクロックサイクル数を計数する計数手段、
前記計数手段が計数した複数のシステムクロックのクロックサイクル数の差があるか否かを判別する判別手段、
前記複数の演算部がそれぞれ発行した複数のIO命令を比較して、一致するか否かを判別し、一致すると判別した場合に、当該IO命令を前記入出力部に供給する比較手段、
前記判別手段が前記クロックサイクル数の差があると判別した場合には、前記比較手段が当該クロックサイクル数の差に基づいた異なるタイミングで前記複数のIO命令を受信して比較するように調整する調整手段、
前記入出力部が受信した前記演算部への転送命令を、前記クロックサイクル数の差に基づいて、前記複数の演算部毎に異なったタイミングで、前記複数の演算部に配信する配信手段、
として機能させることを特徴とする。
The program according to the third aspect of the present invention is:
A plurality of independent clock sources, a plurality of arithmetic units connected to each of the plurality of clock sources and performing the same calculation based on a system clock supplied from the connected clock sources, and the plurality of arithmetic units A fault-tolerant computer consisting of an input / output unit that controls the transmission and reception of data with other devices,
Counting means for counting the number of clock cycles of a plurality of system clocks supplied to the plurality of arithmetic units from each of the clock sources;
Discriminating means for discriminating whether there is a difference in the number of clock cycles of a plurality of system clocks counted by the counting means;
Comparing means for comparing the plurality of IO commands issued by the plurality of arithmetic units respectively to determine whether or not they match, and to supply the IO command to the input / output unit when determined to match,
When the determination means determines that there is a difference in the number of clock cycles, the comparison means adjusts so as to receive and compare the plurality of IO instructions at different timings based on the difference in the number of clock cycles. Adjustment means,
A delivery means for delivering a transfer command received by the input / output unit to the computing unit, based on the difference in the number of clock cycles, at different timings for the plurality of computing units;
It is made to function as.
本発明によれば、複数の演算部と複数のクロック源とを備えるフォルトトレラントコンピュータにおいて、簡便な装置の構成を実現することが出来る。 According to the present invention, a simple device configuration can be realized in a fault tolerant computer including a plurality of arithmetic units and a plurality of clock sources.
以下、本発明の実施形態に係るフォルトトレラントコンピュータ100について説明する。フォルトトレラントコンピュータ100は、図1に示すように、クロック源10,20と、演算部30,40と、中間制御部50と、IOデバイス60とを備える。
The fault
クロック源10は、システムクロックを生成して演算部30に供給する。また、クロック源20は、システムクロックを生成して演算部40に供給する。ただし、クロック源10とクロック源20とは、それぞれ独立している。
The
演算部30は、CPU(Central Processing Unit)等であり、クロック源10より供給されたシステムクロックに基づいて動作し、中間制御部50にIO命令を発行する。また、演算部30は、クロック管理部31を備える。
The
クロック管理部31は、クロック源10より供給されたシステムクロックのクロックサイクル数を計測し、計測結果を中間制御部50に送信する。
The
また、演算部40は、CPU(Central Processing Unit)等であり、クロック源20より供給されたシステムクロックに基づいて動作し、中間制御部50にIO命令を発行する。また、演算部40は、クロック管理部41を備える。
The
クロック管理部41は、クロック源20より供給されたシステムクロックのクロックサイクル数を計測し、計測結果を中間制御部50に送信する。
The
中間制御部50は、演算部30,40より供給されたIO命令を検証し、IOデバイス60に送信する。また、中間制御部50は、IOデバイス60より供給された転送命令を演算部30,40に転送する。
The
中間制御部50は、FT制御部51とIO比較部52とを備える。
The
IO比較部52は、演算部30,40がそれぞれ発行したIO命令を比較して、一致するか否かを判別し、一致すると判別した場合に、IO命令をIOデバイス60に供給する。
The IO
FT制御部51は、クロック管理部31,41が送信した計数結果を比較して、クロックサイクル数の差がある場合には、その差に基づいて、IO比較部52が演算部30,40からのIO命令を受信するタイミング及びそれらを比較するタイミングを調整する。
FT制御部51は、IOデバイス60から演算部30,40への転送命令を受信すると、クロック管理部31,41が送信したクロックサイクル数の差に基づいて、異なったタイミングで、演算部30,40に転送命令を送信する、
The
When the
以下、上記構成のフォルトトレラントコンピュータ100の動作を説明する。
The operation of the fault
演算部30,40内のクロック管理部31,41は、システムの同期リセット信号が解除されたタイミングで、クロックサイクル数の計数を開始する。クロック管理部31,41は、計数したクロックサイクル数をFT制御部51に送信し、FT制御部51はクロック管理部31,41から送信されたクロックサイクル数の比較判定を実施する。クロックサイクル数が一致していないと判定された時は、FT制御部51は、演算部30,40からのIO命令の有無を判定する。そして、有効なIO命令が有ると判定された時は、FT制御部51は、クロックサイクル数の差違を、IO比較部52による演算部30,40からのIO命令の受信及び比較のタイミングに反映させる。
例えば、図2に示すように、クロック管理部31が計数したクロックサイクル数が、クロック管理部41が計数したクロックサイクル数より1クロック少ない場合には、演算部30が行う処理は、演算部40が行う処理より1クロック遅れている。そこで、IO比較部52は、演算部40が発行したIO命令を受信してから1クロック経過した後に、演算部30が発行したIO命令を受信する。そして、IO比較部52は、それらのIO命令を比較する。
次に、FT制御部51は、IOデバイス60から演算部30,40への転送命令の有無の判定を行う。有効な命令が有ると判定された時は、FT制御部51は、演算部30,40への命令の転送タイミングにクロックサイクル数の差違を反映させる。
例えば、クロック管理部31が計数したクロックサイクル数が、クロック管理部41が計数したクロックサイクル数より1クロック少ない場合には、演算部30は、演算部40より1クロック遅れている。そこで、FT制御部51は、演算部40に転送命令を送信してから1クロック経過した後に、演算部30に同じ転送命令を送信する。
The
For example, as illustrated in FIG. 2, when the number of clock cycles counted by the
Next, the
For example, when the number of clock cycles counted by the
次に、本発明の実施形態に係るフォルトトレラントコンピュータ100が行う同期制御処理を、図3のフローチャートを参照して詳細に説明する。
Next, the synchronization control processing performed by the fault
システムの同期リセット信号が解除されると、演算部30,40内のクロック管理部31,41は、クロックサイクル数の計数を開始する(ステップS110)。
When the system synchronous reset signal is canceled, the
クロック管理部31,41は、計数したクロックサイクル数の情報をFT制御部51に送信する(ステップS120)。
The
FT制御部51は、クロック管理部31,41からそれぞれクロックサイクル数の情報を受信すると、それらのクロックサイクル数が一致しているか否かを判別する(ステップS130)。
When receiving information on the number of clock cycles from the
クロックサイクル数が一致していないと判別された場合には(S130;NO)、FT制御部51は、一致していない旨をIO比較部52に通知し、IO比較部52は、その通知を受けると、演算部30,40より有効なIO命令を受信したか否かを判別する(ステップS140)。
When it is determined that the number of clock cycles does not match (S130; NO), the
有効なIO命令を受信していないと判別した場合には(S140;NO)、IO比較部52は、その旨をFT制御部51に通知し、処理をステップS180に進める。
If it is determined that a valid IO command has not been received (S140; NO), the
有効なIO命令を受信したと判別した場合には(S140;YES)、IO比較部52は、クロックサイクル数の差違を、演算部30,40からのIO命令の受信及び比較のタイミングに反映させ(ステップS150)、演算部30,40からのIO命令が一致するか否かを判別する(ステップS160)。
When it is determined that a valid IO command has been received (S140; YES), the
演算部30,40からのIO命令が一致していないと判別した場合には(S160;NO)、IO比較部52は、その旨をFT制御部51に通知し、処理をステップS180に進める。
When it is determined that the IO commands from the
演算部30,40からのIO命令が一致したと判別した場合には(S160;YES)、IO比較部52は、IO命令をIOデバイス60に転送し(ステップS170)、IO命令を転送した旨をFT制御部51に通知し、処理をステップS180に進める。
If it is determined that the IO commands from the
IO比較部52よりIO命令が一致していない又は転送された旨の通知を受けると、FT制御部51は、IOデバイス60より演算部30,40への有効な転送命令を受信したか否かを判別する(ステップS180)。
Upon receiving notification from the
有効な転送命令を受信していないと判別した場合には(S180;NO)、FT制御部51は、その旨をクロック管理部31,41に通知し、処理をステップS120に戻す。
If it is determined that a valid transfer command has not been received (S180; NO), the
有効な転送命令を受信したと判別した場合には(S180;YES)、FT制御部51は、クロックサイクル数の差異に基づいて、転送タイミングを調整し、それぞれ異なるタイミングで演算部30,40に転送命令を転送し(ステップS190)、転送命令を転送した旨をクロック管理部31,41に通知し、処理をステップS120に戻す。
If it is determined that a valid transfer command has been received (S180; YES), the
クロックサイクル数が一致していると判別された場合には(S130;YES)、FT制御部51は、一致している旨をIO比較部52に通知し、IO比較部52は、その通知を受けると、演算部30,40より有効なIO命令を受信したか否かを判別する(ステップS200)。
When it is determined that the number of clock cycles matches (S130; YES), the
有効なIO命令を受信していないと判別した場合には(S200;NO)、IO比較部52は、その旨をFT制御部51に通知し、処理をステップS230に進める。
If it is determined that a valid IO command has not been received (S200; NO), the
有効なIO命令を受信したと判別した場合には(S200;YES)、IO比較部52は、演算部30,40からのIO命令が一致するか否かを判別する(ステップS210)。
When it is determined that a valid IO command has been received (S200; YES), the
演算部30,40からのIO命令が一致していないと判別した場合には(S210;NO)、IO比較部52は、その旨をFT制御部51に通知し、処理をステップS230に進める。
If it is determined that the IO commands from the
演算部30,40からのIO命令が一致したと判別した場合には(S210;YES)、IO比較部52は、IO命令をIOデバイス60に転送し(ステップS220)、IO命令を転送した旨をFT制御部51に通知し、処理をステップS230に進める。
If it is determined that the IO commands from the
IO比較部52よりIO命令が一致していない又は転送された旨の通知を受けると、FT制御部51は、IOデバイス60より演算部30,40への有効な転送命令を受信したか否かを判別する(ステップS230)。
Upon receiving notification from the
有効な転送命令を受信していないと判別した場合には(S230;NO)、FT制御部51は、その旨をクロック管理部31,41に通知し、処理をステップS120に戻す。
If it is determined that a valid transfer command has not been received (S230; NO), the
有効な転送命令を受信したと判別した場合には(S230;YES)、FT制御部51は、同じタイミングで演算部30,40に転送命令を転送し(ステップS190)、転送命令を転送した旨をクロック管理部31,41に通知し、処理をステップS120に戻す。
If it is determined that a valid transfer command has been received (S230; YES), the
このようにして、同期制御処理によれば、演算部30,40からのIO命令の受信及び比較のタイミングの調整を行い、また、IOデバイス60から演算部30,40への命令の転送タイミングの調整を行うことで、簡便にクロックサイクル数の差異を補正し、同期動作を継続させることが出来る。
In this way, according to the synchronization control process, the timing of receiving and comparing the IO command from the
なお、本発明は上記実施形態に限定されず、種々の応用及び変形が可能である。 In addition, this invention is not limited to the said embodiment, A various application and deformation | transformation are possible.
上記実施形態において、フォルトトレラントコンピュータ100は、それぞれ二つの演算部及びクロック源を備えていたが、三つ以上の演算部及びクロック源を備えるようにして、三つ以上のシステムクロックのクロックサイクル数の差に基づいて、IO命令の比較タイミングと、IOデバイスから演算部への命令の転送タイミングとを調整してもよい。
In the above-described embodiment, the fault
また、その他、具体的な細部構成等についても適宜変更可能である。 In addition, specific details of the configuration can be changed as appropriate.
10 クロック源
20 クロック源
30 演算部
31 クロック管理部
40 演算部
41 クロック管理部
50 中間制御部
51 FT制御部
52 IO比較部
60 IOデバイス
100 フォルトトレラントコンピュータ
DESCRIPTION OF
Claims (3)
前記演算部は、それぞれ、
前記クロック源から供給されたシステムクロックのクロックサイクル数を計数し、計数結果を前記中間制御部に送信するクロック管理部を備え、
前記中間制御部は、
前記複数の演算部がそれぞれ発行した複数のIO命令を受信して比較し、一致するか否かを判別し、一致すると判別した場合に、当該IO命令を前記入出力部に供給するIO比較部と、
複数の前記クロック管理部が送信した複数の計数結果を比較して、クロックサイクル数の差がある場合には、前記IO比較部が当該クロックサイクル数の差に基づいた異なるタイミングで前記複数のIO命令を受信して比較するように調整するFT制御部と、を備え、
前記FT制御部は、
前記入出力部から前記演算部への転送命令を受信すると、前記クロックサイクル数の差に基づいて、前記複数の演算部毎に異なったタイミングで、前記複数の演算部毎に当該転送命令を配信する、
ことを特徴とするフォルトトレラントコンピュータ。 A plurality of independent clock sources, a plurality of arithmetic units connected to each of the plurality of clock sources, performing the same operation based on a system clock supplied from the connected clock sources, and issuing the same IO command; An intermediate control unit that verifies data input and output by a plurality of calculation units, and an input / output unit that controls transmission and reception of data between the plurality of calculation units and other devices,
The calculation units are respectively
A clock management unit that counts the number of clock cycles of the system clock supplied from the clock source and transmits the counting result to the intermediate control unit;
The intermediate control unit
An IO comparison unit that receives and compares a plurality of IO commands issued by the plurality of arithmetic units, determines whether or not they match, and supplies the IO command to the input / output unit when it is determined that they match When,
When a plurality of count results transmitted by the plurality of clock management units are compared and there is a difference in the number of clock cycles, the IO comparison unit performs the plurality of IOs at different timings based on the difference in the number of clock cycles. And an FT control unit that adjusts to receive and compare the instructions,
The FT control unit
When a transfer command from the input / output unit to the calculation unit is received, the transfer command is distributed to the plurality of calculation units at different timings for the plurality of calculation units based on the difference in the number of clock cycles. To
A fault tolerant computer.
前記クロック源それぞれから前記複数の演算部に供給された複数のシステムクロックのクロックサイクル数を計数する計数ステップと、
前記計数ステップで計数した複数のシステムクロックのクロックサイクル数の差があるか否かを判別する判別ステップと、
前記複数の演算部がそれぞれ発行した複数のIO命令を比較して、一致するか否かを判別し、一致すると判別した場合に、当該IO命令を前記入出力部に供給する比較ステップと、
前記判別ステップで前記クロックサイクル数の差がある場合には、前記比較ステップで当該クロックサイクル数の差に基づいた異なるタイミングで前記複数のIO命令を受信して比較するように調整する調整ステップと、
前記入出力部が受信した前記演算部への転送命令を、前記クロックサイクル数の差に基づいて、前記複数の演算部毎に異なったタイミングで、前記複数の演算部に当該転送命令を配信する配信ステップと、を備える、
ことを特徴とする同期制御方法。 A plurality of independent clock sources, a plurality of arithmetic units connected to each of the plurality of clock sources and performing the same calculation based on a system clock supplied from the connected clock sources, and the plurality of arithmetic units A method for synchronous control of a fault tolerant computer comprising an input / output unit for controlling transmission and reception of data with other devices,
A counting step of counting the number of clock cycles of a plurality of system clocks supplied to the plurality of arithmetic units from each of the clock sources;
A determination step of determining whether there is a difference in the number of clock cycles of the plurality of system clocks counted in the counting step;
A comparison step of comparing the plurality of IO instructions issued by the plurality of arithmetic units, determining whether or not they match, and supplying the IO instruction to the input / output unit when determined to match;
An adjustment step for adjusting the reception and comparison of the plurality of IO instructions at different timings based on the difference in the number of clock cycles in the comparison step when there is a difference in the number of clock cycles in the determination step; ,
The transfer instruction received by the input / output unit is distributed to the plurality of arithmetic units at different timings for the plurality of arithmetic units based on the difference in the number of clock cycles. A delivery step;
A synchronization control method characterized by the above.
前記クロック源それぞれから前記複数の演算部に供給された複数のシステムクロックのクロックサイクル数を計数する計数手段、
前記計数手段が計数した複数のシステムクロックのクロックサイクル数の差があるか否かを判別する判別手段、
前記複数の演算部がそれぞれ発行した複数のIO命令を比較して、一致するか否かを判別し、一致すると判別した場合に、当該IO命令を前記入出力部に供給する比較手段、
前記判別手段が前記クロックサイクル数の差があると判別した場合には、前記比較手段が当該クロックサイクル数の差に基づいた異なるタイミングで前記複数のIO命令を受信して比較するように調整する調整手段、
前記入出力部が受信した前記演算部への転送命令を、前記クロックサイクル数の差に基づいて、前記複数の演算部毎に異なったタイミングで、前記複数の演算部に配信する配信手段、
として機能させることを特徴とするプログラム。 A plurality of independent clock sources, a plurality of arithmetic units connected to each of the plurality of clock sources and performing the same calculation based on a system clock supplied from the connected clock sources, and the plurality of arithmetic units A fault-tolerant computer consisting of an input / output unit that controls the transmission and reception of data with other devices,
Counting means for counting the number of clock cycles of a plurality of system clocks supplied to the plurality of arithmetic units from each of the clock sources;
Discriminating means for discriminating whether there is a difference in the number of clock cycles of a plurality of system clocks counted by the counting means;
Comparing means for comparing the plurality of IO commands issued by the plurality of arithmetic units respectively to determine whether or not they match, and to supply the IO command to the input / output unit when determined to match,
When the determination means determines that there is a difference in the number of clock cycles, the comparison means adjusts so as to receive and compare the plurality of IO instructions at different timings based on the difference in the number of clock cycles. Adjustment means,
A delivery means for delivering a transfer command received by the input / output unit to the computing unit, based on the difference in the number of clock cycles, at different timings for the plurality of computing units;
A program characterized by functioning as
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008035938A JP5206009B2 (en) | 2008-02-18 | 2008-02-18 | Fault tolerant computer, synchronous control method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008035938A JP5206009B2 (en) | 2008-02-18 | 2008-02-18 | Fault tolerant computer, synchronous control method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009193504A true JP2009193504A (en) | 2009-08-27 |
JP5206009B2 JP5206009B2 (en) | 2013-06-12 |
Family
ID=41075436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008035938A Expired - Fee Related JP5206009B2 (en) | 2008-02-18 | 2008-02-18 | Fault tolerant computer, synchronous control method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5206009B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012003313A (en) * | 2010-06-14 | 2012-01-05 | Hitachi Ltd | Computer system and control method therefor |
US9465640B2 (en) | 2013-11-01 | 2016-10-11 | Fujitsu Limited | Information processing apparatus and method of controlling information processing apparatus |
DE112015007095T5 (en) | 2015-12-03 | 2018-07-26 | Mitsubishi Electric Corporation | multiplex system |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0773059A (en) * | 1993-03-02 | 1995-03-17 | Tandem Comput Inc | Fault-tolerant computer system |
JPH086800A (en) * | 1994-06-16 | 1996-01-12 | Toshiba Corp | Data processor and microprocessor |
JPH0833874B2 (en) * | 1987-11-09 | 1996-03-29 | タンデム コンピューターズ インコーポレーテッド | Device for synchronizing multiple processors |
JPH08241217A (en) * | 1995-03-07 | 1996-09-17 | Hitachi Ltd | Information processor |
JP2002515146A (en) * | 1996-05-16 | 2002-05-21 | レジリエンス コーポレイション | Triple module redundant computer system |
JP2004046599A (en) * | 2002-07-12 | 2004-02-12 | Nec Corp | Fault tolerant computer system, its resynchronization method, and resynchronization program |
JP2006172243A (en) * | 2004-12-17 | 2006-06-29 | Nec Corp | Fault-tolerant computer device and synchronization method for the same |
JP2007249518A (en) * | 2006-03-15 | 2007-09-27 | Nec Corp | Data processing apparatus and its synchronizing method |
-
2008
- 2008-02-18 JP JP2008035938A patent/JP5206009B2/en not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0833874B2 (en) * | 1987-11-09 | 1996-03-29 | タンデム コンピューターズ インコーポレーテッド | Device for synchronizing multiple processors |
JPH0773059A (en) * | 1993-03-02 | 1995-03-17 | Tandem Comput Inc | Fault-tolerant computer system |
JPH086800A (en) * | 1994-06-16 | 1996-01-12 | Toshiba Corp | Data processor and microprocessor |
JPH08241217A (en) * | 1995-03-07 | 1996-09-17 | Hitachi Ltd | Information processor |
JP2002515146A (en) * | 1996-05-16 | 2002-05-21 | レジリエンス コーポレイション | Triple module redundant computer system |
JP2004046599A (en) * | 2002-07-12 | 2004-02-12 | Nec Corp | Fault tolerant computer system, its resynchronization method, and resynchronization program |
JP2006172243A (en) * | 2004-12-17 | 2006-06-29 | Nec Corp | Fault-tolerant computer device and synchronization method for the same |
JP2007249518A (en) * | 2006-03-15 | 2007-09-27 | Nec Corp | Data processing apparatus and its synchronizing method |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012003313A (en) * | 2010-06-14 | 2012-01-05 | Hitachi Ltd | Computer system and control method therefor |
US9465640B2 (en) | 2013-11-01 | 2016-10-11 | Fujitsu Limited | Information processing apparatus and method of controlling information processing apparatus |
DE112015007095T5 (en) | 2015-12-03 | 2018-07-26 | Mitsubishi Electric Corporation | multiplex system |
DE112015007095B4 (en) | 2015-12-03 | 2018-11-22 | Mitsubishi Electric Corporation | multiplex system |
Also Published As
Publication number | Publication date |
---|---|
JP5206009B2 (en) | 2013-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7996714B2 (en) | Systems and methods for redundancy management in fault tolerant computing | |
JP5397739B2 (en) | Image processing apparatus, image processing method, and image processing program | |
JP5206009B2 (en) | Fault tolerant computer, synchronous control method, and program | |
JP2015130147A5 (en) | ||
KR20160125942A (en) | Programmable controller system and controller therefor | |
JP2006209593A (en) | Information processor and information processing method | |
JP2010003081A (en) | Arithmetic processing unit multiplexing control system | |
JP6301752B2 (en) | Information service display system and time synchronization method | |
JP4752552B2 (en) | Data processing apparatus and synchronization method thereof | |
JP2015204117A (en) | Plc system having plural cpu modules and control method | |
US7680034B2 (en) | Redundant control systems and methods | |
JP2007122410A (en) | Bus arbitration circuit and method | |
US20150350317A1 (en) | Computer system synchronization | |
JP2010033255A (en) | Signal synchronization method and signal synchronization circuit | |
JP2011233042A (en) | Calibration control apparatus and calibration control method | |
JP2014157386A (en) | Data processing system | |
KR20100135643A (en) | Timing controller, apparatus for controlling data signal sending using timing controller | |
US9703315B2 (en) | Transmission device and time synchronization method | |
JP2015115915A (en) | Data transmission control device and data transmission control method | |
JP2004080132A (en) | Synchronization-detecting method for communication | |
JP2013250696A (en) | Processor system and processor control device | |
US20230259485A1 (en) | Communication apparatus, communication method, and program | |
JP4794407B2 (en) | Field network system | |
JP4640359B2 (en) | Fault tolerant computer and synchronization control method in fault tolerant computer | |
JP2010211250A (en) | Fault tolerant computer and timing adjusting method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121030 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121225 |
|
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: 20130122 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130204 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160301 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5206009 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |