JP2015130596A - Can通信装置及び固着判定方法 - Google Patents

Can通信装置及び固着判定方法 Download PDF

Info

Publication number
JP2015130596A
JP2015130596A JP2014001180A JP2014001180A JP2015130596A JP 2015130596 A JP2015130596 A JP 2015130596A JP 2014001180 A JP2014001180 A JP 2014001180A JP 2014001180 A JP2014001180 A JP 2014001180A JP 2015130596 A JP2015130596 A JP 2015130596A
Authority
JP
Japan
Prior art keywords
message buffer
value
controller
message
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.)
Pending
Application number
JP2014001180A
Other languages
English (en)
Inventor
英之 岩切
Hideyuki Iwakiri
英之 岩切
晃由 山田
Akiyoshi Yamada
晃由 山田
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 JP2014001180A priority Critical patent/JP2015130596A/ja
Publication of JP2015130596A publication Critical patent/JP2015130596A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Abstract

【課題】本発明は、CAN通信装置及び固着判定方法に係り、CANコントローラの有するメッセージバッファの固着有無を判定する時間の短縮化を図ることにある。【解決手段】CANメッセージを格納するメッセージバッファを有する、CAN通信の制御を行うCANコントローラを備えるCAN通信装置は、ブート処理時に、メッセージバッファの固着有無判定に用いるパターン値を該メッセージバッファに書き込み、次に、該メッセージバッファに書き込まれている値を読み込んで記憶手段に書き込むシーケンサと、CAN通信前の初期化処理時に、記憶手段に格納されている値を読み込み、次に、該値をパターン値と比較することによりメッセージバッファの固着有無を判定する演算処理装置と、を備える。【選択図】図1

Description

