(57)【要約】【課題】どのようなデータを受信した場合であっても同時スイッチングの発生を回避することができ、インパルスノイズによるデバイスの誤作動を防止することができる中継装置及びコンピュータプログラムを提供する。【解決手段】フレーム単位で受信したデータを暗号化し、暗号化されたデータをシリアル／パラレル変換して所定の処理を実行し、実行後のデータをパラレル／シリアル変換して、復号したデータを外部へ転送する。変換されたパラレルデータを一時記憶するラッチ部と、受信したデータを次に受信する後続のデータと比較してビット反転するか否かを判断する判断部と、変換されたシリアルデータをビット反転する反転部とを備える。判断部は、ビット反転したパラレルデータを、後続のデータとして受信したと判断した場合、受信した後続のデータを一時記憶しない旨の信号をラッチ部へ送信し、ビット反転する旨の信号を反転部へ送信する。【選択図】図６
2007251824.tif 000002
【特許請求の範囲】
【請求項１】
フレーム単位で受信したデータを暗号化し、暗号化されたデータをシリアル／パラレル変換して所定の処理を実行し、実行後のデータをパラレル／シリアル変換して、復号したデータを外部へ送信する中継装置において、
シリアル／パラレル変換されたデータをフレーム単位で一時記憶するラッチ部と、
受信したデータを次に受信する後続のデータと比較してビット反転するか否かを判断する判断部と、
パラレル／シリアル変換したデータをビット反転する反転部と
を備え、
前記判断部は、
受信しているシリアル／パラレル変換されたデータをビット反転したデータを、後続のデータとして受信したか否かを判断する手段と、
該手段で後続のデータとして受信したと判断した場合、受信した後続のデータを一時記憶しない旨の信号を前記ラッチ部へ送信する手段と、
ビット反転する旨の信号を前記反転部へ送信する手段と
を備えることを特徴とする中継装置。
【請求項２】
前記判断部は、
受信しているシリアル／パラレル変換されたデータの一部をビット反転したデータを、後続のデータとして受信したか否かを判断する手段と、
該手段で後続のデータとして受信したと判断した場合、受信した後続のデータを一時記憶しない旨の信号を前記ラッチ部へ送信する手段と、
ビット反転されていないビットを反転し、他のビットを反転しない旨の信号を前記反転部へ送信する手段と
を備えることを特徴とする請求項１記載の中継装置。
【請求項３】
前記判断部は、
受信したシリアル／パラレル変換されたデータ及び次に受信した後続のシリアル／パラレル変換されたデータを一時記憶する手段
を備えることを特徴とする請求項１又は２に記載の中継装置。
【請求項４】
フレーム単位で受信したデータを暗号化し、暗号化されたデータをシリアル／パラレル変換して所定の処理を実行し、実行後のデータをパラレル／シリアル変換して、復号したデータを外部へ送信する中継装置で実行することが可能なコンピュータプログラムにおいて、
前記コンピュータを、
シリアル／パラレル変換されたデータをフレーム単位で一時記憶する手段、及び
受信したデータを次に受信する後続のデータと比較してビット反転するか否かを判断する判断手段
として機能させ、
前記判断手段を、
受信しているシリアル／パラレル変換されたデータをビット反転したデータを、後続のデータとして受信したか否かを判断し、
後続のデータとして受信したと判断した場合、受信した後続のデータを一時記憶せず、パラレル／シリアル変換した後にビット反転するよう機能させることを特徴とするコンピュータプログラム。
【請求項５】
前記判断手段を、
受信しているシリアル／パラレル変換されたデータの一部をビット反転したデータを、後続のデータとして受信したか否かを判断し、
後続のデータとして受信したと判断した場合、受信した後続のデータを一時記憶せず、パラレル／シリアル変換した後にビット反転されていないビットを反転し、他のビットを反転しない指示を送信するよう機能させることを特徴とする請求項４記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内部に存在する複数のバスのすべての信号が同時にスイッチングすることを回避し、デバイスの誤作動を未然に防止する中継装置及びコンピュータプログラムに関する。
【背景技術】
【０００２】
複数の装置間でデータ通信を行う場合、複数の装置からのデータを複数のポートを介して中継して、それぞれ所望の外部装置へ中継する中継装置が多々開発されている。図１は、従来の中継装置の構成を示すブロック図である（特許文献１参照）。
【０００３】
図１に示すように従来の中継装置は、複数の受信ポートを介して複数の外部装置からデータを受信ブロック１１にて受信する。受信ブロック１１では、暗号化部１１１にて受信したデータをスクランブル化することにより、シリアル／パラレル変換部１１２で変換された複数のパラレルデータが同時にスイッチングするのを回避している。内部ロジック部１２では、転送すべきか否かを判断する処理、条件に応じてデータを追加又は削除する処理等を実行し、送信ブロック１３へ送られる。
【０００４】
送信ブロック１３では、パラレル／シリアル変換部１３２にて複数のパラレルデータを一のシリアルデータに終端させ、復号部１３１にてデスクランブルすることにより送信データとして外部の装置へ転送する。
【０００５】
暗号化部１１１にて受信したデータをスクランブル化することにより、シリアル／パラレル変換部１１２で変換された複数のパラレルデータは、ビット列が連続したデータとなる可能性が低い。したがって、同時にスイッチングする可能性が低く、メモリに対する読み書きが同時に発生する可能性が低下することから、電流の急激な増加に起因して発生するインパルスノイズによるデバイスの誤作動を未然に防止することができる。
【特許文献１】特開平４−０１７４２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、上述した従来の中継装置では、暗号化部１１１にて受信したデータをスクランブル化することにより、シリアル／パラレル変換部１１２で変換された複数のパラレルデータを不連続なビット列になるようにしているが、スクランブル化アルゴリズムは一定であることから、受信したデータによっては、スクランブル化した後であってもビット列が連続した状態で出力される場合も生じ得る。この場合、同時にスイッチングするビットが多くなることから、メモリに対する読み書きが同時に多数発生した場合に生じる電流の急激な増加に起因してインパルスノイズが生じ、デバイスが誤作動する可能性が残されているという問題点があった。
【０００７】
本発明は斯かる事情に鑑みてなされたものであり、どのようなデータを受信した場合であっても同時スイッチングの発生を回避することができ、インパルスノイズによるデバイスの誤作動を防止することができる中継装置及びコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために第１発明に係る中継装置は、フレーム単位で受信したデータを暗号化し、暗号化されたデータをシリアル／パラレル変換して所定の処理を実行し、実行後のデータをパラレル／シリアル変換して、復号したデータを外部へ送信する中継装置において、シリアル／パラレル変換されたデータをフレーム単位で一時記憶するラッチ部と、受信したデータを次に受信する後続のデータと比較してビット反転するか否かを判断する判断部と、パラレル／シリアル変換したデータをビット反転する反転部とを備え、前記判断部は、受信しているシリアル／パラレル変換されたデータをビット反転したデータを、後続のデータとして受信したか否かを判断する手段と、該手段で後続のデータとして受信したと判断した場合、受信した後続のデータを一時記憶しない旨の信号を前記ラッチ部へ送信する手段と、ビット反転する旨の信号を前記反転部へ送信する手段とを備えることを特徴とする。
【０００９】
また、第２発明に係る中継装置は、第１発明において、前記判断部は、受信しているシリアル／パラレル変換されたデータの一部をビット反転したデータを、後続のデータとして受信したか否かを判断する手段と、該手段で後続のデータとして受信したと判断した場合、受信した後続のデータを一時記憶しない旨の信号を前記ラッチ部へ送信する手段と、ビット反転されていないビットを反転し、他のビットを反転しない旨の信号を前記反転部へ送信する手段とを備えることを特徴とする。
【００１０】
また、第３発明に係る中継装置は、第１又は第２発明において、前記判断部は、受信したシリアル／パラレル変換されたデータ及び次に受信した後続のシリアル／パラレル変換されたデータを一時記憶する手段を備えることを特徴とする。
【００１１】
また、第４発明に係るコンピュータプログラムは、フレーム単位で受信したデータを暗号化し、暗号化されたデータをシリアル／パラレル変換して所定の処理を実行し、実行後のデータをパラレル／シリアル変換して、復号したデータを外部へ送信する中継装置で実行することが可能なコンピュータプログラムにおいて、前記コンピュータを、シリアル／パラレル変換されたデータをフレーム単位で一時記憶する手段、及び受信したデータを次に受信する後続のデータと比較してビット反転するか否かを判断する判断手段として機能させ、前記判断手段を、受信しているシリアル／パラレル変換されたデータをビット反転したデータを、後続のデータとして受信したか否かを判断し、後続のデータとして受信したと判断した場合、受信した後続のデータを一時記憶せず、パラレル／シリアル変換した後にビット反転するよう機能させることを特徴とする。
【００１２】
また、第５発明に係るコンピュータプログラムは、第４発明において、前記判断手段を、受信しているシリアル／パラレル変換されたデータの一部をビット反転したデータを、後続のデータとして受信したか否かを判断し、後続のデータとして受信したと判断した場合、受信した後続のデータを一時記憶せず、パラレル／シリアル変換した後にビット反転されていないビットを反転し、他のビットを反転しない指示を送信するよう機能させることを特徴とする。
【００１３】
第１発明及び第４発明では、フレーム単位で受信したデータを暗号化し、暗号化されたデータをシリアル／パラレル変換して所定の処理を実行し、実行後のデータをパラレル／シリアル変換して、復号したデータを外部へ送信する。シリアル／パラレル変換されたデータをフレーム単位でラッチ（一時記憶）し、受信したデータを次に受信する後続のデータと比較してビット反転するか否かを判断する。受信しているシリアル／パラレル変換されたデータをビット反転したデータを、後続のデータとして受信した場合、受信した後続のデータをラッチすることなく、受信しているデータをシリアルデータへ復元した後にビット反転する。これにより、ビット反転された後続のデータを受信した場合には、すべてのバスについて同時にスイッチングすることが無く、所定の処理を実行した後にビット反転する旨を示す信号、例えば反転ビット（１ビット）のみを送信ブロックへ送信すれば足りる。したがって、メモリを大量に使用することなく、受信したデータを外部へ転送することが可能となる。また、同時にスイッチングすることがなく、メモリに対する読み書きが同時に発生する可能性がないことから、電流の急激な増加に起因して発生するインパルスノイズによるデバイスの誤作動が発生することがなく、デバイスの安定的な稼動を担保することが可能となる。
【００１４】
第２発明及び第５発明では、受信しているシリアル／パラレル変換されたデータの一部をビット反転したデータを、後続のデータとして受信したか否かを判断し、後続のデータとして受信したと判断した場合、受信した後続のデータをラッチせず、ビット反転されていないビットを反転し、他のビットを反転しないようにする。これにより、一部がビット反転された後続のデータを受信した場合であっても、多くのバスが同時にスイッチングすることが無く、所定の処理を実行した後にビット反転する旨を示す信号、例えば反転しないビット位置を示す信号を送信ブロックへ送信すれば足りる。したがって、メモリ使用量を削減しつつ、受信したデータを外部へ転送することが可能となる。また、メモリに対する読み書きが同時に発生するバスが少ないことから、電流の増加を抑制することができ、インパルスノイズによるデバイスの誤作動が発生することがなく、デバイスの安定的な稼動を担保することが可能となる。
【００１５】
第３発明では、受信したシリアル／パラレル変換されたデータ及び次に受信した後続のシリアル／パラレル変換されたデータを一時記憶する。これにより、ビット列が全て反転しているか否か、あるいはどのビットが反転しているか等を正確に把握することが可能となる。
【発明の効果】
【００１６】
第１発明及び第４発明によれば、ビット反転された後続のデータを受信した場合には、すべてのバスについて同時にスイッチングすることが無く、所定の処理を実行した後にビット反転する旨を示す信号、例えば反転ビット（１ビット）のみを送信ブロックへ送信すれば足りる。したがって、メモリを大量に使用することなく、受信したデータを外部へ転送することが可能となる。また、同時にスイッチングすることがなく、メモリに対する読み書きが同時に発生する可能性がないことから、電流の急激な増加に起因して発生するインパルスノイズによるデバイスの誤作動が発生することがなく、デバイスの安定的な稼動を担保することが可能となる。
【００１７】
第２発明及び第５発明によれば、一部がビット反転された後続のデータを受信した場合であっても、多くのバスが同時にスイッチングすることが無く、所定の処理を実行した後にビット反転する旨を示す信号、例えば反転しないビット位置を示す信号を送信ブロックへ送信すれば足りる。したがって、メモリ使用量を削減しつつ、受信したデータを外部へ転送することが可能となる。また、メモリに対する読み書きが同時に発生するバスが少ないことから、電流の増加を抑制することができ、インパルスノイズによるデバイスの誤作動が発生することがなく、デバイスの安定的な稼動を担保することが可能となる。
【００１８】
第３発明によれば、ビット列が全て反転しているか否か、あるいはどのビットが反転しているか等を正確に把握することが可能となる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明をその実施の形態を示す図面に基づいて詳述する。
【００２０】
（実施の形態１）
図２は、本発明の実施の形態１に係る中継装置１の構成を示すブロック図である。なお、本実施の形態１ではバスが１６個（１６ビット）の中継装置１を例に挙げて説明するが、バス線の数は特に限定されるものではなく、８個でも４個でも、あるいは３２個、６４個であっても良い。図２に示すように本発明の実施の形態１に係る中継装置１は、複数の受信ポートを有する受信ブロック１１、転送すべきか否かを判断する処理、条件に応じてデータを追加又は削除する処理等を実行する内部ロジック部１２、複数の送信ポートを有する送信ブロック１３及び受信するデータを常時監視し、受信したデータを次に受信する後続のデータと比較してビット反転するか否かを判断する判断部１４で構成されている。
【００２１】
受信ブロック１１は、フレーム単位で受信したデータを暗号化（スクランブル化）する暗号化部１１１、暗号化されたシリアルデータを１６ビットのパラレルデータに変換するシリアル／パラレル変換部１１２及び変換されたパラレルデータをラッチ（一時記憶）するラッチ部１１３を備えている。図３は、暗号化部１１１の構成を示すブロック図である。
【００２２】
暗号化部１１１は、少なくともフレームの始点及び終点を検出するフレームモニタ３１及びフレーム演算回路３２を備えており、フレーム単位で所定の演算多項式を用いて受信データを暗号化する。すなわち、フレームモニタ３１がフレームの始点を検出した場合、フレーム演算回路３２を有効化し、受信されたデータは所定の演算多項式により暗号化される。演算多項式は特に限定されるものではなく、例えばＣＲＣ−１６の生成多項式である（数１）を用いて暗号化する。
【００２３】
Ｙ（ｘ）＝ｘ16＋ｘ15＋ｘ2 ＋１  ・・・  （数１）
【００２４】
フレームモニタ３１がフレームの終点を検出した場合、フレーム演算回路３２を無効化し、暗号化処理を実行しない。暗号化部１１１で処理されたシリアルデータは、シリアル／パラレル変換部１１２にてパラレルデータに変換され、１６個のバスへビットデータとして送信される。
【００２５】
本実施の形態１では、内部ロジック部１２の前にラッチ部１１３を備えており、シリアル／パラレル変換部１１２からのパラレルデータを一時記憶（ラッチ）する。ラッチされたパラレルデータは、ラッチ部１１３から送信すべき旨の信号、例えば‘ＯＰＥＮ’信号を判断部１４から受信した場合に内部ロジック部１２へ送信し、ラッチ部１１３から送信しない旨の信号、例えば‘ＣＬＯＳＥ’信号を判断部１４から受信した場合には内部ロジック部１２へ送信しない。
【００２６】
内部ロジック部１２では、受信したデータを転送すべきか否かを判断する処理、あるいは所定の条件に応じてデータを追加又は削除する処理等を実行する。内部ロジック部１２で処理されたパラレルデータは、送信ブロック１３へ送信される。
【００２７】
送信ブロック１３は、暗号化された１６ビットのパラレルデータを一のシリアルデータへ終端させるパラレル／シリアル変換部１３２及び暗号化されたデータを復号（デスクランブル）する復号部１３１の他、シリアルデータを反転する反転部１３３を備えている。図４は、復号部１３１の構成を示すブロック図である。
【００２８】
復号部１３１は、少なくともフレームの始点及び終点を検出するフレームモニタ４１及びフレーム逆演算回路４２を備えており、フレーム単位で所定の逆演算多項式を用いて暗号化データを復号する。すなわち、フレームモニタ４１がフレームの始点を検出した場合、フレーム逆演算回路４２を有効化し、受信されたデータは所定の逆演算多項式により復号される。逆演算多項式は特に限定されるものではなく、例えばＣＲＣ−１６の生成多項式である（数１）を用いて暗号化した場合には、（数２）を満たす逆行列Ｔ-1（ｘ）となる。
【００２９】
（ｘ16＋ｘ15＋ｘ2 ＋１）×Ｔ-1（ｘ）＝１  ・・・  （数２）
【００３０】
フレームモニタ４１がフレームの終点を検出した場合、フレーム逆演算回路４２を無効化し、復号処理を実行しない。復号部１３１で処理されたシリアルデータは、複数の送信ポートを介して外部の装置へ送信される。
【００３１】
判断部１４は、受信したＸフレームのデータとＸ＋１フレームのデータとを比較し、Ｘフレームのデータと、後続のＸ＋１フレームのデータをビット反転したデータとが一致するか否かを判断し、ラッチ部１１３で一時記憶してあるデータを送信するか否か、反転部１３３でビット反転するか否かを判断する。図５は、判断部１４の構成を示すブロック図である。
【００３２】
判断部１４は、ＸフレームのデータＱを第１のメモリ１４１に一時記憶しておく。そして、後続のＸ＋１フレームのデータを受信し、第１のメモリ１４２へ一時記憶し、反転回路１４３により、Ｘ＋１フレームのデータをビット反転する。そして、比較回路１４４にて、Ｘ＋１フレームのデータをビット反転したデータＰとＸフレームのデータＱとが一致しているか否かを判断し、データＰとデータＱとが一致している場合には、ラッチ部１１３に対して‘ＣＬＯＳＥ’信号を送信し、反転ビットＺをビット反転する旨を示す‘１’に設定して反転部１３３へ送信する。なお、Ｘフレームのデータ及びＸ＋１フレームのデータは、判断部１４内で一時記憶するものに限定されるものではない。
【００３３】
判断部１４は、データＰとデータＱとが一致しない場合には、ラッチ部１１３に対して‘ＯＰＥＮ’信号を送信し、反転ビットＺをビット反転しない旨を示す‘０’に設定して反転部１３３へ送信する。図６は、データＰとデータＱとが一致している場合の、中継装置１の動作を示すブロック図である。
【００３４】
図６に示すように、Ｘフレームの受信データが‘５５５５’であるのに対して、Ｘ＋１フレームの受信データが‘ＡＡＡＡ’である場合、判断部１４はデータＰとデータＱとが一致していると判断し、ラッチ部１１３に対して‘ＣＬＯＳＥ’信号を送信し、反転ビットＺをビット反転する旨を示す‘１’に設定して反転部１３３へ送信する。したがって、内部ロジック部１２に対しては、Ｘ＋１フレームの受信データは送信されず、Ｘフレームの受信データが送信され、所定の演算処理後、パラレル／シリアル変換部１３２にてシリアルデータへ終端される。終端されたシリアルデータは、反転部１３３にてビット反転され、復号部１３１にて復号された後、外部の装置へ送信される。
【００３５】
このように、Ｘフレームの受信データとＸ＋１フレームの受信データとを比較した場合、全てのビットで反転していることが確認できた場合、同時スイッチングをすることなく、内部ロジック部１２での処理を実行し、反転ビット（１ビット）のみを反転部１３３へ送信する。したがってメモリを大量に使用することなく、消費電力を抑制することが可能となる。
【００３６】
以上のように本実施の形態１によれば、ビット反転された後続のデータ（Ｘ＋１フレームのデータ）を受信した場合には、すべてのバスについて同時にスイッチングすることが無く、所定の処理を実行した後にビット反転する旨を示す信号、例えば反転ビット（１ビット）のみを送信ブロック１３へ送信すれば足りる。したがって、メモリを大量に使用することなく、受信したデータを外部へ転送することが可能となる。また、同時にスイッチングすることがなく、メモリに対する読み書きが同時に発生する可能性がないことから、電流の急激な増加に起因して発生するインパルスノイズによるデバイスの誤作動が発生することがなく、デバイスの安定的な稼動を担保することが可能となる。
【００３７】
（実施の形態２）
以下、本発明の実施の形態２に係る中継装置１について図面を参照しながら詳述する。図７は、本発明の実施の形態２に係る中継装置１のＸフレームのデータを受信した構成を示すブロック図である。なお、本実施の形態２でも、実施の形態１と同様、バスが１６個（１６ビット）の中継装置１を例に挙げて説明するが、バス線の数は特に限定されるものではなく、８個でも４個でも、あるいは３２個、６４個であっても良い。なお、実施の形態１に係る中継装置１と同一の機能を有する部分については、同一の符号を付することにより、詳細な説明を省略する。
【００３８】
受信ブロック１１は、フレーム単位で受信したデータを暗号化（スクランブル化）する暗号化部１１１、暗号化されたシリアルデータを１６ビットのパラレルデータに変換するシリアル／パラレル変換部１１２及び変換されたパラレルデータをラッチ（一時記憶）するラッチ部１１３を備えている。暗号化部１１１の構成は実施の形態１と同様である。
【００３９】
本実施の形態２では、内部ロジック部１２の前にラッチ部１１３を備えており、シリアル／パラレル変換部１１２からのパラレルデータを一時記憶（ラッチ）する。ラッチされたパラレルデータは、ラッチ部１１３から送信すべき旨の信号、例えば‘ＯＰＥＮ’信号を判断部１４から受信した場合に内部ロジック部１２へ送信し、ラッチ部１１３から送信しない旨の信号、例えば‘ＣＬＯＳＥ’信号を判断部１４から受信した場合には内部ロジック部１２へ送信しない。
【００４０】
内部ロジック部１２では、受信したデータを転送すべきか否かを判断する処理、あるいは所定の条件に応じてデータを追加又は削除する処理等を実行する。内部ロジック部１２で処理されたパラレルデータは、送信ブロック１３へ送信される。
【００４１】
送信ブロック１３は、暗号化された１６ビットのパラレルデータを一のシリアルデータへ終端させるパラレル／シリアル変換部１３２及び暗号化されたデータを復号（デスクランブル）する復号部１３１の他、シリアルデータを反転する反転部１３３を備えている。復号部１３１の構成は実施の形態１と同様である。
【００４２】
判断部１４は、受信したＸフレームのデータとＸ＋１フレームのデータとを比較し、Ｘフレームのデータと、後続のＸ＋１フレームのデータをビット反転したデータとが一致するか否かを判断し、ラッチ部１１３で一時記憶してあるデータを送信するか否か、反転部１３３でビット反転するか否かを判断する。図８は、判断部１４の構成を示すブロック図である。
【００４３】
判断部１４は、ＸフレームのデータＱを第１のメモリ１４１に一時記憶しておく。そして、後続のＸ＋１フレームのデータを受信し、第１のメモリ１４２へ一時記憶し、反転回路１４３により、Ｘ＋１フレームのデータをビット反転する。そして、比較回路１４４にて、Ｘ＋１フレームのデータをビット反転したデータＰとＸフレームのデータＱとが一致しているか否かを判断し、データＰとデータＱとが一致している場合には、ラッチ部１１３に対して‘ＣＬＯＳＥ’信号を送信し、反転ビットＺをビット反転する旨を示す‘１００００’に設定して反転部１３３へ送信する。なお、Ｘフレームのデータ及びＸ＋１フレームのデータは、判断部１４内で一時記憶するものに限定されるものではない。
【００４４】
判断部１４は、データＰとデータＱとが一致しない場合には、一致しないビット位置を特定し（本実施例では‘００１１１’）、ラッチ部１１３に対して‘ＯＰＥＮ’信号を送信し、反転ビットＺをビット反転しないビット位置を示す‘００１１１’に設定して反転部１３３へ送信する。図９は、データＰとデータＱとが一致している場合の、中継装置１の動作を示すブロック図である。
【００４５】
図９に示すように、Ｘフレームの受信データが‘５５５５’であるのに対して、Ｘ＋１フレームの受信データが‘ＡＡ２Ａ’である場合、判断部１４はデータＰとデータＱとが一致していないビット位置‘００１１１’のみを反転しないものと判断し、ラッチ部１１３に対して‘ＣＬＯＳＥ’信号を送信し、反転ビットＺをビット反転しないビット位置を示す‘００１１１’に設定して反転部１３３へ送信する。したがって、内部ロジック部１２に対しては、Ｘ＋１フレームの受信データは送信されず、Ｘフレームの受信データが送信され、所定の演算処理後、パラレル／シリアル変換部１３２にてシリアルデータへ終端される。終端されたシリアルデータは、反転部１３３にて指定されたビット以外のビットが反転され、復号部１３１にて復号された後、外部の装置へ送信される。
【００４６】
このように、Ｘフレームの受信データとＸ＋１フレームの受信データとを比較した場合、一部のビットで反転していることが確認できた場合であっても、同時スイッチングをすることなく、内部ロジック部１２での処理を実行し、反転しないビット位置を指定するビット（５ビット）のみを反転部１３３へ送信する。したがって、反転している１５ビットのデータをラッチ開放して送信する場合よりもメモリ使用量を削減することができ、消費電力を抑制することが可能となる。なお、上述の例では、Ｘフレームのデータと、後続のＸ＋１フレームのデータをビット反転したデータとが一致するか否かを判断した場合、１６ビット中１ビットのみが一致するときを例に挙げて説明しているが、１ビットのみに限定されるものではなく、転送されるビット数を削減することができるビット数で有る限りにおいて、複数ビットが一致しても良い。
【００４７】
以上のように本実施の形態２によれば、一部がビット反転された後続のデータを受信した場合であっても、多くのバスが同時にスイッチングすることが無く、所定の処理を実行した後にビット反転する旨を示す信号、例えば反転しないビット位置を示す信号を送信ブロックへ送信すれば足りる。したがって、メモリ使用量を削減しつつ、受信したデータを外部へ転送することが可能となる。また、メモリに対する読み書きが同時に発生するバスが少ないことから、電流の増加を抑制することができ、インパルスノイズによるデバイスの誤作動が発生することがなく、デバイスの安定的な稼動を担保することが可能となる。
【００４８】
（実施の形態３）
以下、本発明の実施の形態３に係る中継装置１について図面を参照しながら詳述する。本実施の形態３は、上述した実施の形態１に係る中継装置１をソフトウェアによる制御により具現化する点に特徴を有する。図１０は、本発明の実施の形態３に係る中継装置１の受信ブロック１１を構成するマイクロコンピュータ１１ａの構成を示すブロック図である。
【００４９】
マイクロコンピュータ１１ａは、少なくともＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、シリアルポート１０４、及びパラレルポート１０５を備えている。ＣＰＵ１０１は、内部バス１０６を介してマイクロコンピュータ１１ａの上述したようなハードウェア各部と接続されており、上述したハードウェア各部を制御するとともに、ＲＯＭ１０２に記憶されているコンピュータプログラムに従って、種々のソフトウェア的機能を実行する。
【００５０】
ＲＡＭ１０３は、ＳＲＡＭ、フラッシュメモリ等で構成され、コンピュータプログラムの実行時に発生する一時的なデータを記憶する。シリアルポート１０４は内部バス１０６に接続されており、ＬＡＮ、ＷＡＮ等のケーブルに接続されることにより、転送するシリアルデータを受信する。パラレルポート１０５は内部バス１０６に接続されており、受信したシリアルデータをシリアル／パラレル変換したパラレルデータを内部ロジック部１２へ、反転するか否か又は反転しないビット位置を示す反転ビットＺを送信ブロック１３を構成するマイクロコンピュータ１３ａへ、それぞれ送信する。
【００５１】
図１１は、本発明の実施の形態３に係る中継装置１の送信ブロック１３を構成するマイクロコンピュータ１３ａの構成を示すブロック図である。マイクロコンピュータ１３ａは、少なくともＣＰＵ１２１、ＲＯＭ１２２、ＲＡＭ１２３、パラレルポート１２４、及びシリアルポート１２５を備えている。ＣＰＵ１２１は、内部バス１２６を介してマイクロコンピュータ１３ａの上述したようなハードウェア各部と接続されており、上述したハードウェア各部を制御するとともに、ＲＯＭ１２２に記憶されているコンピュータプログラムに従って、種々のソフトウェア的機能を実行する。
【００５２】
ＲＡＭ１２３は、ＳＲＡＭ、フラッシュメモリ等で構成され、コンピュータプログラムの実行時に発生する一時的なデータを記憶する。パラレルポート１２４は内部バス１２６に接続されており、内部ロジック部１２で処理されたパラレルデータ、及び受信ブロック１１を構成するマイクロコンピュータ１１ａから反転するか否か又は反転しないビット位置を示す反転ビットＺを受信する。シリアルポート１２５は、内部バス１０６に接続されており、ＬＡＮ、ＷＡＮ等のケーブルに接続されることにより、受信したパラレルデータをパラレル／シリアル変換して一のシリアルデータへ終端されたシリアルデータを外部の装置へ転送する。
【００５３】
図１２は、本発明の実施の形態３に係る中継装置１の受信ブロック１１を構成するマイクロコンピュータ１１ａのＣＰＵ１０１の処理手順を示すフローチャートである。マイクロコンピュータ１１ａのＣＰＵ１０１は、Ｘフレームのシリアルデータをシリアルポート１０４から受信し（ステップＳ１２０１）、受信したシリアルデータを暗号化（スクランブル化）した後（ステップＳ１２０２）、パラレルデータへ変換してＲＡＭ１０３へ記憶する（ステップＳ１２０３）。
【００５４】
ＣＰＵ１０１は、前のフレームのパラレルデータ、すなわちＸ−１フレームのパラレルデータがＲＡＭ１０３に記憶されているか否かを判断し（ステップＳ１２０４）、ＣＰＵ１０１が、Ｘ−１フレームのパラレルデータがＲＡＭ１０３に記憶されていないと判断した場合（ステップＳ１２０４：ＮＯ）、ＣＰＵ１０１は、後続のフレームであるＸ＋１フレームのデータを受信する（ステップＳ１２０５、１２０１）。ＣＰＵ１０１が、Ｘ−１フレームのパラレルデータがＲＡＭ１０３に記憶されていると判断した場合（ステップＳ１２０４：ＹＥＳ）、ＣＰＵ１０１は、Ｘフレームのパラレルデータをビット反転してＲＡＭ１０３に記憶する（ステップＳ１２０６）。ＣＰＵ１０１は、記憶したビット反転されたＸフレームのパラレルデータと、Ｘ−１フレームのパラレルデータとが一致しているか否かを判断する（ステップＳ１２０７）。
【００５５】
ＣＰＵ１０１が、Ｘ−１フレームのパラレルデータと一致していると判断した場合（ステップＳ１２０７：ＹＥＳ）、ＣＰＵ１０１は、反転ビットＺを‘１’に設定し（ステップＳ１２０８）、ＲＡＭ１０３に記憶してあるＸフレームのパラレルデータ及び反転ビットＺを送信する（ステップＳ１２０９）。ＣＰＵ１０１が、Ｘ−１フレームのパラレルデータと一致していないと判断した場合（ステップＳ１２０７：ＮＯ）、ＣＰＵ１０１は、反転ビットＺを‘０’に設定し（ステップＳ１２１０）、ビット反転したＸフレームのパラレルデータ及び反転ビットＺを送信する（ステップＳ１２１１）。
【００５６】
ＣＰＵ１０１は、処理を終了するか否かを判断し（ステップＳ１２１２）、ＣＰＵ１０１が、処理を終了しないと判断した場合（ステップＳ１２１２：ＮＯ）、ＣＰＵ１０１は、処理をステップＳ１２０１へ戻し、上述した処理を繰り返す。ＣＰＵ１０１が、処理を終了すると判断した場合（ステップＳ１２１２：ＹＥＳ）、ＣＰＵ１０１は処理を終了する。
【００５７】
図１３は、本発明の実施の形態３に係る中継装置１の送信ブロック１３を構成するマイクロコンピュータ１３ａのＣＰＵ１２１の処理手順を示すフローチャートである。マイクロコンピュータ１３ａのＣＰＵ１２１は、受信ブロック１１からパラレルデータ及び反転ビットＺを受信し（ステップＳ１３０１）、反転ビットＺが‘１’であるか否かを判断する（ステップＳ１３０２）。
【００５８】
ＣＰＵ１２１が、反転ビットＺが‘１’であると判断した場合（ステップＳ１３０２：ＹＥＳ）、ＣＰＵ１２１は、受信したパラレルデータをビット反転する（ステップＳ１３０３）。ＣＰＵ１２１が、反転ビットＺが‘０’であると判断した場合（ステップＳ１３０２：ＮＯ）、ＣＰＵ１２１は、ステップＳ１３０３をスキップし、パラレルデータをシリアルデータへ変換し（ステップＳ１３０４）、外部の装置へ送信する（ステップＳ１３０５）。
【００５９】
以上のように本実施の形態３によれば、ビット反転された後続のデータ（Ｘ＋１フレームのデータ）を受信した場合には、パラレルデータが同時にスイッチングされることが無く、所定の処理を実行した後にビット反転する旨を示す信号、例えば反転ビット（１ビット）のみを送信ブロック１３へ送信すれば足りる。したがって、メモリを大量に使用することなく、受信したデータを外部へ転送することが可能となる。また、同時にスイッチングすることがなく、メモリに対する読み書きが同時に発生する可能性がないことから、電流の急激な増加に起因して発生するインパルスノイズによるデバイスの誤作動が発生することがなく、デバイスの安定的な稼動を担保することが可能となる。
【００６０】
（実施の形態４）
以下、本発明の実施の形態４に係る中継装置１について図面を参照しながら詳述する。本実施の形態４は、上述した実施の形態２に係る中継装置１をソフトウェアによる制御により具現化する点に特徴を有する。本発明の実施の形態３に係る中継装置１の受信ブロック１１を構成するマイクロコンピュータ１１ａの構成、及び送信ブロック１３を構成するマイクロコンピュータ１３ａの構成は、実施の形態３と同様であることから、同一の符号を付することにより詳細な説明を省略する。
【００６１】
図１４は、本発明の実施の形態４に係る中継装置１の受信ブロック１１を構成するマイクロコンピュータ１１ａのＣＰＵ１０１の処理手順を示すフローチャートである。マイクロコンピュータ１１ａのＣＰＵ１０１は、Ｘフレームのシリアルデータをシリアルポート１０４から受信し（ステップＳ１４０１）、受信したシリアルデータを暗号化（スクランブル化）した後（ステップＳ１４０２）、パラレルデータへ変換してＲＡＭ１０３へ記憶する（ステップＳ１４０３）。
【００６２】
ＣＰＵ１０１は、前のフレームのパラレルデータ、すなわちＸ−１フレームのパラレルデータがＲＡＭ１０３に記憶されているか否かを判断し（ステップＳ１４０４）、ＣＰＵ１０１が、Ｘ−１フレームのパラレルデータがＲＡＭ１０３に記憶されていないと判断した場合（ステップＳ１４０４：ＮＯ）、ＣＰＵ１０１は、後続のフレームであるＸ＋１フレームのデータを受信する（ステップＳ１４０５、１４０１）。ＣＰＵ１０１が、Ｘ−１フレームのパラレルデータがＲＡＭ１０３に記憶されていると判断した場合（ステップＳ１４０４：ＹＥＳ）、ＣＰＵ１０１は、Ｘフレームのパラレルデータをビット反転して（ステップＳ１４０６）、Ｘ−１フレームのパラレルデータと一致しているか否かを判断する（ステップＳ１４０７）。
【００６３】
ＣＰＵ１０１が、Ｘ−１フレームのパラレルデータと一致していると判断した場合（ステップＳ１４０７：ＹＥＳ）、ＣＰＵ１０１は、反転ビットＺを‘１００００’に設定し（ステップＳ１４０８）、ＲＡＭ１０３に記憶してあるＸフレームのパラレルデータ及び反転ビットＺを内部ロジック部１２へ送信する（ステップＳ１４１１）。ＣＰＵ１０１が、Ｘ−１フレームのパラレルデータと一致していないと判断した場合（ステップＳ１４０７：ＮＯ）、ＣＰＵ１０１は、一致していないビット位置を特定し（ステップＳ１４０９）、反転ビットＺを一致していないビット位置、例えば‘００１１１’に設定して（ステップＳ１４１０）、Ｘフレームのパラレルデータ及び反転ビットを送信する（ステップＳ１４１１）。
【００６４】
ＣＰＵ１０１は、処理を終了するか否かを判断し（ステップＳ１４１２）、ＣＰＵ１０１が、処理を終了しないと判断した場合（ステップＳ１４１２：ＮＯ）、ＣＰＵ１０１は、処理をステップＳ１４０１へ戻し、上述した処理を繰り返す。ＣＰＵ１０１が、処理を終了すると判断した場合（ステップＳ１４１２：ＹＥＳ）、ＣＰＵ１０１は処理を終了する。
【００６５】
図１５は、本発明の実施の形態４に係る中継装置１の送信ブロック１３を構成するマイクロコンピュータ１３ａのＣＰＵ１２１の処理手順を示すフローチャートである。マイクロコンピュータ１３ａのＣＰＵ１２１は、受信ブロック１１からパラレルデータ及び反転ビットＺを受信し（ステップＳ１５０１）、反転ビットＺが‘１００００’であるか否かを判断する（ステップＳ１５０２）。
【００６６】
ＣＰＵ１２１が、反転ビットＺが‘１００００’であると判断した場合（ステップＳ１５０２：ＹＥＳ）、ＣＰＵ１２１は、受信したパラレルデータをビット反転する（ステップＳ１５０３）。ＣＰＵ１２１が、反転ビットＺが‘１００００’ではないと判断した場合（ステップＳ１５０２：ＮＯ）、ＣＰＵ１２１は、反転ビットＺに指定されているビット位置、例えば‘００１１１’のみビット反転し（ステップＳ１５０４）、パラレルデータをシリアルデータへ変換して（ステップＳ１５０５）、外部の装置へ送信する（ステップＳ１５０６）。
【００６７】
以上のように本実施の形態４によれば、一部がビット反転された後続のデータを受信した場合であっても、同時にスイッチングすることが無く、所定の処理を実行した後にビット反転する旨を示す信号、例えば反転しないビット位置を示す信号を送信ブロック１３へ送信すれば足りる。したがって、メモリ使用量を削減しつつ、受信したデータを外部へ転送することが可能となる。また、メモリに対する読み書きが同時に発生するバスが少ないことから、電流の増加を抑制することができ、インパルスノイズによるデバイスの誤作動が発生することがなく、デバイスの安定的な稼動を担保することが可能となる。
【図面の簡単な説明】
【００６８】
【図１】従来の中継装置の構成を示すブロック図である。
【図２】本発明の実施の形態１に係る中継装置の構成を示すブロック図である。
【図３】暗号化部の構成を示すブロック図である。
【図４】復号部の構成を示すブロック図である。
【図５】判断部の構成を示すブロック図である。
【図６】データＰとデータＱとが一致している場合の、中継装置の動作を示すブロック図である。
【図７】本発明の実施の形態２に係る中継装置のＸフレームのデータを受信した構成を示すブロック図である。
【図８】判断部の構成を示すブロック図である。
【図９】データＰとデータＱとが一致している場合の、中継装置の動作を示すブロック図である。
【図１０】本発明の実施の形態３に係る中継装置の受信ブロックを構成するマイクロコンピュータの構成を示すブロック図である。
【図１１】本発明の実施の形態３に係る中継装置の送信ブロックを構成するマイクロコンピュータの構成を示すブロック図である。
【図１２】本発明の実施の形態３に係る中継装置の受信ブロックを構成するマイクロコンピュータのＣＰＵの処理手順を示すフローチャートである。
【図１３】本発明の実施の形態３に係る中継装置の送信ブロックを構成するマイクロコンピュータのＣＰＵの処理手順を示すフローチャートである。
【図１４】本発明の実施の形態４に係る中継装置の受信ブロックを構成するマイクロコンピュータのＣＰＵの処理手順を示すフローチャートである。
【図１５】本発明の実施の形態４に係る中継装置の送信ブロックを構成するマイクロコンピュータのＣＰＵの処理手順を示すフローチャートである。
【符号の説明】
【００６９】
１  中継装置
１１  受信ブロック
１１ａ、１３ａ  マイクロコンピュータ
１２  内部ロジック部
１３  送信ブロック
１４  判断部  
１０１、１２１  ＣＰＵ
１０４、１２５  シリアルポート
１０５、１２４  パラレルポート
１１１  暗号化部
１１２  シリアル／パラレル変換部
１１３  ラッチ部
１３１  復号部
１３２  パラレル／シリアル部
１３３  反転部
【図１】
2007251824.tif 000003
【図２】
2007251824.tif 000004
【図３】
2007251824.tif 000005
【図４】
2007251824.tif 000006
【図５】
2007251824.tif 000007
【図６】
2007251824.tif 000008
【図７】
2007251824.tif 000009
【図８】
2007251824.tif 000010
【図９】
2007251824.tif 000011
【図１０】
2007251824.tif 000012
【図１１】
2007251824.tif 000013
【図１２】
2007251824.tif 000014
【図１３】
2007251824.tif 000015
【図１４】
2007251824.tif 000016
【図１５】
2007251824.tif 000017