JPH02272677A - データプロセッサ - Google Patents
データプロセッサInfo
- Publication number
- JPH02272677A JPH02272677A JP2054799A JP5479990A JPH02272677A JP H02272677 A JPH02272677 A JP H02272677A JP 2054799 A JP2054799 A JP 2054799A JP 5479990 A JP5479990 A JP 5479990A JP H02272677 A JPH02272677 A JP H02272677A
- Authority
- JP
- Japan
- Prior art keywords
- information
- instructions
- unit
- execution
- data processor
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/17—Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/3001—Arithmetic instructions
- G06F9/30014—Arithmetic instructions with variable precision
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30163—Decoding the operand specifier, e.g. specifier format with implied specifier, e.g. top of stack
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Complex Calculations (AREA)
- Executing Machine-Instructions (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[産業上の利用分野]
本発明は、−数的には、単一の命令により、テーブルル
ックアップ(table 1ook−up)および補間
(1nterl)O1ati3)機能を実行できるデー
タプロセッサに関する。より特定的には、本発明はその
命令セット中にテーブルルックアップおよび補間命令を
含む集積回路データプロセッサに関する。
ックアップ(table 1ook−up)および補間
(1nterl)O1ati3)機能を実行できるデー
タプロセッサに関する。より特定的には、本発明はその
命令セット中にテーブルルックアップおよび補間命令を
含む集積回路データプロセッサに関する。
[従来の技術]
機械的システムを制御することを含むデータプロセッサ
の多くの普通の応用はテーブルルックアヅグ操作を含む
、1つの例はマイクロプロセッサを内燃機関における燃
料注入の制御のために用いる信号を発生するために使用
することである。該マイクロプロセッサには、エンジン
速度、負荷、吸入空気温度および圧力、のような数多く
の入力パラメータが与えられ、注入されるべき燃料の適
切な量および注入のタイミングを計算し、かつインジェ
クタを付勢する制御信号を発生する。必要な計算を行な
う非常に効率的な方法は入力パラメタを使用して先に計
算されたテーブルにおけるロケーションを指示するアド
レスを発生しかつ該テーブルにおけるそのロケーション
から、マイクロプロセッサにとってアクセス可能なメモ
リ内に格納される、適切な結果を引き出すことである。
の多くの普通の応用はテーブルルックアヅグ操作を含む
、1つの例はマイクロプロセッサを内燃機関における燃
料注入の制御のために用いる信号を発生するために使用
することである。該マイクロプロセッサには、エンジン
速度、負荷、吸入空気温度および圧力、のような数多く
の入力パラメータが与えられ、注入されるべき燃料の適
切な量および注入のタイミングを計算し、かつインジェ
クタを付勢する制御信号を発生する。必要な計算を行な
う非常に効率的な方法は入力パラメタを使用して先に計
算されたテーブルにおけるロケーションを指示するアド
レスを発生しかつ該テーブルにおけるそのロケーション
から、マイクロプロセッサにとってアクセス可能なメモ
リ内に格納される、適切な結果を引き出すことである。
補間は大きなテーブルを必要とすることなくテブルから
引き出された情報の精度を増大するためのよく知られた
技術である。補間は上に述べたようなデータプロセッサ
を基礎とした制御システムに広く応用されてきた。
引き出された情報の精度を増大するためのよく知られた
技術である。補間は上に述べたようなデータプロセッサ
を基礎とした制御システムに広く応用されてきた。
集積回路データプロセッサ、これはまたマイクロプロセ
ッサあるいはマイクロコンピュータとも称される、の分
野においては、テーブルルックアップおよび補間操作は
該プロセッサにより実行される一連のより基本的な命令
によって行なわれてきた。
ッサあるいはマイクロコンピュータとも称される、の分
野においては、テーブルルックアップおよび補間操作は
該プロセッサにより実行される一連のより基本的な命令
によって行なわれてきた。
[発明が解決しようとする課趙]
この解決方法はシステム設計者に特定の応用に対する最
も適切なテーブルルックアップおよび補間アルゴリズム
を開発する上で広い柔軟性を許容するが、そのような一
連の命令は常に等化な単一の命令が成し得るよりも低速
である。その上、アルゴリズムを設計し、コーディング
しがっ維持することはシステム設計者の資源にかなりな
負担を課すことになる。
も適切なテーブルルックアップおよび補間アルゴリズム
を開発する上で広い柔軟性を許容するが、そのような一
連の命令は常に等化な単一の命令が成し得るよりも低速
である。その上、アルゴリズムを設計し、コーディング
しがっ維持することはシステム設計者の資源にかなりな
負担を課すことになる。
従って、本発明の目的は、テーブルルックアップおよび
補間命令を有する改良されたデータプロセッサを提供す
ることである。
補間命令を有する改良されたデータプロセッサを提供す
ることである。
[課題を解決するための手段]
本発明のこのおよび他の目的は、複数の命令の各々を実
行するための命令実行手段、該命令実行手段に結合され
てデータプロセッサに対しメモリに格納された情報を提
供するためのメモリインタフェース手段、そして前記命
令実行手段に結合され情報を格納しかつ提供するための
レジスタ手段、を具備し、前記命令実行手段はさらに、
前記メモリインタフエース手段を作動させて第1のユニ
ットの情報を提供し、前記メモリインタフェース手段を
作動させて第2のユニットの情報を提供し、前記第1お
よび第2のユニットの情報に対し補間操作を行ないかつ
出力を与えることにより、前記複数の命令の内の第1の
特定の1つの実行に応答するための手段を具備する、デ
ータプロセッサにより提供される。
行するための命令実行手段、該命令実行手段に結合され
てデータプロセッサに対しメモリに格納された情報を提
供するためのメモリインタフェース手段、そして前記命
令実行手段に結合され情報を格納しかつ提供するための
レジスタ手段、を具備し、前記命令実行手段はさらに、
前記メモリインタフエース手段を作動させて第1のユニ
ットの情報を提供し、前記メモリインタフェース手段を
作動させて第2のユニットの情報を提供し、前記第1お
よび第2のユニットの情報に対し補間操作を行ないかつ
出力を与えることにより、前記複数の命令の内の第1の
特定の1つの実行に応答するための手段を具備する、デ
ータプロセッサにより提供される。
[実施例コ
本発明のこれらおよび他の見地は図面と共に以下の詳細
な説明からより明らかになるであろう。
な説明からより明らかになるであろう。
第1図は、本発明の特定の実施例に係わる集積回路デー
タプロセッサを示す、マイクロコンピュータ10は、中
央処理ユニット(CPU)11、モジュール(inte
r−Ilodule)間バス(IMB)12、シリアル
通信インタフェース13、オンボードメモリ14、タイ
マモジュール15、およびシステム集積モジュール(S
IM)16を具備する。複数のデータ、アドレスおよび
制御信号線を具備する、モジュール間バス12は、マイ
クロコンピュータ10の池の構成要素の各々に結合され
かつそれらの間の通信を提供する。シリアルインタフェ
ース13はマイクロコンピュータ10と外部袋=および
システムとの間の同期および/または非同期シリアルデ
ータ転送を幾つかのシリアルI10ピンによって提供す
る。メモリ14はマイクロコンピュータ10にとって有
用なソフトウェア命令および他のデータのための格納ス
ペースを提供する。タイマモジュール15は、入力捕獲
、出力比較等のような種々のタイミング機能を幾つかの
タイマピンにより提供しかつインタフェース17により
メモリ14に結合されている。SIM16はCPUII
に外部メモリおよび他の周辺装置へのアクセスを提供す
る目的で1MB12および外部バスの間のインタフェー
スを提供しかつまたクロック信号の発生および分配のよ
うなある種のシステム機能を与える。
タプロセッサを示す、マイクロコンピュータ10は、中
央処理ユニット(CPU)11、モジュール(inte
r−Ilodule)間バス(IMB)12、シリアル
通信インタフェース13、オンボードメモリ14、タイ
マモジュール15、およびシステム集積モジュール(S
IM)16を具備する。複数のデータ、アドレスおよび
制御信号線を具備する、モジュール間バス12は、マイ
クロコンピュータ10の池の構成要素の各々に結合され
かつそれらの間の通信を提供する。シリアルインタフェ
ース13はマイクロコンピュータ10と外部袋=および
システムとの間の同期および/または非同期シリアルデ
ータ転送を幾つかのシリアルI10ピンによって提供す
る。メモリ14はマイクロコンピュータ10にとって有
用なソフトウェア命令および他のデータのための格納ス
ペースを提供する。タイマモジュール15は、入力捕獲
、出力比較等のような種々のタイミング機能を幾つかの
タイマピンにより提供しかつインタフェース17により
メモリ14に結合されている。SIM16はCPUII
に外部メモリおよび他の周辺装置へのアクセスを提供す
る目的で1MB12および外部バスの間のインタフェー
スを提供しかつまたクロック信号の発生および分配のよ
うなある種のシステム機能を与える。
第2図は、単純化された形式で、第1図のCPU1lの
内部構造を示す、基本的には、CPU11はマイクロマ
シン20、実行ユニット21、レジスタのセット(組)
21およびバスインタフェース23を具備する。マイク
ロマシン20はインタフェース23および実行ユニット
21に対し双方向的に結合されている。レジスタ22お
よび実行ユニット21はここでは図示されていない内部
バス等の手段により互いに結合されている。実行ユニッ
ト21はまた双方向的にインタフェース23に結合され
ている。インタフェース23は1MB12を構成するア
ドレス、データおよび制御信号に結合されている。
内部構造を示す、基本的には、CPU11はマイクロマ
シン20、実行ユニット21、レジスタのセット(組)
21およびバスインタフェース23を具備する。マイク
ロマシン20はインタフェース23および実行ユニット
21に対し双方向的に結合されている。レジスタ22お
よび実行ユニット21はここでは図示されていない内部
バス等の手段により互いに結合されている。実行ユニッ
ト21はまた双方向的にインタフェース23に結合され
ている。インタフェース23は1MB12を構成するア
ドレス、データおよび制御信号に結合されている。
マイクロマシン20は命令が実行されるべきシーケンス
を決定し、命令がメモリ(メモリモジュル14または外
部メモリ)からフェッチされた後インタフェース23か
らそれらの命令を受信し、命令フェッチおよびオペラン
ド読み取りまたは書き込みサイクルを行なうためにイン
タフェース23に命令しかつ命令を実行ユニット21の
制御に使用するため複数の制御信号にデコードする任務
を有する。マイクロマシン20の命令シーケンス機能の
一部として、それは1MB12からインクフェース23
を介して受けた割り込み要求を認めるか否かを決定する
機能を含め、例外処理を行なう、実行ユニット22はマ
イクロマシン2oにより受信される命令にエンコードさ
れている論理、演算および他の機能の実際の実行の任務
を有している。レジスタ22は実行ユニット21への種
々の入力および°実行ユニット21の動作結果を格納す
る。IMBインタフェース23は1MB12へのマスタ
オンリ(naster−only)インタフェースであ
る。即ち、それは1MB12の読み取りおよび書き込み
サイクルを開始でき、がっそれは他のマスクに対しその
ようなサイクルを開始することを許容できるが、それは
他のバスマスタによりrm始される1MB12の読み取
りまたは書き込みサイクルに応答することができない。
を決定し、命令がメモリ(メモリモジュル14または外
部メモリ)からフェッチされた後インタフェース23か
らそれらの命令を受信し、命令フェッチおよびオペラン
ド読み取りまたは書き込みサイクルを行なうためにイン
タフェース23に命令しかつ命令を実行ユニット21の
制御に使用するため複数の制御信号にデコードする任務
を有する。マイクロマシン20の命令シーケンス機能の
一部として、それは1MB12からインクフェース23
を介して受けた割り込み要求を認めるか否かを決定する
機能を含め、例外処理を行なう、実行ユニット22はマ
イクロマシン2oにより受信される命令にエンコードさ
れている論理、演算および他の機能の実際の実行の任務
を有している。レジスタ22は実行ユニット21への種
々の入力および°実行ユニット21の動作結果を格納す
る。IMBインタフェース23は1MB12へのマスタ
オンリ(naster−only)インタフェースであ
る。即ち、それは1MB12の読み取りおよび書き込み
サイクルを開始でき、がっそれは他のマスクに対しその
ようなサイクルを開始することを許容できるが、それは
他のバスマスタによりrm始される1MB12の読み取
りまたは書き込みサイクルに応答することができない。
次に第3図を参照すると、第2図のレジスタ22が非常
に詳細に示されている。レジスタ22は、Do−D7で
示されている8個の32ビツトのデータレジスタ、AO
−A6で示されている7個の32ビツトアドレスレジス
タ、それぞれ(ユーザスタックポインタについて)US
Pで示されかつ(スーパーバイザ用スタックポインタに
対し)SSPで示される2個のスタックポインタ、PC
で示される単一の32ビットプログラムカウンタ、SR
で示される1個の16ビツトステータスレジスタ、それ
ぞれ(ソース機能コードに対し)SFCで示されかつ(
デスティネーション機能コードに対し)DFCで示され
る2個の3ビツトの機能コードレジスタ、そしてVBR
で示される1個の32ビツトベクトルベースレジスタを
備えている。
に詳細に示されている。レジスタ22は、Do−D7で
示されている8個の32ビツトのデータレジスタ、AO
−A6で示されている7個の32ビツトアドレスレジス
タ、それぞれ(ユーザスタックポインタについて)US
Pで示されかつ(スーパーバイザ用スタックポインタに
対し)SSPで示される2個のスタックポインタ、PC
で示される単一の32ビットプログラムカウンタ、SR
で示される1個の16ビツトステータスレジスタ、それ
ぞれ(ソース機能コードに対し)SFCで示されかつ(
デスティネーション機能コードに対し)DFCで示され
る2個の3ビツトの機能コードレジスタ、そしてVBR
で示される1個の32ビツトベクトルベースレジスタを
備えている。
2個のスタックポインタはそれぞれA7およびA7′の
表示によって交互に参照される。
表示によって交互に参照される。
また、レジスタ22はCPUIIのプログラマーズモデ
ルと称されるものを備えている。ここに図示されたプロ
グラマーズモデルはアメリカ合衆国テキサス用、オース
ティンのモトローラ社から入手可能なマイクロプロセ・
ノサの68000フアミリのマイクロプロセッサのいず
れのユーザにもよく知られたものであろう。
ルと称されるものを備えている。ここに図示されたプロ
グラマーズモデルはアメリカ合衆国テキサス用、オース
ティンのモトローラ社から入手可能なマイクロプロセ・
ノサの68000フアミリのマイクロプロセッサのいず
れのユーザにもよく知られたものであろう。
第3図に示されるレジスタに加え、CPU11はそれぞ
れtemplおよびtemp2と称される2個の一部レ
ジスタ(telporary registers)を
含む、これらのレジスタはプログラマーズモデルの一部
ではないが、その理由はこれらは(本発明に関係しない
デバッグモードにおいてのみ利用できるある種の命令を
除き)CPUI iによって実行され得る命令のいずれ
によってもユーザ°にアクセスされ得ないからである。
れtemplおよびtemp2と称される2個の一部レ
ジスタ(telporary registers)を
含む、これらのレジスタはプログラマーズモデルの一部
ではないが、その理由はこれらは(本発明に関係しない
デバッグモードにおいてのみ利用できるある種の命令を
除き)CPUI iによって実行され得る命令のいずれ
によってもユーザ°にアクセスされ得ないからである。
CPUIIによって実行される種々の命令は中間結果の
格納のためにtemplおよびtemp2を用いるが、
これについては以下により詳細に説明する。
格納のためにtemplおよびtemp2を用いるが、
これについては以下により詳細に説明する。
事実上いずれのデータプロセッサについてもそうである
ように、CPUIIは固定されたセットの命令を実行で
きる。各命令のオブジェクトコード表現、すなわちメモ
リから実際にフェッチされかつCPUIIにより実行さ
れるもの、はビットのつながりである。CPUI 1に
より実行可能な各命令は所定数のビットを有する。多く
の例においては、命令は、イミディエットデータのよう
な延長ワードを含まずに、32ビツトを有する。第4A
図はCPU11により実行可能な命令の1つのオブジェ
クトコードフォーマットを示す、この命令のフォーマッ
トは2個の16ビツトのワードとして示されているが、
これはIMB12が一度には最高16ビツトを転送する
からである。命令30の最初のワードは5個のビットフ
ィールドを有する。ビット12−15からなるビットフ
ィールドはオール1である。ビット9−11からなるビ
ットフィールドはマルチプロセッサシステムにおけるど
のプロセッサがこの命令を実行すべきかを示す。もしC
PUIIが命令を実行すべきであれば、このビットフィ
ールドはビット100を含むであろう、ビット6−8か
らなるビットフィールドはオール0である。ビット3−
5からなるビットフィールドはこの命令を実行する場合
に用いられるべき実効アドレスモードを示す。ビット〇
−2からなるビットフィールドは7個のアドレスレジス
タの内どれがこの命令に対する実効アドレスを計算する
ために使用されるべきかを示す。
ように、CPUIIは固定されたセットの命令を実行で
きる。各命令のオブジェクトコード表現、すなわちメモ
リから実際にフェッチされかつCPUIIにより実行さ
れるもの、はビットのつながりである。CPUI 1に
より実行可能な各命令は所定数のビットを有する。多く
の例においては、命令は、イミディエットデータのよう
な延長ワードを含まずに、32ビツトを有する。第4A
図はCPU11により実行可能な命令の1つのオブジェ
クトコードフォーマットを示す、この命令のフォーマッ
トは2個の16ビツトのワードとして示されているが、
これはIMB12が一度には最高16ビツトを転送する
からである。命令30の最初のワードは5個のビットフ
ィールドを有する。ビット12−15からなるビットフ
ィールドはオール1である。ビット9−11からなるビ
ットフィールドはマルチプロセッサシステムにおけるど
のプロセッサがこの命令を実行すべきかを示す。もしC
PUIIが命令を実行すべきであれば、このビットフィ
ールドはビット100を含むであろう、ビット6−8か
らなるビットフィールドはオール0である。ビット3−
5からなるビットフィールドはこの命令を実行する場合
に用いられるべき実効アドレスモードを示す。ビット〇
−2からなるビットフィールドは7個のアドレスレジス
タの内どれがこの命令に対する実効アドレスを計算する
ために使用されるべきかを示す。
この命令31の第2ワードは7個のビットフィールドを
有する。ビット15はOである。ビット12−14から
なるビットフィールドは8個のデータレジスタ、Dxと
称される、のいずれが命令を実行する上で用いられるべ
きかを示す、以下に詳細に説明するように、このデータ
レジスタはオペランドのソースでありかつこの命令の結
果のデスティネーションでもある。ビット11は0であ
る。ビット10は丸めフラグでありかつ補間操作の結果
が丸められている(rounded)かあるいはそうで
ないかを判定するために使用される。ビット8−9から
なるビットフィールドはピッ1へパターン01を含む、
ピッl−6−7からなるビットフィールドは命令がバイ
ト(8ビツト)、ワード(16ビツト)あるいはロング
ワード(32ビツト)のいずれのオペランドを用いて実
行されるべきかを示す、このビットフィールドはテーブ
ルにおける個々のエントリーおよび補間操作の結果の双
方のサイズを特定する。I&後に、ビット0−5からな
るビットフィールドはオール0である。
有する。ビット15はOである。ビット12−14から
なるビットフィールドは8個のデータレジスタ、Dxと
称される、のいずれが命令を実行する上で用いられるべ
きかを示す、以下に詳細に説明するように、このデータ
レジスタはオペランドのソースでありかつこの命令の結
果のデスティネーションでもある。ビット11は0であ
る。ビット10は丸めフラグでありかつ補間操作の結果
が丸められている(rounded)かあるいはそうで
ないかを判定するために使用される。ビット8−9から
なるビットフィールドはピッ1へパターン01を含む、
ピッl−6−7からなるビットフィールドは命令がバイ
ト(8ビツト)、ワード(16ビツト)あるいはロング
ワード(32ビツト)のいずれのオペランドを用いて実
行されるべきかを示す、このビットフィールドはテーブ
ルにおける個々のエントリーおよび補間操作の結果の双
方のサイズを特定する。I&後に、ビット0−5からな
るビットフィールドはオール0である。
CPUIIが第4B図に示されるフォーマットの命令に
遭遇した時、それはテーブルルックアップおよび補間操
作を行なう、この命令の実行の詳細は第5A図を参照し
て説明する。第4A図は命令のオブジェクトコード表現
を示す。アセンブリ言語においては、この命令の表現は
次に示す2つの基本的なバリアントを有している。
遭遇した時、それはテーブルルックアップおよび補間操
作を行なう、この命令の実行の詳細は第5A図を参照し
て説明する。第4A図は命令のオブジェクトコード表現
を示す。アセンブリ言語においては、この命令の表現は
次に示す2つの基本的なバリアントを有している。
TABLE、<5ize> 〈ea>、Ox、およ
びTABLE旧(、(SiZe> (ea>、
OX。
びTABLE旧(、(SiZe> (ea>、
OX。
前者は命令の丸めバリアントに関し、ヰして後者は非丸
めバリアントに関する。いずれの場合にも、<5ize
>アーギュメントは(バイト、ワードまたはロングワー
ドに対し)B、Wまたはしてあり、<ea>アーギュメ
ントはアドレスモードおよびアドレスレジスタの双方を
表わし、かつDxアーギュメントはデータレジスタを示
す。よく知られているように、アセンブラとして知られ
ているソフトウェアは命令のアセンブリ言語表現をプロ
セッサにより実行可能なオブジェクトコド表現に変換す
る。
めバリアントに関する。いずれの場合にも、<5ize
>アーギュメントは(バイト、ワードまたはロングワー
ドに対し)B、Wまたはしてあり、<ea>アーギュメ
ントはアドレスモードおよびアドレスレジスタの双方を
表わし、かつDxアーギュメントはデータレジスタを示
す。よく知られているように、アセンブラとして知られ
ているソフトウェアは命令のアセンブリ言語表現をプロ
セッサにより実行可能なオブジェクトコド表現に変換す
る。
第4B図は、cpuitにより実行可能な他の命令のオ
ブジェクトコードフォーマットを示す。
ブジェクトコードフォーマットを示す。
この命令は第4A図に示された命令と非常によく似てお
り、従って相違点のみ説明する。命令32の第1ワード
は、第4A図の命令の第1ワードより1個少ないビット
フィールドを有している。実効アドレスフィールド、即
ちビット3−5、はオル0である。ビットO−2を有す
るフィールドは、アドレスレジスタを指示するために使
用される代わりに、Dymと称されるデータレジスタを
指示するために使用される。以下に詳細に説明するよう
に、このデータレジスタはこの命令のオペランドのソー
スである。第2ワード33は第4A図の命令の第2ワー
ドとビット8および最下位3ビツトにおいてのみ異なる
。第2ワード33のビット8は、1ではなく、0である
。また、最下位3ビツトを有するビットフィールドはD
ynと称されるデータレジスタを指示するが、これもま
なこの命令のためのオペランドのソースである。アセン
ブリ言語においては、第4B図の命令の表現は次のよう
な2つの基本的なバリアントを有している。
り、従って相違点のみ説明する。命令32の第1ワード
は、第4A図の命令の第1ワードより1個少ないビット
フィールドを有している。実効アドレスフィールド、即
ちビット3−5、はオル0である。ビットO−2を有す
るフィールドは、アドレスレジスタを指示するために使
用される代わりに、Dymと称されるデータレジスタを
指示するために使用される。以下に詳細に説明するよう
に、このデータレジスタはこの命令のオペランドのソー
スである。第2ワード33は第4A図の命令の第2ワー
ドとビット8および最下位3ビツトにおいてのみ異なる
。第2ワード33のビット8は、1ではなく、0である
。また、最下位3ビツトを有するビットフィールドはD
ynと称されるデータレジスタを指示するが、これもま
なこの命令のためのオペランドのソースである。アセン
ブリ言語においては、第4B図の命令の表現は次のよう
な2つの基本的なバリアントを有している。
TABLE、<5ize> [)yn:(lyn、
Dχ、およびTABLENR,<5ize) D
yI:Dyn、Ox第5図は、第4A図の命令を実行す
る場合にCPollによって行なわれるステップを示す
、要約すると、この命令は予めメモリに格納されている
と仮定される符号付きバイト、ワードまたはロングワー
ドの値のテーブルから2つの隣接する値を調べる(ルッ
クアップする。)このテーブルはメモリ14あるいは外
部メモリのいずれにあってもよい。このテーブルは特定
された実効アドレスモードを用いて特定されるアドレス
レジスタから計算されたアドレスにより特定される位置
においてスタートするものと仮定する。ルックアップさ
れる最初の値のアドレスは特定されたデータレジスタに
おけるオペランドのビット8−15をテーブルのスター
トアドレスからのオフセットとして用いることにより引
き出される。第2の値のアドレスは第1の値のアドレス
を単に増分することにより引き出されるが、この増分は
命令のサイズフィールドに関連する。メモリから2つの
テーブル値がいったん引き出されると、補間された結果
の計算において、特定されたデータレジスタにおけるオ
ペランドの下位バイト(ビット0−7)を用いてリニア
な補間が行なわれる。補間計算の間、中間結果は命令の
Rビットにより決定されるように、丸められあるいは丸
められない、補間操作の結果は命令において特定された
データレジスタに置かれる。
Dχ、およびTABLENR,<5ize) D
yI:Dyn、Ox第5図は、第4A図の命令を実行す
る場合にCPollによって行なわれるステップを示す
、要約すると、この命令は予めメモリに格納されている
と仮定される符号付きバイト、ワードまたはロングワー
ドの値のテーブルから2つの隣接する値を調べる(ルッ
クアップする。)このテーブルはメモリ14あるいは外
部メモリのいずれにあってもよい。このテーブルは特定
された実効アドレスモードを用いて特定されるアドレス
レジスタから計算されたアドレスにより特定される位置
においてスタートするものと仮定する。ルックアップさ
れる最初の値のアドレスは特定されたデータレジスタに
おけるオペランドのビット8−15をテーブルのスター
トアドレスからのオフセットとして用いることにより引
き出される。第2の値のアドレスは第1の値のアドレス
を単に増分することにより引き出されるが、この増分は
命令のサイズフィールドに関連する。メモリから2つの
テーブル値がいったん引き出されると、補間された結果
の計算において、特定されたデータレジスタにおけるオ
ペランドの下位バイト(ビット0−7)を用いてリニア
な補間が行なわれる。補間計算の間、中間結果は命令の
Rビットにより決定されるように、丸められあるいは丸
められない、補間操作の結果は命令において特定された
データレジスタに置かれる。
第4A図の命令の実行は実効アドレスを計算することに
より開始される。これはデータ処理技術においてはよく
知られた操作である。好ましい実施例において利用でき
る実効アドレスモードは、アドレスレジスタ・インダイ
レクト、ディスプレイスメントを有するアドレスレジス
タ・インダイレクト、インデックスを有するアドレスレ
ジスタ・インダイレクト、絶対ショート、絶対ロング、
ディスプレイスメントを有するPClそしてインデック
スを有するPCである。実効アドレスがテプルかスター
トすると仮定されるメモリ内の位置を指示する1次に、
テーブルへのオフセットが<5ize>によりDxの内
容のビット8−15を尺度変更(スケール)することに
より計算される。言い変えれば、Dxのビット8−15
がそこから最初の値が引き出されるべきテーブルエント
リーの番号を含むものと仮定される。メモリアドレスに
関する実際のオフセットはこの番号から各テーブルエン
トリーがいかに多くのメモリロケーションを占有するか
を示す、<s i ze>パラメタによってそれを乗算
することにより計算されなければならない。
より開始される。これはデータ処理技術においてはよく
知られた操作である。好ましい実施例において利用でき
る実効アドレスモードは、アドレスレジスタ・インダイ
レクト、ディスプレイスメントを有するアドレスレジス
タ・インダイレクト、インデックスを有するアドレスレ
ジスタ・インダイレクト、絶対ショート、絶対ロング、
ディスプレイスメントを有するPClそしてインデック
スを有するPCである。実効アドレスがテプルかスター
トすると仮定されるメモリ内の位置を指示する1次に、
テーブルへのオフセットが<5ize>によりDxの内
容のビット8−15を尺度変更(スケール)することに
より計算される。言い変えれば、Dxのビット8−15
がそこから最初の値が引き出されるべきテーブルエント
リーの番号を含むものと仮定される。メモリアドレスに
関する実際のオフセットはこの番号から各テーブルエン
トリーがいかに多くのメモリロケーションを占有するか
を示す、<s i ze>パラメタによってそれを乗算
することにより計算されなければならない。
次に、引き出されるべき最初のテーブルエントリーのメ
モリアドレスがオフセットを実効アドレスに加算するこ
とにより計算される0次に、(第2図の23の)バスイ
ンタフェースが丁度計算されたアドレスを用いて適切な
サイズのオペランド読み収りサイクルを実行するよう命
令される。このバスサイクルの結果は、それが完了する
と、先に述べた中間結果レジスタであるtemplに記
・隠される。次に、引き出されるべき第2のテーブルエ
ントリーのアドレスか<s i ze>パラメータを第
1のテーブルエントリーのアドレスに加算することによ
り計算される。バスインタフェースが再びこの新しいア
ドレスを用いてオペランド読み取りサイクルを実行する
よう命令されかつこのサイクルの結果はtemp2に記
憶される。
モリアドレスがオフセットを実効アドレスに加算するこ
とにより計算される0次に、(第2図の23の)バスイ
ンタフェースが丁度計算されたアドレスを用いて適切な
サイズのオペランド読み収りサイクルを実行するよう命
令される。このバスサイクルの結果は、それが完了する
と、先に述べた中間結果レジスタであるtemplに記
・隠される。次に、引き出されるべき第2のテーブルエ
ントリーのアドレスか<s i ze>パラメータを第
1のテーブルエントリーのアドレスに加算することによ
り計算される。バスインタフェースが再びこの新しいア
ドレスを用いてオペランド読み取りサイクルを実行する
よう命令されかつこのサイクルの結果はtemp2に記
憶される。
次の3つのステップは実際の補間操作を行なう。
最初に、temptの値がtemp2の値から減算され
、その結果がtemp2に置かれる。次に、temp2
の値がDxの下位バイトを256で除算することにより
計算される補間分数 (interpolation fraction)に
より乗算される。DXの下位バイトは8個の2進デイジ
ツトを有するから、それは0から255の範囲における
10進数を表わすことができ、従って補間分数の計算は
先に述べた通りである。この操作の結果はtemP2に
置かれかつ調整された差分として参照される0次に、こ
の中間結果がRビットの状態に応じて、丸められあるい
は丸められない、もしRビットがOであれば、次のよう
にして丸めが行なわれる。もし調整された差分の分数部
分が<10進表示における)−1/2以下であれば、調
整された差分かち1が減算されかつ整数部分が丸められ
、調整された差分として取られる。もし調整された差分
の分数部分が一1/2より大きくかつ+1/2より小さ
ければ、整数部分が丸められ、調整された差分として取
られる。もし調整された差分の分数部分が+1/2以上
であれば、調整された差分に1が加算されかつ整数部分
が丸められ、調整された差分として収られるl後に、t
emplの値かtemp2の値に加算されその結果がD
xに記憶される。これは標準的なリニア補間操作と肥ら
れるであろう、勿論、適切な場合には任意の池の補間操
作に置き変えることは容易であろう。
、その結果がtemp2に置かれる。次に、temp2
の値がDxの下位バイトを256で除算することにより
計算される補間分数 (interpolation fraction)に
より乗算される。DXの下位バイトは8個の2進デイジ
ツトを有するから、それは0から255の範囲における
10進数を表わすことができ、従って補間分数の計算は
先に述べた通りである。この操作の結果はtemP2に
置かれかつ調整された差分として参照される0次に、こ
の中間結果がRビットの状態に応じて、丸められあるい
は丸められない、もしRビットがOであれば、次のよう
にして丸めが行なわれる。もし調整された差分の分数部
分が<10進表示における)−1/2以下であれば、調
整された差分かち1が減算されかつ整数部分が丸められ
、調整された差分として取られる。もし調整された差分
の分数部分が一1/2より大きくかつ+1/2より小さ
ければ、整数部分が丸められ、調整された差分として取
られる。もし調整された差分の分数部分が+1/2以上
であれば、調整された差分に1が加算されかつ整数部分
が丸められ、調整された差分として収られるl後に、t
emplの値かtemp2の値に加算されその結果がD
xに記憶される。これは標準的なリニア補間操作と肥ら
れるであろう、勿論、適切な場合には任意の池の補間操
作に置き変えることは容易であろう。
丸められたく整数)結果に対しては、結果はオペランド
と同じサイズであり、即ち<s i ze>パラメータ
により特定されたものと同じであり、かつDxに右揃え
(ri(lht justified)様式で記憶され
る。Dxの上位ビットは、バイトまたはワードのサイズ
であると仮定すると、影響を受けない。
と同じサイズであり、即ち<s i ze>パラメータ
により特定されたものと同じであり、かつDxに右揃え
(ri(lht justified)様式で記憶され
る。Dxの上位ビットは、バイトまたはワードのサイズ
であると仮定すると、影響を受けない。
丸められていない結果に対しては、Dxの下位バイトは
<s i ze>パラメータの如何に1系わらず、結果
の分数部分を含む、Dxの残余の部分は結果を含み、バ
イトおよびワードの結果はDxを満たすために符号延長
(sign−extended)されている。
<s i ze>パラメータの如何に1系わらず、結果
の分数部分を含む、Dxの残余の部分は結果を含み、バ
イトおよびワードの結果はDxを満たすために符号延長
(sign−extended)されている。
第6図を参照すると、第4B図の命令を実行する場合に
おけるCPtJllにより行なわれるステップが示され
ている。要約すると、この命令は補間されるべき値をメ
モリにおけるテーブルからよりはむしろ命令内で特定さ
れたレジスタから得る。
おけるCPtJllにより行なわれるステップが示され
ている。要約すると、この命令は補間されるべき値をメ
モリにおけるテーブルからよりはむしろ命令内で特定さ
れたレジスタから得る。
この命令は3次元、あるいはサーフェスルックアップお
よび補間操作を行なう場合に有用である。
よび補間操作を行なう場合に有用である。
言い変えれば、第4A図の命令の2つの先の実行は補間
された結果をデータレジスタに記憶させるであろう。次
に第4B図の命令の例はこれらの2つの結果の間の補間
をするために用いることかできる。命令のDymフィー
ルドにより特定されるレジスタは第1の値のソースであ
り、かつDynフィールドにより特定されるレジスタは
第2の値のソースである。それ以外はこの命令の実行は
第4A図のものと同じである。
された結果をデータレジスタに記憶させるであろう。次
に第4B図の命令の例はこれらの2つの結果の間の補間
をするために用いることかできる。命令のDymフィー
ルドにより特定されるレジスタは第1の値のソースであ
り、かつDynフィールドにより特定されるレジスタは
第2の値のソースである。それ以外はこの命令の実行は
第4A図のものと同じである。
Dxを変えることに加え、上に述べた命令の双方ともス
テータスレジスタの条件コードビット(X、N、Z、V
およびC)の幾つかを変えることかできる。両方共同様
にしてそのようにする。
テータスレジスタの条件コードビット(X、N、Z、V
およびC)の幾つかを変えることかできる。両方共同様
にしてそのようにする。
X (extend)はけっして影響されない、 C(
carry)は常にクリアされる。N (negati
ve)は結果の最上位ビットがセットされればセットさ
れかつそれ以外はクリアされる。 z(zero)は結
果がOであればセットされかつそれ以外はクリアされる
。■fOVf3rflov)は丸められていないロング
ワードの結果の整数部分が−223から223の範囲に
なければセットされかつそれ以外はクリアされる。
carry)は常にクリアされる。N (negati
ve)は結果の最上位ビットがセットされればセットさ
れかつそれ以外はクリアされる。 z(zero)は結
果がOであればセットされかつそれ以外はクリアされる
。■fOVf3rflov)は丸められていないロング
ワードの結果の整数部分が−223から223の範囲に
なければセットされかつそれ以外はクリアされる。
上述のような様式でのDxの内容の利用は命令の幾らか
の制限を含む、Dxのフィールドの双方は1バイトの長
さであるから、双方共255の最大10進値を有してい
る。従って、いずれのテブルも、最大で、257のエン
トリーを持つことができかつ補間操作の最大の分解能は
2つの連続するテーブルエントリーの間の「1離の1/
256である。このことは開示された実施例のこれらの
特徴を適切な環境において変更できることを示唆する0
例えば、もしデータ処理システムの設計者が比較的少な
いデータポイントを有するテーブルを含む主要な応用を
予見しておりかつその場合高度の補間の分解能が有用で
あれば、オペランドのより多くのビットを補間分数を計
算するなめに使用しかつより少ないビットをテーブルオ
フセットを計算するために使用することが適当であろう
。
の制限を含む、Dxのフィールドの双方は1バイトの長
さであるから、双方共255の最大10進値を有してい
る。従って、いずれのテブルも、最大で、257のエン
トリーを持つことができかつ補間操作の最大の分解能は
2つの連続するテーブルエントリーの間の「1離の1/
256である。このことは開示された実施例のこれらの
特徴を適切な環境において変更できることを示唆する0
例えば、もしデータ処理システムの設計者が比較的少な
いデータポイントを有するテーブルを含む主要な応用を
予見しておりかつその場合高度の補間の分解能が有用で
あれば、オペランドのより多くのビットを補間分数を計
算するなめに使用しかつより少ないビットをテーブルオ
フセットを計算するために使用することが適当であろう
。
明らかに、もし多くのエントリイを有するテーブルを含
む主要な応用が予見されかつより低い補間の分解能が許
容できる場合には逆が正しいこととなる。また、柔軟性
を最大にするために各々の目的に対していかに多くのビ
ットが使用されるべきかを特定する可変ビットフィール
ドを命令中に含ませることもできる。上述の実施例にお
ける、他の明らかな変更はDxレジスタの下位16ビツ
トのみを用いることである。勿論、Dxのビットのこの
数より多くあるいは少しを適切に用いることも可能であ
る。さらに、他の実施例においては、Dxそれ自体のサ
イズ°を32ビツト以外にすることかできる。さらに他
の可能な変更はテーブルそれ自体に格納されたデータに
より特定されるべき(オフセットを計算しかつ補間計算
を行なう)2つの低能のなめに使用されるDxのビット
数を許容することである。これはテーブルエントリーの
数および補間の分解能を命令それ自体にビットフィール
ドを付加することなくテーブルからテーブルへと変え得
ることを許容するであろう。
む主要な応用が予見されかつより低い補間の分解能が許
容できる場合には逆が正しいこととなる。また、柔軟性
を最大にするために各々の目的に対していかに多くのビ
ットが使用されるべきかを特定する可変ビットフィール
ドを命令中に含ませることもできる。上述の実施例にお
ける、他の明らかな変更はDxレジスタの下位16ビツ
トのみを用いることである。勿論、Dxのビットのこの
数より多くあるいは少しを適切に用いることも可能であ
る。さらに、他の実施例においては、Dxそれ自体のサ
イズ°を32ビツト以外にすることかできる。さらに他
の可能な変更はテーブルそれ自体に格納されたデータに
より特定されるべき(オフセットを計算しかつ補間計算
を行なう)2つの低能のなめに使用されるDxのビット
数を許容することである。これはテーブルエントリーの
数および補間の分解能を命令それ自体にビットフィール
ドを付加することなくテーブルからテーブルへと変え得
ることを許容するであろう。
明瞭化のため、上の説明は2つの別の命令の存在に言及
している。そこにおいては2つの命令をメモリからある
いはレジスタから補間値を得る選択を有する単一の命令
として言及すること力「まさに正確であろう、一方、多
数の関連する命令の存在を述べることもまた正確である
が、それはアドレシングのモード、丸めフラグの設定お
よび池の変数の順列が多くの別のオブジェクトコードの
ピントパターンを生成するからである。
している。そこにおいては2つの命令をメモリからある
いはレジスタから補間値を得る選択を有する単一の命令
として言及すること力「まさに正確であろう、一方、多
数の関連する命令の存在を述べることもまた正確である
が、それはアドレシングのモード、丸めフラグの設定お
よび池の変数の順列が多くの別のオブジェクトコードの
ピントパターンを生成するからである。
説明された実施例に対するこれらおよび池の変更は当業
者には明らかでありかつ本発明の精神および範囲内にあ
るものである。
者には明らかでありかつ本発明の精神および範囲内にあ
るものである。
第1図は、本発明の好ましい実施例に係わる集積回路デ
ータプロセッサを示すブロック図、第2図は、第1図の
装置の中央処理ユニットを示すブロック図、 第3図は、第1図の装置の中央処理ユニットのレジスタ
セット、またはプログラマーズモデルを示す説明図、 第4A図および第4B図はそれぞれ、第1図および第2
図の装置により実行可能なテーブルルックアップおよび
補間命令の第1および第2のバリアントの命令フォーマ
ットを示す説明図、第5図は、第4A図の命令を実行す
る場合における第1図および第2図の装置により実行さ
れるステップを示すフローチャート、そして第6図は、
第4B図の命令を実行する場合における第1図および第
2図の装置により実行されるステップを示すフロ チャー1・である。 10:マイクロコンピュータ、 11:中央処理ユニット、 12:モジュール間バス(IMB)、 13ニジリアル通信インタフェース、 14:オンボードメモリ、 15:タイマモジュール、 16:システム統合モジュール(SIM)17:インタ
フェース、 20:マイクロマシン、 21:実行ユニット、 22:レジスタ、 23:バスインタフェース。
ータプロセッサを示すブロック図、第2図は、第1図の
装置の中央処理ユニットを示すブロック図、 第3図は、第1図の装置の中央処理ユニットのレジスタ
セット、またはプログラマーズモデルを示す説明図、 第4A図および第4B図はそれぞれ、第1図および第2
図の装置により実行可能なテーブルルックアップおよび
補間命令の第1および第2のバリアントの命令フォーマ
ットを示す説明図、第5図は、第4A図の命令を実行す
る場合における第1図および第2図の装置により実行さ
れるステップを示すフローチャート、そして第6図は、
第4B図の命令を実行する場合における第1図および第
2図の装置により実行されるステップを示すフロ チャー1・である。 10:マイクロコンピュータ、 11:中央処理ユニット、 12:モジュール間バス(IMB)、 13ニジリアル通信インタフェース、 14:オンボードメモリ、 15:タイマモジュール、 16:システム統合モジュール(SIM)17:インタ
フェース、 20:マイクロマシン、 21:実行ユニット、 22:レジスタ、 23:バスインタフェース。
Claims (1)
- 【特許請求の範囲】 1、複数の命令の各々を実行するための命令実行手段、 該命令実行手段に結合されデータプロセッサにメモリに
記憶された情報を提供するためのメモリインタフェース
手段、そして 前記命令実行手段に結合され情報を格納しかつ提供する
ためのレジスタ手段、 を具備し、前記命令実行手段はさらに、 第1のユニットの情報を提供するために前記メモリイン
タフェース手段を作動させ、第2のユニットの情報を提
供するために前記メモリインタフェースを作動させ、前
記第1および第2のユニットの情報に対し補間操作を行
ない、かつ出力を提供することにより前記複数の命令の
内の第1の特定の1つの実行に応答するための手段、 を具備することを特徴とするデータプロセッサ。 2、前記命令実行手段はさらに、 前記レジスタ手段を作動して第1のユニットの情報を提
供し、前記レジスタ手段を作動して第2のユニットの情
報を提供し、前記第1および第2のユニットの情報に対
し補間操作を行ない、かつ出力を提供することにより前
記複数の命令の内の第2の特定の1つの実行に応答する
ための手段、を具備する請求項1に記載のデータプロセ
ッサ。 3、前記実行手段はさらに、 前記補間操作の間選択的に丸め操作を行なうことにより
前記複数の命令の内の前記第1の特定の1つの実行に応
答するための丸め手段であって、前記選択的丸めは前記
複数の命令の前記第1の特定の1つの丸め部分により制
御されるもの、を具備する請求項1に記載のデータプロ
セッサ。 4、前記実行手段はさらに、 前記補間操作の間選択的に丸め操作を行なうことにより
前記複数の命令の内の前記第1および第2の特定のもの
の実行に応答するための丸め手段であって、前記選択的
丸めは前記複数の命令の内の前記第1および第2の特定
のものの丸め部分により制御されるもの、 を具備する請求項2に記載のデータプロセッサ。 5、さらに、 前記メモリインタフェース手段に結合され、前記レジス
タ手段を作動させて第3のユニットの情報を提供し、該
第3のユニットの情報の尺度変更された第1の部分を前
記アドレスに加算することにより前記第1のユニットの
情報のアドレスを計算することにより、前記複数の命令
の前記第1の特定のものの実効アドレス部分に応答して
アドレスを計算するためのアドレス計算手段、 を具備する請求項1に記載のデータプロセッサ。 6、前記命令実行手段はさらに、 前記第1および第2のユニットの情報の間の差を計算す
るための手段、 前記第3のユニットの情報の第2の部分から補間分数を
計算するための手段、 前記第1および第2のユニットの情報の間の差と前記補
間分数との積を計算するための手段、そして 前記第1のユニットの情報および前記第1および第2の
ユニットの情報の間の差と前記補間分数との積の和を計
算するための手段、 を具備する請求項5に記載のデータプロセッサ。 7、複数の命令の各々をデコードしかつ複数の制御信号
を生成するための命令デコード手段、該命令デコード手
段に結合されかつ制御信号に応答して情報を格納しかつ
提供するためのレジスタ手段、 前記命令デコード手段に結合されかつ制御信号に応答し
てデータプロセッサに情報格納手段に格納された情報を
提供するためのインタフェース手段、そして 前記命令デコード手段、レジスタ手段およびインタフェ
ース手段に結合されかつ制御信号に応答して演算および
論理的計算を行なうための計算手段、 を具備するデータプロセッサであつて、 前記インタフェース手段を作動させて前記情報格納手段
における第1のロケーションから第1のユニットの情報
を提供し、前記インタフェース手段を作動させて前記情
報格納手段における第2のロケーションから第2のユニ
ットの情報を提供し、前記計算手段を作動させて前記第
1および第2のユニットの情報に対し補間計算を行ない
、かつ前記レジスタ手段を作動させて前記補間計算の結
果を格納する、制御信号を発生することにより前記複数
の命令の内の第1の特定のもののデコードに応答する命
令実行手段、 を具備することを特徴とするデータプロセッサ。 8、さらに、 前記命令実効手段は、前記レジスタ手段を作動させて第
1のユニットの情報を提供し、前記レジスタ手段を作動
させて第2のユニットの情報を提供し、前記計算手段を
作動させて前記第1および第2のユニットの情報に対し
補間計算を行ないかつ前記レジスタ手段を作動させて前
記補間計算の結果を格納する制御信号を発生することに
より前記複数の命令の内の第2の特定のもののデコード
に応答する、 請求項7に記載のデータプロセッサ。 9、前記実行手段はさらに、 前記補間計算の間選択的に丸め操作を行なうことにより
前記複数の命令の内の前記第1の特定のものの実行に応
答するための丸め手段であつて、前記選択的丸めは前記
複数の命令の内の前記第1の特定のものの一部により制
御されるもの、を具備する請求項7に記載のデータプロ
セッサ。 10、前記実行手段はさらに、 前記補間計算の間選択的に丸め操作を行なうことにより
前記複数の命令の内の前記第1および第2の特定のもの
の実行に応答する丸め手段であって、前記選択的丸めは
前記複数の命令の内の前記第1および第2の特定のもの
の一部により制御されるもの、 を具備する請求項8に記載のデータプロセッサ。 11、さらに、 前記命令実行手段は、レジスタ手段を作動させて第3の
ユニットの情報を提供し、前記計算手段を作動させて前
記複数の命令の内の前記第1の特定のものの実効アドレ
ス部分からアドレスを計算する、制御信号を発生するこ
とにより、かつ前記第3のユニットの情報の尺度変更さ
れた第1の部分を前記アドレスに加算することにより前
記情報格納手段における前記第1のロケーションを計算
することにより、前記複数の命令の内の前記第1の特定
のものの実行にさらに応答する、 請求項7に記載のデータプロセッサ。 12、さらに、 前記命令実行手段は、前記計算手段を作動させて前記第
1および第2のユニットの情報の間の差を計算し、前記
第3のユニットの情報の第2の部分から補間分数を計算
し、前記第1および第2のユニットの情報の間の差と前
記補間分数との積を計算し、かつ前記第1および第2の
ユニットの間の差と前記補間分数との積および前記第1
のユニットの情報の和を計算することにより、前記複数
の命令の内の前記第1の特定のものの実行にさらに応答
する、 請求項11に記載のデータプロセッサ。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US319,003 | 1989-03-06 | ||
| US07/319,003 US5170475A (en) | 1989-03-06 | 1989-03-06 | Data processor having instructions for interpolating between memory-resident data values respectively |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02272677A true JPH02272677A (ja) | 1990-11-07 |
| JP2609552B2 JP2609552B2 (ja) | 1997-05-14 |
Family
ID=23240476
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2054799A Expired - Fee Related JP2609552B2 (ja) | 1989-03-06 | 1990-03-06 | データプロセッサ |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5170475A (ja) |
| EP (1) | EP0387008A3 (ja) |
| JP (1) | JP2609552B2 (ja) |
| KR (1) | KR0143553B1 (ja) |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5764990A (en) * | 1996-03-18 | 1998-06-09 | Hewlett-Packard Company | Compact encoding for storing integer multiplication Sequences |
| US5951625A (en) * | 1997-06-30 | 1999-09-14 | Truevision, Inc. | Interpolated lookup table circuit |
| DE19819445A1 (de) * | 1998-04-30 | 1999-11-04 | Volkswagen Ag | Verfahren zur Bestimmung von Kennfelddaten zur Kennfeldsteuerung eines Verbrennungsmotors sowie Verfahren zur Steuerung eines Verbrennungsmotors |
| EP0953897B1 (en) * | 1998-05-01 | 2003-07-30 | Hewlett-Packard Company, A Delaware Corporation | Processing instruction using hashing |
| US7690111B2 (en) * | 2005-04-14 | 2010-04-06 | Mechanical Dynamics And Analysis, Llc | Method and apparatus for repairing turbine rotor |
| US20170003966A1 (en) * | 2015-06-30 | 2017-01-05 | Microsoft Technology Licensing, Llc | Processor with instruction for interpolating table lookup values |
| US10466967B2 (en) * | 2016-07-29 | 2019-11-05 | Qualcomm Incorporated | System and method for piecewise linear approximation |
| US20240095180A1 (en) * | 2022-06-06 | 2024-03-21 | Advanced Micro Devices, Inc. | Systems and methods for interpolating register-based lookup tables |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6022878A (ja) * | 1983-07-18 | 1985-02-05 | Sony Corp | デイジタル画像信号の補間方法 |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB1036644A (en) * | 1964-05-14 | 1966-07-20 | Ibm | Improvements in or relating to data processing machines |
| US3748447A (en) * | 1971-11-18 | 1973-07-24 | Sperry Rand Corp | Apparatus for performing a linear interpolation algorithm |
| US3725794A (en) * | 1972-02-07 | 1973-04-03 | Gte Sylvania Inc | Interpolating apparatus |
| JPS5434579B2 (ja) * | 1974-06-25 | 1979-10-27 | ||
| US4118776A (en) * | 1975-07-17 | 1978-10-03 | Nippon Electric Company, Ltd. | Numerically controlled machine comprising a microprogrammable computer operable with microprograms for macroinstructions and for inherent functions of the machine |
| US4338675A (en) * | 1980-02-13 | 1982-07-06 | Intel Corporation | Numeric data processor |
| US4313173A (en) * | 1980-06-10 | 1982-01-26 | Bell Telephone Laboratories, Incorporated | Linear interpolator |
| US4402012A (en) * | 1981-11-16 | 1983-08-30 | General Electric Company | Two-dimensional digital linear interpolation system |
| GB2191880B (en) * | 1986-06-13 | 1990-08-15 | Singer Link Miles Ltd | Linear interpolator |
| JPS6453274A (en) * | 1987-08-25 | 1989-03-01 | Hitachi Ltd | Interpolation device having line segment processing part running parallel with coordinate axis |
| US5020014A (en) * | 1989-02-07 | 1991-05-28 | Honeywell Inc. | Generic interpolation pipeline processor |
-
1989
- 1989-03-06 US US07/319,003 patent/US5170475A/en not_active Expired - Lifetime
-
1990
- 1990-03-05 KR KR1019900002804A patent/KR0143553B1/ko not_active Expired - Lifetime
- 1990-03-06 EP EP19900302388 patent/EP0387008A3/en not_active Withdrawn
- 1990-03-06 JP JP2054799A patent/JP2609552B2/ja not_active Expired - Fee Related
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6022878A (ja) * | 1983-07-18 | 1985-02-05 | Sony Corp | デイジタル画像信号の補間方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2609552B2 (ja) | 1997-05-14 |
| KR900015014A (ko) | 1990-10-25 |
| US5170475A (en) | 1992-12-08 |
| EP0387008A3 (en) | 1992-12-30 |
| KR0143553B1 (ko) | 1998-08-17 |
| EP0387008A2 (en) | 1990-09-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0198214B1 (en) | Branch control in a three phase pipelined signal processor | |
| EP0198216B1 (en) | Three phased pipelined signal processor | |
| US4974146A (en) | Array processor | |
| EP0368144B1 (en) | Digital computing system with low power mode | |
| KR100440841B1 (ko) | 마이크로컴퓨터 | |
| US5440747A (en) | Data processor with control logic for storing operation mode status and associated method | |
| CA1119731A (en) | Multibus processor for increasing execution speed using a pipeline effect | |
| US4539635A (en) | Pipelined digital processor arranged for conditional operation | |
| US5381360A (en) | Modulo arithmetic addressing circuit | |
| US5905881A (en) | Delayed state writes for an instruction processor | |
| US5687344A (en) | Single-chip microcomputer having an expandable address area | |
| JPH02272677A (ja) | データプロセッサ | |
| US5613143A (en) | Programmable controller for high-speed arithmetic operations | |
| US4974157A (en) | Data processing system | |
| EP0381059A2 (en) | Arithmetic element controller | |
| US5742842A (en) | Data processing apparatus for executing a vector operation under control of a master processor | |
| JP3432532B2 (ja) | データ処理装置 | |
| JP3556252B2 (ja) | オフセット合計を計算するデータ処理システムとその方法 | |
| KR19980018071A (ko) | 멀티미디어 신호 프로세서의 단일 명령 다중 데이터 처리 | |
| US5596761A (en) | Central processing unit with internal register initializing means | |
| GB2069733A (en) | Conditional instruction execution in a pipelined processor | |
| Jelemensky et al. | The MC68332 microcontroller | |
| JP2922979B2 (ja) | 中央演算処理装置 | |
| JP3539914B2 (ja) | マイクロコンピュータ | |
| EP0445797A2 (en) | Fuzzy logic computer |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 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 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |