JP5921424B2 - データ送信装置、データ受信装置、およびバスシステム - Google Patents

データ送信装置、データ受信装置、およびバスシステム Download PDF

Info

Publication number
JP5921424B2
JP5921424B2 JP2012271451A JP2012271451A JP5921424B2 JP 5921424 B2 JP5921424 B2 JP 5921424B2 JP 2012271451 A JP2012271451 A JP 2012271451A JP 2012271451 A JP2012271451 A JP 2012271451A JP 5921424 B2 JP5921424 B2 JP 5921424B2
Authority
JP
Japan
Prior art keywords
data
ecc
transmission
unit
bus
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.)
Active
Application number
JP2012271451A
Other languages
English (en)
Other versions
JP2014116894A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2012271451A priority Critical patent/JP5921424B2/ja
Publication of JP2014116894A publication Critical patent/JP2014116894A/ja
Application granted granted Critical
Publication of JP5921424B2 publication Critical patent/JP5921424B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、データ送信装置、データ受信装置、およびバスシステムに関する。
プラント、鉄道、航空機など、人命や環境の安全確保のために非常に高い信頼性が求められる産業制御システムでは、万が一、システム内で故障や異常が発生しても、できるだけシステムを停止させないように可用性を高めることが求められる。このようなシステムの内部では、システムを制御するコントローラが使用されることが多く、そのコントローラの信頼性や可用性を高めることが重要である。
コントローラの内部では、コントローラを構成する複数のモジュールを接続して通信を行って制御しているが、特にバスシステムにおける通信の可用性を高めるには、例えば、ECC(Error Correcting Code)と呼ばれる誤り訂正符号を追加することが考えられる。ECCは、データ本体部分に対し数ビットのECCビットを追加することで、1ビットエラーの訂正に加え、2ビットエラーの検出を効率的に実現できる。
ここで、既存のバスシステムを高信頼化してECCを追加しようとした場合、ECCビットのための数ビットをバスのビットに追加する必要がある。これは場合によってはハードウェアに大幅な変更を加える必要があり、高信頼システムを短期間に開発することの妨げになり得る。そこで、ECCビットのためのハードウェアを追加せずともECCを付加した通信を実現することが考えられる。
図13は、高信頼化を行っていない従来のバスシステムの例を示す図である。以降のバスシステムでは、いずれのデータ転送もバスクロックに同期して動作するものとして説明する。送信部101内の送信データ作成部104で作成された送信データは、データ出力部106からバス103を通って、受信部102内のデータ入力部109で受信され、受信部102内でデータとして使用される。
図13に示したバスシステムで転送を行う場合のタイミングチャートの例を図14に示す。図14に示すバスクロックの立ち上がりエッジC0で送信データD1をデータ出力部106から送信し、次の立ち上がりエッジC2でデータ入力部109が受信する。以下同様に、データD2、D3、D4と送信、受信が行われる。ここで、バスシステムの送信データにECCを加え、バス幅を増やさずに転送する場合のバスシステムの例を図15に示す。
図15に示す送信部206内の送信データ作成部204で作成された送信データは、ECC生成部205にてデータに対応するECCが生成され、データ出力部206に送られる。このデータ出力部206内には出力タイミング制御部211があり、ECCとデータを送信するタイミングを調整する。受信部202内のデータ入力部209内には入力タイミング制御部212があり、ECCとデータを受信するタイミングを調整し、ECC訂正部213に送信し、ECC訂正部213は受信したデータとECCビットから誤り訂正を行う。図15に示したバスシステムで転送を行う場合のタイミングチャートの例を図16に示す。
図16に示す立ち上がりエッジC0で、データD1に対するECC1をデータ出力部206が送信し、次の立ち上がりエッジC2で、データ入力部209がECC1を受信する。同じ立ち上がりエッジC2でデータ出力部206はデータD1本体を送信し、次の立ち上がりエッジC4でデータ入力部209がデータD1を受信する。ECC2、データ2の送受信も同様である。ここで、バス203はデータ部分のビット幅しかないため、出力タイミング制御部211と入力タイミング制御部212を設計して、ECCとデータ本体のタイミング調整を図る必要がある。また、特許文献1には、ECCを付加したデータ転送において、バス幅を増加させずに高信頼なデータ転送を行う例が記載されている。
特開2005−354310号公報
ところで、従来のバスシステムにECCを付加して転送を行う高信頼なバスシステムについて、本発明者が検討した結果、以下のようなことが明らかとなった。
ECCビット用のビット幅を増やさないようにバスシステムを改変するためには、データを送信するバスでECCも転送する必要があるが、ECCとデータ本体のタイミング調整を行うために、出力タイミング制御部と入力タイミング制御部を新規に設計する必要があった。このため、例えばデバッグ用途や、高信頼機能確認のためのエラー注入用途といった、開発時には必要だがシステムの実運用時には使用しないため高信頼化が不要な既存モジュールとの通信をする場合においても、既存モジュールのデータ受信部分に改造が必要になってしまうという問題があった。
また、ECCビット用のビット幅を増やさないように転送するためには、図16に示したように、データを転送するサイクルとは別に、ECCを転送するサイクルを設ける必要があり、転送のオーバヘッドが大きくなるという問題があった。
また更に、前記特許文献1には、ECCビット用のビット幅を増やさないようにして高信頼なデータを転送する仕組みが記載されているが、ECCを転送するサイクルを送信側と受信側で新規に決めておく仕組みを実装しておく必要があるため、やはり、高信頼化が不要な既存モジュールについても改造が必要になってしまうという問題があった。
そこで、本発明は、産業制御システムなどのコントローラに使用されるバスシステムにおいて、高信頼化が不要な設計済みの既存モジュールのバスの仕様を変更することなく、新規に高信頼が必要なモジュールのみを新規設計して、例えば、バスシステムを有するコントローラ及びそれを使った産業制御システムに用いられるデータ送信装置、データ受信装置、およびバスシステムを容易に構築できるようにする。
上記課題を解決するために、例えば特許請求の範囲に記載の構成を採用する。
本題は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、送信データ作成部と、前記送信データ作成部から出力される送信データのECCを生成するECC生成部と、前記送信データと前記ECCを送信するデータ出力部と、を備えた送信部を有するバスシステムにおいて用いられるデータ送信装置であって、前記データ出力部は、バスクロックの立ち上がりに同期して前記ECCを送信する立ち上がりECC送信部と、前記バスクロックの立ち下がりに同期して前記送信データを送信する立ち下がりデータ送信部と、を備えることを特徴とする。
また、ECCと送信データを受信するデータ入力部と、前記ECCと前記送信データからECC訂正を行うECC訂正部と、を備えた受信部を有するバスシステムにおいて用いられるデータ受信装置であって、前記データ入力部は、スクロックの立ち下がりに同期して前記ECCを受信する立ち下がりECC受信部と、前記バスクロックの立ち上がりに同期して前記送信データを受信する立ち上がりデータ受信部と、を備えることを特徴とする。
また、送信データ作成部と、前記送信データ作成部から出力される送信データのECCを生成するECC生成部と、前記送信データと前記ECCを送信するデータ出力部と、を備えたデータ送信装置と、前記ECCと前記送信データを受信するデータ入力部と、前記ECCと前記送信データからECC訂正を行うECC訂正部と、を備えたデータ受信装置と、を有するバスシステムであって、前記データ送信装置が有する前記データ出力部は、バスクロックの立ち上がりに同期して前記ECCを送信する立ち上がりECC送信部と、前記バスクロックの立ち下がりに同期して前記送信データを送信する立ち下がりデータ送信部と、を備え、前記データ受信装置が有する前記データ入力部は、前記バスクロックの立ち下がりに同期して前記ECCを受信する立ち下がりECC受信部と、前記バスクロックの立ち上がりに同期して前記送信データを受信する立ち上がりデータ受信部と、を備えることを特徴とする。
本発明によれば、ECCを付加するバスシステムに対し、高信頼化が不要な既存モジュールを改造することなく容易に高信頼なバスシステムに組み込める仕組みを提供することができ、例えば、コントローラやコントローラを使った産業制御システムに用いられるデータ送信装置、データ受信装置、およびバスシステムを短期間でより簡単に設計することが可能になる。
上記した以外の課題、構成および効果は、以下の実施形態の説明により明らかにされる。
本発明のバスシステムにおける、高信頼な送信部の例である。 本発明のバスシステムにおける、高信頼な受信部の例である。 実施例1における、高信頼な送信部と高信頼な受信部を接続した例である。 図3に示した送信部と受信部で、バスクロック1サイクルでECCとデータの送受信を行うタイミングチャートの例である。 図3に示した送信部と受信部で、バスクロック2サイクルでECCとデータの送受信を行うタイミングチャートの例である。 実施例2における、高信頼な送信部と高信頼不要な既存のモジュールである受信部を接続した例である。 図6に示した送信部と受信部でECCとデータの送受信を行うタイミングチャートの例である。 実施例3における、高信頼なモジュールAと高信頼なモジュールBでデータの送受信を行うブロック図の例である。 実施例3における、高信頼なモジュールAと高信頼不要な既存モジュールCでデータの送受信を行うブロック図の例である。 実施例3における、高信頼なモジュールAと、高信頼なモジュールB、高信頼不要な既存モジュールCでデータの送受信を行うブロック図の例である。 実施例4における、ECCの転送時にECC以外の情報を含める場合の例である。 実施例5における、コントローラ及びそれを使用した産業制御システムの例である(産業制御システム)。 実施例5における、コントローラ及びそれを使用した産業制御システムの例である(情報処理システム)。 従来のバスシステムにおける送信部と受信部の例である。 図13に示した送信部と受信部で、データの送受信を行うタイミングチャートの例である。 従来のバスシステムにおける、高信頼な送信部と高信頼な受信部の例である。 図15に示した送信部と受信部で、ECCとデータの送受信を行うタイミングチャートの例である。
以下に添付図面を参照して、本発明にかかるデータ送信装置、データ受信装置、およびバスシステムの実施の形態を詳細に説明する。以降のバスシステムでは、いずれのデータ転送もバスクロックに同期して動作するものとして説明する。
図1は、本実施の形態におけるバスシステムにおける送信部の例を示した図であり、図2は、本実施の形態におけるバスシステムの受信部の例を示した図である。図1に示す送信部と図2に示す受信部を接続して示した例が図3であるため、図3を用いて本実施の形態におけるバスシステムを説明する。図3に示すバスシステムは、送信部1からバス3を介して受信部2にデータを送信する。送信されるデータには1ビットエラー訂正と2ビットエラー検出ができるECCを付加して、バスシステムの可用性を高めるものとする。
送信部1内の送信データ作成部4から、送信するデータを作成してECC生成部5とデータ出力部6に送信する。ECC生成部5では、送信するデータに対応するECCを生成してデータ出力部6に送信する。
データ出力部6は、立ち上がりECC送信部7および立ち下がりデータ送信部8を有する。この立ち上がりECC送信部7は、バスクロックの立ち上がりに同期してデータのECCを送信する。また立ち下がりデータ送信部8は、バスクロックの立ち下がりに同期してデータ本体を送信する。データ出力部6から出力されたECCおよびデータは、バス3を介して受信部2内のデータ入力部9で受信される。
このデータ入力部9は、立ち下がりECC受信部10および立ち上がりデータ受信部11を有する。この立ち下がりECC受信部10は、バスクロックの立ち下がりに同期してデータのECCを受信する。また立ち上がりデータ受信部11は、バスクロックの立ち上がりに同期してデータ本体を受信する。データ入力部9で受信したECCおよびデータはECC訂正部12で受信され、誤り訂正が施されたデータとなって、受信部2内、またはその先のシステムにて使用される。
図3に示したバスシステムでデータ転送を行う場合のタイミングチャートの例を図4に示す。図4は、送信部1と受信部2でのデータ転送を、バスクロックに同期して1サイクルで行う場合の例を示している。バスクロックの立ち上がりエッジC0において、送信部1のデータ出力部6内にある立ち上がりECC送信部7から、データD1に対応するECC1を先に送信し、立ち下がりエッジC1において、立ち下がりデータ送信部8からデータD1を送信する。一方、受信部2では、バスクロックの立ち下がりエッジC1において、データ入力部9内にある立ち下がりECC受信部10でECC1を先に受信し、立ち上がりエッジC2において、立ち上がりデータ受信部11でデータD1を受信する。受信部2内のECC訂正部12では、このECC1を使ってデータD1の誤り訂正を行う。
同様に、バスクロックの立ち上がりエッジC2において送信部1がECC2を送信し、立ち下がりエッジC3において受信部2がECC2を受信し、立ち下がりエッジC3において送信部1がデータD2を送信し、立ち上がりエッジC4において受信部2がデータD2を受信する。受信部2内のECC訂正部12では、このECC2を使ってデータD2の誤り訂正を行う。以降のECC3とデータD3、ECC4とデータD4についても同様である。
また、図5は、図3に示したバスシステムの送信部1と受信部2でのデータ転送を、バスクロックに同期して2サイクルで行う場合の例である。図5では、バスクロックの立ち上がりエッジC0において送信部1が送信したECC1が、バスクロックの立ち下がりエッジC3において受信部2で受信され、バスクロックの立ち下がりエッジC1において送信部1が送信したデータD1が、バスクロックの立ち上がりエッジC4において受信部2で受信される。
このように、本実施の形態におけるバスシステムでは、送信側ではバスクロックの立ち上がりに同期してECCを送信し、受信側ではバスクロックの立ち下がりに同期してECCを受信し、また、送信側でバスクロックの立ち下がりに同期してデータを送信し、受信側ではバスクロックの立ち上がりに同期してデータを受信する点を特徴とする。
これらのことにより、高信頼化していない既存のバスシステムに対し、ECCビット用のバス幅を新規に設ける必要がなくなる。また、立ち下がりエッジに同期してECCを転送する構成としているため、従来の立ち上がりエッジに同期したデータの送受信に対してサイクルオーバヘッドを増加することなく高信頼なバスシステムを実現することが可能になり、このバスシステムを使ったコントローラやコントローラを使った産業制御システムを早期に開発することが可能になる。
図6は、本実施の形態におけるバスシステムにおける、高信頼な送信部と、高信頼不要な既存モジュールを受信部として接続した場合の例である。なお、送信部1は実施例1と同じ構成であるため詳細説明は省略する。図6に示す受信部21は、高信頼不要な既存モジュールであり、バス転送時のECCに対応する回路を実装していない。受信部21内のデータ入力部22は、バスクロックの立ち上がりに同期してデータを受信する回路であり、バス3を介して送信部1と接続されている。
図7に、図6に示したバスシステムでデータ転送を行う場合のタイミングチャートの例を示す。送信部1はECCに対応した高信頼モジュールであるため、データ出力部6内の立ち上がりECC送信部7により、バスクロックの立ち上がりエッジC0において、データD1に対応するECC1を送信する。また、立ち下がりデータ送信部8により、バスクロックの立ち下がりエッジC1において、データD1を送信する。
一方、受信部21は、ECCに対応していない既存モジュールであり、データ入力部22はバスクロックの立ち上がりに同期してデータを受信する機能しか持たない。よって、送信部1から送信されたECC1は無視され、送信されたデータD1のみを、バスクロックの立ち上がりエッジC2において受信し、受信部22内およびその先のモジュールで使用する。以降のECC2とデータD2、ECC3とデータD3、ECC4とデータD4およびそれ以降に送信されるECCとデータについても同様である。
これらのことにより、高信頼化していない既存のバスシステムに対し、ECCビット用のバス幅を新規に設ける必要がなくなる。また、高信頼化している送信側ではバスクロックの立ち下がりエッジに同期してECCを転送し、立ち上がりエッジにデータを送信することで、高信頼化していない受信側では従来通り、バスクロックの立ち上がりに同期してデータのみ受信する構成としているため、高信頼なバスシステムに、高信頼化の不要な既存モジュールを改造不要で組み込むことが可能になる。
図8は、本実施の形態におけるバスシステムにおける、高信頼なデータの送受信を双方向で行うバスシステムの例である。モジュールA(41)は、データ送信を行う部分として、実施例1の図1に示した送信部の機能と同様に、送信データ作成部4、ECC生成部5、データ出力部6をもち、データ出力部6内には立ち上がりECC送信部7および立ち下がりデータ送信部8がある。このデータ出力部6から出力されたデータはバス3を介してモジュールB(42)に接続している。
モジュールB(42)は、データ受信を行う部分として、実施例1の図2に示した受信部の機能と同様に、データ入力部9、ECC訂正部12をもち、データ入力部9内には立ち下がりECC受信部10および立ち上がりデータ受信部11がある。一方、モジュールB(42)は、データ送信を行う部分として、実施例1の図1に示した送信部の機能と同様に、送信データ作成部54、ECC生成部55、データ出力部56をもち、データ出力部56内には立ち上がりECC送信部57および立ち下がりデータ送信部58がある。このデータ出力部56から出力されたデータはバス53を介してモジュールA(41)に接続している。
また一方で、モジュールA(41)は、データ受信を行う部分として、実施例1の図2に示した受信部の機能と同様に、データ入力部59、ECC訂正部62をもち、データ入力部59内には立ち下がりECC受信部60および立ち上がりデータ受信部61がある。モジュールA(41)およびモジュールB(42)内の各機能ブロックはこれまでの実施例にて説明した通りの動作を行い、モジュールA(41)とモジュールB(42)間のバス3とバス53でのデータ転送は、図4や図5に示したタイミングチャートに示したように、送信側ではバスクロックの立ち上がりエッジにおいてECCを送信し、バスクロックの立ち下がりエッジにおいてデータを送信する。また受信側ではバスクロックの立ち下がりエッジにおいてECCを受信し、バスクロックの立ち上がりエッジにおいてデータを受信する。
また図9は、本実施の形態のバスシステムにおける、ECCに対応した高信頼なモジュールと高信頼不要な既存モジュールとの間でデータの送受信を双方向で行うバスシステムの例である。モジュールA(41)は図8に示したものと同じ構成であるため詳細説明は省略する。モジュールC(43)は、高信頼不要でECC対応の改造が必要ない既存モジュールである。モジュールC(43)内のデータ入力部22は、バスクロックの立ち上がりに同期してデータを受信する回路であり、送信データ作成部54からのデータを送信するデータ出力部23は、バスクロックの立ち上がりに同期してデータを送信する回路である。
モジュールA(41)からバス3を介してモジュールC(43)にデータが送信され、反対に、モジュールC(43)からバス53を介してモジュールA(41)にデータが送信される。モジュールA(41)からモジュールC(43)に送信されるデータのタイミングチャートは、図7に示したように、高信頼なモジュールA(41)からECCとデータを送信し、高信頼不要なモジュールC(43)ではデータのみ受信する。
一方、高信頼不要なモジュールC(43)から高信頼なモジュールA(41)へ送信されるデータは、ECCが付加されておらず、データ本体のみとなる。この場合、データ入力部59では、立ち下がりECC受信部60にてデータをECCと認識して受信してしまうことになるが、システム上ではこれをdon‘t careとして無視し、ECC訂正部62を使用しない。立ち上がりデータ受信部61で受信したデータをそのままデータ線71を介し、モジュールA(41)内およびその先のモジュールで使用する。
図10は、図8で示した高信頼モジュールA(41)、高信頼モジュールB(42)と、図9で示した高信頼不要な既存モジュールC(43)について、モジュールA(41)に、モジュールB(42)とモジュールC(43)を接続する場合のバスシステムの例である。モジュールA(41)は高信頼モジュールであるため、ECCおよびデータをモジュールB(42)との間で送受信する。一方、モジュールC(43)は高信頼不要な既存モジュールであるため、モジュールA(41)からECCおよびデータが送信されてきても、バスクロックの立ち上がりエッジでデータのみを受信し、モジュールA(41)に対してはデータのみを送信し、モジュールA(41)内でECCに対応する部分は無視して処理される。
このように、モジュール間でバスを増やすことにより、ECCに対応した高信頼なモジュール同士であればデータ転送を双方向で高速に行うことが可能となる。また、通信するモジュールの一方が高信頼化の不要な既存モジュールである場合でも、既存モジュールは改造不要で組み込むことが可能になる。
図11に、上述した実施例1〜4に示したバスシステムにおける、データ転送のフォーマットの例を示す。本実施の形態におけるECCに対応した高信頼なバスシステムでのデータ転送は、例えば図4、図5に示したタイミングチャートのように実行される。
ここで、一般に、転送データに対して誤り訂正のECCビットを付加する場合、例えば、32ビットのデータに対しては7ビットを付加し、64ビットのデータに対しては8ビットを付加することが知られている。このように、ECCビットのビット幅は、データ本体のビット幅に対して非常に小さい。つまり、図4や図5に示したタイミングチャートにおいて、ECCの転送を示しているバスサイクルでは、バス幅に対して転送できるビット数の一部を使用しているにすぎない。よって、ECCの転送サイクルにおいて、ECCビット以外の情報を含めて送信することも可能である。
図11(a)は、ECCビットを最下位に配置し、上位ビット部分にモジュール識別子31を配置した場合の例である。本システムは、1つの装置が他の1つまたは複数の装置を一方的に制御するようなマスタ−スレーブの関係にある装置やシステムに対して適用することも可能であり、例えば、一つのマスタと複数のスレーブでデータの送受信を行うバスシステムにおいて、スレーブからマスタに対して固有のモジュール識別子をECCと同時に送信する。受信したマスタは、どのスレーブから送信されたデータかを確認することができ、より信頼性の高い、きめ細かな制御を行うことが可能になる。
図11(b)は、ECCビットを最下位に配置し、上位ビット部分にシーケンス番号32を配置した場合の例である。例えば、バスシステムにおいて、送信するデータに順番が決まっておらず、順番が入れ替わって送信される場合において、転送データのシーケンス番号をECCと同時に送信する。受信側で、シーケンス番号をチェックしてデータの並びを順番通りに並べ替えるなど、より効率の良い制御を行うことが可能になる。
図11(c)は、ECCビットを最下位に配置し、上位ビット部分にタイムスタンプ33を配置した場合の例である。例えば、バスシステムにおいて、転送されたデータの時刻のログを残しておきたい場合において、転送データのタイムスタンプをECCと同時に送信する。受信側で、タイムスタンプをチェックして、データとタイムスタンプデータとを対応付けて一緒に保存しておくことで、例えばどの時刻に異常なデータ送信が行われたかなどを解析できるシステムの実現が可能になる。
なお、図11では、ECCビットを最下位に配置した例で示したが、空いているどの部分に配置しても良い。また、ECC以外に含める情報のビット数が小さい場合は、図11(d)に示すように、モジュール識別子31、シーケンス番号32、タイムスタンプ33など、複数の情報を一度に送信するフォーマットにしてもよい。
また、ECCビットと同時に送信する情報として、1ビットの誤りを検出するパリティビットや、巡回冗長符号(Cyclic Redundancy Code)、リード・ソロモン符号など、送信するデータのビット幅に余裕がある限り、様々な情報を送信することに応用できる。これらのことにより、ECCビット以外に様々な情報を同時に送信することで、バスシステムの信頼性をより高めたり、よりきめ細かな制御を行ったりすることが可能になる。
図12Aには、上述した実施例1〜4に示したバスシステムを有するコントローラを使った産業制御システムの一例を示す。
図12Aに示す産業制御システムは、発電プラント305を制御するものである。制御端末301からの指示がバス312からコントローラ303に伝わり、I/O制御307からI/O装置304を介して指示を送信し、発電プラントを制御する。この制御端末301からの指示が誤って発電プラント305に伝わってしまうと、発電プラントが正常な動作をしなくなり甚大な被害が出るおそれがあるため、制御端末301とコントローラ303を接続するバス311とバス312は、ECCを用いて高信頼な通信を行う。
ここで、デバッグ用端末302は、コントローラ303のI/O制御の不具合を調査するデバッグ用の端末である。デバッグ用端末302は、デバッグ制御308と接続されているが、I/O制御307からのデータを解析するために使用するものであり、発電プラント305を直接制御するわけではない。このため、コントローラ303のCPUモジュール306がバス313を介して高信頼な通信のためのECCをデータと一緒に送信してきても、デバッグ用端末は高信頼化をせずに従来のデータのみをバス314から出力する仕様のままでよい。
これらのことにより、上述した実施例1〜4に示したバスシステムを適用することで、コントローラを用いた産業制御システムなどにおいて、高信頼な部分と高信頼が不要な部分とに分割して設計でき、高信頼が不要な部分は従来の設計資産をそのまま活用できるため、システムを早期に開発することが可能になる。
また、実施例1〜4に示したバスシステムは、上述したコントローラを用いた産業制御システム以外の情報処理システムに対しても、同様に広く適用することが可能である。例えば、正確な時刻を計時することが求められるタイムスタンプシステムにおいて、システム内で故障や異常が発生しても、正確に時刻を計時する必要があるために可用性を高めることが求められる。したがって、上述した産業制御システムと同様に、コントローラの信頼性や可用性を高めることが重要となる。
図12Bには、上述した実施例1〜4に示したバスシステムを有するコントローラを使った情報処理システムの一例を示す。
図12Bに示す情報処理システムは、時刻監査サーバ3051を制御するものである。クライアント制御端末3011からの指示がバス312からタイムスタンプ装置3031に伝わり、I/O制御3071から通信装置3041を介して指示を送信し、時刻監査サーバを制御する。このクライアント制御端末301からの指示が誤って時刻監査サーバ3051に伝わってしまうと、正確な時刻の計時や監査が行われなくなるおそれがあるため、クライアント制御端末3011とタイムスタンプ装置3031を接続するバス311とバス312は、ECCを用いて高信頼な通信を行う。
ここで、開発用端末3021は、タイムスタンプ装置3031のI/O制御や装置内部の不具合を調査したり、新たなシステムを開発するデバッグ用・開発用の端末である。開発用端末3021は、開発テスト制御3081と接続されているが、I/O制御3071からのデータを解析するために使用するものであり、時刻監査サーバ3051を直接制御するわけではない。このため、タイムスタンプ装置3031のCPUモジュール3061がバス313を介して高信頼な通信のためのECCをデータと一緒に送信してきても、デバッグ用端末は高信頼化をせずに従来のデータのみをバス314から出力する仕様のままでよい。
これらのことにより、上述した実施例1〜4に示したバスシステムを適用することで、このような情報処理システムにおいても、上述した産業制御システムの場合と同様に、高信頼な部分と高信頼が不要な部分とに分割して設計でき、高信頼が不要な部分は従来の設計資産をそのまま活用できるため、システムを早期に開発することが可能になる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
1 送信部
2、21 受信部
3、53 バス
4、54 送信データ作成部
5、55 ECC生成部
6、23、56 データ出力部
7、57 立ち上がりECC送信部
8、58 立ち下がりデータ送信部
9、22、59 データ入力部
10、60 立ち下がりECC受信部
11、61 立ち上がりデータ受信部
12、62 ECC訂正部
31 モジュール識別子
32 シーケンス番号
33 タイムスタンプ
41 モジュールA
42 モジュールB
43 モジュールC
71 データ線
301、302 制御端末
303 コントローラ
304 I/O装置
305 発電プラント
3011 クライアント制御端末
3021 開発用端末
3031 タイムスタンプ装置
3041 通信装置
3051 時刻監査サーバ。

