JP2014138264A - 車両用通信装置、情報処理装置 - Google Patents

車両用通信装置、情報処理装置 Download PDF

Info

Publication number
JP2014138264A
JP2014138264A JP2013005676A JP2013005676A JP2014138264A JP 2014138264 A JP2014138264 A JP 2014138264A JP 2013005676 A JP2013005676 A JP 2013005676A JP 2013005676 A JP2013005676 A JP 2013005676A JP 2014138264 A JP2014138264 A JP 2014138264A
Authority
JP
Japan
Prior art keywords
data
identification number
difference
message
vehicle communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013005676A
Other languages
English (en)
Other versions
JP5888252B2 (ja
Inventor
Masuzo Takemoto
益三 嵩本
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.)
Toyota Motor Corp
Original Assignee
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2013005676A priority Critical patent/JP5888252B2/ja
Publication of JP2014138264A publication Critical patent/JP2014138264A/ja
Application granted granted Critical
Publication of JP5888252B2 publication Critical patent/JP5888252B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Abstract

【課題】メモリ容量を削減可能な車両用通信装置を提供すること。
【解決手段】車載ネットワーク27を介してデータを受信する車両用通信装置100であって、所定範囲のデータ識別番号を有するデータを受信する受信手段13と、前記受信手段が受信したデータのデータ識別番号から予め定められた基準識別番号を減じることで番号差分を算出する差分算出手段1と、前記差分算出手段が算出した前記番号差分に対応づけられた、前記受信手段が受信したデータを記憶する記憶手段11,12と、前記記憶手段から読み出したデータの番号差分に前記基準識別番号を加えてデータ識別番号を復元し、データと共に、データを処理する処理手段に出力するデータ転送手段3と、を有することを特徴とする。
【選択図】図1

Description

