(57)【特許請求の範囲】
【請求項１】
第１ＣＡＮ通信線に接続された電子制御ユニットから受信したメッセージを、前記第１ＣＡＮ通信線よりも伝送速度の速い第２ＣＡＮ通信線に接続された電子制御ユニットにカットスルー方式で中継する車載用の中継接続ユニットであって、
前記中継接続ユニットは、
前記第１ＣＡＮ通信線および第２ＣＡＮ通信線と接続した送受信部と、
前記送受信部と接続した中継処理部を備え、
前記中継処理部は、
前記第１ＣＡＮ通信線から受信したメッセージのコントロールフィールドの受信が完了した時点で、前記メッセージの残りのビット数の受信を完了するために必要な受信時間ＴＡと、前記メッセージの全ビット数を前記第２ＣＡＮ通信線に送信するために必要な送信時間ＴＢを求め、前記受信時間ＴＡから送信時間ＴＢを減算して送信待ち時間ＴＣ（ＴＣ＝ＴＡ−ＴＢ）を演算し、前記送信待ち時間ＴＣが正の値の場合には、前記メッセージのコントロールフィールドの受信完了時から前記送信待ち時間の時間経過後に前記第２ＣＡＮ通信線に該メッセージの中継を開始する中継処理を行う設定としていることを特徴とする車載用の中継接続ユニット。
【請求項２】
送信待ち時間ＴＣが負またはゼロの値の場合には、前記メッセージのコントロールフィールドの受信完了後、ただちに前記第２ＣＡＮ通信線に該メッセージの中継を開始する請求項１に記載の車載用の中継接続ユニット。
【請求項３】
前記コントロールフィールドに格納されたデータフィールドのデータ長と、前記第２ＣＡＮ通信線と前記第１ＣＡＮ通信線の伝送速度比（データフィールドのデータ長−メッセージの全ビット数／伝送速度比）から送信待ちビット数を求め、第１ＣＡＮ通信線の伝送速度で送信待ちビット数の経過時間を前記送信待ち時間としている請求項１または請求項２に記載の車載用の中継接続ユニット。
【請求項４】
前記第１ＣＡＮ通信線または第２ＣＡＮ通信線の伝送速度は、１２５ｋｂｐｓ、２５０ｋｂｐｓ、５００ｋｂｐｓ、１Ｍｂｐｓであり、前記伝送速度比は、２、４、８のいずれかである請求項１乃至請求項３のいずれか１項に記載の車載用の中継接続ユニット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車載用の中継接続ユニットに関し、詳しくは、中継接続ユニットに接続された通信線の伝送速度が相違し、受信側の伝送速度より送信側の伝送速度が早い場合に、メッセージ全体を確実に且つ効率よく送信ができるようにするものである。
【背景技術】
【０００２】
従来、車両搭載機器を制御する電子制御ユニット（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ：ＥＣＵ）を通信線で接続し、該通信線同士を中継接続ユニット（ゲートウェイ装置）を介して接続して、異なる通信線に属するＥＣＵ間で送受信されるメッセージを該中継接続ユニットで中継する車載用通信システムが採用されている。
【０００３】
中継接続ユニットは、通信線に接続されたＥＣＵからのメッセージを受信すると、該メッセージの中継送信先である他の通信線にメッセージを中継している。
詳細には、中継接続ユニットは、該受信したメッセージのメッセージ識別子と中継送信する送信先のＥＣＵを接続した通信線との対応を記載したルーティングマップを備えている。中継接続ユニットはメッセージを受信してメッセージ識別子を読み込み、前記ルーティングマップを参照して該メッセージ識別子と対応する送信先の通信線を判別し、特定した送信先の通信線にメッセージを送信している。
【０００４】
前記中継接続ユニットの中継処理の方法として、例えば、特開平９−１６２９１７号公報（特許文献１）に記載されているように、カットスルー方式が知られている。
カットスルー方式は、図７に示すように、中継接続ユニットが、通信線（受信元バス）からメッセージを受信し、メッセージのうちメッセージ識別子が書き込まれたアービトレーションフィールド（ＩＤ）までを受信した時点ｔａで、ルーティングマップを参照して該メッセージ識別子に対応する中継先の通信線（送信先バス）を判別し、該通信線に送信を開始する方式である。メッセージを最後まで受信せずに通信線に送信を開始しているので、メッセージを最後まで受信してから送信を開始するストア＆フォワード方式に比べて、メッセージの受信を開始してから送信を開始するまでの時間が短くなり、中継処理を高速化することができる。
【０００５】
しかし、中継接続ユニットがカットスルー方式でメッセージの中継処理を行っている場合に、例えば、図８に示すように、中継接続ユニットが２５０ｋｐｂｓの伝送速度で受信元の通信線（バス）から受信したメッセージを、５００ｋｂｐｓの伝送速度で送信先の通信線（バス）に送信しているときには、メッセージを受信する速度が送信する速度よりも遅いため、送信すべきメッセージのデータが受信できておらず、送信すべきデータが無い状態が発生するという問題がある。
このように送信すべきデータが無い状態が発生すると、中継接続ユニットはエラーとして中継処理を中断し、バス上にエラーが発生し、問題となる。
【０００６】
【特許文献１】特開平９−１６２９１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、前記問題に鑑みてなされたもので、中継接続ユニットが受信側の通信線から受信したメッセージを、受信側の通信線よりも伝送速度の速い送信側の通信線にカットスルー方式で中継するときに、送信すべきデータが無い状態が発生することを防ぎ、効率よくメッセージの送信を行うことを課題としている。
【課題を解決するための手段】
【０００８】
前記課題を解決するため、本発明は、第１ＣＡＮ通信線に接続された電子制御ユニットから受信したメッセージを、前記第１ＣＡＮ通信線よりも伝送速度の速い第２ＣＡＮ通信線に接続された電子制御ユニットにカットスルー方式で中継する車載用の中継接続ユニットであって、
前記中継接続ユニットは、
前記第１ＣＡＮ通信線および第２ＣＡＮ通信線と接続した送受信部と、
前記送受信部と接続した中継処理部を備え、
前記中継処理部は、
前記第１ＣＡＮ通信線から受信したメッセージのコントロールフィールドの受信が完了した時点で、前記メッセージの残りのビット数の受信を完了するために必要な受信時間ＴＡと、前記メッセージの全ビット数を前記第２ＣＡＮ通信線に送信するために必要な送信時間ＴＢを求め、前記受信時間ＴＡから送信時間ＴＢを減算して送信待ち時間ＴＣ（ＴＣ＝ＴＡ−ＴＢ）を演算し、前記送信待ち時間ＴＣが正の値の場合には、前記メッセージのコントロールフィールドの受信完了時から前記送信待ち時間の時間経過後に前記第２ＣＡＮ通信線に該メッセージの中継を開始する中継処理を行う設定としていることを特徴とする車載用の中継接続ユニットを提供している。
【０００９】
このように、コントロールフィールドの受信が完了した時点から、該送信待ち時間（ＴＣ）だけ遅らせてメッセージの送信を開始することで、第１ＣＡＮ通信線から受信するメッセージの受信完了時は、第２ＣＡＮ通信線に送信するメッセージの送信完了時よりも確実に早くすることができる。
言い換えれば、中継接続ユニットが第１ＣＡＮ通信線からメッセージの受信を完了した時点では、第２ＣＡＮ通信線へのメッセージの送信は完了しないようにメッセージの中継開始のタイミングを遅らせている。
このため、中継接続ユニットは、第１ＣＡＮ通信線から受信したメッセージを、第１ＣＡＮ通信線よりも伝送速度の速い第２ＣＡＮ通信線にカットスルー方式で中継するときに、送信すべきデータが無い状態が発生することを防ぐことができる。
【００１０】
送信待ち時間ＴＣが負またはゼロとなる場合には、前記メッセージのコントロールフィールドの受信完了後、ただちに前記第２ＣＡＮ通信線に該メッセージの中継を開始する。
このような場合には、第２ＣＡＮ通信線へのメッセージの中継開始のタイミングを遅らせなくても、カットスルー方式でメッセージを中継するときに、送信すべきデータが無い状態は発生しないためである。
【００１１】
具体的には、前記コントロールフィールドに格納されたデータフィールドのデータ長と、前記第２ＣＡＮ通信線と前記第１ＣＡＮ通信線の伝送速度比から、（データフィールドのデータ長−メッセージの全ビット数／伝送速度比）である送信待ちビット数を求め、第１ＣＡＮ通信線の伝送速度で送信待ちビット数の経過時間を前記送信待ち時間としている。
【００１２】
ＣＡＮプロトコルに準拠したメッセージは、アービトレーションフィールドと、コントロールフィールドと、コントロールフィールドに続くデータフィールドを備えており、コントロールフィールドにはデータフィールドのデータ長が格納されている。
中継接続ユニットの中継処理部は、メッセージのコントロールフィールドを受信すると、データフィールドのデータ長を読み出す。また、中継処理部は、予め第１ＣＡＮ通信線と第２ＣＡＮ通信線の伝送速度から、前記第２ＣＡＮ通信線と前記第１ＣＡＮ通信線の伝送速度比を求めている。
さらに、中継処理部は、ＣＡＮプロトコルにより定められているアービトレーションフィールドとコントロールフィールドのビット数と、コントロールフィールドから読み出したデータフィールドのデータ長から、メッセージの全ビット数を演算している。
【００１３】
中継処理部は、上記により求めたデータフィールドのデータ長、メッセージの全ビット数、伝送速度比から、（データフィールドのデータ長−メッセージの全ビット数／伝送速度比）を演算して送信待ちビット数を求めている。コントロールフィールドの受信が完了した時点から、第１ＣＡＮ通信線から受信するメッセージを送信待ちビット数分数えた後、第２ＣＡＮ通信線へメッセージの中継を開始する。
即ち、第１ＣＡＮ通信線の伝送速度で送信待ちビット数の経過時間である送信待ち時間後にメッセージの中継を開始する。
【００１４】
前述したように、送信待ちビット数は、コントロールフィールドから読み出すデータフィールドのデータ長と、該データ長から算出できるメッセージの全ビット数と、伝送速度比から求めている。このため、データ長と伝送速度比から送信待ちビット数を予め計算し、テーブルとして中継接続ユニットに記憶しておくことができる。
即ち、中継処理部は、コントロールフィールドの受信が完了した時点で、コントロールフィールドからデータ長を読み出すと共に、第２ＣＡＮ通信線と前記第１ＣＡＮ通信線の伝送速度から伝送速度比を求め、該データ長と伝送速度比から該テーブルを参照して送信待ちビット数を読み出すことができる。
【００１５】
また、中継処理部は、前記メッセージの残りのビット数の受信を完了するために必要な受信時間と、メッセージの全ビット数を前記第２ＣＡＮ通信線に送信するために必要な送信時間をそれぞれ演算し、前記受信時間から送信時間を減算して送信待ち時間を求めてもよい。
具体的には、データフィールドのデータ長、メッセージの全ビット数、各通信線の伝送速度から、（データフィールドのデータ長／第１ＣＡＮ通信線の伝送速度）を演算して、前記メッセージの残りのビット数の受信を完了するために必要な受信時間とする。また、（メッセージの全ビット数／第２ＣＡＮ通信線の伝送速度）を演算して、メッセージの全ビット数を前記第２ＣＡＮ通信線に送信するために必要な送信時間とする。さらに、前記受信時間から送信時間を減算した送信待ち時間を求め、コントロールフィールドの受信が完了した時点から該送信待ち時間後にメッセージの中継を開始する。
【００１６】
前記第１ＣＡＮ通信線または第２ＣＡＮ通信線の伝送速度は、１２５ｋｂｐｓ、２５０ｋｂｐｓ、５００ｋｂｐｓ、１Ｍｂｐｓであり、前記伝送速度比は、２、４、８のいずれかである。
一般的に、ＣＡＮプロトコルで用いられる伝送速度は１２５ｋｂｐｓ、２５０ｋｂｐｓ、５００ｋｂｐｓ、１Ｍｂｐｓである。中継接続ユニットの中継処理部は第１ＣＡＮ通信線及び第２ＣＡＮ通信線の伝送速度から伝送速度比を求めている。
【発明の効果】
【００１７】
前述したように、本発明の中継接続ユニットによれば、コントロールフィールドの受信が完了した時点から該送信待ち時間後にメッセージの中継を開始することで、中継接続ユニットは、第１ＣＡＮ通信線から受信したメッセージを、第１ＣＡＮ通信線よりも伝送速度の速い第２ＣＡＮ通信線にカットスルー方式で中継するときに、送信すべきデータが無い状態が発生することを防ぐことができる。
【発明を実施するための最良の形態】
【００１８】
本発明の実施形態を図面を参照して説明する。
図１乃至図４に本発明の第１実施形態を示す。
本発明の車載用の中継接続ユニット１０は、電子制御ユニット（ＥＣＵ）３０を接続した通信線３１間に介在させ、異なる通信線３１に属する前記ＥＣＵ３０間で送受信するメッセージｍを中継するものである。
本実施形態では、中継接続ユニット１０を第１通信線３１Ａ、第２通信線３１Ｂの間に介在させていると共に、第１通信線３１ＡにＥＣＵ３０Ａ、第２通信線３１ＢにＥＣＵ３０Ｂを接続して通信システム２０を構成している。通信プロトコルはＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）である。第１通信線３１Ａの伝送速度は第２通信線３１Ｂよりも遅い速度とし、中継接続ユニット１０は、第１通信線３１Ａに接続されたＥＣＵ３０Ａが送信したメッセージｍを、第１通信線３１Ａよりも伝送速度が速い第２通信線３１Ｂに接続されたＥＣＵ３０Ｂに中継している。
【００１９】
中継接続ユニット１０は、中継処理部１１と、送受信部１２Ａ、１２Ｂと、記憶部１３を備えている。
中継処理部１１は、送受信部１２Ａ、１２Ｂと接続すると共に記憶部１３と接続しており、第１通信線３１Ａに接続されたＥＣＵ３０Ａからのメッセージｍを受信すると、メッセージｍのアービトレーションフィールド４２から識別子（ＩＤ）を読み出している。さらに、該ＩＤからルーティングマップを用いて該メッセージｍの中継送信先である第２通信線３１Ｂを判別し、該通信線にメッセージｍを中継している。
このとき、中継はカットスルー方式で行っている。
【００２０】
さらに、中継処理部１１は、メッセージｍの受信元の第１通信線３１Ａよりもメッセージｍの送信先である第２通信線３１Ｂのほうが伝送速度が速い場合に、後述する送信待ちビット数Ｘを記憶部１３から読み出し、第１通信線３１Ａから受信するメッセージｍのコントロールフィールド４３の受信が完了した時点から、第１通信線３１Ａのメッセージのビット数を送信待ちビット数Ｘ分数えた後、第２通信線３１Ｂへメッセージｍの送信を開始している。
即ち、第１通信線３１Ａの伝送速度で送信待ちビット数Ｘが経過した送信待ち時間ＴＣ後に、第２通信線３１Ｂへメッセージｍの送信を開始している。
【００２１】
記憶部１３は、送信待ちビット数Ｘを記載したテーブルＴを記憶している。テーブルＴには、伝送速度比Ｒ、即ち、（第２通信線３１Ｂの伝送速度／第１通信線３１Ａの伝送速度）と、メッセージｍのデータフィールド４４のデータ長に対する、送信待ちビット数Ｘが記載されている。テーブルＴの詳細は後述する。
また、記憶部１３は中継処理部１１の中継処理のためのルーティングマップを記憶している。
【００２２】
送受信部１２Ａは第１通信線３１Ａと接続しており、送受信部１２Ｂは第２通信線３１Ｂと接続している。送受信部１２は第１通信線３１Ａ及び第２通信線３１Ｂを介してメッセージｍの送受信を行っている。
【００２３】
例えば、中継接続ユニット１０の中継処理部１１はＣＰＵで構成し、送受信部１２はＣＡＮコントローラで構成し、記憶部１３はＲＯＭまたはＲＡＭまたは不揮発性メモリ等で構成している。
【００２４】
次に、中継接続ユニット１０が送受信するメッセージｍのフォーマットについて説明する。図２に示すように、メッセージｍのフレームは、上位ビットより、メッセージフレームの開始を示すスタートオブフレーム（ＳＯＦ）フィールド４１と、メッセージ識別子（ＩＤ）を格納したアービトレーションフィールド４２と、データフィールド４４のデータ長（ＤＬＣ）を格納したコントロールフィールド４３と、送受信されるメッセージｍの内容（データ）を示すデータフィールド４４とを備えている。
メッセージｍはＣＡＮプロトコルに準拠しており、標準フォーマットである。従って、アービトレーションフィールド４２は１２ビット、コントロールフィールド４３は６ビット、ＳＯＦフィールド４１は１ビットと定められており、データフィールド４４のデータ長はメッセージｍ毎に異なる。コントロールフィールド４３にはデータフィールド４４のデータ長がバイト単位で格納されている。
【００２５】
次に、送信待ちビット数Ｘについて説明する。
送信待ちビット数Ｘとは、図３に示すように、中継接続ユニット１０が第１通信線３１Ａからメッセージｍを受信し、コントロールフィールド４３の受信の完了時ｔ１から、第２通信線３１Ｂにメッセージｍの中継を開始するまでのビット数Ｘであり、中継処理部１１は第１通信線３１Ａから受信するメッセージのビット数を数えることで、該送信待ちビット数Ｘを数えている。
例えば、送信待ちビット数Ｘが１０ビットの場合、図３に示すように中継処理部１１はコントロールフィールド４３の受信の完了時ｔ１から、第１通信線３１Ａから受信するメッセージを１０ビット分数えたのち、第２通信線３１Ｂにメッセージｍの中継を開始している。
第１通信線３１Ａの伝送速度において送信待ちビット数Ｘが経過する時間を送信待ち時間ＴＣとする。
【００２６】
送信待ちビット数Ｘの求め方について説明する。
第１通信線３１Ａからのメッセージｍのコントロールフィールド４３の受信の完了時ｔ１においては、中継接続ユニット１０はアービトレーションフィールド４２及びコントロールフィールド４３の受信を完了しており、データフィールド４４を続けて受信する。
中継処理部１１は、コントロールフィールド４３の受信の完了時ｔ１から、第１通信線３１Ａの伝送速度において送信待ちビット数Ｘが経過した時点、即ち送信待ち時間ＴＣの経過後から、第２通信線３１Ｂにメッセージｍの送信を開始する。
【００２７】
このとき、中継接続ユニット１０が第１通信線３１Ａからメッセージｍの受信を完了した時ｔ２では、第２通信線３１Ｂへのメッセージｍの送信が完了しないように、送信待ちビット数Ｘを設定している。即ち、第１通信線３１Ａから受信するメッセージｍの受信完了時ｔ２が、第２通信線３１Ｂに送信するメッセージｍの送信完了時ｔ３よりも早くなるように、送信待ちビット数Ｘを設定している。
従って、（データフィールド４４を受信するために必要な時間ＴＡ）が、（送信待ち時間ＴＣ＋メッセージｍの全ビット数を第２通信線３１Ｂに送信するために必要な時間ＴＢ）よりも小さければよい。
【００２８】
データフィールド４４を受信するために必要な時間ＴＡは、データフィールド４４のビット数／第１通信線３１Ａの伝送速度で求められる。なお、データフィールド４４のデータ長とは、データフィールド４４のビット数を表している。
送信待ち時間ＴＣは、第１通信線３１Ａの伝送速度を基準として考えると、送信待ちビット数Ｘ／第１通信線３１Ａの伝送速度で求められる。
メッセージｍの全ビット数を第２通信線３１Ｂに送信するために必要な時間ＴＢは、メッセージｍの全ビット数／第２通信線３１Ｂの伝送速度で求められる。
上記より、送信待ちビット数Ｘを求めると、（データフィールド４４のビット数−メッセージｍの全ビット数／伝送速度比Ｒ）となる。ここで、伝送速度比Ｒとは第２通信線３１Ｂの伝送速度／第１通信線３１Ａの伝送速度である。
【００２９】
詳細には、データフィールド４４のデータ長（ビット数）は、コントロールフィールド４３より読み出している。データ長はバイト単位で表されており１バイトは８ビットなので、読み出した値がｎの場合、データフィールド４４のデータ長（ビット数）は８×ｎビットである。
メッセージｍの全ビット数は、ＳＯＦフィールド４１、アービトレーション（ＩＤ）フィールド４２、コントロール（ＤＬＣ）フィールド４３、データフィールド４４のビット数の和である。前述したようにアービトレーションフィールド４２は１２ビット、コントロールフィールド４３は６ビット、ＳＯＦは１ビットと定められているため、計１９ビットとなり、データフィールド４４のデータ長は８×ｎビットである。従って、メッセージｍの全ビット数は（１９＋８×ｎ）ビットとなる。
【００３０】
また、第１通信線３１Ａ及び第２通信線３１Ｂの伝送速度は１２５ｋｂｐｓ、２５０ｋｂｐｓ、５００ｋｂｐｓ、１Ｍｂｐｓのいずれかであり、また、第１通信線３１Ａは第２通信線３１Ｂよりも伝送速度が遅いため、伝送速度比Ｒは２、４、８のいずれかの値となる。
【００３１】
さらに、スタッフビットを考慮する。ＣＡＮプロトコルによる通信システムでは、ＥＣＵ３０及び中継接続ユニット１０は６ビット以上連続して同じ値のビットを受信することができず、連続して５ビット同じ値のビットが続いた場合には１ビットのスタッフビットが挿入される。このため、データフィールド４４のビット数は、最大で８×ｎ×６／５となる。６／５をビットスタッフ率Ｓと称す。
なお、アービトレーションフィールド４２、コントロールフィールド４３にもスタッフビットは挿入される。しかし、メッセージｍの全ビット数が長くなる場合には、第２通信線３１Ｂに送信されるメッセージｍの全ビット数が大きくなり、中継接続ユニット１０の第２通信線３１Ｂへのメッセージｍの送信完了時ｔ３がさらに遅くなる。本発明では、第１通信線３１Ａから受信するメッセージｍの受信完了時ｔ２が、第２通信線３１Ｂに送信するメッセージｍの送信完了時ｔ３よりも早くなるように設定しており、メッセージｍの全ビット数が長くなる場合には、送信待ちビット数Ｘの演算には影響を与えない。そこで、本実施形態では、データフィールド４４に挿入されるスタッフビットのみを考慮している。
【００３２】
従って、送信待ちビット数Ｘは、（データフィールド４４のビット数−メッセージｍの全ビット数／伝送速度比Ｒ）であり、式（１）で表される。
中継接続ユニット１０は、コントロールフィールド４３の受信が完了した時点ｔ１から、第１通信線３１Ａから受信するメッセージｍを送信待ちビット数Ｘ分数えた後に第２通信線３１Ｂにメッセージｍの中継を開始する。
なお、式（１）により送信待ちビット数Ｘが「０」または負の値の場合には、送信待ちビット数Ｘを「０」と考え、コントロールフィールド４３の受信が完了した時点ｔ１後、ただちに第２通信線３１Ｂにメッセージｍの中継を開始する。また、式(１)から得られた少数点は切り上げして整数値のＸを求めている。
（数１）
Ｘ＝（８×ｎ×Ｓ）−（１９＋８×ｎ×Ｓ）／Ｒ（式１）
【００３３】
式１より、送信待ちビット数Ｘは、伝送速度比Ｒとデータフィールド４４のビット数の関数となる。前述したように、伝送速度比Ｒは２、４、８のいずれかの値となり、データフィールド４４のデータ長は８×ｎビット、即ちｎバイトで表される。ＣＡＮのメッセージｍでは、データフィールド４４は０バイトから８バイトの値を取る。
このため、伝送速度比Ｒとデータフィールド４４のデータ長のバイト数から送信待ちビット数Ｘを演算すると、図４に示すテーブルＴとなる。例えば、第１通信線３１Ａの伝送速度が２５０ｋｂｐｓ、第２通信線３１Ｂの伝送速度が５００ｋｂｐｓ、データフィールド４４のバイト数ｎが４バイトの場合、伝送速度比Ｒは５００／２５０＝２なので、前記式（１）から９．７が得られるが、切り上げして送信待ちビット数Ｘは図４に示すように１０ビットとなる。従って、中継接続ユニット１０は第１通信線３１Ａからメッセージｍを受信し、コントロールフィールド４３の受信が完了した時点ｔ１から、図３に示すように、第１通信線３１Ａから受信するメッセージｍを１０ビット分数えた後、即ち第１通信線３１Ａの伝送速度２５０ｋｂｐｓで１０ビット分経過した時間（送信待ち時間ＴＣ）後、第２通信線３１Ｂにメッセージｍの中継を開始する。
テーブルＴは予め算出して記憶部１３に記憶される。
【００３４】
次に、中継接続ユニット１０の動作について説明する。
中継接続ユニット１０は、第１通信線３１Ａからメッセージｍを受信する。該メッセージｍのアービトレーションフィールド４２を受信すると、中継処理部１１はメッセージｍのＩＤを読み出し、記憶部１３のルーティングマップを参照して中継送信先の通信線を判別する。ここでは、第２通信線３１Ｂを送信先とする。
次に、受信元である第１通信線３１Ａの伝送速度と、送信先の第２通信線３１Ｂの伝送速度から伝送速度比Ｒを求める。該伝送速度比Ｒは予め記憶させておいてもよいし、各通信線の伝送速度を記憶しておき、メッセージｍの受信毎に演算してもよい。
【００３５】
次に、該メッセージｍのコントロールフィールド４３を受信すると、コントロールフィールド４３からデータフィールド４４のデータ長であるバイト数を読み出す。
さらに、中継処理部１１は記憶部１３のテーブルＴを参照して、データフィールド４４のバイト数と伝送速度比Ｒから送信待ちビット数Ｘを読み出す。
次に、中継処理部１１は、コントロールフィールド４３の受信が完了した時点から第１通信線３１Ａから受信するメッセージｍを送信待ちビット数Ｘ分数えた後、第２通信線３１Ｂにメッセージｍの中継を開始する。
【００３６】
本発明によれば、コントロールフィールド４３の受信が完了した時点から、該送信待ち時間ＴＣだけ遅らせてメッセージｍの中継を開始することで、中継接続ユニット１０が第１通信線３１Ａからメッセージｍの受信を完了した時点ｔ２では、第２通信線３１Ｂへのメッセージｍの送信は完了しないようにしている。このため、中継接続ユニット１０は、第１通信線３１Ａから受信したメッセージｍを、第１通信線３１Ａよりも伝送速度の速い第２通信線３１Ｂにカットスルー方式で中継するときに、送信すべきデータが無い状態が発生することを防ぐことができる。
【００３７】
なお、テーブルＴを記憶部１３に記憶せず、送信待ちビット数Ｘを、データフィールド４４のバイト数と伝送速度比Ｒからメッセージｍの受信毎に演算して求めてもよい。
また、本実施形態では、第１通信線３１Ａのメッセージを送信待ちビット数Ｘ分数え、送信待ちビット数Ｘの経過時間ＴＣ後に第２通信線３１Ｂにメッセージｍの中継を開始させているが、第２通信線３１Ｂの伝送速度を基準として送信待ちビット数Ｘの経過時間ＴＣを演算してもよい。この場合、経過時間ＴＣは、ＴＣ＝８×ｎ×S×Ta1bit−(１９＋８×ｎ×Ｓ)×Ｔb1bitで求められる。ただし、Ta1bitは第１通信線３１Ａの伝送速度で1ビット送信する時間であり、Tb1bitは第２通信線３１Ｂの伝送速度で1ビット送信する時間である。
【００３８】
さらに、記憶部１３にテーブルＴを持たず、中継処理部１１はメッセージｍを受信する毎に、データフィールド４４を受信するために必要な時間ＴＡとメッセージｍの全ビット数を第２通信線３１Ｂに送信するために必要な時間ＴＢから送信待ち時間ＴＣを求め、コントロールフィールド４３の受信が完了した時点から、第１通信線３１Ａの伝送速度で送信待ちビット数Ｘ分の送信待ち時間ＴＣが経過したのち、第２通信線３１Ｂにメッセージｍの中継を開始してもよい。
【００３９】
図５は本発明の第２実施形態を示す。
中継接続ユニット１０が送受信するメッセージｍのフォーマットとして拡張フォーマットを用いており、第１実施形態とは異なっている。
メッセージｍの拡張フォーマットは、図５に示すように、アービトレーションフィールド４２は３２ビット、コントロールフィールド４３は６ビット、ＳＯＦフィールドは１ビットと定められている。
メッセージｍの全ビット数は、ＳＯＦフィールド４１、アービトレーションフィールド４２、コントロールフィールド４３、データフィールド４４のビット数の和である。データフィールド４４のデータ長は８×ｎビットであり、メッセージｍの全ビット数は（３９＋８×ｎ）ビットとなる。
【００４０】
従って、送信待ちビット数Ｘは、（データフィールド４４のビット数−メッセージｍの全ビット数／伝送速度比Ｒ）＝（８×ｎ×Ｓ）−（３９＋８×ｎ×Ｓ）／Ｒで表され、中継接続ユニット１０は、コントロールフィールド４３の受信が完了した時点ｔ１から、第１通信線３１Ａの伝送速度で送信待ちビット数Ｘが経過する時間である送信待ち時間ＴＣ後に第２通信線３１Ｂにメッセージｍの中継を開始する。
拡張フォーマットの場合に、伝送速度比Ｒとデータフィールド４４のバイト数から送信待ちビット数Ｘを演算すると、図６に示すテーブルＴとなる。
【００４１】
このように、メッセージｍが拡張フォーマットである場合であっても、送信待ち時間ＴＣを求め、コントロールフィールド４３の受信が完了した時点から、該送信待ち時間ＴＣだけ遅らせてメッセージｍの中継を開始することで、第１通信線３１Ａから受信したメッセージｍを、第１通信線３１Ａよりも伝送速度の速い第２通信線３１Ｂにカットスルー方式で中継するときに、送信すべきデータが無い状態が発生することを防ぐことができる。
なお、他の構成および作用効果は第１実施形態と同様のため、同一の符号を付して説明を省略する。
【図面の簡単な説明】
【００４２】
【図１】本発明である中継接続ユニットを接続した通信システムの構成図である。
【図２】メッセージのフォーマットの説明図である。
【図３】送信待ち時間の説明図である。
【図４】伝送速度比とデータフィールドのデータ長に対する送信待ちビット数を示した図である。
【図５】第２実施形態のメッセージのフォーマットの説明図である。
【図６】伝送速度比とデータフィールドのデータ長に対する送信待ちビット数を示した図である。
【図７】カットスルー方式の説明図である。
【図８】送信すべきデータがない状態を示す図である。
【符号の説明】
【００４３】
１０  中継接続ユニット
１１  中継処理部
１２  送受信部
１３  記憶部
３０  電子制御ユニット（ＥＣＵ）
３１Ａ  第１通信線
３１Ｂ  第２通信線
４２  アービトレーションフィールド
４３  コントロールフィールド
Ｘ  送信待ちビット数
ＴＣ  送信待ち時間
Ｔ  テーブル
Ｒ  伝送速度比
ｍ  メッセージ
【図１】
0004999668.tif 000002
【図２】
0004999668.tif 000003
【図３】
0004999668.tif 000004
【図４】
0004999668.tif 000005
【図５】
0004999668.tif 000006
【図６】
0004999668.tif 000007
【図７】
0004999668.tif 000008
【図８】
0004999668.tif 000009