JP2006253922A - ゲートウェイ装置及びゲートウェイ装置におけるデータ転送方法 - Google Patents

ゲートウェイ装置及びゲートウェイ装置におけるデータ転送方法 Download PDF

Info

Publication number
JP2006253922A
JP2006253922A JP2005065794A JP2005065794A JP2006253922A JP 2006253922 A JP2006253922 A JP 2006253922A JP 2005065794 A JP2005065794 A JP 2005065794A JP 2005065794 A JP2005065794 A JP 2005065794A JP 2006253922 A JP2006253922 A JP 2006253922A
Authority
JP
Japan
Prior art keywords
data
bus
frames
gateway device
storage means
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.)
Pending
Application number
JP2005065794A
Other languages
English (en)
Inventor
Homare Maehara
誉 前原
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 Ten Ltd
Original Assignee
Denso Ten Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Ten Ltd filed Critical Denso Ten Ltd
Priority to JP2005065794A priority Critical patent/JP2006253922A/ja
Publication of JP2006253922A publication Critical patent/JP2006253922A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Abstract

【課題】データの転送処理時間を短くしたゲートウェイ装置を提供すること。
【解決手段】複数バスの間に設けられ、基本周期毎に前記バス間のデータを転送するゲートウェイ装置において、前記バスから受信した前記データを記憶する第1の記憶手段と、前記データを前記バスに転送するために前記データを記憶する第2の記憶手段と、前記第1の記憶手段に記憶された前記データを前記基本周期毎に前記第2の記憶手段に送信セットする制御手段とを備え、前記基本周期毎に前記送信セットする前記データ数には上限値が設定され、前記制御手段は前記上限値以内の前記データ数を前記第2の記憶手段に送信セットする、ことを特徴としている。
【選択図】 図5

Description

