JP3789769B2 - Data relay apparatus and multiplex communication system - Google Patents

Data relay apparatus and multiplex communication system Download PDF

Info

Publication number
JP3789769B2
JP3789769B2 JP2001121320A JP2001121320A JP3789769B2 JP 3789769 B2 JP3789769 B2 JP 3789769B2 JP 2001121320 A JP2001121320 A JP 2001121320A JP 2001121320 A JP2001121320 A JP 2001121320A JP 3789769 B2 JP3789769 B2 JP 3789769B2
Authority
JP
Japan
Prior art keywords
data
buffer
transmission
multiplex communication
communication line
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.)
Expired - Lifetime
Application number
JP2001121320A
Other languages
Japanese (ja)
Other versions
JP2002319958A (en
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.)
Denso Corp
Toyota Motor Corp
Soken Inc
Original Assignee
Denso Corp
Nippon Soken Inc
Toyota Motor Corp
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 Denso Corp, Nippon Soken Inc, Toyota Motor Corp filed Critical Denso Corp
Priority to JP2001121320A priority Critical patent/JP3789769B2/en
Publication of JP2002319958A publication Critical patent/JP2002319958A/en
Application granted granted Critical
Publication of JP3789769B2 publication Critical patent/JP3789769B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はデータ中継装置および多重通信システムに関する。
【0002】
【従来の技術】
近年、特にコンピュータ技術の進歩を背景として情報通信の高度化が進んでおり、例えば自動車においても、搭載される電装品等を制御する制御部の間でやり取りされる情報量は急速に増大している。そこで情報を伝達するワイヤーハーネスの数を低減すべく多重通信システムが採用されつつある。多重通信システムは、共通の多重通信線に、データの送受信を行う制御用ECU等の通信ノードが接続されたもので、通信ノード間で多重通信線を介してデータ通信を行う。データはデータ本体とともにデータの種類の情報等を含み構成されており、受信した通信ノードがデータの内容を理解できるようになっている。制御の種類が多岐にわたる上記自動車等の場合には、データ通信を効率よく行うために、図32に示すように、要求される通信速度の相違等に応じて、多重通信線921,922,923とこれに接続されるノード931,932とよりなる複数の通信系911,912,913に分け、属する通信系911〜913が異なるノード931,932間の通信は、データ中継装置94を介して行うようにしたものがある。図例では、シフトレバー81のシフトポジションに応じてエンジン等の動力系の制御を行うエンジンECU931と、メータ82の表示等を制御するメータECU932とは、異なる通信系911,912に属している。
【0003】
データ中継装置94には通常、データを受信するための受信バッファや、多重通信線に送信する直前のデータが格納される送信バッファが設けられている。また、多量のデータの中継を効率よく行うようにしたものとして、受信データを中継先の多重通信線に送信する前に一時保持するバッファを、中継されるデータの種類ごとに設けておき、データを受信すると、受信したデータの種類を識別して、その種類に対応したバッファに書き込むようにしたものがある(特開2000−244548号公報)。この技術では、異なる種類のデータ間で上書きされることが禁止されるので、どんなに通信が混雑していても、いずれかの種類のデータが完全に消失してしまうのを防止する、優れた効果を奏する。また、上記特開2000−244548号公報には、さらにデータの優先度を再設定することで、データ中継装置におけるデータの滞留を緩和するものも開示されている。
【0004】
【発明が解決しようとする課題】
ところで、データの中には、最新のデータだけではなく時系列的に入力するデータの変化そのものが意味を有するものがある。図32の例では、メータECU932は、メータ82の表示部のひとつであるシフトポジションを示す「P」「R」「N」「D」「2」「L」の6つのインディケータ821の点灯と消灯とを切り換えるようになっているが、各インディケータ821の点灯か消灯かのデータは、メータECU932とは別の通信系911に属するエンジンECU931から受け取ることになる。
【0005】
図33はこの点灯か消灯かのデータのデータ本体の構成例を示すもので、1ビット目から6ビット目まで「P」から「L」のシフトポジジョンが1対1に対応し、各ビットはが点灯であれば「1」、消灯であれば「0」となる。運転者が自動車を発進させようとシフトレバーを「P」から「L」まで5段階に一気に動かすと、エンジンECU931からは、各段階を経るごとに、「1」となるビットを隣のビットに移動させたデータがエンジンECU931から送信され、これらのデータがたて続けにデータ中継装置94に入ることになる。かかる場合に、データ中継装置94においてバッファの上書きによりデータが最新のものに置き変わってしまうと、インディケータ821においてシフトポジションの表示が飛ぶという不都合が生じる。
【0006】
かかるデータを確実に転送しようとすれば上記のごとく優先度を高く再設定するのも一案であるが、データ中継装置94の送信バッファに他の種類のデータが滞留していれば、結局、バッファのデータが上書きされていくことになる。
【0007】
本発明は上記実情に鑑みなされたもので、データの消失に対する耐性の高いデータ中継装置および多重通信システムを提供することを目的とする。
【0008】
請求項1記載の発明では、データの本体とともにデータの種類の情報を含むデータを伝送する多重通信線の間に介設されて複数の種類のデータを中継するデータ中継装置であって、受信したデータの中継先の多重通信線を選択し受信データを転送するデータコントローラを有するデータ中継装置において、
受信データを中継先の多重通信線に送信する前に一時保持するバッファを、中継されるデータの種類ごとに設けるとともに、データ種類のうち1以上のデータ種類については複数のバッファを割り当て、
上記データコントローラには、受信したデータの種類を識別し、その種類に対応するバッファを、受信したデータの書き込み先として指定するバッファ指定手段と、
各多重通信線において、データ種類が同一のバッファからのデータを転送する順番が、バッファにデータが書き込まれた順番となるように、データが格納されたバッファからのデータの転送を管理するデータ転送管理手段とを具備せしめ、
該データ転送管理手段を、所定の時間間隔で立ち上がり、順次、上記バッファ内の送信するデータの有無を確認してデータがあればバッファからデータを転送するように、かつ、データ種類が同一のバッファについてのデータの有無の確認を、最先にデータが格納されたバッファのみについて行うように設定する。
【0009】
データの種類ごとにバッファを設けることで、バッファは、同じ種類の最新のデータによってのみ上書きされ、受信データにより送信待ちの他の種類のデータを消失してしまうことを防止することができる。
【0010】
さらに、複数のバッファが割り当てられた種類のデータについては、相前後してデータが受信されても、これらを同時に保持することができ、データ消失に対する耐性を高めることができる。しかも、バッファからのデータ転送が、少なくとも選択された多重通信線が同じものについては、バッファにデータが格納された時期が早いものから行われるから、バッファからのデータ転送において、同じ種類のデータ間での飛び越しを確実に防止することができる。
【0012】
バッファ内のデータの有無を順次、確認していくことで、バッファ群の中から、送信すべきデータの存在が確実に知られ、また、データ種類が同一のバッファについてのデータの有無は、先ず、最先にデータが格納されたバッファについて確認されるから、最先に格納されたデータが、データ種類が同一の他のバッファに先んじてバッファからの転送を実行することができる。
【0013】
請求項記載の発明では、請求項の発明の構成において、上記データ転送管理手段を、データ種類が同一のバッファについて上記最先にデータが格納されたバッファ内のデータの転送を、選択された多重通信線に対応してすべて完了した後に、データの種類が同一の他のバッファ内のデータのうちで最先に受信されたデータを上記最先にデータが格納されたバッファに移動するように設定する。
【0014】
種類が同一のデータの中で最先に受信されたデータが、常に所定バッファに存在するようにすることで、すべてのバッファについてデータの有無を確認しなくとも、転送すべきデータの有無を確実に確認することができる。
【0015】
請求項記載の発明では、請求項1の発明の構成において、データが格納されたバッファを特定するバッファ情報を含み、選択された多重通信線が同じバッファ情報の並び順が、バッファからデータを転送する順番である送信データリストを具備せしめ、
上記データ転送管理手段を、データのバッファへの書き込みおよびバッファからのデータの転送に応じて上記送信データリストを更新するように設定する。
【0016】
バッファ内のデータの有無を確認しなくとも、送信データリストから、転送すべきデータを格納したバッファが知られるので、データの中継を速やかに行うことができる。
【0017】
しかも、多重通信線ごとに、バッファからデータを転送する順番が知られるから、データ種類が同一のデータが相前後してバッファに書き込まれて、送信データリストに同一のデータ種類について複数がエントリされた場合において、当該データがバッファから一の多重通信線に対応して転送され、他の多重通信線に対応しては転送されていない状況が現出しても、上記一の多重通信線に対応して次に転送すべきデータを格納したバッファは、送信されたデータが格納されたバッファのバッファ情報の次に並べられたバッファ情報で特定されるバッファであることが知られる。これにより、同じデータを間違って送信することを回避できる。
【0018】
請求項記載の発明では、請求項の発明の構成において、上記送信データリストを、バッファを特定するバッファ情報と、上記転送先テーブルに基づいて多重通信線ごとに初期値が与えられて、上記バッファに格納されたデータを転送すべきか否かの管理情報とからなる構成とし、
上記データ転送管理手段を、バッファからのデータの転送に応じて、管理情報をデータの送信が不要である旨の情報に切り換えるように設定する。
【0019】
転送すべきデータが格納されたバッファとともに、そのデータの多重通信線ごとの転送進捗状況を一元管理することができるから、バッファに格納されたデータの転送が、選択された多重通信線に対応してすべて完了しているか否かを、容易に知ることができ、制御負担を減じることができる。
【0020】
請求項記載の発明では、多重通信システムを、請求項1ないし記載のデータ中継装置と、データを送受信する通信ノードが上記多重通信線に接続された複数の通信系とを具備する構成とすることで、中継データの消失によってデータ通信の信頼性を損なわない多重通信システムを構築することができる。
【0021】
【発明の実施の形態】
(第1実施形態)
図1に本発明の第1実施形態になるデータ中継装置および多重通信システムを示す。多重通信システムは、複数(図例では3)の通信系11,12,13とデータ中継装置4とにより構成される。各通信系11〜13は、多重通信線21,22,23に通信ノード31,32,33が接続されたもので、通信ノード31〜33間で所定のプロトコルにてデータを送受信するようになっている。通信ノード31〜33は各通信系11〜13に少なくともひとつ属している。
【0022】
上記データのフレーム構造の一例を図2に示す。これは自動車のBEAN(Body Electronics Area Network)プロトコルにおけるフレーム構造である。なお、以下の説明においてデータ通信は、このBEANプロトコルに従うものとして説明する。SOF(Start Of Frame)はフレームの開始を表し1bitが割り当てられる。PRI(Priority)はフレームの優先度を表す領域で、4bitが割り当てられる。「1」の方が「0」よりも優先度が高い。データ中継装置4、通信ノード31〜33は、各通信系11〜13において、多重通信線21〜23上でデータ同士の衝突が起きた場合に優先度の高いデータが優先し他のデータは送信が中止される。ML(Message Length)は、続くメッセージ部分の長さを表す領域で、メッセージ部分を構成するDID、MIDは、後述するようにそれぞれ1byteであり、DATAは可変長であるから、DATAのbyte数+2となる。
【0023】
メッセージ部分の最初はDID(Destination ID)であり、これはフレームの宛て先ノードIDを表す領域である。MID(Message ID)はメッセージIDを表す領域で、8bitが割り当てられる。MIDは、データの種類ごとに付与され、データの本体である後述するDATAの内容が表すデータの種類を特定する。通信でやりとりされるデータの種類にはエンジン回転数等があり、それぞれに例えば図3に示すようにMIDが付与される。図の例で説明すると、MID=08hである通信データのDATAはエンジン回転数を表し、MID=A5hである通信データのDATAは車速を表し、MID=DDhである通信データのDATAはパワーウィンドウスイッチの状態を表す。DATAはデータ本体の領域で1〜11byteが割り当てられる。
【0024】
DATAの後にはCRC(Cyclic Redundancy Characters)、EOM(End Of Message)、RSP(Responce)が続く。CRCは通信エラーチェック用の領域で、8bitが割り当てられる。CRCは、通信ノードが上記PRIからDATAまでの内容を所定の数式に代入してビット演算した結果を書き込み、受信した通信ノードが受信データと比較することで、通信エラーをチェックする。EOMは所定のビット列でメッセージの終了を表し8bitが割り当てられる。RSPはデータを受信した通信ノードがレスポンスを書き込む領域で、2bitが割り当てられる。RSPには受信した通信ノードによりフレームの内容を正常に解釈できたか否かの結果が書き込まれ、これよりデータを送信した通信ノードが再送信の必要があるか否かを判定する。データの最後尾はEOF(End Of Frame)で、所定のビット列によりフレームの終わりを表し、6bitが割り当てられる。
【0025】
各多重通信線21〜23は、データ中継装置4と接続され、データ中継装置4が、通信ノード31〜33から送信されたデータを別の通信系11〜13に属する通信ノード31〜33へと中継するようになっている。
【0026】
データ中継装置4は、多重通信線21〜23とのインターフェースをなす通信用ICや、制御用のマイクロコンピュータ等で構成されたもので、図ではその機能ブロックで表してあり、受信バッファ411,412,413、送信バッファ421,422,423、バッファ群43、データコントローラ44、転送先テーブル45等からなる。
【0027】
受信バッファ411〜413、送信バッファ421〜423は各多重通信線21〜23に対応して設けてある。受信バッファ411〜413は多重通信線21〜23から送信されたデータを受け、送信バッファ421〜423は送信しようとするデータが書き込まれる。受信バッファ411〜413および送信バッファ421〜423は上記通信用ICにより構成される。なお、データ通信機能をマイクロコンピュータを構成するCPU上で実行されるソフトウェアとして組み込んでもよく、この場合、受信バッファ411〜413、送信バッファ421〜423はマイクロコンピュータを構成するRAM上に割り当てる。
【0028】
バッファ群43は複数のバッファ431よりなり、各バッファ431は、詳細は後述するように受信バッファ411〜413が受けたデータを送信バッファ421〜423に転送する前に一時保持するようになっている。中継されるデータのMIDに少なくとも1つのバッファ431が割り当てられ、バッファ431ははそれぞれ1つのMIDに専属している。このうち特定のMIDについては複数のバッファ431が割り当てられており、相前後して受信した同じMIDの複数のデータを同時に保持することができる。バッファ431は、例えば転送されるデータが5種類で、そのうちの1種類については3つのバッファを割り当て、その他の種類は1つずつバッファを割り当てるとすれば、バッファ431を7つ用意することになる。
【0029】
なお、以下の説明において、データ中継の対象となるMIDに1対1に対応して、適宜、バッファ431をバッファnというように表し(n=自然数)、複数のバッファ431を割り当てたMIDのバッファ431については個々のバッファ431をバッファn(k)というように表して(k=自然数)識別するものとする(以下、kを段数という)。また、複数のバッファを割り当てたデータ種類の場合、バッファnは、バッファn(k)の全体をいうものとする。例えば、図4に示すように、バッファ1はMID=01hのデータの書き込み用とし、バッファ2はMID=5Fhのデータの書き込み用とし、バッファ3はMID=92hのデータの書き込み用とし、バッファ4(1)、バッファ4(2)、およびバッファ4(3)はそれぞれMID=C8hのデータの書き込み用とし、バッファ5はMID=EBhのデータの書き込み用とする。バッファ群43のデータ領域は上記マイクロコンピュータを構成するRAM上に割り当てられる。
【0030】
データコントローラ44は、受信データの中継先の多重通信線21〜23を選択し、中継先の多重通信線21〜23用の送信バッファ421〜423に転送するもので、所定間隔で立ち上がり、受信バッファ411〜413からバッファ431へのデータ転送を制御するとともに、バッファ431から送信バッファ421〜423へのデータ転送を制御する。データコントローラ44はマイクロコンピュータを構成するCPU上で実行されるソフトウェア上で実現される。データコントローラ44、受信バッファ411〜413および送信バッファ421〜423は、データコントローラ44のデータ転送処理と、受信バッファ411〜413の受信作動および送信バッファ421〜423の送信作動とを交互に繰り返すように設定されている。
【0031】
転送先テーブル45は、受信データのMIDと中継先の多重通信線用の送信バッファ421〜423とを対応せしめるもので、MIDと多重通信線21〜23とを指定すると、そのMIDの受信データをどの多重通信線21〜23用の送信バッファ421〜423に転送すべきか否かの情報が読みだせるようになっている。転送先テーブル45の内容は上記マイクロコンピュータを構成するROM上に予めデータコントローラ44の制御プログラムとともに書き込まれる。
【0032】
図5は転送先テーブル45の一例を示すもので、読みだした情報が「1」であれば、その多重通信線用の送信バッファに転送すべきことを、「0」であれば、その多重通信線用の送信バッファに転送しないことを示す。図例では、MID=01hであるデータVは第2多重通信線用の送信バッファ422にのみ転送し、MID=5FhであるデータWは第3多重通信線用の送信バッファ423にのみ転送し、MID=92hであるデータXは第1多重通信線用の送信バッファ421にのみ転送し、MID=C8hであるデータYは第1多重通信線用の送信バッファ421および第2多重通信線用の送信バッファ422に転送し、MID=EBhであるデータZは第2多重通信線用の送信バッファ422および第3多重通信線用の送信バッファ423に転送すべきことを表している。
【0033】
また、データコントローラ44には、受信バッファ411〜413からバッファ群43へのデータ転送処理時に実行されるバッファ指定手段441が設けてあり、受信バッファ411〜413のデータのMIDを識別し、そのMIDに対応するバッファ431を受信バッファ411〜413のデータの転送先として指定する。
【0034】
また、単一のバッファ431からなるMIDの場合は、受信バッファ411〜413のデータにより、そのMID用のバッファ431に上書きされることになるが、複数のバッファ431が割り当てられたMIDについては、データが格納されていないバッファ431のうち、段数の若いものから順に書き込まれていくようになっており、空きバッファ431がなければ最後の段数kf のバッファn(kf )のバッファ431に上書きされることになる。
【0035】
かくして受信データはそのMIDに対応してMID別にバッファ431に書き込まれる。
【0036】
また、データコントローラ44には、バッファ群43から送信バッファ421〜423へのデータ転送処理時に実行されて、データ転送の順番を管理するデータ転送管理手段442が設けてある。
【0037】
図6、図7、図8、図9に、バッファ群43から送信バッファ421〜423へのデータ転送処理を示すフローチャートを示す。これはデータ転送管理手段442の設定内容を示すものである。ステップS100では開始バッファ#=1とし、終了バッファ#=Nとする。ここで、Nはバッファ群43を構成するバッファ431の数である。ステップS101ではn=開始バッファ#(=1)とする。ステップS102ではバッファnにデータが書き込まれているか否かを確認する。なお、バッファ♯が複数のバッファ431を割り当てたMIDに対応するものの場合は、データが書き込まれているか否かの判断は、バッファn(1)のみに基づいて行う。
【0038】
書き込まれている場合はステップS105に進む(図7)。ステップS105ではバッファnのデータに転送先フラグが設定されているか否かを確認する。転送先フラグは多重通信線21〜23ごとに設定され、「1」が設定されていれば、バッファnのデータをその多重通信線21〜23に転送すべきことを表す。
【0039】
転送先フラグが設定されていなければステップS106,S107を実行し転送先フラグを設定する。ステップS106ではバッファnのデータのMIDを確認し、ステップS107では上記データ転送先テーブル45を参照してバッファnのデータの転送先を取得してバッファnのデータに転送先フラグを設定する。すなわち、第1多重通信線用の送信バッファ421に転送すべきであれば転送先フラグf1を「1」とし、第2多重通信線用の送信バッファ422に転送すべきであれば転送先フラグf2を「1」とし、第3多重通信線用の送信バッファ423に転送すべきであれば転送先フラグf3を「1」とする。
【0040】
転送先フラグを設定すると、ステップS108(図8)に進む。ステップS108では転送先フラグf1を確認し、「1」であればステップS109に進む。ステップS109では第1多重通信線用の送信バッファ421が空か否かを確認する。送信バッファ421が空であればステップS110に進みバッファnのデータを送信バッファ421に転送する。そして続くステップS111でバッファnの転送先フラグf1を「0」とし、ステップS112に進む。
【0041】
ステップS112では転送先フラグf2が「1」か否かを確認する。「1」であればステップS113に進む。ステップS113では第2多重通信線用の送信バッファ422が空か否かを確認する。送信バッファ422が空であればステップS114に進み、バッファnのデータを送信バッファ422に転送する。そして続くステップS115でバッファnの転送先フラグf2を「0」とし、ステップS116に進む。
【0042】
ステップS116では転送先フラグf3が「1」か否かを確認する。「1」であればステップS117に進む。ステップS117では第3多重通信線用の送信バッファ423が空か否かを確認する。送信バッファ423が空であればステップS118に進み、バッファnのデータを送信バッファ423に転送する。そして続くステップS119でバッファnの転送先フラグf3を「0」とし、ステップS120に進む(図9)。
【0043】
ステップS120では転送先フラグf1=0かつf2=0かつf3=0であるか否かを判定する。肯定されれば転送すべき送信バッファ421〜423へのデータ転送が完了しているということであり、ステップS121でバッファnのデータを削除する。複数のバッファ431が割り当てられているMIDの場合は、バッファn(1)のデータを削除する。
【0044】
続くステップS122では、バッファnが複数段構成、すなわち複数のバッファ431が割り当てられたMIDのものであるか否かを判定する。判定は、複数段構成をとるもののバッファ♯を予め記憶しておき、これに基づいて行い得る。肯定されればステップS123に進み、バッファn(2)のデータをバッファn(1)にコピーし、3段以上の構成であれば、さらにバッファn(3)のデータをバッファn(2)にというように、各バッファn(k)のデータをひとつ若い段数kのバッファn(k)に移動していく。同一MID内のバッファ431におけるかかる作動は、FIFOと実質的に同様のデータ処理である。
【0045】
図10(A)、図10(B)は、かかる、バッファ431から送信バッファ421〜423(図例では421)への転送処理を示すもので、転送するデータの有無についてバッファ群43内を順次、確認し、MID=92h、段数1のバッファ431に格納されたデータを送信バッファ421に転送したとすると(図10(A))、上記バッファ431のデータを削除し、段数2、段数3のデータが順繰りに繰り上がり、段数3のバッファが空になることになる(図10(B))。なお、かかるデータ移動はデータの物理的なアドレスが実際に変わるのではなく、データの格納場所をそのままにデータに対応する段数の情報の方を繰り替えるようにしてもよく、2つの手段は等価である。
【0046】
その後、ステップS103に進む(図6)。ステップS122が否定されれば単一のバッファ構成ということであり、ステップS123をスキップしてステップS103に進む。
【0047】
ステップS103においてnが終了バッファ#か否かを判定し、n≠終了バッファ#であればステップS104にてnを1ステップ、インクリメントし、ステップS102に戻り、次のバッファ♯のバッファnについてステップS102,S108〜S123が実行される。このように、バッファ431はバッファ♯順に、転送するデータの有無が確認され、データが保持されているときはそのデータを所定の送信バッファ421〜423に転送する。そして最後のバッファNについてのデータを転送するとデータ転送処理が終了となる。
【0048】
上記データ転送処理において、送信バッファ421〜423がデータを保持しており送信待ちの状態にあるためにステップS109,S113,S117の少なくともいずれかが否定されると、ステップS110,S111、ステップS114,S115、ステップS118,S119はスキップし転送先フラグf1,f2,f3のいずれかは「1」のままである。したがってステップS120は否定され、ステップS121はスキップしバッファnのデータはそのまま保持される。すなわち、転送先の送信バッファ421〜423が空になるのを待つことになる。この場合、次回のデータ転送処理において、ステップS105からステップS106,S107をスキップしてステップS108〜S119が実行され、転送先の送信バッファ421〜423が空になっていれば、前回、送信待ちのため転送できなかったデータを転送する。
【0049】
転送先の送信バッファ421〜423が空になるのを待つ状態が続けば、バッファ群43から送信バッファ421〜423への転送は行われない。その間に、バッファ431に保持されたのと同じMIDの新しいデータが受信されると、当該バッファ431はその新しいデータにより上書きされることになるが、バッファ431を、中継するデータのMIDごとに設けることで、データ種類の異なるデータにより上書きされることを回避できるので、あるMIDのデータが完全に消失してしまうのを防止することができる。
【0050】
また、上記シフトポジションのインディケータの点灯か消灯かのデータを複数段構成のバッファ431に受け持たせるようにすれば、上記データが相前後してエンジンECUからたて続けに送信されても、この一連のデータがバッファ431において保持され、表示飛びに対する耐性を高めることができる。しかも、最先に受信されたデータは常に段数1のバッファ431に存在しているから、データの飛び越しがなく、上記インディケータは「P」から「R」「N」「D」「2」「L」の順に変わっていくことになる。
【0051】
しかも、バッファ群43を構成するバッファ431の数は、中継するデータの種類の数に、データ消失に対する耐性を高めたいMIDのものについて複数のバッファを増設すればよいから、構成が簡単である。
【0052】
さらに、データコントローラ44が順次、バッファ431のデータの有無について確認するから、バッファ群43の中から送信バッファ421〜423に転送し多重通信線21〜23に送信すべきデータの存在が確実に知られる。
【0053】
なお、バッファ群43は、特に速やかに中継すべき重要なデータ種類ほど、例えば優先度(PRI)の高いデータ種類ほど若いバッファ♯のバッファ431を割り当てることで、重要なデータを速やかに中継先の多重通信線21〜23に送信することができる。
【0054】
また、データコントローラ44は立ち上がるごとに、バッファ群43の中から送信バッファ421〜423へのデータ転送処理において、中継対象のすべてのMIDについて、送信するデータの確認を行っているが、先ず、例えばバッファ群43のバッファ♯前半のバッファ431についてデータの転送処理を行い、次に立ち上がった時にバッファ♯後半のバッファ431についてデータの転送処理を行うように設定し、2回のデータの転送処理でバッファ群43を一巡するようにしてもよい。この場合、重要なデータ種類に対応するバッファ431については、上記2回のデータの転送処理の両方にて行うことで、重要なデータを速やかに中継先の多重通信線21〜23に送信することができる。
【0055】
なお、バッファ431内のデータの有無の確認は、本実施形態の方法を示す図11(A)のごとく、複数段構成のバッファ431では段数1のバッファ431のみ確認するのがよい。この方法の他、図11(B)に示すように、一部もしくは全部の複数段構成のバッファ431について、バッファn(1)の確認の後、そのMIDのすべてのバッファn(k)を確認するようにしたり、(C)に示すように、バッファn(1)から所定の段数のバッファn(k)まで確認する方法もあるが、図11(A)の本実施形態の方法とすることで、同一MIDの中で最もバッファ431に格納された時期が早いデータの転送優先的になされることになる。
【0056】
なお、この場合、図12に示すように、送信バッファ421〜423(図例では421)を複数段の構成にしてFIFO型でデータ処理し、バッファ431から転送された順に多重通信線21に送信する構成としてもよく、データ中継をよりスムーズに行い得る。
【0057】
(第2実施形態)
図13に本発明の第2実施形態になるデータ中継装置および多重通信システムの構成を示す。本実施形態のデータ中継装置4Aは、第1実施形態の構成において、別のデータコントローラに代えたものである。第1実施形態のデータコントローラでは、バッファ確認手段は、開始バッファ#、終了バッファ#をそれぞれ固定してバッファ1から始まり順にバッファNまでデータの有無を確認しデータの転送処理を行っているが、本実施形態のデータコントローラ44Aでは、データ転送管理手段442Aは、立ち上がるごとに開始バッファ#と終了バッファ#を変更し確認順序をずらしていくように設定されている。第1実施形態との相違点を中心に説明する。
【0058】
図14にデータ中継装置4Aのデータコントローラ44Aにおけるバッファ群43から送信バッファ421〜423へのデータ転送処理を示す。ステップS200において前回のデータ転送処理における開始バッファ#を1、インクリメントする。続くステップS201では開始バッファ#がNを越えているか否かを確認する。越えていなければ終了バッファ#を開始バッファ#−1とする。すなわち開始バッファ#のひとつ前のバッファ♯のバッファにて、バッファ431のデータの有無の確認を含むバッファ群43から送信バッファ421〜423への転送処理が一巡する。
【0059】
続くステップS204ではnを開始バッファ#とし、ステップS205ではバッファnにデータが書き込まれているか否かを確認し、書き込まれている場合には図7〜図9と同じ手順によりデータの書き込まれたバッファnについて転送処理を行ってステップS206に進む。書き込まれていなければ(ステップS205)そのままステップS206に進む。
【0060】
ステップS206ではnが終了バッファ#か否かを確認し、nが終了バッファ#でなければ、ステップS207,S208を実行した後、上記ステップS205移行の手順が実行されて次のバッファ#のバッファ431についてデータ転送処理を続ける。ここで、ステップS207,S208はnを次に確認するバッファ431の通し番号に更新する手順で、ステップS207ではnを1、インクリメントする。ステップS208ではこのnがN以上か否かを確認し、N未満であればステップS205に戻り、ステップS207にてインクリメントされたnすなわち次のバッファ♯のバッファ431についてデータの有無を確認する。このように順次、nが大きくなりついにNになるが、この場合、ステップS208からステップS209に進み、nを1としステップS205に戻る。バッファNの次に確認するのはバッファ1だからである。このようにN個すべてのバッファ431についてデータ転送処理が実行される。
【0061】
このデータ転送処理では、開始バッファ#と終了バッファ#とを、検索が1巡するごとに順次ずらしていくので、MID間でデータの転送に於ける延滞の程度が偏るということを防止することができる。例えば、図4、図5の例で説明すると、第2多重通信線22に転送するデータはデータV,Y,Zの3つである。データVはバッファ1に、データYはバッファ4に、データZはバッファ5に保持されるから、常にバッファ1からデータの有無の確認が開始される第1実施形態のデータコントローラ44では、バッファ1から転送されたデータVにより送信バッファ422が書き込まれると、データYは書き込むことができない(ステップS113参照)。また、送信バッファ422にデータV,Yのいずれかが書き込まれるとデータZは書き込むことができない。したがってデータYはデータVに比して、データZはデータV,Yに比して送信バッファ422への転送がしにくくデータがデータ中継装置4にて延滞する場合がある。これに対して本実施形態のデータコントローラ44Aでは、検索が1巡するごとにデータの有無の確認順序を順繰りにずらしていくので、バッファ1〜バッファN間で、公平にデータを、対応する送信バッファ421〜423に転送することができる。また、確認順序が固定しないので、データの中継に要する時間をバッファ431間で平均化することができる。
【0062】
なお、本データ転送処理では、データ中継装置4Aの起動時における開始バッファ#の初期値は1〜Nのうちいずれに設定してもよい。
【0063】
(第3実施形態)
図15に本発明の第3実施形態になるデータ中継装置および多重通信システムを示す。第1実施形態との相違点を中心に説明する。
【0064】
データ中継装置4Bは、送信データリスト46が設けてある。送信データリスト46は模式的には図16のごとく表せる。各多重通信線21〜23に送信するデータが格納されたバッファ431を特定する情報として、MIDおよび段数を含み、また、多重通信線21〜23ごとに、当該データを送信すべきか否かを示す転送先管理フラグを含んでいる。第1実施形態の転送先フラグと同様に「1」が転送すべきことを、「0」が転送不要であることを示している。なお、順位は送信データリスト46に書き込まれた順番を示している。
【0065】
送信データリスト46からは、ひとつの多重通信線21〜23に注目して、転送先管理フラグが「1」のところがあれば、転送すべきデータが受信バッファ411〜413からバッファ431に転送されてきているということが知られ、また、かかる、転送先管理フラグが「1」のところが複数あれば、転送する順番が知られることになる。すなわち、順位の高いものから転送するものとする。図例では第1多重通信線21の送信順番が、1位はMID=C8h、段数2のバッファ431であり、第2位はMID=92h、段数1のバッファ431であることを示している。また、第3多重通信線23の送信順番が、1位はMID=5Fh、段数2のバッファ431であることを示している。送信データリスト46の記憶領域はデータ中継装置4Bを構成するRAM上に設定される。
【0066】
データコントローラ44Bには、受信バッファ411〜413からバッファ群43へのデータ転送処理時およびバッファ群43から送信バッファ421〜423へのデータ転送処理時に起動されるデータ転送管理手段442Bが設けてあり、受信したデータを格納するバッファ431のバッファ情報(MIDおよび段数)および転送先管理フラグを送信データリスト46に追記する等、送信データリスト46を更新するようになっている。
【0067】
データコントローラ44Bで実行されるデータ転送処理を図17、図18、図19、図20、図21、図22により説明する。図17〜図19は受信バッファ411〜413からバッファ群43へのデータ転送処理であり、図20〜図22はバッファ群43から送信バッファ421〜423へのデータ転送処理である。
【0068】
バッファ群43へのデータ転送処理は、ステップS300〜S305(図17)が第1多重通信線21から受信したデータの転送処理であり、ステップS306〜S311(図18)が第2多重通信線22から受信したデータの転送処理であり、ステップS312〜S317(図19)が第3多重通信線23から受信したデータの転送処理である。なお、ステップS300〜S302,S306〜S308,S312〜S314はバッファ指定手段441としての手順であり、ステップS301〜S304、ステップS307〜S310、ステップS313〜S316はデータ転送管理手段442Bとしての手順である。
【0069】
ステップS300では第1多重通信線用の受信バッファ411が空か否かを確認し、空でなければ、ステップS301で受信バッファ411に入っている受信データのMIDを確認し、ステップS302で受信データを格納するバッファ431の段数を確認する。この場合、当該MIDが複数のバッファを割り当てたものであれば、格納先はデータが格納されていないものを選択する。データが格納されていない空きバッファ431が複数ある場合の選択方法は任意である。また、当該MIDに割り当てられたすべてのバッファ431にデータが格納されてしまっている場合は、同じMIDで送信データリスト46の最も末尾側のバッファ431を受信データの格納先として選択する。次いで、ステップS303で上記データ転送先テーブル45に基づいて受信データの転送先を取得する。
【0070】
そして、ステップS304では送信データリスト46の末尾に、ステップS301〜S303にて取得したバッファ情報および転送先管理フラグの初期値を追記する。ここで、転送先管理フラグは、転送すべき多重通信線21〜23について「1」とする。なお、ステップS302において送信データリスト46の最も末尾側のバッファ431を受信データの格納先として選択した場合等、上書きとなる場合には、送信データリスト46の転送先管理フラグのみを、ステップS303で取得した転送先に基づいて再設定する。
【0071】
続くステップS305では、第1多重通信線用の受信バッファ411のデータをバッファ群43のうち、ステップS301,302で確認した所定のバッファ431に転送する。そして第2多重通信線22から受信したデータの転送処理(ステップS306〜S311)に移行する。なお、ステップS300において第1多重通信線用の受信バッファ411が空のときは、ステップS301〜S305をスキップし、上記第2多重通信線22から受信したデータの転送処理(ステップS306〜S311)に移行する。
【0072】
ステップS306では第2多重通信線用の受信バッファ412が空か否かを確認し、空でなければ、上記ステップ301〜305と同様に、ステップS307で受信バッファ412に入っている受信データのMIDを確認し、ステップS308で受信データを格納するバッファ431の段数を確認する。次いで、ステップS309で上記データ転送先テーブル45に基づいて受信データの転送先を取得する。
【0073】
次いでステップS310では、ステップS307〜S309にて取得したバッファ情報および転送先管理フラグにより送信データリスト46を更新し、ステップS311で、第2多重通信線用の受信バッファ412のデータをバッファ群43のうち、ステップS307,S308で確認した所定のバッファ431に転送する。そして第3多重通信線23から受信したデータの転送処理(ステップS312〜S318)に移行する。なお、ステップS306において第2多重通信線用の受信バッファ412が空のときは、ステップS307〜S311をスキップし、上記第3多重通信線23から受信したデータの転送処理に移行する(ステップS312〜S317)。
【0074】
ステップS312では第3多重通信線用の受信バッファ413が空か否かを確認し、空でなければ、上記ステップ301〜305と同様に、ステップS313で受信バッファ413に入っている受信データのMIDを確認し、ステップS314で受信データを格納するバッファ431の段数を確認する。次いで、ステップS315で上記データ転送先テーブル45に基づいて受信データの転送先を取得する。
【0075】
次いでステップS316では、ステップS313〜S315にて取得したバッファ情報および転送先管理フラグにより送信データリスト46を更新し、ステップS317で、第3多重通信線用の受信バッファ413のデータをバッファ群43のうち、ステップS314,S315で確認した所定のバッファ431に転送し、データの転送処理を終了する。なお、ステップS312において第3多重通信線用の受信バッファ413が空のときは、ステップS313〜S317をスキップし、データの転送処理を終了する。
【0076】
次にバッファ431から各送信バッファ421〜423へのデータ転送処理について説明する。ステップS400〜S407(図20)がバッファ431から第1多重通信線用送信バッファ421へのデータの転送処理であり、ステップS408〜S415(図21)が第2多重通信線用送信バッファ422へのデータの転送処理であり、ステップS416〜S423(図22)が第3多重通信線用送信バッファ423へのデータの転送処理である。ステップS400〜S406、ステップS408〜S414、ステップS416〜S422はデータ転送管理手段422Bとしての手順である。
【0077】
ステップS400では、第1多重通信線用の送信バッファ421が空か否かを確認し、空であればステップS401に進み送信データリスト46の第1多重通信線用の転送先管理フラグがすべて「0」か否かを確認する。否定判断されると、すなわちバッファ431から第1多重通信線用の送信バッファ421に転送すべきデータがあれば、ステップS402に進んで、第1多重通信線用転送管理フラグが「1」のもののうちで最上位のバッファ情報(MIDおよび段数)を取得する。続くステップS403ではバッファ群43のうち取得したバッファ情報に対応したバッファ431のデータを第1多重通信線用の送信バッファ421に転送する。そして、送信データリスト46の、「1」をとる第1多重通信線用転送先管理フラグの最上位のものをクリア(「0」)する。
【0078】
続くステップS405では、転送先管理フラグをクリアしたデータの他の転送先管理フラグ、すなわち、第2、第3の多重通信線用の転送先管理フラグを確認し、すべての転送先管理フラグが「0」であれば、ステップS406で送信バッファ421への送信を完了したデータの情報(バッファ情報および転送先管理フラグ)を送信データリスト46から削除し、以下の低順位の情報を繰り上げる。そして、ステップS407で、送信バッファ421への送信を完了したデータをそのバッファ431から削除する。そして、ステップS408に進む。なお、ステップS405が肯定判断されると、ステップS406,S407をスキップしてステップS408に進む。
【0079】
このように送信データリスト46に書き込まれた順に、送信バッファ421が空き次第、バッファ431からデータが送信バッファ421に転送され、そこで第1多重通信線21への送信待ちの状態となる。なお、ステップS400において送信バッファ421にデータが既に書き込まれている場合、ステップS401が肯定判断された場合、すなわち第1多重通信線21に転送すべきデータがない場合には、ステップS408(図21)に進む。
【0080】
ステップS408〜S415では、第2多重通信線用の送信バッファ422、これに転送するデータを保持しているバッファ431、送信データリスト46についてステップS400〜S407と同様の手順が行われる。すなわち、第2多重通信線用の送信バッファ422が空で(ステップS408)、送信データリスト46の第2多重通信線用転送先管理フラグに「1」のものがあれば(ステップS409)、第2多重通信線用転送先管理フラグが「1」のもののうちで最上位のバッファ情報を取得し(ステップS410)、取得したバッファ情報に対応したバッファ431のデータを送信バッファ422に転送する(ステップS411)。そして、送信データリスト46の第2多重通信線用転送先管理フラグの最上位のものをクリアする(ステップS412)。
【0081】
次いで、ステップS413で、転送したデータについての、他の転送先管理フラグ、すなわち、第1、第3の多重通信線用の転送先管理フラグを確認し、すべての転送先管理フラグが「0」であれば、ステップS414で、送信バッファ422への送信を完了したデータの情報を送信データリスト46から削除し、低順位の情報を繰り上げ、ステップS415で、送信バッファ422への送信を完了したデータをそのバッファ431から削除する。そして、ステップS416(図22)に進む。
【0082】
ステップS416〜S423では、第3多重通信線用の送信バッファ423、これに転送するデータを保持しているバッファ431、送信データリスト46についてステップS400〜S407と同様の手順が行われる。すなわち、第3多重通信線用の送信バッファ423が空で(ステップS416)、送信データリスト46の第3多重通信線用転送先管理フラグに「1」のものがあれば(ステップS417)、第3多重通信線用転送先管理フラグが「1」のもののうちで最上位のバッファ情報を取得し(ステップS418)、取得したバッファ情報に対応したバッファ431のデータを送信バッファ423に転送する(ステップS419)。そして、送信データリスト46の第3多重通信線用転送先管理フラグの最上位のものをクリアする(ステップS420)。
【0083】
次いで、ステップS421で、転送したデータについての、他の転送先管理フラグ、すなわち、第1、第2の多重通信線用の転送先管理フラグを確認し、すべての転送先管理フラグが「0」であれば、ステップS422で、送信バッファ423への送信を完了したデータの情報を送信データリスト46から削除し、低順位の情報を繰り上げ、ステップS423で、送信バッファ423への送信を完了したデータをそのバッファ431から削除する。これにより、バッファ431から送信バッファ421〜423へのデータ転送が完了する。
【0084】
データコントローラ44Bのデータ転送処理は上記のごとく設定されており、送信データリスト46は、多重通信線21〜23へ送信すべきデータの情報が更新されていく。送信データリスト46の上位のものは早く受信されたデータのものである。したがって、各多重通信線21〜23のそれぞれにおいて、中継すべきデータが受信された順に送信バッファ421〜423において送信待ちの状態になる。すべてのバッファ431についてデータの有無を確認しなくとも、バッファ431に書き込まれた送信すべきデータが格納されたバッファが送信データリスト46から知られるので、データの中継を速やかに行うことができる。
【0085】
(第4実施形態)
図23に本発明の第4実施形態になるデータ中継装置および多重通信システムを示す。第3実施形態との相違点を中心に説明する。
【0086】
データ中継装置4Cは、各多重通信線21〜23ごとに送信データリスト461,462,463が設けてある。送信データリスト461〜463は各多重通信線21〜23に送信するデータを格納したバッファの情報(MIDおよび段数)が送信順に書き込まれたもので、模式的には図24(A)、図24(B)、図24(C)のごとく表せる。転送先管理フラグを含まない点で第3実施形態の送信データリストと相違している。図の例では、第1多重通信線21への送信順番が1位はMID=C8h、段数2のバッファ431に格納されたデータであり、第2位はMID=92h、段数1のバッファ431のデータであることを示している。送信データリスト461〜463の記憶領域はデータ中継装置4Cを構成するRAM上に設定される。
【0087】
データコントローラ44Cには、受信バッファ411〜413からバッファ群43へのデータ転送処理時に起動されるデータ転送管理手段442Cが設けてある。
【0088】
データコントローラ4Cで実行されるデータ転送処理を図25、図26、図27、図28、図29、図30により説明する。図25〜図27は受信バッファ411〜413からバッファ群43へのデータ転送処理であり、図28〜図30はバッファ群43から送信バッファ421〜423へのデータ転送処理である。
【0089】
バッファ群43へのデータ転送処理は、ステップS500〜S508(図25)が第1多重通信線21から受信したデータの転送処理であり、ステップS509〜S517(図26)が第2多重通信線22から受信したデータの転送処理であり、ステップS518〜S526(図27)が第3多重通信線23から受信したデータの転送処理である。なお、ステップS500〜S502,S509〜S511,S518〜S520はバッファ指定手段441としての手順であり、ステップS501〜S507,ステップS510〜S516,ステップS519〜S525はデータ転送管理手段442Cとしての手順である。
【0090】
ステップS500では第1多重通信線用の受信バッファ411が空か否かを確認し、空でなければ、ステップS501で受信バッファ411に入っている受信データのMIDを確認し、ステップS502で当該MIDのデータを格納するバッファ431の段数を確認する。次いで、ステップS503で上記データ転送先テーブル45に基づいて受信データの転送先を取得する。
【0091】
続くステップS504では取得された転送先に第2多重通信線用の送信バッファ422があるか否かを確認し、肯定されればステップS505に進む。ステップS505では、第2多重通信線22用の送信データリスト462の末尾に、ステップS501,S502にて確認されたバッファ情報(MIDおよび段数)を追記し、ステップS506に進む。ステップS506では、取得された転送先に第3多重通信線用の送信バッファ423があるか否かを確認し、肯定されればステップS507に進む。ステップS507では、第3多重通信線23用の送信データリスト463の末尾に、ステップS501,S502にて確認されたバッファ情報(MIDおよび段数)を追記しステップS508に進む。なお、ステップS505,S507において送信データリスト462,463に既に同じバッファ情報がある場合には、バッファ情報を追記するともに送信データリスト462,463に既に書かれたバッファ情報を削除する。
【0092】
ステップS508では、第1多重通信線用の受信バッファ411のデータをバッファ群43のうち、バッファ情報で特定される所定のバッファ431に転送する。そして第2多重通信線22から受信したデータの転送処理(ステップS509〜S517)に移行する。なお、ステップS500において第1多重通信線用の受信バッファ411が空のときは、第2、第3多重通信線用の送信データリスト462,463への追記処理(ステップS501〜S507)およびデータ転送処理(ステップS508)をスキップし、上記第2多重通信線22から受信したデータの転送処理(ステップS509〜S517)に移行する。
【0093】
ステップS509では第2多重通信線用の受信バッファ412が空か否かを確認し、空でなければ、ステップS510で受信バッファ412に入っている受信データのMIDを確認し、ステップS511で当該MIDのデータを格納するバッファ431の段数を確認する。次いで、ステップS512で上記データ転送先テーブル45に基づいて受信データの転送先を取得する。
【0094】
続くステップS513では取得された転送先に第1多重通信線用の送信バッファ421があるか否かを確認し、肯定されればステップS514に進む。ステップS514では、第1多重通信線21用の送信データリスト461の末尾に、ステップS510,S511にて確認されたバッファ情報(MIDおよび段数)を追記し、ステップS515に進む。ステップS515では、取得された転送先に第3多重通信線用の送信バッファ423があるか否かを確認し、肯定されればステップS516に進む。ステップS516では、第3多重通信線23用の送信データリスト463の末尾に、ステップS510,S511にて確認されたバッファ情報(MIDおよび段数)を追記しステップS517に進む。なお、ステップS514,S516において送信データリスト461,463に既に同じバッファ情報がある場合には、バッファ情報を追記するともに送信データリスト461,463に既に書かれたバッファ情報を削除する。
【0095】
ステップS517では、第2多重通信線用の受信バッファ412のデータを、バッファ群43のうちバッファ情報で特定されるバッファ431に転送する。そして第3多重通信線23から受信したデータの転送処理(ステップS518〜S526)に移行する。なお、ステップS509において第2多重通信線用の受信バッファ412が空のときは、第1、第3多重通信線用の送信データリスト461,463への追記処理(ステップS510〜S516)およびデータ転送処理(ステップS517)をスキップし、上記第3多重通信線23から受信したデータの転送処理(ステップS518〜S526)に移行する。
【0096】
ステップS518では第3多重通信線用の受信バッファ413が空か否かを確認し、空でなければ、ステップS519で受信バッファ413に入っている受信データのMIDを確認し、ステップS520で当該MIDのデータを格納するバッファ431の段数を確認する。次いで、ステップS521で上記データ転送先テーブル45に基づいて受信データの転送先を取得する。
【0097】
続くステップS522では取得された転送先に第1多重通信線用の送信バッファ421があるか否かを確認し、肯定されればステップS523に進む。ステップS523では、第1多重通信線21用の送信データリスト461の末尾に、ステップS519,S520にて確認されたバッファ情報(MIDおよび段数)を追記し、ステップS524に進む。ステップS524では、取得された転送先に第2多重通信線用送信バッハ422があるか否かを確認し、肯定されればステップS525に進む。ステップS525では、第2多重通信線22用の送信データリスト462の末尾に、ステップS519,S520にて確認されたバッファ情報(MIDおよび段数)を追記しステップS526に進む。なお、ステップS523,S525において送信データリスト461,462に既に同じバッファ情報がある場合には、バッファ情報を追記するともに送信データリスト461,462に既に書かれたバッファ情報を削除する。
【0098】
ステップS526では、第3多重通信線用の受信バッファ413のデータを、バッファ群43のうちバッファ情報で特定される所定のバッファ431に転送し、受信バッファ411〜413からバッファ431へのデータ転送処理を終了する。なお、ステップS518において第3多重通信線用の受信バッファ413が空のときは、第1、第2多重通信線用の送信データリスト461,462への追記処理(ステップS519〜S525)およびデータ転送処理(ステップS526)をスキップし、データ転送処理を終了する。
【0099】
次にバッファ431から各送信バッファ421〜423へのデータ転送処理について説明する。ステップS600〜S606(図28)がバッファ431から第1多重通信線用送信バッファ421へのデータの転送処理であり、ステップS607〜S613(図29)が第2多重通信線用送信バッファ422へのデータの転送処理であり、ステップS614〜S620(図30)が第3多重通信線用送信バッファ423へのデータの転送処理である。ステップS601〜S604、ステップS608〜S611、ステップS615〜S618はデータ転送管理手段442Cとしての手順である。
【0100】
ステップS600では、第1多重通信線用の送信バッファ421が空か否かを確認し、空であればステップS601に進み第1多重通信線用の送信データリスト461が空か否かを確認する。送信データリスト461が空でない、すなわちバッファ431から送信バッファ421に転送すべきデータがあれば、ステップS602に進んで上記送信データリスト461の先頭のバッファ情報を取得する。続く、ステップS603ではバッファ群43のうち取得したバッファ情報で特定されるバッファ431のデータを第1多重通信線用の送信バッファ421に転送する。次いで、送信データリスト461の先頭のバッファ情報すなわちステップS603で転送したデータの情報を削除し、低順位の情報を繰り上げる。
【0101】
続くステップS605では第2、第3多重通信線用送信データリスト642,643に、ステップS604で削除したバッファ情報と同じものがあるか否かを判定し、否定されると、ステップS606で、ステップS603で転送を完了したデータが格納されたバッファ431からデータを削除し、ステップS605に進む。このように送信データリスト461に書き込まれた順に、送信バッファ421が空き次第、バッファ431からデータが送信バッファ421に転送され、そこで第1多重通信線21への送信待ちの状態となる。なお、ステップS600において送信バッファ421にデータが既に書き込まれている場合、ステップS601において送信データリスト461が空で転送すべきデータがない場合には、ステップS602〜S606をスキップしてステップS607(図29)に進む。
【0102】
ステップS607〜S613では、第2多重通信線用の送信バッファ422、これに転送するデータを保持しているバッファ431、送信データリスト462についてステップS600〜S606と同様の手順が行われる。すなわち、第2多重通信線用の送信バッファ422が空で(ステップS607)、第2多重通信線用の送信データリスト462に書き込みがあれば(ステップS608)、送信データリスト462の先頭のバッファ情報を読み(ステップS609)、当該バッファ情報で特定されるバッファ431からデータを送信バッファ422に転送する(ステップS610)。そして送信データリスト462の先頭のデータのバッファ情報、すなわちこの転送の済んだデータのバッファを削除し以下の低順位の情報を繰り上げる(ステップS611)。
【0103】
次いで、第1、第3多重通信線用送信データリスト641,643に、ステップS611で削除したバッファ情報と同じものがなければ(ステップS612)、ステップS610で転送を完了したデータが格納されたバッファ431からデータを削除し(ステップS613)、ステップS614(図30)に進む。
【0104】
ステップS614〜S620では、第3多重通信線用の送信バッファ423、これに転送するデータを保持しているバッファ431、送信データリスト463についてステップS600〜S606と同様の手順が行われる。すなわち、第3多重通信線用の送信バッファ423が空で(ステップS614)、第3多重通信線用の送信データリスト463に書き込みがあれば(ステップS615)、送信データリスト463の先頭のバッファ情報を読み(ステップS616)、当該バッファ情報で特定されるバッファ431からデータを送信バッファ423に転送する(ステップS617)。そして送信データリスト463の先頭のデータのバッファ情報、すなわちこの転送の済んだデータのバッファ情報を削除し以下の低順位の情報を繰り上げる(ステップS618)。
【0105】
次いで、第1、第2多重通信線用送信データリスト641,642に、ステップS618で削除したバッファ情報と同じものがなければ(ステップS619)、ステップS617で転送を完了したデータが格納されたバッファ431からデータを削除し(ステップS620)、バッファ431から送信バッファ421〜423への転送処理を終了する。
【0106】
データコントローラ44Cのデータ転送処理は上記のごとく設定されており、各送信データリスト461〜463は、対応する多重通信線21〜23へ送信すべきデータのバッファ情報が更新されていく。送信データリスト461〜463内の順番は受信された順である。例えば上記図24の例で、第1多重通信線用の送信データリスト461は、バッファ群431から送信順番第1位のC8hのデータが送信バッファ421に転送され、送信データリスト461からバッファ情報(MID=C8h、段数2)が削除されたとすると、このバッファ情報(MID=C8h、段数2)は第2、第3多重通信線用の送信データリスト462,463を含めてなくなっている。これより、バッファ情報(MID=C8h、段数2)で特定されるバッファ431のデータはすべての転送を完了していることが知られ、バッファ431から削除されることになる。
【0107】
なお、同じMID=C8hのデータでも、第2多重通信線用の送信データリスト462で送信順番第1位のバッファ情報(MID=C8h、段数1)のデータが送信されても、同じバッファ情報が第1多重通信線用の送信データリスト461にあり、第2多重通信線用の送信データリスト462からバッファ情報(MID=C8h、段数1)が削除されても、バッファ431に格納されたデータは削除されず、第1多重通信線用の送信バッファ421に送信されるまで基本的に保持される。
【0108】
これにより、第3実施形態と同様に、すべてのバッファ431についてデータの有無を確認しなくとも、バッファ431に書き込まれた送信すべきデータが格納されたバッファ431が送信データリスト461〜463から知られるので、データの中継を速やかに行うことができる。また、各多重通信線21〜23への送信順番が受信した順番となるので、すべての受信データを延滞することなく確実に送信することができる。
【0109】
また、各送信データリスト461〜463には多重通信線21〜23ごとにバッファ情報が転送する順番に並んでいるから、複数の多重通信線21〜23のそれぞれに対応して同じMIDのバッファ情報が複数並んだ場合、ある送信バッファ421〜423への転送が済んでも当該データは削除されないが、同じ送信バッファ421〜423に次に転送すべきデータを間違えることがない。
【0110】
また、一部のMID、図例ではC8h等については、複数のバッファ431を割り当てることで、データ中継装置4Cが相前後して受信した同一MIDの複数のデータを、いずれも送信すべきデータとして送信データリスト461〜463にエントリすることができるので、データ消失に対する耐性を高めることができる。
【0111】
なお、上記各実施形態では、データを受信してバッファの空きがない場合には上書きするとしているが、データコンローラを、受信バッファにデータを保持したまま、バッファへの転送を一時、保留するように設定してもよい。その間にバッファが空けば、上書きを回避することができる。この場合、図31に示すように、多重通信線21ごとに受信バッファ411を複数設けてFIFO型でデータ処理し、バッファ431での上書きの回避と、多重通信線21からのデータ受信作動の確保との両立を図ることができる。
【図面の簡単な説明】
【図1】本発明の第1のデータ中継装置および多重通信システムの構成図である。
【図2】本発明の第1のデータ中継装置および多重通信システムの通信データのフレーム構造を示す図である。
【図3】本発明の第1のデータ中継装置および多重通信システムの通信データの種類とそのMIDの対応関係を示す図である。
【図4】本発明の第1のデータ中継装置のバッファの模式図である。
【図5】本発明の第1のデータ中継装置の転送先テーブルにおけるデータとその転送先の対応関係を示す図である。
【図6】本発明の第1のデータ中継装置のデータコントローラにおいて実行される制御を示す第1のフローチャートである。
【図7】本発明の第1のデータ中継装置のデータコントローラにおいて実行される制御を示す第2のフローチャートである。
【図8】本発明の第1のデータ中継装置のデータコントローラにおいて実行される制御を示す第3のフローチャートである。
【図9】本発明の第1のデータ中継装置のデータコントローラにおいて実行される制御を示す第4のフローチャートである。
【図10】(A),(B)はそれぞれ本発明の第1のデータ中継装置の作動を示す図である。
【図11】(A)は上記データコントローラの設定を示す図であり、(B),(C)はそれぞれ変形例の設定を示す図である。
【図12】本発明のデータ中継装置および多重通信システムの変形例を示す構成図である。
【図13】本発明の第2のデータ中継装置および多重通信システムの構成図である。
【図14】本発明の第2のデータ中継装置のデータコントローラにおいて実行される制御を示すフローチャートである。
【図15】本発明の第3のデータ中継装置および多重通信システムの構成図である。
【図16】本発明の第3のデータ中継装置の送信データリストの構成を示す図である。
【図17】本発明の第3のデータ中継装置のデータコントローラにおいて実行される制御を示す第1のフローチャートである。
【図18】本発明の第3のデータ中継装置のデータコントローラにおいて実行される制御を示す第2のフローチャートである。
【図19】本発明の第3のデータ中継装置のデータコントローラにおいて実行される制御を示す第3のフローチャートである。
【図20】本発明の第3のデータ中継装置のデータコントローラにおいて実行される制御を示す第4のフローチャートである。
【図21】本発明の第3のデータ中継装置のデータコントローラにおいて実行される制御を示す第5のフローチャートである。
【図22】本発明の第3のデータ中継装置のデータコントローラにおいて実行される制御を示す第6のフローチャートである。
【図23】本発明の第4のデータ中継装置および多重通信システムの構成図である。
【図24】(A),(B),(C)はそれぞれ本発明の第4のデータ中継装置の送信データリストの構成を示す図である。
【図25】本発明の第4のデータ中継装置のデータコントローラにおいて実行される制御を示す第1のフローチャートである。
【図26】本発明の第4のデータ中継装置のデータコントローラにおいて実行される制御を示す第2のフローチャートである。
【図27】本発明の第4のデータ中継装置のデータコントローラにおいて実行される制御を示す第3のフローチャートである。
【図28】本発明の第4のデータ中継装置のデータコントローラにおいて実行される制御を示す第4のフローチャートである。
【図29】本発明の第4のデータ中継装置のデータコントローラにおいて実行される制御を示す第5のフローチャートである。
【図30】本発明の第4のデータ中継装置のデータコントローラにおいて実行される制御を示す第6のフローチャートである。
【図31】本発明のデータ中継装置および多重通信システムの別の変形例を示す構成図である。
【図32】従来のデータ中継装置および多重通信システムの代表例の構成図である。
【図33】通信データの本体の模式図である。
【符号の説明】
11,12,13 通信系
21,22,23 多重通信線
31,32,33 通信ノード
4,4A,4B,4C データ中継装置
411,412,413 受信バッファ
421,422,423 送信バッファ
43 バッファ群
431 バッファ
44,44A,44B,44C データコントローラ
441 バッファ指定手段
442,442A,442B,442C データ転送管理手段
45 転送先テーブル
46,461,462,463 送信データリスト
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data relay device and a multiple communication system.
[0002]
[Prior art]
In recent years, the advancement of information communication has progressed especially against the background of advances in computer technology. For example, even in automobiles, the amount of information exchanged between control units that control mounted electrical components has increased rapidly. Yes. Thus, multiple communication systems are being adopted to reduce the number of wire harnesses that transmit information. In a multiplex communication system, a communication node such as a control ECU that transmits and receives data is connected to a common multiplex communication line, and data communication is performed between the communication nodes via the multiplex communication line. The data is configured to include data type information and the like together with the data body, and the received communication node can understand the contents of the data. In the case of the above-mentioned automobiles and the like having various control types, as shown in FIG. 32, in order to perform data communication efficiently, as shown in FIG. 32, multiple communication lines 921, 922, and 923 are used. And a plurality of communication systems 911, 912, and 913 including nodes 931 and 932 connected thereto, and communication between the nodes 931 and 932 to which the communication systems 911 to 913 belong to are performed via the data relay device 94. There is something like that. In the illustrated example, an engine ECU 931 that controls a power system such as an engine in accordance with the shift position of the shift lever 81 and a meter ECU 932 that controls display of the meter 82 and the like belong to different communication systems 911 and 912.
[0003]
The data relay device 94 is usually provided with a reception buffer for receiving data and a transmission buffer for storing data immediately before transmission to the multiplex communication line. Also, as a way to efficiently relay a large amount of data, a buffer that temporarily holds received data before it is transmitted to the relay destination multiplex communication line is provided for each type of data to be relayed. Is received, the type of the received data is identified and written into a buffer corresponding to the type (Japanese Patent Laid-Open No. 2000-244548). This technology prohibits overwriting between different types of data, so no matter how busy the communication is, it can prevent any type of data from being completely lost. Play. Japanese Patent Laid-Open No. 2000-244548 also discloses a device that alleviates data retention in the data relay device by resetting the priority of the data.
[0004]
[Problems to be solved by the invention]
By the way, in some data, not only the latest data but also the change itself of data input in time series has a meaning. In the example of FIG. 32, the meter ECU 932 lights and extinguishes the six indicators 821 “P”, “R”, “N”, “D”, “2”, and “L”, which indicate one of the display positions of the meter 82. However, data indicating whether each indicator 821 is turned on or off is received from an engine ECU 931 belonging to a communication system 911 different from the meter ECU 932.
[0005]
FIG. 33 shows an example of the structure of the data body of this ON / OFF data. The shift positions from “P” to “L” correspond to the 1st to 6th bits, and each bit is It is “1” if is turned on, and “0” if it is turned off. When the driver moves the shift lever from “P” to “L” at a stroke in 5 steps to start the car, the engine ECU 931 changes the bit that becomes “1” to the next bit after each step. The moved data is transmitted from the engine ECU 931, and the data enters the data relay device 94 continuously. In this case, if the data is replaced with the latest data by overwriting the buffer in the data relay device 94, there is a disadvantage that the shift position display is skipped in the indicator 821.
[0006]
If it is intended to transfer such data reliably, it is one idea to reset the priority as described above. However, if other types of data remain in the transmission buffer of the data relay device 94, eventually, The buffer data will be overwritten.
[0007]
The present invention has been made in view of the above circumstances, and an object thereof is to provide a data relay device and a multiplex communication system that are highly resistant to data loss.
[0008]
According to the first aspect of the present invention, there is provided a data relay device that relays a plurality of types of data interposed between multiplex communication lines that transmit data including data type information together with the data body. In a data relay apparatus having a data controller that selects a multiplex communication line as a data relay destination and transfers received data,
A buffer that temporarily holds received data before transmission to the relay destination multiplex communication line is provided for each type of data to be relayed, and a plurality of buffers are assigned to one or more data types among the data types,
The data controller identifies a type of received data, and designates a buffer corresponding to the type as a write destination of the received data; and
In each multiplex communication line, the order in which the data from the same data type is transferred is the order in which the data is written in the buffer. Data transfer management means for managing the transfer of data from the buffer storing the data,
The data transfer management means is Starts up at a predetermined time interval, sequentially checks whether there is data to be transmitted in the buffer, and if there is data, transfers the data from the buffer, and checks whether there is data for a buffer of the same data type To perform only on the buffer that stores the data first Set.
[0009]
By providing a buffer for each data type, the buffer can be overwritten only by the latest data of the same type, and other types of data waiting for transmission can be prevented from being lost due to the received data.
[0010]
Furthermore, regarding the types of data to which a plurality of buffers are allocated, even if data is received in succession, these can be held simultaneously, and the resistance against data loss can be increased. In addition, data transfer from the buffer is performed at least when the selected multiplex communication lines are the same, since data is stored in the buffer from the earliest time. It is possible to surely prevent jumping over.
[0012]
By sequentially checking the presence / absence of data in the buffer, the existence of data to be transmitted is surely known from the buffer group, and the presence / absence of data for buffers of the same data type is first determined. Since the buffer storing the data first is checked, the data stored first can be transferred from the buffer prior to another buffer having the same data type.
[0013]
Claim 2 In the described invention, the claims 1 In the configuration of the invention, the data transfer management means is used for buffers having the same data type. Data was stored at the top After completing the transfer of data in the buffer corresponding to the selected multiplex communication line, the data received first among the data in other buffers of the same data type Data was stored first Set to move to buffer.
[0014]
By ensuring that the first data received among the same type of data always exists in the specified buffer, it is possible to ensure the presence of data to be transferred without checking the presence or absence of data for all buffers. Can be confirmed.
[0015]
Claim 3 In the described invention, in the configuration of the first aspect of the invention, the buffer information specifying the buffer in which the data is stored is included, and the order of the buffer information in the selected multiple communication line is the order in which the data is transferred from the buffer. And a transmission data list that is
The data transfer management means is set to update the transmission data list in accordance with the writing of data into the buffer and the transfer of data from the buffer.
[0016]
Even without checking the presence or absence of data in the buffer, the buffer storing the data to be transferred is known from the transmission data list, so that data can be relayed promptly.
[0017]
In addition, since the order in which data is transferred from the buffer is known for each multiplex communication line, data of the same data type is written to the buffer in succession, and a plurality of entries for the same data type are entered in the transmission data list. If the data is transferred from the buffer corresponding to one multiplex communication line and not transferred to another multiplex communication line, it corresponds to the one multiplex communication line. The buffer storing the data to be transferred next is known to be a buffer specified by the buffer information arranged next to the buffer information of the buffer storing the transmitted data. Thereby, it can avoid sending the same data accidentally.
[0018]
Claim 4 In the described invention, the claims 3 In the configuration of the invention, whether the data stored in the buffer should be transferred to the transmission data list given initial values for each multiplex communication line based on the buffer information for specifying the buffer and the transfer destination table It consists of management information on whether or not
The data transfer management means is set so as to switch the management information to information indicating that data transmission is unnecessary in accordance with the transfer of data from the buffer.
[0019]
Since it is possible to centrally manage the transfer progress of each multiplex communication line with the buffer storing the data to be transferred, the transfer of the data stored in the buffer corresponds to the selected multiplex communication line. It is easy to know whether or not everything has been completed, and the control burden can be reduced.
[0020]
Claim 5 In the described invention, a multiplex communication system is defined in claims 1 to. 4 Multiplexing that does not impair the reliability of data communication due to loss of relay data, by including the data relay device described above and a plurality of communication systems in which communication nodes that transmit and receive data are connected to the multiplex communication line. A communication system can be constructed.
[0021]
DETAILED DESCRIPTION OF THE INVENTION
(First embodiment)
FIG. 1 shows a data relay apparatus and a multiple communication system according to the first embodiment of the present invention. The multiplex communication system is composed of a plurality of communication systems 11, 12, and 13 and a data relay device 4 (3 in the illustrated example). Each of the communication systems 11 to 13 includes communication nodes 31, 32, and 33 connected to the multiplex communication lines 21, 22, and 23, and transmits / receives data between the communication nodes 31 to 33 using a predetermined protocol. ing. At least one communication node 31 to 33 belongs to each communication system 11 to 13.
[0022]
An example of the frame structure of the data is shown in FIG. This is a frame structure in the automobile BEAN (Body Electronics Area Network) protocol. In the following description, data communication will be described as following the BEAN protocol. SOF (Start Of Frame) represents the start of a frame and is assigned 1 bit. PRI (Priority) is an area representing the priority of a frame, and 4 bits are allocated. “1” has a higher priority than “0”. The data relay device 4 and the communication nodes 31 to 33 give priority to high-priority data when other data collide on the multiple communication lines 21 to 23 in the communication systems 11 to 13 and transmit other data. Is canceled. ML (Message Length) is an area indicating the length of the subsequent message part. The DID and MID constituting the message part are each 1 byte as described later, and DATA has a variable length, so the number of DATA bytes +2 It becomes.
[0023]
The beginning of the message part is a DID (Destination ID), which is an area representing the destination node ID of the frame. MID (Message ID) is an area representing a message ID, and is assigned 8 bits. The MID is assigned for each type of data, and specifies the type of data represented by the content of DATA, which will be described later, which is the main body of the data. The type of data exchanged by communication includes the engine speed and the like, and for example, an MID is assigned to each as shown in FIG. In the example shown in the figure, DATA of communication data with MID = 08h represents engine speed, DATA of communication data with MID = A5h represents vehicle speed, and DATA of communication data with MID = DDh represents a power window switch. Represents the state. DATA is assigned 1 to 11 bytes in the area of the data body.
[0024]
DATA is followed by CRC (Cyclic Redundancy Characters), EOM (End Of Message), and RSP (Response). The CRC is a communication error check area, and is assigned 8 bits. In the CRC, the communication node substitutes the content from the PRI to DATA into a predetermined mathematical formula and writes a bit operation result, and the received communication node compares the received data with the received data to check a communication error. EOM represents the end of the message with a predetermined bit string and is assigned 8 bits. The RSP is an area in which a communication node that has received data writes a response, and is assigned 2 bits. In the RSP, a result indicating whether or not the content of the frame has been correctly interpreted by the received communication node is written, and from this, it is determined whether or not the communication node that transmitted the data needs to be retransmitted. The end of the data is EOF (End Of Frame), which represents the end of the frame by a predetermined bit string, and is assigned 6 bits.
[0025]
Each of the multiple communication lines 21 to 23 is connected to the data relay device 4, and the data relay device 4 transfers the data transmitted from the communication nodes 31 to 33 to the communication nodes 31 to 33 belonging to the other communication systems 11 to 13. It comes to relay.
[0026]
The data relay device 4 is composed of a communication IC that interfaces with the multiplex communication lines 21 to 23, a control microcomputer, and the like. 413, transmission buffers 421, 422, 423, a buffer group 43, a data controller 44, a transfer destination table 45, and the like.
[0027]
Reception buffers 411 to 413 and transmission buffers 421 to 423 are provided corresponding to each of the multiple communication lines 21 to 23. The reception buffers 411 to 413 receive data transmitted from the multiplex communication lines 21 to 23, and the transmission buffers 421 to 423 are written with data to be transmitted. The reception buffers 411 to 413 and the transmission buffers 421 to 423 are configured by the communication IC. The data communication function may be incorporated as software executed on the CPU constituting the microcomputer. In this case, the reception buffers 411 to 413 and the transmission buffers 421 to 423 are allocated on the RAM constituting the microcomputer.
[0028]
The buffer group 43 includes a plurality of buffers 431, and each buffer 431 temporarily holds data received by the reception buffers 411 to 413 before being transferred to the transmission buffers 421 to 423, as will be described in detail later. . At least one buffer 431 is allocated to the MID of the data to be relayed, and each buffer 431 is dedicated to one MID. Among these, a plurality of buffers 431 are assigned to specific MIDs, and a plurality of data of the same MID received in succession can be simultaneously held. For example, if the buffer 431 has five types of data to be transferred, three buffers are assigned to one of them, and one buffer is assigned to each of the other types, seven buffers 431 are prepared. .
[0029]
In the following description, the buffer 431 is appropriately expressed as a buffer n (n = natural number) and has a one-to-one correspondence with the MID to be data relayed, and a buffer of MID to which a plurality of buffers 431 are assigned. With respect to 431, each buffer 431 is represented as a buffer n (k) (k = natural number) (hereinafter, k is referred to as a stage number). In the case of a data type to which a plurality of buffers are allocated, the buffer n is the entire buffer n (k). For example, as shown in FIG. 4, buffer 1 is for writing data with MID = 01h, buffer 2 is for writing data with MID = 5Fh, buffer 3 is for writing data with MID = 92h, and buffer 4 (1), buffer 4 (2), and buffer 4 (3) are for writing data with MID = C8h, and buffer 5 is for writing data with MID = EBh. The data area of the buffer group 43 is allocated on the RAM constituting the microcomputer.
[0030]
The data controller 44 selects the multiplex communication lines 21 to 23 as relay destinations of the received data, and transfers them to the transmission buffers 421 to 423 for the multiplex communication lines 21 to 23 as the relay destinations. Data transfer from 411 to 413 to the buffer 431 is controlled, and data transfer from the buffer 431 to the transmission buffers 421 to 423 is controlled. The data controller 44 is realized on software executed on a CPU constituting the microcomputer. The data controller 44, the reception buffers 411 to 413, and the transmission buffers 421 to 423 repeat the data transfer processing of the data controller 44, the reception operation of the reception buffers 411 to 413, and the transmission operation of the transmission buffers 421 to 423 alternately. Is set.
[0031]
The transfer destination table 45 associates the MID of the received data with the transmission buffers 421 to 423 for the relay destination multiplex communication line. When the MID and the multiplex communication lines 21 to 23 are designated, the received data of the MID is changed. Information indicating which of the multiplex communication lines 21 to 23 should be transferred to the transmission buffers 421 to 423 can be read. The contents of the transfer destination table 45 are written in advance together with the control program of the data controller 44 on the ROM constituting the microcomputer.
[0032]
FIG. 5 shows an example of the transfer destination table 45. If the read information is “1”, it should be transferred to the transmission buffer for the multiplex communication line. Indicates that data is not transferred to the transmission buffer for the communication line. In the illustrated example, data V with MID = 01h is transferred only to the transmission buffer 422 for the second multiplex communication line, data W with MID = 5Fh is transferred only to the transmission buffer 423 for the third multiplex communication line, The data X with MID = 92h is transferred only to the transmission buffer 421 for the first multiplex communication line, and the data Y with MID = C8h is transmitted for the transmission buffer 421 for the first multiplex communication line and the second multiplex communication line. The data Z transferred to the buffer 422 and MID = EBh represents that it should be transferred to the transmission buffer 422 for the second multiplex communication line and the transmission buffer 423 for the third multiplex communication line.
[0033]
Further, the data controller 44 is provided with buffer specifying means 441 that is executed at the time of data transfer processing from the reception buffers 411 to 413 to the buffer group 43, and identifies the MID of the data in the reception buffers 411 to 413, and the MID Is designated as the data transfer destination of the reception buffers 411 to 413.
[0034]
In addition, in the case of an MID composed of a single buffer 431, the MID buffer 431 is overwritten by the data in the reception buffers 411 to 413. However, for an MID to which a plurality of buffers 431 are assigned, In the buffer 431 in which data is not stored, data is written in order from the smallest number of stages. If there is no empty buffer 431, the buffer 431 of the last stage number kf of the buffer n (kf) is overwritten. It will be.
[0035]
Thus, the received data is written into the buffer 431 for each MID corresponding to the MID.
[0036]
The data controller 44 is provided with data transfer management means 442 that is executed during data transfer processing from the buffer group 43 to the transmission buffers 421 to 423 and manages the order of data transfer.
[0037]
6, 7, 8, and 9 are flowcharts illustrating data transfer processing from the buffer group 43 to the transmission buffers 421 to 423. This indicates the setting contents of the data transfer management means 442. In step S100, start buffer # = 1 and end buffer # = N. Here, N is the number of buffers 431 constituting the buffer group 43. In step S101, n = start buffer # (= 1). In step S102, it is confirmed whether or not data is written in the buffer n. If buffer # corresponds to the MID to which a plurality of buffers 431 are allocated, the determination as to whether or not data is written is made based only on buffer n (1).
[0038]
If written, the process proceeds to step S105 (FIG. 7). In step S105, it is confirmed whether or not the transfer destination flag is set for the data in the buffer n. The transfer destination flag is set for each of the multiplex communication lines 21 to 23. If “1” is set, it indicates that the data in the buffer n should be transferred to the multiplex communication lines 21 to 23.
[0039]
If the transfer destination flag is not set, steps S106 and S107 are executed to set the transfer destination flag. In step S106, the MID of the data in the buffer n is confirmed. In step S107, the data transfer destination table 45 is referred to obtain the data transfer destination of the buffer n, and a transfer destination flag is set in the data in the buffer n. That is, the transfer destination flag f1 is set to “1” if it should be transferred to the transmission buffer 421 for the first multiplex communication line, and the transfer destination flag f2 if it should be transferred to the transmission buffer 422 for the second multiplex communication line. Is set to “1”, and the transfer destination flag f3 is set to “1” if it should be transferred to the transmission buffer 423 for the third multiplex communication line.
[0040]
When the transfer destination flag is set, the process proceeds to step S108 (FIG. 8). In step S108, the transfer destination flag f1 is confirmed. If “1”, the process proceeds to step S109. In step S109, it is confirmed whether or not the transmission buffer 421 for the first multiplex communication line is empty. If the transmission buffer 421 is empty, the process proceeds to step S110 and the data in the buffer n is transferred to the transmission buffer 421. In step S111, the transfer destination flag f1 of the buffer n is set to “0”, and the process proceeds to step S112.
[0041]
In step S112, it is confirmed whether or not the transfer destination flag f2 is “1”. If “1”, the process proceeds to step S113. In step S113, it is confirmed whether or not the transmission buffer 422 for the second multiplex communication line is empty. If the transmission buffer 422 is empty, the process proceeds to step S114, and the data in the buffer n is transferred to the transmission buffer 422. In step S115, the transfer destination flag f2 of the buffer n is set to “0”, and the process proceeds to step S116.
[0042]
In step S116, it is confirmed whether or not the transfer destination flag f3 is “1”. If “1”, the process proceeds to step S117. In step S117, it is confirmed whether or not the transmission buffer 423 for the third multiplex communication line is empty. If the transmission buffer 423 is empty, the process proceeds to step S118, and the data in the buffer n is transferred to the transmission buffer 423. In step S119, the transfer destination flag f3 of the buffer n is set to “0”, and the process proceeds to step S120 (FIG. 9).
[0043]
In step S120, it is determined whether the transfer destination flag f1 = 0, f2 = 0, and f3 = 0. If the determination is affirmative, it means that the data transfer to the transmission buffers 421 to 423 to be transferred is completed, and the data in the buffer n is deleted in step S121. In the case of an MID to which a plurality of buffers 431 are assigned, the data in the buffer n (1) is deleted.
[0044]
In a succeeding step S122, it is determined whether or not the buffer n has a multi-stage configuration, that is, a MID to which a plurality of buffers 431 are assigned. The determination can be made based on a buffer # that has a multi-stage configuration stored in advance. If the determination is affirmative, the process proceeds to step S123, where the data in the buffer n (2) is copied to the buffer n (1). If the configuration is three or more stages, the data in the buffer n (3) is further transferred to the buffer n (2). In this way, the data in each buffer n (k) is moved to the buffer n (k) having one younger number k. This operation in the buffer 431 within the same MID is data processing substantially similar to the FIFO.
[0045]
FIGS. 10A and 10B show the transfer processing from the buffer 431 to the transmission buffers 421 to 423 (421 in the illustrated example), and the buffer group 43 is sequentially checked for the presence or absence of data to be transferred. If the data stored in the buffer 431 with MID = 92h and the number of stages 1 is transferred to the transmission buffer 421 (FIG. 10A), the data in the buffer 431 is deleted, and the number of stages 2 and 3 The data is carried forward in order, and the buffer having 3 stages is emptied (FIG. 10B). In this data movement, the physical address of the data does not actually change, and the information of the number of stages corresponding to the data may be repeated without changing the data storage location, and the two means are equivalent. It is.
[0046]
Then, it progresses to step S103 (FIG. 6). If step S122 is negative, it means a single buffer configuration, and step S123 is skipped and the process proceeds to step S103.
[0047]
In step S103, it is determined whether or not n is an end buffer #. If n ≠ end buffer #, n is incremented by one step in step S104, and the process returns to step S102, and step S102 is performed for buffer n of the next buffer #. , S108 to S123 are executed. In this way, the buffer 431 confirms whether or not there is data to be transferred in the order of the buffer #, and transfers the data to predetermined transmission buffers 421 to 423 when the data is held. When the data for the last buffer N is transferred, the data transfer process is completed.
[0048]
In the above data transfer processing, if at least one of steps S109, S113, and S117 is denied because the transmission buffers 421 to 423 hold data and are waiting for transmission, steps S110, S111, S114, Steps S115 and S118, S119 are skipped, and any one of the transfer destination flags f1, f2, and f3 remains “1”. Therefore, step S120 is denied, step S121 is skipped, and the data in buffer n is held as it is. That is, it waits for the transfer destination transmission buffers 421 to 423 to become empty. In this case, in the next data transfer process, step S105 to step S106, S107 are skipped and steps S108 to S119 are executed. Therefore, the data that could not be transferred is transferred.
[0049]
If the state of waiting for the destination transmission buffers 421 to 423 to become empty continues, the transfer from the buffer group 43 to the transmission buffers 421 to 423 is not performed. In the meantime, when new data with the same MID held in the buffer 431 is received, the buffer 431 is overwritten with the new data. However, a buffer 431 is provided for each MID of data to be relayed. As a result, overwriting with data of different data types can be avoided, so that the data of a certain MID can be prevented from being completely lost.
[0050]
In addition, if the data on whether the indicator at the shift position is turned on or off is received by the buffer 431 having a plurality of stages, even if the data is transmitted continuously from the engine ECU, Data is held in the buffer 431, and resistance to display skipping can be increased. In addition, since the first received data is always present in the buffer 431 having the number of stages 1, there is no data skipping, and the indicators are changed from “P” to “R” “N” “D” “2” “L”. It will change in the order of "."
[0051]
Moreover, the number of buffers 431 constituting the buffer group 43 is simple because the number of types of data to be relayed may be increased by adding a plurality of buffers for MIDs whose resistance to data loss is to be increased.
[0052]
Further, since the data controller 44 sequentially checks the presence / absence of data in the buffer 431, the existence of data to be transferred from the buffer group 43 to the transmission buffers 421 to 423 and transmitted to the multiplex communication lines 21 to 23 is surely known. It is done.
[0053]
Note that the buffer group 43 assigns the buffer 431 of the buffer # 431 to the important data type that should be relayed particularly quickly, for example, the data type with a higher priority (PRI), so that important data can be quickly transferred to the relay destination. It can transmit to the multiple communication lines 21-23.
[0054]
Each time the data controller 44 starts up, in the data transfer processing from the buffer group 43 to the transmission buffers 421 to 423, the data to be transmitted is confirmed for all the relay target MIDs. Data transfer processing is performed for the buffer 431 in the first half of the buffer # 43 of the buffer group 43, and data transfer processing is performed for the buffer 431 in the second half of the buffer # when it rises next. You may make it go around the group 43. In this case, with respect to the buffer 431 corresponding to the important data type, the important data is promptly transmitted to the relay destination multiplex communication lines 21 to 23 by performing both of the two data transfer processes. Can do.
[0055]
Note that the presence / absence of data in the buffer 431 is confirmed only in the buffer 431 having the number of stages 1 in the multi-stage buffer 431 as shown in FIG. 11A showing the method of the present embodiment. It is good. Other than this method As shown in FIG. 11B, for some or all of the multi-stage buffer 431, after confirming the buffer n (1), all the buffers n (k) of the MID may be confirmed. , (C), from buffer n (1) to a predetermined number of stages of buffer n (k) There is also a method, but by adopting the method of this embodiment of FIG. Transfer of data stored in buffer 431 at the earliest time in the same MID But It will be done preferentially.
[0056]
In this case, as shown in FIG. 12, the transmission buffers 421 to 423 (421 in the example) are configured in a plurality of stages to process data in the FIFO type, and transmitted to the multiplex communication line 21 in the order transferred from the buffer 431. The data relay may be performed more smoothly.
[0057]
(Second Embodiment)
FIG. 13 shows the configuration of a data relay device and a multiple communication system according to the second embodiment of the present invention. The data relay device 4A of the present embodiment is obtained by replacing the data relay device 4A with another data controller in the configuration of the first embodiment. In the data controller of the first embodiment, the buffer checking means fixes the start buffer # and the end buffer #, respectively, and checks the presence or absence of data from the buffer 1 to the buffer N in order, and performs data transfer processing. In the data controller 44A of the present embodiment, the data transfer management unit 442A is set to change the start buffer # and the end buffer # and shift the confirmation order each time it starts up. The difference from the first embodiment will be mainly described.
[0058]
FIG. 14 shows data transfer processing from the buffer group 43 to the transmission buffers 421 to 423 in the data controller 44A of the data relay apparatus 4A. In step S200, the start buffer # in the previous data transfer process is incremented by one. In a succeeding step S201, it is confirmed whether or not the start buffer # exceeds N. If not, the end buffer # is set as the start buffer # -1. That is, the transfer process from the buffer group 43 to the transmission buffers 421 to 423 including confirmation of the presence or absence of data in the buffer 431 is completed in the buffer of the buffer # immediately before the start buffer #.
[0059]
In the next step S204, n is set as the start buffer #, and in step S205, it is confirmed whether or not data is written in the buffer n. If it is written, the data is written by the same procedure as in FIGS. The transfer process is performed for the buffer n, and the process proceeds to step S206. If not written (step S205), the process proceeds to step S206 as it is.
[0060]
In step S206, it is confirmed whether or not n is an end buffer #. If n is not an end buffer #, steps S207 and S208 are executed, and then the procedure of the above-described step S205 is executed and the buffer 431 of the next buffer # is executed. Continue the data transfer process. Here, steps S207 and S208 are procedures for updating n to the serial number of the buffer 431 to be checked next. In step S207, n is incremented by 1. In step S208, it is confirmed whether or not n is greater than or equal to N. If it is less than N, the process returns to step S205, and the presence or absence of data is confirmed for n incremented in step S207, that is, the buffer 431 of the next buffer #. In this way, n sequentially increases and finally becomes N. In this case, the process proceeds from step S208 to step S209, n is set to 1, and the process returns to step S205. It is because the buffer 1 is checked next to the buffer N. In this way, the data transfer process is executed for all N buffers 431.
[0061]
In this data transfer process, the start buffer # and the end buffer # are sequentially shifted every time one search is performed, so that it is possible to prevent the degree of delay in data transfer between MIDs from being biased. it can. For example, in the example of FIGS. 4 and 5, the data transferred to the second multiplex communication line 22 is three data V, Y, and Z. Since the data V is held in the buffer 1, the data Y is held in the buffer 4, and the data Z is held in the buffer 5, the data controller 44 of the first embodiment in which the confirmation of the presence / absence of data is always started from the buffer 1 When the transmission buffer 422 is written with the data V transferred from, the data Y cannot be written (see step S113). Further, when any of the data V and Y is written in the transmission buffer 422, the data Z cannot be written. Therefore, the data Y is less likely to be transferred to the transmission buffer 422 than the data V and the data Z is delayed in the data relay device 4 as compared to the data V and Y. On the other hand, the data controller 44A of the present embodiment shifts the confirmation order of the presence / absence of data every time one search is made, so that data is transmitted fairly between the buffers 1 to N. The data can be transferred to the buffers 421 to 423. In addition, since the confirmation order is not fixed, the time required for data relay can be averaged between the buffers 431.
[0062]
In this data transfer process, the initial value of the start buffer # when the data relay device 4A is activated may be set to any one of 1 to N.
[0063]
(Third embodiment)
FIG. 15 shows a data relay device and a multiple communication system according to the third embodiment of the present invention. The difference from the first embodiment will be mainly described.
[0064]
The data relay device 4B is provided with a transmission data list 46. The transmission data list 46 can be schematically represented as shown in FIG. Information specifying the buffer 431 in which data to be transmitted to each of the multiplex communication lines 21 to 23 is stored includes the MID and the number of stages, and indicates whether or not the data should be transmitted for each of the multiplex communication lines 21 to 23. Includes transfer destination management flag. Similarly to the transfer destination flag of the first embodiment, “1” indicates that transfer is required, and “0” indicates that transfer is not required. The rank indicates the order of writing in the transmission data list 46.
[0065]
From the transmission data list 46, paying attention to one of the multiplex communication lines 21 to 23, if the transfer destination management flag is “1”, the data to be transferred is transferred from the reception buffers 411 to 413 to the buffer 431. If there are a plurality of transfer destination management flags of “1”, the transfer order is known. In other words, transfer is performed from the one with the highest priority. In the illustrated example, the transmission order of the first multiplex communication line 21 indicates that the first place is MID = C8h and the number of stage 2 buffer 431, and the second place is MID = 92h and the number of stage 1 buffer 431. Further, the transmission order of the third multiplex communication line 23 indicates that the first place is the buffer 431 having MID = 5Fh and two stages. The storage area of the transmission data list 46 is set on the RAM constituting the data relay device 4B.
[0066]
The data controller 44B is provided with data transfer management means 442B activated during data transfer processing from the reception buffers 411 to 413 to the buffer group 43 and data transfer processing from the buffer group 43 to the transmission buffers 421 to 423. The transmission data list 46 is updated, for example, the buffer information (MID and number of stages) of the buffer 431 for storing the received data and the transfer destination management flag are added to the transmission data list 46.
[0067]
Data transfer processing executed by the data controller 44B will be described with reference to FIGS. 17, 18, 19, 20, 21, and 22. FIG. 17 to 19 show data transfer processing from the reception buffers 411 to 413 to the buffer group 43, and FIGS. 20 to 22 show data transfer processing from the buffer group 43 to the transmission buffers 421 to 423.
[0068]
Data transfer processing to the buffer group 43 is processing for transferring data received from the first multiplex communication line 21 in steps S300 to S305 (FIG. 17), and steps S306 to S311 (FIG. 18) in the second multiplex communication line 22. The process of transferring data received from the third multiplex communication line 23 is performed in steps S312 to S317 (FIG. 19). Note that steps S300 to S302, S306 to S308, and S312 to S314 are procedures as the buffer specifying unit 441, and steps S301 to S304, steps S307 to S310, and steps S313 to S316 are procedures as the data transfer management unit 442B. .
[0069]
In step S300, it is confirmed whether the reception buffer 411 for the first multiplex communication line is empty. If not, the MID of the reception data stored in the reception buffer 411 is confirmed in step S301, and the reception data is determined in step S302. Is confirmed. In this case, if the MID is one to which a plurality of buffers are assigned, a storage destination that does not store data is selected. The selection method when there are a plurality of empty buffers 431 in which no data is stored is arbitrary. If data has been stored in all the buffers 431 assigned to the MID, the last buffer 431 in the transmission data list 46 with the same MID is selected as the storage destination of the received data. Next, the transfer destination of the received data is acquired based on the data transfer destination table 45 in step S303.
[0070]
In step S304, the buffer information acquired in steps S301 to S303 and the initial value of the transfer destination management flag are added to the end of the transmission data list 46. Here, the transfer destination management flag is set to “1” for the multiplexed communication lines 21 to 23 to be transferred. In the case where overwriting is performed, such as when the last buffer 431 of the transmission data list 46 is selected as the storage destination of received data in step S302, only the transfer destination management flag of the transmission data list 46 is set in step S303. Reset based on the acquired transfer destination.
[0071]
In the subsequent step S305, the data in the reception buffer 411 for the first multiplex communication line is transferred to the predetermined buffer 431 confirmed in steps S301 and S302 in the buffer group 43. Then, the process proceeds to a process of transferring data received from the second multiplex communication line 22 (steps S306 to S311). When the reception buffer 411 for the first multiplex communication line is empty in step S300, steps S301 to S305 are skipped, and the data received from the second multiplex communication line 22 is transferred (steps S306 to S311). Transition.
[0072]
In step S306, it is confirmed whether or not the reception buffer 412 for the second multiplex communication line is empty. If not, the MID of the reception data stored in the reception buffer 412 in step S307 is the same as in steps 301 to 305. In step S308, the number of stages of the buffer 431 that stores the received data is confirmed. In step S309, the transfer destination of the received data is acquired based on the data transfer destination table 45.
[0073]
Next, in step S310, the transmission data list 46 is updated with the buffer information and transfer destination management flag acquired in steps S307 to S309. In step S311, the data in the reception buffer 412 for the second multiplex communication line is stored in the buffer group 43. Among them, the data is transferred to the predetermined buffer 431 confirmed in steps S307 and S308. Then, the process proceeds to a process of transferring data received from the third multiplex communication line 23 (steps S312 to S318). If the reception buffer 412 for the second multiplex communication line is empty in step S306, steps S307 to S311 are skipped, and the process proceeds to transfer processing of data received from the third multiplex communication line 23 (step S312 to step S312). S317).
[0074]
In step S312, it is confirmed whether or not the reception buffer 413 for the third multiplex communication line is empty. If not, the MID of the reception data stored in the reception buffer 413 in step S313 is the same as in steps 301 to 305 above. In step S314, the number of stages of the buffer 431 that stores the received data is confirmed. In step S315, the transfer destination of the received data is acquired based on the data transfer destination table 45.
[0075]
Next, in step S316, the transmission data list 46 is updated with the buffer information and transfer destination management flag acquired in steps S313 to S315. In step S317, the data in the reception buffer 413 for the third multiplex communication line is stored in the buffer group 43. Among them, the data is transferred to the predetermined buffer 431 confirmed in steps S314 and S315, and the data transfer process is terminated. If the reception buffer 413 for the third multiplex communication line is empty in step S312, steps S313 to S317 are skipped, and the data transfer process is terminated.
[0076]
Next, data transfer processing from the buffer 431 to each of the transmission buffers 421 to 423 will be described. Steps S400 to S407 (FIG. 20) are data transfer processing from the buffer 431 to the first multiplex communication line transmission buffer 421, and steps S408 to S415 (FIG. 21) are processing to the second multiplex communication line transmission buffer 422. Data transfer processing, and steps S416 to S423 (FIG. 22) are data transfer processing to the third multiplex communication line transmission buffer 423. Steps S400 to S406, steps S408 to S414, and steps S416 to S422 are procedures as the data transfer management unit 422B.
[0077]
In step S400, it is confirmed whether or not the transmission buffer 421 for the first multiplex communication line is empty. If it is empty, the process proceeds to step S401 and all the transfer destination management flags for the first multiplex communication line in the transmission data list 46 are “ Confirm whether it is “0”. If a negative determination is made, that is, if there is data to be transferred from the buffer 431 to the transmission buffer 421 for the first multiplex communication line, the process proceeds to step S402, and the transfer control flag for the first multiplex communication line is “1”. The highest buffer information (MID and number of stages) is acquired. In the subsequent step S403, the data in the buffer 431 corresponding to the acquired buffer information in the buffer group 43 is transferred to the transmission buffer 421 for the first multiplex communication line. Then, in the transmission data list 46, the highest one of the transfer destination management flags for the first multiplex communication line taking “1” is cleared (“0”).
[0078]
In subsequent step S405, other transfer destination management flags of the data for which the transfer destination management flag has been cleared, that is, transfer destination management flags for the second and third multiplex communication lines, are checked, and all transfer destination management flags are set to “ If it is “0”, the information (buffer information and transfer destination management flag) of data that has been transmitted to the transmission buffer 421 in step S406 is deleted from the transmission data list 46, and the following low-order information is advanced. In step S407, the data that has been transmitted to the transmission buffer 421 is deleted from the buffer 431. Then, the process proceeds to step S408. If a positive determination is made in step S405, steps S406 and S407 are skipped and the process proceeds to step S408.
[0079]
As described above, data is transferred from the buffer 431 to the transmission buffer 421 as soon as the transmission buffer 421 becomes empty in the order written in the transmission data list 46, whereupon the transmission wait state to the first multiplex communication line 21 is awaited. Note that if data has already been written in the transmission buffer 421 in step S400, if affirmative determination is made in step S401, that is, if there is no data to be transferred to the first multiplex communication line 21, step S408 (FIG. 21). )
[0080]
In steps S408 to S415, the same procedure as in steps S400 to S407 is performed for the transmission buffer 422 for the second multiplex communication line, the buffer 431 that holds data to be transferred to the transmission buffer 422, and the transmission data list 46. That is, if the second multiplex communication line transmission buffer 422 is empty (step S408) and the second multiplex communication line transfer destination management flag in the transmission data list 46 is "1" (step S409), The highest-order buffer information is acquired from the two-multiplex communication line transfer destination management flag “1” (step S410), and the data in the buffer 431 corresponding to the acquired buffer information is transferred to the transmission buffer 422 (step S410). S411). Then, the highest transfer destination management flag for the second multiplex communication line in the transmission data list 46 is cleared (step S412).
[0081]
Next, in step S413, other transfer destination management flags for the transferred data, that is, transfer destination management flags for the first and third multiplex communication lines are confirmed, and all transfer destination management flags are “0”. If so, in step S414, the information on the data that has been transmitted to the transmission buffer 422 is deleted from the transmission data list 46, and the lower order information is carried forward. In step S415, the data that has been transmitted to the transmission buffer 422 is completed. Is deleted from the buffer 431. Then, the process proceeds to step S416 (FIG. 22).
[0082]
In steps S416 to S423, the same procedure as in steps S400 to S407 is performed for the transmission buffer 423 for the third multiplex communication line, the buffer 431 that holds data transferred to the third multiplex communication line, and the transmission data list 46. That is, if the third multiplex communication line transmission buffer 423 is empty (step S416) and the third multiplex communication line transfer destination management flag in the transmission data list 46 has a value of "1" (step S417), The highest-order buffer information among those having the transfer destination management flag for three multiplexed communication lines “1” is acquired (step S418), and the data in the buffer 431 corresponding to the acquired buffer information is transferred to the transmission buffer 423 (step S418). S419). Then, the highest one of the third multiplex communication line transfer destination management flags in the transmission data list 46 is cleared (step S420).
[0083]
Next, in step S421, other transfer destination management flags for the transferred data, that is, transfer destination management flags for the first and second multiplex communication lines are confirmed, and all transfer destination management flags are “0”. If so, in step S422, the information of the data that has been transmitted to the transmission buffer 423 is deleted from the transmission data list 46, and the lower order information is carried forward. In step S423, the data that has been transmitted to the transmission buffer 423 is completed. Is deleted from the buffer 431. Thereby, the data transfer from the buffer 431 to the transmission buffers 421 to 423 is completed.
[0084]
The data transfer process of the data controller 44B is set as described above, and in the transmission data list 46, information on data to be transmitted to the multiplex communication lines 21 to 23 is updated. The upper one of the transmission data list 46 is data received earlier. Therefore, in each of the multiplex communication lines 21 to 23, the transmission buffers 421 to 423 are in a transmission waiting state in the order in which the data to be relayed is received. Even without checking the presence or absence of data for all the buffers 431, the buffer storing the data to be transmitted written in the buffer 431 is known from the transmission data list 46, so that data can be relayed promptly.
[0085]
(Fourth embodiment)
FIG. 23 shows a data relay device and a multiple communication system according to the fourth embodiment of the present invention. The difference from the third embodiment will be mainly described.
[0086]
In the data relay device 4C, transmission data lists 461, 462, and 463 are provided for each of the multiple communication lines 21 to 23. The transmission data lists 461 to 463 are information in which data (MID and the number of stages) of buffers storing data to be transmitted to the multiplex communication lines 21 to 23 are written in the order of transmission, and are schematically shown in FIGS. (B), as shown in FIG. This is different from the transmission data list of the third embodiment in that the transfer destination management flag is not included. In the example of the figure, the transmission order to the first multiplex communication line 21 is the data stored in the buffer 431 with MID = C8h and the number of stages 2 in the first place, and the second place is the data in the buffer 431 with MID = 92h and the number of stages 1 Indicates data. The storage areas of the transmission data lists 461 to 463 are set on the RAM constituting the data relay device 4C.
[0087]
The data controller 44C is provided with data transfer management means 442C that is activated during data transfer processing from the reception buffers 411 to 413 to the buffer group 43.
[0088]
Data transfer processing executed by the data controller 4C will be described with reference to FIGS. 25, 26, 27, 28, 29, and 30. FIG. 25 to 27 show data transfer processing from the reception buffers 411 to 413 to the buffer group 43, and FIGS. 28 to 30 show data transfer processing from the buffer group 43 to the transmission buffers 421 to 423.
[0089]
The data transfer process to the buffer group 43 is a process of transferring data received from the first multiplex communication line 21 in steps S500 to S508 (FIG. 25), and steps S509 to S517 (FIG. 26) are the second multiplex communication line 22. The data received from the third multiplex communication line 23 is transferred from step S518 to S526 (FIG. 27). Steps S500 to S502, S509 to S511, and S518 to S520 are procedures as the buffer specifying means 441, and steps S501 to S507, steps S510 to S516, and steps S519 to S525 are procedures as the data transfer management means 442C. .
[0090]
In step S500, it is confirmed whether or not the reception buffer 411 for the first multiplex communication line is empty. If not, the MID of the reception data stored in the reception buffer 411 is confirmed in step S501, and the MID is determined in step S502. The number of stages of the buffer 431 for storing the data is confirmed. In step S503, the transfer destination of the received data is acquired based on the data transfer destination table 45.
[0091]
In a succeeding step S504, it is confirmed whether or not the acquired transfer destination has the transmission buffer 422 for the second multiplex communication line. If the determination is affirmed, the process proceeds to a step S505. In step S505, the buffer information (MID and the number of stages) confirmed in steps S501 and S502 is added to the end of the transmission data list 462 for the second multiplex communication line 22, and the process proceeds to step S506. In step S506, it is confirmed whether or not there is a transmission buffer 423 for the third multiplex communication line at the acquired transfer destination, and if affirmed, the process proceeds to step S507. In step S507, the buffer information (MID and the number of stages) confirmed in steps S501 and S502 is added to the end of the transmission data list 463 for the third multiplex communication line 23, and the process proceeds to step S508. When the same buffer information already exists in the transmission data lists 462 and 463 in steps S505 and S507, the buffer information is additionally written and the buffer information already written in the transmission data lists 462 and 463 is deleted.
[0092]
In step S508, the data in the reception buffer 411 for the first multiplex communication line is transferred to a predetermined buffer 431 specified by the buffer information in the buffer group 43. Then, the process proceeds to transfer processing of data received from the second multiplex communication line 22 (steps S509 to S517). When the reception buffer 411 for the first multiplex communication line is empty in step S500, additional processing (steps S501 to S507) and data transfer to the transmission data lists 462 and 463 for the second and third multiplex communication lines are performed. The process (step S508) is skipped, and the process proceeds to a process for transferring data received from the second multiplex communication line 22 (steps S509 to S517).
[0093]
In step S509, it is confirmed whether or not the reception buffer 412 for the second multiplex communication line is empty. If not, the MID of the reception data stored in the reception buffer 412 is confirmed in step S510, and the MID is determined in step S511. The number of stages of the buffer 431 for storing the data is confirmed. In step S512, the transfer destination of the received data is acquired based on the data transfer destination table 45.
[0094]
In a succeeding step S513, it is confirmed whether or not the acquired transfer destination has the transmission buffer 421 for the first multiplex communication line. In step S514, the buffer information (MID and the number of stages) confirmed in steps S510 and S511 is added to the end of the transmission data list 461 for the first multiplex communication line 21, and the process proceeds to step S515. In step S515, it is confirmed whether or not there is a transmission buffer 423 for the third multiplex communication line at the acquired transfer destination, and if affirmed, the process proceeds to step S516. In step S516, the buffer information (MID and the number of stages) confirmed in steps S510 and S511 is added to the end of the transmission data list 463 for the third multiplex communication line 23, and the process proceeds to step S517. When the same buffer information already exists in the transmission data lists 461 and 463 in steps S514 and S516, the buffer information is additionally written and the buffer information already written in the transmission data lists 461 and 463 is deleted.
[0095]
In step S517, the data in the reception buffer 412 for the second multiplex communication line is transferred to the buffer 431 specified by the buffer information in the buffer group 43. Then, the process proceeds to a process of transferring data received from the third multiplex communication line 23 (steps S518 to S526). When the reception buffer 412 for the second multiplex communication line is empty in step S509, additional processing (steps S510 to S516) and data transfer to the transmission data lists 461 and 463 for the first and third multiplex communication lines are performed. The process (step S517) is skipped, and the process proceeds to a process for transferring data received from the third multiplex communication line 23 (steps S518 to S526).
[0096]
In step S518, it is confirmed whether or not the reception buffer 413 for the third multiplex communication line is empty. If not, the MID of the reception data stored in the reception buffer 413 is confirmed in step S519, and the MID is determined in step S520. The number of stages of the buffer 431 for storing the data is confirmed. In step S521, the transfer destination of the received data is acquired based on the data transfer destination table 45.
[0097]
In a succeeding step S522, it is confirmed whether or not the acquired transfer destination has the transmission buffer 421 for the first multiplex communication line, and if affirmative, the process proceeds to a step S523. In step S523, the buffer information (MID and the number of stages) confirmed in steps S519 and S520 is added to the end of the transmission data list 461 for the first multiplex communication line 21, and the process proceeds to step S524. In step S524, it is confirmed whether or not there is the second multiplex communication line transmission buffer 422 in the acquired transfer destination. If the result is affirmative, the process proceeds to step S525. In step S525, the buffer information (MID and number of stages) confirmed in steps S519 and S520 is added to the end of the transmission data list 462 for the second multiplex communication line 22, and the process proceeds to step S526. When the same buffer information already exists in the transmission data lists 461 and 462 in steps S523 and S525, the buffer information is added and the buffer information already written in the transmission data lists 461 and 462 is deleted.
[0098]
In step S526, the data in the reception buffer 413 for the third multiplex communication line is transferred to the predetermined buffer 431 specified by the buffer information in the buffer group 43, and the data transfer processing from the reception buffers 411 to 413 to the buffer 431 is performed. Exit. When the reception buffer 413 for the third multiplex communication line is empty in step S518, additional processing (steps S519 to S525) and data transfer to the transmission data lists 461 and 462 for the first and second multiplex communication lines are performed. The process (step S526) is skipped, and the data transfer process is terminated.
[0099]
Next, data transfer processing from the buffer 431 to each of the transmission buffers 421 to 423 will be described. Steps S600 to S606 (FIG. 28) are data transfer processing from the buffer 431 to the first multiplex communication line transmission buffer 421, and steps S607 to S613 (FIG. 29) are processing to the second multiplex communication line transmission buffer 422. Data transfer processing, and steps S614 to S620 (FIG. 30) are data transfer processing to the third multiplex communication line transmission buffer 423. Steps S601 to S604, steps S608 to S611, and steps S615 to S618 are procedures as the data transfer management unit 442C.
[0100]
In step S600, it is confirmed whether or not the transmission buffer 421 for the first multiplex communication line is empty. If it is empty, the process proceeds to step S601 to check whether or not the transmission data list 461 for the first multiplex communication line is empty. . If the transmission data list 461 is not empty, that is, if there is data to be transferred from the buffer 431 to the transmission buffer 421, the process proceeds to step S602, and the top buffer information of the transmission data list 461 is acquired. In step S603, the data in the buffer 431 specified by the acquired buffer information in the buffer group 43 is transferred to the transmission buffer 421 for the first multiplex communication line. Next, the top buffer information of the transmission data list 461, that is, the information of the data transferred in step S603 is deleted, and the lower order information is moved up.
[0101]
In subsequent step S605, it is determined whether there is the same buffer information deleted in step S604 in the second and third multiplex communication line transmission data lists 642, 643. If the determination is negative, step S606 is performed. In step S603, the data is deleted from the buffer 431 in which the data that has been transferred is stored, and the process advances to step S605. As described above, the data is transferred from the buffer 431 to the transmission buffer 421 as soon as the transmission buffer 421 becomes empty in the order written in the transmission data list 461, and the transmission wait state to the first multiplex communication line 21 is entered. If data has already been written in the transmission buffer 421 in step S600, and the transmission data list 461 is empty in step S601 and there is no data to be transferred, steps S602 to S606 are skipped and step S607 (FIG. Proceed to 29).
[0102]
In steps S607 to S613, the same procedure as in steps S600 to S606 is performed for the transmission buffer 422 for the second multiplex communication line, the buffer 431 that holds data to be transferred to the transmission buffer 422, and the transmission data list 462. That is, if the transmission buffer 422 for the second multiplex communication line is empty (step S607) and there is a write in the transmission data list 462 for the second multiplex communication line (step S608), the top buffer information of the transmission data list 462 (Step S609), and the data is transferred from the buffer 431 specified by the buffer information to the transmission buffer 422 (step S610). Then, the buffer information of the head data in the transmission data list 462, that is, the buffer of the data that has been transferred is deleted, and the following low-order information is moved up (step S611).
[0103]
Next, if the first and third multiplex communication line transmission data lists 641 and 643 do not have the same buffer information deleted in step S611 (step S612), the buffer in which the data that has been transferred in step S610 is stored. Data is deleted from 431 (step S613), and the process proceeds to step S614 (FIG. 30).
[0104]
In steps S614 to S620, the same procedure as in steps S600 to S606 is performed for the transmission buffer 423 for the third multiplex communication line, the buffer 431 that holds data transferred to the third multiplex communication line, and the transmission data list 463. That is, if the transmission buffer 423 for the third multiplex communication line is empty (step S614) and there is a write in the transmission data list 463 for the third multiplex communication line (step S615), the top buffer information of the transmission data list 463 Is read (step S616), and the data is transferred from the buffer 431 specified by the buffer information to the transmission buffer 423 (step S617). Then, the buffer information of the head data in the transmission data list 463, that is, the buffer information of the transferred data is deleted, and the following low-order information is moved up (step S618).
[0105]
Next, if the first and second multiplex communication line transmission data lists 641 and 642 do not have the same buffer information deleted in step S618 (step S619), the buffer in which the data transferred in step S617 is stored is stored. Data is deleted from 431 (step S620), and the transfer processing from the buffer 431 to the transmission buffers 421 to 423 is terminated.
[0106]
The data transfer process of the data controller 44C is set as described above, and in each transmission data list 461 to 463, buffer information of data to be transmitted to the corresponding multiplexed communication lines 21 to 23 is updated. The order in the transmission data list 461 to 463 is the order of reception. For example, in the example of FIG. 24 described above, in the transmission data list 461 for the first multiplex communication line, C8h data in the first transmission order is transferred from the buffer group 431 to the transmission buffer 421, and buffer information ( Assuming that MID = C8h, stage number 2) is deleted, this buffer information (MID = C8h, stage number 2) does not include the transmission data lists 462 and 463 for the second and third multiplex communication lines. From this, it is known that the data in the buffer 431 specified by the buffer information (MID = C8h, number of stages 2) has been completely transferred, and is deleted from the buffer 431.
[0107]
Even if the data with the same MID = C8h is transmitted, even if the data of the first transmission order in the transmission data list 462 for the second multiplex communication line (MID = C8h, number of stages 1) is transmitted, the same buffer information is stored. Even if the buffer information (MID = C8h, number of stages 1) is deleted from the transmission data list 461 for the first multiplex communication line and the transmission data list 462 for the second multiplex communication line is deleted, the data stored in the buffer 431 remains It is not deleted but is basically held until it is transmitted to the transmission buffer 421 for the first multiplex communication line.
[0108]
As a result, as in the third embodiment, the buffer 431 storing the data to be transmitted written in the buffer 431 is known from the transmission data lists 461 to 463 without checking the presence or absence of data for all the buffers 431. Therefore, data can be relayed promptly. Moreover, since the transmission order to each of the multiplex communication lines 21 to 23 is the order of reception, it is possible to reliably transmit all received data without delay.
[0109]
In addition, since the transmission data lists 461 to 463 are arranged in the order in which the buffer information is transferred for each of the multiple communication lines 21 to 23, the buffer information of the same MID corresponding to each of the multiple communication lines 21 to 23 is provided. Are arranged, even if the transfer to a certain transmission buffer 421 to 423 is completed, the data is not deleted, but the next data to be transferred to the same transmission buffer 421 to 423 is not mistaken.
[0110]
In addition, for some MIDs, such as C8h in the illustrated example, by assigning a plurality of buffers 431, a plurality of data of the same MID received by the data relay device 4C in succession are all set as data to be transmitted. Since entry can be made in the transmission data lists 461 to 463, resistance against data loss can be increased.
[0111]
In each of the above embodiments, data is overwritten when data is received and the buffer is not empty. However, the data controller temporarily holds the transfer to the buffer while holding the data in the reception buffer. You may set as follows. Overwriting can be avoided if the buffer is free in the meantime. In this case, as shown in FIG. 31, a plurality of reception buffers 411 are provided for each multiplex communication line 21 to process data in the FIFO type, avoiding overwriting in the buffer 431 and ensuring the data reception operation from the multiplex communication line 21. Can be achieved.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of a first data relay device and a multiple communication system according to the present invention.
FIG. 2 is a diagram showing a frame structure of communication data of the first data relay device and the multiple communication system of the present invention.
FIG. 3 is a diagram showing a correspondence relationship between types of communication data and their MIDs in the first data relay device and the multiple communication system of the present invention.
FIG. 4 is a schematic diagram of a buffer of the first data relay device of the present invention.
FIG. 5 is a diagram showing a correspondence relationship between data in the transfer destination table of the first data relay apparatus of the present invention and the transfer destination;
FIG. 6 is a first flowchart showing control executed in the data controller of the first data relay apparatus of the present invention.
FIG. 7 is a second flowchart showing the control executed in the data controller of the first data relay apparatus of the present invention.
FIG. 8 is a third flowchart showing the control executed in the data controller of the first data relay apparatus of the present invention.
FIG. 9 is a fourth flowchart showing the control executed in the data controller of the first data relay apparatus of the present invention.
FIGS. 10A and 10B are diagrams showing the operation of the first data relay device of the present invention, respectively.
FIGS. 11A and 11B are diagrams showing settings of the data controller, and FIGS. 11B and 11C are diagrams showing settings of modified examples, respectively.
FIG. 12 is a block diagram showing a modification of the data relay device and multiplex communication system of the present invention.
FIG. 13 is a configuration diagram of a second data relay device and a multiple communication system according to the present invention.
FIG. 14 is a flowchart showing the control executed in the data controller of the second data relay apparatus of the present invention.
FIG. 15 is a configuration diagram of a third data relay device and a multiple communication system according to the present invention.
FIG. 16 is a diagram showing a configuration of a transmission data list of the third data relay apparatus of the present invention.
FIG. 17 is a first flowchart showing control executed in the data controller of the third data relay device of the present invention;
FIG. 18 is a second flowchart showing the control executed in the data controller of the third data relay apparatus of the present invention.
FIG. 19 is a third flowchart showing the control executed in the data controller of the third data relay apparatus of the present invention.
FIG. 20 is a fourth flowchart showing the control executed in the data controller of the third data relay apparatus of the present invention.
FIG. 21 is a fifth flowchart showing the control executed in the data controller of the third data relay apparatus of the present invention.
FIG. 22 is a sixth flowchart showing the control executed in the data controller of the third data relay apparatus of the present invention.
FIG. 23 is a block diagram of a fourth data relay apparatus and multiple communication system according to the present invention.
FIGS. 24A, 24B, and 24C are diagrams showing the configuration of a transmission data list of the fourth data relay apparatus of the present invention, respectively.
FIG. 25 is a first flowchart showing the control executed in the data controller of the fourth data relay apparatus of the present invention.
FIG. 26 is a second flowchart showing the control executed in the data controller of the fourth data relay apparatus of the present invention.
FIG. 27 is a third flowchart showing the control executed in the data controller of the fourth data relay apparatus of the present invention.
FIG. 28 is a fourth flowchart showing the control executed in the data controller of the fourth data relay apparatus of the present invention.
FIG. 29 is a fifth flowchart showing the control executed in the data controller of the fourth data relay apparatus of the present invention.
FIG. 30 is a sixth flowchart showing the control executed in the data controller of the fourth data relay apparatus of the present invention.
FIG. 31 is a block diagram showing another modification of the data relay device and multiplex communication system of the present invention.
FIG. 32 is a configuration diagram of a typical example of a conventional data relay device and multiple communication system.
FIG. 33 is a schematic diagram of a main body of communication data.
[Explanation of symbols]
11, 12, 13 Communication system
21, 22, 23 Multiple communication lines
31, 32, 33 Communication node
4,4A, 4B, 4C Data relay device
411, 412 and 413 receive buffer
421, 422, 423 transmission buffer
43 Buffers
431 buffers
44, 44A, 44B, 44C Data controller
441 Buffer designation means
442, 442A, 442B, 442C Data transfer management means
45 Destination table
46,461,462,463 transmission data list

