JP2022091585A - 車両通信用中継装置、車両通信用中継方法及びプログラム - Google Patents

車両通信用中継装置、車両通信用中継方法及びプログラム Download PDF

Info

Publication number
JP2022091585A
JP2022091585A JP2020204501A JP2020204501A JP2022091585A JP 2022091585 A JP2022091585 A JP 2022091585A JP 2020204501 A JP2020204501 A JP 2020204501A JP 2020204501 A JP2020204501 A JP 2020204501A JP 2022091585 A JP2022091585 A JP 2022091585A
Authority
JP
Japan
Prior art keywords
data
unit
vehicle communication
inspection
relay device
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
JP2020204501A
Other languages
English (en)
Inventor
邦裕 宮内
Kunihiro Miyauchi
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 JP2020204501A priority Critical patent/JP2022091585A/ja
Priority to CN202111254329.7A priority patent/CN114629528A/zh
Priority to US17/518,500 priority patent/US20220183109A1/en
Publication of JP2022091585A publication Critical patent/JP2022091585A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B3/00Line transmission systems
    • H04B3/02Details
    • H04B3/36Repeater circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/28Timers or timing mechanisms used in protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/04Terminal devices adapted for relaying to or from another terminal or user

Abstract

【課題】処理負荷の増加を抑制することができる車両通信用中継装置、車両通信用中継方法及びプログラムを得る。【解決手段】車両通信用中継装置10は、車両通信用のデータを受信する受信部40と、受信部40で受信したデータを他のバスへ転送する中継処理部42と、受信部40で受信したデータを一時的に保存する保存処理部44と、保存処理部44で保存された複数のデータをまとめて1つの検査用データに変換するデータパッキング部50と、を有している。このように複数のデータをまとめて1つの検査用データに変換することで、ヘッダが少なくなり、処理負荷を低減することができる。【選択図】図2

Description

