(57)【要約】【課題】浮動小数点演算を行うためのプログラムコード、特にその変数によるコード量の増加を抑制し、また、固定小数点データを浮動小数点データに変換するための処理オーバヘッドを軽減する。【解決手段】制御システムに、固定小数点データとして整数データとそれに対する小数点位置データとを入力し、入力データから浮動小数点型の仮数部、指数部及び符号を求めて浮動小数点型データに変換する浮動小数点変換器（３２）と、前記浮動小数点変換器の出力を受け浮動小数点データの演算を行う浮動小数点演算器（３８）と、を有するマイクロコントローラ（１）を採用する。前記浮動小数点変換器は、前記整数データに対する仮数部のシフト量と前記小数点位置データ（ＥＸＰ２）との加減算により指数部を取得する。【選択図】図１
2009110353.tif 000002
【特許請求の範囲】
【請求項１】
命令を実行し、整数演算を行う中央処理装置と、
固定小数点データとして整数データとそれに対する小数点位置データとを入力し、入力データから浮動小数点型の仮数部、指数部及び符号を求めて浮動小数点型データに変換する浮動小数点変換器と、
前記浮動小数点変換器の出力を受け浮動小数点データの演算を行う浮動小数点演算器と、を有するマイクロコントローラ。
【請求項２】
請求項１記載のマイクロコントローラであって、
前記浮動小数点変換器は、前記整数データに対する仮数部のシフト量と前記小数点位置データとの加減算により指数部を取得する、マイクロコントローラ。
【請求項３】
請求項２記載のマイクロコントローラであって、
前記整数データは複数バイトのデータであり、前記小数点位置データは前記整数データの桁数を値とする２の階乗値の階乗数のビット数を少なくとも有するデータである、マイクロコントローラ。
【請求項４】
請求項３記載のマイクロコントローラであって、
前記浮動小数点データはＩＥＥＥ７５４浮動小数点規格に準拠し、前記浮動小数点変換器は、前記整数データに対する指数部の値から前記小数点位置データを加減算して前記浮動小数点データの指数部を取得する、マイクロコントローラ。
【請求項５】
請求項２記載のマイクロコントローラであって、
前記浮動小数点変換器は、中央処理装置による浮動小数点変換命令の実行により起動され、前記固定小数点データの整数データを前記命令の命令オペランドで指定された整数レジスタから読み込み、変換後の浮動小数点データを、前記命令の命令オペランドで指定された浮動小数点レジスタに格納する、マイクロコントローラ。
【請求項６】
請求項５記載のマイクロコントローラであって、
前記整数レジスタと前記浮動小数点変換器が第１バスで接続され、前記浮動小数点変換器と浮動小数点レジスタが第２バス接続される、マイクロコントローラ。
【請求項７】
請求項６記載のマイクロコントローラであって、
前記浮動小数点変換器は、前記浮動小数点変換命令の命令オペランドのデコード結果を前記小数点位置データとして入力する、マイクロコントローラ。
【請求項８】
請求項６記載のマイクロコントローラであって、
前記浮動小数点変換器は、中央処理装置により所定のレジスタに格納された前記小数点位置データを入力する、マイクロコントローラ。
【請求項９】
請求項２記載のマイクロコントローラであって、
前記中央処理装置がメモリから前記浮動小数点演算器の浮動小数点レジスタへデータを転送するデータ転送命令を実行する場合に用いられる選択可能な第１動作モードと第２動作モードを有し、
前記第１動作モードは、前記メモリ内のデータを前記浮動小数点レジスタに直接ロードする動作であり、
第２動作モードは、前記メモリ内のデータを前記浮動小数点変換器で浮動小数点データに変換し、変換したデータを前記浮動小数点レジスタに格納する動作である、マイクロコントローラ。
【請求項１０】
請求項９記載のマイクロコントローラであって、
前記第１モードが指定されているときは前記データ転送命令によってメモリから読み出されたデータを前記浮動小数点レジスタに供給する経路を選択し、前記第２モードが指定されているときは前記データ転送命令によってメモリから読み出されたデータを前記浮動小数点変換器に供給する経路を選択するセレクタを有する、マイクロコントローラ。
【請求項１１】
請求項９記載のマイクロコントローラであって、
前記第１動作モードと第２動作モードはモードレジスタ内の所定のフラグの値によって切換え可能にされる、マイクロコントローラ。
【請求項１２】
請求項９記載のマイクロコントローラであって、
メモリアドレスに対応して動作モード指定データと必要な小数点位置データとを保有し、前記データ転送命令によるメモリアクセスアドレスを入力して当該メモリアドレスに対応する動作モード指定データと必要な小数点位置データとを出力するデータテーブルを有し、
前記データテーブルの出力に基づいて前記第１動作モード又は第２動作モードが選択され、
前記浮動小数点変換器は必要な小数点位置データを前記データテーブルの出力ら得る、マイクロコントローラ。
【請求項１３】
請求項９記載のマイクロコントローラであって、
前記浮動小数点変換器は、中央処理装置により所定のレジスタに格納された小数点位置データを入力する、マイクロコントローラ。
【請求項１４】
請求項１記載のマイクロコントローラであって、
前記中央処理装置によって条件設定されるダイレクトメモリアクセスコントローラと、
前記整数データが格納されたメモリと、を更に有し、
前記ダイレクトメモリアクセスコントローラは、転送要求に応答して、前記メモリから前記浮動小数点変換器に整数データを転送する動作が可能にされる、マイクロコントローラ。
【請求項１５】
請求項１４記載のマイクロコントローラであって、
前記ダイレクトメモリアクセスコントローラは、前記浮動小数点変換器で変換されて浮動小数点レジスタに格納された浮動小数点データを前記メモリに転送する動作が可能にされる、マイクロコントローラ。
【請求項１６】
請求項１５記載のマイクロコントローラであって、
前記浮動小数点変換器は、中央処理装置により所定のレジスタに格納された小数点位置データを入力する、マイクロコントローラ。
【請求項１７】
請求項１６記載のマイクロコントローラであって、
前記ダイレクトメモリアクセスコントローラは前記所定のレジスタを有する、マイクロコントローラ。
【請求項１８】
制御ユニットと、前記制御ユニットが制御量を決定するアクチェータと、前記アクチェータによる制御対象の状態を検出するセンサとを有する制御システムであって、
前記制御ユニットは、
変数が浮動小数点で表現された制御プログラムを有するプログラムメモリと、
整数で表現された固定小数点の制御データが格納された制御テーブルメモリと、
前記センサからの入力に基づいて前記制御テーブルメモリから読み出された制御データをとそれに対する小数点位置データとを入力し、入力データから浮動小数点型の仮数部、指数部及び符号を求めて浮動小数点型データに変換する浮動小数点変換器と、
前記浮動小数点変換器の出力を受け前記制御プログラムに基づいて浮動小数点データの演算を行う浮動小数点演算器とを有する、制御システム。
【請求項１９】
請求項１８記載の制御システムであって、
前記浮動小数点変換器は、前記整数データに対する仮数部のシフト量と前記小数点位置データとの加減算により指数部を取得する、制御システム。
【請求項２０】
請求項１８記載の制御システムであって、
前記センサからの入力に基づいて前記制御テーブルメモリから制御データを読み出して前記浮動小数点変換器に与える中央処理装置を有する、制御システム。
【請求項２１】
請求項２０記載の制御システムであって、
前記浮動小数点変換器は、前記中央処理装置が実行する浮動小数点変換命令の命令オペランドのデコード結果を前記小数点位置データとして入力する、制御システム。
【請求項２２】
請求項２０記載の制御システムであって、
前記浮動小数点変換器は、前記中央処理装置により所定のレジスタに格納された前記小数点位置データを入力する、制御システム。
【請求項２３】
請求項１８記載の制御システムであって、
前記プログラムメモリ、前記浮動小数点変換器、及び前記浮動小数点演算器は同一半導体チップ上に形成された、制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、浮動小数点演算器を備えたマイクロコントローラに関し、例えば、外部信号を入力として制御対象機器を制御するために制御信号を内部の浮動小数点演算器を用いて計算し、その結果制御信号を外部に出力するマイクロコントローラ、更には前記したマイクロコントローラを用いた制御システムに適用して有効な技術に関する。
【背景技術】
【０００２】
例えば、自動車等の制御システム（ＥＣＵ）では、センサから入力された情報に基づいて制御信号を生成してアクチュエータに出力し、アクチュエータが前記制御信号に基づいて動作する。制御システムにはマイクロコントローラやドライバＩＣなどが搭載されている。制御システムに搭載されるマイクロコントローラでは、従来、固定小数点型変数を用いてプログラムが記述されることが多かった。固定小数点では整数部分に用いるビット数と小数部分に用いるビット数をあらかじめ固定して表現する。固定小数点は、浮動小数点数に比べて表現できる値の範囲は狭いが、高速に演算できることが利点に挙げられる。マイクロコントローラはセンサからのアナログ信号を取り込み、内臓Ａ／Ｄ変換器でデジタル化することが多い。内臓Ａ／Ｄ変換器は高々１０〜１２ビットの精度であるために、内部の変数も、８ビットあるいは１６ビットの固定小数点型を用い、高速な演算、メモリ使用量の削減、プログラムコードの削減が可能である。マイクロコントローラ内部のデータ表現としては、明示的に固定小数点を表すデータ型はなく、通常、整数型（１６ビットや３２ビット）、文字型（８ビット）などが用いられる。プログラマは、各変数はどの位置に小数点を持つかをプログラマ自身が記憶し、小数点位置の異なる固定小数点変数どうしの加減算では、桁位置合わせを行う必要があり、桁合わせのための除算等の演算処理をプログラムに含めなければならず、プログラミングに煩雑な手間を要する。一方、浮動小数点表現の場合は、マイクロコントローラ自身により自動的な桁合わせが行われるため、プログラマの手間は簡略化される。
【０００３】
近年、浮動小数点演算プロセッサを備えたマイクロコントローラが増加し、また、高いデータ精度が要求され、プログラムサイズも巨大化する傾向にあり、更に、プログラミングを容易に行う要求が高まってきたことなどから、浮動小数点による演算を実施することが増えてきた。単精度浮動小数点表現を用いると、３２ビットのデータ領域が必要であり、固定小数点に比べてプログラムの変数やデータのビット数が増え、ＲＡＭやＲＯＭの使用量が増加する。例えば、制御システムにおいて、複数のセンサ値から次の制御量を決定するための表を制御テーブルとしてＲＯＭに格納しておくことが行われる。このとき、例えば制御テーブルを８ビットの固定小数点で表現した場合に比べ、単精度浮動小数点で表現した場合には４倍の記憶領域を必要とする。制御装置テーブルを格納するＲＯＭとして、マイクロコントローラの外部にプログラムや定数データ格納用のフラッシュメモリを用いる場合や、マイクロコントローラ内部の不揮発ＲＯＭを用いる場合があるが、何れの場合もメモリの記憶容量が増大するに従ってマイクロコントローラ更には制御システムの価格が増加する。
【０００４】
特許文献１では、浮動小数点の制御テーブルのためのＲＯＭ使用量を削減するために、テーブル内に同一の値を持つデータが多数存在することに着目し、浮動小数点データをビット数の少ないインデックスで置き換え、別途インデックスと実際の値の対応表を持つことで、ＲＯＭ使用量を削減する発明が記載されている。また、特許文献２には、マイクロコントローラ内部で、浮動小数点表現と固定小数点表現を持つ場合に、そのつど変換する計算の手間を省くために、同一のデータに対して、常に両方の表現でデータを保持する発明が記載されている。
【０００５】
【特許文献１】特開2005-201181号公報
【特許文献２】特開2001-195233号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明者は、前記制御テーブルを、Ａ／Ｄ変換器で取り込む信号と同様の少ないビットで構成し、内部で演算に用いる際に制御テーブルのデータを浮動小数点に変換することについて検討した。この場合には、制御テーブルを読み込む際に、数命令のプログラムコードにより浮動小数点変換を行うため、プログラムコード量の増加と変換にかかる処理時間が増加し、性能が低下するという問題が発生する。例えば、メモリに格納されている整数型の変数を読み込み浮動小数点型に変換するためには、以下のステップ
（１）メモリから整数レジスタへのロード、
（２）整数レジスタから浮動小数点の特殊レジスタへの移動、
（３）特殊レジスタから読み込んで型変換を行い、浮動小数点レジスタに格納、
（４）桁合わせのため、浮動小数点演算器を用いた、小数点位置で割り算（掛け算）、
を要する。命令数にして、４命令、サイクル数で浮動小数点割り算であれば十数サイクル、割り算の代わりに、逆数の掛け算を用いる場合でも合計で８サイクル程度必要となる。大規模の制御テーブルの一要素を読み込むたびに、上記ステップ、特に割り算又は掛け算の処理を必要とするために、プログラムコードの増加と処理サイクルを必要とすることがわかる。命令セットアーキテクチャの種類によっては、上記ステップ（２）（３）を1命令で実行可能なものもあるが、いずれにしても、固定小数点の制御テーブルを用い、演算も固定小数点で実行する場合や、浮動小数点の制御テーブルを用いて、浮動小数点演算するのに比べ、固定小数点の制御テーブルを用いて浮動小数点演算を行う場合には、プログラムコードの増加と処理サイクル増加というオーバヘッドが発生する。
【０００７】
本発明の目的は、浮動小数点演算を行うためのプログラムコード、特にその変数によるコード量の増加を抑制することができるマイクロコントローラを提供することにある。
【０００８】
本発明の別の目的は、固定小数点データを浮動小数点データに変換するための処理オーバヘッドを軽減することができるマイクロコントローラを提供することにある。
【０００９】
本発明更に別の目的は、浮動小数点演算に用いる制御テーブルの容量を抑えることができ、制御テーブルの記憶情報を用いた制御処理のオーバヘッドを軽減することができる制御システムを提供することにある。
【００１０】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１１】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【００１２】
すなわち、制御システムに、固定小数点データとして整数データとそれに対する小数点位置データとを入力し、入力データから浮動小数点型の仮数部、指数部及び符号を求めて浮動小数点型データに変換する浮動小数点変換器と、前記浮動小数点変換器の出力を受け浮動小数点データの演算を行う浮動小数点演算器と、を有するマイクロコントローラを採用する。前記浮動小数点変換器は、前記整数データに対する仮数部のシフト量と前記小数点位置データとの加減算により指数部を取得する。
【発明の効果】
【００１３】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【００１４】
すなわち、浮動小数点演算を行うためのプログラムコード、特にその変数によるコード量の増加を抑制することができる。
【００１５】
固定小数点データを浮動小数点データに変換するための処理オーバヘッドを軽減することができる。
【００１６】
浮動小数点演算に用いる制御テーブルの容量を抑えることができ、制御テーブルの記憶情報を用いた制御処理のオーバヘッドを軽減することができる。
【発明を実施するための最良の形態】
【００１７】
１．実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【００１８】
〔１〕マイクロコントローラは、命令を実行し、整数演算を行う中央処理装置と、固定小数点データとして整数データとそれに対する小数点位置データとを入力し、入力データから浮動小数点型の仮数部、指数部及び符号を求めて浮動小数点型データに変換する浮動小数点変換器と、前記浮動小数点変換器の出力を受け浮動小数点データの演算を行う浮動小数点演算器と、を有する。
【００１９】
浮動小数点変換器を採用するから、浮動小数点演算器のためのプログラムコードに含まれる変数によるコード量の増加を抑制することができる。浮動小数点変換器は固定小数点データとして整数データとそれに対する小数点位置データとを入力して変換を行うから、変換過程で小数点位置データをもちいることにより、変換後の浮動小数点データに対して桁合わせのための掛け算又は割り算を要せず、変換処理のオーバヘッドを軽減することができる。
【００２０】
〔２〕項１のマイクロコントローラにおいて、前記浮動小数点変換器は、前記整数データ（ＩＮＴＤＡＴ）に対する仮数部のシフト量と前記小数点位置データ（ＥＸＰ２）との加減算により指数部（ＥＸＰ）を取得する。加減算により簡単に指数部を取得することができる。
【００２１】
〔３〕項２のマイクロコントローラにおいて、前記整数データは複数バイトのデータであり、前記小数点位置データは前記整数データの桁数を値とする２の階乗値の階乗数のビット数を少なくとも有するデータである。小数点位置データは整数データに対して僅かビット数で済む。
【００２２】
〔４〕項３のマイクロコントローラにおいて、前記浮動小数点データはＩＥＥＥ７５４浮動小数点規格に準拠し、前記浮動小数点変換器は、前記整数データに対する指数部の値から前記小数点位置データを加減算して前記浮動小数点データの指数部を取得する。加減算により簡単に指数部を取得することができる。
【００２３】
〔５〕項２のマイクロコントローラにおいて、前記浮動小数点変換器は、中央処理装置による浮動小数点変換命令の実行により起動され、前記固定小数点データの整数データを前記命令の命令オペランドで指定された整数レジスタ（３３）から読み込み、変換後の浮動小数点データを、前記命令の命令オペランドで指定された浮動小数点レジスタ（３５）に格納する。中央処理装置が浮動小数点変換命令を実行することによって浮動小数点型への変換を行うことができる。
【００２４】
〔６〕項５のマイクロコントローラにおいて、前記整数レジスタと前記浮動小数点変換器が第１バスで接続され、前記浮動小数点変換器と浮動小数点レジスタが第２バス接続される。浮動小数点変換器による変換に際してデータパスの制御が極めて簡単になる。
【００２５】
〔７〕項６のマイクロコントローラにおいて、前記浮動小数点変換器は、前記浮動小数点変換命令の命令オペランドのデコード結果を前記小数点位置データとして入力する。前記浮動小数点変換命令の命令コード長は増えるが小数点位置データの指定に他の命令を必要としない。
【００２６】
〔８〕項６のマイクロコントローラにおいて、前記浮動小数点変換器は、中央処理装置により所定のレジスタ（４０）に格納された前記小数点位置データを入力する。前記浮動小数点変換命令の命令コード長を増やすことなく小数点位置データを指定することができる。一群の処理に利用する固定小数点データの小数点位置を一定に揃えておくことが一般的であるから、浮動小数点変換毎に毎回レジスタ設定をやり直すことは必要とされない。
【００２７】
〔９〕項２のマイクロコントローラは、前記中央処理装置がメモリから前記浮動小数点演算器の浮動小数点レジスタへデータを転送するデータ転送命令を実行する場合に用いられる選択可能な第１動作モードと第２動作モードを有する。前記第１動作モードは、前記メモリ内のデータを前記浮動小数点レジスタに直接ロードする動作である。第２動作モードは、前記メモリ内のデータを前記浮動小数点変換器で浮動小数点データに変換し、変換したデータを前記浮動小数点レジスタに格納する動作である。メモリ内に格納した浮動小数点データを直接浮動小数点演算に用いる便に供することができる。
【００２８】
〔１０〕項９のマイクロコントローラは、前記第１モードが指定されているときは前記データ転送命令によってメモリから読み出されたデータを前記浮動小数点レジスタに供給する経路を選択し、前記第２モードが指定されているときは前記データ転送命令によってメモリから読み出されたデータを前記浮動小数点変換器に供給する経路を選択するセレクタ（５１）を有する。浮動小数点演算にメモリからリードした浮動小数点データを直接用いる場合と、浮動小数点変換器で変換された浮動小数点データを用いる場合とにおけるデータ経路選択を容易化することができる。
【００２９】
〔１１〕項９のマイクロコントローラにおいて、前記第１動作モードと第２動作モードはモードレジスタ（５０）内の所定のフラグの値によって切換え可能にされる。
【００３０】
〔１２〕項９のマイクロコントローラは更に、メモリアドレスに対応して動作モード指定データと必要な小数点位置データとを保有し、前記データ転送命令によるメモリアクセスアドレスを入力して当該メモリアドレスに対応する動作モード指定データと必要な小数点位置データとを出力するデータテーブル（６１）を有する。前記データテーブルの出力に基づいて前記第１動作モード又は第２動作モードが選択される。前記浮動小数点変換器は必要な小数点位置データを前記データテーブルの出力ら得る。変換対象とされるデータの取得に併せて自動的に対応する動作モード指定データと必要な小数点位置データを得ることができる。
【００３１】
〔１３〕項９のマイクロコントローラにおいて、前記浮動小数点変換器は、中央処理装置により所定のレジスタに格納された小数点位置データを入力する。
【００３２】
〔１４〕項１のマイクロコントローラは更に、前記中央処理装置によって条件設定されるダイレクトメモリアクセスコントローラと、前記整数データが格納されたメモリとを有する。前記ダイレクトメモリアクセスコントローラは、転送要求に応答して、前記メモリから前記浮動小数点変換器に整数データを転送する動作が可能にされる。浮動小数点変換は中央処理装置による変換命令の実行によるだけでなく、ダイレクトメモリアクセス転送制御によっても実現することができる。
【００３３】
〔１５〕項１４のマイクロコントローラにおいて、前記ダイレクトメモリアクセスコントローラは、前記浮動小数点変換器で変換されて浮動小数点レジスタに格納された浮動小数点データを前記メモリに転送する動作が可能にされる。予め複数の変換結果をメモリに蓄えて浮動小数点演算に供する演算形態も選択可能になる。
【００３４】
〔１６〕項１５のマイクロコントローラにおいて、前記浮動小数点変換器は、中央処理装置により所定のレジスタに格納された小数点位置データを入力する。前記中央処理装置による前記ダイレクトメモリアクセスコントローラへの転送条件の設定に際して小数点位置データを指定することが可能になる。
【００３５】
〔１７〕項１６のマイクロコントローラにおいて、前記ダイレクトメモリアクセスコントローラは前記所定のレジスタを有する。小数点位置データの指定が容易になる。
【００３６】
〔１８〕制御システムは、制御ユニット（７０）と、前記制御ユニットが制御量を決定するアクチェータ（７１）と、前記アクチェータによる制御対象の状態を検出するセンサ（７２）とを有する。前記制御ユニットは、変数が浮動小数点で表現された制御プログラムを有するプログラムメモリ（９０）と、整数で表現された固定小数点の制御データが格納された制御テーブルメモリ（９１）と、浮動小数点変換器（３２）と、浮動小数点演算器（３８）とを有する。浮動小数点変換器は、前記センサからの入力に基づいて前記制御テーブルメモリから読み出された制御データをとそれに対する小数点位置データとを入力し、入力データから浮動小数点型の仮数部、指数部及び符号を求めて浮動小数点型データに変換する。浮動小数点演算器は、前記浮動小数点変換器の出力を受け前記制御プログラムに基づいて浮動小数点データの演算を行うとを有する。
【００３７】
浮動小数点変換器を採用するから、浮動小数点演算器のためのプログラムコードに含まれる変数によるコード量の増加を抑制することができる。浮動小数点変換器は固定小数点データとして整数データとそれに対する小数点位置データとを入力して変換を行うから、変換過程で小数点位置データを用いることにより、変換後の浮動小数点データに対して桁合わせのための掛け算又は割り算を要せず、変換処理のオーバヘッドを軽減することができる。制御システムにおける制御量を決定するために用いる制御データを、制御テーブルメモリに前記整数データとして持てばよいから、制御テーブルメモリの記憶容量を抑えることができる。
【００３８】
〔１９〕項１８の制御システムにおいて、前記浮動小数点変換器は、前記整数データに対する仮数部のシフト量と前記小数点位置データとの加減算により指数部を取得する。加減算により簡単に指数部を取得することができる。
【００３９】
〔２０〕項１８の制御システムは、前記センサからの入力に基づいて前記制御テーブルメモリから制御データを読み出して前記浮動小数点変換器に与える中央処理装置を有する。
【００４０】
〔２１〕項２０の制御システムにおいて、前記浮動小数点変換器は、前記中央処理装置が実行する浮動小数点変換命令の命令オペランドのデコード結果を前記小数点位置データとして入力する。
【００４１】
〔２２〕項２の制御システムにおいて、前記浮動小数点変換器は、前記中央処理装置により所定のレジスタに格納された前記小数点位置データを入力する。
【００４２】
〔２３〕項１８の制御システムにおいて、前記プログラムメモリ、前記浮動小数点変換器、及び前記浮動小数点演算器は同一半導体チップ上に形成される。制御システムの小型化に寄与する。
【００４３】
２．実施の形態の詳細
実施の形態について更に詳述する。以下、本発明を実施するための最良の形態を図面に基づいて詳細に説明する。なお、発明を実施するための最良の形態を説明するための全図において、同一の機能を有する部材には同一の符号を付し、その繰り返しの説明は省略する。
【００４４】
図９にはマイクロコントローラの全体的な構成が例示される。同図に示されるマイクロコントローラ１は、特に制限されないが、相補型ＭＯＰＳ集積回路製造技術により、単結晶シリコン等の１個の半導体基板に形成される。
【００４５】
マイクロコントローラ（ＭＣＯＮ）１は、特に制限されないが、プロセッサコアとして中央処理装置（ＣＰＵ）２、浮動小数点処理ユニット（ＦＰＵ）３、及びキャッシュユニット（ＣＡＵ）４を有する。ＣＰＵ２はフェッチした命令を実行して整数演算を行う。ＦＰＵ３は浮動小数点演算命令を実行して浮動小数点演算を行い、また、浮動小数点演算のために与えられた固定小数点データを浮動小数点データに変換する。キャッシュユニット４はキャッシュメモリ（ＣＡＣＨＥ）５、アドレス変換バッファ（ＴＬＢ）６及びキャッシュ・ＴＬＢ制御回路（ＣＴＣＮＴ）７を備える。キャッシュメモリは利用頻度の高い命令やデータを一時的に蓄積する。ＴＬＢ６は利用頻度の高い論理アドレスと物理アドレスとの変換対を一時的に保有する。ＣＴＣＮＴ７はＣＰＵ２から出力されるアドレス情報に対するアドレス変換制御、ＣＰＵ２によるアクセス要求に対する、キャッシュメモリのキャッシュヒット／キャッシュミス等に応ずるキャッシュエントリのリプレースやフィルの制御、ＴＬＢ６のＴＬＢヒット／ＴＬＢミス等に応ずるＬＴＢエントリのリプレースやフィルの制御等を行う。Ａ１はアドレスバス、Ｄ１〜Ｄ３はデータバスである。特に制限されないが、ＦＰＵ３が利用するデータに対するアドレシングはＣＰＵ２が行う。Ｃ１はＣＰＵ２からＦＰＵ３への制御信号バスである。
【００４６】
ＣＡＵ５はアドレスバスＡ１０、データバスＤ１０を介してバスステートコントローラ（ＢＳＣ）１０に接続される。ＢＳＣ１０はアドレスバスＡ１２とデータバスＤ１２を介して外部バスインタフェース回路（ＥＸＢＩＦ）１２に接続する。ＥＸＢＩＦ１２は外部アドレスバスＡ２０及び外部データバスＤ２０を介して外部メモリ等の外部デバイスに接続する。アドレスバスＡ１２及びデータバスＤ１２にはランダムアクセスメモリ（ＲＡＭ）１５及びリードオンリメモリ（ＲＯＭ）１６が接続される。ＢＳＣ１０は周辺アドレスバスＡ１３と周辺データバスＤ１３を介して周辺回路モジュール２０〜２４等に接続する。２０はＭＣＯＮ内部の同期クロック信号を生成するクロックパルスジェネレータＣＰＧ）である。２１は割込み制御回路（ＩＮＴＣ）でありＭＣＯＮ１ないがいからの割り込み要求信号を受けてＣＰＵ２に割込み信号を出力する。２２が外部からのアナログ信号をディジタル信号に変換するアナログディジタル変換器（ＡＤＣ）である。２３はタイマカウンタユニット（ＴＭＵ）、２４はシリアルインタフェース回路（ＳＣＩ）である。ＢＳＣ１０はアドレスバスＡ１０とデータバスＤ１０を介してダイレクトメモリアクセスコントローラ（ＤＭＡＣ）１１に接続する。ダイレクトメモリアクセスコントローラ（ＤＭＡＣ）１１はＣＰＵ２により転送条件が設定され、転送要求を受けることにより、前記転送条件に従ってメモリ・メモリ間のようなデュアルアドレシングモード、又はメモリ・レジスタ間のようなシングルアドレシングモードでデータ転送制御を行う。ＢＳＣ１０はバスＡ１０から与えられるアクセスアドレスに応じてバスサイクル数、データ幅、経路選択等のバス制御を行う。
【００４７】
以下において、ＦＰＵ３を用いた固定小数点データを浮動小数点データに変換する変換機能について説明する。
【００４８】
図１にはＭＣＯＮ１が備える浮動小数点変換機能の第１の例が示される。ＣＰＵ２内部の命令デコーダ（ＩＤＥＣ）３０は、命令レジスタ（ＩＲＥＧ）３１にフェッチされた浮動小数点変換命令をデコードすると、その命令の命令オペランドで指定された整数レジスタ（ＩＮＴＲＥＧ）３３から整数データＩＮＴＤＡＴが浮動小数点変換器（ＦＣＯＮＶ）３２に渡される。整数レジスタ３３内には、例えば８ビット又は１６ビットの整数型で表現され、浮動小数点に変換される固定小数点の整数データＩＮＴＤＡＴが格納されている。また、命令デコーダ３０は当該浮動小数点変換命令のオペランドで指定された小数点位置を示す情報（小数点位置データ）ＥＸＰ２を浮動小数点変換器３２に渡す。小数点位置データＥＸＰ２は、固定小数点データが８ビット又は１６ビットであるために、高々４ビット程度の情報で足りる。浮動小数点変換器３２は、整数データＩＮＴＤＡＴとその整数データの小数点位置データＥＸＰ２とによって特定される固定小数点データを、例えば単精度の浮動小数点データＦＬＴＤＡＴに変換して浮動小数点レジスタ（ＦＬＴＲＥＧ）３５に出力する。
【００４９】
浮動小数点変換器３２は、符号および仮数部処理部（ＰＲＯＣ）３６及び指数部を求める引き算器（ＳＵＢ）３７を有する。整数型表現は通常、負数を２の補数で表現するために、最上位ビットが１か０であるかを調べることで、符号を判別可能であり、符号および仮数部処理部３６は１ビットの符号情報ＳＩＧＮを出力する。さらに、符号および仮数部処理部３６は指数部ＥＸＰ１及び仮数部ＦＲＡＣＴＩＯＮを求める。符号及び仮数処理部３６による、符号ＳＩＧＮ、指数部ＥＸＰ１、及び仮数部ＦＲＡＣＴＩＯＮを求める処理は既知の技術であるから、その部分については簡単な説明とする。符号および仮数部処理部３６は入力された整数表現から、最上位にある１の場所を求め、そのビットを最上位ビットに来るように左にシフトする。浮動小数点表現では、最上位の１を省略する隠しビットが用いられるので、符号および仮数部処理部３６はさらに1ビット左にシフトし、空いた右のビット部分には０を入れる。その結果、最終的な仮数ＦＲＡＣＴＩＯＮが求められる。最上位ビットが１である負数の場合は、１を引いて補数をとり絶対値を求めて同様に扱う。また、符号および仮数部処理部３６は最上位にある１の場所の桁数によって指数部ＥＸＰ１を求める。引き算器３７は求められた指数部ＥＸＰ１と前記小数点位置データＥＸＰ２を入力し指数部ＥＸＰ１から小数点位置データＥＸＰ２を減じ、最終的な浮動小数点表現における指数部ＥＸＰを求める。ここで、整数データＩＮＴＤＡＴに対する少数点位置が右にある場合には小数点位置データは補数とされている。これにより、小数点位置が整数データの最下位の右側にある場合であっても引き算器３７により引き算で指数部ＥＸＰを取得することができる。それとは逆にすれば引き算器の代わりに足し算器を用いればよい。
【００５０】
上記により求められた符号情報ＳＩＧＮ、指数部ＥＸＰ、仮数部ＦＲＡＣＴＩＯＮは一緒に、３２ビットとして、浮動小数点レジスタ３５に出力される。浮動小数点レジスタ３５にロードされた浮動小数点データは浮動小数点演算器（ＦＰＡＬＵ）３８により浮動小数点演算の対象にされる。特に図示はしないが、浮動小数点演算器３８は必要に応じて他の浮動小数点レジスタにロードされた浮動小数点データも演算対象とする。浮動小数点演算器３８はＣＰＵ２から与えられた浮動小数点命令を浮動小数点制御回路（ＦＰＣＮＴ）３９がデコードして浮動小数点演算器３８による演算動作を制御する。
【００５１】
図２には図１で説明した変換動作を具体的に例示する。整数レジスタ（ＩＮＴＲＥＧ）３３の値０００１１０１１が格納されているとする。小数点位置を示す情報ＥＸＰ２は００１１、つまり、下位から３ビット目の左に小数点があることを示している。従って整数レジスタ（ＩＮＴＲＥＧ）３３の値とＥＸＰ２の値によって規定される固定小数点データの値は、２進数で表現するとは、“１１．０１１”となりる。１０進数では、“１×２１＋１×２０＋０×２−1＋１×２−２＋１×２−３＝３．３７５”を表現していることになる。符号および仮数部処理部（ＰＲＯＣ）３６では、最上位判定により符号ビットＳＩＧＮとして正である０を出力する。仮数部ＦＲＡＣＴＩＯＮを求める処理では、まず、下位から５ビット目に最上位の１を発見する。浮動小数点数では、仮数の整数部は必ず１になるので、最上位の１は省略されるため、整数レジスタ３３の下位から４ビット分を仮数部ＦＲＡＣＴＩＯＮに左詰に入れ、仮数部ＦＲＡＣＴＩＯＮの残りは全て０を入れる。この操作で指数ＥＸＰ１が００１１つまり４であることが同時に求められる。さらに、元の整数表現が、下位から３ビット目の左に小数点がある固定小数点であるために、指数部ＥＸＰを“指数部ＥＸＰ１−小数点位置データＥＸＰ２”により求め、これにより指数部ＥＸＰが１であることが求められる。
【００５２】
この例では減算として説明したが、補数をとって加算器を用いることでも実現できる。これにより、変換された浮動小数点の値１．１０１１×２１が浮動小数点レジスタ（ＦＬＲＥＧ）３５に出力される。
【００５３】
図２の説明からも理解できるように、指数部ＥＸＰを求める処理は高々４ビットの減算、あるいは加算演算、仮数部ＦＲＡＣＴＩＯＮを求める処理も８〜１６ビットの中から最も最上位の１を求める程度の処理なので、浮動小数点変換を行った後に、桁位置合わせのための浮動小数点数の割り算を実行するのに比べ、非常に高速に変換および桁位置合わせを実現することができる。また、桁位置合わせのための割り算命令を要しないので変換に要する命令数も削減することができる。
【００５４】
図３にはＭＣＯＮ１が備える浮動小数点変換機能の第２の例が示される。図１との相違点は、浮動小数点変換命令の命令オペランドによって小数点位置の情報ＥＸＰ２を浮動小数点変換器３２に渡すのではなく、予め、小数点位置情報レジスタ（ＰＮＴＲＥＧ）４０に小数点位置データＥＸＰ２を格納しておき、浮動小数点変換命令によって変換器３２が起動されたとき、レジスタ４０を参照することで、小数点位置データＥＸＰ２を取得する点が異なっている。尚、図1には記載されていたＣＰＵ２内部の命令デコーダ３０等は図示が省略されているが、図３の構成においても命令デコーダ等は設けられている。また、図３においては、小数点位置情報レジスタ４０をＣＰＵ２の内部に配置しているが、必ずしもそれに限定されず、浮動小数点変換器３２の内部に配置されていてもよい。浮動小数点変換器３２の動作は図１とおなじである。
【００５５】
図３の構成は、浮動小数点変換命令のオペランドに小数点位置データを含める必要がないので命令がコンパクトに表現できる点が利点である。一方、小数点位置情報レジスタ４０には事前に小数点位置データを設定しておく必要がある。小数点位置情報レジスタ４０に対する設定はＣＰＵ２がデータ転送命令等を実行して行えばよい。制御システムでは、何種類かの固定小数点表現の制御テーブルが用いられるが、１つの制御テーブル内では小数点位置を統一することが通常行われる。そのために、１つの制御テーブルをアクセスするような一連の処理単位においては、小数点位置情報４０を変更することなく浮動小数点変換命令を実行できることが期待でき、小数点位置情報レジスタ４０の設定のための命令の追加によるプログラムコードの増大や処理時間のオーバヘッドは実質的に問題にはならない。
【００５６】
図４にはＭＣＯＮ１が備える浮動小数点変換機能の第３の例が示される。図４において、浮動小数点変換器（ＦＣＯＮＶ）３２は、ＲＯＭ１６から浮動小数点レジスタ３５へのデータ転送命令によって動作される。モードレジスタ（ＭＯＤＲＥＧ）５０の設定値により、ＲＯＭ１６から浮動小数点レジスタ（ＦＬＴＲＥＧ）３５へのデータ転送において、浮動小数点変換を行う第２モード又は行わない第1モードを切換えることが可能にされる。そのためのモードレジスタ５０は１ビットのフラグで足りる。モードレジスタ５０はＣＰＵ２の内部レジスタであることに限定されず、ＦＰＵ3内部のレジスタであってもよい。前記データ転送命令の命令オペランドでアドレスが指定されるＲＯＭ１６のリードデータは、セレクタ（ＳＥＬ）５１を介して直接に浮動小数点レジスタ３５に転送される経路、又は浮動小数点変換器３２の符号及び仮数処理部３６に転送される経路が選択される。セレクタ５１による経路選択はモードレジスタ５０の設定値により制御される。即ち、ＲＯＭ１６からリードアクセスするデータが浮動小数点に変換すべき固定小数点表現の整数データの場合は、浮動小数点変換器３２への経路を選択し、ＲＯＭ１６からリードアクセスするデータが元々浮動小数点データである場合は、直接、浮動小数点レジスタ３５に転送する経路を選択するようにされる。尚、図４にはＢＳＣ１０、ＣＡＵ４等の図示は省略してある。
【００５７】
図４の構成によれば、１つの固定小数点で表現された制御テーブルをアクセスするような一連の処理単位においては、事前に整数データを浮動小数点に変換してＲＯＭ１６に格納しておき、必要に応じて第２モードを設定して、ＲＯＭ１６から浮動小数点データを直接に浮動小数点レジスタ３５に転送するような制御を行うことができる。これにより、モードレジスタ５０の設定のためのプログラムコードや処理時間のオーバヘッドが問題にならない。但し、浮動小数点データを格納する分だけＲＯＭ１６の記憶容量は大きくなる。
【００５８】
図５にはＭＣＯＮ１が備える浮動小数点変換機能の第４の例が示される。図５においても図４と同様に、浮動小数点変換器（ＦＣＯＮＶ）３２は、ＲＯＭ１６から浮動小数点レジスタ３５へのデータ転送命令によって動作される。図４との相違点はモードレジスタに代えて、モード制御部（ＭＤＣＮＴ）６０及び変換対象アドレステーブル（ＡＤＴＬＢ）６１を採用した点が相違される。モード制御部６０は、変換対象アドレステーブル６１を参照し、転送命令で指定された転送元のアドレスが、変換対象アドレステーブル６１に登録されている場合に限って、セレクタ５１に浮動小数点変換器３２への経路を選択させる。転送命令で指定された転送元のアドレスが、変換対象アドレステーブル６１に登録されていない場合は、直接、浮動小数点レジスタ３５に転送する経路をセレクタ５１に選択させる。変換対象アドレステーブル６１は例えばＣＡＵ４に連想記憶を用いて形成し、制御線Ｃ２（図９には図示を省略）を介してモード制御部６０に与えれば良い。特に制限されないが、モード制御部６０はＦＰＵ３に配置されている。小数点位置データＥＸＰ２は変換対象アドレステーブル６１に、指定されたアドレス範囲ごとに格納されている。そのため、小数点位置データＥＸＰ２は、モード制御部６０を経由して、浮動小数点変換器３２に渡される。図６には変換対象アドレステーブル６１の一例が示される。変換対象アドレステーブル６１は、浮動小数点変換対象の開始アドレス（Start address）ＳＴＲＴａｄｄｒ、終了アドレス（End address）ＥＮＤａｄｄｒ、小数点位置データ（Point Position）ＥＸＰ２のセットを複数格納できる構造を持ち、アクセスアドレスが記憶されたアドレス範囲に入っているかを判定し、判定結果と共に判定ヒットのアドレス範囲に対応する小数点位置データＥＸＰ２を出力する機能を備える。終了アドレスのかわりに変換対象のアドレス範囲に応ずるサイズデータを格納してもよい。尚、図５にはＢＳＣ１０、ＣＡＵ４等の図示は省略してある。
【００５９】
図７にはＭＣＯＮ１が備える浮動小数点変換機能の第５の例が示される。図７ではＤＭＡＣ１１によるダイレクトメモリアクセス転送を用いて、ＲＯＭ１６に格納された固定小数点データを浮動小数点変換器３２で不動小数点データに変換し、変換したデータを浮動小数点レジスタ３５又はＲＡＭ１５に転送可能にした。ＤＭＡＣ１１はＣＰＵ２による命令実行によって転送に必要な転送制御情報が設定される。例えば転送元のＲＯＭ１６のメモリアドレス、転送先とされる浮動小数点レジスタ３５又はＲＡＭ１５のメモリアドレス、小数点位置データなどである。小数点位置データは小数点位置情報レジスタ（ＰＮＴＲＥＧ）４０にセットされる。転送制御情報がセットされたＤＭＡＣ１１は転送要求が与えられることによって当該転送制御情報に従ってデータ転送制御を開始する。転送制御形態は、特に制限されないが、ＲＯＭ１６からＦＰＵ３へのシングルアドレシングモードによる第１形態、ＦＰＵ３からＲＡＭ１５へのシングルアドレシングモードによる第２形態とされる。第１形態における転送に際してＦＰＵ３はＦＣＯＮＶ３を変換動作可能とし、変換結果を浮動小数点レジスタ３５にロード可能とし、この状態でＤＭＡ転送要求が発行されることにより、ＲＯＭ１６から読み出された整数データをＦＣＯＮＶ３２がＰＮＴＲＥＧ４０の値を利用して浮動小数点データに変換してＦＬＴＲＥＧ３５にロードする。第２形態における転送に際してＦＰＵ３はＦＬＴＲＥＧ３５のデータを出力可能にされ、この状態で例えばＦＰＵ３がＤＭＡ転送要求を発行してＤＭＡＣ１１からアクノレッジ信号が返されることに応答して、ＦＰＵ３がＦＬＴＲＥＧ３５の浮動小数点データを出力し、出力されたデータをＲＡＭが記憶する。尚、図７にはＢＳＣ１０、ＣＡＵ４等の図示は省略してある。
【００６０】
この例によれば、制御テーブルのあるデータを浮動小数点変換して浮動小数点レジスタに格納することに加え、例えばテーブルの一行をまとめて浮動小数点変換しＲＡＭに格納すると言う動作に対応することができる。テーブルの一列について同様に、まとめて浮動小数点変換しＲＡＭに格納する。あるいは、スキャッタギャザー機能を用い、さらに複雑に、ｎ次元のテーブルの着目点近傍をまとめて浮動小数点変換してＲＭに格納するなどの変換と転送を実現することができる。
【００６１】
図８には上記マイクロコントローラ１を適用した制御システムが例示される。同図に示される制御システムは、制御ユニット（ＥＣＵ）７０と、前記制御ユニット７０が制御量を決定するアクチェータ（ＡＣＴＯＲ）７１と、前記アクチェータ７１による制御対象の状態を検出するセンサ（ＳＮＳＲ）７２とを有する。前記制御ユニット７０はマイクロコントローラ（ＭＣＯＮ）１、信号処理チップ（ＭＳＩＮＧ）８０、及び駆動素子（ＰＯＷ）８１を有する。ここではその他の搭載回路については図示を省略する。マイクロコントローラ１は複数のセンサ７２からの信号を、信号処理チップ８０を介して入力する。入力したアナログ量はＡＤＣ２２によってディジタルデータに変換される。信号処理チップ８０を介さずに直接ＭＩＣＯＮ１に入力することも可能である。センサ信号とは、例えば自動車制御システムの場合は、エンジン回転数や、吸入空気量、バルブ角度、カムリフト量、空気温度などである。駆動素子８１はＭＣＯＮ１の入出力回路（Ｉ／Ｏ）から駆動データが供給され、その駆動データの大きさ等に従ってアクチェータの動作が制御される。マイクロコントローラ１のＲＯＭ１６は変数が浮動小数点で表現された制御プログラム（ＰＲＧＭ）９０を有する。更にＲＯＭ１６には整数で表現された固定小数点の制御データを有する制御テーブル（ＣＮＴＴＢＬ）９１が形成されている。ＦＰＵ３の浮動小数点変換回路３２は、前記センサ７２からの入力に基づいて前記ＲＯＭ１６から読み出された制御データとそれに対する小数点位置データとを入力し、入力データから浮動小数点型の仮数部、指数部及び符号を求めて浮動小数点型データに変換する。変換機能については上述の何れの対応であっても採用可能であり、ここではその詳細な説明は省略する。ＦＰＵ３の浮動小数点演算器３８は前記浮動小数点変換器３２の出力を受け前記ＲＯＭ１６制御プログラムに基づいて浮動小数点データの演算を行う。
【００６２】
前記ＲＯＭ１６の制御テーブル９１は８ビットまたは１６ビットの整数表現された固定小数点データで構成されている。制御プログラム９０は同様にＲＯＭに格納され、センサから求めた制御対象の状態から制御テーブル９１を参照して、制御プログラム９０に従い制御量を決定し、制御信号として、Ｉ／Ｏから出力する。プログラムの内の変数は浮動小数点で表現され、制御テーブル９１の内の８ビットまたは１６ビットの整数表現された固定小数点データは、図１乃至図７に基づいて説明したように、浮動小数点変換器３２により浮動小数点変換され、制御プログラム９０において浮動小数点データとして使用される。
【００６３】
これにより、ＲＯＭ１６のサイズを小さくすることが可能になる。さらに、制御プログラムは変数を浮動小数点数とするから高精度であり、人手によるコーディングを極力少なくでき、その上、変換のためのコードサイズの増加や変換処理のサイクルオーバヘッドも低減可能である。
【００６４】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【００６５】
例えば、マイクロコントローラが有する回路モジュールは図９に限定されず適宜変更可能である。キャッシュメモリやアドレス変換バッファは利用しなくてもよい。バスステートコントローラやＤＭＡＣのバス接続形態は適宜変更可能である。ＲＡＭやＲＯＭはオンチップでなくてもよい。本発明のマイクロコントローラおよび制御システムは、自動車制御、工場の制御、ロボットの動作の制御などの組み込み制御システム等に広く適用可能である。特に、近年益々制御プログラムが高度化し、制御テーブルが巨大化、制御精度の向上が要求される自動車制御に好適である。
【図面の簡単な説明】
【００６６】
【図１】図１は本発明に係るマイクロコントローラが備える浮動小数点変換機能の第１の例を示すブロック図である。
【図２】図２は図１で説明した変換動作を具体的に例示する説明図である。
【図３】図３は本発明に係るマイクロコントローラが備える浮動小数点変換機能の第２の例を示すブロック図である。
【図４】図４は図本発明に係るマイクロコントローラが備える浮動小数点変換機能の第３の例を示すブロック図である。
【図５】図５は本発明に係るマイクロコントローラが備える浮動小数点変換機能の第４の例を示すブロック図である。
【図６】図６は変換対象アドレステーブルの一例を示す説明図である。
【図７】図７は本発明に係るマイクロコントローラが備える浮動小数点変換機能の第５の例を示すブロック図である。
【図８】図８はマイクロコントローラを適用した本発明に係る制御システムのブロック図である。
【図９】図９はマイクロコントローラの全体的な構成を例示するブロック図である。
【符号の説明】
【００６７】
１  マイクロコントローラ（ＭＣＯＮ）
２  中央処理装置（ＣＰＵ）
３  浮動小数点処理ユニット（ＦＰＵ）
４  キャッシュユニット（ＣＡＵ）
５  キャッシュメモリ（ＣＡＣＨＥ）
６  アドレス変換バッファ（ＴＬＢ）
７  キャッシュ・ＴＬＢ制御回路（ＣＴＣＮＴ）
１０  バスステートコントローラ（ＢＳＣ）
１１  ダイレクトメモリアクセスコントローラ（ＤＭＡＣ）
１２  外部バスインタフェース回路（ＥＸＢＩＦ）
１５  ランダムアクセスメモリ（ＲＡＭ）
１６  リードオンリメモリ（ＲＯＭ）
３０  命令デコーダ（ＩＤＥＣ）
３１  命令レジスタ（ＩＲＥＧ）
３２  浮動小数点変換器（ＦＣＯＮＶ）
３３  整数レジスタ（ＩＮＴＲＥＧ）
ＩＮＴＤＡＴ  固定小数点の整数データ
ＥＸＰ２  小数点位置データ
ＦＬＴＤＡＴ  浮動小数点データ
３５  浮動小数点レジスタ（ＦＬＴＲＥＧ）
３６  符号および仮数部処理部（ＰＲＯＣ）
３７  引き算器（ＳＵＢ）
ＳＩＧＮ  符号情報
ＥＸＰ１  整数データの指数部
ＥＸＰ  変換後の浮動小数点データの指数部
ＦＲＡＣＴＩＯＮ  仮数部
３８  浮動小数点演算器（ＦＰＡＬＵ）
３９  浮動小数点制御回路（ＦＰＣＮＴ）
４０  小数点位置情報レジスタ（ＰＮＴＲＥＧ）
５０  モードレジスタ（ＭＯＤＲＥＧ）
５１  セレクタ（ＳＥＬ）
６０  モード制御部（ＭＤＣＮＴ）
６１  変換対象アドレステーブル（ＡＤＴＬＢ）
７０  制御ユニット（ＥＣＵ）
７１  アクチェータ（ＡＣＴＯＲ）
７２  センサ（ＳＮＳＲ）
８０  信号処理チップ（ＭＳＩＮＧ）
８１  駆動素子（ＰＯＷ）
９０  制御プログラム（ＰＲＧＭ）
９１  制御テーブル（ＣＮＴＴＢＬ）
【図１】
2009110353.tif 000003
【図２】
2009110353.tif 000004
【図３】
2009110353.tif 000005
【図４】
2009110353.tif 000006
【図５】
2009110353.tif 000007
【図６】
2009110353.tif 000008
【図７】
2009110353.tif 000009
【図８】
2009110353.tif 000010
【図９】
2009110353.tif 000011