Claims (7)

  1. 送信データ作成部と、前記送信データ作成部から出力される送信データのECC(Error Correcting Code)を生成するECC生成部と、前記送信データと前記ECCを送信するデータ出力部と、を備えた送信部を有するバスシステムにおいて用いられるデータ送信装置であって、
    前記データ出力部は、
    バスクロックの立ち上がりに同期して前記ECCを送信する立ち上がりECC送信部と、
    前記バスクロックの立ち下がりに同期して前記送信データを送信する立ち下がりデータ送信部と、
    を備えることを特徴とするデータ送信装置。
  2. ECCと送信データを受信するデータ入力部と、前記ECCと前記送信データからECC訂正を行うECC訂正部と、を備えた受信部を有するバスシステムにおいて用いられるデータ受信装置であって、
    前記データ入力部は、
    スクロックの立ち下がりに同期して前記ECCを受信する立ち下がりECC受信部と、
    前記バスクロックの立ち上がりに同期して前記送信データを受信する立ち上がりデータ受信部と、
    を備えることを特徴とするデータ受信装置。
  3. 送信データ作成部と、前記送信データ作成部から出力される送信データのECCを生成するECC生成部と、前記送信データと前記ECCを送信するデータ出力部と、を備えたデータ送信装置と、前記ECCと前記送信データを受信するデータ入力部と、前記ECCと前記送信データからECC訂正を行うECC訂正部と、を備えたデータ受信装置と、を有するバスシステムであって、
    前記データ送信装置が有する前記データ出力部は、
    バスクロックの立ち上がりに同期して前記ECCを送信する立ち上がりECC送信部と、
    前記バスクロックの立ち下がりに同期して前記送信データを送信する立ち下がりデータ送信部と、を備え、
    前記データ受信装置が有する前記データ入力部は、
    前記バスクロックの立ち下がりに同期して前記ECCを受信する立ち下がりECC受信部と、
    前記バスクロックの立ち上がりに同期して前記送信データを受信する立ち上がりデータ受信部と、
    を備えることを特徴とするバスシステム。
  4. 前記データ送信装置はマスタモジュールとして動作し、前記データ受信装置はスレーブモジュールとして動作し、前記データ送信装置と前記データ受信装置とが互いにバス接続されている、
    ことを特徴とする請求項3に記載のバスシステム。
  5. 前記データ送信装置は、
    前記データ出力部が、前記ECCを送信するサイクルにおいて、前記ECCの送信タイミングと共に、前記モジュールを識別するためのモジュール識別子を送信し、
    前記データ受信装置は、
    前記データ入力部が、受信した前記モジュール識別子に基づいて前記モジュールを識別する、
    ことを特徴とする請求項4に記載のバスシステム。
  6. 前記データ送信装置は、
    前記データ出力部が、前記ECCを送信するサイクルにおいて、前記ECCの送信タイミングと共に、前記送信データの順番を示すシーケンス番号を送信し、
    前記データ受信装置は、
    前記データ入力部が、前記シーケンス番号に基づいて前記送信データの順番に並べ替える、
    ことを特徴とする請求項3〜5のいずれか1項に記載のバスシステム。
  7. 前記データ送信装置は、
    前記データ出力部が、前記ECCを送信するサイクルにおいて、前記ECCの送信タイミングと共に、前記送信データのタイムスタンプを送信し、
    前記データ受信装置は、
    前記データ入力部が、前記タイムスタンプと前記送信データとを対応づけて保存する、
    ことを特徴とする請求項3〜6のいずれか1項に記載のバスシステム。