本発明は、車両通信用中継装置、車両通信用中継方法及びプログラムに関する。
特許文献1には、中継対象データの検査を行う演算処理部を備えた通信中継装置が開示されている。この特許文献1の通信中継装置では、演算処理部の負荷が閾値以下であれば、データの検査を行ってからデータを中継する。一方、演算処理部の負荷が閾値を超えている場合は、データを中継データ格納部へ送信しつつデータを中継し、負荷が低い時に中継データ格納部に格納されたデータの検査が行われる。
特開2011-61415号公報
しかしながら、車載ネットワークでは、小さいサイズのデータを頻繁に送信するため、データを検査用の中継データ格納部へ送信することで処理負荷が増加し、データの中継が遅延する虞がある。
本発明は、処理負荷の増加を抑制することができる車両通信用中継装置、車両通信用中継方法及びプログラムを得ることを目的とする。
請求項1に係る車両通信用中継装置は、車両通信用のデータを受信する受信部と、前記受信部で受信した前記データを他のバスへ転送する中継処理部と、前記受信部で受信した前記データを一時的に保存する保存処理部と、前記保存処理部で保存された複数の前記データをまとめて1つの検査用データに変換するデータパッキング部と、を有する。
請求項1に係る車両通信用中継装置では、受信部によって車両通信用のデータが受信される。また、受信されたデータは、中継処理部によって他のバスへ転送される。このように、受信したデータを順次転送することによって、データを検査してから転送する場合よりも中継の遅延を抑制することができる。
また、受信されたデータは、保存処理部によって一時的に保存される。そして、データパッキング部は、保存された複数のデータをまとめて1つの検査用データに変換する。これにより、データをまとめた分だけヘッダが少なくなり、処理負荷を低減することができる。
請求項2に係る車両通信用中継装置は、請求項1において、前記検査用データを検査用のデータ格納部へ送信する検査用データ送信部をさらに備えている。
請求項2に係る車両通信用中継装置では、データを個別に送信する場合と比較して、検査用データの送信回数を減らすことができる。
請求項3に係る車両通信用中継装置は、請求項2において、前記検査用データ送信部は、前記受信部で用いた通信プロトコルよりも帯域の広い通信プロトコルにより前記検査用データを送信する。
請求項3に係る車両通信用中継装置では、帯域の広い通信プロトコルを用いて検査用データを送信することで、一度に多くのデータを送信することができる。
請求項4に係る車両通信用中継装置は、請求項2又は3において、前記データパッキング部は、前記保存処理部によって保存された前記データの合計データサイズが所定の閾値以上となった場合、又は前記検査用データ送信部による前記検査用データの送信から所定時間が経過した場合に、保存処理部で保存された前記データをパッキングする。
請求項4に係る車両通信用中継装置では、保存処理部によって保存されたデータの合計データサイズが所定の閾値以上となった場合に、データパッキング部がデータをパッキングすることで、保存されたデータのオーバーフローを回避することができる。また、データ格納部へ送信してから所定時間が経過した場合に、データパッキング部がデータをパッキングすることで、周期的に検査用データをパッキングして送信することができる。
請求項5に係る車両通信用中継装置は、請求項2~4の何れか1項において、前記中継処理部による中継処理後の処理負荷を取得する処理負荷取得部をさらに備え、前記検査用データ送信部は、前記処理負荷取得部によって取得された処理負荷が所定の閾値以上であった場合に、前記データ格納部への送信を一時的に停止する。
請求項5に係る車両通信用中継装置では、処理負荷が所定の閾値以上であった場合にデータ格納部への送信を一時的に停止することにより、中継処理部によるデータの転送が遅延するのを抑制することができる。
請求項6に係る車両通信用中継装置は、請求項1~5の何れか1項において、前記受信部で受信した前記データに受信バス情報を付加する受信バス情報付加部をさらに備えている。
請求項6に係る車両通信用中継装置では、受信バス情報付加部によって受信バス情報が付加されることで、検査時に受信バス情報を参照して不正データの判定に利用することができる。
請求項7に係る車両通信用中継装置は、請求項1~6の何れか1項において、前記受信部で受信した前記データに対して、受信タイミングに基づく受信タイミング情報を付加する受信タイミング付加部をさらに備えている。
請求項7に係る車両通信用中継装置では、受信タイミング付加部によって受信タイミング情報が付加されることで、検査時に受信タイミング情報を参照して不正データの判定に利用することができる。
請求項8に係る車両通信用中継装置は、請求項7において、前記受信タイミング情報は、データの送信時にリセットされるカウンタタイマ値である。
請求項8に係る車両通信用中継装置では、カウンタタイマ値を受信タイミング情報として付加することにより、グリニッジ標準時(GMT)などの絶対時刻を用いる場合と比較して、外部から時刻を取得するなどの機能が不要となる。
請求項9に係る車両通信用中継装置は、請求項2~6の何れか1項において、前記検査用データ送信部は、所定の周期で前記検査用データを送信する。
請求項9に係る車両通信用中継装置では、所定の周期で検査用データを送信することで、受信タイミング情報を付加せずに済み、データサイズを少なくすることができる。また、周期的に検査用データを送信すれば、周期の違いによって受信タイミングが判別可能となり、この受信タイミングに基づいて不正データを判定することができる。
請求項10に係る車両通信用中継方法は、車両通信用のデータを受信し、受信した前記データを他のバスへ転送し、かつ、一時的に保存し、保存された複数の前記データをまとめて1つの検査用データに変換する。
請求項11に係るプログラムは、車両通信用のデータを受信し、受信した前記データを他のバスへ転送し、かつ、一時的に保存し、保存された複数の前記データをまとめて1つの検査用データに変換する。
以上説明したように、本発明に係る車両通信用中継装置、車両通信用中継方法及びプログラムによれば、処理負荷の増加を抑制することができる。
実施形態に係る中継装置のハードウェア構成を示すブロック図である。 実施形態におけるCPUコアの機能構成を示すブロック図である。 実施形態におけるCPUコアの機能構成を示すブロック図である。 実施形態におけるCPUコアの中継処理の流れの一例を示すフローチャートである。 実施形態におけるCPUコアの検査処理の流れの一例を示すフローチャートである。 中継情報の一例を示す図である。 実施形態における検査用データのフレーム構造の一例を示す図である。 (A)は検査用データのフレーム構造の第1変形例を示す図であり、(B)は検査用データのフレーム構造の第2変形例を示す図である。
実施形態に係る中継装置10について、図面を参照して説明する。
(中継装置10のハードウェア構成)
図1に示されるように、本実施形態の車両通信用中継装置10(以下、適宜「中継装置10」と称する。)は、CPUコア12、CPUコア14及びSRAM16を含んで構成されている。また、中継装置10は、車両に搭載されており、例えば、ゲートウェイ機能付きのECU(Electronic Control Unit)である。
中継装置10は、複数の通信インタフェースを備えている。具体的には、中継装置10は、CAN(Controller Area Network)のチャネルから受信したCANデータを別のCANのチャネルに中継するための複数のCANコントローラ18を備えている。複数のCANコントローラ18は、バス23を介してCPUコア12と電気的に接続されており、CANトランシーバ20からCANデータを受信する。また、バス23には、LIN(Local Interconnect Network)データを受信するためのLINコントローラ22が接続されており、LINコントローラ22は、LINトランシーバ24からLINデータを受信する。
CPUコア12は、SRAM(Static Random Access Memory)16と接続されており、受信したCANデータをSRAM16に一時的に保存する。また、SRAM16には、ルーティングマップを表す中継情報が記憶されている。
図6には、中継情報の一例が示されている。図6に示されるように、中継情報は、例えば、テーブル形式の情報であり、CANIDと、受信したバスを表す受信バス情報と、中継先のバスを表す中継バス情報とが対応付けられている。
CPUコア12は、受信したCANデータからCANIDを参照し、実際にCANデータを受信した受信バスと、中継情報に記憶されている受信バス情報とが一致するかを確認する。CPUコア12は、CANデータを受信した受信バスと受信バス情報とが一致すれば、対応する中継バス情報に基づいてCANデータを転送する。また、CANデータを受信した受信バスと受信バス情報とが一致しなければ、中継処理を実施しない。
一方、CPUコア14は、CPUコア12と電気的に接続されている。また、CPUコア14は、DRAM(Dynamic Random Access Memory)26にアクセスするためのDRAMコントローラ28と接続されている。
さらに、中継装置10には、PCIe(Peripheral Component Interconnect express)30及びUSB(Universal Serial Bus)32を備えている。中継装置10は、PCIe30及びイーサネットスイッチ34を介してイーサネットフレーム形式のデータを受信及び送信する。さらに、中継装置10は、USB32及びUSBphy36を介して種々の形式のデータを受信及び送信する。
(中継装置10の機能構成)
中継装置10は、上記のハードウェア資源を用いて、各種の機能を実現する。中継装置10が実現する機能構成について図2及び図3を参照して説明する。図2には、CPUコア12が実現する機能構成が示されており、図3には、CPUコア14が実現する機能構成が示されている。
(CPUコア12の機能構成)
図2に示されるように、中継装置10のCPUコア12は、機能構成として、受信部40、中継処理部42、保存処理部44、受信タイミング付加部46、受信バス情報付加部48、データパッキング部50、処理負荷取得部52及び検査用データ送信部54を含んで構成されている。各機能構成は、CPUコア12がプログラムを読み出して実行することにより実現される。
受信部40は、車両通信用のデータを受信する。本実施形態の受信部40は、中継装置10の外部からCANデータを受信する。一例として、受信部40は、CANコントローラ18を介して、エンジンECU、ブレーキECU、ステアリングECUなどのCAN通信系の制御装置からCANデータを受信する。
中継処理部42は、受信部40で受信したCANデータを他のCANチャネルへ転送する。具体的には、中継処理部42は、図6に示された中継情報を参照し、受信したCANデータのCANIDと受信バス情報に対応する中継バスへCANデータを転送する。
図2に示されるように、保存処理部44は、受信部40で受信したCANデータを一時的にSRAM16に保存する。すなわち、受信部40で受信したCANデータは、中継処理部42によって転送されると共に、保存処理部44によりSRAM16に一時的に保存される。
受信タイミング付加部46は、受信部40で受信したCANデータに対して、受信タイミングに基づく受信タイミング情報を付加する。受信タイミング情報としては、種々の情報を用いることができる。本実施形態では一例として、受信タイミング付加部46は、カウンタタイマ値を受信タイミング情報としてCANデータに付加する。カウンタタイマ値は、所定のタイミングでカウントを開始し、リセットの指示によってカウントがリセットされるタイミング情報である。この他に、グリニッジ標準時(GMT)及び協定世界時(UTC)などを取得し、これらの絶対時刻をタイミング情報として採用してもよい。
受信バス情報付加部48は、受信部40で受信したCANデータに受信バス情報を付加する。受信バス情報付加部48によって付加された受信バス情報は、検査時に参照され、不正データの検出に用いられる。
データパッキング部50は、保存処理部44で保存された複数のCANデータをまとめて1つの検査用データにパッキング(変換)する。本実施形態では一例として、データパッキング部50は、受信部40で用いたCANデータをパッキングしてEthernetのフレーム形式とする。
図7には、CANデータをパッキングしたEthernetフレーム構造の一例が示されている。この図7に示されるように、フレーム構造は、ヘッダ70、時刻情報72、データ部74、データ部76、データ部78及びFSC(Frame Check Sequence)79を含んで構成されている。
ヘッダ70及び時刻情報72は、1つのフレーム構造に対して1つ設定される。また、時刻情報72とは、受信タイミング情報として受信タイミング付加部46で付加されるカウンタタイマ値である。
データ部74は、受信バス情報付加部48で付加された受信バス情報74Aと、CANID及びデータフィールドを含むCANデータ74Bとで構成されている。また、データ部76は、受信バス情報76AとCANデータ76Bとで構成されており、データ部78は、受信バス情報78AとCANデータ78Bとで構成されている。
なお、データパッキング部50は、図7に示されるフレーム構造に限定されず、他のフレーム構造に変換してもよい。例えば、データパッキング部50は、図8(A)及び図8(B)に示されるフレーム構造に変換してもよい。
図8(A)に示される第1変形例のフレーム構造では、3つのデータ部74、データ部76及びデータ部78のそれぞれに対して、時刻情報が付加されている。具体的には、時刻情報72は、CANデータ74Bを受信した受信タイミング情報であり、時刻情報75は、CANデータ76Bを受信した受信タイミング情報であり、時刻情報77は、CANデータ78Bを受信した受信タイミング情報である。この図8(A)に示されるフレーム構造では、各CANデータの受信タイミング情報が付加されているため、検査時に正確な受信タイミング情報を参照することができる。
一方、図(B)に示される第2変形例のフレーム構造では、図7のフレーム構造に対して、時刻情報72が付加されていない。例えば、一定の周期でデータを送信する場合、かつ、データを送信する周期が短い場合は、データの送信タイミングを時刻情報として利用することができるため、フレーム構造に時刻情報72を付加しなくても受信タイミングの異常を検出することができる。
また、本実施形態のデータパッキング部50は、保存処理部44によって保存されたCANデータの合計データサイズが所定の閾値以上となった場合、又は後述する検査用データ送信部54によって検査用データが送信されたから所定時間が経過した場合に、CANデータをパッキングする。
図2に示されるように、処理負荷取得部52は、中継処理部42により中継処理後の処理負荷を取得する。処理負荷の計測は、一般的に知られている種々の方法を採用することができる。例えば、周期的に同一の処理を実施し、処理完了までに要した時間が長いほど処理負荷が大きくなるような算出方法を用いて処理負荷を計測してもよい。
検査用データ送信部54は、データパッキング部50によってパッキングされた検査用データをデータ格納部へ送信する。本実施形態では一例として、図1に示されるDRAM26を検査用のデータ格納部として設定している。このため、検査用データ送信部54は、SRAM16に保存されている検査用データをDRAM26へ送信する。
ここで、検査用データ送信部54は、受信部40で用いた通信プロトコルよりも帯域の広い通信プロトコルにより検査用データを送信する。本実施形態では一例として、受信部40ではCANデータを受信するためにCANプロトコルを用いているのに対して、検査用データ送信部54は、仮想Ethernet通信により検査用データをDRAM26へ送信する。仮想Ethernet通信では、物理的なEthernetチャネルを使わず、中継装置10の内部バスを介してEthernetフレーム構造の検査用データを送信するものである。なお、仮想Ethernet通信に限定されず、物理的なEthernetチャネルを用いて、中継装置10の外部を介してDRAM26へ検査用データを送信してもよい。
また、本実施形態の検査用データ送信部54は、処理負荷取得部52によって取得された処理負荷が所定の閾値以上であった場合に、データ格納部への送信を一時的に停止する。すなわち、検査用データ送信部54によるデータの送信に対して、中継処理部42による中継処理を優先するように制御されている。
(CPUコア14の機能構成)
図3に示されるように、中継装置10のCPUコア14は、機能構成として、検査用データ取得部60、データアンパッキング部62、検査処理部64、検査結果記録部66及び検査結果送信部68を含んで構成されている。各機能構成は、CPUコア14がプログラムを読み出して実行することにより実現される。
検査用データ取得部60は、周期的にDRAM26にアクセスし、Ethernetフレーム構造の検査用データを取得する。
データアンパッキング部62は、取得した検査用データをアンパッキングすることで、フレーム構造から個別のCANデータを取出し可能とする。
検査処理部64は、個別のCANデータの検査を行う。本実施形態では一例として、検査処理部64は、CANデータ74B、76B、78Bのそれぞれに対して、CANIDが正しいIDであるか不正なIDであるかを検査する。また、検査処理部64は、受信タイミング付加部46で付加された受信タイミングと、受信バス情報付加部48で付加された受信バス情報とを参照し、正しい情報であるか不正な情報であるかを検査する。さらに、検査処理部64は、CANデータ74B、76B、78Bのそれぞれに対して、データフィールドの数値異常などを確認する。
検査結果記録部66は、検査処理部64で検査した結果をDRAM26などの所定の記憶部にログとして記録する。検査結果送信部68は、検査処理部64で異常が発見された場合に、外部のセキュリティセンターへ通知を行う。なお、検査結果送信部68は、セキュリティセンターへの通知に代えて又は加えて、ルーティングマップを表す中継情報を変更する処理を行ってもよい。また、車室内のモニタなどのユーザインタフェースに対して異常の表示を行ってもよい。このように、CPUコア14は、ファイルシステムを搭載している。
(作用)
次に、本実施形態の作用を説明する。先ず、CPUコア12による中継処理の一例を説明し、続いてCPUコア14による検査処理の一例について説明する。その後、本実施形態の中継装置10の作用について説明する。
(中継処理の一例)
図4は、中継装置10のCPUコア12による中継処理の流れの一例を示すフローチャートである。この中継処理は、CPUコア12がプログラムを読み出して、SRAM16などに展開して実行することによって実行される。
図4に示されるように、CPUコア12は、ステップS102でCANデータを受信する。具体的には、CPUコア12は、受信部40の機能により外部のECUなどからCANデータを受信する。
CPUコア12は、ステップS104で受信したCANデータを転送する。具体的には、CPUコア12は、中継処理部42の機能によって、図6に示された中継情報を参照してCANデータを他のCANチャネルへ転送する。
CPUコア12は、ステップS106で受信したCANデータに対して、受信タイミング情報及び受信バス情報を付加する。例えば、CANデータ74Bを受信した場合、CPUコア12は、受信タイミング付加部46及び受信バス情報付加部48の機能により、CANデータ74Bに対して、時刻情報72及び受信バス情報74Aを付加する。
CPUコア12は、ステップS108で受信したCANデータをバッファに保存する。具体的には、保存処理部44の機能により、受信部40で受信したCANデータを一時的にSRAM16に保存する。このとき、保存処理部44は、CANデータに時刻情報及びバス情報を付加した状態でSRAM16に保存する。
CPUコア12は、ステップS110でデータサイズが所定の閾値以上であるか否かについて判定する。具体的には、CPUコア12は、バッファであるSRAM16に一時的に保存された複数のCANデータの合計データサイズを取得し、合計データサイズが予め設定された所定の閾値以上であれば、ステップS114の処理へ移行する。ステップS114の処理については後述する。
一方、CPUコア12は、ステップS110でSRAM16に一時的に保存された合計データサイズが予め設定された所定の閾値よりも小さい場合は、ステップS112の処理へ移行する。
CPUコア12は、ステップS112で所定時間が経過したか否かについて判定する。具体的には、CPUコア12は、所定のタイミングでカウンタタイマをスタートさせ、ステップS112の時点でカウンタタイマ値を取得する。そして、カウンタタイマ値が所定値以上であれば、CPUコア12は、所定時間が経過したと判定してステップS114の処理へ移行する。一方、CPUコア12は、ステップS112でカウンタタイマ値が所定値よりも小さい場合は、所定時間が経過していないと判定し、ステップS102の処理へ戻る。なお、本実施形態では、検査用データを送信した後にカウンタタイマ値をリセットする。このため、検査用データを送信してから、次に検査用データを送信するまでの間、カウンタタイマ値による時間の計測が行われている。
CPUコア12は、ステップS114で複数のCANデータをまとめて1つのEthernetフレーム構造にパッキングする。具体的には、CPUコア12は、データパッキング部50の機能により、SRAM16に保存された複数のCANデータをまとめて1つの検査用データにパッキング(変換)する。
CPUコア12は、ステップS116で、データパッキング部50に機能によってパッキングされた検査用データを送信する。具体的には、CPUコア12は、検査用データ送信部54の機能により、SRAM16に保存されている検査用データを仮想Ethernet通信又は物理的な通信によりDRAM26へ送信する。そして、CPUコア12は、カウンタタイマ値をリセットした後、中継処理を終了させる。
(検査処理の一例)
図5は、中継装置10のCPUコア14による検査処理の流れの一例を示すフローチャートである。この検査処理は、CPUコア14がプログラムを読み出して、SRAM16などに展開して実行することによって実行される。
図5に示されるように、CPUコア14は、ステップS202でEthernetデータを受信する。具体的には、CPUコア14は、検査用データ取得部60の機能により、DRAM26にアクセスし、Ethernetフレーム構造の検査用データを取得する。
CPUコア14は、ステップS204で検査用データをアンパッキングする。具体的には、CPUコア14は、データアンパッキング部62の機能により、検査用データをアンパッキングすることで、フレーム構造から個別のCANデータを取出し可能とする。
CPUコア14は、ステップ206で検査処理部64により個別のCANデータの検査を行う。具体的な検査内容については、上述した通りである。
CPUコア14は、ステップ208で検査の結果、不正データが有ったか否かについて判定する。具体的には、CPUコア14は、検査処理部64による検査処理時に異常データ及び不正データなどを見付けた場合に、不正データが有ったと判定してステップS210の処理へ移行する。一方、CPUコア14は、ステップS208で不正データが無かった場合、検査処理を終了する。
CPUコア14は、ステップS210で検査結果を送信する。具体的には、CPUコア14は、検査結果送信部68の機能により、不正データについて外部のセキュリティセンターなどに通知を行う。なお、CPUコア14は、不正データの内容などに応じて、検査結果の送信先を変更してもよい。そして、CPUコア14は、検査処理を終了する。
以上のように、本実施形態の中継装置10では、受信部40によって受信されたCANデータは、中継処理部42により順次転送される。これによって、データを検査してから転送する場合よりも中継の遅延を抑制することができる。
また、受信されたCANデータは、保存処理部44によって一時的に保存され、データパッキング部50によって1つの検査用データに変換される。これにより、複数のCANデータをまとめた分だけヘッダのデータ量が少なくなり、処理負荷を低減することができる。
さらに、本実施形態の中継装置10では、検査用データ送信部54によって検査用データがデータ格納に送信される。これにより、CANデータを個別に送信する場合と比較して、検査用データの送信回数を減らすことができ、データ送信による処理負荷を低減させることができる。
特に、本実施形態では、受信時よりも帯域の広い通信プロトコルを用いて検査用データを送信することで、一度に多くのデータを送信することができる。
さらにまた、本実施形態の中継装置10では、データパッキング部50は、保存処理部44によって保存されたデータの合計データサイズが所定の閾値以上となった場合に、データをパッキングする。これにより、保存されたCANデータのオーバーフローを回避することができる。また、合計データサイズが所定の閾値よりも小さい場合であっても、所定時間が経過した場合にデータパッキング部50がデータをパッキングするため、データ送信までの間隔が長くなるのを抑制することができる。
また、本実施形態の中継装置10では、処理負荷取得部52によって取得された処理負荷が所定の閾値以上であった場合にDRAM26への送信を一時的に停止することにより、中継処理部42によるデータの転送が遅延するのを抑制することができる。
さらに、本実施形態では、受信バス情報付加部48によってCANデータに受信バス情報が付加されることで、CPUコア14による検査時に受信バス情報を参照することができ、不正データの判定に利用することができる。
さらにまた、本実施形態では、受信タイミング付加部46によってCANデータに受信タイミング情報が付加されることで、CPUコア14による検査時に受信タイミング情報を参照することができ、不正データの判定に利用することができる。
特に、本実施形態では、受信タイミング情報としてカウンタタイマ値を付加することにより、グリニッジ標準時(GMT)及び協定世界時(UTC)などの絶対時刻を用いる場合と比較して、外部から時刻を取得するなどの機能が不要となる。
以上、実施形態に係る中継装置10について説明したが、本発明の要旨を逸脱しない範囲において、種々なる態様で実施し得ることは勿論である。例えば、上記実施形態では、検査用データ送信部54によってSRAM16に保存された検査用データをデータ格納部であるDRAM26へ送信したが、これに限定されない。すなわち、検査を行うCPUコア14がSRAM16にアクセスして検査用データを取得してもよい。この場合、CPUコア12とCPUコア14とで共有する共有メモリを別途設定し、この共有メモリにCPUコア12がパッキングした検査用データを保存してもよい。CPUコア12は、検査用データの送信を行わない代わりに、検査用データをパッキングしたことをCPUコア14で伝えるようにすれば、本実施形態と同様に検査を実施することができる。
また、上記実施形態の中継装置10は、CPUコア12とCPUコア14とを備えた、所謂マルチコアの構造としたが、これに限定されない。例えば、物理的に独立した2つのCPUを用いてもよい。この場合、一方のCPUがCPUコア12と同様の機能により中継処理を行い、他方のCPUがCPUコア14と同様の機能により検査処理を行うようにしてもよい。
さらに、上記実施形態の中継装置10では、CANデータの合計データサイズが所定の閾値以上となった場合、又は検査用データ送信部54による検査用データの送信から所定時間が経過した場合に、CANデータをパッキングして送信したが、これに限定されない。例えば、検査用データ送信部54は、所定の周期で検査用データを送信してもよい。この場合、早い周期で検査用データを送信すれば、CANデータの合計データサイズが所定の閾値以上とならずに済む。また、所定の周期で検査用データを送信することで、受信タイミング情報を付加しなくても受信タイミングが判別可能となり、不正データを判定することができる。
さらにまた、上記実施形態の中継装置10では、中継処理部42は、図6に示された中継情報を参照し、受信したCANデータのCANIDと受信バス情報に対応する中継バスへCANデータを転送したが、これに限定されない。例えば、中継処理部42は、CANデータのデータフィールドを参照して中継先を決定してもよい。
また、上記実施形態では、検査処理部64で検査を行う対象をCANデータとしているが、これに限定されない。例えば、LIN、UART、SPI、Ethernet、USB及びPCIeなどのプロトコルによって受信したデータを検査してもよい。
さら、上記実施形態でCPUコア12及びCPUコア14がソフトウェア(プログラム)を読み込んで実行した処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)などの製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)などの特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路などが例示される。また、中継処理及び検査処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせなど)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子などの回路素子を組み合わせた電気回路である。
さらに、上記実施形態では、SRAM16及びDRAM26を非一時的記録媒体であるメモリとしたが、これに限定されない。例えば、CD(Compact Disk)、DVD(Digital Versatile Disk)、及びUSB(Universal Serial Bus)メモリなどを非一時的記録媒体としてもよい。この場合、これらの記録媒体に各種プログラムを格納してもよい。
10 車両通信用中継装置
26 DRAM(データ格納部)
40 受信部
42 中継処理部
44 保存処理部
46 受信タイミング付加部
48 受信バス情報付加部
50 データパッキング部
52 処理負荷取得部
54 検査用データ送信部