本発明は、車載ネットワークを介してデータを受信する車両用通信装置に関する。
車載装置の電子制御化及び高機能化が進行しており、車両に搭載されるマイコンに要求される機能や性能もますます増大している。また、マイコンは例えばISO26262などの機能安全規格に適合することが望まれており、機能安全に対応するための機能をマイコンに搭載する必要が生じる。このため、車両の高機能化が進むと、高度な機能を機能安全規格に適合させるため、相乗的にマイコンの高機能化が必要になってしまう。具体的には、ROM及びRAMのサイズアップ・高速化などが必要になる。また、処理能力が高いCPUが必要になる場合もある。
このようなマイコンの高機能化は車両の高コスト化を招くため、車両メーカなどとしては車両の高機能化や機能安全規格への対応を怠ることなく、マイコンのコスト低減を図っている。このため、限られた容量のROMに記憶できるようにプログラムや、限られた容量のRAMで実行できるプログラムを開発している。
例えば、車載ネットワークでは、複数のマイコン(電子制御装置)間で通信することが従来から行われているが、高度な機能を実現するために、通信するデータ量や頻度が増大している。このような通信データは少なくとも処理のためにRAMを圧迫するおそれがある。
従来から、扱うデータ量を低減する技術が考えられている(例えば、特許文献1参照。)。特許文献1には、データのメッセージIDの値を昇順に並べ、隣り合うIDの差分値を差分IDとして、差分IDと中継先バスの対応を関係テーブルに記憶するゲートウェイが開示されている。これにより、メモリに記憶するルーティングテーブルの記憶量を小さくすることが可能になる。
特開2009−49944号公報
しかしながら、特許文献1に記載された技術では、メッセージIDを昇順に並べたり差分IDを求めるために、データをRAMに記憶する必要があるためRAM容量を削減することが困難であるという問題がある。
本発明は、上記課題に鑑み、メモリ容量を削減可能な車両用通信装置を提供することを目的とする。
本発明は、車載ネットワークを介してデータを受信する車両用通信装置であって、所定範囲のデータ識別番号を有するデータを受信する受信手段と、前記受信手段が受信したデータのデータ識別番号から予め定められた基準識別番号を減じることで番号差分を算出する差分算出手段と、前記差分算出手段が算出した前記番号差分に対応づけられた、前記受信手段が受信したデータを記憶する記憶手段と、前記記憶手段から読み出したデータの番号差分に前記基準識別番号を加えてデータ識別番号を復元し、データと共に、データを処理する処理手段に出力するデータ転送手段と、を有することを特徴とする。
メモリ容量を削減可能な車両用通信装置を提供することができる。
マイコン同士が車載ネットワークを介して通信する際に、マイコンがデータを受信する動作とそのデータ保存方法を示す図の一例である。 本実施形態の通信方法が適用されうるマイコンの概略構成図の一例である。 通信プロトコルのメッセージフォーマットの一例を示す図である。 マイコンがメッセージを送受信する場合の基本的な処理手順を示すフローチャート図の一例である。 マスク値テーブルを模式的に説明する図の一例である。 バッファBOX番号と通信コンポーネントを対応づけるコンポ指定テーブルの一例を示す図である。 マイコンがメッセージを送信する動作とそのデータ保存方法を示す図の一例である。 通信コンポーネント1〜3が生成するメッセージIDを模式的に説明する図の一例である。 基準IDの決定方法を説明する図の一例である。 マイコン同士が車載ネットワークを介して通信する際に、マイコンがデータを受信する動作とそのデータ保存方法を示す図の一例である(従来図)。
以下、本発明を実施するための形態について図面を参照しながら説明する。しかしながら、本発明の技術的範囲が、本実施の形態に限定されるものではない。
〔概略的な特徴〕
本願を説明するため、まず、図10を参照して従来のRAMの使用例について説明する。図10はマイコン同士が車載ネットワークを介して通信する際に、マイコンがデータを受信する動作とそのデータ保存方法を示す図の一例である。
通信コントローラ13には、メッセージボックス(以下、MBOXという)毎にマイコンが受信すべきメッセージIDが設定されている。本実施形態では最小のメッセージIDをMIN_ADDR、最大のメッセージIDをMIN_ADDRとする。通信コントローラ13の各MBOXはMIN_ADDR〜MAN_ADDRの範囲内のメッセージIDのデータのみを受信する。MBOXの数は、通信コントローラ13によって異なるが、例えば最大で256個である。以下、MBOXの番号をMBOX[i]で表す。
通信コントローラ13がMBOXにメッセージを受信すると、通信処理部14はMBOX[i]のメッセージを一次バッファ12に記憶する。一次バッファ12はRAMに配置されている。一次バッファ12には例えば最大256個のバッファBOXが用意されている。バッファBOXの番号をバッファBOX[i]で表す。
通信処理部14は、機能ごとに分けて作成されており、以下では、通信処理部1〜3という場合がある。通信処理部14は複数のマイコンに共通に搭載されるソフトウェアであり、そのうちの通信処理を行うソフトウェア(ミドルウェアやデバイスドライバなどと呼ばれる場合がある)である。同様に、受信されたメッセージを処理する通信コンポーネント15も機能ごとに分けて作成されており、以下では、通信コンポーネント1〜3という場合がある。
各メッセージを処理する通信コンポーネント15は予め決まっており、バッファBOX[i]と通信コンポーネント1〜3の対応も定められている。通信処理部1はメッセージのメッセージIDに基づき通信コンポーネント1〜3を特定し、通信コンポーネントに対応したバッファBOXに記憶する。よって、MBOX[i]とバッファBOX[i]は同じとは限らず、複数のMBOXが1つのバッファBOXと対応する場合がある。
バッファBOXのメッセージは、二次バッファ11に登録される。二次バッファ11はRAMに配置されている。二次バッファは先入れ先出し方式のQue構造になっている。以下、単にQueという。通信処理部2は、バッファBOXに格納された順番に、又は、バッファBOX(メッセージ)の優先度を考慮して、バッファBOXのメッセージをQueに登録する。Queの段数は例えば128個である。
通信処理部2は、メッセージ(メッセージID、DLC、DATA)及びコンポ指定をQue[i][j]に格納する。Que[i][j]の[i]がバッファBOXの番号であり、[j]がQueの番号である。コンポ指定は、通信コンポーネント15を指定する情報であり、通信処理部2はバッファBOX番号に基づきコンポ指定を決定する。
通信処理部3は、Queに先に登録されたものからメッセージを読み出して、コンポ指定に基づき通信コンポーネント1〜3に分配する。通信コンポーネント1〜3は例えば診断用のプログラム、通信処理用のプログラム、ネットワーク上のECUの起動を管理するプログラムなどである。
このように、多くのバッファBOXと多段のQueを有することで、受信漏れを低減できるので、通信の安全性/信頼性を向上させることができる。しかし、安全性を高めようとするとより冗長になるためRAMのサイズも増大してしまう。そこで、本願では以下のようにメッセージIDの容量を低減することで通信の安全性/信頼性を維持したまま、RAMサイズの増大を抑制する。
図1は、マイコン同士が車載ネットワークを介して通信する際に、本実施形態のマイコン100がデータを受信する動作とそのデータ保存方法を示す図の一例である。図10と比較すると、バッファBOXの数及びQueの段数は同じだが、バッファBOX及びQueのサイズが異なっている。
具体的には、バッファBOX及びQueはメッセージIDの代わりに、「MBOX番号」と「ID差分」を有する。MBOXの数が全部で256だとすると、8bitあればビット数として足りることになる。ID差分は、例えばMIN_ADDRと各メッセージIDの差である。例えば、MIN_ADDRと同じメッセージIDのメッセージのID差分はゼロになる。また、MAX_ADDRと同じメッセージIDのメッセージのID差分は「MAX_ADDR−MIN_ADDR」になる。
したがって、ID差分として確保すべきビット数は「MAX_ADDR−MIN_ADDR」により決定される。例えば、1つのMBOXが16種類のメッセージを受信し、各メッセージIDが1ずつ異なっている場合、「MAX_ADDR−MIN_ADDR=16」なので、ID差分に必要なビット数は4となる。したがって、一例として、バッファBOX及びQueのそれぞれで、「MBOX番号」と「ID差分」のために「8+4=12」ビット確保すればよい。
メッセージIDのビット数は従来のCAN(Controller Area Network)通信では11ビットであるが、図10に示したように、メッセージIDのビット数を増やすことが考えられている。メッセージIDを増やすことで、ネットワーク上を流れるメッセージの種類を増やしたり、送受信の高度な制御が可能になる。例えば、メッセージIDが32ビットに拡張された場合と比較すると、「32−12=20」ビットとなるので、本実施形態のマイコン100はバッファBOX及びQueの1つのメッセージにつき19ビットのデータ量を削減することが可能になる。バッファBOX及びQueはRAMに配置されているので、メッセージIDを拡張してもRAMのサイズが増大することを抑制できる。
〔構成例〕
図2は、本実施形態の通信方法が適用されうるマイコン100の概略構成図の一例を示す。マイコン100はシステムバスB1に接続された、CPU21、RAM22、ROM23、INTC24、WDT25、DMAC26及び通信コントローラ13を有している。この他、マイコン100はタイマ、UARTなどの各種のI/O、電源回路、他のマイコンと通信するためのCAN(Controller Area Network)コントローラなどの通信装置など、マイコンに一般的な構成を有している。
マイコン100は、ECU(Electronic Control Unit)に搭載されることが想定されているがその用途は車両に限定されない。車載されるECUには、その主要な機能により、エンジンECU、ブレーキECU、ハイブリッドECU、パワーマネージメントECU、ボディECU、ナビゲーションECU(AV・情報処理ECU)、ゲートウェイECU等の種類がある。本実施例のマイコン100はECUの機能の違いに影響されず搭載されることが可能である。また、複数の機能が1つに統合されたECUにマイコン100を搭載してもよい。また、1つのECUが複数のマイコンを搭載していてもよい。
CPU21は、ROM23に記憶されたプログラムを実行することでマイコン全体を制御する。RAM22にはプログラムやデータが展開され、RAM22はCPU21がアクセスする作業メモリになる。RAM22は後述する一次バッファや二次バッファが配置される。但し、一次バッファや二次バッファは不揮発メモリ又は揮発メモリのどちらに記憶されてもよい。また、ROM23にはプログラムの他、プラットホームが記憶されている。プラットホームは、例えばOSやデバイスドライバなどである。OSとしては、OSEK(Open system together with interfaces for automotive electronics)、AUTOSAR(AUTomotive Open System Architecture) OSなどのリアルタイムOSがあるが、これらに限定されるものではない。
INTC24は割込みマスク・マスクの解除などの設定が可能なレジスタと割込み要求が設定されるレジスタなどを有し、レジスタを監視して、周辺機器からの割り込み要求を割込みの優先順位に基づき調停してCPU21に通知する。これによりCPU21は、例えばISRを実行して、割込みした周辺機器に応じて定められている処理を行う。本実施例では例外発生も割り込みの一態様として説明する。
WDT25は、動作クロックをカウントして計測した時間が予め定められたリセット時間に達すると(オーバーフローすると)、異常を検出する回路である。WDT25がオーバーフローすると、例えばマイコン100がリセットされるなどのフェールセーフが行われる。DMAC26は、RAM22と周辺回路の間やRAM22内で、CPU21を介することなくデータを転送する。
通信コントローラ13は、マイコン100が通信バス27に接続された他のECUと通信するための通信回路である。通信コントローラ13はメッセージを受信するとINTC24を介してCPU21に通知する。これにより、通信処理部14が受信処理を開始する。また、CPU21がメッセージを送信する際は、アプリケーションにより指定された通信コンポーネント15がメッセージを作成し、通信処理部14に送信を要求する。この後は、受信時と逆の手順で通信処理部1〜3が送信処理を行う。
なお、通信コントローラ13のレジスタには、MBOX毎に受信すべきメッセージID(MIN_ADDR〜MAX_ADDR)が登録されている。通信コントローラ13は通信バス27を流れるメッセージのメッセージIDを監視し、それが登録されたメッセージIDの範囲である場合に対応するMBOXに受信する。
〔メッセージのフォーマット〕
図3(a)は、CAN通信におけるメッセージのフォーマットの一例を示す図である。SOFはCANフレームの先頭を示す。メッセージID(CANの場合はCANID)はデータを識別するための識別子であり、通信バス27の使用権を調停する際にも使用される。RI,TDr、RE0は制御用bitで固定値である。DLCはDATAフレームが格納するデータの長さを示す。DATAには送信対象のデータが格納される。CRCはエラー検出用の巡回冗長符号である。CRCの次の1bitはCRCデリミタと呼ばれ、区切り用のbitである。ACKスロットは、受信側のECUが正常受信を伝えるための1bitである。ACKデリミタは区切り用の1bitである。EOFは送信の完了を示す。
SOF、RI,TDr、RE0、CRCデリミタ、ACKスロット、ACKデリミタ、EOFは、通信コントローラ13が通信制御に利用した後は不要なので、RAM22には格納されない。CRCについてはどの段階でエラー検出するかによるが、通信コントローラ13がMBOXに受信した際に行えば、RAM22に格納する必要はない。このため、RAM22には、図1に示したメッセージID、DLC、及び、DATAが1つのメッセージとして格納される。なお、CRCをメッセージの一部として格納してもよい。
図3(b)はFlexRay通信におけるメッセージのフォーマットの一例を示す図である。Reserved bitは予備ビットである。Payload preamble indicatorは次述するペイロード・セグメント内に特定のデータが含まれるか否かを示す。Null frame indicatorは、ペイロード・セグメント内のデータフレームがNullか否かを示す。Sync frame indicatorは、メッセージが同期フレームか否かを示す。Startup frame indicatorはメッセージがスタートアップフレーム(起動したことを示す)かどうかを示す。Frame IDは、フレームIDを定義する。Lengthは、ペイロードセグメントのデータ長を示す。Header CRCはヘッダー部のCRC値が格納されている。サイクルカウンタはデータを転送しているノードのサイクル・カウンタを示す。ペイロード・セグメントには、最大で254 バイトのデータが格納される。トレイラ・セグメントは、ヘッダー全体とペイロードのCRC値が格納される。
CANと同様に先頭の5bit、ヘッダーCRC、サイクルカウント、及び、トレーラセグメントは不要になるので、MBOXにはFrame ID、Length及びペイロードセグメントが格納される。Frame IDがメッセージIDに対応する。
このように、本願は通信プロトコルが変化しても適用可能であり、これらの他、LIN(Local Interconnect Network)やイーサネット(登録商標)等の通信プロトコルにおいても、本実施形態のメッセージIDの圧縮方法を適用できる。
〔処理の詳細〕
図4は、マイコン100がメッセージを送受信する場合の基本的な処理手順を示すフローチャート図の一例である。図4の手順はメッセージの受信時と送信時に共通であるが、受信時から説明する。適宜、図1を参照されたい。
<STEP1 メッセージIDの変換>
通信処理部1は、MBOXに記憶されたメッセージのメッセージIDをID差分に変換する。
ID差分=メッセージID−基準ID
基準IDは、例えばMIN_ADDRである。マイコン100の起動時、初期設定を行うプログラムが通信コントローラ13のMBOXにメッセージIDの範囲を設定する。この範囲の最小のメッセージIDがMIN_ADDR、最大のメッセージIDがMAX_ADDRである。通信コントローラ13の各MBOXは、メッセージIDがMIN_ADDRからMAX_ADDRの範囲内のメッセージのみを受信する。このような受信方法をメッセージのマスク処理という。例えば、MBOX[0]のMIN_ADDRが100h、MAX_ADDRが120hの場合、MBOX[0]は100h〜120hのメッセージIDのメッセージのみを受信する。
そして、本実施例では基準IDを例えばMIN_ADDRとする。通信処理部1は少なくともMIN_ADDRを予め保持しているか、初期設定を行うプログラムが参照するマスク値テーブルのMIN_ADDRを読み出す。
図5はマスク値テーブルのうちMIN_ADDRを模式的に説明する図の一例である。各MBOX毎にMIN_ADDRが登録されている。MIN_ADDR[0]はMBOX[0]の基準IDであり、以下、MIN_ADDR[1]〜MIN_ADDR[255]が各MBOXの基準IDである。通信処理部1はMBOX番号に基づき基準IDを読み出す。
・ID差分の算出例
受信したメッセージIDが110hの場合、ID差分は以下のように算出される。
ID差分=110h−100h(基準ID)=10h
なお、基準IDは、例えばMAX_ADDRでもよい。この場合は、以下のようにID差分を算出する。
ID差分=|メッセージID−基準ID(MAX_ADDR)|
すなわち、メッセージIDと基準IDの差の絶対値を求めれば、MAX_ADDRからでもID差分を算出できる。また、「ID差分=基準ID(MAX_ADDR)−メッセージID」としてもよい。
続いて、バッファBOXとQueにおいて確保すべきID差分のビット数について説明する。
ID差分のビット数=MAX_ADDR−MIN_ADDRの算出結果のビット幅
例えば、MAX_ADDR=120h、MIN_ADDR=100hの場合、
120h−100h=20h となる。
したがって、ID差分のビット数は6ビットである。
<STEP2 バッファ・Queへの格納>
通信処理部1は、メッセージが格納されたMBOXの番号を取得する。ID差分は算出済である。そして、通信処理部1はメッセージのメッセージIDに基づき通信コンポーネント1〜3を特定し、通信コンポーネント1〜3に対応したバッファBOXに記憶する。
図6は、バッファBOX番号と通信コンポーネントを対応づけるコンポ指定テーブルの一例を示す図である。コンポ指定テーブルによりバッファBOXを決定できる。バッファBOXに、MBOX番号、ID差分、DLC及びDATAが格納される。
この後、通信処理部2は、通信処理部1からの通知により、又は、通信処理部1に定期的に問い合わせるなどして、バッファBOXのメッセージをQueに格納する。格納時にはコンポ指定というフィールドを加える。コンポ指定は、コンポ(本実施例では3つだが、最大256個のコンポを指定できる)を指定する1バイトの情報である。
通信処理部2は、コンポ指定テーブルを参照して、バッファBOXの番号に対応づけられた通信コンポーネントのコンポ指定をQueに設定する。
<STEP3 メッセージIDの復元>
通信処理部3は、Queに格納されたメッセージのID差分をメッセージIDに復元する。
メッセージID=基準ID+ID差分
基準IDはSTEP1の基準IDと同じである。通信処理部3と通信処理部1は別のモジュールでも、互いに通信することや、通信処理部3がマスク値テーブルを参照することが可能なので、同じ基準IDを使用できる。通信処理部3はMBOX番号に基づきMBOXに専用の基準IDを特定する。
例えば、MIN_ADDR=100h、ID差分=10hの場合、
メッセージID=100h+10h=110h となる。
メッセージIDを復元すると、通信処理部3は、コンポ指定により特定した通信コンポーネント15を呼び出して、例えば引数としてメッセージID、DLC及びDATAを通信コンポーネント15に出力する。
〔送信時〕
図7は、本実施形態のマイコン100がメッセージを送信する動作とそのデータ保存方法を示す図の一例である。
<STEP1 メッセージIDの変換>
まず、通信コンポーネント1〜3はメッセージID、DLC及びDATAを生成して通信処理部3に送信を要求する。通信処理部3は基準IDに基づきID差分を算出する。送信時の基準IDも受信時とほぼ同様に、送信メッセージの最小メッセージIDとする。
図8は、通信コンポーネント1〜3が生成するメッセージIDを模式的に説明する図の一例である。多くの場合、設計者はECU(マイコン)毎にメッセージIDをまとめる(ある範囲に入るように設定される)ので、まとめられたメッセージIDの最小値を基準IDに決定することが可能になる。例えば、通信コンポーネント1はMessageA, MessageB, MessageC,…を送信する。通信コンポーネント2はMessage1, Message2, Message3,…を送信する。このように、各通信コンポーネントにより、送信するメッセージIDは決定されている。別のECUにおいても同様であり、通信コンポーネント1〜3が送信するメッセージIDはある範囲内に決まっている。
したがって、マイコン100が送信するメッセージのメッセージIDの最小値MIN_SENDと最大値MAX_SENDは、ECU(マイコン)と通信コンポーネント15によって定まる。通信処理部3はこの送信時の基準ID(例えばMIN_SEND)を予め保持している。
・ID差分の算出例
MIN_SENDが200h、MAX_SENDが250h、メッセージIDが230hの場合、ID差分は以下のようになる。
ID差分=メッセージID−基準ID
=230h−200h(基準ID)=30h
バッファBOXとQueにおいて確保すべきID差分のビット数について説明する。
ID差分のビット数=MAX_SEND−MIN_SENDの算出結果のビット幅
例えば、MAX_SEND=250h、MIN_SEND=200hの場合、
250h−200h=50h となる。
したがって、ID差分のビット数は7ビットであればよい。
<STEP2 バッファ・Queへの格納>
通信処理部3は、通信コンポーネント1〜3が作成したメッセージをQueに格納する。Queに格納される情報のうち、ID差分、DLC、DATA、はすでに作成されている。MBOX番号は、受信時にメッセージIDによりMBOX番号が決まったのと同様に、通信処理部3がメッセージIDに基づき作成する。さらにメッセージを作成した通信コンポーネントを考慮してもよい。コンポ指定は、メッセージを作成した通信コンポーネント1〜3の識別情報である。
なお、STEP3で通信処理部1がメッセージIDを復元できるように、通信処理部3は、MBOX番号と基準IDの対応を保持しておく。
この後、通信処理部2は、Queに格納されたメッセージを古いものから先に、バッファBOXに格納する。通信処理部2は、図6のようなコンポ指定テーブルを参照して、コンポ指定に基づき特定したバッファBOXに、MBOX番号、ID差分、DLC及びDATAを格納する。
<STEP3 メッセージIDの復元>
通信処理部1は、バッファBOXに格納されたメッセージのID差分をメッセージIDに復元して、通信コントローラ13のMBOXに記憶する。メッセージIDは、受信時と同様に以下のようにして復元される。
メッセージID=基準ID+ID差分
基準IDはSTEP1の基準IDと同じである。通信処理部1は、通信処理部3からMBOX番号に紐づけられた送信時の基準ID(例えばMIN_SEND)を取得する。基準IDにID差分を加えることでメッセージIDを復元できる。
例えば、MIN_SEND=200h、ID差分が30hの場合、
メッセージID=200h+30h=230h となる。
〔RAMサイズの削減例〕
メッセージID:32ビット、DLC:3ビット、DATA:8バイト、コンポ指定:1バイト、Queの段数:128、バッファBOXの数:256、
の場合、QueとバッファBOXのサイズは以下のようになる。
・従来
Que:(32+3+64+8)×128=107ビット×128=1712バイト
バッファBOX:(32+3+64)×256=99ビット×256=3168バイト
・本実施例(n=4)
Que:(8+4+3+64+8)×128=87ビット×128=1392バイト
バッファBOX:(8+4+3+64)×256=79ビット×256=2528バイト
よって、使用されるRAM容量を、従来の4880バイトから、本実施例では3902バイトに低減できる。差としては960バイトであり、比率としては約20%、小さくできる。組み込み系のマイコンではこのような差は大変、大きい。また、車両に搭載されるマイコンの多くでこの効果を得られるので、車両全体としての効果はさらに大きくなる。なお、メッセージIDは32ビットでなければならないのではなく、32ビット未満(例えば29ビット)や32ビットより大きくてもよい。
以上説明したように、本実施形態の送受信方法は、通信コントローラ13の標準機能(メッセージIDがある範囲のメッセージのみを受信する)を利用して、ID差分を算出するので、通信コントローラ13にはほとんど変更なしに実現できる。また、通信の安全性/信頼性を維持したまま、RAMサイズの増大を抑制することができる。
本実施例では基準IDの設定例について説明する。
A.MBOX毎にマスクできない場合
マイコンによっては、例えば、MBOX[0]〜MBOX[100]、MBOX[101]〜MBOX[200]、MBOX[201]〜MBOX[255]のように、グループ毎にしかマスクを設定することしかできない。このようなマイコンでは、通信処理部1、3がMBOX毎にMIN_ADDRとMIN_SENDを自動的に判別する。
図9(a)は、MIN_ADDRの設定方法を模式的に説明する図の一例である。上下方向の矢印1〜3はMBOX[0]、MBOX[1]、MBOX[2]が受信するメッセージIDの範囲を示す。一定時間(例えば、10分、1時間、数時間、1日など)、通信コントローラ13がメッセージIDを受信すれば全てのメッセージを受信できるとしてよいので、各MBOXで一定時間に受信した全てのメッセージにおいて最小のメッセージIDを基準IDに決定する。
したがって、メッセージIDを監視することでMBOX毎に基準IDが設定される。以降は、実施例1と同様に、ID差分を算出し、メッセージIDを復元する。
B.全てのMBOXの基準IDを一律に同じ値とする
実施例1ではMBOX毎に基準IDが定められていたが、全てのMBOXに対し基準IDを一定値とすることもできる。例えば、MBOXの数が少ないマイコンなどでは、マスク値テーブルのサイズを削減できるという効果がある。
C.送受信頻度により基準IDを動的に変化させる
図9(b)は送受信頻度と基準IDの関係を模式的に示す図の一例である。上記のように、一定時間、通信コントローラ13がメッセージIDを受信すれば、メッセージIDの送受信頻度を求めることができる。図示するように、頻度が高いメッセージIDとメッセージIDの大きさに相関があれば、送受信頻度が閾値以上のメッセージIDと閾値未満のメッセージIDとに区分できる。そして、通信処理部1、3はこの閾値を基準IDに決定する。
通信コントローラ13が、頻度が高いメッセージIDを受信した場合、通信処理部1は次のようにしてID差分を算出する。
ID差分=メッセージID−基準ID(実施例1と同じ)
通信コントローラ13が、頻度が低いメッセージIDを受信した場合、通信処理部1はID差分を算出しない。この場合、予め確保してあるバッファBOXとQueにメッセージを記憶する。メッセージIDは例えば32ビットのままなので、バッファBOXやQueのサイズを削減できないが、送受信の頻度が少ないので確保する容量は、少なくてよい。例えば、以下のように確保する。
頻度高:Que128段、バッファBOX128個
頻度低:Que 1段、バッファBOX 1個
したがって、実施例1より増えたとしても従来よりは、はるかにRAM22のサイズを抑制できる。
送信時は、通信処理部3が、通信コンポーネント1〜3が作成するデータのメッセージIDに対し、送信頻度が閾値以上のメッセージIDと閾値未満のメッセージIDとに区分する。そして、頻度が高いメッセージIDの場合にだけID差分を算出する。
以上説明したように、本実施形態のマイコンは、メッセージIDよりデータ量が少ないID差分に対応づけてバッファに記憶されるため、バッファ容量(RAM)のサイズを低減できる。このため、メッセージIDが長くなったり、メッセージの送受信量が増えても、安定性/信頼性を維持したままコスト増を抑制できる。
11 二次バッファ(Que)
12 一次バッファ
13 通信コントローラ
14 通信処理部
15 通信コンポーネント
21 CPU
22 RAM
100 マイコン

Claims (9)

  1. 車載ネットワークを介してデータを受信する車両用通信装置であって、
    所定範囲のデータ識別番号を有するデータを受信する受信手段と、
    前記受信手段が受信したデータのデータ識別番号から予め定められた基準識別番号を減じることで番号差分を算出する差分算出手段と、
    前記番号差分に対応づけて、前記受信手段が受信したデータを記憶する記憶手段と、
    前記記憶手段から読み出したデータの前記番号差分に前記基準識別番号を加えてデータ識別番号を復元し、データと共にデータを処理する処理手段に出力するデータ転送手段と、
    を有することを特徴とする車両用通信装置。
  2. 前記基準識別番号は、前記受信手段が受信する前記所定範囲のデータ識別番号の上限又は下限である、
    ことを特徴とする請求項1記載の車両用通信装置。
  3. 前記差分算出手段は、前記受信手段が受信したデータのデータ識別番号を監視して、閾値以上の受信頻度のデータ識別番号を前記基準識別番号に決定し、
    前記基準識別番号以上のデータを前記受信手段が受信した場合、前記基準識別番号を減じることで前記番号差分を算出し、データと対応づけて前記記憶手段に記憶し、
    前記基準識別番号未満のデータを前記受信手段が受信した場合、前記番号差分を算出することなく、データ識別番号にデータを対応づけて前記記憶手段に記憶する、
    ことを特徴とする請求項1記載の車両用通信装置。
  4. 前記差分算出手段は、前記受信手段が受信したデータのデータ識別番号を監視して、前記所定範囲のデータ識別番号の上限又は下限を決定し、前記上限又は前記下限のデータ識別番号を前記基準識別番号に決定する、
    ことを特徴とする請求項1記載の車両用通信装置。
  5. 車載ネットワークを介してデータを送信する車両用通信装置であって、
    所定範囲のデータ識別番号のデータを作成するデータ作成手段からデータを取得し、データ識別番号から予め定められた基準識別番号を減じることで番号差分を算出する差分算出手段と、
    前記番号差分に対応づけて、前記データ作成手段か作成したデータを記憶する記憶手段と、
    前記記憶手段から読み出したデータの前記番号差分に前記基準識別番号を加えてデータ識別番号を復元し、データと共に送信手段に記憶するデータ転送手段と、
    記憶されたデータ識別番号とデータをネットワークに送信する送信手段と、
    を有することを特徴とする車両用通信装置。
  6. 前記基準識別番号は、前記データ作成手段が作成する前記所定範囲のデータ識別番号の上限又は下限である、
    ことを特徴とする請求項5記載の車両用通信装置。
  7. 前記差分算出手段は、前記データ作成手段が作成したデータのデータ識別番号を監視して、閾値以上の作成頻度のデータ識別番号を前記基準識別番号に決定し、
    前記基準識別番号以上のデータを前記データ作成手段が作成した場合、前記基準識別番号を減じることで前記番号差分を算出し、データと対応づけて前記記憶手段に記憶し、
    前記基準識別番号未満のデータを前記データ作成手段が作成した場合、前記番号差分を算出することなく、データ識別番号にデータを対応づけて前記記憶手段に記憶する、
    ことを特徴とする請求項5記載の車両用通信装置。
  8. 前記差分算出手段は、前記データ作成手段が作成したデータのデータ識別番号を監視して、前記所定範囲のデータ識別番号の上限又は下限を決定し、前記上限又は前記下限のデータ識別番号を前記基準識別番号に決定する、
    ことを特徴とする請求項5記載の車両用通信装置。
  9. 請求項1〜8いずれか1項記載の車両用通信装置と、
    データを処理するCPUと、
    前記記憶手段と、
    プログラムを記憶したプログラム記憶手段と、
    を有する情報処理装置。
JP2013005676A 2013-01-16 2013-01-16 車両用通信装置、情報処理装置 Active JP5888252B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013005676A JP5888252B2 (ja) 2013-01-16 2013-01-16 車両用通信装置、情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013005676A JP5888252B2 (ja) 2013-01-16 2013-01-16 車両用通信装置、情報処理装置

Publications (2)

Publication Number Publication Date
JP2014138264A true JP2014138264A (ja) 2014-07-28
JP5888252B2 JP5888252B2 (ja) 2016-03-16

Family

ID=51415565

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013005676A Active JP5888252B2 (ja) 2013-01-16 2013-01-16 車両用通信装置、情報処理装置

Country Status (1)

Country Link
JP (1) JP5888252B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9773354B2 (en) 2014-12-11 2017-09-26 Hyundai Motor Company Terminal mounted in vehicle, control method thereof, data center and control method thereof
CN113037650A (zh) * 2019-12-09 2021-06-25 北京灵汐科技有限公司 一种数据处理的方法、装置和电子设备

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019213081A (ja) * 2018-06-06 2019-12-12 ルネサスエレクトロニクス株式会社 半導体装置及び情報処理方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006106588A1 (ja) * 2005-03-31 2006-10-12 Fujitsu Limited フレーム転送装置
JP2009049944A (ja) * 2007-08-23 2009-03-05 Auto Network Gijutsu Kenkyusho:Kk 中継接続ユニット

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006106588A1 (ja) * 2005-03-31 2006-10-12 Fujitsu Limited フレーム転送装置
JP2009049944A (ja) * 2007-08-23 2009-03-05 Auto Network Gijutsu Kenkyusho:Kk 中継接続ユニット

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9773354B2 (en) 2014-12-11 2017-09-26 Hyundai Motor Company Terminal mounted in vehicle, control method thereof, data center and control method thereof
CN113037650A (zh) * 2019-12-09 2021-06-25 北京灵汐科技有限公司 一种数据处理的方法、装置和电子设备
CN113037650B (zh) * 2019-12-09 2022-11-18 北京灵汐科技有限公司 一种数据处理的方法、装置和电子设备