Claims (5)

データの本体とともにデータの種類の情報を含むデータを伝送する多重通信線の間に介設されて複数の種類のデータを中継するデータ中継装置であって、受信したデータの中継先の多重通信線を選択し受信データを転送するデータコントローラを有するデータ中継装置において、
受信データを中継先の多重通信線に送信する前に一時保持するバッファを、中継されるデータの種類ごとに設けるとともに、データ種類のうち1以上のデータ種類については複数のバッファを割り当て、
上記データコントローラには、受信したデータの種類を識別し、その種類に対応するバッファを、受信したデータの書き込み先として指定するバッファ指定手段と、
各多重通信線において、データ種類が同一のバッファからのデータを転送する順番が、バッファにデータが書き込まれた順番となるように、データが格納されたバッファからのデータの転送を管理するデータ転送管理手段とを具備せしめ、
該データ転送管理手段を、所定の時間間隔で立ち上がり、順次、上記バッファ内の送信するデータの有無を確認してデータがあればバッファからデータを転送するように、かつ、データ種類が同一のバッファについてのデータの有無の確認を、最先にデータが格納されたバッファのみについて行うように設定したことを特徴とするデータ中継装置。
A data relay device for relaying a plurality of types of data, which is interposed between multiplex communication lines for transmitting data including data type information together with the data body, and a multiplex communication line to which received data is relayed In a data relay apparatus having a data controller that selects and transfers received data,
A buffer that temporarily holds received data before transmission to the relay destination multiplex communication line is provided for each type of data to be relayed, and a plurality of buffers are assigned to one or more data types among the data types,
The data controller identifies a type of received data, and designates a buffer corresponding to the type as a write destination of the received data; and
Data transfer that manages the transfer of data from the buffer in which the data is stored so that the order in which the data from the same type of data is transferred in each multiplex communication line is the order in which the data is written to the buffer Management means,
The data transfer management means rises at a predetermined time interval, sequentially checks whether or not there is data to be transmitted in the buffer, and transfers data from the buffer if there is data. A data relay device characterized in that the presence or absence of data is set to be checked only for the buffer storing the data first .
請求項1記載のデータ中継装置において、上記データ転送管理手段を、データ種類が同一のバッファについて上記最先にデータが格納されたバッファ内のデータの転送が、選択された多重通信線に対応してすべて完了した後に、データの種類が同一の他のバッファ内のデータのうちで最先に受信されたデータを上記最先にデータが格納されたバッファに移動するように設定したデータ中継装置。2. The data relay apparatus according to claim 1, wherein the data transfer managing means corresponds to the selected multiplex communication line for transferring the data in the buffer in which the data is stored first for a buffer of the same data type. The data relay device is set so that the data received first among the data in the other buffers having the same data type is moved to the buffer in which the data is stored first . 請求項記載のデータ中継装置において、データが格納されたバッファを特定するバッファ情報を含み、選択された多重通信線が同じバッファ情報の並び順が、バッファからデータを転送する順番である送信データリストを具備せしめ、
上記データ転送管理手段を、データのバッファへの書き込みおよびバッファからのデータの転送に応じて上記送信データリストを更新するように設定したデータ中継装置。
2. The data relay device according to claim 1, comprising buffer information for identifying a buffer in which data is stored, wherein the order of the buffer information in the same selected multiplex communication line is the order in which the data is transferred from the buffer. Provide a list,
A data relay apparatus in which the data transfer management means is set to update the transmission data list in response to writing of data into a buffer and transfer of data from the buffer .
請求項記載のデータ中継装置において、上記送信データリストを、バッファを特定するバッファ情報と、上記転送先テーブルに基づいて多重通信線ごとに初期値が与えられて、上記バッファに格納されたデータを転送すべきか否かの管理情報とからなる構成とし、
上記データ転送管理手段を、バッファからのデータの転送に応じて、管理情報をデータの送信が不要である旨の情報に切り換えるように設定したデータ中継装置。
4. The data relay device according to claim 3, wherein the transmission data list is stored in the buffer by providing an initial value for each multiplex communication line based on buffer information for specifying a buffer and the transfer destination table. And management information on whether or not to transfer,
A data relay apparatus in which the data transfer management means is set to switch the management information to information indicating that data transmission is unnecessary in accordance with the transfer of data from the buffer .
請求項1ないし4いずれか記載のデータ中継装置と、データを送受信する通信ノードが上記多重通信線に接続された複数の通信系とを具備することを特徴とする多重通信システム。5. A multiplex communication system comprising: the data relay device according to claim 1; and a plurality of communication systems in which communication nodes for transmitting and receiving data are connected to the multiplex communication line.
JP2001121320A 2001-04-19 2001-04-19 Data relay apparatus and multiplex communication system Expired - Lifetime JP3789769B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001121320A JP3789769B2 (en) 2001-04-19 2001-04-19 Data relay apparatus and multiplex communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001121320A JP3789769B2 (en) 2001-04-19 2001-04-19 Data relay apparatus and multiplex communication system