本発明は、複数のバス間のデータを中継するゲートウェイ装置及びゲートウェイ装置におけるデータ転送方法に関する。詳しくは、メモリに蓄積されたフレームの送信用コントローラバッファへの転送処理に上限値を設定したゲートウェイ装置等に関する。
従来から、主として自動車の車載ネットワークとしてCAN(Controller Area Network)と呼ばれる通信プロトコルが採用されている(例えば、以下の非特許文献1及び2)
。CANは、ISO(International Organization for Standardization)で国際的に標準化されたシリアル通信プロトコルである。最近では、その高い性能と信頼性とから車内LAN以外にも、船舶、医療機器等多方面で採用されている。
このようなCANを利用した車内ネットワークシステムでは、非特許文献1に記載されているように、自動車のハードウェアを制御する複数のECU(Electric Control Unit
)がCANバスを介して接続され、更に、各バス間がゲートウェイ装置を介して接続される。例えば、エンジンやトランスミッション等を制御するECUを接続するエンジン系のCANバスと、VICSナビなどを制御するECUを接続する情報系のCANバスとがゲートウェイ装置を介して接続される。かかるゲートウェイ装置は、異なるCANバス間のプロトコルの翻訳を行うとともに、一方のCANバス内のECUから送信されたメッセージを他方のCANバス内のECUに転送する役割を果たす。
CANプロトコルの特徴は、(1)バスが空いているときに、すべてのノード(ECU)がメッセージ(以下、「フレーム」と称す。CANプロトコルにおける通信単位である)の送信を始めることができるマルチマスタ方式が採用され、(2)バスに早くアクセスしたノードがフレームの送信権を得、(3)同時に複数のノードが送信を始めると、優先順位の高い識別子(ID)のフレームを送信するノードが送信権を得る、等が上げられる。なお、この識別子は、送信フレームに付加されるものであるが、フレームの送り先を示すものではなく、CANバスにアクセスする際の優先順位を示すものである。
このようなマルチマスタ通信において、フレームを送信するノードはバスの通信状態や負荷に関係なくノードを構成するデバイス毎の周期にて送信を行う。また、自動車のスイッチ入力情報やエンジンの回転数など値の変化に応じてイベント送信を行うノードは、バスの通信状態等に関係なく発生したイベントに応じてフレームの送信が行われる。そして、同時にフレームが送信されると上述したIDにより調停(アービトレーション)が行われ、送信権を獲得したフレームが優先される。
一方、ゲートウェイ装置は、一般に各デバイスから送信されるフレームを格納するメモリとフレームの送受信を行う送信用コントローラ及び受信用コントローラとを備える。更に、各コントローラには送受信されるフレームを格納するバッファを備える。例えば、図10に示すように、メモリに蓄積されたフレームは、ゲートウェイ装置内のCPUによって送信用コントローラ内のバッファに転送セットされ、基本周期毎にバッファからバスに出力される。
「CAN入門書」 www.renesas.com 「CANとは?」 www.toyo.co.jp/car/CAN/CAN_General.htm
しかしながら、ゲートウェイ装置は受信したフレームを送信先のノードに転送させることができずに、メモリ内にフレームを蓄積し続ける場合がある。一般に、CANプロトコルではフレームを受信した送信先のノードはフレームを受信したことを示すアクノリッジ信号をフレームに付加して送信元のノードに返信する。しかし、送信先のノードにショートやバスの断線などが発生すると、送信先のノードはアクノリッジ信号を付加したフレームを返信することができない。そして、送信元のノードはこのアクノリッジ信号を認識できずに何度も送信先のノードに対してフレームを送信し続ける。このような場合に、ゲートウェイ装置のメモリに送信されたフレームが蓄積し続けることとなる。
そして、メモリ内にフレームが蓄積され続けると、1基本周期(例えば1ms)内に送信できるフレーム数を超える、メモリからコントローラバッファへの転送処理が行われる状況が発生する。
例えば、前述した図10に示すように、基本周期内に送信可能なフレーム数が「4」、コントローラバッファにはフレーム1からフレーム4が格納され、メモリにはフレーム1からフレーム9まで格納された場合を考える。かかる場合に、コントローラバッファに送信すべきフレーム1から4が格納された状態で、フレーム5の転送セット処理をCPUが行おうとすると、フレーム1(又はフレーム2乃至4)の転送が終了してバッファの領域が開放されるまで、CPUは「空きまち」の状態となる。さらに、メモリにフレーム6、7、・・・と蓄積された場合、これらの送信セット処理を行うと更にCPUの処理待ち時間が発生する。図9は、かかる状態を説明するための図である。図に示すように、CPUは、1基本周期内にすべて送信セット処理に費やせれ、その他の処理(例えば、受信処理など)を実行することができなくなってしまう。
そこで、本発明は上記問題点に鑑みてなされたもので、その目的は、データの転送処理時間を短くしたゲートウェイ装置を提供することにある。
上記目的を達成するために、本発明は、複数バスの間に設けられ、基本周期毎に前記バス間のデータを転送するゲートウェイ装置において、前記バスから受信した前記データを記憶する第1の記憶手段と、前記データを前記バスに転送するために前記データを記憶する第2の記憶手段と、前記第1の記憶手段に記憶された前記データを前記基本周期毎に前記第2の記憶手段に送信セットする制御手段とを備え、前記基本周期毎に前記送信セットする前記データ数には上限値が設定され、前記制御手段は前記上限値以内の前記データ数を前記第2の記憶手段に送信セットすることを特徴としている。これにより、例えば、第1の記憶手段から第2の記憶手段に送信セットされるデータのデータ数が上限値以内に抑えられるため、制御手段は基本周期内すべて送信セットの処理に費やされることがなく、データの転送処理時間を短くすることができる。
また、本発明は上記ゲートウェイ装置において、前記上限値は、前記基本周期内に前記第2の記憶手段から前記バスに転送される前記データのデータ数であることを特徴としている。これにより、例えば、第2の記憶手段からバスに基本周期内で転送されるデータのデータ数以下のデータが送信セットされるため、第2の記憶手段から確実にバスにデータが転送される。
更に、本発明は上記ゲートウェイ装置において、前記制御手段は、前記上限値を超えるデータを次の前記基本周期まで送信セットしないことを特徴としている。これにより、例えば、基本周期内で第1の記憶手段から第2の記憶手段に送信セットされなかったデータは次の基本周期に持ち越されることになり、次の基本周期で確実にバスに送信することができる。
更に、本発明は上記ゲートウェイ装置において、前記データは、前記バス内を転送する一通信単位であるフレームであって、前記上限値は、前記基本周期毎に前記第2の記憶手段から前記バスに転送される前記フレームのフレーム数であることを特徴としている。これにより、例えば、基本周期内で第1の記憶手段から第2の記憶手段に送信セットされるフレームの数が上限値以内に抑えられ、フレームの転送処理時間を短くすることができる。
更に、本発明は上記ゲートウェイ装置において、前記上限値は、前記フレームのうち最大フレーム長を基準にしたフレーム数であることを特徴としている。これにより、例えば、長いフレーム長を有するフレームであっても、第2の記憶手段から送信されるフレーム数分だけ第1の記憶手段から第2の記憶手段に送信セットされるため、制御手段で送信セットの待ち時間が短くなり、確実に第2の記憶手段からバスにデータが送信される。
更に、本発明は上記ゲートウェイ装置において、前記上限値は、前記フレームのうち最短フレーム長を基準にしたフレーム数であることを特徴としている。これにより、例えば、確実に送信できるフレーム数のみ送信セットされるため、確実にバスにフレームを送信することができる。
更に、本発明は上記ゲートウェイ装置において、前記上限値は、前記基本周期毎に前記第2の記憶手段から前記バスに転送される前記フレームのフレーム数から算出したビット数であることを特徴としている。これにより、例えば、送信セットされる最大フレーム数を高い精度で算出でき、持ち越しフレームを最小限に抑えることができる。
更に、本発明は上記ゲートウェイ装置において、前記上限値は、前記基本周期毎に前記第2の記憶手段から前記バスに転送される前記フレームのフレーム数から算出したバイト数であることを特徴としている。これにより、例えば、バイト数演算のための算出時間に関し、ビット数を基準にした場合と比較して短くすることができ、できるだけ多くのフレームの送信セット、更にはバスへの転送を行うことができる。
更に、本発明は上記ゲートウェイ装置において、前記データには前記バスの優先度を示す識別子が含まれ、前記データが同時に前記バスに送信されるときは前記識別子に基づく優先度の最も高い前記データに前記バスの送信権が与えられることを特徴としている。これにより、例えば、ISOで規格化されたCANプロトコルを本発明に適用することができる。
また、上記目的を達成するために本発明は、複数バスの間に設けられ、前記バスから受信したデータを記憶する第1の記憶手段と、前記データを前記バスに転送するために前記データを記憶する第2の記憶手段と、制御手段とを備えたゲートウェイ装置におけるデータ転送方法において、前記制御手段によって、前記第1の記憶手段に記憶された前記データを前記基本周期毎に前記第2の記憶手段に送信セットする第1のステップと、前記第1のステップで前記第2の記憶手段に記憶された前記データを前記基本周期内で前記制御手段によって前記バスに転送する第2のステップとを備え、前記第1のステップにおいて、前記基本周期毎に前記送信セットする前記データ数には上限値が設定され、前記上限値以内の前記データ数が前記第2の記憶手段に送信セットされることを特徴としている。これにより、例えば、第1の記憶手段から第2の記憶手段に送信セットされるデータのデータ数が上限値以内に抑えられるため、制御手段は基本周期内すべて送信セットの処理に費やされることがなく、データの転送処理時間を短くすることができる。
本発明によれば、ゲートウェイ装置は第1の記憶手段から第2の記憶手段への送信セットの処理でそのデータ数に上限値が設定されているので、基本周期内でその上限値より多くのデータが送信セットされることはない。従って、本発明に係るゲートウェイ装置は基本周期内でデータの転送処理に費やされる時間を短くすることができる。
本発明を実施するための最良の形態について、以下図面を参照しながら説明する。図1は、本発明が適用される車載ネットワークシステム1の一例である。
車載ネットワークシステム1は、図1に示すように、ノードA21からノードF26と、ゲートウェイ制御装置10と、ノードG31からノードL36とから構成される。ゲートウェイ制御装置10とノードA21からノードF26までとは、バスA20を介して接続され、ノードG31からノードL36までとゲートウェイ装置10とはバスB30を介して接続される。本実施例において、バスA20及びバスB30はCANプロトコルによる通信が行われる。
図2は、ゲートウェイ制御装置10の構成を示す図である。ゲートウェイ制御装置10は、受信用のコントローラA11と、送信用のコントローラB12と、主としてフレームを蓄積するためのメモリ13と、CPU14、及びROM15から構成され、それぞれ内部バスを介して接続される。
コントローラA11は、バスA20を介してノードA21乃至ノードF26から送信されたフレームの受信制御を行う。また、コントローラA11は、内部に受信用のコントローラバッファ111を備え、受信したフレームを蓄積する。
コントローラB12は、受信したフレームを、バスB30を介してノードG31乃至ノードL36に送信する送信制御を行う。また、コントローラB12は、内部に送信用のコントローラバッファ112を備え、送信すべきフレームを蓄積する。
CPU14はゲートウェイ制御装置10全体を制御するとともに、図2に示すよう、通信ドライバ16、17、通信制御18、アプリケーション19の各プログラム(又はモジュール)を実行する。これらのプログラム等はROM15に記憶される。
このように構成された車載ネットワークシステム1の全体動作について、ノードF26からノードL36にフレームを送信する場合を例にして説明するが、その前にこのフレームの詳細について説明する。
図3(A)は、フレームの構成例を示す図である。フレームは、CANプロトコルにおける通信の1単位である。主として、フレームの開始を示すスタートオブフレーム(SOF)と、当該フレームの優先順位を示す識別子(ID)が格納されるID領域と、データが格納されるデータ領域と、フレームの伝送誤りをチェックするCRC符号が格納される領域と、フレームの終了を示すエンドオブフレーム(EOF)とから構成される。
CANプロトコルでは、バスA20の送信権は、第1にアイドル中のバスにフレームを先に出力したノードに与えられ、第2に同時に複数のノードからフレームを出力したときは上述した識別子(ID)により優先順位の高いフレームを出力したノードに与えられる。つまり、全ての識別子は異なる優先順位を有し、ノードF26とノードA21とが同時にフレームをバスA20に出力すると、その識別子の優先順位により送信権が決定され、例えば、優先順位の高いノードF26からのフレームにバスA20の送信権が与えられ、優先順位の低いノードA21からのフレームの送信は停止する。もちろん、ノードA21
が先にフレームの出力を開始したときは、他のノードB22等はフレームの出力はできない。
次に全体動作を説明する。上述のようにして、ノードF26から送信されたフレームにバスA20の送信権が与えられると、当該フレームは、ゲートウェイ制御装置10に出力される。そして、そのフレームは、図2に示すように、CPU14が通信ドライバ16を実行することでコントローラA11が制御され、コントローラA11はフレームを受信してバッファ111に蓄積し、メモリ13に出力する。従って、フレームはメモリ13に格納される。
その後、CPU14が通信制御プログラム18を実行することで、メモリ13に格納されたフレームが読み出されてコントローラB12内のバッファ112に送信セットされる。更に、CPU14が通信ドライバ17を実行することでコントローラB12が制御され、コントローラB12はバッファ112に蓄積されたフレームをバスB30に出力する。その後、ゲートウェイ制御装置10から出力されたフレームは、バスB30を介してノードL36に送信される。
このノードL36に対する送信もバスA20と同様にバス権獲得のための調停が行われる。すなわち、バスB30に接続された各ノードL36等は、どの識別子のフレームを受信すべきか予め設定されており、その設定された識別子のフレームを、バスB30上に出力されるメッセージから判別し、該当する場合に受信することになる。
尚、フレームが送信されたノードL36は、正常に受信したことを示すアクノリッジ信号をフレームに付加してノードF26に送信する。そして、ノードF26はアクノリッジ信号を確認すると、エンドオブフレームと呼ばれるフレームを他のノードA21等に送信して送信終了を他のフレームに宣言する。以上により正常な送受信が行われる。
ところが、従来の技術でも説明したように、例えばノードL36がショート等何らかの原因によりフレームを受信することができないと、ノードF26はアクノリッジ信号を受信することができず、次々とフレームをノードL36に対して送信し続ける。この場合、ゲートウェイ制御装置10のメモリ13には送信されたフレームが順次格納される。
図4は、メモリ13からバッファ112を介してフレームが送信される状況を説明するための図である。CPU14は、メモリ13に蓄積されたフレームを送信すべくコントローラB12のバッファ112に出力する送信セット処理を行うことになるが、格納された全てのフレームに対して送信セット処理を行うと、バッファ112からいずれかのフレームがバスB30に送信されて領域が開放されるまで処理待ちの状態となる。
本発明の特徴はこのCPU14が行う送信セット処理によるフレーム数の上限を1基本周期内で送信可能なフレーム数とすることにある。
例えば、図4に示すように、コントローラバッファ112からバスB30に1基本周期(1ms)で送信可能なフレーム数を「4」とし、コントローラバッファ112に記憶可能なフレーム数も「4」とした場合を考える。1基本周期内において、メモリ13に記憶されたフレーム1からフレーム4がコントローラバッファ112に転送されて送信セットが完了した状態で、さらにフレーム5に対してもCPU14が送信セット処理を行うと、フレーム1(又はフレーム2等)がバッファ112から送信されてバッファ112が空き状態とならない限り、送信セットの処理待ちとなる。
そこで、1基本周期内でメモリ13からバッファ112への転送処理におけるフレーム
数の上限をバッファ112から1基本周期内で送信可能なフレーム数とすることで、上限値である「4」より大きいフレーム数の転送処理を行わないことになり、CPU14の占有資源を他の処理に解放することができる。つまり、CPU14は、今回の基本周期内でフレーム5以降の送信セット処理を行わないことになる。この場合、フレーム5以降の送信セット処理は次の基本周期内で行うことになる。次の基本周期でも送信セットされるフレームは、1基本周期内で送信可能なフレーム数である、フレーム5からフレーム8まで、となる。勿論、メモリ13に蓄積されたフレームの数が1基本周期内で送信可能なフレーム数より少ない数であれば、メモリ13に蓄積されたフレームすべてバッファ112に送信セットされる。
次に、1基本周期内でバッファ112からバスB30に送信できる送信可能なフレーム数を実際に演算してみる。基本周期が「1ms」、ボーレート(バスB30上にフレームを転送する場合にフレームの1ビットを転送するのに必要な時間、転送ビットレートともいう)が「500kbps」(=2μsec/bit)の場合で演算する。
CANプロトコルにおいて1フレームのうち最短フレーム長は、図3(B)に示すように、「47bit」である。データ領域にデータが格納されていない場合である。この最短フレーム長のフレームを送信するのに必要な時間は、
47bit×2μsec/bit=94μsec
となる。従って、1基本周期内で最短フレーム長のフレームを送信できる個数は、
1msec/94μsec=10.6
つまり、10個となる。
同様に、1フレームの最長フレーム長は、図3(C)に示すように「128bit」であり、この最長のフレームを送信するのに必要な時間は、
128bit×2μsec/bit=256μsec
となる。従って、1基本周期内で送信できるフレームの個数は、
1msec/256μsec=3.9
つまり、3個となる。
以上から、1基本周期内で送信可能なフレーム数は、基本周期を1ms、ボーレートを500kbpsとした場合、3個から10個となる。予め、この送信可能なフレーム数を求め、転送セット処理されるフレーム数の上限値をこの送信可能なフレーム数としてCPU14において処理が行われることになる。
次に、CPU14において実行される、この転送セットの処理について説明する。図5は、その動作を示すフローチャートである。まず、CPU14はROM15に格納された本処理を実行するためのプログラムを読み出すことで処理が開始される(S10)。尚、以下に示す処理は1基本周期ごとに行われる処理である。また、本プログラムは通信制御プログラム18の一部である。
次いで、CPU14は受信データの取得、すなわち、今回の基本周期内の送信要求フレーム数xと前回の基本周期内での未送信フレーム数yを確認する(S11)。今回の基本周期内の送信要求フレーム数xとは、現在の基本周期内でゲートウェイ制御装置10が受信したフレームの個数、つまり、メモリ13に新たに蓄積されたフレームの数のことである。例えば、図4の例で、今回の基本周期内で新たにメモリ13にフレーム7からフレーム9が蓄積された場合に、送信要求フレーム数xは「3」となる。
また、前回の基本周期内での未送信フレーム数yとは、コントローラバッファ112において前回の基本周期内でバスB30に送信されずに蓄積されたままのフレームの個数と
、前回の基本周期内でメモリ13に蓄積されたままバッファ112に転送されなかったフレームの個数との合計値である。例えば、図4の例で、前回の基本周期内でバッファ112からすべてフレームが送信され、フレーム1からフレーム6がメモリ13に蓄積されているとき、前回の基本周期内での未送信フレーム数yは「6」となる。
図5に戻り、次いでCPU14は、今回の送信要求フレーム数と前回の未送信フレーム数との和が1基本周期内でバスB30に送信可能なフレーム数以内か否か判定する(S12)。メモリ13からバッファ112へ送信セットされるフレーム数が上限値Cを超えるか否か判定するためである。従って、合計値が上限値Cより大きいと(NO)、上限値Cを超える数のフレームの送信セットを行わずに、上限値であるフレーム数C個以内の送信セットの処理を行うことになる(S13)。
図4の例では、合計値は「9」、1基本周期内で送信可能なフレーム数は「4」なので、メモリ13からバッファ112への送信セットするフレームの数は「4」、つまり、フレーム1からフレーム4の送信セットの処理が行われる。一方で、上限値Cを越えるフレームの送信セットは行わない、つまり、フレーム5以降のフレームの送信セットは今回の基本周期内で行わず、次回の基本周期に持ち越すことになる。これにより、上限値Cを超えるフレーム数の送信セットが今回の基本周期内で行われないことになるため、CPU14を他の処理に開放することができる。
図5に戻り、今回の送信要求フレーム数xと前回の未送信フレーム数yとの合計値が上限値C以内であれば(S12でYES)、メモリ13からバッファ112への送信セットの処理で処理待ちは発生しないため、その合計値分のフレーム数を送信セットする(S13)。
そして、送信セット(S13、S14)が終了すると一連の処理が終了する(S15)。その後、次の基本周期の開始から再び処理が開始され(S10)、上述した処理が繰り返される。その際に持ち越しとなったフレーム(図4の例では、フレーム5からフレーム8)は、この基本周期内で送信セットされることになる。従って、送信しきれないフレームは確実に次回の基本周期に送信セットが可能となり、バスB30への送信が可能となる。
図8は、以上の処理における、CPU14とコントローラ12の処理時間を示す図である。CPU14は、バスB30への送信可能なフレーム数を上限値Cとし、これよりも多いフレームの送信セット処理が行われないため、処理待ちは発生せず、送信セット処理を最短時間で行うことができる。
図5に示す例は、メモリ13からバッファ112への送信セットの上限値Cを基本周期内で送信可能なフレーム数とした場合の例である。送信可能なフレーム数は、上述したように、1基本周期を1ms、ボーレートを500kbpsとすると「3」から「10」フレームとなる。従って、送信セット処理の上限値Cを、最長フレーム長を基準にしたフレーム数「3」とすることもできる。これにより、長いフレーム長を有するフレームでも確実にバスB30へ送信できるフレーム数のみ送信セットされるため、CPU14は送信セット処理に時間を費やすことなく確実にフレームをバスB30に送信することができる。
また、この上限値Cを最短フレーム長のフレーム数(上述の例では「10」)としたり、中間フレーム長のフレーム数(上述の例では「6」や「7」など)にしたりしてもよい。これらは、予め車載ネットワークシステム1を構築する場合の仕様に応じて設定すればよい。いずれの場合も送信セット処理に時間を費やすことなく確実にフレームをバスB30に転送することができる。
更に、送信セットの上限値Cは、上述した例ではフレーム数を基準に説明した。これ以外にも、1基本周期内で送信できるフレーム数に基づくビット数を基準にしてもよい。例えば、フレーム数「3」が1基本周期内でバスに送信可能なフレーム数とした場合、フレーム数を基準にした上限値Cは「3」となる。ビット数を基準にすると上限値Cは「384」(=128bit×3:1フレームが最長フレーム長とした場合)となる。そして、このビット数を上限値Cとして、メモリ13からバッファ112へ送信セットの処理を行う。
図6は、ビット数を基準にした送信セット処理のフローチャートを示す。全体の処理自体は、図5の例と同様であるが、受信データ取得の際(S21)に今回の基本周期内で送信要求されたフレームのビット数xと、前回の未送信フレームのビット数yとを取得して、この合計値と、ビット数を基準にした上限値Cとで判定を行っている(S22)点が異なる。
上述した例では、上限値Cをフレーム数「3」とすると、送信セットされるフレーム数はフレーム内のビット数に関係なく「3」以下となる。しかし、送信セットされるフレームの各ビット数がそれぞれ「127」、「47」、「47」とすると、合計ビット数は「221」で上限値C「384」以下となり、更に4フレーム目、5フレーム目とフレームの送信セットが可能となる。
このように、上限値Cを通信の最小単位であるビット数を基準にすることで、送信セット可能な最大フレーム数を高い精度で算出することができ、また、メモリ13に蓄積された持ち越しフレームを最小限に抑えることができる。
図6の例は、上限値Cは1基本周期内で送信可能なフレームのビット数を基準にしたが、更にバイト数を基準にしてもよい。図7は、バイト数を基準にした場合の送信セット処理の動作を示すフローチャートの例である。この場合も、受信データ取得の際(S31)に今回の基本周期で送信要求のあったフレーム数に基づくバイト数xを確認し、更に未送信のフレーム数のバイト数yを確認し、この合計バイト値と上限値Cとで判定を行う(S32)点が異なる。
これにより、ビット数を基準にした上限値Cの場合と比較して数が少なくなった分だけ受信データ取得の際(S31)の処理時間や上限値C自体の算出時間を短くすることができ、また、フレーム数を基準にした場合と比較して多くのフレームの送信セット処理を行うことができる。なお、このバイト数を基準にした場合に、例えば、フレーム内のデータ領域に格納されるデータのバイト数のみに着目して、このバイト数を上限値Cの基準としてもよい。
上述した例では、バスA20に接続されたノードA21等が送信側で、バスB30に接続されたノードG31等を受信側として説明した。勿論、バスB30に接続されたノードG31等を送信側、バスA20に接続されたノードA21等が受信側であってもよい。この場合、ゲートウェイ制御装置10において、コントローラB12が送信側コントローラ、コントローラA11が受信側コントローラとなり、更に上述した送信セット処理がメモリ13とコントローラバッファ111との間で行われる。かかる場合でも、上述した例と同様の作用効果を奏する。
また、上述の例では、バスA20及びバスB30内の通信プロトコルとして、CANの例で説明した。勿論、それ以外にも、種々の通信プロトコルであっても本発明を適用でき、同様の作用効果を奏する。例えば、FlexRay(高速制御系のネットワーク規格)
、BEAN(Body Electronics Area Network)等であってもよい。かかる場合に、メモ
リ13やコントローラバッファ112に蓄積されるものはフレームではなく、それぞれの規格に合致した1通信単位の情報となる。
本発明が適用される車載ネットワークシステムの例を示す図である。 ゲートウェイ制御装置の構成例を示す図である。 フレームの構成例を示す図である。 フレームがバスに転送されるまでの状況を説明するための図である。 送信セット処理の動作を示すフローチャートである。 送信セット処理の動作を示すフローチャートである。 送信セット処理の動作を示すフローチャートである。 CPUとコントローラの処理時間を示す図である。 CPUとコントローラの処理時間を示す図である。 フレームがバスに転送されるまでの状況を説明するための図である。
符号の説明
1 車載ネットワークシステム、 10 ゲートウェイ制御装置、 11 コントローラA、 12 コントローラB、 13 メモリ、 14 CPU、 20 バスA、 21〜22 ノードA〜ノードF、 30 バスB、 31〜36 ノードG〜ノードL、
112 コントローラバッファ