Also Published As

Publication number Publication date
JP5888252B2 (ja) 2016-03-16

Similar Documents

Publication Publication Date Title
EP3358788B1 (en) Illegality detection electronic control unit, vehicle onboard network system, and communication method
CN105981336B (zh) 不正常检测电子控制单元、车载网络系统以及不正常检测方法
US10326782B2 (en) Network monitoring device and computer program product
US9794286B2 (en) Network device, and data sending and receiving system
US10153825B2 (en) Vehicle-mounted control device
CN112003772B (zh) 通信系统以及通信控制方法
JP2006287738A (ja) ネットワークシステム
KR102286050B1 (ko) 차량 네트워크에서 진단 오류 방지를 위한 방법 및 장치
CN112075063B (zh) 用于车辆中的数据通信的网关
JP2013106200A (ja) 車両用通信中継装置、スリープ制御方法
JP5888252B2 (ja) 車両用通信装置、情報処理装置
JP6410914B1 (ja) シリアル通信システム
KR20100020253A (ko) 차량 네트워크에서의 메시지 전송 상태 진단 장치
KR20210066554A (ko) 차량 제어 장치 및 그 방법
JP2013236184A (ja) 車載通信システム、車載通信システムの通信異常監視方法、及び車載通信システムの通信異常監視プログラム
CN112533173B (zh) 用于确保数据完整性以保证操作安全的方法以及车对外界信息交互的装置
JP4361540B2 (ja) ゲートウェイ装置、データ転送方法及びプログラム
JP2019129512A (ja) 車載中継装置、中継方法、情報処理装置、情報処理システム、及び車両
JP2019009678A (ja) 車載通信ネットワークシステム
CN115150220A (zh) 控制器局域网装置
JP2009017154A (ja) 車載ゲートウェイ装置
US9485139B2 (en) Communication node, communication system, and method for performing a communication
JP6032174B2 (ja) 通信制御装置
WO2023233619A1 (ja) 中継装置
JP2015039924A (ja) 車載ネットワークシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150309

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151222

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160201

R151 Written notification of patent or utility model registration

Ref document number: 5888252

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151