本発明は、CAN通信装置及び固着判定方法に係り、特に、CAN(Controller Area Network)通信の制御を行うCANコントローラの有するメッセージバッファの固着有無を判定するうえで好適なCAN通信装置及び固着判定方法に関する。
従来、CANコントローラの有するメッセージバッファの固着有無を判定するCAN通信装置及び固着判定方法が知られている(例えば、特許文献1参照)。特許文献1記載の装置では、CAN通信前の初期化処理時、演算処理装置(CPU)が、CANコントローラのメッセージバッファに検査用データを書き込み、次に、そのメッセージバッファに書き込まれているデータを読み込んで、その読み込んだデータと検査用データとを照合することによりメッセージバッファの固着有無を判定する。
特開2013−55593号公報
一般的に、CANコントローラの処理速度は、CPUの処理速度に比べて遅い。このため、上記した特許文献1記載の装置の如く、CAN通信前の初期化処理時にCPUがCANコントローラにアクセスしてメッセージバッファにデータを書き込みかつそのメッセージバッファからデータを読み込むものとすると、かかる処理のすべてが完了するまでCPUが動作待機する必要がある。この点、CPUによる固着有無の判定に要する時間が長くなり、初期化処理が長期化するおそれがある。
本発明は、上述の点に鑑みてなされたものであり、CANコントローラの有するメッセージバッファの固着有無を判定する時間の短縮化を図ることが可能なCAN通信装置及び固着判定方法を提供することを目的とする。
上記の目的は、CANメッセージを格納するメッセージバッファを有する、CAN通信の制御を行うCANコントローラを備えるCAN通信装置であって、ブート処理時に、前記メッセージバッファの固着有無判定に用いるパターン値を該メッセージバッファに書き込み、次に、該メッセージバッファに書き込まれている値を読み込んで記憶手段に書き込むシーケンサと、前記CAN通信前の初期化処理時に、前記記憶手段に格納されている値を読み込み、次に、該値を前記パターン値と比較することにより前記メッセージバッファの固着有無を判定する演算処理装置と、を備えるCAN通信装置により達成される。
また、上記の目的は、CAN通信の制御を行うCANコントローラの有する、CANメッセージを格納するメッセージバッファの固着有無を判定する固着判定方法であって、シーケンサが、ブート処理時に、前記メッセージバッファの固着有無判定に用いるパターン値を該メッセージバッファに書き込み、次に、該メッセージバッファに書き込まれている値を読み込んで記憶手段に書き込む第1の工程と、演算処理装置が、前記CAN通信前の初期化処理時に、前記記憶手段に格納されている値を読み込み、次に、該値を前記パターン値と比較することにより前記メッセージバッファの固着有無を判定する第2の工程と、を備える固着判定方法により達成される。
本発明によれば、CANコントローラの有するメッセージバッファの固着有無を判定する時間の短縮化を図ることができる。
本発明の一実施例であるCAN通信装置のハードウェア構成図である。 本実施例のCAN通信装置においてメッセージバッファの固着有無判定時に実現される動作工程を表した図である。
以下、図面を用いて、本発明に係るCAN通信装置及び固着判定方法の具体的な実施の形態について説明する。
図1は、本発明の一実施例であるCAN通信装置10のハードウェア構成図を示す。本実施例のCAN通信装置10は、例えば、車両などに搭載されており、車内通信を行うための装置である。車両は、それぞれマイクロコンピュータを主体に構成された複数の電子制御ユニット(ECU)12を有している。CAN通信装置10は、ECU12ごとに設けられている。
CAN通信装置10は、CAN(Controller Area Network)バス14に接続されており、CANバス14を介して他のECU12のCAN通信装置10との間でデータ通信を行う。CANバス14は、予め定められたCANの通信プロトコルに従ってデータ通信を行うLAN(Local Area Network)である。
CAN通信装置10は、CANコントローラ16と、CANトランシーバ18と、演算処理装置(CPU)20と、を備えている。CANコントローラ16は、CANの通信プロトコルに従って他のECU12との間のデータ通信を制御する装置である。CANコントローラ16は、予め定められた所定の動作周波数(例えば、64MHz)で動作することができる。
CANトランシーバ18は、CANコントローラ16とCANバス14との間に介在している。CANトランシーバ18は、CANコントローラ16とCANバス14との間でメッセージデータを送受信するための送受信機である。CPU20は、CANコントローラ16に接続されている。CPU20は、CANコントローラ16を介して他のECU12との間でメッセージデータを授受することにより各種処理を実行する処理部である。CPU20は、CANコントローラ16の動作周波数よりも動作が速い、予め定められた所定の動作周波数(例えば、192MHz)で動作することができる。
CANコントローラ16は、他のECU12との間で送受信されるメッセージデータを格納するメッセージバッファ22を有している。メッセージバッファ22は、複数のメッセージデータを格納することができるように構成されている。CANコントローラ16は、メッセージバッファ22内のメッセージデータをフレーム化してCANトランシーバ18を介してCANバス14へ送信する送信機能、CANトランシーバ18を介してフレームを受信してメッセージデータ等の抽出を行う受信機能、CANバス14上で複数のフレームが衝突した際に調停を行う調停機能などの、CANの通信プロトコルに従った通信制御を実行する。
CPU20は、例えば、自ECU12から他のECU12へ送信すべきメッセージデータがある場合に、そのメッセージデータをメッセージバッファ22に格納させる指令をCANコントローラ16に対して行う。また、CPU20は、他のECU12からのメッセージデータがメッセージバッファ22に格納された後、CANコントローラ16からフレームを受信した旨の通知を受けた場合に、メッセージバッファ22にアクセスしてそのメッセージデータを読み出してそのメッセージデータを用いた処理を実行する。更に、CPU20は、後述の如く、CANコントローラ16のメッセージバッファ22に生ずる信号レベルの固着(例えば、ビットが"0"又は"1"に固定される故障)の有無を判定する処理(固着有無判定)を実行する。
CAN通信装置10は、また、RAM24と、シーケンサ26と、を備えている。RAM24は、CPU20に接続されていると共に、シーケンサ26を介してCANコントローラ16のメッセージバッファ22に接続されている。RAM24は、CPU20によるメッセージバッファ22の固着有無判定に用いるデータとしてのパターン値を格納していると共に、CANコントローラ16のメッセージバッファ22の値を格納可能である主記憶装置である。
RAM24には、シーケンサ26の動作によりメッセージバッファ22の値が格納される。また、RAM24に格納された値は、シーケンサ26の動作及びCPU20の動作により読み出される。上記の固着有無判定に用いるパターン値は、例えば、"AAH"や"55H"などの値である。また、このパターン値は、複数格納されていてもよい。尚、本実施例では、互いに異なる2つのパターン値I及びパターン値IIが格納されているものとする。
シーケンサ26は、CANコントローラ16のメッセージバッファ22に接続されていると共に、RAM24に接続されている。シーケンサ26は、CPU20による固着有無判定に必要な処理を行う制御装置である。シーケンサ26は、上記のパターン値をRAM24から読み込んでメッセージバッファ22に書き込むことができると共に、メッセージバッファ22に書き込まれている値を読み込んでRAM24に書き込むことができる。これらのシーケンサ26によるメッセージバッファ22及びRAM24との間の値の読み込み及び書き込みは、DMA(Direct Memory Access)転送により行われる。
以下、図2を参照して、本実施例のCAN通信装置10におけるメッセージバッファ22の固着有無を判定するための動作について説明する。図2は、本実施例のCAN通信装置10においてメッセージバッファ22の固着有無判定時に実現される動作工程を表した図を示す。
本実施例のCAN通信装置10においては、メッセージバッファ22の固着有無を判定するうえで、まず、ブート(BOOT)処理時、シーケンサ26が、RAM24から読み込んだパターン値IをCANコントローラ16のメッセージバッファ22に書き込む。そして、その書き込みを行った後、そのメッセージバッファ22に書き込まれている値(MB値)を読み込み、その読み込んだMB値をRAM24に書き込む。
次に同様に、シーケンサ26が、RAM24から読み込んだパターン値IIをCANコントローラ16のメッセージバッファ22に書き込む。そして、その書き込みを行った後、そのメッセージバッファ22に書き込まれている値(MB値)を読み込み、その読み込んだMB値をRAM24に書き込む。
このように、本実施例においては、ブート処理時、シーケンサ26が、CANコントローラ16(具体的には、メッセージバッファ22)にアクセスして、メッセージバッファ22の固着有無の判定に必要な情報(MB値)を収集し、その収集した情報をRAM24に格納させることができる。かかるシーケンサ26による処理が行われると、RAM24に、シーケンサ26が取得したメッセージバッファ22のMB値が格納される。
この場合、RAM24は、メッセージバッファ22が固着していなければ、パターン値I用のアドレスにパターン値Iに従ったMB値を格納すると共に、パターン値II用のアドレスにパターン値IIに従ったMB値を格納する。一方、メッセージバッファ22が固着していれば、パターン値I用のアドレスにパターン値Iに従わないMB値を格納すると共に、パターン値II用のアドレスにパターン値IIに従わないMB値を格納する。
次に、上記したブート処理後におけるCPU20の初期化処理時、CPU20が、RAM24に格納されているMB値を読み込むと共に、RAM24に格納されているパターン値を読み込む。そして、それらの読み込んだMB値とパターン値とを比較する。具体的には、パターン値I用のアドレスに格納されていたMB値とパターン値Iとを比較すると共に、パターン値II用のアドレスに格納されていたMB値とパターン値IIとを比較する。
そして、CPU20は、それらの比較結果としてMB値とパターン値とが一致する場合は、メッセージバッファ22の固着が生じていないと判定する。一方、上記の比較結果としてMB値とパターン値とが一致しない場合は、メッセージバッファ22の固着が生じていると判定する。
このように、本実施例においては、初期化処理時、CPU20が、ブート処理時にシーケンサ26がMB値を取得して格納したRAM24にアクセスして、そのMB値とパターン値との比較によりメッセージバッファ22の固着有無を判定することができる。
従って、本実施例のCAN通信装置10によれば、CANコントローラ16内のメッセージバッファ22の固着有無を判定するのに、初期化処理時にCPU20がそのメッセージバッファ22にアクセスすることは不要である。すなわち、初期化処理時にCPU20がCANコントローラ16内のメッセージバッファ22にアクセスすることなくそのメッセージバッファ22の固着有無を判定することができる。
このため、本実施例によれば、CPU20が初期化処理時においてメッセージバッファ22へのアクセスに要する時間を待機する必要がないので、CPU20によるCANコントローラ16内のメッセージバッファ22の固着有無の判定に要する時間の短縮化を図ることができ、初期化処理の長期化を回避することができる。特に、CANコントローラ16内のメッセージバッファ22の数が多くなっても、それらすべてのメッセージバッファ22の固着有無の判定を、初期化処理のために定められている初期化時間内に収めることが可能となる。
また、本実施例のCAN通信装置10において、シーケンサ26が行う動作は、CANコントローラ16のメッセージバッファ22とRAM24との間におけるMB値のDMA転送だけである。このため、本実施例によれば、CAN通信装置10が備えるシーケンサ26を簡易な構造でかつ低コストで実現することができる。
尚、上記の実施例においては、RAM24が特許請求の範囲に記載した「記憶手段」に、ブート処理時にシーケンサ26がメッセージバッファ22の固着有無判定に用いるパターン値をメッセージバッファ22に書き込み、次に、そのメッセージバッファ22に書き込まれているMB値を読み込んでRAM24に書き込むことが特許請求の範囲に記載した「第1の工程」に、初期化処理時にCPU20がRAM24に格納されているMB値を読み込み、次に、そのMB値をパターン値と比較することによりメッセージバッファ22の固着有無を判定することが特許請求の範囲に記載した「第2の工程」に、それぞれ相当している。
10 CAN通信装置
12 電子制御ユニット(ECU)
14 CANバス
16 CANコントローラ
20 演算処理装置(CPU)
22 メッセージバッファ
24 RAM
26 シーケンサ