Publications (2)

Publication Number Publication Date
JP2002319958A JP2002319958A (en) 2002-10-31
JP3789769B2 true JP3789769B2 (en) 2006-06-28

Family

ID=18971221

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001121320A Expired - Lifetime JP3789769B2 (en) 2001-04-19 2001-04-19 Data relay apparatus and multiplex communication system

Country Status (1)

Country Link
JP (1) JP3789769B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006340099A (en) * 2005-06-02 2006-12-14 Denso Corp Gateway unit
JP2007336179A (en) * 2006-06-14 2007-12-27 Auto Network Gijutsu Kenkyusho:Kk In-vehicle database system
JP4886420B2 (en) * 2006-08-08 2012-02-29 株式会社オートネットワーク技術研究所 Relay connection unit
JP4799351B2 (en) * 2006-09-29 2011-10-26 株式会社オートネットワーク技術研究所 In-vehicle communication method, in-vehicle communication system, and relay device
JP5222002B2 (en) * 2008-04-03 2013-06-26 株式会社オートネットワーク技術研究所 In-vehicle relay connection unit
JP5131020B2 (en) * 2008-05-09 2013-01-30 株式会社デンソー Relay device, network system, and program
US9485113B2 (en) 2013-10-11 2016-11-01 Ge Aviation Systems Llc Data communications network for an aircraft

