Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7027857B2 - 制御装置 - Google Patents
[go: Go Back, main page]

JP7027857B2 - 制御装置 - Google Patents

制御装置 Download PDF

Info

Publication number
JP7027857B2
JP7027857B2 JP2017235099A JP2017235099A JP7027857B2 JP 7027857 B2 JP7027857 B2 JP 7027857B2 JP 2017235099 A JP2017235099 A JP 2017235099A JP 2017235099 A JP2017235099 A JP 2017235099A JP 7027857 B2 JP7027857 B2 JP 7027857B2
Authority
JP
Japan
Prior art keywords
instruction
control device
division
value
multiplication
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
JP2017235099A
Other languages
English (en)
Other versions
JP2019101962A (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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2017235099A priority Critical patent/JP7027857B2/ja
Priority to DE102018220851.4A priority patent/DE102018220851A1/de
Publication of JP2019101962A publication Critical patent/JP2019101962A/ja
Application granted granted Critical
Publication of JP7027857B2 publication Critical patent/JP7027857B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • G06F7/487Multiplying; Dividing
    • G06F7/4873Dividing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Program control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computing Systems (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Nonlinear Science (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Description

本開示は、車両に搭載され、浮動小数点演算を実施可能な制御装置に関する。
上記の制御装置として、下記の特許文献1には、浮動小数点演算によって非数が発生した場合、非数の伝播を抑制するために、制御ブロック単位でデータを初期化するという技術が提案されている。
特許第5379712号公報
しかしながら、発明者の詳細な検討の結果、制御ブロック単位でデータを初期化する構成では、初期化する必要がないデータも初期化され、再演算されるため、処理に遅延が生じるなどの処理性能の劣化を招く虞があるという課題が見出された。
本開示の1つの局面は、車両に搭載され、浮動小数点演算を実施可能な制御装置において、非数発生時の処理性能の劣化を抑制する技術を提供することにある。
本開示の一態様による制御装置(20A,20B)は、演算判定部(S120,S220)と、命令実行部(S130,S150,S200,S250,S260,S310)と、を備える。演算判定部は、浮動小数点演算によって0を0で除する演算をさせる演算命令を表す除算命令の有無を判定するように構成される。
命令実行部は、除算命令がある場合に、除算命令に含まれる各値の符号を加味して除算を乗算とした0に0を乗じる演算とする乗算命令を生成し、除算命令に換えて乗算命令を実行させるように構成される。
このような構成によれば、0を0で除する演算命令である除算命令に換えて、符号を考慮した乗算命令を実行させるので、非数が伝播することを抑制しつつ、非数を所定値に置換して用いる演算を行う場合等に生じ得る処理性能の劣化を抑制することができる。
なお、この欄及び特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本開示の技術的範囲を限定するものではない。
電子制御システムの構成を示すブロック図である。 レジスタ群およびRAMの構成例を示す模式図である。 演算部が実行する命令実行処理のフローチャートである。 命令実行処理のうちの例外処理を示すフローチャートである。 命令実行処理にて取得される命令の一例を示す模式図である。 生成されるサブルーチンの一例を示す説明図である。 無効演算による入出力例を示すマップである。
以下、図面を参照しながら、本開示の実施形態を説明する。
[1.第1実施形態]
[1-1.構成]
図1は、本発明が適用された電子制御システム1の構成を示すブロック図である。電子制御システム1は、電子制御装置5を備える。電子制御システム1は、クランク角センサ31と、インジェクタ32とを備えてもよい。
電子制御装置5は、マイクロコンピュータ10と、入出力回路7とを備え、マイクロコンピュータ10は、複数の演算部20A,20Bと、ROM12と、RAM13と、インタフェース部15とを備える。ROM12およびRAM13は、周知のメモリであり、例えば半導体メモリとして構成される。なお、入出力回路7は、電子制御装置5と外部の装置との間でデータをやり取りするための周知のインタフェース回路であり、図面においてはI/Fと表記する周知のインタフェース部15を介してマイクロコンピュータ10内外のデータのやり取りを行う。また、本実施形態では2つの演算部20A,20Bを備える構成を例示するが、演算部の数は、1でも3以上であってもよい。
複数の演算部20A,20Bとしては、演算部[A]20Aと、演算部[B]20Bとを備える。各演算部20A,20Bは、同様のハードウェア構成であり、それぞれ、CPU21A,21Bと、FPU22A,22Bと、レジスタ群23A,23Bと、を有する。演算部20A,20Bの各機能は、CPU21A,21BおよびFPU22A,22Bが不揮発性メモリに格納されたプログラムを実行することにより実現される。この例では、ROM12、RAM13が、プログラムを格納した不揮発性メモリに該当する。また、このプログラムが実行されることで、プログラムに対応する方法が実行される。また、電子制御装置5は、1つのマイクロコンピュータを備えてもよいし、複数のマイクロコンピュータを備えてもよい。
CPU21A,21Bは、予め定められた演算順序に従って予め定められたプログラムを実行する周知の構成であり、割り込みに対応可能である。CPU21A,21Bは、プログラムを実行することによる機能の一部として、例えば、後述する命令実行処理を実施する機能を備える。
CPU21A,21Bに含まれる各部の機能を実現する手法はソフトウェアに限るものではなく、その一部又は全部の機能は、一つあるいは複数のハードウェアを用いて実現されてもよい。例えば、上記機能がハードウェアである電子回路によって実現される場合、その電子回路は、デジタル回路、又はアナログ回路、あるいはこれらの組合せによって実現されてもよい。
レジスタ群23A,23Bには、CPU21A,21Bによる演算結果等が一時的に記録される。レジスタ群23A,23Bは、一例として図2に示すように、予め定められた変数の演算結果を記録するための、R0からR31までのデータ記録領域を備える。データ記録領域には、浮動小数点型データの格納領域が確保される。
クランク角センサ31は、車両の内燃機関におけるクランクの角度を検知する周知のセンサである。また、インジェクタ32は、車両の内燃機関における周知の燃料噴射装置である。インジェクタ32は、主としてCPU21A,21Bによって制御される。
FPU22A,22Bは、プログラムに基づく演算のうち、浮動小数点演算を実行する。浮動小数点演算は浮動小数点型データを用いた演算である。FPU22A,22Bを備えることによって、浮動小数点型データによる演算が可能となり、固定小数点型データに比べて細かい精度で演算結果を得られる。演算結果の浮動小数点型データは、レジスタ群23A,23Bに記録される。FPU22A,22Bは、例えば、IEEE754規格に従ったデータ形式で、浮動小数点型データを表す。
つまり、IEEE754規格に従う単精度の浮動小数点型データは、1ビットの符号部、8ビットの指数部、23ビットの仮数部で構成される。この規格の浮動小数点データでは、例えば、数値として表現できない演算結果を、「非数」として表現できるようになっている。
浮動小数点型データによる演算では、非数が発生すると、この非数を用いた演算結果は全て非数となってしまう。このため、非数が発生した場合には、非数を非数でない正常値に書き換える必要がある。0で除する演算や、∞(無限大)を用いた演算等の演算結果が、数値として表現できない演算結果の一例として挙げられる。
例えばこの規格では、指数部の8ビットが全て「1」で、すなわち指数部が10進表記の「255」で、仮数部が「0」以外の場合、この浮動小数点型データは「非数」を表す。また、前述の規格では、指数部の8ビットが全て「1」で仮数部が「0」の場合、この浮動小数点型データは「無限大」を表す。なお、以下では、0で除する演算や、無限大を用いた演算のような、数値として表現できない演算結果となる演算を、無効な演算といい、或いは無効な演算に含まれる無効な演算に命令を無効命令という。
CPU21A,21Bは、プログラムに基づく演算のうち、固定小数点演算を実行し、浮動小数点演算をFPU22A,22Bに実行させる。CPU21A,21Bは前述のように割込に対応可能である。なお、割込には、周知の割込コントローラ等からの要求に基づくハードウェア割込と、CPU21A,21B自身の命令実行に基づくソフトウェア割込とがある。本実施形態では、CPU21A,21Bはハードウェア割込に対応する。ただし、CPU21A,21Bは、ソフトウェア割込に対応するものであってもよいし、これらの両方に対応するものであってもよい。
CPU21A,21Bは、プログラムに基づいて、後述する処理を実施する。また、CPU21A,21Bは、クランク角センサ31による検知結果等に基づいてインジェクタ32の作動等を制御する周知の車両制御処理も実施する。
CPU21A,21Bは、割り込みが発生すると、割込時CPU処理を実施する。具体的にはCPU割込要求信号が入力されると、CPU21A,21Bは、現在実行中の処理を中断し、その処理を再開するのに必要な処理情報を、レジスタ群23A,23Bに退避、すなわちスタックさせる。特に、本実施形態では、図2に示すように、レジスタ群23A,23Bのうちの基準レジスタ23Dを含む領域に、処理情報を退避させる。
なお、基準レジスタ23Dとは、相対アドレスアクセスの際の基準アドレス13Dが記載されたレジスタを示す。また、相対アドレスアクセスとは、RAM13において設定された基準アドレス13Dからの相対パスによってRAM13における記録領域を特定する手法を表す。
すなわち、CPU21A,21Bは、RAM13へのアクセスの際に、基準レジスタ23Dに記載された基準アドレス13Dを参照することによって基準アドレス13Dを認識し、基準アドレス13Dからの相対パスでRAM13内の領域を特定するように構成される。
また、処理情報とは、例えば、フラグ等の処理状態を表す情報である。なお、本実施形態では、中断されたプログラム中で用いられていた所謂ローカル変数の内容を表す情報も処理情報に含むものとする。CPU21A,21Bは、CPU割込要求信号が入力されたときに取得した割込情報に基づいて、実行すべき割込処理、例えば後述する例外処理を特定する。
CPU21A,21Bは、このようにして特定した割込処理として、例えば後述する例外処理を実行し、この割込処理が完了した後、退避しておいた情報を基準レジスタ23Dを含む領域から読み出し、その情報に基づき、先に中断した処理を再開する。なお、以下では、処理情報を基準レジスタ23Dを含む領域に退避させる処理を退避処理といい、退避しておいた情報を基準レジスタ23Dを含む領域から読み出す処理を復帰処理という。
[1-2.処理]
次に、演算部20A,20Bが実行する命令実行処理について、図3のフローチャートを用いて説明する。命令実行処理は、演算部20A,20Bが浮動小数点演算を実行する際に起動される処理であり、浮動小数点演算が終了するまで繰り返し実行される処理である。なお、下記では演算部20Aが命令実行処理を実行する構成を例示するが、演算部20Bが命令実行処理を実行してもよいし、演算部20A,20Bが協働して命令実行処理を実行してもよい。
命令実行処理では、まず、S110で、演算部20Aが、命令が含まれる演算を選択する。演算の形態は任意であるが、例えば、プログラムの1行を演算として選択してもよい。
続いて、S120で、演算部20Aは、選択した演算に無効命令が含まれているか否かを判定する。演算部20Aは、S120で無効命令が含まれていると判定した場合には、S130へ移行し、例外設定が有効であるか否かを判定する。例外設定とは、例外処理等の割込処理を実行するか否かを決定するための設定であり、例えば、FPU22A,22Bのレジスタで管理される。特に、例外設定は、制御単位毎に設定される。制御単位とは、エアコン、燃料噴射等の制御対象毎、或いは、制御対象を制御する際の演算毎等を表す。
演算部20Aは、S130で例外設定が有効であると判定した場合には、S140へ移行し、後述する例外処理を実行した後、図3の命令実行処理を終了する。
一方、演算部20Aは、S130で例外設定が有効でないと判定した場合には、S150へ移行し、無効命令に換えてデフォルト値を出力した後、図3の命令実行処理を終了する。すなわち、演算部20Aは、例外設定が無効の際に、除算命令を含む予め設定された無効命令があると、無効命令の演算結果を規定値であるデフォルト値に置換して出力する。
また、演算部20Aは、S120で選択した演算に無効命令が含まれていないと判定した場合には、S160へ移行し、無効命令でない命令である有効命令を含む演算を実行した後、図3の命令実行処理を終了する。
次に、演算部20Aが実行する例外処理について、図4のフローチャートを用いて説明する。
まず、S200で、退避処理を実行する。退避処理では、前述のように、処理情報を、基準レジスタ23Dを含む領域に退避させる。なお、この際、処理情報を基準レジスタ23Dのみを使って退避させてもよい。演算部20Aが処理情報を基準レジスタ23Dのみを使って退避させる場合には、通常の処理では利用しない基準レジスタ23Dのみが退避処理によって書き変わるため、例外処理によってレジスタ群23A,23Bに書き込まれるデータが、退避された処理情報に影響を与えることがないようにすることができる。
続いて、S210で、演算部20Aは、無効命令と戻りアドレスとを取得する。戻りアドレスとは、無効命令を含む演算が書き込まれていたROM12上の位置を示し、この例外処理が終了した後で、再度ROM12上のプログラムを読み出す際に目印となる位置である。
続いて、S220で、演算部20Aは、無効命令に除算を含むか否かを判定する。演算部20Aは、S220で無効命令に除算を含むと判定した場合には、S230へ移行し、レジスタ群23A,23Bからこの命令での演算に用いる分子RAおよび分母RBのレジスタ番号を取得する。ここでの命令は、図5に示すように、例えば、32ビットで表現され、除算を示すコード「1011」が含まれる。また、この処理では、分子RAおよび分母RBが正の数か負の数かを表す符号も取得する。
続いて、S240で、演算部20Aは、RA=0かつRB=0であるか否かを判定する。ここでの0は、+0または-0を表す。この処理では、演算部20Aが、除算命令の有無を判定している。なお、除算命令とは、浮動小数点演算によって0を0で除する演算をさせる演算命令を表す。
演算部20Aは、S240でRA=0かつRB=0であると判定した場合には、S250へ移行し、除算命令に含まれる除算を乗算に変更した乗算命令を生成する。この際、演算部20Aは、この命令での演算に用いる分子RAおよび分母RBのレジスタ番号をそのまま採用するとともに、例えば、図5に示すように、除算を示すコード「1011」を、乗算示すコード「1010」に置換する。すなわち、分子RAおよび分母RBの符号を加味しつつ0に0を乗じる演算とする乗算命令を生成する。なお、乗算命令は、除算命令に換えて、後述するS280で実行される。
続いて、S260で、演算部20Aは、乗算命令を含むサブルーチンをRAM13上に生成する。この処理で生成されるサブルーチンは、例えば、図6に示すようなデータを有する。すなわち、サブルーチンには、FPUが実行する命令、サブルーチンからのリターンする命令が含まれる。
特に、処理の内容には、FPUが実行する命令、サブルーチンからのリターンする命令が含まれる。サブルーチンからのリターンする命令とは、サブルーチンを終了後に処理をメインルーチンに戻すための命令である。なお、サブルーチンでは、複数の演算部20A,20Bによって並列処理を行う場合に備えて、処理を行う演算部毎に処理の内容が記載される。
ところで、サブルーチンを生成するS260の処理は、演算部20Aが、S220で無効命令に除算を含まないと判定した場合、およびS240でRA=0かつRB=0でないと判定した場合にも実行される。この場合には、演算に含まれる無効命令による解RDを図7に示すマップに従って決定されるデフォルト値として出力するためのサブルーチンを生成する。
例えば、図7に示すマップの上2段では、分子RAが非数でない値、つまり±normである場合であって、分母RBが0である場合に、分子RAおよび分母RBの値の符号の組み合わせに応じて解RDを決定する例を示す。すなわち、この処理では、分子RAおよび分母RBの符号の排他的論理和が解RDの符号となり、解RDの絶対値が最大値maxになるように設定される。ここでの最大値maxは、前述の「無限大」と同じ値であってもよいが、「無限大」を除く最大値として予め規定された値であることが好ましい。
なお、図7に示すマップの下2段では、分子RAおよび分母RBが共に0である場合の演算結果も示している。上記に示すように除算命令を乗算命令に置換する処理を実行すれば、符号を加味した解RDが得られる。
続いて、S270で、演算部20Aは、例外設定を無効に設定する。例外設定を無効にすれば、例外設定が無効な間、無効命令による例外発生を抑制するので、他の処理によって生成したサブルーチン等が上書きされることを抑制できる。
続いて、S280で、演算部20Aは、FPU22A,22Bによるサブルーチンを実行する。
続いて、演算部20Aは、サブルーチンの実行が終了すると、S290で、例外設定を有効に設定する。例外設定を再び有効にすることで、次に選択する命令に無効命令が含まれる場合に、例外処理を実行できるようにする。
続いて、S300で、演算部20Aは、戻りアドレスをインクリメントする。この処理は、同じ演算を再度実行することを抑制するためである。
続いて、S310で、演算部20Aは、前述の復帰処理を実行する。この際、基準レジスタ23Dに基準アドレス13Dを記載する。なお、基準アドレス13Dは、予めROM12内の特定の領域に記載されており、この領域を参照することで基準アドレス13Dを特定することができるように設定されている。
この処理の後、図4の例外処理を終了する。
[1-3.効果]
以上詳述した第1実施形態によれば、以下の効果を奏する。
(1a)上記の電子制御システム1において、演算部20A,20Bは、浮動小数点演算によって0を0で除する演算をさせる演算命令を表す除算命令の有無を判定するように構成される。演算部20A,20Bは、除算命令がある場合に、除算命令に含まれる各値の符号を加味して除算を乗算とした0に0を乗じる演算とする乗算命令を生成し、除算命令に換えて乗算命令を実行させるように構成される。
このような構成によれば、0を0で除する演算命令である除算命令に換えて、符号を考慮した乗算命令を実行させるので、非数が伝播することを抑制しつつ、非数を所定値に置換して用いる演算を行う場合等に生じ得る処理性能の劣化を抑制することができる。
例えば、0を0で除する場合に、この演算結果を単に0に置換する構成では、分母分子の符号を判定するための場合分けが必要となる。つまり、分母分子の+-の符号の組み合わせによる排他的論理和を0に対して付加するための処理が必要となり、処理に遅延が生じるなど、処理性能の劣化が発生する虞がある。本開示の構成では、0を0で除する除算命令に換えて、符号を考慮した乗算命令を実行させるので、非数発生時の処理性能の劣化を抑制することできる。
(1b)上記の電子制御システム1において演算部20A,20Bは、乗算命令を含むサブルーチンを予め設定されたRAM上に生成し、該サブルーチンを実行するように構成される。
このような構成によれば、乗算命令を含むサブルーチンをRAM上に生成するので、予めROM上に乗算命令を含むサブルーチンを準備しておく構成と比較して、ROM領域を節約することができる。
(1c)上記の電子制御システム1において演算部20A,20Bは、予め準備された例外設定が有効であり、かつ除算命令がある場合に、乗算命令を生成するように構成される。また、例外設定が無効の際に、除算命令を含む予め設定された無効命令があると、無効命令に換えてデフォルト値を出力するように構成される。また、演算部20A,20Bは、サブルーチンに基づく乗算命令を実行する際に、例外設定を無効とし、乗算命令を実行させた後に、例外設定を有効とするように構成される。
このような構成によれば、サブルーチンが実行されるまで例外設定を一時的に無効とするので、生成したサブルーチンが別の処理によって上書き等されないようにすることができる。
(1d)上記の電子制御システム1は、演算によって得られるデータを保持するように構成された複数のレジスタを有するレジスタ群23A,23Bをさらに備える。該レジスタ群23A,23Bのうちの相対アドレスアクセスの際の基準アドレス13Dが記載されたレジスタを基準レジスタ23Dとして、演算部20A,20Bは、乗算命令を生成して乗算命令を実行する際に、基準レジスタ23Dを含むレジスタを、データの退避領域として利用するように構成される。
このような構成によれば、通常の制御時には利用されない基準レジスタ23Dを用いてデータの退避を行うので、他の制御によってデータが書き換えられる等の悪影響を抑制することができる。
(1e)上記の電子制御システム1においては、演算部20A,20Bが実行する処理に対して、制御単位毎に予め準備された例外設定を有効とするか無効とするかを設定可能に構成されており、演算部20A,20Bは、実行する処理についての例外設定が有効であり、かつ除算命令がある場合に、乗算命令を生成し、実行する処理についての例外設定が無効の際に、除算命令を含む予め設定された無効命令があると、無効命令に換えてデフォルト値を出力するように構成される。
このような構成によれば、制御単位毎に除算命令を乗算命令として実行するか、デフォルト値を出力するかを設定することができる。
[2.他の実施形態]
以上、本開示の実施形態について説明したが、本開示は上述の実施形態に限定されることなく、種々変形して実施することができる。
(2a)上記実施形態では、電子制御システム1にクランク角センサ31とインジェクタ32とが接続され、演算部20A,20Bが内燃機関の制御を実行する例について説明したが、これに限定されるものではない。例えば、クランク角センサ31およびインジェクタ32に換えて、任意のセンサおよびアクチュエータを備え、センサによる検知結果や演算部による演算結果に応じてアクチュエータを制御する構成としてもよい。
(2b)上記実施形態における1つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、1つの構成要素が有する1つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、1つの構成要素によって実現したり、複数の構成要素によって実現される1つの機能を、1つの構成要素によって実現したりしてもよい。また、上記実施形態の構成の一部を省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加又は置換してもよい。なお、特許請求の範囲に記載した文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
(2c)上述した電子制御システム1の他、当該電子制御システム1の構成要素となる制御装置、当該電子制御システム1としてコンピュータを機能させるためのプログラム、このプログラムを記録した半導体メモリ等の非遷移的実態的記録媒体、浮動小数点演算を伴う制御方法など、種々の形態で本開示を実現することもできる。
[3.実施形態の構成と本開示の構成との関係]
上記実施形態において、演算部20A,20Bは本開示でいう制御装置に相当する。また、演算部20A,20Bが実行する処理のうちの、S120,S220の処理は本開示でいう演算判定部に相当し、S130,S150,S200,S250,S260,S310の処理は命令実行部に相当する。また、S270,S290の処理は本開示でいう設定変更部に相当する。
1…電子制御システム、5…電子制御装置、7…入出力回路、10…マイクロコンピュータ、12…ROM、13…RAM、13D…基準アドレス、20A,20B…演算部、21A,21B…CPU、22A,22B…FPU、23A,23B…レジスタ群、23D…基準レジスタ、31…クランク角センサ、32…インジェクタ。

Claims (5)

  1. 車両に搭載され、浮動小数点演算を実行可能な制御装置(20A,20B)であって、
    浮動小数点演算によって分子の値が0となり分母の値が0となる除算であって、前記分子の値の符号及び前記分母の値の符号を加味した除算をさせる演算命令を表す除算命令の有無を判定するように構成された演算判定部(S120,S220)と、
    前記除算命令がある場合に、前記除算命令に含まれる前記分子の値の符号及び前記分母の値の符号を用いて、前記分子の値に前記分母の値を乗じる演算する乗算命令を生成し、前記除算命令に換えて前記乗算命令を実行させるように構成された命令実行部(S130,S150,S200,S250,S260,S310)と、
    を備える制御装置。
  2. 請求項1に記載の制御装置であって、
    前記命令実行部は、前記乗算命令を含むサブルーチンを予め設定されたRAM上に生成し、該サブルーチンを実行する
    ように構成された制御装置。
  3. 請求項2に記載の制御装置であって、
    前記命令実行部は、予め準備された例外設定が有効であり、かつ前記除算命令がある場合に、前記乗算命令を生成するように構成されるとともに、前記例外設定が無効の際に、前記除算命令を含む予め設定された無効命令があると、前記無効命令に換えてデフォルト値を出力するように構成され、
    前記サブルーチンに基づく前記乗算命令を実行する際に、前記例外設定を無効とし、前記乗算命令を実行させた後に、前記例外設定を有効とするように構成された設定変更部(S270,S290)、
    をさらに備える制御装置。
  4. 請求項1から請求項3の何れか1項に記載の制御装置であって、
    演算によって得られるデータを保持するように構成された複数のレジスタを有するレジスタ群(23A,23B)をさらに備え、
    該レジスタ群のうちの相対アドレスアクセスの際の基準アドレス(13D)が記載されたレジスタを基準レジスタ(23D)として、
    前記命令実行部は、前記乗算命令を生成して前記乗算命令を実行する際に、前記基準レジスタを含むレジスタを、データの退避領域として利用する
    ように構成された制御装置。
  5. 請求項1から請求項4の何れか1項に記載の制御装置であって、
    当該制御装置は、前記命令実行部が実行する処理に対して、制御単位毎に予め準備された例外設定を有効とするか無効とするかを設定可能に構成され、
    前記命令実行部は、実行する処理についての例外設定が有効であり、かつ前記除算命令がある場合に、前記乗算命令を生成し、実行する処理についての例外設定が無効の際に、前記除算命令を含む予め設定された無効命令があると、前記無効命令に換えてデフォルト値を出力する
    ように構成された制御装置。
JP2017235099A 2017-12-07 2017-12-07 制御装置 Active JP7027857B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017235099A JP7027857B2 (ja) 2017-12-07 2017-12-07 制御装置
DE102018220851.4A DE102018220851A1 (de) 2017-12-07 2018-12-03 Steuereinheit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017235099A JP7027857B2 (ja) 2017-12-07 2017-12-07 制御装置

Publications (2)

Publication Number Publication Date
JP2019101962A JP2019101962A (ja) 2019-06-24
JP7027857B2 true JP7027857B2 (ja) 2022-03-02

Family

ID=66629448

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017235099A Active JP7027857B2 (ja) 2017-12-07 2017-12-07 制御装置

Country Status (2)

Country Link
JP (1) JP7027857B2 (ja)
DE (1) DE102018220851A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7273317B2 (ja) * 2020-01-28 2023-05-15 サミー株式会社 回胴式遊技機
JP7273316B2 (ja) * 2020-01-28 2023-05-15 サミー株式会社 回胴式遊技機

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003280891A (ja) 2002-01-15 2003-10-02 Denso Corp 電子制御装置及び制御プログラム
JP2015180983A (ja) 2014-03-02 2015-10-15 裕 道脇 零除算演算処理プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0769783B2 (ja) * 1987-11-16 1995-07-31 日本電気株式会社 例外処理方式
JP5379712B2 (ja) 2010-02-08 2013-12-25 日立オートモティブシステムズ株式会社 車載制御装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003280891A (ja) 2002-01-15 2003-10-02 Denso Corp 電子制御装置及び制御プログラム
JP2015180983A (ja) 2014-03-02 2015-10-15 裕 道脇 零除算演算処理プログラム

Also Published As

Publication number Publication date
DE102018220851A1 (de) 2019-06-13
JP2019101962A (ja) 2019-06-24

Similar Documents

Publication Publication Date Title
JP5573134B2 (ja) ベクトル型計算機及びベクトル型計算機の命令制御方法
US8745111B2 (en) Methods and apparatuses for converting floating point representations
US10261796B2 (en) Processor and method for executing in-memory copy instructions indicating on-chip or off-chip memory
US20130246496A1 (en) Floating-point vector normalisation
US11967952B2 (en) Electronic system including FPGA and operation method thereof
KR20190045316A (ko) 벡터 곱셈 덧셈 명령
CN112445454A (zh) 使用范围特定的系数集字段执行一元函数的系统
JP7027857B2 (ja) 制御装置
JP2022519258A (ja) アンカーデータ要素における特殊値の符号化
JPH0546383A (ja) データ処理装置
EP3716043B1 (en) Information processor, information processing method, and program
JP2019168753A (ja) ソースコード解析装置およびソースコード解析プログラム
US20080282071A1 (en) Microprocessor and register saving method
CN118012508A (zh) 一种处理器可变指令的架构方法
JPS6343773B2 (ja)
JP6332091B2 (ja) 電子制御装置
TWI536261B (zh) 用於資料元素的條件式選擇的設備、方法、電腦程式產品、及虛擬機
JP3745673B2 (ja) プロセッサ
JPH01297727A (ja) 浮動小数点演算の正規化制御方式
JP2006323710A (ja) データプロセッサ、データ処理方法及び演算制御プログラム
JPS61173345A (ja) 計算機システム
US20100235607A1 (en) Processor
CN121683666A (zh) 一种用于加速高精度adc数据运算的装置及方法
CN118057308A (zh) 指令处理优化方法及相关装置
JPH0215089B2 (ja)

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201111

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210805

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210817

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210928

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: 20220118

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220131

R151 Written notification of patent or utility model registration

Ref document number: 7027857

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250