JP2012271451A 2012-12-12 2012-12-12 データ送信装置、データ受信装置、およびバスシステム Active JP5921424B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012271451A JP5921424B2 (ja) 2012-12-12 2012-12-12 データ送信装置、データ受信装置、およびバスシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012271451A JP5921424B2 (ja) 2012-12-12 2012-12-12 データ送信装置、データ受信装置、およびバスシステム

Publications (2)

Publication Number Publication Date
JP2014116894A JP2014116894A (ja) 2014-06-26
JP5921424B2 true JP5921424B2 (ja) 2016-05-24

Family

ID=51172453

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012271451A Active JP5921424B2 (ja) 2012-12-12 2012-12-12 データ送信装置、データ受信装置、およびバスシステム

Country Status (1)

Country Link
JP (1) JP5921424B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2947850B2 (ja) * 1990-02-23 1999-09-13 キヤノン株式会社 シリアル通信装置
JPH0563672A (ja) * 1991-09-03 1993-03-12 Nippon Telegr & Teleph Corp <Ntt> デマルチプレクサ回路
US5394407A (en) * 1993-07-01 1995-02-28 Motorola, Inc. Method of transferring error correcting code and circuit therefor

Also Published As

Publication number Publication date
JP2014116894A (ja) 2014-06-26

