JP2014116894A - Data transmission device, data reception device and bus system - Google Patents
Data transmission device, data reception device and bus system Download PDFInfo
- Publication number
- JP2014116894A JP2014116894A JP2012271451A JP2012271451A JP2014116894A JP 2014116894 A JP2014116894 A JP 2014116894A JP 2012271451 A JP2012271451 A JP 2012271451A JP 2012271451 A JP2012271451 A JP 2012271451A JP 2014116894 A JP2014116894 A JP 2014116894A
- 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.)
- Granted
Links
Images
Abstract
Description
本発明は、データ送信装置、データ受信装置、およびバスシステムに関する。 The present invention relates to a data transmission device, a data reception device, and a bus system.
プラント、鉄道、航空機など、人命や環境の安全確保のために非常に高い信頼性が求められる産業制御システムでは、万が一、システム内で故障や異常が発生しても、できるだけシステムを停止させないように可用性を高めることが求められる。このようなシステムの内部では、システムを制御するコントローラが使用されることが多く、そのコントローラの信頼性や可用性を高めることが重要である。 In industrial control systems such as plants, railways, and aircraft that require extremely high reliability to ensure the safety of human lives and the environment, even if a failure or abnormality occurs in the system, the system should not be stopped as much as possible. Increased availability is required. In such a system, a controller that controls the system is often used, and it is important to increase the reliability and availability of the controller.
コントローラの内部では、コントローラを構成する複数のモジュールを接続して通信を行って制御しているが、特にバスシステムにおける通信の可用性を高めるには、例えば、ECC(Error Correcting Code)と呼ばれる誤り訂正符号を追加することが考えられる。ECCは、データ本体部分に対し数ビットのECCビットを追加することで、1ビットエラーの訂正に加え、2ビットエラーの検出を効率的に実現できる。 In the controller, a plurality of modules constituting the controller are connected and communicated to perform control. In particular, in order to increase the availability of communication in the bus system, for example, error correction code called ECC (Error Correcting Code) is used. It is conceivable to add a code. In ECC, by adding several ECC bits to the data body portion, in addition to correcting a 1-bit error, a 2-bit error can be efficiently detected.
ここで、既存のバスシステムを高信頼化してECCを追加しようとした場合、ECCビットのための数ビットをバスのビットに追加する必要がある。これは場合によってはハードウェアに大幅な変更を加える必要があり、高信頼システムを短期間に開発することの妨げになり得る。そこで、ECCビットのためのハードウェアを追加せずともECCを付加した通信を実現することが考えられる。 Here, when an ECC is added with high reliability of an existing bus system, it is necessary to add several bits for the ECC bit to the bus bits. This may require significant changes to the hardware in some cases and can hinder the development of a reliable system in a short period of time. Therefore, it is conceivable to realize communication with ECC added without adding hardware for ECC bits.
図13は、高信頼化を行っていない従来のバスシステムの例を示す図である。以降のバスシステムでは、いずれのデータ転送もバスクロックに同期して動作するものとして説明する。送信部101内の送信データ作成部104で作成された送信データは、データ出力部106からバス103を通って、受信部102内のデータ入力部109で受信され、受信部102内でデータとして使用される。
FIG. 13 is a diagram illustrating an example of a conventional bus system in which high reliability is not performed. In the following bus systems, description will be made assuming that all data transfers operate in synchronization with the bus clock. Transmission data created by the transmission
図13に示したバスシステムで転送を行う場合のタイミングチャートの例を図14に示す。図14に示すバスクロックの立ち上がりエッジC0で送信データD1をデータ出力部106から送信し、次の立ち上がりエッジC2でデータ入力部109が受信する。以下同様に、データD2、D3、D4と送信、受信が行われる。ここで、バスシステムの送信データにECCを加え、バス幅を増やさずに転送する場合のバスシステムの例を図15に示す。
FIG. 14 shows an example of a timing chart in the case of performing transfer in the bus system shown in FIG. The transmission data D1 is transmitted from the
図15に示す送信部206内の送信データ作成部204で作成された送信データは、ECC生成部205にてデータに対応するECCが生成され、データ出力部206に送られる。このデータ出力部206内には出力タイミング制御部211があり、ECCとデータを送信するタイミングを調整する。受信部202内のデータ入力部209内には入力タイミング制御部212があり、ECCとデータを受信するタイミングを調整し、ECC訂正部213に送信し、ECC訂正部213は受信したデータとECCビットから誤り訂正を行う。図15に示したバスシステムで転送を行う場合のタイミングチャートの例を図16に示す。
For the transmission data created by the transmission
図16に示す立ち上がりエッジC0で、データD1に対するECC1をデータ出力部206が送信し、次の立ち上がりエッジC2で、データ入力部209がECC1を受信する。同じ立ち上がりエッジC2でデータ出力部206はデータD1本体を送信し、次の立ち上がりエッジC4でデータ入力部209がデータD1を受信する。ECC2、データ2の送受信も同様である。ここで、バス203はデータ部分のビット幅しかないため、出力タイミング制御部211と入力タイミング制御部212を設計して、ECCとデータ本体のタイミング調整を図る必要がある。また、特許文献1には、ECCを付加したデータ転送において、バス幅を増加させずに高信頼なデータ転送を行う例が記載されている。
At the rising edge C0 shown in FIG. 16, the
ところで、従来のバスシステムにECCを付加して転送を行う高信頼なバスシステムについて、本発明者が検討した結果、以下のようなことが明らかとなった。 By the way, as a result of the study of the highly reliable bus system that performs transfer by adding ECC to the conventional bus system, the following has been clarified.
ECCビット用のビット幅を増やさないようにバスシステムを改変するためには、データを送信するバスでECCも転送する必要があるが、ECCとデータ本体のタイミング調整を行うために、出力タイミング制御部と入力タイミング制御部を新規に設計する必要があった。このため、例えばデバッグ用途や、高信頼機能確認のためのエラー注入用途といった、開発時には必要だがシステムの実運用時には使用しないため高信頼化が不要な既存モジュールとの通信をする場合においても、既存モジュールのデータ受信部分に改造が必要になってしまうという問題があった。 In order to modify the bus system so as not to increase the bit width for ECC bits, it is also necessary to transfer ECC on the data transmission bus. However, in order to adjust the timing of the ECC and the data body, output timing control is performed. And the input timing control unit need to be newly designed. For this reason, even when communicating with existing modules that are required during development but not required during actual operation of the system, such as debugging applications and error injection applications for high-reliability function confirmation, even when communicating with existing modules that do not require high reliability. There was a problem that the data reception part of the module had to be modified.
また、ECCビット用のビット幅を増やさないように転送するためには、図16に示したように、データを転送するサイクルとは別に、ECCを転送するサイクルを設ける必要があり、転送のオーバヘッドが大きくなるという問題があった。 Further, in order to transfer without increasing the bit width for ECC bits, as shown in FIG. 16, it is necessary to provide a cycle for transferring ECC separately from the cycle for transferring data. There was a problem that became larger.
また更に、前記特許文献1には、ECCビット用のビット幅を増やさないようにして高信頼なデータを転送する仕組みが記載されているが、ECCを転送するサイクルを送信側と受信側で新規に決めておく仕組みを実装しておく必要があるため、やはり、高信頼化が不要な既存モジュールについても改造が必要になってしまうという問題があった。
Furthermore,
そこで、本発明は、産業制御システムなどのコントローラに使用されるバスシステムにおいて、高信頼化が不要な設計済みの既存モジュールのバスの仕様を変更することなく、新規に高信頼が必要なモジュールのみを新規設計して、例えば、バスシステムを有するコントローラ及びそれを使った産業制御システムに用いられるデータ送信装置、データ受信装置、およびバスシステムを容易に構築できるようにする。 Therefore, the present invention is a bus system used for a controller such as an industrial control system, and only a module that requires a new high reliability without changing the bus specification of an already designed module that does not require a high reliability. Is designed so that, for example, a data transmitter, a data receiver, and a bus system used in a controller having a bus system and an industrial control system using the controller can be easily constructed.
上記課題を解決するために、例えば特許請求の範囲に記載の構成を採用する。
本題は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、送信データ作成部と、前記送信データ作成部から出力される送信データのECCを生成するECC生成部と、前記送信データと前記ECCを送信するデータ出力部と、を備えた送信部を有するバスシステムにおいて用いられるデータ送信装置であって、前記データ出力部は、バスクロックの立ち上がりに同期して前記ECCを送信する立ち上がりECC送信部と、前記バスクロックの立ち下がりに同期して前記送信データを送信する立ち下がりデータ送信部と、を備えることを特徴とする。
In order to solve the above problems, for example, the configuration described in the claims is adopted.
The subject includes a plurality of means for solving the above-described problem. To give an example, a transmission data creation unit, an ECC generation unit that generates an ECC of transmission data output from the transmission data creation unit, A data transmission device used in a bus system including a transmission unit including transmission data and a data output unit that transmits the ECC, wherein the data output unit transmits the ECC in synchronization with a rising edge of a bus clock. And a falling data transmitter that transmits the transmission data in synchronization with a falling edge of the bus clock.
また、ECCと送信データを受信するデータ入力部と、前記ECCと前記送信データからECC訂正を行うECC訂正部と、を備えた受信部を有するバスシステムにおいて用いられるデータ受信装置であって、前記データ入力部は、前記バスクロックの立ち下がりに同期して前記ECCを受信する立ち下がりECC受信部と、前記バスクロックの立ち上がりに同期して前記送信データを受信する立ち上がりデータ受信部と、を備えることを特徴とする。 A data receiving device used in a bus system including a data input unit that receives ECC and transmission data, and an ECC correction unit that performs ECC correction from the ECC and the transmission data. The data input unit includes a falling ECC receiving unit that receives the ECC in synchronization with the falling edge of the bus clock, and a rising data receiving unit that receives the transmission data in synchronization with the rising edge of the bus clock. It is characterized by that.
また、送信データ作成部と、前記送信データ作成部から出力される送信データのECCを生成するECC生成部と、前記送信データと前記ECCを送信するデータ出力部と、を備えたデータ送信装置と、前記ECCと前記送信データを受信するデータ入力部と、前記ECCと前記送信データからECC訂正を行うECC訂正部と、を備えたデータ受信装置と、を有するバスシステムであって、前記データ送信装置が有する前記データ出力部は、バスクロックの立ち上がりに同期して前記ECCを送信する立ち上がりECC送信部と、前記バスクロックの立ち下がりに同期して前記送信データを送信する立ち下がりデータ送信部と、を備え、前記データ受信装置が有する前記データ入力部は、前記バスクロックの立ち下がりに同期して前記ECCを受信する立ち下がりECC受信部と、前記バスクロックの立ち上がりに同期して前記送信データを受信する立ち上がりデータ受信部と、を備えることを特徴とする。 A data transmission apparatus comprising: a transmission data creation unit; an ECC generation unit that generates an ECC of transmission data output from the transmission data creation unit; and a data output unit that transmits the transmission data and the ECC. A data receiving device comprising: a data input unit that receives the ECC and the transmission data; and an ECC correction unit that performs ECC correction from the ECC and the transmission data. The data output unit of the apparatus includes a rising ECC transmission unit that transmits the ECC in synchronization with a rising edge of a bus clock, and a falling data transmission unit that transmits the transmission data in synchronization with a falling edge of the bus clock. The data input unit of the data receiving device includes the EC in synchronization with a fall of the bus clock. Characterized in that it comprises a fall ECC receiving unit receives a, and a rising data receiving unit that receives the transmission data in synchronization with the rising edge of the bus clock.
本発明によれば、ECCを付加するバスシステムに対し、高信頼化が不要な既存モジュールを改造することなく容易に高信頼なバスシステムに組み込める仕組みを提供することができ、例えば、コントローラやコントローラを使った産業制御システムに用いられるデータ送信装置、データ受信装置、およびバスシステムを短期間でより簡単に設計することが可能になる。 According to the present invention, it is possible to provide a mechanism that can be easily incorporated into a highly reliable bus system without remodeling an existing module that does not require high reliability to a bus system to which ECC is added. It becomes possible to design a data transmission device, a data reception device, and a bus system used in an industrial control system using a simpler in a short period of time.
上記した以外の課題、構成および効果は、以下の実施形態の説明により明らかにされる。 Problems, configurations, and effects other than those described above will become apparent from the following description of embodiments.
以下に添付図面を参照して、本発明にかかるデータ送信装置、データ受信装置、およびバスシステムの実施の形態を詳細に説明する。以降のバスシステムでは、いずれのデータ転送もバスクロックに同期して動作するものとして説明する。 Exemplary embodiments of a data transmission device, a data reception device, and a bus system according to the present invention will be described below in detail with reference to the accompanying drawings. In the following bus systems, description will be made assuming that all data transfers operate in synchronization with the bus clock.
図1は、本実施の形態におけるバスシステムにおける送信部の例を示した図であり、図2は、本実施の形態におけるバスシステムの受信部の例を示した図である。図1に示す送信部と図2に示す受信部を接続して示した例が図3であるため、図3を用いて本実施の形態におけるバスシステムを説明する。図3に示すバスシステムは、送信部1からバス3を介して受信部2にデータを送信する。送信されるデータには1ビットエラー訂正と2ビットエラー検出ができるECCを付加して、バスシステムの可用性を高めるものとする。
FIG. 1 is a diagram illustrating an example of a transmission unit in the bus system in the present embodiment, and FIG. 2 is a diagram illustrating an example of a reception unit in the bus system in the present embodiment. Since the example shown by connecting the transmission unit shown in FIG. 1 and the reception unit shown in FIG. 2 is FIG. 3, the bus system in the present embodiment will be described with reference to FIG. The bus system shown in FIG. 3 transmits data from the
送信部1内の送信データ作成部4から、送信するデータを作成してECC生成部5とデータ出力部6に送信する。ECC生成部5では、送信するデータに対応するECCを生成してデータ出力部6に送信する。
Data to be transmitted is created from the transmission data creation unit 4 in the
データ出力部6は、立ち上がりECC送信部7および立ち下がりデータ送信部8を有する。この立ち上がりECC送信部7は、バスクロックの立ち上がりに同期してデータのECCを送信する。また立ち下がりデータ送信部8は、バスクロックの立ち下がりに同期してデータ本体を送信する。データ出力部6から出力されたECCおよびデータは、バス3を介して受信部2内のデータ入力部9で受信される。
The
このデータ入力部9は、立ち下がりECC受信部10および立ち上がりデータ受信部11を有する。この立ち下がりECC受信部10は、バスクロックの立ち下がりに同期してデータのECCを受信する。また立ち上がりデータ受信部11は、バスクロックの立ち上がりに同期してデータ本体を受信する。データ入力部9で受信したECCおよびデータはECC訂正部12で受信され、誤り訂正が施されたデータとなって、受信部2内、またはその先のシステムにて使用される。
The data input unit 9 includes a falling
図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の誤り訂正を行う。
FIG. 4 shows an example of a timing chart when data transfer is performed in the bus system shown in FIG. FIG. 4 shows an example in which data transfer between the
同様に、バスクロックの立ち上がりエッジC2において送信部1がECC2を送信し、立ち下がりエッジC3において受信部2がECC2を受信し、立ち下がりエッジC3において送信部1がデータD2を送信し、立ち上がりエッジC4において受信部2がデータD2を受信する。受信部2内のECC訂正部12では、このECC2を使ってデータD2の誤り訂正を行う。以降のECC3とデータD3、ECC4とデータD4についても同様である。
Similarly, the
また、図5は、図3に示したバスシステムの送信部1と受信部2でのデータ転送を、バスクロックに同期して2サイクルで行う場合の例である。図5では、バスクロックの立ち上がりエッジC0において送信部1が送信したECC1が、バスクロックの立ち下がりエッジC3において受信部2で受信され、バスクロックの立ち下がりエッジC1において送信部1が送信したデータD1が、バスクロックの立ち上がりエッジC4において受信部2で受信される。
FIG. 5 shows an example in which data transfer between the
このように、本実施の形態におけるバスシステムでは、送信側ではバスクロックの立ち上がりに同期してECCを送信し、受信側ではバスクロックの立ち下がりに同期してECCを受信し、また、送信側でバスクロックの立ち下がりに同期してデータを送信し、受信側ではバスクロックの立ち上がりに同期してデータを受信する点を特徴とする。 As described above, in the bus system according to the present embodiment, the transmission side transmits ECC in synchronization with the rising edge of the bus clock, the reception side receives ECC in synchronization with the falling edge of the bus clock, and the transmission side. Thus, data is transmitted in synchronization with the falling edge of the bus clock, and data is received on the receiving side in synchronization with the rising edge of the bus clock.
これらのことにより、高信頼化していない既存のバスシステムに対し、ECCビット用のバス幅を新規に設ける必要がなくなる。また、立ち下がりエッジに同期してECCを転送する構成としているため、従来の立ち上がりエッジに同期したデータの送受信に対してサイクルオーバヘッドを増加することなく高信頼なバスシステムを実現することが可能になり、このバスシステムを使ったコントローラやコントローラを使った産業制御システムを早期に開発することが可能になる。 As a result, it is not necessary to provide a new ECC bit bus width for an existing bus system that is not highly reliable. In addition, since the ECC is transferred in synchronization with the falling edge, it is possible to realize a highly reliable bus system without increasing the cycle overhead for data transmission / reception synchronized with the conventional rising edge. Thus, it becomes possible to quickly develop a controller using this bus system and an industrial control system using the controller.
図6は、本実施の形態におけるバスシステムにおける、高信頼な送信部と、高信頼不要な既存モジュールを受信部として接続した場合の例である。なお、送信部1は実施例1と同じ構成であるため詳細説明は省略する。図6に示す受信部21は、高信頼不要な既存モジュールであり、バス転送時のECCに対応する回路を実装していない。受信部21内のデータ入力部22は、バスクロックの立ち上がりに同期してデータを受信する回路であり、バス3を介して送信部1と接続されている。
FIG. 6 shows an example in which a highly reliable transmitting unit and an existing module that does not require high reliability are connected as a receiving unit in the bus system according to the present embodiment. The transmitting
図7に、図6に示したバスシステムでデータ転送を行う場合のタイミングチャートの例を示す。送信部1はECCに対応した高信頼モジュールであるため、データ出力部6内の立ち上がりECC送信部7により、バスクロックの立ち上がりエッジC0において、データD1に対応するECC1を送信する。また、立ち下がりデータ送信部8により、バスクロックの立ち下がりエッジC1において、データD1を送信する。
FIG. 7 shows an example of a timing chart when data transfer is performed in the bus system shown in FIG. Since the
一方、受信部21は、ECCに対応していない既存モジュールであり、データ入力部22はバスクロックの立ち上がりに同期してデータを受信する機能しか持たない。よって、送信部1から送信されたECC1は無視され、送信されたデータD1のみを、バスクロックの立ち上がりエッジC2において受信し、受信部22内およびその先のモジュールで使用する。以降のECC2とデータD2、ECC3とデータD3、ECC4とデータD4およびそれ以降に送信されるECCとデータについても同様である。
On the other hand, the receiving
これらのことにより、高信頼化していない既存のバスシステムに対し、ECCビット用のバス幅を新規に設ける必要がなくなる。また、高信頼化している送信側ではバスクロックの立ち下がりエッジに同期してECCを転送し、立ち上がりエッジにデータを送信することで、高信頼化していない受信側では従来通り、バスクロックの立ち上がりに同期してデータのみ受信する構成としているため、高信頼なバスシステムに、高信頼化の不要な既存モジュールを改造不要で組み込むことが可能になる。 As a result, it is not necessary to provide a new ECC bit bus width for an existing bus system that is not highly reliable. The highly reliable transmitting side transfers the ECC in synchronization with the falling edge of the bus clock and transmits data to the rising edge, so that the non-reliable receiving side has the rising edge of the bus clock as before. Therefore, it is possible to incorporate an existing module that does not require high reliability into a high-reliability bus system without modification.
図8は、本実施の形態におけるバスシステムにおける、高信頼なデータの送受信を双方向で行うバスシステムの例である。モジュールA(41)は、データ送信を行う部分として、実施例1の図1に示した送信部の機能と同様に、送信データ作成部4、ECC生成部5、データ出力部6をもち、データ出力部6内には立ち上がりECC送信部7および立ち下がりデータ送信部8がある。このデータ出力部6から出力されたデータはバス3を介してモジュールB(42)に接続している。
FIG. 8 shows an example of a bus system that performs bidirectional transmission and reception of highly reliable data in the bus system according to this embodiment. The module A (41) has a transmission data creation unit 4, an
モジュール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)に接続している。
The module B (42) has a data input unit 9 and an
また一方で、モジュール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を受信し、バスクロックの立ち上がりエッジにおいてデータを受信する。
On the other hand, the module A (41) has a
また図9は、本実施の形態のバスシステムにおける、ECCに対応した高信頼なモジュールと高信頼不要な既存モジュールとの間でデータの送受信を双方向で行うバスシステムの例である。モジュールA(41)は図8に示したものと同じ構成であるため詳細説明は省略する。モジュールC(43)は、高信頼不要でECC対応の改造が必要ない既存モジュールである。モジュールC(43)内のデータ入力部22は、バスクロックの立ち上がりに同期してデータを受信する回路であり、送信データ作成部54からのデータを送信するデータ出力部23は、バスクロックの立ち上がりに同期してデータを送信する回路である。
FIG. 9 is an example of a bus system in which data is transmitted and received bidirectionally between a highly reliable module compatible with ECC and an existing module that does not require high reliability in the bus system of the present embodiment. The module A (41) has the same configuration as that shown in FIG. Module C (43) is an existing module that does not require high reliability and does not require ECC-compatible modification. The
モジュールA(41)からバス3を介してモジュールC(43)にデータが送信され、反対に、モジュールC(43)からバス53を介してモジュールA(41)にデータが送信される。モジュールA(41)からモジュールC(43)に送信されるデータのタイミングチャートは、図7に示したように、高信頼なモジュールA(41)からECCとデータを送信し、高信頼不要なモジュールC(43)ではデータのみ受信する。
Data is transmitted from the module A (41) to the module C (43) via the
一方、高信頼不要なモジュールC(43)から高信頼なモジュールA(41)へ送信されるデータは、ECCが付加されておらず、データ本体のみとなる。この場合、データ入力部59では、立ち下がりECC受信部60にてデータをECCと認識して受信してしまうことになるが、システム上ではこれをdon‘t careとして無視し、ECC訂正部62を使用しない。立ち上がりデータ受信部61で受信したデータをそのままデータ線71を介し、モジュールA(41)内およびその先のモジュールで使用する。
On the other hand, the data transmitted from the highly reliable module C (43) to the highly reliable module A (41) is not added with ECC, and is only the data body. In this case, in the
図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に対応する部分は無視して処理される。 FIG. 10 shows the high reliability module A (41) and the high reliability module B (42) shown in FIG. 8 and the existing module C (43) that does not require high reliability shown in FIG. It is an example of a bus system in the case of connecting a module B (42) and a module C (43). Since module A (41) is a highly reliable module, ECC and data are transmitted to and received from module B (42). On the other hand, since module C (43) is an existing module that does not require high reliability, even if ECC and data are transmitted from module A (41), only data is received at the rising edge of the bus clock, and module A (41). ), Only the data is transmitted, and the part corresponding to the ECC in the module A (41) is ignored.
このように、モジュール間でバスを増やすことにより、ECCに対応した高信頼なモジュール同士であればデータ転送を双方向で高速に行うことが可能となる。また、通信するモジュールの一方が高信頼化の不要な既存モジュールである場合でも、既存モジュールは改造不要で組み込むことが可能になる。 In this way, by increasing the number of buses between modules, data transfer can be performed bidirectionally and at high speed between highly reliable modules compatible with ECC. Further, even when one of the communicating modules is an existing module that does not require high reliability, the existing module can be incorporated without modification.
図11に、上述した実施例1〜4に示したバスシステムにおける、データ転送のフォーマットの例を示す。本実施の形態におけるECCに対応した高信頼なバスシステムでのデータ転送は、例えば図4、図5に示したタイミングチャートのように実行される。 FIG. 11 shows an example of a data transfer format in the bus systems shown in the first to fourth embodiments. Data transfer in the highly reliable bus system corresponding to ECC in the present embodiment is executed as in the timing charts shown in FIGS. 4 and 5, for example.
ここで、一般に、転送データに対して誤り訂正のECCビットを付加する場合、例えば、32ビットのデータに対しては7ビットを付加し、64ビットのデータに対しては8ビットを付加することが知られている。このように、ECCビットのビット幅は、データ本体のビット幅に対して非常に小さい。つまり、図4や図5に示したタイミングチャートにおいて、ECCの転送を示しているバスサイクルでは、バス幅に対して転送できるビット数の一部を使用しているにすぎない。よって、ECCの転送サイクルにおいて、ECCビット以外の情報を含めて送信することも可能である。 In general, when ECC bits for error correction are added to transfer data, for example, 7 bits are added to 32-bit data and 8 bits are added to 64-bit data. It has been known. Thus, the bit width of the ECC bits is very small with respect to the bit width of the data body. That is, in the timing charts shown in FIGS. 4 and 5, in the bus cycle indicating the ECC transfer, only a part of the number of bits that can be transferred with respect to the bus width is used. Therefore, it is possible to transmit information including information other than ECC bits in the ECC transfer cycle.
図11(a)は、ECCビットを最下位に配置し、上位ビット部分にモジュール識別子31を配置した場合の例である。本システムは、1つの装置が他の1つまたは複数の装置を一方的に制御するようなマスタ−スレーブの関係にある装置やシステムに対して適用することも可能であり、例えば、一つのマスタと複数のスレーブでデータの送受信を行うバスシステムにおいて、スレーブからマスタに対して固有のモジュール識別子をECCと同時に送信する。受信したマスタは、どのスレーブから送信されたデータかを確認することができ、より信頼性の高い、きめ細かな制御を行うことが可能になる。
FIG. 11A shows an example in which the ECC bits are arranged at the least significant bit and the
図11(b)は、ECCビットを最下位に配置し、上位ビット部分にシーケンス番号32を配置した場合の例である。例えば、バスシステムにおいて、送信するデータに順番が決まっておらず、順番が入れ替わって送信される場合において、転送データのシーケンス番号をECCと同時に送信する。受信側で、シーケンス番号をチェックしてデータの並びを順番通りに並べ替えるなど、より効率の良い制御を行うことが可能になる。
FIG. 11B shows an example in which the ECC bits are arranged at the least significant bit and the
図11(c)は、ECCビットを最下位に配置し、上位ビット部分にタイムスタンプ33を配置した場合の例である。例えば、バスシステムにおいて、転送されたデータの時刻のログを残しておきたい場合において、転送データのタイムスタンプをECCと同時に送信する。受信側で、タイムスタンプをチェックして、データとタイムスタンプデータとを対応付けて一緒に保存しておくことで、例えばどの時刻に異常なデータ送信が行われたかなどを解析できるシステムの実現が可能になる。
FIG. 11C shows an example in which the ECC bits are arranged at the least significant bit and the
なお、図11では、ECCビットを最下位に配置した例で示したが、空いているどの部分に配置しても良い。また、ECC以外に含める情報のビット数が小さい場合は、図11(d)に示すように、モジュール識別子31、シーケンス番号32、タイムスタンプ33など、複数の情報を一度に送信するフォーマットにしてもよい。
Although FIG. 11 shows an example in which the ECC bits are arranged at the lowest order, they may be arranged in any vacant part. In addition, when the number of bits of information to include other than ECC is small, as shown in FIG. 11D, a format in which a plurality of pieces of information such as a
また、ECCビットと同時に送信する情報として、1ビットの誤りを検出するパリティビットや、巡回冗長符号(Cyclic Redundancy Code)、リード・ソロモン符号など、送信するデータのビット幅に余裕がある限り、様々な情報を送信することに応用できる。これらのことにより、ECCビット以外に様々な情報を同時に送信することで、バスシステムの信頼性をより高めたり、よりきめ細かな制御を行ったりすることが可能になる。 In addition, as information to be transmitted simultaneously with the ECC bits, there are various kinds of information such as a parity bit for detecting an error of 1 bit, a cyclic redundancy code, a Reed-Solomon code, etc. It can be applied to transmitting various information. As a result, it is possible to increase the reliability of the bus system and perform finer control by simultaneously transmitting various information other than the ECC bits.
図12Aには、上述した実施例1〜4に示したバスシステムを有するコントローラを使った産業制御システムの一例を示す。 FIG. 12A shows an example of an industrial control system using a controller having the bus system shown in the first to fourth embodiments.
図12Aに示す産業制御システムは、発電プラント305を制御するものである。制御端末301からの指示がバス312からコントローラ303に伝わり、I/O制御307からI/O装置304を介して指示を送信し、発電プラントを制御する。この制御端末301からの指示が誤って発電プラント305に伝わってしまうと、発電プラントが正常な動作をしなくなり甚大な被害が出るおそれがあるため、制御端末301とコントローラ303を接続するバス311とバス312は、ECCを用いて高信頼な通信を行う。
The industrial control system shown in FIG. 12A controls the
ここで、デバッグ用端末302は、コントローラ303のI/O制御の不具合を調査するデバッグ用の端末である。デバッグ用端末302は、デバッグ制御308と接続されているが、I/O制御307からのデータを解析するために使用するものであり、発電プラント305を直接制御するわけではない。このため、コントローラ303のCPUモジュール306がバス313を介して高信頼な通信のためのECCをデータと一緒に送信してきても、デバッグ用端末は高信頼化をせずに従来のデータのみをバス314から出力する仕様のままでよい。
Here, the
これらのことにより、上述した実施例1〜4に示したバスシステムを適用することで、コントローラを用いた産業制御システムなどにおいて、高信頼な部分と高信頼が不要な部分とに分割して設計でき、高信頼が不要な部分は従来の設計資産をそのまま活用できるため、システムを早期に開発することが可能になる。 By applying the bus system shown in the first to fourth embodiments described above, in an industrial control system using a controller, it is divided into a highly reliable part and a part that does not require high reliability. It is possible to develop the system at an early stage because the existing design assets can be used as they are for parts that do not require high reliability.
また、実施例1〜4に示したバスシステムは、上述したコントローラを用いた産業制御システム以外の情報処理システムに対しても、同様に広く適用することが可能である。例えば、正確な時刻を計時することが求められるタイムスタンプシステムにおいて、システム内で故障や異常が発生しても、正確に時刻を計時する必要があるために可用性を高めることが求められる。したがって、上述した産業制御システムと同様に、コントローラの信頼性や可用性を高めることが重要となる。 The bus systems shown in the first to fourth embodiments can be similarly widely applied to information processing systems other than the industrial control system using the above-described controller. For example, in a time stamp system that is required to measure an accurate time, even if a failure or abnormality occurs in the system, it is necessary to accurately measure the time, and thus it is required to increase availability. Therefore, it is important to increase the reliability and availability of the controller as in the industrial control system described above.
図12Bには、上述した実施例1〜4に示したバスシステムを有するコントローラを使った情報処理システムの一例を示す。 FIG. 12B shows an example of an information processing system using a controller having the bus system shown in the first to fourth embodiments.
図12Bに示す情報処理システムは、時刻監査サーバ3051を制御するものである。クライアント制御端末3011からの指示がバス312からタイムスタンプ装置3031に伝わり、I/O制御3071から通信装置3041を介して指示を送信し、時刻監査サーバを制御する。このクライアント制御端末301からの指示が誤って時刻監査サーバ3051に伝わってしまうと、正確な時刻の計時や監査が行われなくなるおそれがあるため、クライアント制御端末3011とタイムスタンプ装置3031を接続するバス311とバス312は、ECCを用いて高信頼な通信を行う。
The information processing system illustrated in FIG. 12B controls the
ここで、開発用端末3021は、タイムスタンプ装置3031のI/O制御や装置内部の不具合を調査したり、新たなシステムを開発するデバッグ用・開発用の端末である。開発用端末3021は、開発テスト制御3081と接続されているが、I/O制御3071からのデータを解析するために使用するものであり、時刻監査サーバ3051を直接制御するわけではない。このため、タイムスタンプ装置3031のCPUモジュール3061がバス313を介して高信頼な通信のためのECCをデータと一緒に送信してきても、デバッグ用端末は高信頼化をせずに従来のデータのみをバス314から出力する仕様のままでよい。
Here, the
これらのことにより、上述した実施例1〜4に示したバスシステムを適用することで、このような情報処理システムにおいても、上述した産業制御システムの場合と同様に、高信頼な部分と高信頼が不要な部分とに分割して設計でき、高信頼が不要な部分は従来の設計資産をそのまま活用できるため、システムを早期に開発することが可能になる。 By applying the bus systems shown in the first to fourth embodiments described above, in this information processing system, as in the case of the industrial control system described above, a highly reliable portion and a high reliability are provided. Can be divided into parts that do not need to be designed, and parts that do not require high reliability can utilize the existing design assets as they are, so that the system can be developed at an early stage.
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。 In addition, this invention is not limited to an above-described Example, Various modifications are included. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Further, a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment. Further, it is possible to add, delete, and replace other configurations for a part of the configuration of each embodiment.
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 時刻監査サーバ。
DESCRIPTION OF
42 Module B
43 Module C
71
Claims (7)
前記データ出力部は、
バスクロックの立ち上がりに同期して前記ECCを送信する立ち上がりECC送信部と、
前記バスクロックの立ち下がりに同期して前記送信データを送信する立ち下がりデータ送信部と、
を備えることを特徴とするデータ送信装置。 A transmission comprising: a transmission data generation unit; an ECC generation unit that generates an ECC (Error Correcting Code) of transmission data output from the transmission data generation unit; and a data output unit that transmits the transmission data and the ECC A data transmission device used in a bus system having a unit,
The data output unit includes:
A rising ECC transmitter that transmits the ECC in synchronization with the rising edge of the bus clock;
A falling data transmitter for transmitting the transmission data in synchronization with a falling edge of the bus clock;
A data transmission device comprising:
前記データ入力部は、
前記バスクロックの立ち下がりに同期して前記ECCを受信する立ち下がりECC受信部と、
前記バスクロックの立ち上がりに同期して前記送信データを受信する立ち上がりデータ受信部と、
を備えることを特徴とするデータ受信装置。 A data receiving device used in a bus system including a data input unit that receives ECC and transmission data, and an ECC correction unit that performs ECC correction from the ECC and the transmission data,
The data input unit includes:
A falling ECC receiver for receiving the ECC in synchronization with a falling edge of the bus clock;
A rising data receiving unit that receives the transmission data in synchronization with a rising edge of the bus clock;
A data receiving apparatus comprising:
前記データ送信装置が有する前記データ出力部は、
バスクロックの立ち上がりに同期して前記ECCを送信する立ち上がりECC送信部と、
前記バスクロックの立ち下がりに同期して前記送信データを送信する立ち下がりデータ送信部と、を備え、
前記データ受信装置が有する前記データ入力部は、
前記バスクロックの立ち下がりに同期して前記ECCを受信する立ち下がりECC受信部と、
前記バスクロックの立ち上がりに同期して前記送信データを受信する立ち上がりデータ受信部と、
を備えることを特徴とするバスシステム。 A data transmission apparatus comprising: a transmission data creation unit; an ECC generation unit that generates an ECC of transmission data output from the transmission data creation unit; and a data output unit that transmits the transmission data and the ECC; A data receiving unit comprising an ECC and a data input unit that receives the transmission data, and an ECC correction unit that performs ECC correction from the ECC and the transmission data, and a bus system comprising:
The data output unit included in the data transmission device includes:
A rising ECC transmitter that transmits the ECC in synchronization with the rising edge of the bus clock;
A falling data transmitter that transmits the transmission data in synchronization with a falling edge of the bus clock,
The data input unit of the data receiving device is:
A falling ECC receiver for receiving the ECC in synchronization with a falling edge of the bus clock;
A rising data receiving unit that receives the transmission data in synchronization with a rising edge of the bus clock;
A bus system comprising:
ことを特徴とする請求項3に記載のバスシステム。 The data transmitting device operates as a master module, the data receiving device operates as a slave module, and the data communication device and the data receiving device are connected to each other by a bus.
The bus system according to claim 3.
前記データ出力部が、前記ECCを送信するサイクルにおいて、前記ECCの送信タイミングと共に、前記モジュールを識別するためのモジュール識別子を送信し、
前記データ受信装置は、
前記データ入力部が、受信した前記モジュール識別子に基づいて前記モジュールを識別する、
ことを特徴とする請求項4に記載のバスシステム。 The data transmission device includes:
The data output unit transmits a module identifier for identifying the module together with the ECC transmission timing in a cycle in which the ECC is transmitted;
The data receiving device is:
The data input unit identifies the module based on the received module identifier;
The bus system according to claim 4.
前記データ出力部が、前記ECCを送信するサイクルにおいて、前記ECCの送信タイミングと共に、前記送信データの順番を示すシーケンス番号を送信し、
前記データ受信装置は、
前記データ入力部が、前記シーケンス番号に基づいて前記送信データの順番に並べ替える、
ことを特徴とする請求項3〜5のいずれか1項に記載のバスシステム。 The data transmission device includes:
In the cycle in which the data output unit transmits the ECC, the sequence number indicating the order of the transmission data is transmitted together with the transmission timing of the ECC,
The data receiving device is:
The data input unit rearranges the transmission data in the order of the transmission data based on the sequence number.
6. The bus system according to any one of claims 3 to 5, wherein:
前記データ出力部が、前記ECCを送信するサイクルにおいて、前記ECCの送信タイミングと共に、前記送信データのタイムスタンプを送信し、
前記データ入力装置は、
前記データ入力部が、前記タイムスタンプと前記送信データとを対応づけて保存する、
ことを特徴とする請求項3〜6のいずれか1項に記載のバスシステム。 The data transmission device includes:
In the cycle in which the data output unit transmits the ECC, the time stamp of the transmission data is transmitted together with the transmission timing of the ECC,
The data input device includes:
The data input unit stores the time stamp and the transmission data in association with each other;
The bus system according to any one of claims 3 to 6, characterized in that:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012271451A JP5921424B2 (en) | 2012-12-12 | 2012-12-12 | Data transmission device, data reception device, and bus system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012271451A JP5921424B2 (en) | 2012-12-12 | 2012-12-12 | Data transmission device, data reception device, and bus system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014116894A true JP2014116894A (en) | 2014-06-26 |
JP5921424B2 JP5921424B2 (en) | 2016-05-24 |
Family
ID=51172453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012271451A Active JP5921424B2 (en) | 2012-12-12 | 2012-12-12 | Data transmission device, data reception device, and bus system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5921424B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03247044A (en) * | 1990-02-23 | 1991-11-05 | Canon Inc | Serial communication equipment |
JPH0563672A (en) * | 1991-09-03 | 1993-03-12 | Nippon Telegr & Teleph Corp <Ntt> | Demultiplexer circuit |
US5394407A (en) * | 1993-07-01 | 1995-02-28 | Motorola, Inc. | Method of transferring error correcting code and circuit therefor |
-
2012
- 2012-12-12 JP JP2012271451A patent/JP5921424B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03247044A (en) * | 1990-02-23 | 1991-11-05 | Canon Inc | Serial communication equipment |
JPH0563672A (en) * | 1991-09-03 | 1993-03-12 | Nippon Telegr & Teleph Corp <Ntt> | Demultiplexer circuit |
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 |
---|---|
JP5921424B2 (en) | 2016-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN201740999U (en) | Input and/or output security module for automation equipment | |
RU2670941C9 (en) | Dual-channel architecture with ccdl excess links | |
US8732556B2 (en) | System and method for fault tolerant computing using generic hardware | |
CN101876928B (en) | Synchronization method and device of double 2-vote-2 system | |
US8745467B2 (en) | System and method for fault tolerant computing using generic hardware | |
US9317359B2 (en) | Reliable, low latency hardware and software inter-process communication channel for safety critical system | |
US8140893B2 (en) | Fault-tolerant system | |
US20170242693A1 (en) | Safety monitoring device, network system and safety monitoring method | |
US9696692B2 (en) | Industrial automation control system | |
US10162314B2 (en) | Two-way architecture | |
AU2015288023B2 (en) | System, method, and apparatus for generating vital messages on an on-board system of a vehicle | |
US9477559B2 (en) | Control device, control method and recording medium storing program thereof | |
US9497099B2 (en) | Voting architecture for safety and mission critical systems | |
US20130326286A1 (en) | Data transfer apparatus and data transfer method | |
US9348657B2 (en) | Method and system of synchronizing processors to the same computational point | |
JP2020021341A (en) | Redundant system | |
JP5921424B2 (en) | Data transmission device, data reception device, and bus system | |
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 (en) | High speed data transmission methods and systems upon error detection | |
WO2020090034A1 (en) | Processing device | |
JP2007026241A (en) | Abnormality monitoring method and controller using it | |
KR101333468B1 (en) | Method for checking channel id of flight control computer and computer readable recording medium to store the computer program to run the same method | |
JP6109090B2 (en) | Serial communication device | |
JP2014011591A (en) | Transmission device, transmission system, and self-diagnostic method thereof |
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 |