Claims (2)

  1. CANメッセージを格納するメッセージバッファを有する、CAN通信の制御を行うCANコントローラを備えるCAN通信装置であって、
    ブート処理時に、前記メッセージバッファの固着有無判定に用いるパターン値を該メッセージバッファに書き込み、次に、該メッセージバッファに書き込まれている値を読み込んで記憶手段に書き込むシーケンサと、
    前記CAN通信前の初期化処理時に、前記記憶手段に格納されている値を読み込み、次に、該値を前記パターン値と比較することにより前記メッセージバッファの固着有無を判定する演算処理装置と、
    を備えることを特徴とするCAN通信装置。
  2. CAN通信の制御を行うCANコントローラの有する、CANメッセージを格納するメッセージバッファの固着有無を判定する固着判定方法であって、
    シーケンサが、ブート処理時に、前記メッセージバッファの固着有無判定に用いるパターン値を該メッセージバッファに書き込み、次に、該メッセージバッファに書き込まれている値を読み込んで記憶手段に書き込む第1の工程と、
    演算処理装置が、前記CAN通信前の初期化処理時に、前記記憶手段に格納されている値を読み込み、次に、該値を前記パターン値と比較することにより前記メッセージバッファの固着有無を判定する第2の工程と、
    を備えることを特徴とする固着判定方法。