Similar Documents

Publication Publication Date Title
US9104190B2 (en) Safety module for an automation device
CN101876928B (zh) 一种二乘二取二系统的同步方法和设备
US9317359B2 (en) Reliable, low latency hardware and software inter-process communication channel for safety critical system
US8140893B2 (en) Fault-tolerant system
US10162314B2 (en) Two-way architecture
JP2011257889A (ja) 安全制御システム
JP2017151496A (ja) 安全監視装置、ネットワークシステム、安全監視方法
CN106573626B (zh) 用于处理用于车辆的行驶功能的数据的方法
US9477559B2 (en) Control device, control method and recording medium storing program thereof
US9497099B2 (en) Voting architecture for safety and mission critical systems
CA2952045A1 (en) System, method, and apparatus for generating vital messages on an on-board system of a vehicle
EP2672642A2 (en) Data transfer apparatus and data transfer method for detecting malfunctions in any of the transfer paths
JP2020021341A (ja) 冗長化システム
US9665447B2 (en) Fault-tolerant failsafe computer system using COTS components
JP5921424B2 (ja) データ送信装置、データ受信装置、およびバスシステム
US10409666B2 (en) Method and device for generating an output data stream
Idirin et al. Implementation details and safety analysis of a microcontroller-based SIL-4 software voter
CN103684404A (zh) 差错检测时的高速数据传输方法和系统
US9311212B2 (en) Task based voting for fault-tolerant fail safe computer systems
WO2020090034A1 (ja) 処理装置
JP2007026241A (ja) 異常監視方法およびそれを用いた制御装置
KR101333468B1 (ko) 비행제어컴퓨터의 채널 아이디 점검 방법 및 그 방법을 실행하기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
JP5299443B2 (ja) I2cバス通信制御システム、及びi2cバス通信制御方法
US20200089501A1 (en) Pre-loading of instructions
JP2016091480A (ja) 二重化制御システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150311

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160301

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160315

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: 20160405

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160412

R150 Certificate of patent or registration of utility model

Ref document number: 5921424

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150