Claims (10)

  1. 複数バスの間に設けられ、基本周期毎に前記バス間のデータを転送するゲートウェイ装置において、
    前記バスから受信した前記データを記憶する第1の記憶手段と、
    前記データを前記バスに転送するために前記データを記憶する第2の記憶手段と、
    前記第1の記憶手段に記憶された前記データを前記基本周期毎に前記第2の記憶手段に送信セットする制御手段とを備え、
    前記基本周期毎に前記送信セットする前記データ数には上限値が設定され、前記制御手段は前記上限値以内の前記データ数を前記第2の記憶手段に送信セットする、ことを特徴とするゲートウェイ装置。
  2. 請求項1記載のゲートウェイ装置において、
    前記上限値は、前記基本周期内に前記第2の記憶手段から前記バスに転送される前記データのデータ数である、ことを特徴とするゲートウェイ装置。
  3. 請求項1記載のゲートウェイ装置において、
    前記制御手段は、前記上限値を超えるデータを次の前記基本周期まで送信セットしない、ことを特徴とするゲートウェイ装置。
  4. 請求項1記載のゲートウェイ装置において、
    前記データは、前記バス内を転送する一通信単位であるフレームであって、
    前記上限値は、前記基本周期毎に前記第2の記憶手段から前記バスに転送される前記フレームのフレーム数である、ことを特徴とするゲートウェイ装置。
  5. 請求項4記載のゲートウェイ装置において、
    前記上限値は、前記フレームのうち最大フレーム長を基準にしたフレーム数である、ことを特徴とするゲートウェイ装置。
  6. 請求項4記載のゲートウェイ装置において、
    前記上限値は、前記フレームのうち最短フレーム長を基準にしたフレーム数である、ことを特徴とするゲートウェイ装置。
  7. 請求項4記載のゲートウェイ装置において、
    前記上限値は、前記基本周期毎に前記第2の記憶手段から前記バスに転送される前記フレームのフレーム数から算出したビット数である、ことを特徴とするゲートウェイ装置。
  8. 請求項4記載のゲートウェイ装置において、
    前記上限値は、前記基本周期毎に前記第2の記憶手段から前記バスに転送される前記フレームのフレーム数から算出したバイト数である、ことを特徴とするゲートウェイ装置。
  9. 請求項1記載のゲートウェイ装置において、
    前記データには前記バスの優先度を示す識別子が含まれ、前記データが同時に前記バスに送信されるときは前記識別子に基づく優先度の最も高い前記データに前記バスの送信権が与えられる、ことを特徴とするゲートウェイ装置。
  10. 複数バスの間に設けられ、前記バスから受信したデータを記憶する第1の記憶手段と、前記データを前記バスに転送するために前記データを記憶する第2の記憶手段と、制御手段とを備えたゲートウェイ装置におけるデータ転送方法において、
    前記制御手段によって、前記第1の記憶手段に記憶された前記データを前記基本周期毎
    に前記第2の記憶手段に送信セットする第1のステップと、
    前記第1のステップで前記第2の記憶手段に記憶された前記データを前記基本周期内で前記制御手段によって前記バスに転送する第2のステップとを備え、
    前記第1のステップにおいて、前記基本周期毎に前記送信セットする前記データ数には上限値が設定され、前記上限値以内の前記データ数が前記第2の記憶手段に送信セットされる、ことを特徴とするデータ転送方法。