JP2014001180A 2014-01-07 2014-01-07 Can通信装置及び固着判定方法 Pending JP2015130596A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014001180A JP2015130596A (ja) 2014-01-07 2014-01-07 Can通信装置及び固着判定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014001180A JP2015130596A (ja) 2014-01-07 2014-01-07 Can通信装置及び固着判定方法

Publications (1)

Publication Number Publication Date
JP2015130596A true JP2015130596A (ja) 2015-07-16

Family

ID=53761036

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014001180A Pending JP2015130596A (ja) 2014-01-07 2014-01-07 Can通信装置及び固着判定方法

Country Status (1)

Country Link
JP (1) JP2015130596A (ja)

Similar Documents

Publication Publication Date Title
JP5209461B2 (ja) 集積回路内のデバイス間のデータ転送
US10078568B1 (en) Debugging a computing device
CN110941578B (zh) 一种具有dma功能的lio的设计方法及装置
US20220012194A1 (en) Apparatus and method for data transmission and readable storage medium
JP5299559B2 (ja) 情報処理装置及び情報処理装置のデバイス情報収集処理方法
US20140379995A1 (en) Semiconductor device for controlling prefetch operation
JP5304815B2 (ja) マイクロコンピュータ
CN107861895B (zh) 基于分布式仲裁的可编程输入输出pio写合并装置和方法
JP2015130596A (ja) Can通信装置及び固着判定方法
JP4446968B2 (ja) データ処理装置
JP2008503833A (ja) 並列通信バスに連結された装置内で割込みメッセージを待ち行列に入れるためのコンピュータシステム及び方法
CN105022707B (zh) 接口单元装置
JP2008511890A (ja) アトミック・オペレーションを用いて情報単位を変更する方法及び装置
US8239652B2 (en) Data processing system
JP2006285872A (ja) マルチcpuシステム
EP2667308A1 (en) Data writing control device, data writing control method, and information processing device
CN109313426B (zh) 控制器
US10909065B2 (en) Multiprocessor system
US20240119000A1 (en) Input/output (i/o) store protocol for pipelining coherent operations
US20180239680A1 (en) Information processing device and non-transitory computer readable medium
JP2010016764A (ja) 信号処理装置、信号処理方法及び中継装置
JP4538054B2 (ja) データ転送装置および方法
US20140052950A1 (en) System controlling apparatus, information processing system, and controlling method of system controlling apparatus
JP2006092077A (ja) バスシステム
JP5282325B2 (ja) ポステッドライトバス制御装置