JP2022084150A - 情報処理装置及び情報処理方法 - Google Patents

情報処理装置及び情報処理方法 Download PDF

Info

Publication number
JP2022084150A
JP2022084150A JP2020195820A JP2020195820A JP2022084150A JP 2022084150 A JP2022084150 A JP 2022084150A JP 2020195820 A JP2020195820 A JP 2020195820A JP 2020195820 A JP2020195820 A JP 2020195820A JP 2022084150 A JP2022084150 A JP 2022084150A
Authority
JP
Japan
Prior art keywords
state
holding register
bit error
error detection
held
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
Application number
JP2020195820A
Other languages
English (en)
Other versions
JP7567399B2 (ja
Inventor
惇矢 野口
Junya Noguchi
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2020195820A priority Critical patent/JP7567399B2/ja
Publication of JP2022084150A publication Critical patent/JP2022084150A/ja
Application granted granted Critical
Publication of JP7567399B2 publication Critical patent/JP7567399B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Hardware Redundancy (AREA)

Abstract

【課題】システムを安定稼働させる情報処理装置及び情報処理方法を提供する。【解決手段】ステート保持レジスタ104は、ステートを保持し、保持するステートによりFPGAリセット信号生成ブロック100が実行する処理を切り替える。出力回路107は、ステート保持レジスタ104が保持するステートに応じた値を有する制御信号を出力する。誤り検出部101は、ステート保持レジスタ104が保持するステートにおけるビット誤りを検出する。エラー検出レジスタ121~123は、誤り検出部101によるビット誤りの検出の結果をそれぞれが格納する。多数決論理回路103は、エラー検出レジスタ121~123に格納されたビット誤りの検出の結果を基に、ビット誤りが発生したか否かを判定し、ビット誤りが発生したと判定した場合、出力回路107により出力される制御信号の前記値を固定する。【選択図】図2

Description

本発明は、情報処理装置及び情報処理方法に関する。
入力条件と現在の状態との組み合わせによって次の状態を決定し、現在の状態から次の状態へ状態を遷移させるステートマシンと呼ばれる論理回路がある。ステートは、ステートマシンが動作するシステムの各動作状態を表す。従来のステートマシンでは、ステートを保持するレジスタに1ビットの奇数パリティが付加される。そして、従来のステートマシンには、1ビット誤りが検出されると、未定義のステートを遷移し、その後初期状態に遷移して処理を再開するといった動作を行うものがある。
ここで、特定のステートマシンのステートに依存して動作する論理回路の枠組みを、その特定のステートマシンが属するブロックと呼ぶ。ステートマシンの中には、自己のステートとは別の独立したステートで動作する他のステートマシンが動作する外のブロックへ出力する制御信号を生成するステートマシンも存在する。
ここで、レジスタの1ビット誤りが発生した場合に運用を継続する方法として、以下の2つの方法が一般的に採用されている。1つは、ステート保持レジスタを多重化して、いずれかのレジスタでエラーが発生した場合には、複数のレジスタで多数決を取り正常な運用を継続する方法である。他の1つは、ステート保持レジスタに誤り訂正符号(ECC:Error Correction Code)を付与して、1ビット誤りが発生した場合には誤り訂正を行って運用を継続する方法である。
他にも複数ビットの誤りが発生した場合に運用を継続する技術として以下のような技術が提案されている。例えば、半導体集積回路においてメインステートマシン及びサブステートマシンを配置し、ソフトエラーなどによりメインステートマシンに複数ビットのエラーが発生した場合に、エラーがないサブステートマシンのビット値を選択して出力する従来技術がある。
特開2015-1774号公報
しかしながら、ステートマシンが他のブロックへ出力する制御信号を生成する場合、1ビット誤りが発生することで、以下の問題が発生するおそれがある。例えば、ステートを保持するレジスタで1ビット誤りが発生し予期せぬステートに遷移することにより、他のブロックに対する制御信号の値を変更してはいけないタイミングで、制御信号の値が変化してしまうことが考えられる。その場合、1ビット誤りが発生したステートが属するブロック以外の回路や、さらにはそのブロックが搭載されたチップの外の回路にまで動作の悪影響を与えてしまうおそれがある。特に、1ビット誤りが発生してステートが初期状態に戻ってしまった際に他のチップのリセットをアサートしてしまった場合には、他のチップにおいて予期せぬリセットが発生することになり、システム全体の誤動作につながるおそれがある。
従来のシステムでは、この問題に対する対応として、ステート保持レジスタの多重化やECCの付与が採用されている。ただし、これらの回路は1ビット誤り発生時の運用継続には有効だが、実装時には多くのレジスタ及び論理回路が用いられる。例えば、ステート保持レジスタを3重化する場合、3倍のレジスタと多数決論理回路が配置される。また、ECCにより重化を実現する場合には、最低でも6ビットのレジスタと計算のための複雑な組み合わせ回路が用いられる。このように多くのレジスタ及び論理回路を用いる構成では、使用できるリソースに限りがある場合には実装することが困難である。また、回路規模増大により故障率も増加する可能性が高い。そのため、回路規模を著しく増大させてまで誤りを訂正してステートによる処理を続行するほどの要件が存在しない場合の回路では、これらの方法を採用することは難しく、システムを安定稼働させることは困難である。
また、メインステートマシンとサブステートマシンとを用いる従来技術の場合、複数ビット誤りに対応することはできるが、回路規模は大きくなるため、上述したような条件では採用することは難しく、システムを安定稼働させることは困難である。
開示の技術は、上記に鑑みてなされたものであって、システムを安定稼働させる情報処理装置及び情報処理方法を提供することを目的とする。
本願の開示する情報処理装置及び情報処理方法の一つの態様において、ステート保持レジスタは、自装置が実行する処理に対応する自装置の状態を表すステートを保持し、保持する前記ステートにより自装置が実行する処理を切り替える。出力部は、前記ステート保持レジスタが保持する前記ステートに応じた値を有する制御信号を出力する。誤り検出部101は、前記ステート保持レジスタが保持する前記ステートにおけるビット誤りを検出する。複数のエラー検出レジスタは、前記誤り検出部による前記ビット誤りの検出の結果をそれぞれが格納する。制御部は、前記エラー検出レジスタに格納された前記ビット誤りの検出の結果を基に、前記ビット誤りが発生したか否かを判定し、前記ビット誤りが発生したと判定した場合、前記出力部により出力される前記制御信号の前記値を固定する。
1つの側面では、本発明は、システムを安定稼働させることができる。
図1は、実施例1に係るシステムボードのブロック図である。 図2は、実施例1に係るCPLDにおけるFPGAリセット信号生成ブロックの概要を表す回路図である。 図3は、FPGAリセット信号がデアサート状態に遷移した後に1ビット誤りが発生した場合のステートの遷移を表すステート図である。 図4は、FPGAリセット信号がデアサート状態に遷移した後に1ビット誤りが発生した場合の信号の変化を表すタイミングチャートである。 図5は、FPGAリセット信号がデアサート状態に遷移する前に1ビット誤りが発生した場合のステートの遷移を表すステート図である。 図6は、FPGAリセット信号がデアサート状態に遷移した後に1ビット誤りが発生した場合の信号の変化を表すタイミングチャートである。 図7は、ステートエラー発生に対応したFPGAリセット信号の制御のフローチャートである。 図8は、実施例2に係るFPGAにおけるブロックの概要を表す回路図である。 図9は、イネーブル信号が有効になった後に2ビット以上のエラーが発生した場合のステートの遷移を表すステート図である。 図10は、イネーブル信号が有効になる前に2ビット以上のエラーが発生した場合のステートの遷移を表すステート図である。
以下に、本願の開示する情報処理装置及び情報処理方法の実施例を図面に基づいて詳細に説明する。なお、以下の実施例により本願の開示する情報処理装置及び情報処理方法が限定されるものではない。
図1は、実施例1に係るシステムボードのブロック図である。システムボード1は、サーバなどの情報処理装置に搭載される。システムボード1は、図1に示すように、CPLD(Complex Programmable Logic Device)10、MPU(Micro Processing Unit)20、MRAM(Magnetoresistive Random Access Memory)31、並びに、フラッシュメモリ32及び33が搭載される。また、システムボード1は、スイッチ40、FPGA(Field Programmable Gate Array)50、SPI(Serial Peripheral Interface)フラッシュメモリ60、並びに、負荷回路71及び72が搭載される。
CPLD10は、リセット信号を送信する経路でMPU20と接続される。また、CPLD10は、MRAM31、並びに、フラッシュメモリ32及び33とバスで接続される。また、CPLD10は、データバスによりFPGA50及びSPIフラッシュメモリ60とスイッチ40を介して接続される。また、CPLD10は、負荷回路71及び72とバスで接続される。さらに、CPLD10は、システムボード1を冗長化するための冗長システムボード2と接続される。
CPLD10は、システムボード1の起動時にフラッシュメモリ32などからFPGA50の設定が登録されたFPGAコンフィグデータを読み込む。そして、CPLD10は、FPGAコンフィグデータをFPGA50へスイッチ40を介して送信することで、FPGA50の設定を行う。
CPLD10は、FPGA50のリセットピンに対する接続を有する。CPLD10は、FPGA50のリセット信号を生成する。システムボード1に常駐電源が入り、CPLD10が動作を開始した時点で、CPLD10は、FPGA50のリセット信号をアサート状態とする。そして、CPLD10は、リセット状態のFPGA50へFPGAコンフィグデータを送信してコンフィグを実行する。その後、CPLD10は、コンフィグが終了した後のステートに遷移することで、FPGA50のリセット信号をデアサート状態に遷移させてリセットを解除する。ここでは、リセット信号がアサート状態の場合に、FPGA50は動作が停止されており、リセット信号がデアサート状態になった場合に、FPGA50は動作が許可されてリセットが行われ動作を開始する。
MPU20は、MRAM31、並びに、フラッシュメモリ32及び33とデータバスにより接続される。また、MPU20は、CPLD10とセット信号を送信する経路で接続される。MPU20は、MRAM31、並びに、フラッシュメモリ32及び33を用いて演算処理を実行する。
図2は、実施例1に係るCPLDにおけるFPGAリセット信号生成ブロックの概要を表す回路図である。CPLD10は、FPGA50に対してリセット信号を送信してFPGA50のリセットを行うFPGAリセット信号生成ブロック100を有する。他にも、CPLD10は、FPGA50に対するFPGAコンフィグデータの送信などのリセット以外の処理を行うブロック181及び182を有する。
FPGAリセット信号生成ブロック100は、他のブロック181及び182と接続される。FPGAリセット信号生成ブロック100は、ステート保持レジスタ104及び次ステート決定部108を含むステートマシンを有する。ここで、ステートとは、FPGAリセット信号生成ブロック100の動作状態を表す情報である。ステートマシンとは、ステート保持レジスタ104が保持するステートに応じて処理を切り替えて実行する構造である。言い換えれば、ステートとは、ステートマシンが搭載された装置が実行する処理に対応する装置の状態を表す情報である。
また、FPGAリセット信号生成ブロック100は、誤り検出部101、多数決論理回路103及びエラー検出レジスタ121~123を有する。また、FPGAリセット信号生成ブロック100は、リセット信号生成論理回路105、スイッチ106、出力回路107及び次ステート決定部108を有する。このFPGAリセット信号生成ブロック100が、「情報処理装置」の一例にあたる。
以下では、FPGAリセット信号生成ブロック100が、FPGA50に対して送信するFPGAリセット信号の制御について説明するが、FPGAリセット信号生成ブロック100は、FPGA50との間で他の信号のやり取りを行ってもよい。また、FPGAリセット信号生成ブロック100は、他のブロック181及び182との間で信号の送受信を行ってもよい。
次ステート決定部108は、1つ又は複数の入力及び現在の状態から次のステートを決定する。そして、次ステート決定部108は、決定した次のステートの情報をステート保持レジスタ104へ出力する。
また、ステート保持レジスタ104が保持するステートの情報において1ビット誤りが発生した場合、次ステート決定部108は、未定義のステートを次のステートに決定して、その情報をステート保持レジスタ104へ出力する。以下では、ステートの情報におけるビット誤りを、「ステートエラー」と呼ぶ場合がある。その後、次ステート決定部108は、初期状態のステートを次のステートと決定して、その情報をステート保持レジスタ104へ出力する。
ステート保持レジスタ104は、ステートを保持しFPGAリセット信号生成ブロック100の動作状態を管理する。ステート保持レジスタ104は、次ステート決定部108から入力された次のステートへ、保持するステートを遷移させる。ステート保持レジスタ104が保持するステートの情報は、リセット信号生成論理回路105へ出力される。
ステート保持レジスタ104が保持するステートの遷移の詳細を説明する。ステート保持レジスタ104が保持するステートは、システムボード1に常駐電源が投入されパワーオンされる際には、STATE#0である。STATE#0は、パワーオン時の初期状態のステートであり、FPGAリセット信号の値は1でFPGAリセット信号はアサート状態となる。この場合、FPGA50は、動作が不許可の状態となる。その後、直ぐにMPU20からリセット信号が入力され、ステート保持レジスタ104が保持するステートが、STATE#1に遷移する。
次に、ステート保持レジスタ104が保持するステートは、次ステート決定部108からの指示を受けて、STATE#2に遷移する。STATE#2は、FPGA50が動作可能であることが確認された状態である。STATE#2の場合、FPGAリセット信号の値が0に変えられFPGA50がリセットされて動作可能な状態となる。
次に、ステート保持レジスタ104が保持するステートは、ステートエラーが発生しなければ、次ステート決定部108からの指示にしたがい、STATE#3~#5へと順番に切り替えられていく。ステート保持レジスタ104の保持するステートは、次ステート決定部108からの次のステートの情報が入力されなければ、その時点のステートが維持される。
また、ステート保持レジスタ104が保持するステートの情報で1ビット誤りが発生した場合、次ステート決定部108からの指示を受けて、ステート保持レジスタ104が保持するステートは、未定義のステートに遷移する。その後、ステート保持レジスタ104が保持するステートは、次ステート決定部108からの指示を受けて、初期状態のSTATE#0に戻る。
リセット信号生成論理回路105は、システムボード1のパワーオン時から、値が1のFPGAリセット信号を生成して、出力回路107へ出力する。値が1のFPGAリセット信号は、FPGA50の動作を不許可とする信号である。その後、リセット信号生成論理回路105は、ステート保持レジスタ104が保持するステートがSTATE#2に遷移すると、FPGA50をリセットして動作可能とする値が0のFPGAリセット信号を生成して、出力回路107へ出力する。値が0のFPGAリセット信号は、FPGA50の動作を許可する信号であり、FPGA50をリセットさせて動作を開始させる。このSTATE#2のステートが、「所定のステート」の一例にあたる。
スイッチ106は、リセット信号生成論理回路105から出力された信号を出力回路107へ送信する信号伝送路上に配置される。スイッチ106がオンの場合、リセット信号生成論理回路105と出力回路107とが接続され、リセット信号生成論理回路105から出力された信号が出力回路107へ入力される状態となる。これに対して、スイッチ106がオフになると、リセット信号生成論理回路105と出力回路107とを結ぶ信号伝送路は遮断され、リセット信号生成論理回路105から出力された信号が出力回路107へ入力されなくなる。スイッチ106のオンオフは、多数決論理回路103から出力された制御信号により切り替えられる。
出力回路107は、ステート保持レジスタ104から出力されたFPGAリセット信号の値を保持して、保持した値のFPGAリセット信号をFPGA50へ出力する。スイッチ106がオンの場合、リセット信号生成論理回路105から出力されたFPGAリセット信号は出力回路107へ入力される。その場合、出力回路107は、リセット信号生成論理回路105から出力されたFPGAリセット信号と同じ値のFPGAリセット信号をFPGA50へ出力する。これに対して、スイッチ106がオフの場合、リセット信号生成論理回路105から出力されたFPGAリセット信号は出力回路107へ入力されない。その場合、出力回路107は、スイッチ106がオフになった後のリセット信号生成論理回路105から出力されたFPGAリセット信号に依存しない自己が保持する値のFPGAリセット信号をFPGA50へ出力する。
リセット信号生成論理回路105が、「信号生成部」の一例にあたる。また、リセット信号生成論理回路105、スイッチ106及び出力回路107が、「出力部」の一例にあたる。
出力回路107が、値が1のFPGAリセット信号をFPGA50へ出力した場合、FPGAリセット信号はアサート状態であり、FPGA50は動作が不許可の状態となる。また、出力回路107が、値が0のFPGAリセット信号をFPGA50へ出力した場合、FPGAリセット信号はデアサートの状態となり、FPGA50はリセットされ動作可能となる。
誤り検出部101は、ステート保持レジスタ104が保持する各ビットの値を取得する。そして、誤り検出部101は、ステート保持レジスタ104が保持する情報のパリティチェックを実行する。パリティチェックによりエラーが検出されなかった場合、誤り検出部101は、エラー検出レジスタ121~123のそれぞれの値を0に設定する。これに対して、パリティチェックにより1ビット誤りが検出された場合、誤り検出部101は、エラー検出レジスタ121~123のそれぞれの値を1に設定する。
エラー検出レジスタ121~123は、それぞれが1ビットの値を格納するレジスタである。エラー検出レジスタ121~123は、ステート保持レジスタ104が保持する情報において1ビット誤りが検出されていない場合は値が0に設定される。そして、ステート保持レジスタ104が保持する情報において1ビット誤りが検出された場合、エラー検出レジスタ121~123の値は1に設定される。
多数決論理回路103は、エラー検出レジスタ121~123のそれぞれの値を取得する。そして、多数決論理回路103は、エラー検出レジスタ121~123のそれぞれの値の多数決を取り、1ビット誤りが発生したか否かを決定する。具体的には、多数決の結果の値が0の場合、多数決論理回路103は、1ビット誤りは発生していないと判定する。その場合、多数決論理回路103は、スイッチ106をオンの状態のまま維持する。これに対して、多数決の結果の値が1の場合、多数決論理回路103は、1ビット誤りが発生したと判定する。その場合、多数決論理回路103は、スイッチ106をオフの状態に切り替える。このように、エラー検出レジスタ121~123のそれぞれの値の多数決により1ビット誤りの発生を判定することで、多数決論理回路103は、エラー検出レジスタ121~123におけるエラーの発生による誤った制御を回避する。
多数決論理回路103は、ステート保持レジスタ104が保持する情報において1ビット誤りが発生した場合、スイッチ106をオフにする。この後、リセット信号生成論理回路105により生成されたFPGAリセット信号は出力回路107へ入力されなくなる。このため、ステート保持レジスタ104が保持する情報において1ビット誤りが発生した後は、FPGA50へ出力されるFPGAリセット信号は変化せずに値を維持し続ける。例えば、ステート保持レジスタ104が保持する情報において1ビット誤りが発生した時点で、FPGAリセット信号がアサート状態であればその状態が維持され、その後はFPGA50のリセットは発生しない。これに対して、ステート保持レジスタ104が保持する情報において1ビット誤りが発生した時点で、FPGAリセット信号がデアサート状態であればその状態が維持され、FPGA50はリセット状態が継続する。この多数決論理回路103が、「制御部」の一例にあたる。
次に、図3を参照して、FPGAリセット信号がデアサート状態に遷移した後に1ビット誤りが発生した場合のステートの遷移を説明する。図3は、FPGAリセット信号がデアサート状態に遷移した後に1ビット誤りが発生した場合のステートの遷移を表すステート図である。
システムボード1に常駐電源が投入されパワーオンされる際には、ステート保持レジスタ104が保持するステートは、STATE#0の状態である。この場合、リセット信号生成論理回路105により生成されるFPGAリセット信号の値は1でありアサート状態である。すなわち、FPGA50は、出力回路107から値が1のFPGAリセット信号の入力を受けて、動作が不許可の状態のまま動作の停止状態を継続する。ステート保持レジスタ104は、次ステート決定部108から次のステートの入力を受けるまでは、STATE#0のステートを保持する(ステップS101)。その後、MPU20からリセット信号がCPLD10に入力されて、ステート保持レジスタ104が保持するステートは、STATE#1に遷移する(ステップS102)。ステート保持レジスタ104は、次ステート決定部108から次のステートの入力を受けるまでは、STATE#1のステートを保持する(ステップS103)。
次に、ステート保持レジスタ104が保持するステートは、次ステート決定部108からの入力を受けて、STATE#2に遷移する(ステップS104)。この場合、リセット信号生成論理回路105により生成されるFPGAリセット信号の値は0に変化する。すなわち、FPGA50は、出力回路107から値が0のFPGAリセット信号の入力を受けて、リセットが行われ動作を開始する。ステート保持レジスタ104は、次ステート決定部108から次のステートの入力を受けるまでは、STATE#2のステートを保持する(ステップS105)。
次に、ステート保持レジスタ104が保持するステートは、次ステート決定部108からの入力を受けて、STATE#3に遷移する(ステップS106)。1ビット誤りが発生しなければ、ステート保持レジスタ104が保持するステートは、この後、次ステート決定部108からの入力にしたがって、STATE#4及びSTATE#5へと順次遷移する(ステップS107~S111)。ただし、ここでは、この時点でステート保持レジスタ104が保持するステートの情報に1ビット誤りが発生した場合について説明する。
その場合、次ステート決定部108から次ステートの情報として未定義のステートの入力を受けて、ステート保持レジスタ104のステートは未定義のステートに遷移する(ステップS112)。図3では、未定義のステートを「UNKNOWN」として表した。この場合、誤り検出部101は、1ビット誤りを検出してエラー検出レジスタ121~123の値を1に変更する。多数決論理回路103は、エラー検出レジスタ121~123の値の多数決をとることで値が1であることを確認して、スイッチ106をオフにする。これにより、リセット信号生成論理回路105がこの後に生成するFPGAリセット信号は、出力回路107に入力されなくなる。そして、出力回路107は、この時点で保持する値が0のFPGAリセット信号の出力をこの後は継続する。
ステート保持レジスタ104が保持するステートは、次ステート決定部108からのSTATE#0の情報の入力を受けて、未定義のステートに変化した後にSTATE#0へ戻る。STATE#0にステートが戻ると、リセット信号生成論理回路105は、値が1のFPGAリセット信号を生成して出力する。ただし、スイッチ106はオフされており、リセット信号生成論理回路105が新たに生成した値が1のFPGAリセット信号はFPGA50へ入力されず、出力回路107が出力する値が0のFPGAリセット信号のFPGA50への入力が継続する。
次に、図4を参照して、FPGAリセット信号がデアサート状態に遷移した後に1ビット誤りが発生した場合の信号の変化をさらに説明する。図4は、FPGAリセット信号がデアサート状態に遷移した後に1ビット誤りが発生した場合の信号の変化を表すタイミングチャートである。
図4における信号201は、システムクロックを表す。また、信号202は、MPU20からのリセット信号を表す。また、状態遷移203は、ステート保持レジスタ104が保持するステートを表す。また、状態遷移204は、次ステート決定部108が保持する次のステートを表す。また、ビット状態205は、エラー検出レジスタ121~123のビット値を表す。また、信号206は、FPGAリセット信号の値を表す。
信号202、状態遷移203、状態遷移204、ビット状態205及び信号206は、システムクロックである信号201に同期して動作する。
システムボード1がパワーオンされる際は、状態遷移203及び204ともに、STATE#0である。この時点では誤り検出部101は1ビット誤りを検出していないので、ビット状態205は、エラー検出レジスタ121~123のビット値の多数決の値が0となる。
信号202の値が、0から1に遷移するとCPLD10にリセット信号が入力され、状態遷移204に示すように、次ステート決定部108が決定する次のステートはSTATE#1に遷移する。次のステートがSTATE#1にされることで、状態遷移203に示すように、ステート保持レジスタ104が保持するステートはSTATE#1に遷移する。
その後、状態遷移204に示すように、次ステート決定部108が決定する次のステートはSTATE#2~#3へ順次遷移する。これを受けて、状態遷移203に示すように、ステート保持レジスタ104が保持するステートもSTATE#2~#3へ順次遷移する。ステート保持レジスタ104が保持するステートがSTATE#3に遷移した直後の信号201の立ち上がりで、信号206に示すように、タイミング211でFPGAリセット信号の値が0に変化する。
このSTATE#3の状態でステート保持レジスタ104が保持するステートの情報に1ビット誤りが発生した場合、状態遷移204に示すように、次ステート決定部108が決定する次のステートは未定義のステートに遷移する。これを受けて、状態遷移203に示すように、ステート保持レジスタ104が保持するステートも未定義のステートへ遷移する。この場合、誤り検出部101が1ビット誤りを検出しエラー検出レジスタ121~123の値を1に変えることで、ビット状態205に示すように、タイミング212でエラー検出レジスタ121~123のビット値の多数決の値が1に変わる。これにより、多数決論理回路103によりスイッチ106がオフにされ、これ以降は、FPGA50に入力されるリセット信号の値は、信号206に示すように0に固定される。
次に、図5を参照して、FPGAリセット信号がデアサート状態に遷移する前に1ビット誤りが発生した場合のステートの遷移を説明する。図5は、FPGAリセット信号がデアサート状態に遷移する前に1ビット誤りが発生した場合のステートの遷移を表すステート図である。
システムボード1に常駐電源が投入されパワーオンされる際には、ステート保持レジスタ104が保持するステートは、STATE#0の状態である。この場合、リセット信号生成論理回路105により生成されるFPGAリセット信号の値は1でありアサート状態である。すなわち、FPGA50は、出力回路107から値が1のFPGAリセット信号の入力を受けて、動作が不許可の状態のまま動作の停止状態を継続する。ステート保持レジスタ104は、次ステート決定部108から次のステートの入力を受けるまでは、STATE#0のステートを保持する(ステップS201)。その後、MPU20からリセット信号がCPLD10に入力されて、ステート保持レジスタ104が保持するステートは、STATE#1に遷移する(ステップS202)。ステート保持レジスタ104は、次ステート決定部108から次のステートの入力を受けるまでは、STATE#1のステートを保持する(ステップS203)。
1ビット誤りが発生しなければ、この後にステートはSTATE#2~#5へと順次遷移する(ステップS204~S211)。ただし、ここでは、この時点でステート保持レジスタ104が保持するステートの情報に1ビット誤りが発生した場合について説明する。
その場合、ステート保持レジスタ104のステートは未定義のステートに遷移する(ステップS212)。この場合、誤り検出部101は、1ビット誤りを検出してエラー検出レジスタ121~123の値を1に変更する。多数決論理回路103は、エラー検出レジスタ121~123の値の多数決をとり値が1であることを確認して、スイッチ106をオフにする。これにより、リセット信号生成論理回路105がこの後に生成するFPGAリセット信号は出力回路107に入力されなくなる。そして、出力回路107は、この時点で保持する値が1のFPGAリセット信号の出力をこの後は継続する。
ステート保持レジスタ104が保持するステートは、未定義のステートに変化した後にSTATE#0へ戻る。STATE#0にステートが戻ると、リセット信号生成論理回路105は、値が1のFPGAリセット信号を生成して出力する。ただし、スイッチ106はオフされており、リセット信号生成論理回路105が新たに生成した値が1のFPGAリセット信号はFPGA50へ入力されず、出力回路107が出力する値が1のFPGAリセット信号のFPGA50への入力が継続する。
次に、図6を参照して、FPGAリセット信号がデアサート状態に遷移した後に1ビット誤りが発生した場合の信号の変化をさらに説明する。図6は、FPGAリセット信号がデアサート状態に遷移した後に1ビット誤りが発生した場合の信号の変化を表すタイミングチャートである。
図6における信号201、信号202、状態遷移203、状態遷移204、ビット状態205及び信号206は、それぞれ図4と同様の信号、状態遷移及びビット状態を表す。
システムボード1がパワーオンされる際は、状態遷移203及び204ともに、STATE#0である。この時点では誤り検出部101は1ビット誤りを検出していないので、ビット状態205は、エラー検出レジスタ121~123のビット値の多数決の値が0となる。
信号202の値が、0から1に遷移するとCPLD10にリセット信号が入力され、状態遷移204に示すように、次ステート決定部108が決定する次のステートはSTATE#1に遷移する。次のステートがSTATE#1にされることで、その後、状態遷移203に示すように、ステート保持レジスタ104が保持するステートはSTATE#1に遷移する。
このSTATE#1の状態でステート保持レジスタ104が保持するステートの情報に1ビット誤りが発生した場合、状態遷移204に示すように、次ステート決定部108が決定する次のステートは未定義のステートに遷移する。これを受けて、状態遷移203に示すように、ステート保持レジスタ104が保持するステートも未定義のステートへ遷移する。この場合、誤り検出部101が1ビット誤りを検出しエラー検出レジスタ121~123の値を1に変えることで、ビット状態205に示すように、タイミング213でエラー検出レジスタ121~123のビット値の多数決の値が1に変わる。これにより、多数決論理回路103によりスイッチ106がオフにされ、これ以降は、FPGA50に入力されるリセット信号の値は、信号206に示すように1に固定される。
次に、図7を参照して、ステートエラー発生に対応したFPGAリセット信号の制御の流れを説明する。図7は、ステートエラー発生に対応したFPGAリセット信号の制御のフローチャートである。
誤り検出部101は、ステート保持レジスタ104が保持するステートの情報の各ビットの値を取得してパリティチェックを行う(ステップS1)。
そして、誤り検出部101は、エラー検出結果をエラー検出レジスタ121~123に格納する(ステップS2)。
多数決論理回路103は、エラー検出レジスタ121~123に格納された各値を用いた多数決論理によりステート保持レジスタ104が保持するステートの情報における1ビット誤りの発生を確認する(ステップS3)。
そして、多数決論理回路103は、ステート保持レジスタ104が保持するステートの情報における1ビット誤りが発生したか否かを判定する(ステップS4)。
ステート保持レジスタ104が保持するステートの情報における1ビット誤りが発生していない場合(ステップS4:否定)、多数決論理回路103は、スイッチ106をオンの状態のまま維持する。
これに対して、ステート保持レジスタ104が保持するステートの情報における1ビット誤りが発生した場合(ステップS4:肯定)、多数決論理回路103は、スイッチ106をオフにして、FPGAリセット信号の伝送経路を遮断する(ステップS5)。これにより、FPGA50へ入力されるFPGAリセット信号の値は、その時点での値に固定される。
ここで、本実施例では3つのエラー検出レジスタ121~123を用いる場合で説明したが、この部分で発生するエラーを考慮しない場合、エラー検出レジスタ121を1つ配置した構成でもよい。また、エラー検出レジスタ121~123は、3つ以上配置されてもよく、その場合奇数個であることが好ましい。また、ここでは、CPLD10内のブロックを例に説明したが、以上に説明したビット誤りが発生した場合に出力する制御信号の値を制御する構成は、FPGA50など他のシステムに適用することも可能である。
なお、以上に説明した構成を適用するシステムは、以下の条件を満たすことが好ましい。1つは、構成が動作するブロックは、ステートで動作状態が管理され、且つ、そのステートに基づいてそのブロックの外に制御信号の出力を行うブロックであるという条件である。他の1つの条件は、各構成が動作するブロックにおいてステートでエラーが起きた場合も、システム全体の動作を継続することが望ましいシステムであるという条件である。また、残りの1つの条件は、構成が動作するブロックは、ステートの情報のビット誤りが発生した場合に、ステートによる処理を継続しなくてもよいブロックであるという条件である。
以上に説明したように、本実施例に係るステートマシンを含むCPLDは、ステートエラーが発生した場合に、自己が搭載されたブロック以外の外部のブロックや外部の装置へ出力する信号の値をその時点での値に固定する。これにより、外部のブロックや外部の装置へ、ステートエラーの影響が波及することを軽減できる。例えば、ステート保持レジスタに1ビット誤りが発生した場合でも、FPGAのリセットが意図せずアサートされることを防ぐことが可能となる。このように、予期せぬステートの変化による誤作動がブロック外に伝搬することを防止でき、システムを安定稼働させることができる。また、エラー検出レジスタを3ビット用意することで、値が異なる場合にも正確な情報を用いて外部へ出力される信号の制御を行うことができ、適切な制御を行うことができる。
図8は、実施例2に係るFPGAにおけるブロックの概要を表す回路図である。本実施例では、FPGAに搭載されたステートマシンの出力を制御する場合について説明する。本実施例に係るステート保持レジスタ104はECC140を有することが実施例1と異なる。図8において、図2と同様の符号を有する各部は特に説明のない限り図2と同様の機能を有する。
FPGA50は、ブロック500、ブロック501及びブロック502を有する。ブロック500は、ステートマシンを有する。ブロック500は、ステートに応じてブロック501の動作のイネーブル信号を生成し、生成したイネーブル信号をブロック501へ送信することでブロック501の動作を開始させる。以下に、ブロック500の詳細を説明する。
ブロック500は、誤り検出部101、多数決論理回路103及びエラー検出レジスタ121~123を有する。また、ブロック500は、ステート保持レジスタ104、動作イネーブル信号生成論理回路109、スイッチ106、出力回路107及び次ステート決定部108を有する。
ステート保持レジスタ104は、ECC140を有する。ECC140は、1ビット誤りを検出して訂正し、動作を継続させる。また、ECC140は、2ビット以上の誤りの場合、エラー検出を行う。ECC140は、訂正困難な2ビット以上のエラーの発生を誤り検出部101に通知する。
また、ステート保持レジスタ104は、ステートを保持しFPGAリセット信号生成ブロック100の状態を管理する。ステート保持レジスタ104は、次ステート決定部108から指示された次のステートへ保持するステートを遷移させる。
ステート保持レジスタ104は、MPU20により動作するファームウェアからFPGA50がブロック501の動作開始指示を受けると、ステートの管理を開始する。ステートの管理開始時には、ステート保持レジスタ104は、STATE#0のステートを有する。その後、ステート保持レジスタ104は、次ステート決定部108からの次のステートの情報の入力を受けることで、保持するステートをSTATE#1~#3へと順次遷移させる。ここでは、STATE#3が、シーケンスが完了するステートである場合で説明する。ステート保持レジスタ104が保持するステートがSTATE#3に遷移した後、FPGA50がファームウェアからブロック501の停止指示を受けるまで、ステート保持レジスタ104が保持するステートは、STATE#3の状態が維持される。その後、FPGA50がファームウェアからブロック501の停止指示を受けると、ステート保持レジスタ104は、次ステート決定部108から初期状態であるSTATE#0が次のステートである旨の通知を受けて、保持するステートをSTATE#0に遷移させて初期状態に戻す。
ここで、STATE#0~#2のステートは、ブロック501の動作不許可の状態であり、これらのステートでは、ブロック501へ出力するイネーブル信号の値は0であり、ブロック501は動作を開始しない状態である。STATE#3のステートは、ブロック501の動作開始が許可された状態であり、このステートでは、ブロック501へ出力するイネーブル信号の値は1であり、ブロック501は動作を開始することができる。
また、ステート保持レジスタ104が保持するステートの情報で2ビット以上のエラーが発生した場合、次ステート決定部108からの通知を受けて、ステート保持レジスタ104が保持するステートは、未定義のステートに遷移する。その後、例えば、ステート保持レジスタ104が保持するステートは、次ステート決定部108からの通知を受けて、初期状態のSTATE#0に戻る。
次ステート決定部108は、現在のステート及び1つ又は複数の入力を基に次のステートを決定して、決定した次のステートの情報をステート保持レジスタ104へ出力する。ステート保持レジスタ104が保持するステートがSTATE#5へ遷移後、FPGA50がファームウェアからブロック501の停止指示を受けると、次ステート決定部108は、次のステートを初期状態のSTATE#0と決定する。そして、次ステート決定部108は、STATE#0を次のステートの情報としてステート保持レジスタ104へ出力する。
また、ステート保持レジスタ104が保持するステートの情報において2ビット以上のエラーが発生した場合、次ステート決定部108は、未定義のステートを次のステートに決定して、その情報をステート保持レジスタ104へ出力する。その後、次ステート決定部108は、初期状態であるSTATE#0を次のステートと決定して、その情報をステート保持レジスタ104へ出力する。
動作イネーブル信号生成論理回路109は、ステート保持レジスタ104が保持するステートを監視し、ステートがSTATE#0~#2の場合、ブロック501の動作を不許可とする値が0のイネーブル信号を生成して出力する。また、動作イネーブル信号生成論理回路109は、ステートがSTATE#3に遷移すると、ブロック501の動作を許可する値が1のイネーブル信号を生成して出力する。その後、ステートがSTATE#0に戻ると、動作イネーブル信号生成論理回路109が生成して出力するイネーブル信号の値も「0」に戻る。
誤り検出部101は、訂正困難な2ビット以上のエラーの発生の通知をステート保持レジスタ104から受ける。訂正困難な2ビット以上のエラーの発生の通知を受けた場合、誤り検出部101は、エラーの発生を検出して、エラー検出レジスタ121~123の値を1に変更する。
多数決論理回路103は、エラー検出レジスタ121~123のそれぞれの値を用いて多数決を取り、2ビット以上のエラーの発生の検出に用いる。多数決論理回路103は、2ビット以上のエラーの発生を検出しない状態では、多数決論理回路103は、スイッチ106をオンの状態に維持する。これに対して、2ビット以上のエラーの発生を検出すると、スイッチ106をオフにする。これにより、動作イネーブル信号生成論理回路109から出力されたイネーブル信号が出力回路107へ入力される経路が遮断され、ブロック501へ入力されるイネーブル信号の値が固定される。
スイッチ106をオフの状態にした場合、エラー検出レジスタ121~123の値がクリアされて0に戻らない限り、多数決論理回路103は、スイッチ106のオフの状態を維持する。エラー検出レジスタ121~123の値がクリアされて0に戻ると、多数決論理回路103は、スイッチ106をオンの状態に戻す。これにより、動作イネーブル信号生成論理回路109から出力されたイネーブル信号が出力回路107へ入力されることになり、ブロック501へ入力されるイネーブル信号の値が変化可能となる。
出力回路107は、スイッチ106がオンの場合、動作イネーブル信号生成論理回路109が生成したイネーブル信号の入力を受ける。そして、出力回路107は、入力されたイネーブル信号の値を保持して、保持する値を有するイネーブル信号をブロック501へ出力する。また、スイッチ106がオフの場合、出力回路107は、ステート保持レジスタ104からのイネーブル信号の入力を受けない。その場合、出力回路107は、保持する値のイネーブル信号のブロック501への送信を継続する。すなわち、ステート保持レジスタ104が保持するステートの情報において2ビット以上のエラーが発生した場合、それ以降、出力回路107は、その時点で保持する値のイネーブル信号の送信を継続する。
次に、図9を参照して、イネーブル信号が有効になった後に2ビット以上のエラーが発生した場合のステートの遷移を説明する。図9は、イネーブル信号が有効になった後に2ビット以上のエラーが発生した場合のステートの遷移を表すステート図である。
ファームウェアからFPGA50がブロック501の動作開始指示を受けた際には、ステート保持レジスタ104が保持するステートは、STATE#0の状態である。この場合、動作イネーブル信号生成論理回路109により生成されるイネーブル信号の値は0である。すなわち、ブロック501は、出力回路107から値が0であり無効を示すイネーブル信号の入力を受けて、動作が不許可の状態のまま動作の停止状態を継続する。ステート保持レジスタ104は、次ステート決定部108から次のステートの入力を受けるまでは、STATE#0のステートを保持する(ステップS301)。その後、次ステート決定部108からの入力にしたがい、ステート保持レジスタ104が保持するステートはSTATE#1~STATE#3へと順次遷移する(ステップS302~S307)。ステート保持レジスタ104が保持するステートがSTATE#3に遷移すると、動作イネーブル信号生成論理回路109は、値が1のイネーブル信号を生成して、出力回路107へ送信する。出力回路107は、値が1のネーブル信号を保持し、且つ、値が1のネーブル信号をブロック501へ送信する。ブロック501は、値が1のイネーブル信号を受信して動作を開始する。
ここでは、STATE#3へ遷移後にステート保持レジスタ104が保持するステートの情報に2ビット以上のエラーが発生した場合について説明する。その場合、ステート保持レジスタ104のステートは未定義のステートに遷移する(ステップS308)。この場合、ECC140は、2ビット以上のエラーの発生を検出して誤り検出部101に通知する。誤り検出部101は、2ビット以上のエラーの発生を検出の通知をECC140から受けて、エラー検出レジスタ121~123の値を1に変更する。多数決論理回路103は、エラー検出レジスタ121~123の値の多数決をとることで値が1であることを確認して、スイッチ106をオフにする。これにより、動作イネーブル信号生成論理回路109がこの後に生成するイネーブル信号は出力回路107に入力されなくなる。そして、出力回路107は、この時点で保持する値が1のイネーブル信号の出力をこの後は継続する。
ステート保持レジスタ104が保持するステートは、未定義のステートに変化した後にSTATE#0へ戻る。STATE#0にステートが戻ると、動作イネーブル信号生成論理回路109は、値が0のイネーブル信号を生成して出力する。ただし、スイッチ106はオフされており、動作イネーブル信号生成論理回路109が新たに生成した値が0のイネーブル信号はブロック501へ送信されず、出力回路107が送信する値が1のイネーブル信号のブロック501への入力が継続する。
次に、図10を参照して、イネーブル信号が有効になる前に2ビット以上のエラーが発生した場合のステートの遷移を説明する。図10は、イネーブル信号が有効になる前に2ビット以上のエラーが発生した場合のステートの遷移を表すステート図である。
ファームウェアからFPGA50がブロック501の動作開始指示を受けた際には、ステート保持レジスタ104が保持するステートは、STATE#0の状態である。この場合、動作イネーブル信号生成論理回路109により生成されるイネーブル信号の値は0である。その後、ステート保持レジスタ104は、次ステート決定部108から次のステートの入力を受けるまでは、STATE#0のステートを保持する(ステップS401)。
次に、ステート保持レジスタ104は、次ステート決定部108から次のステートとしてSTATE#1の情報の入力を受けて、保持するステートをSTATE#1に遷移させる(ステップS402)。この場合も、動作イネーブル信号生成論理回路109により生成されるイネーブル信号の値は0である。その後、ステート保持レジスタ104は、次ステート決定部108から次のステートの入力を受けるまでは、STATE#1のステートを保持する(ステップS403)。
ここでは、ステート保持レジスタ104が保持するステートがSTATE#1の時点で、ステート保持レジスタ104が保持するステートの情報に2ビット以上のエラーが発生した場合で説明する。その場合、ステート保持レジスタ104のステートは未定義のステートに遷移する(ステップS404)。この場合、ECC140は、2ビット以上のエラーの発生を検出して誤り検出部101に通知する。誤り検出部101は、2ビット以上のエラーの発生を検出の通知をECC140から受けて、エラー検出レジスタ121~123の値を1に変更する。多数決論理回路103は、エラー検出レジスタ121~123の値の多数決をとることで値が1であることを確認して、スイッチ106をオフにする。これにより、動作イネーブル信号生成論理回路109がこの後に生成するイネーブル信号は出力回路107に入力されなくなる。そして、出力回路107は、この時点で保持する値が0のイネーブル信号の出力をこの後は継続する。
以上に説明したように、本実施例に係るステートマシンを搭載した装置は、ステート保持レジスタにECCを備え、1ビット誤りであればエラー訂正を行って動作を継続し、2ビット以上のエラーが発生した場合にエラーを検出する。そして、ステート保持レジスタが保持するステートの情報において2ビット以上のエラーの発生を検出した場合、エラーが発生したブロックは、自己が搭載されたブロック以外の外部のブロックや外部の装置へ出力する信号の値をその時点での値に固定する。これにより、外部のブロックや外部の装置へ、ステートエラーの影響が波及することを軽減できる。このように、ECCで1ビット誤りを訂正して動作を継続するとともに、訂正困難な2ビット以上のエラー発生時の予期せぬステートの変化による誤作動がブロック外に伝搬することを防止でき、システムを安定稼働させることができる。
1 システムボード
2 冗長システムボード
10 CPLD
20 MPU
31 MRAM
32,33 フラッシュメモリ
40 スイッチ
50 FPGA
60 SPIフラッシュメモリ
71,72 負荷回路
100 FPGAリセット信号生成ブロック
101 誤り検出部
103 多数決論理回路
104 ステート保持レジスタ
105 リセット信号生成論理回路
106 スイッチ
107 出力回路
108 次ステート決定部
109 動作イネーブル信号生成論理回路
121,122,123 エラー検出レジスタ
181,182,500,501,502 ブロック

Claims (8)

  1. 自装置が実行する処理に対応する自装置の状態を表すステートを保持し、保持する前記ステートにより自装置が実行する処理を切り替えるステート保持レジスタと、
    前記ステート保持レジスタが保持する前記ステートに応じた値を有する制御信号を出力する出力部と、
    前記ステート保持レジスタが保持する前記ステートにおけるビット誤りを検出する誤り検出部と、
    前記誤り検出部による前記ビット誤りの検出の結果をそれぞれが格納する複数のエラー検出レジスタと、
    前記エラー検出レジスタに格納された前記ビット誤りの検出の結果を基に、前記ビット誤りが発生したか否かを判定し、前記ビット誤りが発生したと判定した場合、前記出力部により出力される前記制御信号の前記値を固定する制御部と
    を備えたことを特徴とする情報処理装置。
  2. 前記エラー検出レジスタは、奇数個であることを特徴とする請求項1に記載の情報処理装置。
  3. 前記制御部は、前記エラー検出レジスタに格納された前記ビット誤りの検出の結果の多数決により前記ビット誤りが発生したか否かを判定することを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記出力部は、自装置の外部装置に前記制御信号を送信することを特徴とする請求項1~3のいずれか一つに記載の情報処理装置。
  5. 前記出力部は、
    前記制御信号の値を決定して生成する信号生成部と、
    前記信号生成部から前記制御信号を取得して保持し、保持した前記制御信号を出力する出力回路と、
    前記信号生成部と前記出力回路とを結ぶ前記制御信号の伝送経路の導通と遮断とを切り替えるスイッチを有し、
    前記制御部は、前記スイッチにより前記伝送経路を遮断することで、前記出力回路が保持する前記制御信号の値を固定することで、前記出力部により出力される前記制御信号の前記値を固定する
    ことを特徴とする請求項1~4のいずれか一つに記載の情報処理装置。
  6. 前記出力部は、前記ステート保持レジスタが保持する前記ステートが所定のステートになった場合に、出力する制御信号の値を変化させることを特徴とする請求項1~5のいずれか一つに記載の情報処理装置。
  7. 前記ステート保持レジスタは、1ビット誤りの訂正機構を備え、
    前記誤り検出部は、2ビット以上のビット誤りを検出する
    ことを特徴とする請求項1~6のいずれか一つに記載の情報処理装置。
  8. 情報処理装置が実行する処理に対応する前記情報処理装置の状態を表すステートをステート保持レジスタに保持させて、前記ステート保持レジスタが保持する前記ステートにより前記情報処理装置が実行する処理を切り替え、
    前記ステート保持レジスタが保持する前記ステートに応じた値を有する制御信号を出力し、
    前記ステート保持レジスタが保持する前記ステートの情報におけるビット誤りを検出し、
    前記ビット誤りの検出の結果を複数のエラー検出レジスタに格納させ、
    複数の前記エラー検出レジスタに格納された前記ビット誤りの検出の結果を基に、前記ビット誤りが発生したか否かを判定し、
    前記ビット誤りが発生したと判定した場合、前記制御信号の前記値を固定する
    ことを特徴とする情報処理方法。
JP2020195820A 2020-11-26 2020-11-26 情報処理装置及び情報処理方法 Active JP7567399B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020195820A JP7567399B2 (ja) 2020-11-26 2020-11-26 情報処理装置及び情報処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020195820A JP7567399B2 (ja) 2020-11-26 2020-11-26 情報処理装置及び情報処理方法

Publications (2)

Publication Number Publication Date
JP2022084150A true JP2022084150A (ja) 2022-06-07
JP7567399B2 JP7567399B2 (ja) 2024-10-16

Family

ID=81868307

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020195820A Active JP7567399B2 (ja) 2020-11-26 2020-11-26 情報処理装置及び情報処理方法

Country Status (1)

Country Link
JP (1) JP7567399B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312203A (ja) 2001-04-10 2002-10-25 Matsushita Electric Ind Co Ltd ステートマシン、カウンタ、誤動作検出回路、誤動作検出方法、プログラム記録媒体及びプログラム
JP2010218004A (ja) 2009-03-13 2010-09-30 Toshiba Mach Co Ltd ステートマシン
JP2015001774A (ja) 2013-06-13 2015-01-05 富士通株式会社 半導体集積回路及びその処理方法
JP6129438B1 (ja) 2015-12-07 2017-05-17 三菱電機株式会社 信号処理装置

Also Published As

Publication number Publication date
JP7567399B2 (ja) 2024-10-16

Similar Documents

Publication Publication Date Title
US7290169B2 (en) Core-level processor lockstepping
US9582448B2 (en) Transmission apparatus and control unit
US7296181B2 (en) Lockstep error signaling
US20170242809A1 (en) Abnormal interrupt request processing
US20190089619A1 (en) Self-test engine for network on chip
JP2009017010A (ja) 再構成可能デバイス
EP3486781B1 (en) Semiconductor device
WO2009155993A1 (en) A safety system for a machine
CN103678031A (zh) 二乘二取二冗余系统及方法
US11823759B2 (en) Testing of fault detection circuit
CN113282231B (zh) 存储装置以及相关闪存控制器
JP2022084150A (ja) 情報処理装置及び情報処理方法
CN110196550B (zh) 电路
US9542266B2 (en) Semiconductor integrated circuit and method of processing in semiconductor integrated circuit
JP2012118725A (ja) エラー検出修復装置
US11402425B2 (en) Failure detector circuit, failure detection system, and method
US20230064905A1 (en) Semiconductor device
JP2018147510A (ja) サーバ装置およびサーバシステム
JP5604799B2 (ja) フォールトトレラントコンピュータ
CN112106033B (zh) 通信电路及其控制电路
JPH1011309A (ja) プロセッサ出力比較方法およびコンピュータシステム
JP5455883B2 (ja) 制御システム及び制御システムのノードアドレス設定方法
JP2007028488A (ja) セレクタ装置
JP2022142201A (ja) 情報処理装置、情報処理システム、情報処理方法およびプログラム
JP2010073285A (ja) 情報処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230804

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240710

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240903

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240916