JP2005065794A 2005-03-09 2005-03-09 ゲートウェイ装置及びゲートウェイ装置におけるデータ転送方法 Pending JP2006253922A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005065794A JP2006253922A (ja) 2005-03-09 2005-03-09 ゲートウェイ装置及びゲートウェイ装置におけるデータ転送方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005065794A JP2006253922A (ja) 2005-03-09 2005-03-09 ゲートウェイ装置及びゲートウェイ装置におけるデータ転送方法

Publications (1)

Publication Number Publication Date
JP2006253922A true JP2006253922A (ja) 2006-09-21

Family

ID=37093949

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005065794A Pending JP2006253922A (ja) 2005-03-09 2005-03-09 ゲートウェイ装置及びゲートウェイ装置におけるデータ転送方法

Country Status (1)

Country Link
JP (1) JP2006253922A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008041271A1 (fr) * 2006-09-29 2008-04-10 Fujitsu Microelectronics Limited Système d'émission/reception, noeud et procédé de communication
JP2008227798A (ja) * 2007-02-07 2008-09-25 Hitachi Ltd 車載ゲートウェイ装置及びデータ転送方法
JP2008294935A (ja) * 2007-05-28 2008-12-04 Denso Corp 中継装置,ネットワークシステム,プログラムおよびハードウェア記述コード
JP2012085327A (ja) * 2011-12-05 2012-04-26 Hitachi Automotive Systems Ltd 接続装置および接続方法
JP2018157366A (ja) * 2017-03-17 2018-10-04 本田技研工業株式会社 通信装置、通信方法、およびプログラム
JP2020162038A (ja) * 2019-03-27 2020-10-01 株式会社デンソー 中継装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002290433A (ja) * 2001-03-27 2002-10-04 Fujitsu Ltd 帯域制御機能を備えるデータ中継装置および帯域管理装置
JP2004282728A (ja) * 2003-02-25 2004-10-07 Hitachi Ltd トラヒックシェーピング方法及びトラヒックシェーピング装置
JP2004350138A (ja) * 2003-05-23 2004-12-09 Denso Corp データ中継装置および多重通信システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002290433A (ja) * 2001-03-27 2002-10-04 Fujitsu Ltd 帯域制御機能を備えるデータ中継装置および帯域管理装置
JP2004282728A (ja) * 2003-02-25 2004-10-07 Hitachi Ltd トラヒックシェーピング方法及びトラヒックシェーピング装置
JP2004350138A (ja) * 2003-05-23 2004-12-09 Denso Corp データ中継装置および多重通信システム

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008041271A1 (fr) * 2006-09-29 2008-04-10 Fujitsu Microelectronics Limited Système d'émission/reception, noeud et procédé de communication
JP4814950B2 (ja) * 2006-09-29 2011-11-16 富士通セミコンダクター株式会社 送受信システム、ノード及び通信方法
US8311054B2 (en) 2006-09-29 2012-11-13 Fujitsu Semiconductor Limited Transmitting/receiving system, node and communication method
JP2008227798A (ja) * 2007-02-07 2008-09-25 Hitachi Ltd 車載ゲートウェイ装置及びデータ転送方法
US8139493B2 (en) 2007-02-07 2012-03-20 Hitachi, Ltd. On-vehicle gateway device, method for controlling an on-vehicle gateway device, connection device and connection control method
US8693346B2 (en) 2007-02-07 2014-04-08 Hitachi, Ltd. On-vehicle gateway device, method for controlling an on-vehicle gateway device, connection device and connection control method
JP2008294935A (ja) * 2007-05-28 2008-12-04 Denso Corp 中継装置,ネットワークシステム,プログラムおよびハードウェア記述コード
JP2012085327A (ja) * 2011-12-05 2012-04-26 Hitachi Automotive Systems Ltd 接続装置および接続方法
JP2018157366A (ja) * 2017-03-17 2018-10-04 本田技研工業株式会社 通信装置、通信方法、およびプログラム
US10447384B2 (en) 2017-03-17 2019-10-15 Honda Motor Co., Ltd. Communication apparatus, communication method, and program
JP2020162038A (ja) * 2019-03-27 2020-10-01 株式会社デンソー 中継装置
JP7159940B2 (ja) 2019-03-27 2022-10-25 株式会社デンソー 中継装置

