JP2001142790A - 電子制御ユニットにおける記憶回路のチェック方法 - Google Patents

電子制御ユニットにおける記憶回路のチェック方法

Info

Publication number
JP2001142790A
JP2001142790A JP32376599A JP32376599A JP2001142790A JP 2001142790 A JP2001142790 A JP 2001142790A JP 32376599 A JP32376599 A JP 32376599A JP 32376599 A JP32376599 A JP 32376599A JP 2001142790 A JP2001142790 A JP 2001142790A
Authority
JP
Japan
Prior art keywords
storage circuit
control unit
address
data
register
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
JP32376599A
Other languages
English (en)
Inventor
Yoshitaka Sumita
芳孝 住田
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.)
Sumitomo Wiring Systems Ltd
AutoNetworks Technologies Ltd
Sumitomo Electric Industries Ltd
Original Assignee
Sumitomo Wiring Systems Ltd
AutoNetworks Technologies Ltd
Sumitomo Electric Industries 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 Sumitomo Wiring Systems Ltd, AutoNetworks Technologies Ltd, Sumitomo Electric Industries Ltd filed Critical Sumitomo Wiring Systems Ltd
Priority to JP32376599A priority Critical patent/JP2001142790A/ja
Priority to US09/709,717 priority patent/US6611931B1/en
Priority to EP06018124A priority patent/EP1736995A1/en
Priority to DE60035022T priority patent/DE60035022T2/de
Priority to EP00124762A priority patent/EP1113454B1/en
Publication of JP2001142790A publication Critical patent/JP2001142790A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Combined Controls Of Internal Combustion Engines (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

(57)【要約】 【課題】 制御処理前のイニシャル処理時間を短縮す
る。 【解決手段】 ROM1のチェックをイニシャル処理I
n内で実行するのではなく、メイン処理Mnの待ち時間
に分散して実行する。これによりメイン処理Mn前のイ
ニシャル処理Inにかかる時間を大幅に短縮できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、マイクロコンピ
ュータを用いた自動車用電子制御ユニットにおいて、当
該自動車用電子制御ユニット内の記憶回路の読み出し動
作及び書き込み動作をチェックする電子制御ユニットに
おける記憶回路のチェック方法に関する。
【0002】
【従来の技術】図5は一般的なマイクロコンピュータの
内部構成の概要を示すブロック図である。自動車用電子
制御ユニットに用いられるマイクロコンピュータMCに
おいては、図5の如く、記憶回路(ROM:リードオン
リーメモリ)1内に予め格納されたソフトウェアプログ
ラムや種々のデータをレジスタ2を通じてCPU(中央
制御ユニット)3が読み込み、このソフトウェアプログ
ラム及びデータに基づいてCPU3が様々な論理演算を
実行するようになっている。この際、ROM1内の情報
や、あるいはCPU3での演算処理結果等をRAM(ラ
ンダムアクセスメモリ)4に一旦格納し、このRAM4
内の情報を用いてCPU3が演算処理を行うようになっ
ている。
【0003】尚、図5中の符号5は外部からの信号を受
信してCPU3に入力するための入力I/F(インター
フェース)回路、符号6はCPU3で演算処理した結果
を外部へ送出する出力I/F(インターフェース)回路
をそれぞれ示している。
【0004】ここで、自動車用電子制御ユニットの場合
は、各種駆動系の駆動制御をCPU3が司るため、自動
車走行の安全性を十分に確保するためにはCPU3が誤
動作しないことが大前提となっており、したがって、R
OM1内に予め格納されたソフトウェアプログラム等が
誤りなくCPU3に読み出されることが必須となる。こ
のため、マイクロコンピュータMCの起動時にレジスタ
2やRAM4の動作チェックと併せて、ROM1からの
ソフトウェアプログラムやデータ等が誤りなく読み出さ
れるかどうかを検出することが重要である。
【0005】このROM1のチェックを行うために、各
アドレスに対応したプログラムデータを順番に加算演算
を行い、これをプログラムの最後まで繰り返して行い、
最後の下位16ビット(2バイト)のデータを、予め所
定のROM1の領域に格納しておいた基準データと比較
することで、ROM1のチェックを容易に行うことがで
きる。
【0006】図6はマイクロコンピュータMCの起動後
の動作を示すフローチャートである。まず、マイクロコ
ンピュータMCの電源投入またはリセット解除を行った
後、ステップSp1において各種初期設定を実行する。
具体的には、このステップSp1において、所定の発振
器から得られた動作クロックに対するCPU3(図5)
の動作周波数倍率の設定、入力IF5及び出力I/F6
におけるポートの設定、割り込み処理の許可/不許可等
の設定を行っておく。
【0007】次に、ステップSp2において、マイクロ
コンピュータMC内のRAM4のチェックを行い、さら
にステップSp3においてマイクロコンピュータMC内
のROM1のチェックを行う。しかる後、ステップSp
4〜Sp7において、ルームランプ処理、ドアロック処
理、ヘッドライト処理及びブザー処理といった各種駆動
系に関する処理を所定時間毎に繰り返し実行する。尚、
ステップSp1〜Sp3の処理は、一般にイニシャル処
理Inと呼ばれ、またステップSp4〜Sp7の処理は
一般にメイン処理Mnと呼ばれるものである。
【0008】ここで、図6中のステップSp3のROM
1のチェック処理について図7のフローチャートに沿っ
て詳述する。このROM1のチェック時には、まず図7
中のステップSo1においてレジスタ2のチェックを行
い、次いでステップSo2において、8ビット長の所定
のレジスタ部分(Bレジスタ)と、これに続く8ビット
長の所定のレジスタ部分(Cレジスタ)とを合わせた1
6ビット長のレジスタ部分(以下「BCレジスタ」と称
す)に数値「ゼロ」を代入して初期化する。そして、ス
テップSo3において、16ビット長の所定のレジスタ
部分(以下「HLレジスタ」と称す)へROM1の先頭
アドレスを値(番地)「HL」として設定する。
【0009】続いて、ステップSo4において、ROM
1の「HL」番地にあるデータを読み込んで、このデー
タを8ビット長の所定のレジスタ部分(Aレジスタ)に
書き込む。そして、ステップSo5において、上述した
BCレジスタ内の値にAレジスタ内の値を加算して、こ
れを新たなBCレジスタ内のデータとする。
【0010】次に、ステップSo6において番地「H
L」の値をインクリメントし、ステップSo7におい
て、インクリメントした番地「HL」と、ROM1の最
終アドレス(番地)から数値「2バイト」を減算した値
とを比較する。そして、インクリメントした番地「H
L」が、ROM1の最終アドレス(番地)から数値「2
バイト」を減算した値以下である場合は、ステップSo
4〜ステップSo7の処理を繰り返す。一方、インクリ
メントした番地「HL」が、ROM1の最終アドレス
(番地)から数値「2バイト」を減算した値より大きい
場合は次のステップSo8に進む。
【0011】ステップSo8においては、ROM1の最
終アドレス(番地)から数値「1バイト」を減算した値
を、所定の16ビット長のレジスタ部分(以下「DEレ
ジスタ」と称す)に格納する。このDEレジスタは、8
ビット長の所定のレジスタ部分(Dレジスタ)と、これ
に続く8ビット長の所定のレジスタ部分(Eレジスタ)
とを合わせて使用するものである。尚、ROM1の最終
アドレス(番地)から数値「1バイト」を減算したアド
レスは、ROM1の最終の8ビット(1バイト)のデー
タのヘッド位置を意味しており、ここには予め既述した
基準データが格納されている。
【0012】ここで、DEレジスタ内の数値「DE」を
アドレス(番地)として読み出し、ステップSo9にお
いて、ROM1内の番地「DE」に格納されているデー
タ(基準データ)を読み出してHLレジスタに格納す
る。
【0013】そして、ステップSo10において、HL
レジスタ内(基準データ)の値とBCレジスタ内の値
(各アドレスのプログラムデータを加算して得られた下
位16ビットのデータ)とを比較し、これらが異なって
いれば、ステップSo11に進んで所定のエラー処理を
行う。一方、HLレジスタ内の値とBCレジスタ内の値
とが一致していれば、ステップSo5で繰り返し加算し
てきたROM1の値が全て正常に読み出されてきたもの
と判断できる。この場合は、後工程に進んでメイン処理
Mn(ステップSo12)を順次実行する。
【0014】
【発明が解決しようとする課題】しかし、近年では、プ
ログラム・データが巨大化してきたため、ROM1内の
記憶領域も大きくなってきている。したがって、図5の
ように、ROM1のアドレスの順番にデータを足してい
く方法では、演算処理の回数が膨大なものとなってしま
う。このため、イニシャル時間が長くなり、ステップS
o12のメイン処理Mnへの移行が遅れてしまうことと
なる。その結果、制御系に遅れが生じ、機器の動作に支
障が生じる可能性がある。
【0015】例えば、ヘッドランプ駆動処理を行う電子
制御ユニットの場合は、走行中にヘッドランプを点灯し
ている状態で電源の瞬断やリセットが発生した場合、イ
ニシャル処理が長いとヘッドランプを再点灯するまでの
時間が長くなるなどの不都合がある。
【0016】そこで、この発明の課題は、ROM全体の
チェック処理時間を短縮し、イニシャル処理にかかる時
間を短縮することで、制御系の遅れを低減し得る電子制
御ユニットにおける記憶回路のチェック方法を提供する
ことにある。
【0017】
【課題を解決するための手段】上記課題を解決すべく、
請求項1に記載の発明は、中央制御ユニットが記憶回路
内に予め格納された種々のデータ及びソフトウェアプロ
グラムに基づいて所定の制御処理を実行する電子制御ユ
ニットにおいて、前記記憶回路の動作チェックを実行す
る電子制御ユニットにおける記憶回路のチェック方法で
あって、所定のイニシャル処理の後において、前記所定
の制御処理が時間待ち状態となっているか否かを検出す
る第一工程と、前記第一工程において前記所定の制御処
理が時間待ち状態となっていない旨が検出された場合
に、前記所定の制御処理を実行する第二工程と、前記第
一工程において前記所定の制御処理が時間待ち状態とな
っている旨が検出された場合に限り、前記所定の制御処
理の待ち時間内において前記記憶回路のチェックを実行
する第三工程とを備えるものである。
【0018】請求項2に記載の発明は、前記第三工程
は、前記記憶回路のチェックが完了しているか否かを検
出し、前記記憶回路のチェックが完了していた場合に前
記第一工程に戻る工程と、前記記憶回路のチェックが未
完了であることが検出される度に前記記憶回路のアドレ
スをインクリメントする工程と、インクリメントされる
毎にそのインクリメントされたアドレス内のデータを累
積加算してチェックサムデータを得る工程と、前記チェ
ックサムデータが得られる毎にインクリメントされたア
ドレスに基づいて累積加算の処理が最終段階に至ったか
否かを検知し、累積加算の処理が最終段階に至っていな
い場合に前記第一工程に戻る工程と、累積加算の処理が
最終段階に至った旨が検知された場合に、前記チェック
サムデータを所定の基準データと比較し、前記チェック
サムデータと前記基準データとが一致している場合に前
記記憶回路が正常に動作すると判断する一方、前記チェ
ックサムデータと前記基準データとが異なっている場合
に前記記憶回路が異常であると判断する工程とを備える
ものである。
【0019】請求項3に記載の発明は、前記電子制御ユ
ニットは自動車に搭載される自動車用電子制御ユニット
であり、前記電子制御ユニットの前記中央制御ユニット
が実行する前記制御処理は、自動車の各種駆動系の駆動
制御であるものである。
【0020】
【発明の実施の形態】<構成>この発明の一の実施の形
態に係る自動車用電子制御ユニットは、ROM(記憶回
路)のチェック処理をメイン処理で分散して行うこと
で、イニシャル処理にかかる時間を短縮するものであ
る。
【0021】図1はこの発明の一の実施の形態に係る自
動車用電子制御ユニット10及びその周辺装置を示すブ
ロック図である。この自動車用電子制御ユニット10
は、図1の如く、イグニッションスイッチ11、キー有
無スイッチ12、ドア開閉スイッチ13、ドアロック/
アンロックスイッチ14及びヘッドランプスイッチ15
といった各種入力系11〜15からの入力信号が入力さ
れ、これらの入力信号に基づいて、ルームランプ16、
ドアロックモータ17a〜17d、ブザーBZ及びヘッ
ドランプ18a,18bを駆動切り換えするためのヘッ
ドランプリレー19といった各種駆動系16〜19を駆
動制御するものであり、例えば、キー有無スイッチ12
でキーの挿入を検知しているにも拘わらずドア開閉スイ
ッチ13がドアの開状態を検知したときにブザーBZを
鳴動したり、ドアロック/アンロックスイッチ14のオ
ンオフ切替に従ってドアロックモータ17a〜17dを
駆動してドアロックまたはアンロックを行ったり、ヘッ
ドランプスイッチ15のオンオフ切替に従ってヘッドラ
ンプリレー19を操作してヘッドランプ18a,18b
を駆動切り換えするなどの各種操作制御を行うようにな
っている。
【0022】各種入力系11〜15からの入力信号は、
自動車用電子制御ユニット10内の入力回路21を経て
マイクロコンピュータ22に入力され、このマイクロコ
ンピュータ22で様々な分岐判断処理及び演算処理を経
て出力回路23を通じて駆動信号が各種駆動系16〜1
9に出力されるようになっている。尚、マイクロコンピ
ュータ22は、電圧監視回路(ウオッチドッグ回路)2
4により正常状態であるか否かが常時監視されている。
また、図1中の符号25はマイクロコンピュータ22の
動作クロックを規律するための発振器を示している。
【0023】マイクロコンピュータ22(MC)の内部
構成は、図5に示した一般的なマイクロコンピュータの
ものと同一であるため、その説明は省略する。尚、この
マイクロコンピュータ22にはメインタイマーが設置さ
れており、CPU3が動作していない時間を計時するこ
とで、CPU3の空き時間の有無を検知できるようにな
っている。
【0024】<動作>図2に、この自動車用電子制御ユ
ニット10の全体的な動作フローチャートを示す。この
自動車用電子制御ユニット10は、その電源投入または
リセット解除を行った後、ステップS1において各種初
期設定を実行する。具体的には、このステップS1にお
いて、発振器25から得られた動作クロックに対するC
PU3(図5)の動作周波数倍率の設定、入力回路21
及び出力回路23におけるポートの設定、割り込み処理
の許可/不許可等の設定を行っておく。また、レジスタ
2のチェックをもこの初期設定において実行しておく。
【0025】次に、ステップS2において、マイクロコ
ンピュータ22内のRAM4のチェックを行う。
【0026】しかる後、ステップS3において、マイク
ロコンピュータ22内のメインタイマーにカウント待ち
(CPU3の空き時間)が生じているか否かを判断す
る。そして、CPU3に空き時間が生じていると判断し
た場合は、ROM(記憶回路)1のアドレスをインクリ
メントしながら(ステップS4)、ROM1内のデータ
を次々と累積加算してチェックサムデータを得る(ステ
ップS5)。そして、この累積加算処理が最終段階に達
していない場合は、1回の累積加算毎にステップS3に
戻って、かかる処理を繰り返す(ステップS6)。そし
て、最終段階に至った時点で、ステップS7のように最
終段階のチェックサムデータのチェックを行い、エラー
が生じていた場合には(ステップS8)所定のエラー処
理を実行する(ステップS9)。一方、エラー処理が生
じていない場合は、ROM1のチェックを終了し、ステ
ップS3に戻る。
【0027】この間、ステップS3においてメインタイ
マーのカウント待ち(CPU3の空き時間)が発生して
いない場合は、ステップS11〜S14において、ルー
ムランプ処理、ドアロック処理、ヘッドライト処理及び
ブザー処理といった各種駆動系16〜19に関するメイ
ン処理Mnを所定時間毎に繰り返し実行する。このよう
にすることで、イニシャル処理InがステップS1,S
2の2つの処理だけで済み、イニシャル処理Inの時間
短縮化を達成できる。
【0028】ここで、図2中のステップS2について図
3のフローチャートに沿って詳述する。
【0029】RAM4のチェック時には、図3の如く、
まずステップSm1において、レジスタ2内の所定の1
6ビット長のHLレジスタへRAM4の先頭アドレスを
設定する。そして、ステップSm2において、HLレジ
スタと異なる他の8ビット長のレジスタ(Aレジスタと
称す)に数値「00H」を格納してリセットを行い、続
いてステップSm3において、予め定められた特定のデ
ータ(data)をAレジスタに格納する。そして、ス
テップSm4において、HLレジスタの「HL」番地へ
Aレジスタ内のデータを書き込み、ステップSm5にお
いてAレジスタに数値「00H」を格納してリセットし
た後、ステップSm6においてHLレジスタの「HL」
番地に格納されたデータをAレジスタに読み込む。そし
て、ステップSm7においてHLレジスタの番地「H
L」をインクリメントした後、ステップSm8でそのイ
ンクリメントした後の「HL」番地にAレジスタ内のデ
ータを書き込む。
【0030】そして、ステップSm5からステップSm
8までの動作を、番地「HL」がRAM4の最終アドレ
スに到達するまで繰り返す(ステップSm9)。そし
て、ステップSm10において、RAM4の最終アドレ
スからひとつ手前のアドレスに格納された値(ステップ
Sm6でAレジスタに格納されたデータ)が最初の「d
ata」の値と同一であるかどうかを比較判断し、同一
であれば、さらに最終アドレスのチェック、即ち、RA
M4の最終アドレスに格納された値(ステップSm6で
Aレジスタに格納されたデータ)が最初の「data」
の値と同一であるかどうかを確認してから(図3中では
図示省略)、次の工程(ステップSm11)に進む。
尚、この場合、図3中では図示していないが、RAM4
の最終アドレスに格納された値(ステップSm6でAレ
ジスタに格納されたデータ)が最初の「data」の値
と同一でない場合は、ステップSm12に進んでエラー
処理を実行する。
【0031】一方、ステップSm10において、RAM
4の最終アドレスからひとつ手前のアドレスに格納され
た値(ステップSm6でAレジスタに格納されたデー
タ)が最初の「data」の値と異なる比較結果が得ら
れた場合は、ステップSm12でエラー処理を実行す
る。
【0032】このように、この自動車用電子制御ユニッ
ト10では、先頭アドレスで示されるRAM4のデータ
を読み出し、その読み出した内容を次アドレスに書き込
むようにし、この動作を最終アドレスまで繰り返した後
に、最終アドレスのRAM値と先頭アドレスのRAM値
を1度だけ比較し、同一データであれば全RAMが正常
であったと判定するようにしているので、図7に示した
従来例に比べて、データの比較処理が最終アドレスデー
タとの比較の1回のみで済み、RAM4のチェック手順
を簡素化でき、そのチェック処理時間を大幅に短縮する
ことが可能となる。したがって、イニシャル処理In
(図2中のステップS1〜S3)にかかる時間を短縮で
き、例えば、電源瞬断やリセット発生後のヘッドランプ
18a,18b等の各種駆動系16〜19の瞬断等の時
間を短縮できる。
【0033】次に、図2中のステップS3以降のROM
1のチェックについて図4のフローチャートに沿って詳
述する。尚、ROM1の最終の16ビットの領域には、
チェックサムデータの正誤判断するための16ビット
(2バイト)長の基準データが予め格納されているもの
とする。
【0034】上述の如く、ROM1のチェックは、イニ
シャル処理Inの中で実行せずに、ステップS11〜S
14のメイン処理Mnが始まった後にカウント待ちで停
止している間に分散的に実行する。
【0035】即ち、まず図4の如く、まずステップSn
1(図2中のS1のうちの一部の処理)において、レジ
スタ2のチェックを実行し、次いでステップSn2(図
2中のS2)において、図3に示したRAM4について
のチェックを実行する。
【0036】そして、ステップSn3において、RAM
4の所定の第一領域にROM1の先頭アドレスを数値
「MEM1」として設定する。次に、ステップSn4に
おいて、ROM1内の番地「MEM1」を先頭とする8
ビットのデータ(即ち、ROM1の先頭の8ビット長の
データ)を読み込み、このデータをRAM4の所定の第
二領域に数値「MEM2」として格納する。これによ
り、RAM4の第二領域(数値「MEM2」)に、RO
M1の先頭アドレスを先頭とする8ビットのデータが格
納される。
【0037】そして、ステップS1の初期設定のうちの
残りの処理(割り込み処理の許可/不許可の設定等)を
ステップSn5で実行しておく。しかる後、ステップS
n6に進み、各種駆動系16〜19についてのメイン処
理Mnの実行動作に移行する。
【0038】ここで、ステップSn7では、マイクロコ
ンピュータ22内のタイマーがカウント待ちを行ってC
PU3が動作を停止しているかどうかを検知する。そし
て、CPU3が動作を停止していない場合は、メイン処
理Mn(ステップSn8)を行った後、再びステップS
n7に戻り、メインタイマーのカウント待ちが発生する
までステップSn7及びSn8の動作を繰り返す。
【0039】一方、CPU3が動作を停止してタイマー
のカウント待ちが発生したときには、ステップSn9に
進み、ROM1のチェックが未完了であるかどうかを確
認する。そして、ROM1のチェックが既に完了してい
る場合は、再びステップSn7まで戻り、ステップSn
7以降の処理を繰り返す。一方、ROM1のチェックが
未完了である場合には、RAM4から数値「MEM1」
を読み出して、この「MEM1」の値をHLレジスタに
数値「HL」として格納する(ステップSn10)。こ
れとともに、既に「MEM2」としてRAM4内に記憶
されているデータ(この時点ではROM1の先頭アドレ
スから8ビットのデータが格納されている)を読み出し
て、レジスタ2のHLレジスタ及びAレジスタと異なる
他の16ビット長のレジスタ部分(「BCレジスタ」)
に数値「BC」として格納する(ステップSn11)。
【0040】尚、このBCレジスタは、後述するステッ
プSn19においてチェックサムデータとして使用され
るものであり、また、HLレジスタ内の数値「HL」は
そのチェックサムデータ「BC」の累積加算が最終段階
に到達したかどうかを判断するためにカウントを行うR
OM1のアドレスを意味している。そして、このBCレ
ジスタ内の数値「BC」は、8ビット長のBレジスタと
同じく8ビット長のCレジスタとが合成されて16ビッ
ト長に設定されており、ROM1内の8ビットのデータ
を下位8ビットに格納した場合は、上位8ビットはその
数値が「00000000」となる。ただし、後述のよ
うにBCレジスタの数値「BC」に次々と累積加算を繰
り返すうちに、上位の8ビットも次第に増加していくよ
うになる。
【0041】次に、ステップSn12において、ROM
1のアドレスを意味するHLレジスタの数値「HL」を
「1バイト(8ビット)」だけインクリメントした後、
ステップSn13で、そのインクリメントしたROM1
内の新たな「HL」番地の8ビットのデータをAレジス
タ内に書き込む。
【0042】そして、ステップSn14において、BC
レジスタの16ビット長の数値とAレジスタの8ビット
長の数値の合計を新たにBCレジスタ内の16ビット長
の数値「BC」として上書きする。
【0043】次に、ステップSn15及びSn16にお
いて、この時点での番地「HL」の値を「MEM1」
に、チェックサムデータ「BC」を「MEM2」にそれ
ぞれ待避する。これにより、それ以後にステップSn7
に戻ってメイン処理Mn(ステップSn8)が実行され
る場合にも、再度CPU3の待ち時間になる時点まで、
途中経過のROM1のアドレス値「HL」をRAM4の
「MEM1」に、途中経過チェックサムデータ「BC」
をメモリの「MEM2」へ、格納しておくことができ
る。
【0044】そして、ステップSn17に進む。このス
テップSn17では、チェックサムデータ「BC」の累
積加算処理が途中経過段階であるのか、あるいは最終段
階まで完了しているのかを判断する。具体的には、RO
M1の最終アドレスから「3バイト」を減算し、この減
算したアドレスの値と数値「HL」とを比較する。ここ
で、ROM1の最終アドレスから「3バイト」を減算す
るのは、後述のように、ROM1の最後の8ビット長の
領域(即ち、最終アドレスから「1バイト」を減算した
アドレスから最終アドレスまでの領域)とそのひとつ手
前の8ビット長の領域(即ち、最終アドレスから「2バ
イト」を減算したアドレスから最終アドレスから「1バ
イト」を減算したアドレスまでの領域)の2領域から1
つの16ビット長の基準データを構成し、この基準デー
タを除外した最後の8ビット長のデータ(即ち、最終ア
ドレスから「3バイト」を減算したアドレスから最終ア
ドレスから「2バイト」を減算したアドレスまでの領
域)をチェックサムデータ「BC」に加算した時点でそ
の累積加算処理を終了するためである。
【0045】具体的に、このステップSn17において
は、番地「HL」が、ROM1の最終アドレスから「3
バイト」を減算した値より小さければ、累積加算処理が
最終段階に至っていないものとして再びステップSn7
まで戻り、ステップSn7以降の処理を繰り返す。この
繰り返しにより、ROM1内において1つずつインクリ
メントされた「HL」番地のデータを次々とチェックサ
ムデータ「BC」に累積加算することになる。尚、この
累積加算を繰り返すうちに、加算された数値が16ビッ
トを越えてオーバーフローする場合は、16ビット長か
らはみ出した上位のビットを無視するようにする。
【0046】一方、ステップSn17において、数値
「HL」が、ROM1の最終アドレスから「3バイト」
を減算した値以上であれば、累積加算したデータが最後
の16ビット長の基準データ(即ち、最終アドレスから
「2バイト」を減算したアドレスから最終アドレスまで
の領域)を除外して最後の8ビット長のデータ(即ち、
最終アドレスから「3バイト」を減算したアドレスから
最終アドレスから「2バイト」を減算したアドレスまで
の領域)に到達している旨を検知したことになり、よっ
て累積加算処理が最終段階に至ったものとしてステップ
Sn18に進む。
【0047】このステップSn18では、ROM1にお
いて、番地「HL」に「2バイト」を加算したアドレス
を先頭とする8ビット(1バイト)長のデータを読み出
して、これを所定の8ビット(1バイト)長のレジスタ
(Dレジスタ)に格納する。これとともに、番地「H
L」に「1バイト」を加算したアドレスを先頭とする8
ビット(1バイト)長のデータを読み出して、これを所
定の8ビット(1バイト)長のレジスタ(Eレジスタ)
に格納する。ここで、番地「HL」に「2バイト」を加
算したアドレスは、ROM1内の最終の8ビット長のデ
ータの先頭アドレスを意味しており、番地「HL」に
「1バイト」を加算した値は、ROM1内の最終よりひ
とつ手前の8ビット長のデータの先頭アドレスを意味し
ている。そして、Dレジスタを上位8ビット、Eレジス
タを下位8ビットの合計16ビット(2バイト)長のレ
ジスタ(DEレジスタ)を構成することで、このDEレ
ジスタの値が、チェックサムデータ「BC」と照合され
る基準データを構成することになる。
【0048】その後、ステップSn19において、BC
レジスタの値がDEレジスタの値に一致しているか否か
を比較判断する。即ち、ROM1が正常であれば、RO
M1に書かれた基準データ(DEレジスタの値「D
E」)とチェックサムデータ(BCレジスタの値「B
C」)が等しくなるはずであるため、一致していればR
OM1のチェックを終了して(ステップSn20)、ス
テップSn7に戻り、このステップSn7以降の処理を
繰り返す。この場合、メインタイマーのカウント待ちが
生じていない場合はステップSn8のメイン処理Mnが
繰り返される。一方、メインタイマーのカウント待ちが
生じている場合は、ROM1のチェックは既に完了して
いるため、ステップSn9の判断では常に「No」の判
断がなされ、次に電源投入またはリセット解除が行われ
るまで、ステップSn10以降の処理が行われることは
ない。
【0049】一方、ステップSn19において、DEレ
ジスタの値とBCレジスタの値とが不一致であれば、R
OMデータが何らかの原因で変わったものと判断して、
ステップSn21のエラー処理に進む。
【0050】このように、ROMのチェック処理をイニ
シャル処理Inで実行するのではなくメイン処理Mnの
待ち時間に分散して実行しているので、イニシャル処理
Inにかかる時間を大幅に短縮でき、電源瞬断やリセッ
ト発生後のヘッドランプの瞬断等の時間を短縮できる。
【0051】
【発明の効果】請求項1及び請求項2に記載の発明によ
れば、記憶回路のチェックをイニシャル処理内で実行す
るのではなく、制御処理の待ち時間に分散して実行して
いるので、制御処理前のイニシャル処理にかかる時間を
大幅に短縮できる。
【0052】請求項3に記載の発明によれば、電源瞬断
やリセットが発生しやすい自動車用電子制御ユニットに
適用することで、ヘッドランプの瞬断等の各種駆動系の
動作再開に要する時間を短縮でき、走行上の安全性を向
上できるという効果がある。
【図面の簡単な説明】
【図1】自動車用電子制御ユニット及びその周辺装置を
示すブロック図である。
【図2】自動車用電子制御ユニットの全体的な動作手順
を示すフローチャートである。
【図3】自動車用電子制御ユニットにおけるRAMのチ
ェック手順を示すフローチャートである。
【図4】この発明の一の実施の形態に係る自動車用電子
制御ユニットにおけるROMのチェック手順を示すフロ
ーチャートである。
【図5】一般的な自動車用電子制御ユニットの内部構成
を示すブロック図である。
【図6】従来の自動車用電子制御ユニットの全体的な動
作手順を示すフローチャートである。
【図7】従来の自動車用電子制御ユニットにおけるRA
Mのチェック手順を示すフローチャートである。
【符号の説明】
1 ROM 2 レジスタ 3 CPU 4 RAM 10 自動車用電子制御ユニット 11〜15 各種入力系 16〜19 各種駆動系 21 入力回路 22 マイクロコンピュータ 23 出力回路
フロントページの続き (72)発明者 住田 芳孝 愛知県名古屋市南区菊住1丁目7番10号 株式会社ハーネス総合技術研究所内 Fターム(参考) 3G084 DA27 DA32 EB02 EB07 EB22 FA35 FA36 5B018 GA03 HA13 HA31 KA23 LA06 NA01 NA04 QA02 QA05 RA11 9A001 BB03 BB04 HH34 LL06

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 中央制御ユニットが記憶回路内に予め格
    納された種々のデータ及びソフトウェアプログラムに基
    づいて所定の制御処理を実行する電子制御ユニットにお
    いて、前記記憶回路の動作チェックを実行する電子制御
    ユニットにおける記憶回路のチェック方法であって、 所定のイニシャル処理の後において、前記所定の制御処
    理が時間待ち状態となっているか否かを検出する第一工
    程と、 前記第一工程において前記所定の制御処理が時間待ち状
    態となっていない旨が検出された場合に、前記所定の制
    御処理を実行する第二工程と、 前記第一工程において前記所定の制御処理が時間待ち状
    態となっている旨が検出された場合に限り、前記所定の
    制御処理の待ち時間内において前記記憶回路のチェック
    を実行する第三工程とを備える電子制御ユニットにおけ
    る記憶回路のチェック方法。
  2. 【請求項2】 請求項1に記載の電子制御ユニットにお
    ける記憶回路のチェック方法であって、 前記第三工程は、 前記記憶回路のチェックが完了しているか否かを検出
    し、前記記憶回路のチェックが完了していた場合に前記
    第一工程に戻る工程と、 前記記憶回路のチェックが未完了であることが検出され
    る度に前記記憶回路のアドレスをインクリメントする工
    程と、 インクリメントされる毎にそのインクリメントされたア
    ドレス内のデータを累積加算してチェックサムデータを
    得る工程と、 前記チェックサムデータが得られる毎にインクリメント
    されたアドレスに基づいて累積加算の処理が最終段階に
    至ったか否かを検知し、累積加算の処理が最終段階に至
    っていない場合に前記第一工程に戻る工程と、 累積加算の処理が最終段階に至った旨が検知された場合
    に、前記チェックサムデータを所定の基準データと比較
    し、前記チェックサムデータと前記基準データとが一致
    している場合に前記記憶回路が正常に動作すると判断す
    る一方、前記チェックサムデータと前記基準データとが
    異なっている場合に前記記憶回路が異常であると判断す
    る工程とを備える電子制御ユニットにおける記憶回路の
    チェック方法。
  3. 【請求項3】 請求項1に記載の電子制御ユニットにお
    ける記憶回路のチェック方法であって、 前記電子制御ユニットは自動車に搭載される自動車用電
    子制御ユニットであり、 前記電子制御ユニットの前記中央制御ユニットが実行す
    る前記制御処理は、自動車の各種駆動系の駆動制御であ
    ることを特徴とする電子制御ユニットにおける記憶回路
    のチェック方法。
JP32376599A 1999-11-15 1999-11-15 電子制御ユニットにおける記憶回路のチェック方法 Pending JP2001142790A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP32376599A JP2001142790A (ja) 1999-11-15 1999-11-15 電子制御ユニットにおける記憶回路のチェック方法
US09/709,717 US6611931B1 (en) 1999-11-15 2000-11-13 Check method of temporary storage circuit in electronic control unit
EP06018124A EP1736995A1 (en) 1999-11-15 2000-11-13 Check method of temporary storage circuit in electronic control unit
DE60035022T DE60035022T2 (de) 1999-11-15 2000-11-13 Prüfungsverfahren einer Zwischenspeicherschaltung in einer elektronischen Steuereinheit
EP00124762A EP1113454B1 (en) 1999-11-15 2000-11-13 Check method of temporary storage circuit in electronic control unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32376599A JP2001142790A (ja) 1999-11-15 1999-11-15 電子制御ユニットにおける記憶回路のチェック方法

Publications (1)

Publication Number Publication Date
JP2001142790A true JP2001142790A (ja) 2001-05-25

Family

ID=18158386

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32376599A Pending JP2001142790A (ja) 1999-11-15 1999-11-15 電子制御ユニットにおける記憶回路のチェック方法

Country Status (1)

Country Link
JP (1) JP2001142790A (ja)

Similar Documents

Publication Publication Date Title
US6158018A (en) Integrated circuit including patching circuitry to bypass portions of an internally flawed read only memory and a method therefore
US10894519B2 (en) Vehicle switch control device and switch state detection method
US6353880B1 (en) Four stage pipeline processing for a microcontroller
JP2008545190A (ja) 集積回路およびオンチップメモリへのアクセスの確保方法
KR970000841B1 (ko) 인터럽트 통지방식
US5574943A (en) Gate-A20 and CPU reset circuit for mircroprocessor-based computer system
JP2001142790A (ja) 電子制御ユニットにおける記憶回路のチェック方法
JP2001142791A (ja) 電子制御ユニットにおける一時記憶回路のチェック方法
JP2004516547A (ja) 中断制御装置
EP1113454B1 (en) Check method of temporary storage circuit in electronic control unit
JP2006236089A (ja) 自動車用制御装置
JPH0764868A (ja) 記憶更新装置
US20230222071A1 (en) Control device and electronic control device
JPH0337897A (ja) マイクロコンピュータ
JPH08171504A (ja) エミュレ−ション装置
US5611068A (en) Apparatus and method for controlling pipelined data transfer scheme between stages employing shift register and associated addressing mechanism
JP3755168B2 (ja) プログラマブルコントローラ
JPH10198524A (ja) ハードディスク制御装置
JPH10116263A (ja) マイクロコンピュータとそのデータ読み出し試験方法
CN114816991A (zh) 车载控制器的软件切换方法、装置、电子设备和存储介质
JP2023009818A (ja) 車両用電子制御装置及び車両用電子制御装置による制御方法
JP3232301B2 (ja) データ処理装置
JPH0850567A (ja) データ転送装置
CN113254030A (zh) 车载微处理器软件应急刷新方法、装置、存储介质及系统
JP2984628B2 (ja) マイクロコンピュータ

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040312

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040330

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040803