JPH1139172A - 電子制御装置 - Google Patents
電子制御装置Info
- Publication number
- JPH1139172A JPH1139172A JP9194627A JP19462797A JPH1139172A JP H1139172 A JPH1139172 A JP H1139172A JP 9194627 A JP9194627 A JP 9194627A JP 19462797 A JP19462797 A JP 19462797A JP H1139172 A JPH1139172 A JP H1139172A
- Authority
- JP
- Japan
- Prior art keywords
- message
- unit
- processing
- storage unit
- stored
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/449—Object-oriented method invocation or resolution
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Abstract
機能毎に細分化した各オブジェクトの処理を、リアルタ
イムに且つ多くのメモリ資源を消費することなく行うこ
とのできる電子制御装置を提供する。 【解決手段】 オブジェクトのメソッドの実行によりメ
ッセージが出されると、そのメッセージをオブジェクト
メッセージ格納部に記憶(キューイング)し、何れかの
オブジェクトのメソッドの実行が終了した時点で、メッ
セージ配送処理を実行して、オブジェクトメッセージ格
納部にメッセージが記憶されていれば(S210:YE
S)、最初に記憶されたメッセージを1つ読み出して
(S220)、そのメッセージの出力先であるオブジェ
クトのメソッドの実行へ移行する(S240,S25
0)。この結果、各オブジェクトのメソッドをリアルタ
イムに実行でき、しかも、メッセージのみを記憶すれば
良く、記憶情報量が少なくて済む。
Description
のプログラムに従って制御対象を制御する電子制御装置
に関する。
する電子制御装置においては、マイクロコンピュータ
(詳しくは、マイクロコンピュータのCPU)によって
実行されるエンジン制御用のプログラムを、制御の種類
毎に作成するようにしていた。例えば燃料噴射制御に関
しては、エンジンの回転に同期した通常の噴射制御,エ
ンジンの回転とは非同期の噴射制御,及び高回転時の燃
料カット制御といった具合に、制御の種類毎(以下、制
御毎という)にプログラムを夫々作成していた。
したのでは、各プログラムに共通部分が多く含まれるこ
ととなるため、プログラムを格納するメモリ資源やプロ
グラムの開発時間に無駄が生じてしまう。例えば、上記
燃料噴射制御の例では、各制御毎のプログラム中に、イ
ンジェクタ(燃料噴射弁)を駆動するための処理部分が
重複して設けられることとなる。また、各プログラムに
共通部分が多いため、その共通部分に関わる制御仕様を
変更しなければならない場合には、各プログラムの中か
ら仕様変更部分に関係するプログラムを捜し出して修正
する必要があり、プログラム開発に多大な時間を要して
しまうこととなっていた。
置においても、パーソナルコンピュータなどの場合と同
様に、制御プログラムをオブジェクト指向によって作成
する(プログラミングする)ことを試みている。オブジ
ェクト指向とは、人間が行動するときの如く操作対象に
注目して仕事を進めるという考え方を、コンピュータシ
ステムにモデル化したものであり、このオブジェクト指
向のプログラミングでは、プログラムの処理を、オブジ
ェクトという単位で考える。
タを処理する手続きであるプログラム(以下、メソッド
という)とを、一まとめにしたソフトウェアモジュール
であり、オブジェクト指向のプログラミングでは、制御
プログラムの全機能を部品毎などの単位機能毎に細分化
して、その単位機能毎にオブジェクトを用意する。そし
て、オブジェクト指向のプログラミングでは、オブジェ
クト間でメッセージのやり取りを行う、所謂オブジェク
ト間メッセージ通信の考え方を利用して、各オブジェク
トが結合される。
するためのプログラムを、オブジェクト指向に基づき作
成した場合の一例について、図22を用いて説明する。
尚、図22は、エンジンのアイドル回転数制御に関する
機能を細分してオブジェクト化し、これに各オブジェク
ト間でのメッセージのやり取りを加えて示したメッセー
ジシーケンスチャートである。そして、このメッセージ
シーケンスチャートでは、オブジェクトを上下方向の線
で示し、そのオブジェクト間でのメッセージのやり取り
を左右の矢印で示している。また、オブジェクトを示す
線の上にある長方形の枠は、そのオブジェクトの処理を
表している。
ジェクトが…する。」や「オブジェクトは…する。」と
いったオブジェクトを主語とした動作表現は、実際に
は、マイクロコンピュータのCPUがオブジェクトに従
って動作する(換言すれば、CPUがオブジェクトのメ
ソッドを実行する)ことで実現される機能手段(即ち、
本発明における単位処理手段)が、上記「…」の動作を
行うことを示している。また、「オブジェクトが動作す
る」とは、マイクロコンピュータのCPUが、そのオブ
ジェクトのメソッドを実行することを示している。
トの機能について説明する。ISCオブジェクトは、エ
ンジンの水温値などに基づき、エンジン回転数を最適な
アイドル回転数にするための目標スロットル開度を算出
するオブジェクトであり、水温センサオブジェクトは、
エンジンの水温を検出する水温センサからのアナログ信
号をAD変換したデジタル値を、水温値に変換するオブ
ジェクトである。そして、AD変換器オブジェクトは、
水温センサからのアナログ信号をデジタル値に変換(A
D変換)するためのAD変換器を制御するオブジェクト
であり、スロットルコントローラオブジェクトは、エン
ジンのスロットル弁を、ISCオブジェクトによって算
出された目標スロットル開度となるように制御するオブ
ジェクトである。
現される処理の内容について説明する。まず、アイドル
回転数制御タイミングになるとISCオブジェクトが動
作を開始する(つまり、CPUがISCオブジェクトの
メソッドの実行を開始する)。そして、図22のに示
すように、ISCオブジェクトが、水温センサオブジェ
クトに水温取得要求のメッセージを送る。
て、図22のに示すように、AD変換器オブジェクト
に水温AD値取得要求のメッセージを送る。そして、そ
の水温AD値取得要求のメッセージに伴い、AD変換器
オブジェクトが動作して、水温センサからのアナログ信
号をデジタル信号に変換する演算を行う。
了した後、図22のに示すように、水温センサオブジ
ェクトに水温AD値取得応答のメッセージ(即ち、水温
センサのデジタル変換が終了したというメッセージ)を
送る。すると、水温センサオブジェクトが、AD変換器
オブジェクトの演算結果に基づいて水温値を算出し、そ
の算出後、図22のに示すように、ISCオブジェク
トに水温取得応答のメッセージ(即ち、水温値の算出が
終了したというメッセージ)を送る。
伴い、ISCオブジェクトが、上記算出された水温値に
基づいて目標スロットル開度を算出し、その算出後、I
SCオブジェクトは、図22のに示すように、スロッ
トルコントローラオブジェクトにスロットル設定要求の
メッセージ(即ち、目標スロットル開度を算出したこと
を示すメッセージ)を送る。
クトが動作して、エンジンのスロットル弁を、上記算出
された目標スロットル開度となるように制御し、これに
より、エンジン回転数が最適なアイドル回転数に制御さ
れる。このように、オブジェクト指向のプログラムで
は、各オブジェクトが他のオブジェクトに対し処理依頼
としてのメッセージを出すことにより、そのメッセージ
の出力先であるオブジェクトが動作する、といった仮想
的なオブジェクト間メッセージ通信により、各オブジェ
クトの処理順序が決定される。
ラムを作成すれば、プログラムの共通部分をまとめ易く
なり、制御毎にプログラムを作成する場合と比較して、
制御仕様の変更時にもプログラムの修正が非常に容易と
なる。
の電子制御装置において、その制御プログラムをオブジ
ェクト指向で作成しようとしても、各オブジェクト間で
のメッセージのやり取り(即ち、オブジェクト間メッセ
ージ通信)を実現させるための有効な手段がなかった。
の手法と関数コールの手法とを、オブジェクト間メッセ
ージ通信に適用することも考えられるが、以下に説明す
るように、両手法共に大きな欠点がある。まず、フラグ
を用いた手法では、図23に示すように、無限ループの
メインルーチンを設け、そのメインルーチンの中で、各
オブジェクトに対応するフラグが立っているか否かを判
定する。そして、フラグが立っていると判定した場合に
は、そのフラグに対応するオブジェクトの処理(つま
り、そのオブジェクトのメソッド)を実行し、フラグが
立っていないと判定した場合には、そのフラグに対応す
るオブジェクトの処理を飛び越えて、次のフラグの判定
を行うようにする。
オブジェクトA,B,Cに夫々対応するフラグFA,F
B,FCが立っていない場合には、メインルーチンのス
テップ(以下、単に「S」と記す)10〜S30の全て
で否定判定される(S10〜S30:NO)。そして、
例えばオブジェクトAの処理が起動されて、その処理中
でオブジェクトBに対応するフラグFBが立てられると
(FB←1)、オブジェクトAの処理が終了して、その
後メインルーチンのS30でフラグFBが立っていると
判定されると(S30:YES)、オブジェクトBの処
理が実行される。また、オブジェクトBの処理中でオブ
ジェクトCに対応するフラグFCが立てられると(FC
←1)、オブジェクトBの処理が終了して、その後メイ
ンルーチンのS20でフラグFCが立っていると判定さ
れると(S20:YES)、オブジェクトCの処理が実
行される。
処理中にフラグを立てることで、他のオブジェクトに対
する処理依頼としてのメッセージが出されることとな
る。しかしながら、フラグを用いる上記の手法では、フ
ラグの監視順序がプログラムの設計時に決ってしまい、
1つのオブジェクトの処理を行うために別のオブジェク
トに対応するフラグを判定しなければならず、無駄な処
理が多くなる。例えば、図23の例では、オブジェクト
Aの次にオブジェクトBの処理を行う場合に、メインル
ーチンのS10〜S30までの処理を余分に行う必要が
生じる。尚、図23における点線は、オブジェクトA〜
C以外の他のオブジェクトに対応するフラグを判定する
ための処理が、更に存在していることを示している。
各オブジェクトの処理を、イベントドリブン(即ち、処
理要求が発生・終了したことにより動作が引き起こされ
ること)で行うことができず、リアルタイム性に欠けて
しまう。次に、関数コールを用いた手法では、図24に
示すように、オブジェクトのメソッド内に、次に処理し
たいオブジェクトのメソッドをコールする命令を、書き
込んでおくようにする。そして、オブジェクト間のメッ
セージ通信を次々に行いたい場合には、コールされるオ
ブジェクトのメソッド内に、他のオブジェクトのメソッ
ドをコールする命令を予め書き込んでおく。
ブジェクトAのメソッドの実行中に、オブジェクトBの
メソッドをコールし、更に、オブジェクトBのメソッド
の実行中に、オブジェクトCのメソッドをコールする。
つまり、この手法では、関数コールにより、他のオブジ
ェクトに対する処理依頼としてのメッセージが出される
こととなる。
手法では、コールする側のメソッドの実行を一時中断
し、コールされる側のメソッドを実行した後で、中断し
ていたメソッドの実行を再開することとなる。よって、
中断していたメソッドの実行を再開するためには、中断
直前のマイクロコンピュータの内部状態(即ち、プログ
ラムカウンタや各種レジスタの値)を、RAMのスタッ
ク領域に記憶しておかなければならず、RAMの記憶領
域を多く消費してしまう。
成されるコールの組み合せ)の数が多くなればなるほ
ど、消費されるRAMの記憶領域が顕著に多くなってし
まい、電子制御装置のようにメモリ資源が限られた装置
では限界がある。本発明は、こうした問題に鑑みなされ
たものであり、制御対象を制御するためのプログラムを
単位機能毎に細分化した各オブジェクトの処理を、リア
ルタイムに且つ多くのメモリ資源を消費することなく行
うことのできる電子制御装置を提供することを提供する
ことを目的としている。
請求項1に記載の本発明の電子制御装置は、制御対象を
制御するためのプログラムを単位機能毎に細分化したオ
ブジェクトに従って、前記各単位機能を実現するための
処理を夫々行う複数の単位処理手段を備えている。
たように、マイクロコンピュータのCPUがオブジェク
トに従って動作する(換言すれば、CPUがオブジェク
トのメソッドを実行する)ことで実現される機能手段で
ある。つまり、マイクロコンピュータのCPUがオブジ
ェクトのメソッドを実行することにより、そのオブジェ
クトに割り振られた機能を実現するための処理が行われ
る。
前提として、複数の単位処理手段の何れかが択一的に処
理動作を行うと共に、各単位処理手段が、その処理動作
中に他の単位処理手段に対して処理依頼としてのメッセ
ージを出すことにより、そのメッセージの出力先である
単位処理手段が処理を行う。
ッセージ記憶手段と起動制御手段とを備えており、メッ
セージ記憶手段が、単位処理手段の出したメッセージを
記憶する。そして、起動制御手段が、複数の単位処理手
段の何れかが処理動作を終了した時点で、メッセージ記
憶手段に記憶されているメッセージを読み出し、その読
み出したメッセージの出力先である単位処理手段に処理
を開始させる。
を開始し、その処理動作の途中で他の単位処理手段へメ
ッセージを出すと、そのメッセージはメッセージ記憶手
段に記憶される。そして、メッセージを出した単位処理
手段の処理動作が終了すると、その時点から、上記記憶
されたメッセージの出力先である単位処理手段の処理が
開始されることとなる。
ば、オブジェクトが他のオブジェクトにメッセージを出
すと、そのメッセージがメッセージ記憶手段に一旦記憶
され、そのメッセージを出したオブジェクトの処理が終
了すると、直ちに、上記記憶されたメッセージの出力先
であるオブジェクトの処理が行われることとなる。
制御対象を制御するためのプログラムを単位機能毎に細
分化した各オブジェクトの処理を、リアルタイムに行う
ことができる。つまり、オブジェクト間メッセージ通信
にフラグチェックの手法を適用した場合の如くリアルタ
イム性に欠けることなく、各オブジェクトの処理をイベ
ントドリブンで行うことができる。
関数コールの手法を適用した場合のように、実行中のオ
ブジェクトの処理を中断して他のオブジェクトの処理を
行う、といったものではないため、各オブジェクトの処
理を、多くのメモリ資源を消費することなく行うことが
できる。
数コールの手法を適用した場合には、前述したように、
マイクロコンピュータの内部状態(プログラムカウンタ
や各種レジスタの値)を記憶しなければならないが、本
発明の電子制御装置によれば、メッセージのみを記憶す
れば良く、記憶すべき情報量が格段に少なくて済むので
ある。
載のように、メッセージ記憶手段に記憶されているメッ
セージを読み出して、その読み出したメッセージの出力
先である単位処理手段に処理を開始させると共に、その
読み出したメッセージをメッセージ記憶手段から消去す
るように構成すれば、メッセージ記憶手段に不用となっ
たメッセージが残ることを防止でき、メモリ資源を有効
に活用することができる。
装置では、前述した請求項1,2に記載の電子制御装置
において、メッセージ記憶手段が、単位処理手段の出し
たメッセージを複数個記憶可能に構成されている。そし
て、起動制御手段は、複数の単位処理手段の何れかが処
理動作を終了した時点で、メッセージ記憶手段に記憶さ
れているメッセージのうち最初に記憶されたメッセージ
を読み出して、その読み出したメッセージの出力先であ
る単位処理手段に処理を開始させると共に、前記読み出
したメッセージをメッセージ記憶手段から消去する。
によれば、複数系統の処理を交互に効率良く行うことが
できる。例えば、何れかの単位処理手段が、その処理動
作の途中で、他の単位処理手段X1に対してメッセージ
mx1を出し、更に続いて、処理系統の異なる他の単位
処理手段Y1に対しメッセージmy1を出したとする。
y1は、その出力順(つまり、mx1→my1の順)に
メッセージ記憶手段に記憶される。そして、上記メッセ
ージmx1,my1を出した単位処理手段の処理動作が
終了すると、その時点で、メッセージ記憶手段に記憶さ
れているメッセージmx1,my1のうち、最初に記憶
された方のメッセージmx1が読み出されて、そのメッ
セージmx1の出力先である単位処理手段X1の処理が
開始されると共に、その読み出されたメッセージmx1
がメッセージ記憶手段から消去される。
作の途中で他の単位処理手段X2にメッセージmx2を
出すと、そのメッセージmx2がメッセージ記憶手段に
記憶されるため、メッセージ記憶手段には、2つのメッ
セージmy1,mx2が、my1→mx2の順で記憶さ
れていることとなる。
了すると、その時点で、メッセージ記憶手段に記憶され
ているメッセージmy1,mx2のうち、最初に記憶さ
れた方のメッセージmy1が読み出されて、そのメッセ
ージmy1の出力先である単位処理手段Y1の処理が開
始されると共に、その読み出されたメッセージmy1が
メッセージ記憶手段から消去される。
作の途中で他の単位処理手段Y2にメッセージmy2を
出すと、そのメッセージmy2がメッセージ記憶手段に
記憶され、メッセージ記憶手段には、2つのメッセージ
mx2,my2が、mx2→my2の順で記憶されるこ
ととなる。
了すると、その時点で、メッセージ記憶手段に記憶され
ているメッセージmx2,my2のうち、最初に記憶さ
れた方のメッセージmx2が読み出されて、そのメッセ
ージmx2の出力先である単位処理手段X2の処理が開
始されると共に、その読み出されたメッセージmx2が
メッセージ記憶手段から消去される。
が終了すると、メッセージ記憶手段に記憶されているメ
ッセージmy2が読み出されて、そのメッセージmy2
の出力先である単位処理手段Y2の処理が開始されると
共に、その読み出されたメッセージmy2がメッセージ
記憶手段から消去される。
置によれば、単位処理手段X1が単位処理手段X2にメ
ッセージを出し、また、単位処理手段Y1が単位処理手
段Y2にメッセージを出す、といった2系統の処理を進
めて行く場合に、単位処理手段X1,X2の処理系統と
単位処理手段Y1,Y2の処理系統とを、X1→Y1→
X2→Y2の順に交互に行うことができるようになるの
である。
て、オブジェクトは、一般に、記憶内容の書き換えが不
能な通常のROM(所謂マスクROM)や記憶内容の書
き換えが可能なEEPROMなどからなるプログラム記
憶手段に記憶されるが、この場合に、請求項4に記載の
如く構成すれば、より大きな効果を得ることができる。
は、前述した請求項1〜3に記載の電子制御装置におい
て、オブジェクトが、所定のプログラム記憶手段に記憶
されていると共に、各単位処理手段が出すメッセージに
は、そのメッセージの出力先である単位処理手段に対応
したオブジェクトを示す識別コードが含まれている。
ードと、その識別コードが示すオブジェクトのプログラ
ム記憶手段における格納位置を表わす格納位置情報と
を、対応付けて記憶した格納位置記憶手段を備えてお
り、メッセージ記憶手段から読み出したメッセージに含
まれている識別コードが示すオブジェクトのプログラム
記憶手段における格納位置を、上記格納位置記憶手段の
記憶内容に基づき特定することにより、前記読み出した
メッセージの出力先である単位処理手段に処理を開始さ
せるよう構成されている。
によれば、プログラムの設計変更等に伴うオブジェクト
の修正によって、そのオブジェクトのプログラム記憶手
段における格納位置が変化した場合には、格納位置記憶
手段に記憶される情報、即ち、識別コードに対応付けて
記憶されるオブジェクトの格納位置情報を変更するだけ
で、対応することができるようになる。
関数コールの手法を適用した場合には、格納位置が変化
したオブジェクトをコールする方のオブジェクトも全て
修正しなければならないが、請求項4に記載の電子制御
装置によれば、そのような手間は無い。つまり、プログ
ラム全体における各オブジェクトの独立性が高くなり、
システム全体として設計変更が容易なものとなる。
に記載のように、プログラム記憶手段の記憶領域を示す
アドレスを採用すれば良く、このようにすれば、オブジ
ェクトの格納位置を容易に特定することができる。ま
た、例えば、プログラム記憶手段が複数のROMからな
る場合には、どのROMのどのアドレスといった情報
を、オブジェクトの格納位置情報として採用すれば良
い。
態の電子制御装置について図面を用いて説明する。尚、
本発明は、下記の実施形態に限定されることなく、本発
明の技術的範囲に属する限り、種々の形態を採り得るこ
とは言うまでもない。
型エンジンの制御を行う実施形態の電子制御装置(以
下、ECUという)1のハードウェア構成を表すブロッ
ク図である。図1に示すように、ECU1は、エンジン
の水温を検出する水温センサやエンジンの回転数を検出
するクランクセンサなどの各種センサからの信号を入力
する入力回路2と、入力回路2からの信号に基づきエン
ジンに対する最適制御量を演算し、その演算結果に基づ
き制御信号を出力するCPU3と、CPU3からの制御
信号を受けて、エンジンのスロットル弁やインジェクタ
(燃料噴射弁)等のアクチュエータを駆動する出力回路
4と、CPU3がエンジンを制御するために実行するプ
ログラム及びそのプログラムの実行時に参照されるデー
タを格納する不揮発性のROM5と、CPU3の演算結
果等を一時格納する揮発性のRAM6とを備えている。
PU3,ROM5,及びRAM6によりマイクロコンピ
ュータの主要部が構成されており、図示はされていない
が、そのマイクロコンピュータには、CPU3が入力回
路2及び出力回路4との間で信号の入出力を行うための
I/Oポートも備えられている。また、RAM6の一部
の記憶領域は、ECU1への電源供給が遮断された状態
においても記憶内容を保持可能なバックアップRAMと
して設定されている。
て、ROM5に格納されてCPU3により実行されるエ
ンジン制御用のプログラム及びデータは、オブジェクト
指向によってプログラミングされている。そのため、本
実施形態のECU1では、前述したオブジェクト間メッ
セージ通信を実現するための手段として、図2に示すメ
ッセージ配送制御部10を備えている。
ではなく、ROM5に格納されたエンジン制御用のオブ
ジェクトと、メッセージ配送制御部10との関係を示す
概念図である。そして、メッセージ配送制御部10は、
ハードウェアによって構成されているのではなく、CP
U3がROM5に格納されたメッセージ配送制御用のオ
ブジェクトに従い動作することで実現される機能手段で
ある。
10について、エンジンのアイドル回転数を制御するた
めのプログラム部分を例に挙げて説明する。まず、図2
に示すように、ROM5には、エンジンのアイドル回転
数を制御するためのオブジェクトとして、エンジンの水
温値や実際の回転数などに基づき、エンジン回転数を最
適なアイドル回転数にするための目標スロットル開度を
算出するISCオブジェクトOB1と、水温センサから
のアナログ信号をAD変換したデジタル値を、水温値に
変換する水温センサオブジェクトOB2と、水温センサ
からのアナログ信号をデジタル値に変換(AD変換)す
るためのAD変換器(図示省略)を制御するAD変換器
オブジェクトOB3と、クランクセンサからの信号に基
づきエンジン回転数を算出するクランクセンサオブジェ
クトOB5と、エンジンのスロットル弁を、ISCオブ
ジェクトによって算出された目標スロットル開度となる
ように制御するスロットルコントローラオブジェクトO
B4と、が格納されている。
B1〜OB5以外のオブジェクトも格納されており、そ
の中には、メッセージ配送制御部10の機能を実現する
ためのオブジェクト(メッセージ配送制御用のオブジェ
クト)が含まれている。次に、上記各オブジェクトOB
1〜OB5によって実現される処理の概要について、図
3のメッセージシーケンスチャートに沿って説明する。
決定するために定期的(例えば4ms毎)に実行される
上記オブジェクトOB1〜OB5以外の他のオブジェク
トから、図3のに示すように、ISCオブジェクトO
B1へスロットル設定開始要求のメッセージが出される
と、ISCオブジェクトOB1が動作を開始する(つま
り、CPU3がISCオブジェクトOB1のメソッドの
実行を開始する)。
3のに示すように、水温センサオブジェクトOB2へ
水温取得要求のメッセージを出し、次いで、図3のに
示すように、クランクセンサオブジェクトOB5へエン
ジン回転数取得要求のメッセージを出す。
伴い、水温センサオブジェクトOB2が動作して、図3
のに示すように、AD変換器オブジェクトOB3へ水
温AD値取得要求のメッセージを出す。一方、上記エン
ジン回転数取得要求のメッセージに伴い、クランクセン
サオブジェクトOB5が動作して、クランクセンサから
の信号に基づきエンジン回転数を算出する。そして、ク
ランクセンサオブジェクトOB5は、エンジン回転数の
算出を終了した後、図3のに示すように、ISCオブ
ジェクトOB1へエンジン回転数取得応答のメッセージ
(即ち、エンジン回転数の算出が終了したというメッセ
ージ)を出す。
した水温AD値取得要求のメッセージに伴い、AD変換
器オブジェクトOB3が動作して、水温センサからのア
ナログ信号をデジタル値に変換する演算を行う。そし
て、AD変換器オブジェクトOB3は、上記演算を終了
した後、図3のに示すように、水温センサオブジェク
トOB2へ水温AD値取得応答のメッセージ(即ち、水
温センサのデジタル変換が終了したというメッセージ)
を出す。
は、AD変換器オブジェクトOB3の演算結果に基づい
て水温値を算出し、その算出後、図3のに示すよう
に、ISCオブジェクトOB1へ水温取得応答のメッセ
ージ(即ち、水温値の算出が終了したというメッセー
ジ)を出す。
いは上記エンジン回転数取得応答のメッセージに伴い、
ISCオブジェクトOB1が動作して、水温センサオブ
ジェクトOB2により算出された水温値とクランクセン
サオブジェクトOB5により算出されたエンジン回転数
とに基づき目標スロットル開度を算出し、その算出後、
ISCオブジェクトOB1は、図3のに示すように、
スロットルコントローラオブジェクトOB4へスロット
ル設定要求のメッセージ(即ち、目標スロットル開度を
算出したことを示すメッセージ)を出す。
クトOB4が動作して、エンジンのスロットル弁を、上
記算出された目標スロットル開度となるように制御し、
これにより、エンジン回転数が最適なアイドル回転数に
制御される。このように、本実施形態のECU1では、
各オブジェクトOB1〜OB5が他のオブジェクトに対
し処理依頼としてのメッセージを出すことにより、その
メッセージの出力先であるオブジェクトが動作する、と
いった仮想的なオブジェクト間メッセージ通信により、
各オブジェクトOB1〜OB5の処理順序が決定されて
いる。
ージ通信を実現するためのメッセージ配送制御部10
は、各オブジェクトが出したメッセージをキューイング
すると共に、所定の配送条件が成立する毎に、上記キュ
ーイングしたメッセージのうち最初にキューイングした
メッセージを読み出して、その読み出したメッセージを
当該メッセージの出力先であるオブジェクトに配送する
ものである。
てデータの挿入記憶を行う操作のことであり、「キュ
ー」とは、待ち行列であって、データ構造体のうち、一
方の端でデータの挿入が行われ、他方の端でデータの削
除が行われるものである。また、「配送」とは、メッセ
ージの出力先であるオブジェクトの処理(詳しくは、メ
ッセージにより指定されるオブジェクトのメソッドの実
行)を開始させることを意味している。
2に示すように、各オブジェクトからのメッセージをキ
ューイングするためのオブジェクトメッセージ格納部1
2と、このオブジェクトメッセージ格納部12に対し
て、メッセージを記憶(キューイング)するためのメモ
リブロックを提供する空きメモリブロック格納部14と
を備えている。
2と空きメモリブロック格納部14は、夫々、RAM6
内の記憶領域であり、その容量はダイナミックに変動す
る。また、メモリブロックは、両格納部12,14の単
位容量に相当し、1つのメッセージを記憶可能な容量分
である。
0個)分のメモリブロックが予め確保されており、最初
は、その全てのメモリブロックが空きメモリブロック格
納部14となっている。そして、オブジェクトからメッ
セージが出されると、空きメモリブロック格納部14を
構成するメモリブロックが1つ減り、その代わりに、オ
ブジェクトメッセージ格納部12を構成するメモリブロ
ックが1つ増えて、その増加されたメモリブロックにメ
ッセージが記憶(キューイング)される。また、オブジ
ェクトメッセージ格納部12からメッセージが読み出さ
れてオブジェクトに配送されると、そのメッセージが記
憶されていたメモリブロックがオブジェクトメッセージ
格納部12から、空きメモリブロック格納部14へ戻る
ようになっている。
れた全てのメモリブロックは、最初は空きメモリブロッ
ク格納部14に入っており、オブジェクトからメッセー
ジが出されると、空きメモリブロック格納部14からオ
ブジェクトメッセージ格納部12へメモリブロックが1
つ引き渡されて(移管されて)、その引き渡されたメモ
リブロックにメッセージが記憶される。また、オブジェ
クトメッセージ格納部12にキューイングされたメッセ
ージが読み出されてオブジェクトに配送されると、その
メッセージが記憶されていたメモリブロックは、オブジ
ェクトメッセージ格納部12から空きメモリブロック格
納部14へ戻されて再利用される。
るメモリブロックを、メッセージブロックと言い、メッ
セージが格納されていないメモリブロックを、空きメモ
リブロックと言う。そして、メッセージブロックと空き
メモリブロックとを総称して、メモリブロックと言う。
トから出されるメッセージには、そのメッセージ内容と
して、当該メッセージの出力先のオブジェクトを示すオ
ブジェクト識別番号(以下、OIDという)と、その出
力先のオブジェクトを構成するメソッドのうちで実行さ
れるべきメソッドを示すメソッド識別番号(以下、MI
Dという)とが含まれており、更に引数を含んでいる場
合もある。
2に示すように、オブジェクトメッセージ格納部12か
ら読み出したメッセージの配送先を特定するために、換
言すれば、読み出したメッセージに含まれているOID
とMIDが示すオブジェクトのメソッドが、ROM5の
何れのアドレスに格納されているかを特定するために、
接続情報データベース16を備えている。
示す如く、OIDとMIDの各組み合せと、それら各組
み合せが示すオブジェクトのメソッドが格納されている
ROM5の先頭アドレス(即ち、実行開始アドレス)と
を、対応付けて記憶したデータテーブルからなる。例え
ば、図4のデータテーブルでは、OIDがnでMIDが
mであるオブジェクトのメソッドが、ROM5において
「Anm」というアドレスを先頭にして格納されている
ことを示す。そして、このようなデータテーブルからな
る接続情報データベース16は、各オブジェクトと共に
ROM5に予め格納されている。
移と機能について、図5を参照しつつ説明する。尚、図
5は、メッセージ配送制御部10の状態遷移図である。
また、以下に説明するメッセージ配送制御部10の処理
は、実際には、CPU3がROM5に格納されたメッセ
ージ配送制御用のオブジェクト(メソッド及びデータ)
に従って動作することにより実現されている。
ニッションスイッチがオフされて、ECU1のマイクロ
コンピュータが動作を停止している際に、図5(a)に
示す如くオフ状態となる。そして、例えばイグニッショ
ンスイッチがオフ状態からオンされたり、マイクロコン
ピュータにリセットがかけられる等の初期化要求が生じ
ると、図5(b)に示す如く初期化処理を行い、その
後、図5(c)に示す如くメッセージ受信待ち状態とな
る。
では、図6に示すように、まずS50にて、オブジェク
トメッセージ格納部12を初期化する。具体的には、オ
ブジェクトメッセージ格納部12が保有している空きメ
モリブロックを、空きメモリブロック格納部14に引き
渡す。次にS60にて、空きメモリブロック格納部14
を初期化する。具体的には、オブジェクトの何れかから
メッセージが出されたときに、空きメモリブロック格納
部14が保有している空きメモリブロックをオブジェク
トメッセージ格納部12へ引き渡すことのできる状態に
する。
のような初期化処理を終了した後、メッセージ受信待ち
状態となる。メッセージ受信待ち状態とは、オブジェク
トから出されたメッセージをオブジェクトメッセージ格
納部12にキューイングすることのできる状態であり、
この状態において、イグニッションスイッチがオフされ
る等の終了要求が生じると、メッセージ配送制御部10
は、図5(d)に示す如くシリアライズ処理を行い、そ
の後、前述したオフ状態に戻る。
ズ処理では、図7に示すように、まずS70にて、オブ
ジェクトメッセージ格納部12に記憶されているデータ
を、前述したバックアップRAMに退避させ、次にS8
0にて、空きメモリブロック格納部14に記憶されてい
るデータを、バックアップRAMに退避させる。そし
て、メッセージ配送制御部10は、このようなシリアラ
イズ処理を終了した後、オフ状態となる。
セージ受信待ち状態において、オブジェクトからメッセ
ージが出されると、図5(e)に示す如くメッセージキ
ューイング処理を行って、上記オブジェクトからのメッ
セージをオブジェクトメッセージ格納部12にキューイ
ングし、その後、メッセージ受信待ち状態に戻る。尚、
本実施形態では、オブジェクトがメッセージ送信要求を
出すことにより、メッセージの出力が行われる。そし
て、以下の説明において、メッセージ内容としてのOI
Dがn(=1,2,…)であり且つMIDがm(=1,
2,…)であるメッセージを、特に「メッセージ(n,
m)」と記し、そのメッセージ(n,m)を出力するた
めのメッセージ送信要求を、「メッセージ送信要求
(n,m)」と記す。
セージ送信要求)を出した時に行われるメッセージキュ
ーイング処理では、図8に示すように、まずS100に
て、空きメモリブロック格納部14から空きメモリブロ
ックを取得できるか否か(つまり、空きメモリブロック
格納部14に空きメモリブロックがあるか否か)を判断
する。そして、空きメモリブロックが取得可能であれ
ば、続くS110にて、空きメモリブロック格納部14
から、空きメモリブロックのうちで先頭にある空きメモ
リブロック、即ち、空きメモリブロック格納部14にキ
ューイングされている空きメモリブロックのうちで最初
にキューイングされた空きメモリブロックを取得する。
リブロックに、オブジェクトから今回出されたメッセー
ジを書き込む。尚、具体的には、空きメモリブロック
に、メッセージの内容であるOID及びMID或いは更
に引数が書き込まれる。そして、続くS130にて、上
記S120でメッセージを書き込んだメモリブロック
を、オブジェクトメッセージ格納部12にキューイング
する。つまり、メッセージを書き込んだメモリブロック
を、メッセージブロックとして、オブジェクトメッセー
ジ格納部12におけるメッセージブロックの最後尾に登
録する。そして、S130の処理を行った後、当該メッ
セージキューイング処理を終了する。
ックを取得することができない(つまり、空きメモリブ
ロック格納部14に空きメモリブロックがない)と判断
した場合には、メッセージ送信要求を出したオブジェク
トのメソッドへエラーメッセージを出し、これにより所
定のフェールセーフ処理が行われる。
が行われると、図9(a)の斜線で示すように、空きメ
モリブロック格納部14にある空きメモリブロックE1
〜Em のうち、先頭にある空きメモリブロックE1 が選
択されて、図9(b)に示すように、その空きメモリブ
ロックE1 が取得される(S100:YES,S11
0)。
得した空きメモリブロックE1 に、オブジェクトから今
回出されたメッセージの内容が書き込まれ(S12
0)、最後に、図9(d)に示す如く、メッセージの内
容が書き込まれたメモリブロックE1 が、オブジェクト
メッセージ格納部12におけるメッセージブロックM1
〜Mn の最後尾に、メッセージブロックMn+1 として登
録されて(S130)、オブジェクトメッセージ格納部
12へのメッセージのキューイングが終了する。
うに、オブジェクトメッセージ格納部12のメッセージ
ブロックMが1つ増え、その代わりに、空きメモリブロ
ック格納部14の空きメモリブロックEが1つ減ること
となる。そして、図9(d)にて()内に示すように、
空きメモリブロック格納部14にて当初2番目にあった
空きメモリブロックE2 が、先頭の空きメモリブロック
E1 となり、当初m番目にあった空きメモリブロックE
m が、m−1番目の空きメモリブロックEm-1となる。
メッセージ受信待ち状態において、オブジェクトから図
5(f)の如くメッセージ配送要求が出されると、図5
(g)に示す如くメッセージ配送状態になる。メッセー
ジ配送状態では、図5(h)に示すように、オブジェク
トメッセージ格納部12にキューイングされているメッ
セージがあれば、後述するメッセージ配送処理を行っ
て、そのキューイングされているメッセージの配送(即
ち、メッセージにより指定されるオブジェクトのメソッ
ドの実行)を行い、また、図5(i)に示すように、オ
ブジェクトメッセージ格納部12にキューイングされて
いるメッセージがなければ、メッセージ受信状態へ戻
る。
オブジェクトからメッセージ送信要求が出されると、メ
ッセージ受信待ち状態の場合と同様に、図5(j)に示
す如く前述した図8のメッセージキューイング処理を行
う。ここで、図10に示すように、メッセージ配送処理
は、オブジェクトからメッセージ配送要求が出された
時、或いは、何れかのオブジェクトのメソッドの実行が
終了した時に行われ、まずS210にて、オブジェクト
メッセージ格納部12にキューイングされているメッセ
ージがあるか否か(つまり、オブジェクトメッセージ格
納部12からメッセージブロックを取得できるか否か)
を判断する。そして、キューイングされているメッセー
ジがあれば、続くS220にて、オブジェクトメッセー
ジ格納部12から、メッセージブロックのうちで先頭に
あるメッセージブロック、即ち、オブジェクトメッセー
ジ格納部12にキューイングされているメッセージブロ
ックのうちで最初にキューイングされたメッセージブロ
ックを取得し、そのメッセージブロックに書き込まれて
いるメッセージの内容(OID及びMID)を読み取
る。
たメッセージブロックを、空きメモリブロックとして、
空きメモリブロック格納部14における空きメモリブロ
ックの最後尾に登録する。そして、続くS240にて、
上記S220で読み取ったメッセージ内容であるOID
とMIDに対応するオブジェクトのメソッドが格納され
ているROM5の先頭アドレス(実行開始アドレス)
を、前述した接続情報データベース16から検索により
算出し、続くS250にて、上記S240で算出した実
行開始アドレスをコールする。
先が、S220で読み取ったメッセージ内容に対応した
オブジェクトのメソッドの先頭へ移り、これにより、メ
ッセージの配送が行われる。そして、そのメソッドの処
理実行が終了すると、再び、当該メッセージ配送処理が
前述したS210から行われる。
ッセージ格納部12にキューイングされているメッセー
ジがない(つまり、オブジェクトメッセージ格納部12
からメッセージブロックを取得できない)と判断した場
合には、そのままメッセージ受信待ち状態へ戻る。
ると、図11(a)の斜線で示すように、オブジェクト
メッセージ格納部12にあるメッセージブロックM1 〜
Mnのうち、先頭のメッセージブロックM1 が選択され
る。そして、図11(b)に示すように、そのメッセー
ジブロックM1 が取得されて、そのメッセージブロック
M1 に書き込まれているメッセージ内容が読み取られる
(S210:YES,S220)。
メッセージ内容が読み取られた後のメッセージブロック
M1 が、空きメモリブロック格納部14における空きメ
モリブロックE1 〜Em の最後尾に、空きメモリブロッ
クEm+1 として登録され(S230)、それと共に、上
記メッセージブロックM1 から読み取ったメッセージ内
容に対応するオブジェクトのメソッドの実行が開始され
る。
ように、空きメモリブロック格納部14の空きメモリブ
ロックEが1つ増え、その代わりに、オブジェクトメッ
セージ格納部12のメッセージブロックMが1つ減るこ
ととなる。そして、図11(c)にて()内に示すよう
に、オブジェクトメッセージ格納部12にて当初2番目
にあったメッセージブロックM2 が、先頭のメッセージ
ブロックM1 となり、当初n番目にあったメッセージブ
ロックMn が、n−1番目のメッセージブロックMn-1
となる。
の各オブジェクトOB1〜OB5が、メッセージ配送制
御部10の作用により如何にしてオブジェクト間メッセ
ージ通信を行い、図3のメッセージシーケンスチャート
に示した処理が行われるかについて、図12〜図21を
用いて具体的に説明する。
ェクトOB1は、図3のに示したスロットル設定開始
要求のメッセージとしてのメッセージ(1,2)、つま
りOIDが1でMIDが2であるメッセージに伴い実行
されるアイドル時スロットル設定開始要求メソッド(図
14)と、図3のに示した水温取得応答のメッセージ
としてのメッセージ(1,3)に伴い実行される水温取
得応答メソッド(図15)と、図3のに示したエンジ
ン回転数取得応答のメッセージとしてのメッセージ
(1,4)に伴い実行されるエンジン回転数取得応答メ
ソッド(図16)とを有している。
図3のに示した水温取得要求のメッセージとしてのメ
ッセージ(2,1)に伴い実行される水温取得要求メソ
ッド(図17)と、図3のに示した水温AD値取得応
答のメッセージとしてのメッセージ(2,2)に伴い実
行される水温AD値取得応答メソッド(図18)とを有
している。
は、図3のに示した水温AD値取得要求のメッセージ
としてのメッセージ(3,0)に伴い実行される水温A
D値取得要求メソッド(図19)を有し、スロットルコ
ントローラオブジェクトOB4は、図3のに示したス
ロットル設定要求のメッセージとしてのメッセージ
(4,4)に伴い実行されるスロットル設定要求メソッ
ド(図20)を有し、クランクセンサオブジェクトOB
5は、図3のに示したエンジン回転数取得要求のメッ
セージとしてのメッセージ(5,0)に伴い実行される
エンジン回転数取得要求メソッド(図21)を有してい
る。
の各メソッドの実行開始アドレスは、図12に示す如
く、各メソッドを示すOID及びMIDに夫々対応し
て、接続情報データベース16内に予め登録されてい
る。次に、CPU3により実行される処理の詳細につい
て説明する。
外のオブジェクトであって、アイドル回転数制御のタイ
ミングを決定するためのオブジェクトの処理である、図
13のスケジュール処理が4ms毎に実行される。尚、
以下の説明においては、このスケジュール処理の実行が
開始された時点で、オブジェクトメッセージ格納部12
にはメモリブロックが無いものとする。また、空きメモ
リブロック格納部14には充分な数の空きメモリブロッ
クがあり、図8に示したメッセージキューイング処理の
S100では、常に肯定判定されるものとする。
実行が開始されると、まずS300にて、メッセージ送
信要求(1,2)が出される。すると、前述した図8の
メッセージキューイング処理が実行されて、オブジェク
トメッセージ格納部12にメッセージ(1,2)がキュ
ーイングされる。
ロック格納部14から先頭の空きメモリブロックが取得
され、S120にて、その取得した空きメモリブロック
にメッセージ(1,2)が書き込まれ、更に、S130
にて、メッセージ(1,2)が書き込まれたメモリブロ
ックが、オブジェクトメッセージ格納部12にメッセー
ジブロックとして登録される。そして、この場合には、
オブジェクトメッセージ格納部12に、メッセージ
(1,2)が書き込まれたメッセージブロックが、1つ
だけ登録されることとなる。換言すれば、オブジェクト
メッセージ格納部12に、メッセージ(1,2)が1つ
だけ記憶されることとなる。
ューイングが終わると、処理の実行が図13のスケジュ
ール処理に戻り、図13のS310にて、メッセージ配
送要求が出される。すると、前述した図10のメッセー
ジ配送処理が実行されて、オブジェクトメッセージ格納
部12にキューイングされているメッセージ(1,2)
が配送される。
ェクトメッセージ格納部12にメッセージがキューイン
グされているか否かがチェックされるが、この場合に
は、メッセージ(1,2)のみがキューイングされてい
るため、S220にて、オブジェクトメッセージ格納部
12の先頭にあるメッセージブロックからメッセージ
(1,2)の内容が読み取られる。また、S230に
て、メッセージ(1,2)が書き込まれていたメッセー
ジブロックが、空きメモリブロック格納部14へ空きメ
モリブロックとして返却される。
取ったメッセージ(1,2)の内容に対応するISCオ
ブジェクトOB1のアイドル時スロットル設定開始要求
メソッドの実行開始アドレスA12(図12参照)が、
接続情報データベース16から算出され、S250に
て、その算出した実行開始アドレスがコールされる。
が行われて、図14に示すアイドル時スロットル設定開
始要求メソッドの実行が開始される。図14に示すよう
に、アイドル時スロットル設定開始要求メソッドの実行
が開始されると、まずS400にて、アイドル時か否
か、つまりエンジンがアイドル運転状態であるか否かが
判断される。
当該メソッドの実行が終了されて、処理の実行が図13
のスケジュール処理に戻り、これに伴い全ての処理が終
了するが、アイドル時であれば、続くS405にて、メ
ッセージ送信要求(2,1)が出される。
理が実行されて、オブジェクトメッセージ格納部12に
メッセージ(2,1)がキューイングされる。即ち、図
8のS110にて、空きメモリブロック格納部14から
先頭の空きメモリブロックが取得され、S120にて、
その取得した空きメモリブロックにメッセージ(2,
1)が書き込まれ、更に、S130にて、メッセージ
(2,1)が書き込まれたメモリブロックが、オブジェ
クトメッセージ格納部12にメッセージブロックとして
登録される。そして、この場合には、オブジェクトメッ
セージ格納部12に、メッセージ(2,1)が書き込ま
れたメッセージブロックが、1つだけ登録されることと
なる。換言すれば、オブジェクトメッセージ格納部12
に、メッセージ(2,1)が1つだけ記憶されることと
なる。
ューイングが終わると、処理の実行が図14のアイドル
時スロットル設定開始要求メソッドに戻り、図14のS
410にて、メッセージ送信要求(5,0)が出され
る。すると、再び、図8のメッセージキューイング処理
が実行されて、オブジェクトメッセージ格納部12にメ
ッセージ(5,0)がキューイングされる。
ロック格納部14から先頭の空きメモリブロックが取得
され、S120にて、その取得した空きメモリブロック
にメッセージ(5,0)が書き込まれ、更に、S130
にて、メッセージ(5,0)が書き込まれたメモリブロ
ックが、オブジェクトメッセージ格納部12におけるメ
ッセージブロックの最後尾に(この場合には先頭から2
番目)に、メッセージブロックとして登録される。
セージ格納部12に、メッセージ(2,1)が書き込ま
れたメッセージブロックと、メッセージ(5,0)が書
き込まれたメッセージブロックとが、その順に2つ登録
されることとなる。換言すれば、オブジェクトメッセー
ジ格納部12に、2つのメッセージが、メッセージ
(2,1)→メッセージ(5,0)の順に記憶されるこ
ととなる。
ューイングが終わると、処理の実行が図14のアイドル
時スロットル設定開始要求メソッドに戻る。そして、こ
のアイドル時スロットル設定開始要求メソッドの処理が
終了すると、図10のメッセージ配送処理が実行され
て、オブジェクトメッセージ格納部12にキューイング
されている2つのメッセージのうち、最初に記憶された
方のメッセージ(2,1)が配送される。
トメッセージ格納部12の先頭にあるメッセージブロッ
クからメッセージ(2,1)の内容が読み取られ、ま
た、S230にて、メッセージ(2,1)が書き込まれ
ていたメッセージブロックが、空きメモリブロック格納
部14へ空きメモリブロックとして返却される。そし
て、S240にて、上記読み取ったメッセージ(2,
1)の内容に対応する水温センサオブジェクトOB2の
水温取得要求メソッドの実行開始アドレスA21(図1
2参照)が、接続情報データベース16から算出され、
S250にて、その算出した実行開始アドレスがコール
される。
が行われて、図17に示す水温取得要求メソッドの実行
が開始される。図17に示すように、水温取得要求メソ
ッドの実行が開始されると、S500にて、メッセージ
送信要求(3,0)が出される。
理が実行されて、前述した手順と全く同様に、オブジェ
クトメッセージ格納部12にメッセージ(3,0)がキ
ューイングされる。そして、この場合には、オブジェク
トメッセージ格納部12に、メッセージ(5,0)が書
き込まれたメッセージブロックと、メッセージ(3,
0)が書き込まれたメッセージブロックとが、その順に
2つ登録されることとなる。換言すれば、オブジェクト
メッセージ格納部12に、2つのメッセージが、メッセ
ージ(5,0)→メッセージ(3,0)の順に記憶され
ることとなる。
ューイングが終わると、処理の実行が図17の水温取得
要求メソッドに戻る。そして、この水温取得要求メソッ
ドの処理が終了すると、図10のメッセージ配送処理が
実行されて、オブジェクトメッセージ格納部12にキュ
ーイングされている2つのメッセージのうち、最初に記
憶された方のメッセージ(5,0)が配送される。
トメッセージ格納部12の先頭にあるメッセージブロッ
クからメッセージ(5,0)の内容が読み取られ、ま
た、S230にて、メッセージ(5,0)が書き込まれ
ていたメッセージブロックが、空きメモリブロック格納
部14へ空きメモリブロックとして返却される。そし
て、S240にて、上記読み取ったメッセージ(5,
0)の内容に対応するクランクセンサオブジェクトOB
5のエンジン回転数取得要求メソッドの実行開始アドレ
スA50(図12参照)が、接続情報データベース16
から算出され、S250にて、その算出した実行開始ア
ドレスがコールされる。
が行われて、図21に示すエンジン回転数取得要求メソ
ッドの実行が開始される。図21に示すように、エンジ
ン回転数取得要求メソッドの実行が開始されると、S8
00にて、クランクセンサからの信号に基づきエンジン
回転数が算出される。そして、続くS805にて、上記
S800で算出されたエンジン回転数がRAM6に保存
され、次のS810にて、メッセージ送信要求(1,
4)が出される。
理が実行されて、前述した手順と全く同様に、オブジェ
クトメッセージ格納部12にメッセージ(1,4)がキ
ューイングされる。そして、この場合には、オブジェク
トメッセージ格納部12に、メッセージ(3,0)が書
き込まれたメッセージブロックと、メッセージ(1,
4)が書き込まれたメッセージブロックとが、その順に
2つ登録されることとなる。換言すれば、オブジェクト
メッセージ格納部12に、2つのメッセージが、メッセ
ージ(3,0)→メッセージ(1,4)の順に記憶され
ることとなる。
ューイングが終わると、処理の実行が図21のエンジン
回転数取得要求メソッドに戻る。そして、このエンジン
回転数取得要求メソッドの処理が終了すると、図10の
メッセージ配送処理が実行されて、オブジェクトメッセ
ージ格納部12にキューイングされている2つのメッセ
ージのうち、最初に記憶された方のメッセージ(3,
0)が配送される。
トメッセージ格納部12の先頭にあるメッセージブロッ
クからメッセージ(3,0)の内容が読み取られ、ま
た、S230にて、メッセージ(3,0)が書き込まれ
ていたメッセージブロックが、空きメモリブロック格納
部14へ空きメモリブロックとして返却される。そし
て、S240にて、上記読み取ったメッセージ(3,
0)の内容に対応するAD変換器オブジェクトOB3の
水温AD値取得要求メソッドの実行開始アドレスA30
(図12参照)が、接続情報データベース16から算出
され、S250にて、その算出した実行開始アドレスが
コールされる。
が行われて、図19に示す水温AD値取得要求メソッド
の実行が開始される。図19に示すように、水温AD値
取得要求メソッドの実行が開始されると、S600に
て、水温センサからのアナログ信号をデジタル値に変換
する演算が行われ、続くS605にて、上記S600で
演算されたデジタル値がRAM6に保存される。そし
て、次のS610にて、メッセージ送信要求(2,2)
が出される。
理が実行されて、前述した手順と全く同様に、オブジェ
クトメッセージ格納部12にメッセージ(2,2)がキ
ューイングされる。そして、この場合には、オブジェク
トメッセージ格納部12に、メッセージ(1,4)が書
き込まれたメッセージブロックと、メッセージ(2,
2)が書き込まれたメッセージブロックとが、その順に
2つ登録されることとなる。換言すれば、オブジェクト
メッセージ格納部12に、2つのメッセージが、メッセ
ージ(1,4)→メッセージ(2,2)の順に記憶され
ることとなる。
ューイングが終わると、処理の実行が図19の水温AD
値取得要求メソッドに戻る。そして、この水温AD値取
得要求メソッドの処理が終了すると、図10のメッセー
ジ配送処理が実行されて、オブジェクトメッセージ格納
部12にキューイングされている2つのメッセージのう
ち、最初に記憶された方のメッセージ(1,4)が配送
される。
トメッセージ格納部12の先頭にあるメッセージブロッ
クからメッセージ(1,4)の内容が読み取られ、ま
た、S230にて、メッセージ(1,4)が書き込まれ
ていたメッセージブロックが、空きメモリブロック格納
部14へ空きメモリブロックとして返却される。そし
て、S240にて、上記読み取ったメッセージ(1,
4)の内容に対応するISCオブジェクトOB1のエン
ジン回転数取得応答メソッドの実行開始アドレスA14
(図12参照)が、接続情報データベース16から算出
され、S250にて、その算出した実行開始アドレスが
コールされる。
が行われて、図16に示すエンジン回転数取得応答メソ
ッドの実行が開始される。図16に示すように、エンジ
ン回転数取得応答メソッドの実行が開始されると、S4
50にて、水温取得済みか否か、つまりRAM6に最新
の水温値が保存されているか否かが判断される。
455にて、RAM6から最新のエンジン回転数と水温
値とが読み出され、続くS460にて、S455で読み
出されたエンジン回転数及び水温値に基づき、エンジン
回転数を最適なアイドル回転数にするための目標スロッ
トル開度が算出される。そして、続くS465にて、上
記S460で算出された目標スロットル開度がRAM6
に保存され、次のS470にて、メッセージ送信要求
(4,4)が出される。
で、最新の水温値をRAM6に保存するための、水温セ
ンサオブジェクトOB2の水温AD値取得応答メソッド
が、未だ実行されていないため、上記S450にて、常
に、水温取得済みではないと判断され、上記S455〜
S470の処理を行うことなく、そのまま当該エンジン
回転数取得応答メソッドの実行が終了される。
の実行が終了すると、図10のメッセージ配送処理が実
行されて、オブジェクトメッセージ格納部12にキュー
イングされているメッセージ(2,2)が配送される。
即ち、この場合には、メッセージ(2,2)のみがキュ
ーイングされているため、図10のS220にて、オブ
ジェクトメッセージ格納部12の先頭にあるメッセージ
ブロックからメッセージ(2,2)の内容が読み取られ
る。また、S230にて、メッセージ(2,2)が書き
込まれていたメッセージブロックが、空きメモリブロッ
ク格納部14へ空きメモリブロックとして返却される。
そして、S240にて、上記読み取ったメッセージ
(2,2)の内容に対応する水温センサオブジェクトO
B2の水温AD値取得応答メソッドの実行開始アドレス
A22(図12参照)が、接続情報データベース16か
ら算出され、S250にて、その算出した実行開始アド
レスがコールされる。
が行われて、図18に示す水温AD値取得応答メソッド
の実行が開始される。図18に示すように、水温AD値
取得応答メソッドの実行が開始されると、S510に
て、水温AD値取得要求メソッド(図19)のS605
でRAM6に保存されたデジタル値が読み出され、続く
S515にて、上記S510で読み出したデジタル値を
水温値(℃)に変換する演算が行われる。
で演算された水温値がRAM6に保存され、次のS52
5にて、メッセージ送信要求(1,3)が出される。す
ると、図8のメッセージキューイング処理が実行され
て、前述した手順と全く同様に、オブジェクトメッセー
ジ格納部12にメッセージ(1,3)がキューイングさ
れる。そして、この場合には、オブジェクトメッセージ
格納部12に、メッセージ(1,3)が書き込まれたメ
ッセージブロックが、1つだけ登録されることとなる。
換言すれば、オブジェクトメッセージ格納部12に、メ
ッセージ(1,3)が1つだけ記憶されることとなる。
ューイングが終わると、処理の実行が図18の水温AD
値取得応答メソッドに戻る。そして、この水温AD値取
得応答メソッドの処理が終了すると、図10のメッセー
ジ配送処理が実行されて、オブジェクトメッセージ格納
部12にキューイングされているメッセージ(1,3)
が配送される。
トメッセージ格納部12の先頭にあるメッセージブロッ
クからメッセージ(1,3)の内容が読み取られ、ま
た、S230にて、メッセージ(1,3)が書き込まれ
ていたメッセージブロックが、空きメモリブロック格納
部14へ空きメモリブロックとして返却される。そし
て、S240にて、上記読み取ったメッセージ(1,
3)の内容に対応するISCオブジェクトOB1の水温
取得応答メソッドの実行開始アドレスA13(図12参
照)が、接続情報データベース16から算出され、S2
50にて、その算出した実行開始アドレスがコールされ
る。
が行われて、図15に示す水温取得応答メソッドの実行
が開始される。図15に示すように、水温取得応答メソ
ッドの実行が開始されると、S420にて、回転数取得
済みか否か、つまりRAM6に最新のエンジン回転数が
保存されているか否かが判断される。
ば、そのまま当該水温取得応答メソッドが終了される
が、本実施形態の場合には、この時点で、前述したエン
ジン回転数取得要求メソッド(図21)のS805によ
り、最新のエンジン回転数がRAM6に保存されている
ため、上記S420にて、常に、回転数取得済みである
と判断される。
ると、続くS425にて、RAM6から最新のエンジン
回転数と水温値とが読み出され、続くS430にて、S
425で読み出されたエンジン回転数及び水温値に基づ
き、エンジン回転数を最適なアイドル回転数にするため
の目標スロットル開度が算出される。そして、続くS4
35にて、上記S430で算出された目標スロットル開
度がRAM6に保存され、次のS440にて、メッセー
ジ送信要求(4,4)が出される。
理が実行されて、前述した手順と全く同様に、オブジェ
クトメッセージ格納部12にメッセージ(4,4)がキ
ューイングされる。そして、この場合には、オブジェク
トメッセージ格納部12に、メッセージ(4,4)が書
き込まれたメッセージブロックが、1つだけ登録される
こととなる。換言すれば、オブジェクトメッセージ格納
部12に、メッセージ(4,4)が1つだけ記憶される
こととなる。
ューイングが終わると、処理の実行が図15の水温取得
応答メソッドに戻る。そして、この水温取得応答メソッ
ドの処理が終了すると、図10のメッセージ配送処理が
実行されて、オブジェクトメッセージ格納部12にキュ
ーイングされているメッセージ(4,4)が配送され
る。
トメッセージ格納部12の先頭にあるメッセージブロッ
クからメッセージ(4,4)の内容が読み取られ、ま
た、S230にて、メッセージ(4,4)が書き込まれ
ていたメッセージブロックが、空きメモリブロック格納
部14へ空きメモリブロックとして返却される。そし
て、S240にて、上記読み取ったメッセージ(4,
4)の内容に対応するスロットルコントローラオブジェ
クトOB4のスロットル設定要求メソッドの実行開始ア
ドレスA44(図12参照)が、接続情報データベース
16から算出され、S250にて、その算出した実行開
始アドレスがコールされる。
が行われて、図20に示すスロットル設定要求メソッド
の実行が開始される。図20に示すように、スロットル
設定要求メソッドの実行が開始されると、S700に
て、水温取得応答メソッド(図15)のS435でRA
M6に保存された目標スロットル開度が読み出され、続
くS705にて、スロットル弁の開度を上記目標スロッ
トル開度に調整するスロットル制御が行われる。そし
て、このS705のスロットル制御を行った後、当該ス
ロットル設定要求メソッドが終了する。
行されて、そのS210にて、オブジェクトメッセージ
格納部12にメッセージがキューイングされているか否
かがチェックされるが、この場合には、もはやキューイ
ングされているメッセージが無いため、メッセージ受信
待ち状態に戻る。そして、図13のスケジュール処理に
戻り、そのスケジュール処理の終了に伴い全ての処理が
一旦終わる。
B5のメソッドが、ISCオブジェクトOB1のアイ
ドル時スロットル設定開始要求メソッド(図14),
水温センサオブジェクトOB2の水温取得要求メソッド
(図17),クランクセンサオブジェクトOB5のエ
ンジン回転数取得要求メソッド(図21),AD変換
器オブジェクトOB3の水温AD値取得要求メソッド
(図19),ISCオブジェクトOB1のエンジン回
転数取得応答メソッド(図16),水温センサオブジ
ェクトOB2の水温AD値取得応答メソッド(図1
8),ISCオブジェクトOB1の水温取得応答メソ
ッド(図15),スロットルコントローラオブジェク
トOB4のスロットル設定要求メソッド(図20)の順
で実行されて、図3のメッセージシーケンスチャートに
示した順序でアイドル回転数制御のための処理が行われ
る。
オブジェクトのメソッドの実行によりメッセージ(メッ
セージ送信要求)が出されると、図8のメッセージキュ
ーイング処理を実行して、そのメッセージをオブジェク
トメッセージ格納部12に記憶(キューイング)し、何
れかのオブジェクトのメソッドの実行が終了した時点
で、図10のメッセージ配送処理を実行して、オブジェ
クトメッセージ格納部12に記憶されているメッセージ
を読み出し、その読み出したメッセージの出力先である
オブジェクトのメソッドの実行へ移行するようにしてい
る。
ば、各オブジェクトのメソッドを、リアルタイムに実行
することができる。つまり、オブジェクト間メッセージ
通信にフラグチェックの手法を適用した場合の如くリア
ルタイム性に欠けることがなく、各オブジェクトのメソ
ッドをイベントドリブンで実行することができる。
関数コールの手法を適用した場合のように、実行中のオ
ブジェクトのメソッドを中断して他のオブジェクトのメ
ソッドを実行する、といったものではないため、各オブ
ジェクトのメソッドを、多くのメモリ資源を消費するこ
となく実行することができる。つまり、オブジェクト間
メッセージ通信に関数コールの手法を適用した場合に
は、マイクロコンピュータのプログラムカウンタや各種
レジスタ(図示省略)の値を記憶しなければならない
が、本実施形態のECU1によれば、メッセージのみを
記憶すれば良く、記憶すべき情報量が格段に少なくて済
む。
のメッセージ配送処理において、オブジェクトメッセー
ジ格納部12から読み出したメッセージを、そのオブジ
ェクトメッセージ格納部12から消去するようにしてい
る。詳しくは、読み出したメッセージが格納されていた
オブジェクトメッセージ格納部12のメモリブロック
を、空きメモリブロック格納部14へ返すようにしてい
る。
12内に不用となったメッセージが残ることを防止で
き、メモリ資源であるRAM6の記憶領域を有効に活用
することができる。しかも、本実施形態のECU1で
は、オブジェクトメッセージ格納部12が複数個のメッ
セージを記憶可能であると共に、図10のメッセージ配
送処理においては、オブジェクトメッセージ格納部12
に記憶されているメッセージのうち最初に記憶されたメ
ッセージを読み出して、その読み出したメッセージの出
力先であるオブジェクトのメソッドの実行へ移行させる
ようにしている。そして、上記読み出したメッセージ
は、オブジェクトメッセージ格納部12から消去するよ
うにしている。
ば、複数系統の処理を交互に効率良く行うことができ
る。即ち、前述したアイドル回転数制御の例では、水温
センサオブジェクトOB2の水温取得要求メソッド、A
D変換器オブジェクトOB3の水温AD値取得要求メソ
ッド、水温センサオブジェクトOB2の水温AD値取得
応答メソッド、及びISCオブジェクトOB1の水温取
得応答メソッドからなる水温関係の処理系統と、クラン
クセンサオブジェクトOB5のエンジン回転数取得要求
メソッド、及びISCオブジェクトOB1のエンジン回
転数取得応答メソッドからなるエンジン回転数関係の処
理系統との、2つの処理系統があった。
上記両処理系統のメソッドを、図3のメッセージシーケ
ンスチャートに示したように、水温センサオブジェク
トOB2の水温取得要求メソッド→クランクセンサオ
ブジェクトOB5のエンジン回転数取得要求メソッド→
AD変換器オブジェクトOB3の水温AD値取得要求
メソッド→ISCオブジェクトOB1のエンジン回転
数取得応答メソッド→水温センサオブジェクトOB2
の水温AD値取得応答メソッド、といった具合いに交互
に実行することができるようになる。特に、ほぼ同時期
の水温値とエンジン回転数とを取得して目標スロットル
開度を算出できるため、有利である。
ェクトのメソッドの実行によって出されるメッセージ
に、出力先のオブジェクト及びそのメソッドを示す識別
コードとしてのOID(オブジェクト識別番号)とMI
D(メソッド識別番号)が含まれている。また、本実施
形態のECU1は、図4に示したように、OIDとMI
Dの各組み合せと、それら各組み合せが示すオブジェク
トのメソッドが格納されているROM5の先頭アドレス
である格納位置情報としての実行開始アドレスとを、対
応付けて記憶した接続情報データベース16を備えてい
る。
は、オブジェクトメッセージ格納部12から読み出した
メッセージのOID及びMIDに対応するオブジェクト
のメソッドの実行開始アドレスを、接続情報データベー
ス16の記憶内容から特定して、上記読み出したメッセ
ージの出力先であるオブジェクトのメソッドの実行へ移
行するようにしている。
オブジェクトの修正によって、そのオブジェクトのRO
M5における格納位置が変わった場合でも、接続情報デ
ータベース16の内容を変更するだけで、対応すること
ができる。つまり、各オブジェクトの独立性が向上し、
プログラムの設計変更が容易となる。
ューイング処理とオブジェクトメッセージ格納部12
が、メッセージ記憶手段に相当し、図10のメッセージ
配送処理が、起動制御手段に相当している。また、RO
M5及びそれに格納された接続情報データベース16
が、格納位置記憶手段に相当している。
クトが1つのROM5に格納されていたが、オブジェク
トが複数のROMに格納されている場合には、接続情報
データベース16内の格納位置情報としては、どのRO
Mのどの実行開始アドレスといった情報を記憶させてお
けば良い。
エンジンを制御するものであったが、本発明は、例えば
車両の自動変速機やサスペンションなど、その他の制御
対象を制御する電子制御装置に対しても、全く同様に適
用することができる。
ウェア構成を表すブロック図である。
配送制御部との関係を示す概念図である。
クトの処理概要を説明するメッセージシーケンスチャー
トである。
る。
状態遷移図である。
ローチャートである。
表すフローチャートである。
ング処理を表すフローチャートである。
図である。
理を表すフローチャートである。
る。
のオブジェクトと、接続情報データベースの具体例とを
説明する説明図である。
るために定期的に実行されるスケジュール処理を表すフ
ローチャートである。
ル設定開始要求メソッドを表すフローチャートである。
ドを表すフローチャートである。
応答メソッドを表すフローチャートである。
ソッドを表すフローチャートである。
応答メソッドを表すフローチャートである。
要求メソッドを表すフローチャートである。
ロットル設定要求メソッドを表すフローチャートであ
る。
転数取得要求メソッドを表すフローチャートである。
グラムの一例を説明するメッセージシーケンスチャート
である。
ェックの手法を適用した場合の問題を説明する説明図で
ある。
ルの手法を適用した場合の問題を説明する説明図であ
る。
CPU 4…出力回路 5…ROM 6…RAM 10…
メッセージ配送制御部 12…オブジェクトメッセージ格納部 14…空きメ
モリブロック格納部 16…接続情報データベース OB1…ISCオブジ
ェクト OB2…水温センサオブジェクト OB3…AD変換
器オブジェクト OB4…スロットルコントローラオブジェクト OB5…クランクセンサオブジェクト
Claims (5)
- 【請求項1】 制御対象を制御するためのプログラムを
単位機能毎に細分化したオブジェクトに従って、前記各
単位機能を実現するための処理を夫々行う複数の単位処
理手段を備え、 前記複数の単位処理手段の何れかが択一的に処理動作を
行うと共に、前記各単位処理手段が、その処理動作中に
他の単位処理手段に対して処理依頼としてのメッセージ
を出すことにより、そのメッセージの出力先である単位
処理手段が処理を行うように構成された電子制御装置に
おいて、 前記単位処理手段が出した前記メッセージを記憶するメ
ッセージ記憶手段と、 前記複数の単位処理手段の何れかが処理動作を終了した
時点で、前記メッセージ記憶手段に記憶されているメッ
セージを読み出し、その読み出したメッセージの出力先
である単位処理手段に処理を開始させる起動制御手段
と、 を備えたことを特徴とする電子制御装置。 - 【請求項2】 請求項1に記載の電子制御装置におい
て、 前記起動制御手段は、 前記読み出したメッセージを前記メッセージ記憶手段か
ら消去するよう構成されていること、 を特徴とする電子制御装置。 - 【請求項3】 請求項1又は請求項2に記載の電子制御
装置において、 前記メッセージ記憶手段は、 前記メッセージを複数個記憶可能に構成されており、 前記起動制御手段は、 前記複数の単位処理手段の何れかが処理動作を終了した
時点で、前記メッセージ記憶手段に記憶されているメッ
セージのうち最初に記憶されたメッセージを読み出し
て、その読み出したメッセージの出力先である単位処理
手段に処理を開始させると共に、前記読み出したメッセ
ージを前記メッセージ記憶手段から消去するよう構成さ
れていること、 を特徴とする電子制御装置。 - 【請求項4】 請求項1ないし請求項3の何れかに記載
の電子制御装置において、 前記オブジェクトは、所定のプログラム記憶手段に記憶
されていると共に、 前記メッセージには、該メッセージの出力先である単位
処理手段に対応したオブジェクトを示す識別コードが含
まれており、 前記起動制御手段は、 前記識別コードと、該識別コードが示すオブジェクトの
前記プログラム記憶手段における格納位置を表わす格納
位置情報とを、対応付けて記憶した格納位置記憶手段を
備えると共に、前記メッセージ記憶手段から読み出した
メッセージに含まれている識別コードが示すオブジェク
トの前記プログラム記憶手段における格納位置を、前記
格納位置記憶手段の記憶内容に基づき特定することによ
り、前記読み出したメッセージの出力先である単位処理
手段に処理を開始させるよう構成されていること、 を特徴とする電子制御装置。 - 【請求項5】 請求項1ないし請求項4の何れかに記載
の電子制御装置において、 前記格納位置情報は、前記プログラム記憶手段の記憶領
域を示すアドレスであること、 を特徴とする電子制御装置。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP19462797A JP3663842B2 (ja) | 1997-07-18 | 1997-07-18 | 自動車用電子制御装置 |
| EP98112555A EP0892342A3 (en) | 1997-07-18 | 1998-07-07 | Electronic control unit |
| US09/474,068 US6502001B1 (en) | 1997-07-18 | 1999-12-29 | Electronic control unit having reduced inter-object message memory requirements for object-oriented control program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP19462797A JP3663842B2 (ja) | 1997-07-18 | 1997-07-18 | 自動車用電子制御装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH1139172A true JPH1139172A (ja) | 1999-02-12 |
| JP3663842B2 JP3663842B2 (ja) | 2005-06-22 |
Family
ID=16327669
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP19462797A Expired - Fee Related JP3663842B2 (ja) | 1997-07-18 | 1997-07-18 | 自動車用電子制御装置 |
Country Status (2)
| Country | Link |
|---|---|
| EP (1) | EP0892342A3 (ja) |
| JP (1) | JP3663842B2 (ja) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6502001B1 (en) | 1997-07-18 | 2002-12-31 | Denso Corporation | Electronic control unit having reduced inter-object message memory requirements for object-oriented control program |
| JP3460593B2 (ja) * | 1998-09-17 | 2003-10-27 | 株式会社デンソー | 車両用制御装置 |
| EP1020794A3 (en) * | 1999-01-13 | 2006-08-23 | Denso Corporation | Electronic control unit having reduced inter-object message memory requirements for object-oriented control program |
| JP3663950B2 (ja) | 1999-01-20 | 2005-06-22 | 株式会社デンソー | 自動車用電子制御装置 |
| JP2000311102A (ja) * | 1999-04-27 | 2000-11-07 | Denso Corp | 電子制御装置 |
| US6259984B1 (en) * | 1999-05-11 | 2001-07-10 | Denso Corporation | Automatic transmission control with object-oriented program |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5551035A (en) * | 1989-06-30 | 1996-08-27 | Lucent Technologies Inc. | Method and apparatus for inter-object communication in an object-oriented program controlled system |
| US5329619A (en) * | 1992-10-30 | 1994-07-12 | Software Ag | Cooperative processing interface and communication broker for heterogeneous computing environments |
| US5453933A (en) * | 1993-09-08 | 1995-09-26 | Hurco Companies, Inc. | CNC control system |
| US6587889B1 (en) * | 1995-10-17 | 2003-07-01 | International Business Machines Corporation | Junction manager program object interconnection and method |
-
1997
- 1997-07-18 JP JP19462797A patent/JP3663842B2/ja not_active Expired - Fee Related
-
1998
- 1998-07-07 EP EP98112555A patent/EP0892342A3/en not_active Withdrawn
Also Published As
| Publication number | Publication date |
|---|---|
| EP0892342A3 (en) | 2003-11-26 |
| JP3663842B2 (ja) | 2005-06-22 |
| EP0892342A2 (en) | 1999-01-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR970016979A (ko) | 다중 처리 시스템에서 타스크의 큐잉 시스템 및 방법 | |
| US6049817A (en) | Multi-processor system | |
| JP3578082B2 (ja) | 処理実行装置及び記録媒体 | |
| JP3801630B2 (ja) | 車両における内燃機関に対する燃料噴射制御方法 | |
| JP4728020B2 (ja) | 車両制御用ソフトウェア及び車両制御装置 | |
| JP7147615B2 (ja) | タスク管理装置 | |
| JP4241462B2 (ja) | 制御ユニットおよびマイクロコンピュータ | |
| JP2004192541A (ja) | 車両用制御プログラム、車両用制御装置、車両用制御プログラムの生成方法 | |
| JP3663950B2 (ja) | 自動車用電子制御装置 | |
| JP4151198B2 (ja) | 割込コントローラ及びマイクロコンピュータ | |
| JPH1139172A (ja) | 電子制御装置 | |
| JP2003138981A (ja) | 車両用電子制御装置 | |
| CN114303107B (zh) | 用于在具有opc ua的控制程序中同步地调用功能模块的方法和工业控制器 | |
| US6754576B2 (en) | Electronic control unit having different mask return processes | |
| JPH0991154A (ja) | スタック割り当て方法、制御装置 | |
| JP4419943B2 (ja) | Cpu間データ転送装置 | |
| JP2000267868A (ja) | 電子制御装置 | |
| US6502001B1 (en) | Electronic control unit having reduced inter-object message memory requirements for object-oriented control program | |
| US20020147761A1 (en) | Processing execution apparatus having data reference limiting function | |
| JP2000311102A (ja) | 電子制御装置 | |
| EP3923136B1 (en) | Hardware-accelerated computing system | |
| EP1020794A2 (en) | Electronic control unit having reduced inter-object message memory requirements for object-oriented control program | |
| KR20100048843A (ko) | 로봇용 소프트웨어 컴포넌트 장치 및 이를 이용한 쓰레드 처리 방법 | |
| JP2003303161A (ja) | デバイスドライバの組み込み・実行方式、組み込み・実行方法、及びプログラム | |
| US20020010823A1 (en) | Multimaster bus system and method for operating the multimaster bus system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040106 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040305 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040601 |
|
| 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: 20050308 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050321 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080408 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110408 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120408 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120408 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130408 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130408 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140408 Year of fee payment: 9 |
|
| 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 |
|
| LAPS | Cancellation because of no payment of annual fees |