Similar Documents

Publication Publication Date Title
US10153825B2 (en) Vehicle-mounted control device
US8301821B2 (en) Communication module for connecting a serial bus to a plurality of system buses
CN105282209B (zh) 车辆用网络***和其中异构通信控制器的数据传输方法
RU2597502C2 (ru) Способ и устройство для адаптируемой к размерам памяти последовательной передачи данных
US20200382597A1 (en) Vehicle diagnostic communication apparatus, system including the same and method thereof
JP2006253922A (ja) ゲートウェイ装置及びゲートウェイ装置におけるデータ転送方法
US20130151660A1 (en) Delay system, delay device and communication device constituting delay system
JP2006191337A (ja) バス間のメッセージ転送を行うゲートウエイ装置及びそれを使用したネットワークシステム
KR101334017B1 (ko) 차량 네트워크의 메시지 무결성 체크 시스템 및 방법
CN113545012B (zh) 通信装置、通信***及消息仲裁方法
CN102100037B (zh) 通信***的具有功能分离的发送事件存储器的用户节点
JP5728043B2 (ja) ゲートウェイ装置
JP4361540B2 (ja) ゲートウェイ装置、データ転送方法及びプログラム
JP6593230B2 (ja) 通信システム
JP2009017154A (ja) 車載ゲートウェイ装置
JP4954832B2 (ja) 車載用通信システム
JP2014027510A (ja) 通信制御装置
JP2011103577A (ja) 通信コントローラ、通信システム、及び通信制御方法
US8427955B2 (en) Method and apparatus for transferring data
JP7151930B2 (ja) 中継装置、通信ネットワークシステム及び通信制御方法
JP5892889B2 (ja) 通信制御装置
JP6183281B2 (ja) 通信システムおよび電子制御装置
JP2017188794A (ja) 通信制御用コントローラ
JP5409681B2 (ja) 通信システム
JP2003023440A (ja) ゲートウェイ装置、コンピュータ、通信評価システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080225

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20080303

A977 Report on retrieval

Effective date: 20100712

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100720

A02 Decision of refusal

Effective date: 20101116

Free format text: JAPANESE INTERMEDIATE CODE: A02