Claims (11)

  1. 車両通信用のデータを受信する受信部と、
    前記受信部で受信した前記データを他のバスへ転送する中継処理部と、
    前記受信部で受信した前記データを一時的に保存する保存処理部と、
    前記保存処理部で保存された複数の前記データをまとめて1つの検査用データに変換するデータパッキング部と、
    を有する車両通信用中継装置。
  2. 前記検査用データを検査用のデータ格納部へ送信する検査用データ送信部をさらに備えた請求項1に記載の車両通信用中継装置。
  3. 前記検査用データ送信部は、前記受信部で用いた通信プロトコルよりも帯域の広い通信プロトコルにより前記検査用データを送信する請求項2に記載の車両通信用中継装置。
  4. 前記データパッキング部は、前記保存処理部によって保存された前記データの合計データサイズが所定の閾値以上となった場合、又は前記検査用データ送信部による前記検査用データの送信から所定時間が経過した場合に、保存処理部で保存された前記データをパッキングする請求項2又は3に記載の車両通信用中継装置。
  5. 前記中継処理部による中継処理後の処理負荷を取得する処理負荷取得部をさらに備え、
    前記検査用データ送信部は、前記処理負荷取得部によって取得された処理負荷が所定の閾値以上であった場合に、前記データ格納部への送信を一時的に停止する請求項2~4の何れか1項に記載の車両通信用中継装置。
  6. 前記受信部で受信した前記データに受信バス情報を付加する受信バス情報付加部をさらに備えた請求項1~5の何れか1項に記載の車両通信用中継装置。
  7. 前記受信部で受信した前記データに対して、受信タイミングに基づく受信タイミング情報を付加する受信タイミング付加部をさらに備えた請求項1~6の何れか1項に記載の車両通信用中継装置。
  8. 前記受信タイミング情報は、データの送信時にリセットされるカウンタタイマ値である請求項7に記載の車両通信用中継装置。
  9. 前記検査用データ送信部は、所定の周期で前記検査用データを送信する請求項2~6の何れか1項に記載の車両通信用中継装置。
  10. 車両通信用のデータを受信し、
    受信した前記データを他のバスへ転送し、かつ、一時的に保存し、
    保存された複数の前記データをまとめて1つの検査用データに変換する、
    車両通信用中継方法。
  11. 車両通信用のデータを受信し、
    受信した前記データを他のバスへ転送し、かつ、一時的に保存し、
    保存された複数の前記データをまとめて1つの検査用データに変換する、
    処理をコンピュータに実行させるプログラム。
