JP3551875B2 - 浮動小数点演算機能を有した電子制御装置 - Google Patents
浮動小数点演算機能を有した電子制御装置 Download PDFInfo
- Publication number
- JP3551875B2 JP3551875B2 JP2000002660A JP2000002660A JP3551875B2 JP 3551875 B2 JP3551875 B2 JP 3551875B2 JP 2000002660 A JP2000002660 A JP 2000002660A JP 2000002660 A JP2000002660 A JP 2000002660A JP 3551875 B2 JP3551875 B2 JP 3551875B2
- Authority
- JP
- Japan
- Prior art keywords
- point
- floating
- data
- fixed
- electronic control
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Combined Controls Of Internal Combustion Engines (AREA)
Description
【発明の属する技術分野】
本発明は、浮動小数点演算機能を備えた電子制御装置に関するものである。
【0002】
【従来の技術】
一般に、自動車のエンジン制御などに適用される電子制御装置(ECU)では、従来より固定小数点型データを用いて各種演算を実施していたが、近年では浮動小数点演算プロセッサ(FPU:Floating−Point Unit )の導入により、浮動小数点型データによる演算が実施できるようになった。浮動小数点型データによれば、固定小数点型データに比べて非常に細かい精度で演算結果が得られる。
【0003】
また、浮動小数点演算を導入した電子制御装置において、固定小数点型データと浮動小数点型データとが共に存在する場合、固定小数点型データを参照して浮動小数点演算に用いるには、
(1)固定小数点型のRAM値を浮動小数点型へ型変換する、
(2)前記型変換した浮動小数点型データを参照し、浮動小数点演算を行う、
といった手順が実施される。
【0004】
【発明が解決しようとする課題】
しかしながら、上記従来の技術では、浮動小数点演算に際して固定小数点型データの参照箇所が多数存在すると、型変換のためのロジックが増加する。それ故、制御プログラムが増えてROM(フラッシュメモリ)のデータ量が増加したり、マイクロコンピュータの演算負荷が増加してパフォーマンスが低下したりするという問題を招く。
【0005】
本発明の電子制御装置は、上記問題に着目してなされたものであって、固定小数点と浮動小数点との2つの形式からなる同一データを扱う電子制御装置において、演算負荷の軽減を図ることを目的とする。
【0006】
【課題を解決するための手段】
請求項1に記載の電子制御装置では、浮動小数点型データを演算するための浮動小数点演算機能を有し、所定の制御プログラムに従い自動車のエンジンの制御を実施するマイクロコンピュータを備えた電子制御装置において、固定小数点と浮動小数点との2つの形式を要する同一データに関して、メモリに浮動小数点型データの記憶領域を予め設けておき、マイクロコンピュータは、前記浮動小数点型データの記憶領域より浮動小数点型データを参照するものであって、前記マイクロコンピュータは、前記記憶領域より固定小数点型データ及び浮動小数点型データを参照するものであって、前記エンジンの回転数に基づいてエンジン始動直後であるか否かを判断する場合は固定小数点型データを使用し、通常運転時に吸入空気量を算出する場合は浮動小数点型データを使用する。
【0007】
要するに、固定小数点のメモリ値を浮動小数点へ型変換し、その型変換した浮動小数点型データを参照して浮動小数点演算を行うといった従来装置と比べると、本発明では、データ参照の都度、型変換する必要がないので、浮動小数点型データ参照のためのロジックが大幅に削減される。従って、固定小数点と浮動小数点との2つの形式からなる同一データを扱う電子制御装置において、演算負荷の軽減を図ることができる。
また、エンジン始動直後か否かを判断する場合においては、演算の精度が粗くても良いため、固定小数点型データを使う。よって、演算負荷の軽減を図ることができる。
【0009】
請求項2に記載の発明では、マイクロコンピュータは、同一データに関して固定小数点及び浮動小数点の何れか一方の値を求めた後、型変換により他方の値を求め、これら求めた各値をそれぞれ該当する記憶領域に格納する。
【0010】
本構成によれば、固定小数点と浮動小数点との2つのデータが順次求められ、記憶領域に個別に格納されるので、各値を参照する際には各々の記憶領域に直接アクセスすれば良い。従って、参照する数値が固定小数点と浮動小数点の何れであっても、負荷の増大を招くことなく処理が実施できる。
【0011】
請求項3に記載の発明では、浮動小数点型データを先に求め、その浮動小数点型データを固定小数点型データに変換するので、その逆に固定小数点型データを先に求める構成と比べて浮動小数点型データの精度が向上する。
【0012】
請求項4に記載の発明では、固定小数点と浮動小数点との型変換を行う際に、少なくともその型変換の開始から終了までの期間で割り込みを禁止するので、その型変換の途中で固定小数点と浮動小数点の何れか一方が参照される(読み出される)ことはない。従って、参照される固定小数点型データと浮動小数点型データとが不一致となるといった不都合が回避される。
【0013】
請求項5に記載の発明では、同一データにおける2つの形式を、処理の要求精度に応じて使い分けるので、各種処理の要求精度を満たしつつ、処理負荷を軽減することができる。
【0014】
【発明の実施の形態】
以下、この発明を具体化した一実施の形態を図面に従って説明する。図1は、エンジン制御システムの概略を示すブロック図である。本システムにおいて、車載エンジン1は、例えばガソリン噴射式の多気筒内燃機関として構成される。
【0015】
エンジン制御ECU10はマイクロコンピュータ(以下、マイコンという)11を備え、同マイコン11はCPU12、RAM13、ROM14、FPU(浮動小数点演算プロセッサ)15、I/O(入出力装置)16を備える。ここで、FPU15は浮動小数点形式の演算を実施し、CPU12は浮動小数点形式以外の演算を実施する。I/O16には周知のA/D変換器が含まれる。
【0016】
ECU10には、エンジン1に設けられたセンサ群からエンジン運転状態を表す各種情報が入力される。センサ群は、例えば冷却水温を検出するための水温センサ2、吸入空気量を検出するためのエアフロメータ(吸入空気量センサ)3、エンジン回転数を検出するための回転数センサ4などからなる。そして、ECU10は、前記入力されるセンサ信号を基に、図示しないインジェクタによる燃料噴射の制御や燃料ガスのパージ制御などを実施する。
【0017】
FPU15により演算される浮動小数点型データは、例えばIEEE754規格に従い構成され、図2に示されるようにその内訳として、1ビットの符号部と、8ビットの指数部と、23ビットの仮数部とを有する。こうして仮数部が23ビットで構成される4バイト(単精度記憶形式)の浮動小数点型データの場合、7桁の分解能(0.0000001 の分解能)を持つ。
【0018】
一方、図3(a)にはRAM13の構成例を示し、図3(b)にはRAM13に格納される水温、吸入空気量、エンジン回転数の各値の形態を示す。図3(a)から分かるように、RAM13は、制御用RAM領域とスタック領域とに大別される。制御用RAM領域は、固定小数点型の水温データTWを格納する1バイトRAMと、各々固定小数点型の吸入空気量データGA,回転数データNEを格納する2バイトRAMと、各々浮動小数点型の水温データtw,吸入空気量データga,回転数データneを格納する4バイトRAMとに区分される。因みに、固定小数点型データはLSBとオフセットにより実値が表現されるのに対して、浮動小数点型データにはLSB,オフセットの概念はなく、浮動小数表現される値が実値を示す。
【0019】
本実施の形態では、上述の如く水温、吸入空気量、回転数など、同一データで固定小数点と浮動小数点とが共に存在する場合において、各種センサ2〜4の検出結果を基に浮動小数点型データを算出し、その後、浮動小数点型データを固定小数点型データに型変換する。そして、それら各データをRAM13に格納しておくこととする。以下には、CPU12により実行される各種処理を、図4〜図7の各フローチャートに従い詳しく説明する。
【0020】
図4は、浮動小数点の吸入空気量データgaと固定小数点の吸入空気量データGAとを算出する手順を示すフローチャートであり、同処理はCPU12により例えば2ms周期で実行される。
【0021】
図4において、先ずステップ101では、エアフロメータ3の検出値(電圧値)をA/D変換し、続くステップ102では割り込みを禁止する。その後、ステップ103では、吸入空気量A/D値をテーブル補間し、続くステップ104では、前記補間値を浮動小数点の吸入空気量データgaとして、該当するRAM領域に格納する。
【0022】
その後、ステップ105では、浮動小数点から固定小数点への型変換を行い、ステップ106では、上記型変換した値を固定小数点の吸入空気量データGAとして、該当するRAM領域に格納する。その後、ステップ107では、割り込み禁止を解除し、本処理を一旦終了する。
【0023】
また、図5は、浮動小数点の回転数データneと固定小数点の回転数データNEとを算出する手順を示すフローチャートであり、同処理はCPU12により例えば30°CA周期で実行される。
【0024】
図5において、先ずステップ201では、回転数センサ4から出力される回転パルスに基づいて30°CA間の所要時間T30を求め、続くステップ202では割り込みを禁止する。その後、ステップ203では、前記求めた所要時間T30を用いて浮動小数点の回転数データneを算出し(ne=1sec/T30/12*60)、それを該当するRAM領域に格納する。
【0025】
その後、ステップ204では、浮動小数点から固定小数点への型変換を行い、ステップ205では、上記型変換した値を固定小数点の回転数データNEとして、該当するRAM領域に格納する。更にその後、ステップ206では、割り込み禁止を解除し、本処理を一旦終了する。
【0026】
因みに、水温データ等、他のデータについても必要に応じ、前記図4などの処理に準じて浮動小数点型データと固定小数点型データとが算出される。但し、その違いは演算周期のみ(水温算出は、256ms周期)であるのでここでは図示及び説明を省略する。
【0027】
上記図4及び図5処理では、浮動小数点型データが更新されてから固定小数点型データが更新されるまでの期間において割り込みが禁止されるので、その期間内に何れかのデータが参照されても、浮動小数点と固定小数点の両データが相違し不一致となることが防止される。
【0028】
次いで、浮動小数点から固定小数点への変換の手順を図6のフローチャートを用いて説明する。
先ずステップ301では、浮動小数点型データから所定のオフセット値(例えば、水温データでは−40)を減算し、その差をLSBで除算する。そして、その演算結果をwork値とする。この処理により、浮動小数点型データが型変換されて固定小数点型データが算出される。
【0029】
その後、work値が固定小数点型データにおける最大値maxを超えれば、work値が最大値maxでガードされる(ステップ302,303)。また、work値が固定小数点型データにおける最小値minを下回れば、work値が最小値minでガードされる(ステップ304,305)。最後にステップ306では、上記の如く求めたwork値を固定小数点型データとする。
【0030】
一方、図7は、一回転当たりの吸入空気量gnを算出する手順を事例に、固定小数点型データと浮動小数点型データとの使い分け例を示すフローチャートである。
【0031】
ステップ401では、エンジン1の回転域を判別する。このとき、固定小数点の回転数データNEを用い、NE>200rpmであるか否かを判別する。始動直後等においてNE≦200rpmであれば、ステップ402に進み、gn値を固定値cとする。つまり、始動直後は回転数データが不正確であるため、gn=固定値とする。また、NE>200rpmの場合、ステップ403に進み、浮動小数点の吸入空気量データgaと回転数データneとを用いてgn値を算出する。
【0032】
要するに、始動直後かどうかを判断するための回転数データの精度は粗くても良いため、ステップ401では固定小数点型データを使い、演算負荷(ROM)の削減を図る。また、通常運転時は精度の良いgn値が要求されるため、浮動小数点型データを使ってgn値を正確に算出する。
【0033】
以上詳述した本実施の形態によれば、以下に示す効果が得られる。
(イ)RAM13に浮動小数点型データの記憶領域を予め設けておき、浮動小数点型データの記憶領域よりCPU12が浮動小数点型データを参照するので、固定小数点から浮動小数点へ型変換し、その型変換した浮動小数点型データを参照して浮動小数点演算を行うといった従来装置と比べると、データ参照毎に型変換する必要がなく、浮動小数点型データ参照のためのロジックが大幅に削減される。従って、固定小数点と浮動小数点との2つの形式からなる同一データを扱う電子制御装置において、演算負荷の軽減を図ることができる。特に本構成は、浮動小数点型データの参照箇所が多数存在する場合に有用であると言える。
【0034】
(ロ)同一のRAM13に固定小数点用と浮動小数点用の2つの記憶領域を設定しておくので、このRAMデータを用いて適正なる浮動小数点演算が実施できる。
【0035】
(ハ)浮動小数点型データを求めた後、型変換により固定小数点型データを求め、これら求めた各データをそれぞれ該当するRAM領域に個別に格納するので、各データを参照する際には各々のRAM領域に直接アクセスすれば良い。従って、参照する数値が固定小数点と浮動小数点の何れであっても、負荷の増大を招くことなく処理が実施できる。特に、浮動小数点型データを先に求め、その後、固定小数点型データへの型変換を行うので、その逆に固定小数点型データを先に求める構成と比べて浮動小数点型データの精度が向上する。
【0036】
(ニ)固定小数点と浮動小数点との型変換を行う際に、その型変換の開始から終了までの期間で割り込みを禁止するので、その型変換の途中で固定小数点と浮動小数点の何れか一方が参照される(読み出される)ことはない。従って、参照される固定小数点型データと浮動小数点型データとが不一致となるといった不都合が回避される。
【0037】
(ホ)固定小数点と浮動小数点との2つの形式を持つ同一データを、図7の如く処理の要求精度に応じて使い分けるので、各種処理の要求精度を満たしつつ、処理負荷の軽減を図ることができる。
【0038】
なお本発明は、上記以外に次の形態にて実現できる。
上記実施の形態では、図4及び図5の処理において、浮動小数点型データを先に求め、その後、浮動小数点型データを型変換して固定小数点型データを求めたが、その順序を逆にして実現しても良い。
【0039】
上記実施の形態では、単精度記憶形式の浮動小数点型データを扱う電子制御装置(ECU)について例示したが、倍精度記憶形式の浮動小数点型データを扱う電子制御装置にも適用できる。
【図面の簡単な説明】
【図1】発明の実施の形態におけるエンジン制御システムの概略を示すブロック図。
【図2】浮動小数点型データの構成を示す図。
【図3】RAMの構成例を示す図。
【図4】吸入空気量の算出手順を示すフローチャート。
【図5】エンジン回転数の算出手順を示すフローチャート。
【図6】型変換の手順を示すフローチャート。
【図7】吸入空気量gnの算出手順を示すフローチャート。
【符号の説明】
1…エンジン、10…エンジン制御ECU(電子制御装置)、11…マイコン、12…CPU、13…RAM(メモリ)、15…FPU(浮動小数点演算プロセッサ)。
Claims (5)
- 浮動小数点型データを演算するための浮動小数点演算機能を有し、所定の制御プログラムに従い自動車のエンジンの制御を実施するマイクロコンピュータを備えた電子制御装置において、
固定小数点と浮動小数点との2つの形式を要する同一データに関して、メモリに固定小数点型データ及び浮動小数点型データの記憶領域を予め設けておき、
前記マイクロコンピュータは、前記記憶領域より固定小数点型データ及び浮動小数点型データを参照するものであって、前記エンジンの回転数に基づいてエンジン始動直後であるか否かを判断する場合は固定小数点型データを使用し、通常運転時に吸入空気量を算出する場合は浮動小数点型データを使用することを特徴とする電子制御装置。 - 前記マイクロコンピュータは、前記同一データに関して固定小数点及び浮動小数点の何れか一方の値を求めた後、型変換により他方の値を求め、これら求めた各値をそれぞれ該当する記憶領域に格納する請求項1に記載の電子制御装置。
- 請求項2に記載の電子制御装置において、
浮動小数点型データを先に求め、その浮動小数点型データを固定小数点型データに変換する電子制御装置。 - 請求項2又は3に記載の電子制御装置において、
固定小数点と浮動小数点との型変換を行う際に、少なくともその型変換の開始から終了までの期間で割り込みを禁止する電子制御装置。 - 前記同一データにおける2つの形式を、処理の要求精度に応じて使い分ける請求項1〜4のうち何れか一項に記載の電子制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000002660A JP3551875B2 (ja) | 2000-01-11 | 2000-01-11 | 浮動小数点演算機能を有した電子制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000002660A JP3551875B2 (ja) | 2000-01-11 | 2000-01-11 | 浮動小数点演算機能を有した電子制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001195233A JP2001195233A (ja) | 2001-07-19 |
JP3551875B2 true JP3551875B2 (ja) | 2004-08-11 |
Family
ID=18531738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000002660A Expired - Fee Related JP3551875B2 (ja) | 2000-01-11 | 2000-01-11 | 浮動小数点演算機能を有した電子制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3551875B2 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4228706B2 (ja) | 2003-01-27 | 2009-02-25 | 株式会社デンソー | 電子制御装置及び該電子制御装置の記憶装置 |
JP4557205B2 (ja) * | 2004-02-20 | 2010-10-06 | 株式会社小松製作所 | 油圧機器の制御装置 |
JP4645519B2 (ja) * | 2006-04-27 | 2011-03-09 | 株式会社デンソー | 演算処理装置,制御装置およびプログラム |
JP2009110353A (ja) * | 2007-10-31 | 2009-05-21 | Hitachi Ltd | マイクロコントローラ及び制御システム |
JP5040710B2 (ja) * | 2008-02-15 | 2012-10-03 | 株式会社デンソー | 電子制御装置、及び電子制御装置における演算方法 |
JP2011203070A (ja) * | 2010-03-25 | 2011-10-13 | Yokogawa Electric Corp | 波形測定装置および半導体試験装置 |
JP6492739B2 (ja) * | 2015-02-20 | 2019-04-03 | セイコーエプソン株式会社 | 回路装置、物理量検出装置、電子機器及び移動体 |
JP6846162B2 (ja) * | 2016-10-31 | 2021-03-24 | 株式会社テイエルブイ | 暗号化システム及び暗号化方法 |
-
2000
- 2000-01-11 JP JP2000002660A patent/JP3551875B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001195233A (ja) | 2001-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4461257A (en) | Method and system for controlling engine ignition timing | |
JP3551875B2 (ja) | 浮動小数点演算機能を有した電子制御装置 | |
US8484266B2 (en) | Embedded control system with floating-point conversion | |
EP0404392A1 (en) | Air charge calculation system | |
JP3644350B2 (ja) | 浮動小数点演算機能を有した自動車用電子制御装置 | |
EP1441277B1 (en) | Electronic control apparatus | |
JP4158566B2 (ja) | 浮動小数点演算機能を有する電子制御装置 | |
US4552110A (en) | Electronic ignition control system | |
JP4329332B2 (ja) | 電子制御装置及び制御プログラム | |
JPH067083B2 (ja) | 内燃機関の吸入空気量検出装置 | |
US5503126A (en) | Ignition timing control system for internal combustion engines | |
US6904543B2 (en) | Electronic control having floating-point data check function | |
JP3690365B2 (ja) | 浮動小数点演算によるなまし計算の収束判定方法及び電子制御装置 | |
JPS6124534B2 (ja) | ||
JP3666226B2 (ja) | 電子制御装置 | |
JP2000305750A (ja) | 車載用電子制御装置 | |
JP4058870B2 (ja) | 浮動小数点演算機能を有した電子制御装置 | |
JPH08319875A (ja) | エンジン回転数検出装置 | |
JP2001196933A (ja) | 浮動小数点演算機能を有した電子制御装置 | |
JP2001099678A (ja) | 電子制御装置 | |
JP2955688B2 (ja) | エンジンの燃料制御装置 | |
JP2887048B2 (ja) | 内燃機関の失火検出方法及びその装置 | |
JPS60201074A (ja) | 内燃機関の制御方法 | |
JP2917564B2 (ja) | 内燃機関の燃料噴射制御装置 | |
JPH11212763A (ja) | 電子制御装置 |
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: 20040406 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040419 |
|
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: 20110514 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120514 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120514 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130514 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |