JP5148015B2 - 自動車用データ異常判定装置 - Google Patents

自動車用データ異常判定装置 Download PDF

Info

Publication number
JP5148015B2
JP5148015B2 JP2012523445A JP2012523445A JP5148015B2 JP 5148015 B2 JP5148015 B2 JP 5148015B2 JP 2012523445 A JP2012523445 A JP 2012523445A JP 2012523445 A JP2012523445 A JP 2012523445A JP 5148015 B2 JP5148015 B2 JP 5148015B2
Authority
JP
Japan
Prior art keywords
calculation
crc
data
rom
crc calculation
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.)
Active
Application number
JP2012523445A
Other languages
English (en)
Other versions
JPWO2012004836A1 (ja
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP5148015B2 publication Critical patent/JP5148015B2/ja
Publication of JPWO2012004836A1 publication Critical patent/JPWO2012004836A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/22Safety or indicating devices for abnormal conditions
    • F02D2041/228Warning displays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Mechanical Engineering (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Detection And Correction Of Errors (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Stored Programmes (AREA)

Description

この発明は、自動車の制御に使用するデータの異常を判定する自動車用データ異常判定装置に関する。
従来、例えばブラシレスモータ式ターボアクチュエータにおいては、制御内容としてのデータがマイコンROMあるいはEEPROM等の記憶装置に記憶され、そのデータに応じてブラシレスモータを最適に制御することで燃費向上や排気ガス中の有害物質の低減を実現している。したがって、記憶装置に記憶されたデータに変更または異常があると燃費や排気ガスの成分等に影響する。
また、記憶装置に記憶されたデータに異常または変更があると本来意図していない制御が実行される可能性があり、燃費悪化、排気ガス中の有害物質の増大となり、エンジンに悪影響が及ぶ可能性がある。
そのため、CARB(California Air Resources Board:カルフォルニア州大気資源局)のHD OBD(On−Board Diagnostic System Requirements for 2010 and Subsequent Model−Year Heavy−Duty Engines)への対応を求められている。
その中のひとつにCVN(Calibration Verification Number)への対応がある。CVNとは「すべての車両は、電気的に書き換え可能なマイコンまたはメモリを搭載した各自己診断ユニットやエミッションに重要な影響を及ぼすユニットに搭載されるオンボードコンピュータの整合性を点検する単独のCVNを計算する演算アルゴリズムを使用しなければならない。」というものである。(ただし最新のCARBの要求では書き換え可能・不可能にかかわらず対応が求められている。)
具体的にはCVNという固有の値を演算し、外部から読み出せるようにすることが求められている。この演算アルゴリズムは各部品メーカにて検討しCARBの承認を得る必要があるが、基本的にはチェックサムのように容易に類推できるものは承認されないとされている。
フラッシュマイコンやEEPROMのようにデータの書き換え可能なデバイスを有する製品においては、出荷後にデータ内容の不正な書き換え、デバイスの故障によってデータが変化する恐れがある。
従来、このようなことを防止するために、例えば、フラッシュマイコンの書き換え時に対してパスワードを設定し、プログラム上でチェックサムの演算を実施して、起動時にチェックサム値の確認を行うなどの方法がある。また、EEPROMのデータについてもマイコンが読み出したときにチェックサムによる確認を行ったりしている。
ところがパスワードは一旦知られてしまうと改竄の対策としては役に立たない。また、チェックサムはそのチェックサム値が変わらないような悪意を持ってデータを部分的に書き換えることが比較的容易に出来るという課題があった。
これらの対策としては、データの部分的な変化に対して同一の値を維持することが極めて困難で、かつ演算結果を類推することも困難である固有の値をデータから演算し、その固有の値が変化していないことを以ってデータが正常であることを確認するアルゴリズムが有効である。
従来例として、例えば、特許文献1に開示された先行技術である「マイコンにおけるプログラムエリアのデータ保全方法」は、メモリをデータブロック毎に分割し、それぞれのデータブロック毎にサムチェックデータと誤り訂正符号を合わせて格納することで、データブロック毎に異常検出と修復を可能にしている。
特開2005−208958号公報
しかし、この先行技術では、データの誤りを検出し、誤りを訂正し、改めて訂正したデータをリライトするもので、自動車用制御データとしては修復したデータを使って制御を継続することは好ましくないという課題があった。
この発明は、上記のような課題を解決するためになされたもので、データを改竄しにくく演算し、かつ、演算されたデータが改竄されている場合、その改竄を簡単かつ適格に検出できるようにすることを目的とする。
この発明に係る自動車用データ異常判定装置は、演算対象エリアのデータのCRC演算結果である2バイト剰余項を予め所定のメモリエリアに記憶する記憶部と、CRC演算時には対象エリア演算に続き2バイト剰余項も含めてCRC演算するCRC演算部とを備え、フラッシュROMとマスクROMでROM容量が異なる場合、該フラッシュROMと該マスクROM間で対応する各ブロックの記憶されたデータのCRC値が一致するように、ROM容量が大きなフラッシュROMの一部を予めCRC演算対象外として該フラッシュROMのROM容量をマスクROMのROM容量と同じROM容量にして、該フラッシュROMからマスクROMに切り替えてCRC演算することを特徴とするものである。
この発明によれば、CRC演算時には対象エリア演算に続き2バイト剰余項も含めてCRC演算するので、演算結果が常に0になり、データが改竄されているか否かの判定作業を簡単(0か否か)かつ適格に行うことができる効果がある。
この発明に係る自動車用データ異常判定装置の全体構成を示すブロック図である。 この発明に係る自動車用データ異常判定装置の一部の構成要素であるECUの構成を分離して示すブロック図である。 この発明に係る自動車用データ異常判定装置の一部の構成要素であるECUの構成を分離して示すブロック図である。 この発明に係る自動車用データ異常判定装置の一部の構成要素であるECUの構成を分離して示すブロック図である。 この発明に係る自動車用データ異常判定装置の一部の構成要素であるECUの構成を分離して示すブロック図である。 CRC演算部のCRC演算処理工程を説明するフローチャートである。 試作ステージ(フラッシュROM)と量産ステージ(マスクROM)の対比説明図である。 CRC演算部においてCVN演算を行う処理工程を説明するフローチャートである。 ECUからCVNを外部に通知する通信制御部の構成図である。 ECUからCVNを外部に通知する通信制御部の構成図である。
実施の形態1.
図1はこの発明に係る自動車用データ異常判定装置の全体構成を示すブロック図であり、データ異常判定装置の構成要素であるECU1と、このECU1に通信ライン2を介して接続された外部ツール(ダイアグツール)3とエンジンECU4からなる。ECU1はEEPROM5とマイクロコンピュータ6を備えている。
図2−A〜図2−Dはこの発明に係る自動車用データ異常判定装置の一部の構成要素であるECUの構成を、分離して詳細に示すブロック図であり、各図における符号a〜dおよび符号O〜Rは同一線の連結箇所を示している。このECU1の機能としては、EEPROM5のエリア51のデータを読み出し該データの異常チェックを行うCRC演算部63,エリア52のデータを読み出し該データの異常チェックを行うCRC演算部64、マイクロコンピュータのROMであるエリア61のデータを読み出し該データの異常チェックを行うCRC演算部62、CVNを演算するCVN演算部65および外部ツール3と通信を行う通信部66で構成されている。
EEPROM5(図2−B、図2−C)はエリア51(客先使用ブロック)とエリア52(量産ブロック)およびCVN格納エリア53を有し、各エリア51,52はそれぞれ予め演算されたCRC値を記憶部51a,52aに格納する(ステップST51−0)、(ステップST52−0)ように構成されている。
マイクロコンピュータ(図2−A〜図2−D)は、ROMであるエリア61を有し、このエリア61は予め演算されたCRC値を記憶部61aに格納する(ステップST61−0)ように構成されている。そして、このエリア61に対するCRC演算部62、エリア51に対するCRC演算部63、エリア52に対するCRC演算部64、CRC演算部65、外部ツール3と通信ライン2を介して接続された通信部66とを有する。
CRC演算部62は、エリア61の各ブロックのデータを順次読み出してCRC演算を行い、(ステップST62−1)、全てのブロックのトータルCRC値を求める(ステップST62−2)。そして、そのトータルCRC値が0であるかを判断し(ステップST62−3)、YESであれば、エリア61のデータは正常(ステップST62−4)、NOであれば、エリア61のデータは異常であるので、異常時の処理、例えばエンジンECU4へ異常を通知し、エンジンECU4が自動車のチェックランプを点灯することでユーザーに異常を通知する(ステップST62−5)。これにより、エリア61のチェックを完了する(ステップST62−6)。
CRC演算部63は、EEPROMのエリア51の各ブロックのデータを順次読み出し(ステップST63−1)、CRC演算を行い(ステップST63−2)、全てのブロックのトータルCRC値を求める(ステップST63−3)。ついで、予め記憶部51aに記憶されているCRC値を読み出し(ステップST63−4)、このCRC値と上記の求めたトータルCRC値が等しいかを判断する(ステップST63−5)。判断の結果、YESであれば、エリア51のデータは正常(ステップST63−6)、NOであれば、エリア51のデータは異常であるので、異常時の処理、例えばデフォルト値採用、エンジンECU4へ異常を通知し、エンジンECU4が自動車のチェックランプを点灯することでユーザーに異常を通知する(ステップST62−5)。これにより、エリア51のチェックを完了する(ステップST63−8)。
CRC演算部64は、EEPROMのエリア52の各ブロックのデータを順次読み出し(ステップST64−1)、CRC演算を行い(ステップST64−2)、全てのブロックのトータルCRC値を求める(ステップST64−3)。ついで、予め記憶部52aに記憶されているCRC値を読み出し(ステップST64−4)、このCRC値と上記の求めたトータルCRC値が等しいかを判断する(ステップST64−5)。判断の結果、YESであれば、エリア52のデータは正常(ステップST64−6)、NOであれば、エリア52のデータは異常であるので、異常時の処理、例えばデフォルト値採用、エンジンECU4へ異常を通知し、エンジンECU4が自動車のチェックランプを点灯することでユーザーに異常を通知する(ステップST62−5)。これにより、エリア51のチェックを完了する(ステップST64−8)。
上記のように、CRC演算部62〜64のそれぞれで、エリア61、エリア51、エリア52のデータの良否を個別に判断することができるので、データが改竄、つまり、変わっているかを簡単かつ適格に知ることができる。
また、CRC演算部62〜64における演算時に、ステップST62−2からエリア61の全てのブロックのトータルCRC値を、ステップST63−3からエリア51の全てのブロックのトータルCRC値を、ステップST64−3からエリア52の全てのブロックのトータルCRC値を、CRC演算部65のRAMである記憶部7のブロック7−1,7−2,7−3にそれぞれ入力して記憶する。そして、CRC演算部65は全てのトータルCRC値を記憶部7から読み出してCRC演算し(ステップST65−1)、CVNを算出する(ステップST65−2)。算出したCVNは書き込み部67によって、EEPROM5のCVN格納エリア53に書き込まれる。また、通信部66は、外部ツール3からの要求または定期的に算出したCVNを該外部ツールに伝送する。この場合、CVN要求/CVN確認チェックランプ(図示せず)の点灯等を行う。
図3はエリア51の各ブロックから読み出したデータに対するCRC演算を行う図2−BにおけるステップST63−2の動作を詳細に説明する図である。エリア51のブロック51−1から読み出した記憶値と予め設定された初期値(ステップST63−21)とでCRC演算を行う(ステップST63−22)。ついで、得られたCRC値(ステップST63−23)とエリア51の次のブロック51−2から読み出した記憶値とでCRC演算を行う(ステップST63−24)。
以下、同様に得られたCRC値と次のブロックから読み出した記憶値とでCRC演算を繰り返し(ステップST63−24)〜(ステップST63−n)、エリア51の全てのブロックにおけるデータの記憶値についてCRC演算を行い、トータルCRC値を得る。得られたトータルCRC値とエリア51の記憶部51aから読み出した予め記憶しているCRC値と比較し(ステップST63−3)、両者が一致すれば、エリア51に記憶されたデータは改竄されていないと判定できる。また、エリア52についてもエリア51と同様の処理を行う。
図4は試作ステージ(フラッシュROM)と量産ステージ(マスクROM)の対比説明図である。試作ステージと量産ステージでは、ROM容量の異なるマイコンを使用することになっている。ROM容量を変更するとROMの割り付け位置も異なる。
試作ステージから量産ステージに切り替わるときに全く同じソースコードでROMの割り付け位置を変更してオブジェクトファイルを生成すると、ROM容量が異なるため、ROMの各ブロックに記憶されたデータのCRC演算が一致しない。そして、CRC値が変更になると、再度新しいCVNを当局に届け出なければいけないため、試作ステージと量産ステージでCRC値が変化しない仕組みを入れる必要がある。
CRC演算の特性として同じ値をCRC演算すると“0”が算出される(同じ値の余剰は“0”)ことを利用して、ROMの各ブロックの演算ブロック末尾2バイトに末尾2バイトを演算する直前のCRC値を格納することにより、ROMの各データブロックに記憶されたデータのCRC値を“0”にすることができる。なお、ROMの各ブロックの末尾はリセットベクタアドレスとなっており、CRC値を格納することができないため、ROMの未使用ブロックが末尾となるよう演算順序を変更する。これにより、ROMの割り付けが変更になった場合、制御に全く関係のない2バイトの値を書き換えてオブジェクトファイルを生成するだけでCRC値を一致させることができる。
図4に示す試作ステージ(フラッシュROM)と量産ステージ(マスクROM)のブロック1は可変ベクタ及びプートプログラムが参照するデータ(APL書き込み有無・パスワード)が配置され、ブロック0は、プートプログラムがROMデータ(プログラム)を配置される。
従って、ブロック0・1には不用意にデータを配置することはできないので、ブロック2の最終2バイト(0FBFFEh・0FBFFFh)をCRC演算最終ブロックとし、CRCの演算は以下の順序とする。
試作ステージ(128K):ブロック1→ブロック0→ブロック5→ブロック4→ブロック2
量産ステージ(96K):ブロック1→ブロック0→ブロック4→ブロック3→ブロック2
また、ROMはブロックが大きく演算に時間がかかるため、ECU1の制御を行いながら並行してCRC演算を行う。
試作ステージ(128K)の場合、ブロック5の先頭アドレス(0E0000h)がスタートアドレスとなり、ブロック3は未使用ブロックとなる。量産ステージ(98K)場合、ブロック4の先頭アドレス(0E8000h)スタートアドレスとなる。
図5はCRC演算部65の詳細を示すフローチャートである。記憶部7のブロック7−1から読み出したエリア61の全てのブロックのトータルCRC値とステップST65−11で読み出した予め備えている初期値とでCRC演算を行い(ステップST65−12)、この得られたCRC値(ステップST65−13)と、記憶部7のブロック7−2から読み出したエリア51の全てのブロックのトータルCRC値とでCRC演算を行い(ステップST65−14)、この得られたCRC値(ステップST65−15)と記憶部7のブロック7−3から読み出したエリア52の全てのブロックのトータルCRC値とでCRC演算を行う(ステップST65−16)。そして、得られたCRC値(ステップST65−17)をCVNとして記憶部7のブロック7−0及びEEPROM5の記憶部53に格納する。
次に、算出したCVNを外部に通知する手段について説明する。この手段には2つのパターンがある。その第1のパターンは、図6に示すように、算出したCVNを通信(CANなど)にて定期送信を行う。外部ツール3はECU1が送信するデータを受信してCVNを確認する。
ECU1側は、CVNをブロック7−0に記憶した記憶部7と、このCVNを記憶部7から読み出し(ステップST12−1)、この読み出したCVNを送信(ステップST12−2)することを一定周期で実行する送信実行部12と、この送信実行部12から送信されたCVNを通信ライン2を通じて外部ツール3に送信する通信制御部13とを備えている。外部ツール3は、通信ライン2を通じてECU1側から送信されてきたCVNを受信し(ステップST32−1)、予め備えているCVNと比較(ステップST32−2)してCVNを確認する受信実行部32を備えている。
第2のパターンは、図7に示すように、外部ツール3よりCVNの要求コマンドをECU1に送信し、コマンドを受信したECU1はCVNを取得してコマンドにて返信する。コマンドを受信した外部ツール3はCVNを確認する。
即ち、ECU1は、CVN記憶部7、通信制御部13、コマンド処理部14を備え、コマンド処理部14は外部ツール3から送信されてきたCVNの要求コマンドを受信し(ステップST14−1)、このCVNの要求コマンドに基づき記憶部7からCVNを読み出し(ステップST14−2)、この読み出したCVNを通信制御部13にコマンドにて送信する(ステップST14−3)。
外部ツール3は、通信制御部31、送受信実行部32を備え、送受信実行部32は通信制御部31にCVNの要求コマンドの送信を行い(ステップST32−1)、通信制御部31で通信ライン2を通じてECU1から送信されたCVNのコマンドを受信し(ステップST32−2)、この受信したコマンドに基づくCVNと予め備えているCVNと比較(ステップST32−2)してCVNを確認する。
以上のように、この実施の形態1によれば、ROMであるエリア61、EEPROMであるエリア51,52のデータのCRC演算時には、対象エリア演算に続き前記2バイト剰余項も含めてCRC演算することで、すべてまたは一部のエリアでCRC演算結果が0x0000になる演算を実施するので、データを改竄しにくく演算することができ、かつ、演算されたデータが改竄されている場合、各エリア別にその改竄を簡単に検出できる効果がある。
また、各エリアの演算結果を、さらに、CRC演算することでCVNを算出するので、この算出したCVNを予め決めていたCVNと比較することで、一致しておれば、ROMであるエリア61、EEPROMであるエリア51,52の全てのデータは改竄されていないことが、不一致であれば、ROMであるエリア61、EEPROMであるエリア51,52のいずれかのデータが改竄されていることを適格に知ることができる効果がある。
また、2バイト剰余項を演算対象エリアの末尾に配置することが困難な場合は、2バイト剰余項の演算を最後に実施するように演算順序を変えることにより、2バイト剰余項の配置に制約を受けることがない。
また、フラッシュROMとマスクROMでROM容量が異なる場合、ROM容量が大きなフラッシュROMの未使用領域を予めCRC演算対象外としてフラッシュROMとマスクROMのCRC演算対象サイズを同じにすることにより、フラッシュROMからマスクROMに変更した時にCRCの演算時間が変化しないようにしている。
また、ROMはCRC演算に時間がかかるので、通常制御を行いながらCRC演算する構成とすることにより、通常制御への遅れ影響をなすることができる。
また、CRC演算はCRC−16規格、CRC−CCITT規格を使用するので、部分的なデータの改竄があっても、その改竄を適格に知ることができ、データの誤り検出精度を向上させることができる。
なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。

Claims (6)

  1. 自動車を制御するデータの異常を判定する自動車用データ異常判定装置において、演算対象エリアの前記データのCRC演算結果である2バイト剰余項を予め所定のメモリエリアに記憶する記憶部と、CRC演算時には対象エリア演算に続き前記2バイト剰余項も含めてCRC演算するCRC演算部とを備え、フラッシュROMとマスクROMでROM容量が異なる場合、該フラッシュROMと該マスクROM間で対応する各ブロックの記憶されたデータのCRC値が一致するように、ROM容量が大きなフラッシュROMの一部を予めCRC演算対象外として該フラッシュROMのROM容量をマスクROMのROM容量と同じROM容量にして、該フラッシュROMからマスクROMに切り替えてCRC演算することを特徴とする自動車用データ異常判定装置。
  2. 自動車を制御するデータの異常を判定する自動車用データ異常判定装置において、演算対象エリアの前記データのCRC演算結果である2バイト剰余項を予め所定のメモリエリアに記憶する記憶部と、CRC演算時には対象エリア演算に続き前記2バイト剰余項も含めてCRC演算するCRC演算部とを備え、複数の記憶エリア毎のCRC演算結果同士をさらにCRC演算してCVNを演算するCVN演算部を備えたことを特徴とする自動車用データ異常判定装置。
  3. 演算部は2バイト剰余項の演算を最後に実施するように演算順序を変えることを特徴とする請求項1記載の自動車用データ異常判定装置。
  4. 通常制御を行いながらROMに記憶されたデータのCRC演算を行うことを特徴とする請求項1記載の自動車用データ異常判定装置。
  5. CRC演算はCR−16またはCRC−CCITTを使用することを特徴とする請求項1記載の自動車用データ異常判定装置。
  6. 演算されたCVNを送信する通信制御部を備え、前記通信制御部を通じて外部ツールにCVNを送信することを特徴とする請求項2記載の自動車用データ異常判定装置。
JP2012523445A 2010-07-08 2010-07-08 自動車用データ異常判定装置 Active JP5148015B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/004454 WO2012004836A1 (ja) 2010-07-08 2010-07-08 自動車用データ異常判定装置

Publications (2)

Publication Number Publication Date
JP5148015B2 true JP5148015B2 (ja) 2013-02-20
JPWO2012004836A1 JPWO2012004836A1 (ja) 2013-09-02

Family

ID=45440839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012523445A Active JP5148015B2 (ja) 2010-07-08 2010-07-08 自動車用データ異常判定装置

Country Status (5)

Country Link
US (1) US9172398B2 (ja)
JP (1) JP5148015B2 (ja)
CN (1) CN102971515B (ja)
DE (1) DE112010005725B4 (ja)
WO (1) WO2012004836A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3142078B1 (en) * 2015-09-09 2023-04-26 Continental Automotive Technologies GmbH Central unit, road toll system and methods for operating a road toll system and a central unit
US10546488B2 (en) 2017-06-21 2020-01-28 International Business Machines Corporation Management of mobile objects
US10600322B2 (en) 2017-06-21 2020-03-24 International Business Machines Corporation Management of mobile objects
US10540895B2 (en) 2017-06-21 2020-01-21 International Business Machines Corporation Management of mobile objects
US10504368B2 (en) 2017-06-21 2019-12-10 International Business Machines Corporation Management of mobile objects
US10585180B2 (en) 2017-06-21 2020-03-10 International Business Machines Corporation Management of mobile objects
US10535266B2 (en) 2017-06-21 2020-01-14 International Business Machines Corporation Management of mobile objects

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002082841A (ja) * 2000-09-07 2002-03-22 Nissan Motor Co Ltd 電子制御装置の制御データ記憶装置
JP2006072461A (ja) * 2004-08-31 2006-03-16 Mitsubishi Electric Corp 車載電子制御装置
JP2009055407A (ja) * 2007-08-28 2009-03-12 Nec Corp 並列巡回符号生成装置および並列巡回符号検査装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69428930T2 (de) * 1993-02-15 2002-06-27 Honda Motor Co Ltd Verfahren und Vorrichtung zur Übertragung von Daten
JP3430579B2 (ja) * 1993-10-05 2003-07-28 株式会社デンソー 車両用通信システムの異常検出装置
JPH1027296A (ja) 1996-07-11 1998-01-27 Toshiba Corp 路車間通信システムおよびこの路車間通信システムにおける通信方法
DE19737182A1 (de) * 1997-08-26 1999-03-04 Bosch Gmbh Robert Verfahren zum Ändern von Daten
JP2000045858A (ja) * 1998-07-28 2000-02-15 Denso Corp 電子制御装置及び不揮発性メモリの書換回数記憶方法
US6678606B2 (en) * 2001-09-14 2004-01-13 Cummins Inc. Tamper detection for vehicle controller
JP4065790B2 (ja) * 2003-01-17 2008-03-26 三菱電機株式会社 車載電子制御装置
JP2005056263A (ja) * 2003-08-06 2005-03-03 Nissan Motor Co Ltd 制御装置
JP2005208958A (ja) 2004-01-23 2005-08-04 Hanshin Electric Co Ltd マイコンにおけるプログラムエリアのデータ保全方法
FR2872934B1 (fr) * 2004-07-07 2006-11-17 Peugeot Citroen Automobiles Sa Systeme de configuration d'un calculateur embarque a bord d'un vehicule automobile
US8600605B2 (en) * 2006-01-30 2013-12-03 GM Global Technology Operations LLC Distributed diagnostics architecture
JP4476320B2 (ja) * 2007-11-26 2010-06-09 三菱電機株式会社 監視制御回路を有する車載電子制御装置
JP4776610B2 (ja) * 2007-11-26 2011-09-21 三菱電機株式会社 監視制御回路を有する車載電子制御装置
JP2009187049A (ja) * 2008-02-01 2009-08-20 Fujitsu Ltd 装置
JP4454672B2 (ja) * 2008-06-13 2010-04-21 三菱電機株式会社 監視制御回路を有する車載電子制御装置
JP5094591B2 (ja) 2008-06-27 2012-12-12 株式会社日立製作所 照合システム
BR112012004367B1 (pt) * 2009-08-28 2019-09-10 Volvo Lastvagnar Ab método de detecção de adulteração.

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002082841A (ja) * 2000-09-07 2002-03-22 Nissan Motor Co Ltd 電子制御装置の制御データ記憶装置
JP2006072461A (ja) * 2004-08-31 2006-03-16 Mitsubishi Electric Corp 車載電子制御装置
JP2009055407A (ja) * 2007-08-28 2009-03-12 Nec Corp 並列巡回符号生成装置および並列巡回符号検査装置

Also Published As

Publication number Publication date
US20130166989A1 (en) 2013-06-27
US9172398B2 (en) 2015-10-27
WO2012004836A1 (ja) 2012-01-12
DE112010005725T5 (de) 2013-07-11
JPWO2012004836A1 (ja) 2013-09-02
CN102971515A (zh) 2013-03-13
CN102971515B (zh) 2015-12-16
DE112010005725B4 (de) 2017-07-20

Similar Documents

Publication Publication Date Title
JP5148015B2 (ja) 自動車用データ異常判定装置
CN104978534A (zh) 用于防止篡改车辆里程的方法和系统
US20050251308A1 (en) Method and device for controlling the functional unit of a motor vehicle
CN113359657B (zh) Ecu诊断配置码校验方法及其系统、电子控制单元
JP6180462B2 (ja) 車載用の電子制御装置
CN101398874A (zh) 利用散列函数装入程序到微处理器内部sram并运行的方法
JP6708596B2 (ja) 電子制御装置及び制御プログラム検証方法
JP5543274B2 (ja) 自動車用電子制御装置及び自動車用電子制御装置におけるデータ書き込み方法
JP2002334024A (ja) 電子制御装置
JPH11141391A (ja) 自動車用制御装置
US11361600B2 (en) Method for authenticating a diagnostic trouble code generated by a motor vehicle system of a vehicle
JP4534731B2 (ja) 電子制御装置及びその識別コード生成方法
KR20210155550A (ko) 주행 거리 계산 방법 및 이를 적용한 차량
JP7085029B2 (ja) メモリの書き換え履歴記録装置
US20050034034A1 (en) Control device with rewriteable control data
JP2014215120A (ja) 電子制御装置
JP5508216B2 (ja) 車両用電装部品の制御装置およびその制御方法
US20240086276A1 (en) Parameterization process and system for a vehicle
KR20080023882A (ko) 엔진제어유닛의 켈리브레이션 데이터의 감시 방법
JP2006004377A (ja) データ処理装置およびデータ処理方法
JP2007148570A (ja) 記憶装置の診断装置および診断方法
JP6396873B2 (ja) 電子制御装置及び診断方法
JP4636940B2 (ja) 電子制御装置
JP5803847B2 (ja) 電子制御装置
KR100842319B1 (ko) 전자제어장치에서 튜닝 파라미터의 고장을 검출하는 방법

Legal Events

Date Code Title Description
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: 20121030

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121127

R150 Certificate of patent or registration of utility model

Ref document number: 5148015

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20151207

Year of fee payment: 3

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250