JP2020204501A 2020-12-09 2020-12-09 車両通信用中継装置、車両通信用中継方法及びプログラム Pending JP2022091585A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020204501A JP2022091585A (ja) 2020-12-09 2020-12-09 車両通信用中継装置、車両通信用中継方法及びプログラム
CN202111254329.7A CN114629528A (zh) 2020-12-09 2021-10-27 车辆通信用中继装置及方法、非暂时性存储介质
US17/518,500 US20220183109A1 (en) 2020-12-09 2021-11-03 Relay device for vehicle communication, relay method for vehicle communication, and non-transitory storage medium on which a program is stored

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020204501A JP2022091585A (ja) 2020-12-09 2020-12-09 車両通信用中継装置、車両通信用中継方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2022091585A true JP2022091585A (ja) 2022-06-21

Family

ID=81848626

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020204501A Pending JP2022091585A (ja) 2020-12-09 2020-12-09 車両通信用中継装置、車両通信用中継方法及びプログラム

Country Status (3)

Country Link
US (1) US20220183109A1 (ja)
JP (1) JP2022091585A (ja)
CN (1) CN114629528A (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006287738A (ja) * 2005-04-01 2006-10-19 Fujitsu Ten Ltd ネットワークシステム
JP6481579B2 (ja) * 2015-09-29 2019-03-13 株式会社オートネットワーク技術研究所 車載通信システム及び監視装置
WO2019021403A1 (ja) * 2017-07-26 2019-01-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 制御ネットワークシステム、車両遠隔制御システム及び車載中継装置
US10873918B2 (en) * 2018-01-25 2020-12-22 Yazaki Corporation Wireless communication terminal and communication control method for establishing efficient communication, and capable of suppressing a delay in the communication

Also Published As

Publication number Publication date
CN114629528A (zh) 2022-06-14
US20220183109A1 (en) 2022-06-09

Similar Documents

Publication Publication Date Title
EP1750202A1 (en) Combining packets for a packetized bus
CN109688058B (zh) 报文处理方法、装置及网络设备
JP6174305B2 (ja) データ送信装置、通信制御方法、及び通信制御プログラム
JP2014239432A (ja) 汎用インタフェースを提供する方法、及び、汎用インタフェースを有するマイクロコントローラ
US20190173952A1 (en) In-vehicle relay device, information processing device, relay device, information processing method, non-transitory storage medium storing program executable by relay device, information processing system, vehicle, and external device
US20070011689A1 (en) Information processing unit, computer control method, and information storage medium
CN114185829A (zh) 用于多种通信业务的共享的资源
JP2022091585A (ja) 車両通信用中継装置、車両通信用中継方法及びプログラム
JPWO2008120566A1 (ja) エンジン・プロセッサ連携システム、及び連携方法
JPWO2020105129A1 (ja) 中継装置、通信システム、通信方法、および通信プログラム
KR101736460B1 (ko) 크로스-다이 인터페이스 스누프 또는 글로벌 관측 메시지 오더링
US11652745B2 (en) On-board network system and program
CN115687012A (zh) 一种总线监测模块、监测方法和相关设备
EP0945810A2 (en) Pipeline-type multi-processor system
US11606276B2 (en) Communication device
JP7225740B2 (ja) 中継装置
JP2011008489A (ja) 集積回路システム、データ書き込み方法、データ読み出し方法
US11509762B2 (en) Cable length calculation system and cable length calculation method
EP3407185A1 (en) Algorithm triggered sensor data acquisition
JP2005025601A (ja) マイコンのロジック開発装置
JP6869823B2 (ja) 演算装置
KR20230072342A (ko) 가시성이 향상된 클라우드 네이티브 애플리케이션 시스템
JP2014036417A (ja) 処理装置、ネットワークシステム、及び通信制御プログラム
JP2009187446A (ja) 半導体集積回路及びその最大遅延試験定方法
JP5949346B2 (ja) 計算ノード間メッセージ通信状況取得プログラム、方法、及びシステム