JPH1011352A - データ処理装置およびそのレジスタアドレス変換方法 - Google Patents

データ処理装置およびそのレジスタアドレス変換方法

Info

Publication number
JPH1011352A
JPH1011352A JP8158445A JP15844596A JPH1011352A JP H1011352 A JPH1011352 A JP H1011352A JP 8158445 A JP8158445 A JP 8158445A JP 15844596 A JP15844596 A JP 15844596A JP H1011352 A JPH1011352 A JP H1011352A
Authority
JP
Japan
Prior art keywords
register
instruction
logical
physical
bank
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.)
Pending
Application number
JP8158445A
Other languages
English (en)
Inventor
Yasuhiro Nakatsuka
康弘 中塚
Akihiro Katsura
晃洋 桂
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP8158445A priority Critical patent/JPH1011352A/ja
Priority to TW086107971A priority patent/TW331613B/zh
Priority to US08/871,978 priority patent/US6167497A/en
Priority to KR1019970025506A priority patent/KR980004059A/ko
Publication of JPH1011352A publication Critical patent/JPH1011352A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • G06F9/30138Extension of register space, e.g. register cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • G06F9/30185Instruction operation extension or modification according to one or more bits in the instruction, e.g. prefix, sub-opcode

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Advance Control (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】命令コードのレジスタフィールドを変えずに、
命令から参照可能な物理レジスタアドレスのアドレス数
を増やして、データ処理を高速化する。 【解決手段】例えば64本の物理レジスタアドレスレジ
スタ(PRAR)240は16本単位の4バンクに区分
されている。RAT230は、16本の論理レジスタア
ドレスレジスタLRAR220のアドレスを、演算制御
部250からの制御信号5321による状態値に応じ
て、いずれかのバンクに設定する。RAT230は2ビ
ットの状態値を、LRAR220からの4ビットの論理
アドレスの上位に付加し、6ビットの物理アドレスとし
てPRAR240に出力する。状態値は、ロード命令/
それ以外の命令などに応じて切り替わる。これにより、
少ないレジスタ指定フィールドで、物理的に大きなレジ
スタファイルのアクセスが可能になる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は大量のデータを扱う
のに好適なデータ処理装置に関し、特にレジスタのマッ
ピングを変更するデータ処理方式に関する。
【0002】
【従来の技術】ディジタル化された映像、音声等のマル
チメディアデータを処理し、ユーザに表示するデータ処
理装置は、車載情報機器、家庭用アミューズメントやイ
ンタネット端末など個人向け情報機器分野へ、その応用
が急速に広がっている。
【0003】データ処理装置において大量のデータを扱
うために、命令から指定可能な論理レジスタをより多数
の物理レジスタに対応させる従来技術として、米国のサ
ン・マイクロシステムズ社(Sun Microsystems Inc.)
のSPARCアーキテクチャを採用するシステムが著名
で、日経データプロ「マイクロプロセッサ1(頁:MC
1−303−801〜808,1960/6)」に詳し
く記載されている。これによれば、命令が参照する32
本のレジスタのうち8本が固定、残りの24本がサブル
ーチンジャンプの度に16本刻みで一定方向にスライド
し、リターンの度に16本刻みで逆方向にスライドす
る。
【0004】
【発明が解決しようとする課題】上記した従来技術で
は、物理レジスタへのマッピングの変更がサブルーチン
ジャンプ/リターンのタイミングに限定される。また、
移動量も任意ではなく、連続した物理レジスタ領域に限
られる。このため、物理レジスタを多数そなえる処理装
置であっても、サブルーチンジャンプ/リターンのよう
な限られた処理用途にしか適用できない。しかし、マル
チメディアデータ等の処理装置では、このような処理用
途に限定されず、大量のデータを与えられたパラメータ
に従って並行処理する必要がある。このため、いかに多
くのパラメータが記憶できるかが重要になる。
【0005】本発明の目的は、従来技術の問題点に鑑
み、物理レジスタへのマッピングの変更のタイミングと
移動量が限定されず、自由度の高いレジスタアドレスの
変換が可能となるデータ処理装置及びそのレジスタアド
レス変換方法を提供することにある。
【0006】
【課題を解決するための手段】上記目的は、命令によっ
て指定されるレジスタに記憶されたデータを用いて前記
命令を処理するデータ処理装置のレジスタアドレス変換
方法において、論理的レジスタとそれよりレジスタ数の
大きな物理的レジスタの対応関係を前記命令に応じて指
定し、前記論理的レジスタの範囲を指定可能とするレジ
スタ指定フィールドによって前記物理的レジスタのアク
セスを可能にしたことで達成される。
【0007】また、見方を変えれば、前記命令によって
指定される論理的レジスタ番号を物理的レジスタ番号に
変換して物理的に存在するレジスタを指定する場合に、
前記論理的レジスタ番号と前記物理的レジスタ番号の対
応関係を制御するレジスタ番号制御命令に応じて決定さ
れる制御信号によって切り替えることにより達成され
る。
【0008】前記制御信号は、前記命令の命令種に基づ
いて決定される。
【0009】さらに、前記論理的レジスタ番号で参照可
能なレジスタ数は、物理的に存在するレジスタ数より少
ないことを特徴とする。この場合、第1のビット数で表
される前記論理的レジスタ番号の全部または一部のビッ
トの上位に、第2のビット数で表され前記設定命令によ
るビット値を追加して、前記命令中の前記第1のビット
数による論理的レジスタ番号を前記第1のビット数より
大きい前記物理的レジスタ番号に変換する。
【0010】また、上記方法の適用可能な本発明のデー
タ処理装置は、物理的レジスタと、この物理的レジスタ
に記憶されたデータを用いて命令を処理する演算手段を
備え、さらに、前記物理的レジスタが論理的レジスタ番
号で参照可能なレジスタ数より多いレジスタ数を持ち、
前記命令によって指定される前記論理的レジスタ番号か
ら前記物理的レジスタの物理的レジスタ番号へ、設定さ
れる両者の対応関係にしたがって変換するレジスタ番号
変換手段を有し、前期レジスタ番号変換手段が前記対応
関係を前記命令に応じて変更できるように構成されてな
ることを特徴とする。
【0011】前期レジスタ番号変換手段は、前記物理的
レジスタのグループを指定するバンクレジスタを有し、
該バンクレジスタの情報と前期論理的レジスタ番号を合
成した情報によって前記物理的レジスタ番号を生成する
ことを特徴とする。
【0012】この場合、前期バンクレジスタとして複数
のレジスタを有し、前期論理的レジスタ番号の一部の情
報によって該バンクレジスタのうちの1レジスタを選択
して得た情報と、前期論理的レジスタ番号の部分情報と
を合成した情報によって、前記物理的レジスタ番号を生
成する。
【0013】上記のように、本発明の構成によれば、論
理レジスタアドレスを物理レジスタアドレスへの変換機
能と、この変換機能へレジスタを参照する命令に応じて
所定の対応関係を指定する機能を有している。
【0014】そして、前記命令によって指定される論理
的レジスタ番号から前記対応関係にしたがって物理的レ
ジスタ番号に変換して物理的に存在するレジスタを指定
する第1のステップと、前記命令の変更によって前記対
応関係を変更する第2のステップと、前記命令によって
指定される論理的レジスタ番号から変更後の対応関係に
したがって物理的レジスタ番号に変換して物理的に存在
するレジスタを指定する第3のステップとによって、対
応関係を命令に応じて動的に切替ながらレジスタアドレ
スの変換を行なう。
【0015】これによれば、論理レジスタと物理レジス
タの対応関係を命令で指定することにより、少ないレジ
スタ指定フィールドで物理的に大きなレジスタファイル
のアクセスが可能になり、グラフィックス等の演算処理
が高速化できる。
【0016】
【発明の実施の形態】以下、本発明の一実施形態を図面
により詳細に説明する。図2は、本発明の一実施形態に
よるマルチメディアデータ処理システムの構成を示す。
本システムはデータ処理装置1に、データ出力部となる
画像表示装置2、音声発生装置3と、CD−ROMやD
VDなどの外部記憶媒体をアクセスするためのドライブ
4、通信回線との接続を行うモデム5、ユーザ指示入力
部となるキーパッド6、キーボード7、マウス8などを
接続している。
【0017】データ処理装置1はCPU10と、16ビ
ットのDRAM21〜24を内臓する主記憶20と、R
OM30やPLD40の補助記憶部と、主記憶20、補
助記憶部、ドライブ4、モデム5を接続するための入出
力部50を有している。
【0018】CPU10は、命令処理部100、キャッ
シュメモリ110、画素発生部120を有している。ま
た、データ出力部への出力端子を有し、表示制御部13
0と接続されている。入出力部50とデータ交換するた
めのバス端子を有し、バス制御部140と接続されてい
る。ユーザ指示入力部からの入力を受け取る入力端子を
有し、シリアルI/O部150と接続されている。
【0019】命令処理部100は、特にレジスタアドレ
ス変換部230を内蔵し、後述するように、命令で指定
される論理レジスタアドレスを物理レジスタアドレスに
変換し、物理的に存在するレジスタを指定する。
【0020】命令処理部100とキャッシュメモリ11
0との間は、命令及びデータ用の32ビットバス2系統
で接続されている。また、命令処理部100は64ビッ
トのバス端子を持ち、ここに表示制御部130、バス制
御部140、シリアルI/O部150がそれぞれ64ビ
ットのバス160で接続されている。バス160はバス
制御部140によって調停される。このため、バス制御
部140とその他の部分は点線で示す制御信号線で結ば
れている。
【0021】図1は、本発明の要部となる命令処理部の
一実施形態を示している。命令処理部100は命令解釈
部200、レジスタファイル300、演算実行部400
からなる。命令処理部100は32ビットのデータ線1
114を介し、キャッシュメモリ110からの命令を命
令デコーダ(DEC)210へ取り込む。また、32ビ
ットのデータ線1115を介して、キャッシュメモリ1
10とレジスタファイル300の間でデータを送受す
る。命令もしくはデータキャッシュのブロック転送が発
生するときは、これら2系統のデータ線を一つの64ビ
ットデータ線と考え、CPU10内部のバス160と接
続することでデータ線を有効に活用する。
【0022】DEC210は受け取った命令を解釈し、
レジスタ情報を論理レジスタアドレスレジスタ(LRA
R)220へ、制御情報を実行制御部250へ転送す
る。実行制御部250は受け取った制御情報(RATへ
の出力情報と演算実行のための制御情報を含む)に従
い、レジスタアドレス変換部(RAT)230及び演算
実行部400を制御する。
【0023】RAT230は、4ビットの論理レジスタ
アドレスを入力して、所定の変換ルールに従って6ビッ
トの物理レジスタアドレスに変換し、LRAR20で指
定可能な16本のレジスタを、物理レジスタアドレスレ
ジスタ(PRAR)240で指定可能な64本のレジス
タに拡張できる。
【0024】図3は、レジスタアドレス変換部(RA
T)の概念図を示している。RAT230は実行制御部
250からのバンク情報5321により、レジスタバン
ク531の内部状態を2ビットでセットする。そして、
LRAR220の4ビットの信号5331の上位に、バ
ンク531の内部状態による2ビットを付加し、6ビッ
トで表される物理レジスタアドレスをPRAR240に
出力する。
【0025】レジスタバンク531の内部状態は、電源
投入時に特定の初期値に設定される。通常は、LRAR
220とPRAR240が1対1(16本対16本)の
対応関係、例えば”00”に初期設定され、バンク情報
5321が実行されない限りこの初期状態が保持され
る。したがって、従来のソフトウェアだけが実行される
場合、そのソフトウェアは何ら変更することなく、その
まま正しく動作する。
【0026】バンク情報5321は、”STS #im
m, bank”の命令形式となる。ここで、STSは
命令ニモニック、#immは内部状態の設定値、ban
kはバンク531にのアドレスである。#immは00
〜11の2ビット値で、実行制御部250がDEC21
0から受け取った制御情報に応じて決定する。また、こ
の例のバンク531は単一レジスタなので、bank指
定は必要なく”0”に固定されている。
【0027】図4は、論理レジスタアドレスと物理レジ
スタアドレスとの対応関係の説明図である。バンク53
1の内部状態が”01”のケースである。PRAR24
0は16本を単位とする4つのバンクに分けられてい
て、LRAR220の16本はPRAR240のバン
ク”01”の16本に対応する。
【0028】図5は、レジスタアドレス変換部(RA
T)の別の実施例を示している。この実施例では、3ビ
ットのバンクL531、バンクH532により2つの内
部状態をセットしている。そして、LRAR220の下
位3ビットはそのまま出力し、上位の1ビットに従って
RAT230の2つの内部状態の一方を選択して、上位
3ビットとしてPRAR240に出力する。すなわち、
バンクL531、バンクH532の一方の内部状態であ
る3ビットと、LRAR220の下位3ビットを結合し
た6ビットがPRAR240に供給される。
【0029】バンクL531、バンクH532の内部状
態は、LRAR220を下位8本、上位8本の2バンク
に分けて考えた場合の夫々のバンク指定信号として動作
する。バンクL531、バンクH532の内部状態を設
定する初期値と、実行制御部250からのSTS命令形
式は上述と同じである。ただし、bankはバンクL5
31またはバンクH532のアドレスを、”0”また
は”1”で指定する。
【0030】図6に、図5の実施例における論理レジス
タアドレスと物理レジスタアドレスとの対応関係を示
す。バンクL531の内部状態が”001”、バンクH
532の内部状態が”100”のケースである。LRA
R220は、bankL8本とbankH8本の2つの
バンクに分けられている。また、PRAR240は8本
を単位とする8つのバンクに分けられている。バンクL
531の内部状態が”001”では、bankLの8本
はPRAR240のバンク”01”に対応する。また、
バンクH532の内部状態が”100”のbankHの
8本はPRAR240のバンク”04”に対応する。
【0031】これにより、LRAR220の上位8本と
下位8本のそれぞれを、PRAR240の8個のバンク
の異なるものに対応させることができる。これによれ
ば、システムの使うレジスタとユーザの使うレジスタ
で、対応関係を個別に制御することが可能になり、上記
の実施例(図3)よりもきめ細かな制御ができる。
【0032】図7は、レジスタアドレス変換部(RA
T)のさらに別の実施例を示している。この実施例で
は、ロード/演算フラグ5320に従って、各々3ビッ
トのロードバンクL533、演算バンクL534、ロー
ドバンクH535、演算バンクH536により4つの内
部状態をセットしている。そして、LRAR220の下
位3ビットはそのまま出力し、上位の1ビットと命令種
フラグ5320に従ってRAT230の4つの内部状態
の1つを選択して、上位3ビットとしてPRAR240
に出力する。
【0033】ロードバンクL533、演算バンクL53
4、ロードバンクH535、演算バンクH536の各々
の内部状態は、レジスタを下位8本、上位8本の2バン
クに分けて考えた場合の夫々のバンク指定信号として動
作する。すなわち、4つの内部状態のいずれか1つの3
ビットと、LRAR220の下位3ビットを結合した6
ビットがPRAR240に供給される。各々の内部状態
を設定する実行制御部250からの命令形式は上述と同
じである。ただし、#immはバンク533〜536の
内部状態の設定値、bankは各バンクのアドレスであ
る。
【0034】命令種フラグ5320は、実行制御部25
0からのバンク情報5321に含まれる命令種類により
設定される。即ち、命令種フラグ5320の内部状態
は、現在実行中の命令の種類を表し、選択するバンクを
切り替え可能にする。例えば、ロード命令とそれ以外と
することで、同じ論理レジスタ番号でも異なる物理レジ
スタに割り当てることができる。この結果、レジスタ指
定可能数を増やすことなく、従来どおりのレジスタ割当
スケジューリングのまま、データのプリフェッチを簡単
に実現できる。
【0035】命令種フラグ5320は1ビットに限らな
い。命令種に応じて2ビット以上に取ることも可能であ
る。ソフトウェアパイプラインによるスケジュールを行
う際に、演算種毎の並列性を全て抽出できるビット数と
することも可能である。実用的には、1ビットによる
「ロード命令とそれ以外」や、2ビットによる「ロード
命令とストア命令とそれ以外」等となる。
【0036】図8に、図7の実施例における論理レジス
タアドレスと物理レジスタアドレスの対応関係、及び、
命令種フラグによるレジスタ対応テーブルを示す。ロー
ドバンクL533の内部状態が”010”、演算バンク
L534の内部状態が”001”ロードバンクH535
の内部状態が”100”、演算バンクH536の内部状
態が”100”のケースである。
【0037】LRAR220は、8本を単位とするba
nkLとbankHの2つのバンクに分けられている。
また、PRAR240は8本を単位とする8つのバンク
に分けられている。ロード命令実行時、LRAR220
のbankLとbankHはPRAR240のバンク”
02”とバンク”04”に対応する。また、ロード命令
以外の実行時、bankLとbankHはバンク”0
1”とバンク”04”に対応する。
【0038】なお、図5及び図7においても、RAT2
30の各バンクの内部状態は、CPU10の電源投入時
に特定の値にセットされ、STS命令を使わない限り従
来の16本レジスタと同様に動作する。
【0039】次に、本発明のデータ処理方法を適用し
た、図形の頂点計算の処理例を説明する。まず、図9
に、従来の一般的な頂点計算の処理フローを示す。一連
の頂点計算に共通して用いる係数の設定後(S10)、
処理すべき頂点数だけ以下の処理を繰り返す(S2
0)。即ち、3回の座標変換(S21,S23,S2
5)と各1回の輝度計算(S26)及びコマンド生成
(S27)と、クリップ判定(S22)及び表裏判定
(S24)が行なわれる。夫々のステップが約100命
令の処理である。
【0040】座標変換は、4行4列の行列を4成分ベク
トルに掛け合わせて、新たな4成分ベクトルを得る処理
である。ここで、4行4列の行列は各頂点に共通であ
り、係数設定処理で共通データが設定されている。しか
し、座標変換1〜3の種類に応じて3つの行列が必要で
ある。この行列データは、必要に応じメモリからロード
される。
【0041】クリップ判定は、変換された4成分ベクト
ルが一定の条件を満たしているか否かの判定で、満たし
ていない場合にはクリッピングルートと呼ばれる特殊処
理に入る(S221)。表裏判定は、複数の頂点で形成
される面が一定の条件を満たしているか否かの判定で、
満していない場合には裏面ルートと呼ばれる特殊処理に
入る(S241)。いずれも出現頻度の低い例外処理で
あり、これら特殊処理ルートには入らないケースのみを
考慮すればよい。コマンド生成処理では、頂点計算毎に
形成される三角形の面の情報を、画素発生部120への
コマンドとして生成する。
【0042】この一連の頂点計算処理を通して実行する
場合、一頂点当りの処理量は約1000オペレーション
相当である。このように、大量の処理を実行する場合、
LRAR220で指定可能な16本のレジスタだけで
は、パラメータを保持し続けることが困難になる。例え
ば、座標変換用行列はそれだけで16本のレジスタを占
有してしまい、座標変換1の行列をレジスタに保持した
まま、座標変換2、3を実行することは困難になる。し
たがって、演算時に必要な行列要素をその都度、メモリ
から読み出して使用するため、オペレーション数が増加
して処理性能が低下する。
【0043】図10は、図9の頂点計算条件における座
標変換1のコーディング例を示し、n頂点分の演算を4
7×n命令で実行する。実システムの分析から、頂点数
6の演算数が最も多く、282命令相当である。
【0044】図11は、上記実施形態によるアドレス変
換を適用した頂点計算の処理フローを示している。ここ
では、16本の論理レジスタに対し、64本の物理レジ
スタを準備する。
【0045】係数設定処理(S10’)では、従来の一
連の頂点計算に共通して用いる係数の他に、各座標変換
に用いる行列データをレジスタバンクを切換ながら予め
設定している。その後、頂点の数だけ以下の処理をする
(S20)。座標変換(S21’、S23’、S2
5’)以外の処理は、図9と同様である。
【0046】座標変換では、4行4列の行列を4成分ベ
クトルに掛け合わせて、新たな4成分ベクトルを得る。
ここで、各頂点に共通のデータだけでなく、座標変換1
〜3の行列データも予め設定されているので、演算中に
おける行列データのロードは不要であり、バンクを切り
替えるだけで済む。
【0047】図12に、図11の頂点計算条件における
座標変換1のコーディング例を示す。レジスタアドレス
変換には、図5に示した2バンク独立指定方式を採用し
ている。係数設定の処理で、PRAR240の拡張され
たバンクに、座標変換1〜3の行列を複数頂点処理に渡
って保持させ、頂点処理のループの中でバンクを切り替
えながら参照する。
【0048】ループ外の処理、すなわち図11の係数設
定処理(S10’)でのバンク指定は、”sts #f
lwa, flwar0”の命令形式で行なわれる。こ
こで、flwar0はレジスタ上位8本の変換先を示
す、RAT230内のバンクH532のアドレスであ
り、#flwaは行列保存先のバンクアドレスである。
【0049】ループ内の処理、すなわち図11の座標変
換処理(S21’,S23’,S25’)でのバンク指
定は、”sts #fswa, fswar0の命令形
式で行なわれる。ここで、fswar0はレジスタ上位
8本の変換先を示すRAT230内のバンクH532の
アドレスであり、#fswaは行列保存先のバンクアド
レスである。また、#flwaと#fswa、flwa
r0とfswar0は本実施例においては同一値であ
る。
【0050】この結果、ループ外では23命令、ループ
内では32×n命令となる。従って、最多演算数となる
6頂点の計算は215命令相当で、従来の約3割減とな
り、多数の頂点計算を実行するグラフィックスにおいて
顕著な性能向上となる。
【0051】なお、本発明によるアドレス変換処理を用
いたデータ処理方法は、上記の頂点計算のように、演算
の並行処理などにおいて有用であるのみでなく、演算処
理中に次のデータをプリフエッチする場合などに、命令
種に応じて使用するバンクを切り替えることもできる。
このように、命令のフィールド長を変えることなく、L
RARに対し拡張したPRARの対応関係を動的に切替
ることで、データ処理の高速化を簡単に実現できる。
【0052】さらに、本発明のアドレス変換処理を、8
ビットや16ビットの情報処理装置に適用すると、その
命令フィールド長を変えることなく、32ビットや64
ビットの物理レジスタアドレスに変換できるので、PR
ARの増設による機能の拡張が簡単に行なえる。これに
よれば、処理情報量が増加する一途のアミューズメント
や車載情報機器、さらにはインターネット端末など、特
に個人向けの情報機器に適用して、コストを維持しなが
らその性能向上に寄与できる。
【0053】
【発明の効果】本発明のレジスタアドレス変換方式によ
れば、論理的レジスタ番号と物理的レジスタ番号の対応
関係を所定の変更命令によって動的に切り替えることが
できるので、物理的に大きなレジスタファイルのアクセ
スが可能になり、命令の種類などに応じて保存先の指定
を変更でき、データ処理を高速化できる。
【0054】また、命令中のレジスタ指定フィールドを
増やすことなく、大きな物理レジスタアドレスに変換で
きるので、PRARの増設による機能の拡張が簡単に行
なえ、個人向け情報機器等における処理装置の性能を容
易に向上できる。
【図面の簡単な説明】
【図1】本発明のデータ処理装置の要部となる命令処理
部の構成図。
【図2】本発明を適用するマルチメディアデータ処理シ
ステムの構成図。
【図3】レジスタアドレス変換部の一例を示す概念図。
【図4】図3の例における論理レジスタと物理レジスタ
の対応関係の説明図。
【図5】レジスタアドレス変換部の別の例を示す概念
図。
【図6】図5の例における論理レジスタと物理レジスタ
の対応関係の説明図。
【図7】レジスタアドレス変換部の別の例を示す概念
図。
【図8】図7の例における論理レジスタと物理レジスタ
の対応関係の説明図。
【図9】従来の一般的な頂点計算の処理フロー図。
【図10】図9の処理方式における頂点計算命令のコー
ディング図。
【図11】本実施形態(図5)のアドレス変換処理方式
を適用した、頂点計算の処理フロー図。
【図12】図11の処理方式における頂点計算命令のコ
ーディング図。
【符号の説明】
1…データ処理装置、2…画像表示装置、3…音声発生
装置、4…ドライブ、5…モデム、6…キーパッド、7
…キーボード、8…マウス、10…CPU、20…主記
憶、21〜24…DRAM、30…ROM、40…PL
D、50…入出力部、100…命令処理部、110…キ
ャッシュメモリ、120…画素発生部、130…表示制
御部、140…バス制御部、150…シリアルI/O
部、160,170…バス、200…命令解釈部、21
0…デコーダ(DEC)、220…論理レジスタアドレ
スレジスタ(LRAR)、230…レジスタアドレス変
換部(RAT)、240…物理レジスタアドレスレジス
タ(PRAR)、250…実行制御部、300…レジス
タファイル、400…演算実行部、531〜536…バ
ンク。

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 命令によって指定されるレジスタに記憶
    されたデータを用いて前記命令を処理するデータ処理装
    置のレジスタアドレス変換方法において、 論理的レジスタとそれよりレジスタ数の大きな物理的レ
    ジスタの対応関係を前記命令に応じて指定し、前記論理
    的レジスタの範囲を指定可能とするレジスタ指定フィー
    ルドによって前記物理的レジスタのアクセスを可能にす
    ることを特徴とするデータ処理装置のレジスタアドレス
    変換方法。
  2. 【請求項2】 命令によって指定されるレジスタに記憶
    されたデータを用いて前記命令を処理するデータ処理装
    置のレジスタアドレス変換方法において、 前記命令によって指定される論理的レジスタ番号を物理
    的レジスタ番号に変換して物理的に存在するレジスタを
    指定する場合に、前記論理的レジスタ番号と前記物理的
    レジスタ番号の対応関係を制御するレジスタ番号制御命
    令に応じて決定される制御信号によって切り替えること
    を特徴とするデータ処理装置のレジスタアドレス変換方
    法。
  3. 【請求項3】 請求項2において、 前記制御信号は、前記命令の命令種に基づいて決定され
    ることを特徴とするデータ処理装置のレジスタアドレス
    変換方法。
  4. 【請求項4】 請求項2または3において、 前記論理的レジスタ番号で参照可能なレジスタ数は、物
    理的に存在するレジスタ数より少ないことを特徴とする
    データ処理装置のレジスタアドレス変換方法。
  5. 【請求項5】 請求項4において、 第1のビット数で表される前記論理的レジスタ番号の全
    部または一部のビットに、第2のビット数で表され前記
    設定命令によるビット値を追加して、前記命令中の前記
    第1のビット数による論理的レジスタ番号を前記第1の
    ビット数より大きい物理的レジスタ番号に変換すること
    を特徴とするデータ処理装置のレジスタアドレス変換方
    法。
  6. 【請求項6】 データを記憶する物理的レジスタと、こ
    の物理的レジスタに記憶されたデータを用いて命令を処
    理する演算手段を備えるデータ処理装置において、 前記物理的レジスタが論理的レジスタ番号で参照可能な
    レジスタ数より多いレジスタ数を持ち、 前記命令によって指定される前記論理的レジスタ番号か
    ら前記物理的レジスタの物理的レジスタ番号へ、設定さ
    れる両者の対応関係にしたがって変換するレジスタ番号
    変換手段を有し、 前期レジスタ番号変換手段が前記対応関係を前記命令に
    応じて変更できるように構成されてなることを特徴とす
    るデータ処理装置。
  7. 【請求項7】 請求項6において、 前期レジスタ番号変換手段は、前記物理的レジスタのグ
    ループを指定するバンクレジスタを有し、該バンクレジ
    スタの情報と前期論理的レジスタ番号を合成した情報に
    よって前記物理的レジスタ番号を生成するようにしたこ
    とを特徴とするデータ処理装置。
  8. 【請求項8】 請求項7において、 前期バンクレジスタとして複数のレジスタを有し、 前期論理的レジスタ番号の一部の情報によって該バンク
    レジスタのうちの1レジスタを選択して得た情報と、前
    期論理的レジスタ番号の部分情報とを合成した情報によ
    って前記物理的レジスタ番号を生成するようにしたこと
    を特徴とするデータ処理装置。
  9. 【請求項9】 請求項6乃至8において、 前記対応関係は、レジスタ参照の命令の種類毎に切り替
    えられることを特徴とするデータ処理装置。
  10. 【請求項10】 マルチメディアデータを出力するデー
    タ出力手段と、操作情報を入力する操作入力手段と、デ
    ータを記憶する物理的レジスタ、該レジスタに記憶され
    たデータを用いて命令を処理する演算装置を含みマルチ
    メディアデータを処理するデータ処理手段と、を備える
    データ処理装置において、 論理的レジスタ番号の範囲を表すビット長のレジスタ指
    定フィールドによって指定された論理的レジスタ番号か
    ら、前記所定ビット長を超える物理的レジスタ番号への
    変換パターンを持つレジスタ番号変換手段を有し、 レジスタを参照する命令によって前期変換パターンを変
    更できるようにしたことを特徴とするデータ処理装置。
JP8158445A 1996-06-19 1996-06-19 データ処理装置およびそのレジスタアドレス変換方法 Pending JPH1011352A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP8158445A JPH1011352A (ja) 1996-06-19 1996-06-19 データ処理装置およびそのレジスタアドレス変換方法
TW086107971A TW331613B (en) 1996-06-19 1997-06-10 Database system and method for searching data in the database system.
US08/871,978 US6167497A (en) 1996-06-19 1997-06-10 Data processing apparatus and register address translation method thereof
KR1019970025506A KR980004059A (ko) 1996-06-19 1997-06-18 데이타 처리장치 및 그 레지스터 어드레스 변환방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8158445A JPH1011352A (ja) 1996-06-19 1996-06-19 データ処理装置およびそのレジスタアドレス変換方法

Publications (1)

Publication Number Publication Date
JPH1011352A true JPH1011352A (ja) 1998-01-16

Family

ID=15671925

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8158445A Pending JPH1011352A (ja) 1996-06-19 1996-06-19 データ処理装置およびそのレジスタアドレス変換方法

Country Status (4)

Country Link
US (1) US6167497A (ja)
JP (1) JPH1011352A (ja)
KR (1) KR980004059A (ja)
TW (1) TW331613B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010007031A (ko) * 1999-04-30 2001-01-26 가나이 쓰토무 데이터 처리장치
US6687808B2 (en) 2001-08-01 2004-02-03 Nec Electronics Corporation Data processor using indirect register addressing
JPWO2004036416A1 (ja) * 2002-10-18 2006-02-16 株式会社トプスシステムズ マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法
JP2008015720A (ja) * 2006-07-05 2008-01-24 Nec Electronics Corp プロセッサシステム及びプロセッサシステムを動作させるオペレーティングシステムプログラムの処理方法

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7111155B1 (en) 1999-05-12 2006-09-19 Analog Devices, Inc. Digital signal processor computation core with input operand selection from operand bus for dual operations
US6820189B1 (en) 1999-05-12 2004-11-16 Analog Devices, Inc. Computation core executing multiple operation DSP instructions and micro-controller instructions of shorter length without performing switch operation
US7107302B1 (en) 1999-05-12 2006-09-12 Analog Devices, Inc. Finite impulse response filter algorithm for implementation on digital signal processor having dual execution units
US6859872B1 (en) 1999-05-12 2005-02-22 Analog Devices, Inc. Digital signal processor computation core with pipeline having memory access stages and multiply accumulate stages positioned for efficient operation
JP3817436B2 (ja) * 2000-09-28 2006-09-06 株式会社東芝 プロセッサおよびリネーミング装置
DE10121745A1 (de) * 2001-05-04 2002-11-14 Systemonic Ag Verfahren und Anordnung zu einem Stack mit einem, in Datengruppen mit mehreren Elementen aufgeteilten Speicher
US7213123B2 (en) * 2002-10-24 2007-05-01 International Business Machines Corporation Method and apparatus for mapping debugging information when debugging integrated executables in a heterogeneous architecture
JP2006004042A (ja) * 2004-06-16 2006-01-05 Renesas Technology Corp データ処理装置
DE102004054562A1 (de) * 2004-11-11 2006-05-24 Infineon Technologies Ag Verfahren und Vorrichtung zur Adressierung von Registern eines Prozessors
WO2013095578A1 (en) * 2011-12-22 2013-06-27 Intel Corporation Systems, apparatuses, and methods for mapping a source operand to a different range
US9652246B1 (en) * 2012-12-20 2017-05-16 Marvell International Ltd. Banked physical register data flow architecture in out-of-order processors
US10007521B1 (en) 2012-12-20 2018-06-26 Marvell International Ltd. Banked physical register data flow architecture in out-of-order processors
WO2015034088A1 (ja) 2013-09-06 2015-03-12 株式会社 エム光・エネルギー開発研究所 撥液性多孔質膜を備えた電気化学反応装置
CN109072460A (zh) 2016-04-13 2018-12-21 株式会社M光能源开发研究所 使用接通/断开离子的表面开关的电化学反应装置
US10430189B2 (en) * 2017-09-19 2019-10-01 Intel Corporation GPU register allocation mechanism

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6140650A (ja) * 1984-08-02 1986-02-26 Nec Corp マイクロコンピユ−タ
JPS62242243A (ja) * 1986-04-14 1987-10-22 Hitachi Ltd 情報処理装置
JPH03141434A (ja) * 1989-06-19 1991-06-17 Nec Corp マイクロコンピュータ
JPH06202866A (ja) * 1992-12-29 1994-07-22 Hitachi Ltd 情報処理装置
JPH07114534A (ja) * 1991-11-20 1995-05-02 Kisaburo Nakazawa 擬似ベクトルプロセッサ

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4217638A (en) * 1977-05-19 1980-08-12 Tokyo Shibaura Electric Co., Ltd. Data-processing apparatus and method
JPS5448449A (en) * 1977-09-26 1979-04-17 Hitachi Ltd Virtual addressing sustem
JPS5757345A (en) * 1980-09-24 1982-04-06 Toshiba Corp Data controller
US5293594A (en) * 1986-05-24 1994-03-08 Hitachi, Ltd. Data processing system having a plurality of register groups and a logical or circuit for addressing one register of one of the register groups
US4853849A (en) * 1986-12-17 1989-08-01 Intel Corporation Multi-tasking register set mapping system which changes a register set pointer block bit during access instruction
KR0120930B1 (ko) * 1987-12-01 1997-10-29 미다 가쓰시게 실행어드레스의 계산방법 및 통신제어장치
US5696957A (en) * 1991-05-17 1997-12-09 Ricoh Company, Ltd Integrated circuit comprising a central processing unit for executing a plurality of programs
US5437043A (en) * 1991-11-20 1995-07-25 Hitachi, Ltd. Information processing apparatus having a register file used interchangeably both as scalar registers of register windows and as vector registers
JP2823767B2 (ja) * 1992-02-03 1998-11-11 松下電器産業株式会社 レジスタファイル
US5386563A (en) * 1992-10-13 1995-01-31 Advanced Risc Machines Limited Register substitution during exception processing
JP2725546B2 (ja) * 1992-12-07 1998-03-11 株式会社日立製作所 デ−タ処理装置
US5440714A (en) * 1992-12-14 1995-08-08 Industrial Technology Research Institute Method and system configuration for simplifying the decoding system for access to an register file with overlapping windows
JPH07114498A (ja) * 1993-10-15 1995-05-02 Toshiba Corp マイクロプロセッサ
US5897665A (en) * 1995-12-15 1999-04-27 Intel Corporation Register addressing for register-register architectures used for microprocessors and microcontrollers

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6140650A (ja) * 1984-08-02 1986-02-26 Nec Corp マイクロコンピユ−タ
JPS62242243A (ja) * 1986-04-14 1987-10-22 Hitachi Ltd 情報処理装置
JPH03141434A (ja) * 1989-06-19 1991-06-17 Nec Corp マイクロコンピュータ
JPH07114534A (ja) * 1991-11-20 1995-05-02 Kisaburo Nakazawa 擬似ベクトルプロセッサ
JPH06202866A (ja) * 1992-12-29 1994-07-22 Hitachi Ltd 情報処理装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010007031A (ko) * 1999-04-30 2001-01-26 가나이 쓰토무 데이터 처리장치
US6687808B2 (en) 2001-08-01 2004-02-03 Nec Electronics Corporation Data processor using indirect register addressing
JPWO2004036416A1 (ja) * 2002-10-18 2006-02-16 株式会社トプスシステムズ マルチバンクレジスタを有するプロセッサおよびプロセッサの制御方法
JP2008015720A (ja) * 2006-07-05 2008-01-24 Nec Electronics Corp プロセッサシステム及びプロセッサシステムを動作させるオペレーティングシステムプログラムの処理方法

Also Published As

Publication number Publication date
TW331613B (en) 1998-05-11
KR980004059A (ko) 1998-03-30
US6167497A (en) 2000-12-26

Similar Documents

Publication Publication Date Title
JPH1011352A (ja) データ処理装置およびそのレジスタアドレス変換方法
US7159100B2 (en) Method for providing extended precision in SIMD vector arithmetic operations
US5724540A (en) Memory system having a column address counter and a page address counter
US6288723B1 (en) Method and apparatus for converting data format to a graphics card
JP2002518730A (ja) 単一命令複数データシステムに使用するレジスタにアクセスするレジスタおよびアクセス方法
JP7506086B2 (ja) データ処理
US6233596B1 (en) Multiple sum-of-products circuit and its use in electronic equipment and microcomputers
JP2003280982A (ja) 多次元メモリのデータ転送装置及び多次元メモリのデータ転送プログラム、並びに多次元メモリのデータ転送方法
JP2551167B2 (ja) マイクロコンピュータ
US20230176981A1 (en) Data processing method and acceleration unit
JPH1153189A (ja) 演算装置、演算方法及びコンピュータ読み取り可能な記録媒体
JPH0765180A (ja) データ転送制御装置
JPH07210545A (ja) 並列処理プロセッサ
JP2000148477A (ja) アドレス計算方法およびその機構
JP2767815B2 (ja) 画像データ変換回路
JPS6378265A (ja) 処理制御方式
KR20230095775A (ko) Ndp 기능을 포함하는 메모리 확장 장치 및 이를 포함하는 가속기 시스템
JPH0651751A (ja) 画像表示装置
JPH03237491A (ja) フォントメモリ制御装置
JPH07219765A (ja) マイクロプログラム制御装置
JPH02137040A (ja) 画像処理装置
JPH07262085A (ja) 計算機
JPH0869541A (ja) スタイル・ベクトル生成装置
JPH03246727A (ja) 処理装置
JPH09282869A (ja) ランダムアクセスメモリ