Also Published As

Publication number Publication date
JP2002319958A (en) 2002-10-31

Similar Documents

Publication Publication Date Title
JP3445183B2 (en) Data relay device and multiplex communication system
JP3789769B2 (en) Data relay apparatus and multiplex communication system
JP6961063B2 (en) Network hub, transfer method and in-vehicle network system
EP0498995A2 (en) Data transfer control system
US11340888B2 (en) Relay device and external device
US9665514B2 (en) Integrated circuit having a bus network, and method for the integrated circuit
EP1030482B1 (en) Data repeater and multiplex communication system using the same
EP3641230B1 (en) Control apparatus
JP2008005290A (en) Relay connecting unit, and electronic control unit
JP4574377B2 (en) Data processing module and method for managing transmitted / received messages thereof
CN112787901B (en) Network hub, forwarding method and vehicle-mounted network system
JP2009089286A (en) Relay connection unit
EP1175046A2 (en) Buffer unit and switching apparatus
JP2004350138A (en) Data relaying apparatus and multiplex communication system
US20080117924A1 (en) Data relay unit
US6374319B1 (en) Flag-controlled arbitration of requesting agents
JP2002149535A (en) System, device and method for file transfer and recording medium recorded with file transfer program
JP2002236659A (en) Electronic control device for vehicle
CN113141300B (en) Communication gateway for transmitting data frames for motor vehicles
JP6900254B2 (en) In-vehicle network relay device and relay method
KR100527158B1 (en) Half Duplex Communication Method
JP2004240679A (en) Computer control system, and method for rewriting software
CN112440906B (en) Vehicle control system, vehicle control method, and storage medium
JP4799351B2 (en) In-vehicle communication method, in-vehicle communication system, and relay device
JP2745617B2 (en) Transmission order control method for remote monitoring control device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20031209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051024

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051101

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051228

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060329

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3789769

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100407

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100407

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110407

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130407

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130407

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140407

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250