JPH1185508A - 条件に応じて出力を変更する選択命令を有するデータ処理装置 - Google Patents

条件に応じて出力を変更する選択命令を有するデータ処理装置

Info

Publication number
JPH1185508A
JPH1185508A JP9246554A JP24655497A JPH1185508A JP H1185508 A JPH1185508 A JP H1185508A JP 9246554 A JP9246554 A JP 9246554A JP 24655497 A JP24655497 A JP 24655497A JP H1185508 A JPH1185508 A JP H1185508A
Authority
JP
Japan
Prior art keywords
value
operand
output
data
predetermined value
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.)
Withdrawn
Application number
JP9246554A
Other languages
English (en)
Inventor
Haruko Nishimoto
晴子 西本
Akira Yasusato
彰 安里
Hiroshi Nakayama
寛 中山
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP9246554A priority Critical patent/JPH1185508A/ja
Publication of JPH1185508A publication Critical patent/JPH1185508A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【課題】演算結果のデータをある所定の範囲にクランプ
する処理を高速化することを目的としている。 【解決手段】与えられた2個のオペランドデータの大小
関係を比較してあらかじめ定められた関係を満たすいず
れか一方のオペランドデータを選択する手段と、選択さ
れたオペランドの値と所定の値との大小関係にもとづい
て、いずれかの値を出力する手段をそなえるとともに、
これらの手段への動作を指示する命令をそなえる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、条件に応じて出力
を変更する選択命令を有するデータ処理装置に関し、特
に、コンピュータグラフィクスの描画処理および画像処
理に適したデータ処理装置に関する。
【0002】
【従来の技術】コンピュータグラフィクス画像を実際の
ディスプレイ上に表示する際、色の指定を、例えば、8
ビット分のビット列で表現している場合は、フレームバ
ッファ上の色の指定は、0から255の正数の範囲にな
ければならない。色変換計算の結果がもしその範囲にな
いとすると、0以下の場合は0に、255以上の場合は
255におさめるように処理しなくてはならない。この
ような処理をクランプ処理という。
【0003】従来技術の一例では、一つの計算結果をク
ランプするために、 のように、6個の命令が必要であった。上記各命令の動
作は以下の通りである。(%r_255には255、%
r_0には0が格納されているとする。) 命令1:src(ソースレジスタ)の値を255(上限
値)と比較し、結果をフラグレジスタに格納する。
【0004】命令2:比較の結果、srcの値が上限値
以下の場合は、命令4へ分岐する。 命令3:比較の結果、srcの値が上限値を越えた場合
は、255に補正してdst(デスティネーションレジ
スタ)に格納する。 命令4:srcの値を0(下限値)と比較し、結果をフ
ラグレジスタに格納する。
【0005】命令5:比較の結果、srcの値が下限値
以上の場合は、終了。 命令6:比較の結果、srcの値が下限値以下の場合は
0に補正してdstに格納する。
【0006】
【発明が解決しようとする課題】従来の方法では、クラ
ンプ処理を行なおうとする度に、判定、分岐、補正等と
いった処理が必要であり、プログラムステップ数の増加
が著しく、処理効率が低下する要因となっていた。画像
データのクランプ処理は、データごとに必ず行なわれ
る。前述のクランプ処理の際には、命令数が著しく増加
し、画像表示の際の性能低下につながることになる。本
発明は、この部分の命令数の増加を抑えることにより、
幾何変換プロセッサの処理速度を大幅に向上させること
を目的とするものである。
【0007】
【課題を解決するための手段】前述した問題点を解決す
るために、複数命令ステップを必要としていたクランプ
処理を1命令ステップで実現する命令を設ける。またソ
フトウェアにより設定可能なフラグを設け、フラグの内
容に応じて命令動作の切り替えを動的に制御できるよう
にする。
【0008】本発明の第1の態様は、以下の構成を有す
る。与えられた2個のオペランドデータの大小関係を比
較して、あらかじめ定められた関係を満たすいずれか一
方のオペランドデータを選択する第1の手段と、第1の
手段により選択されたオペランドの値と所定の値との大
小関係にもとづいて、選択されたオペラントと所定の値
とのいずれかを出力する第2の手段とをそなえる。
【0009】さらに、与えられた2個のオペランドデー
タの大小関係を比較し、あらかじめ定められた関係を満
たすいずれか一方のオペランドを選択し、選択されたオ
ペランドと所定の値との大小関係にもとづいて、選択さ
れたオペランドあるいは所定の値のいずれかを出力する
ことを第1および第2の手段に指示する命令をそなえ
る。
【0010】本発明の第2の態様は、以下の構成を有す
る。与えられた2個のオペランドデータを比較して、値
の小さい方のオペランドデータを選択する比較手段と、
その比較手段により選択されたオペランドの値が所定の
値もしくはそれ以上の値であるか否かを判定するととも
に、選択されたオペランドの値が所定の値以下である場
合には選択されたオペランドに代えてその所定の値を出
力する出力手段とをそなえる。
【0011】さらに、与えられた2個のオペランドデー
タを比較して、値の小さい方のオペランドデータを選択
し、選択したオペランドの値が所定の値もしくはそれ以
上の値であるか否かを判定し、選択したオペランドの値
が所定の値以下である場合には選択したオペランドに代
えてその所定の値を出力することを比較手段および出力
手段に指示する命令をそなえる。
【0012】本発明の第3の態様は、以下の構成を有す
る。前記した本発明の第2の態様における所定の値は0
であり、出力手段は、選択されたオペランドの符号ビッ
トが負数を示す場合に0を出力する回路手段と、選択さ
れたオペランドと前記回路手段の出力とを入力とするA
ND回路手段とから構成され、選択されたオペランドが
負数の場合に当該オペランドに代えて0が出力される。
【0013】本発明の第4の態様は、以下の構成を有す
る。与えられた2個のオペランドデータを比較して、値
の小さい方のオペランドデータを選択する比較手段と、
比較手段により選択されたオペランドの値が所定の値も
しくはそれ以上の値であるか否かを判定するとともに、
選択されたオペランドの値が所定の値以下である場合に
は選択されたオペランドに代えて第三の値を出力する出
力手段とをそなえる。
【0014】さらに、与えられた2個のオペランドデー
タを比較して、値の小さい方のオペランドデータを選択
し、選択したオペランドの値が所定の値もしくはそれ以
上の値であるか否かを判定し、選択したオペランドの値
が所定の値以下である場合には選択したオペランドに代
えて第三の値を出力することを比較手段および出力手段
に指示する命令をそなえる。
【0015】本発明の第5の態様は、以下の構成を有す
る。前記した本発明の第4の態様における所定の値は0
であり、出力手段は、第三の値を保持する定数レジスタ
手段と、選択されたオペランドと定数レジスタ手段の出
力のいずれかを選択するマルチプレクサ手段とを有し、
マルチプレクサ手段は、選択されたオペランドの符号ビ
ットにもとづいて制御され、選択されたオペランドが負
数の場合に当該オペランドに代えて第三の値が出力され
る。
【0016】本発明の第6の態様は、以下の構成を有す
る。ソフトウェアでその内容を設定可能なフラグ手段
と、与えられた2個のオペランドデータを比較して、値
の小さい方のオペランドデータを選択する比較手段と、
フラグ手段が第1の値を有する場合には、比較手段によ
り選択されたオペランドの値が所定の値もしくはそれ以
上の値であるか否かを判定するとともに、選択されたオ
ペランドの値が所定の値以下である場合には選択された
オペランドに代えて第三の値を出力し、フラグ手段が第
2の値を有する場合には、比較手段により選択されたオ
ペランドをそのまま出力する出力手段をそなえる。
【0017】さらに、フラグ手段が第1の値を有する場
合には、与えられた2個のオペランドデータを比較し
て、値の小さい方のオペランドデータを選択し、選択し
たオペランドの値が所定の値もしくはそれ以上の値であ
るか否かを判定し、選択したオペランドの値が所定の値
以下である場合には選択したオペランドに代えて第三の
値を出力することを比較手段および出力手段に指示し、
フラグ手段が第2の値を有する場合には、選択したオペ
ランドをそのまま出力することを比較手段および出力手
段に指示する命令をそなえる。
【0018】本発明の第7の態様は、以下の構成を有す
る。前記本発明の第6の態様において所定の値は0であ
り、出力手段は、第三の値を保持する定数レジスタ手段
と、選択されたオペランドと定数レジスタ手段の出力の
いずれかを選択するマルチプレクサ手段とを有し、マル
チプレクサ手段は、選択されたオペランドの符号ビット
およびフラグ手段の値にもとづいて制御され、フラグ手
段が第1の値を有し、かつ選択されたオペランドが負数
の場合に当該オペランドに代えて第三の値が出力され
る。
【0019】本発明の第8の態様は、以下の構成を有す
る。ソフトウェアでその内容を設定可能なフラグ手段
と、与えられた2個のオペランドデータを比較して、値
の小さい方のオペランドデータを選択する比較手段と、
フラグ手段が第1の値を有する場合には、比較手段によ
り選択されたオペランドの値が正数、負数あるいは0の
いずれであるかを判定するとともに、それぞれの場合に
対応して予め定められた第三の値を当該選択されたオペ
ランドに代えて出力し、フラグ手段が第2の値を有する
場合には、比較手段により選択されたオペランドをその
まま出力する出力手段をそなえる。
【0020】さらに、フラグ手段が第1の値を有する場
合には、与えられた2個のオペランドデータを比較し
て、値の小さい方のオペランドデータを選択し、選択し
たオペランドの値が正数、負数あるいは0のいずれであ
るかを判定するとともに、それぞれの場合に対応して予
め定められた第三の値を選択されたオペランドに代えて
出力し、フラグ手段が第2の値を有する場合には、比較
手段により選択されたオペランドをそのまま出力するこ
とを比較手段および出力手段に指示する命令をそなえ
る。
【0021】本発明の第9の態様は、以下の構成を有す
る。前記本発明の第8の態様における出力手段は、選択
したオペランドの値が正数の場合に出力されるべき第三
の値を保持する第一の定数レジスタと、選択したオペラ
ンドの値が負数の場合に出力されるべき第三の値を保持
する第二の定数レジスタと、選択したオペランドの値が
0の場合に出力されるべき第三の値を保持する第三の定
数レジスタと、選択されたオペランドと第一から第三の
定数レジスタ手段の出力のいずれかを選択するマルチプ
レクサ手段とを有し、マルチプレクサ手段は、選択され
たオペランドの値およびフラグ手段の値にもとづいて制
御され、フラグ手段が第1の値を有する場合は、選択さ
れたオペランドに代えて第一から第三の定数レジスタ手
段の出力のいずれかが出力される。
【0022】本発明の第10の態様は、以下の構成を有
する。与えられた2個のオペランドデータを比較して、
値の大きい方のオペランドデータを選択する比較手段
と、比較手段により選択されたオペランドの値が所定の
値もしくはそれ以下の値であるか否かを判定するととも
に、選択されたオペランドの値が所定の値以上である場
合には選択されたオペランドに代えてその所定の値を出
力する出力手段とをそなえる。
【0023】さらに、与えられた2個のオペランドデー
タを比較して、値の大きい方のオペランドデータを選択
し、選択したオペランドの値が所定の値もしくはそれ以
下の値であるか否かを判定し、選択したオペランドの値
が所定の値以上である場合には選択したオペランドに代
えてその所定の値を出力することを比較手段および出力
手段に指示する命令をそなえる。
【0024】本発明の第11の態様は、以下の構成を有
する。与えられた2個のオペランドデータを比較して、
値の大きい方のオペランドデータを選択する比較手段
と、比較手段により選択されたオペランドの値が所定の
値もしくはそれ以下の値であるか否かを判定するととも
に、選択されたオペランドの値が所定の値以上である場
合には選択されたオペランドに代えて第三の値を出力す
る出力手段とをそなえる。
【0025】さらに、与えられた2個のオペランドデー
タを比較して、値の大きい方のオペランドデータを選択
し、選択したオペランドの値が所定の値もしくはそれ以
下の値であるか否かを判定し、選択したオペランドの値
が所定の値以上である場合には選択したオペランドに代
えて第三の値を出力することを比較手段および出力手段
に指示する命令をそなえる。
【0026】本発明の第12の態様は、以下の構成を有
する。ソフトウェアでその内容を設定可能なフラグ手段
と、与えられた2個のオペランドデータを比較して、値
の大きい方のオペランドデータを選択する比較手段と、
フラグ手段が第1の値を有する場合には、比較手段によ
り選択されたオペランドの値が所定の値もしくはそれ以
下の値であるか否かを判定するとともに、選択されたオ
ペランドの値が所定の値以上である場合には選択された
オペランドに代えて第三の値を出力し、フラグ手段が第
2の値を有する場合には、比較手段により選択されたオ
ペランドをそのまま出力する出力手段をそなえる。
【0027】さらに、フラグ手段が第1の値を有する場
合には、与えられた2個のオペランドデータを比較し
て、値の大きい方のオペランドデータを選択し、選択し
たオペランドの値が所定の値もしくはそれ以下の値であ
るか否かを判定し、選択したオペランドの値が所定の値
以上である場合には選択したオペランドに代えて第三の
値を出力することを比較手段および出力手段に指示し、
フラグ手段が第2の値を有する場合には、選択したオペ
ランドをそのまま出力することを比較手段および出力手
段に指示する命令をそなえる。
【0028】
【発明の実施の形態】以下、図面を参照しながら、本発
明の実施の形態を説明する。図1は、本発明の第1の実
施例の構成図である。図1において、1は命令デコー
ダ、2は比較回路、3は出力データ選択回路、4はソー
スオペランドAを格納するソースオペランド格納レジス
タ、5はソースオペランドBを格納するソースオペラン
ド格納レジスタ、6は結果データ格納レジスタ、7は符
号反転回路、8はANDゲート回路、s1〜s4は各種
データ信号(線)、c1〜c2は各種制御信号(線)で
ある。ここで、各種信号(線)に付された( )付き数
字は信号線のビット数を示している。
【0029】ソースオペランド格納レジスタ4に格納さ
れているソースオペランドAと、ソースオペランド格納
レジスタ5に格納されているソースオペランドBの2つ
をデータ信号線s1、s2を通じて比較回路2の入力と
して与えると、比較回路2では2つの値の大小を比較
し、小さい値の方のオペランドを選択して出力データ選
択回路3へ送出する。
【0030】データ信号線s3を通じて出力データ選択
回路3へ入力されてきたデータは、符号反転回路7とA
NDゲート回路8へ送られる。符号反転回路7は、デー
タ信号線s3上のデータ中の符号ビットを取り込み、そ
れを反転したビットを制御信号線c2上に送出し、AN
Dゲート回路8の一方の入力とする。比較回路2で選択
されたオペランドの符号ビットが0の場合(すなわち、
オペランドの値が正または0の場合)には、符号ビット
を反転した結果は1となり、その値と選択されたオペラ
ンドとのAND値は、選択されたオペランドの値そのも
のとなる。ANDゲート回路8は、選択されたオペラン
ドをそのままデータ信号線s4を通じて結果格納レジス
タ6へ送出する。
【0031】一方、比較回路2で選択されたオペランド
の符号ビットが1の場合(すなわち、オペランドの値が
負の場合)には、符号ビットを反転した結果は0とな
り、その値と選択されたオペランドとのAND値は、選
択されたオペランドの値にかかわらず0となる。AND
ゲート回路8は、出力データ0をデータ信号線s4を通
じて結果格納レジスタ6へ送出する。
【0032】ここで適用される命令は、(1)与えられ
た2つのソースオペランドの比較を行なう、(2)値の
小さい方のソースオペランドを選択する、(3)選択さ
れたオペランドが正または0の場合はその選択されたオ
ペランドをそのまま出力し、選択されたオペランドが負
の場合は0を出力する、という動作を指示する命令であ
る。図1の命令デコーダ1は、この命令を解読したとき
制御信号線c1を通じて、比較回路2および出力データ
選択回路3に上記(1)〜(3)の動作を実行するよう
に指示する制御信号を送出する。
【0033】フレームバッファ上の色の指定を0から2
55の正数の範囲にクランプする処理を行なう実施例に
おいては、一方のソースオペランド格納レジスタ5に正
数255が与えられ、他方のソースオペランド格納レジ
スタ4に色指定データが与えられる。このクランプ処理
を行なう専用命令(fsmall0)は、この場合、 fsmall0 %dst, %src, %r_2
55 の形で記述され、1命令で、%srcの値を0から25
5の範囲に丸めることができる。すなわち、 (1)色指定データである%srcの値が255より大
きければ、ソースオペランド格納レジスタ5に設定され
た正数255が比較回路2により選択され、これは正数
であるから符号反転回路7の出力c2は1となり、AN
Dゲート回路8は、出力データとして正数255をその
ままデータ信号線s4を通じて、結果格納レジスタ6へ
送出する。 (2)色指定データである%srcの値が0〜254の
範囲であれば、正数255より小さいため、ソースオペ
ランド格納レジスタ4に設定された%srcの値が比較
回路2により選択され、これは負数ではないため符号反
転回路7の出力c2は1となり、ANDゲート回路8
は、出力データとして%srcの値をそのままデータ信
号線s4を通じて、結果格納レジスタ6へ送出する。 (3)色指定データである%srcの値が負数の場合、
正数255より小さいため、ソースオペランド格納レジ
スタ4に設定された%srcの値が比較回路2により選
択されるが、負数であることを示す符号の値1が符号反
転回路7で反転されて、その出力c2は0となるため、
ANDゲート回路8は、出力データとして0をデータ信
号線s4を通じて、結果格納レジスタ6へ送出する。
【0034】なお、色指定データである%srcの値が
255の場合、ソースオペランド格納レジスタ5に設定
された正数255と同一の値となるが、この場合にはい
ずれかを一方を「小さい方のデータ」とみなして処理す
ればよい。図2は、本発明の他の実施例の構成図であ
る。図2において、1は命令デコーダ、2は比較回路、
3は出力データ選択回路、4はソースオペランドAを格
納するソースオペランド格納レジスタ、5はソースオペ
ランドBを格納するソースオペランド格納レジスタ、6
は結果データ格納レジスタ、10は符号判定回路、11
は定数レジスタ、12はマルチプレクサ、s1〜s5は
各種データ信号(線)、c1、c3は各種制御信号
(線)である。各種信号(線)に付された( )付き数
字は信号線のビット数を示している。
【0035】ソースオペランド格納レジスタ4に格納さ
れているソースオペランドAと、ソースオペランド格納
レジスタ5に格納されているソースオペランドBの2つ
をデータ信号線s1、s2を通じて比較回路2の入力と
して与えると、比較回路2では2つの値の大小を比較
し、小さい値の方のオペランドを選択して出力データ選
択回路3へ送出する。
【0036】データ信号線s3を通じて出力データ選択
回路3へ入力されてきたデータは、符号判定回路10
と、マルチプレクサ12の一方の入力へ送られる。符号
判定回路10は、データ信号線s3上のデータ中の符号
ビットを取り込み、その判定結果をマルチプレクサ12
の制御信号として制御信号線c3を通じてマルチプレク
サ12の制御入力へ与える。定数レジスタ11の出力は
データ信号線s5を通じてマルチプレクサ12の他方の
入力へ与えられる。
【0037】マルチプレクサ12では、符号判定回路1
0による符号判定結果にもとづき、比較回路2からのオ
ペランドと定数レジスタ11の出力とのいずれかを選択
して出力する。1実施例では、符号ビットが0の場合
(すなわち、選択されたオペランドの値が正または0の
場合)には、比較回路2からのオペランドをそのまま出
力し、符号ビットが1の場合(すなわち、選択されたオ
ペランドの値が負の場合)には、定数レジスタ11の出
力を選択して出力する。
【0038】ここで適用される命令は、(1)与えられ
た2つのソースオペランドの比較を行なう、(2)値の
小さい方のソースオペランドを選択する、(3)選択さ
れたオペランドが正または0の場合はその選択されたオ
ペランドをそのまま出力し、選択されたオペランドが負
の場合は定数レジスタ11の内容を出力する、という動
作を指示する命令である。図2の命令デコーダ1は、こ
の命令を解読したとき制御信号線c1を通じて、比較回
路2および出力データ選択回路3に上記(1)〜(3)
の動作を実行するように指示する制御信号を送出する。
【0039】前述した図1に示す実施例との相違点は、
与えられた2つのソースオペランドの比較の結果、選択
されたオペランドが負数だった場合の出力結果が、ある
一定の値を持つ定数になる点である。図2に示す実施例
は、ある指定されたデータが負数ではない場合には、例
えば、0から255の正数の範囲にクランプするが、そ
の指定データが負数の場合には、あらかじめ指定した特
定のデータに置き換える、というケースに適用可能であ
る。この特定のデータとして0を与えると、図1に示す
実施例と同一の結果データを得ることができる。
【0040】図3は、本発明の他の実施例の構成図であ
る。図3において、1は命令デコーダ、2は比較回路、
3は出力データ選択回路、4はソースオペランドAを格
納するソースオペランド格納レジスタ、5はソースオペ
ランドBを格納するソースオペランド格納レジスタ、6
は結果データ格納レジスタ、10は符号判定回路、11
は定数レジスタ、12はマルチプレクサ、13はソフト
ウェアで設定可能なフラグレジスタ、s1〜s5は各種
データ信号(線)、c1、c3、c4は各種制御信号
(線)である。各種信号(線)に付された( )付き数
字は信号線のビット数を示している。
【0041】ソースオペランド格納レジスタ4に格納さ
れているソースオペランドAと、ソースオペランド格納
レジスタ5に格納されているソースオペランドBの2つ
をデータ信号線s1、s2を通じて比較回路2の入力と
して与えると、比較回路2では2つの値の大小を比較
し、小さい値の方のオペランドを選択して出力データ選
択回路3へ送出する。
【0042】データ信号線s3を通じて出力データ選択
回路3へ入力されてきたデータは、符号判定回路10
と、マルチプレクサ12の一方の入力へ送られる。符号
判定回路10は、データ信号線s3上のデータ中の符号
ビットを取り込み、その判定結果をマルチプレクサ12
の制御信号として制御信号線c3を通じてマルチプレク
サ12の制御入力へ与える。定数レジスタ11の出力は
データ信号線s5を通じてマルチプレクサ12の他方の
入力へ与えられる。また、フラグレジスタ13の値が制
御信号線c4を通じてマルチプレクサ12の制御入力へ
与えられる。
【0043】ここで、フラグレジスタ13の値が0の場
合は、比較回路2からのオペランドの値にかかわらず、
そのオペランドをそのままマルチプレクサ12を通して
出力する。一方、フラグレジスタ13の値が1の場合
は、図2に示す実施例と同一の動作を行なう。すなわ
ち、フラグレジスタ13の値が1の場合、マルチプレク
サ12では、符号判定回路10による符号判定結果にも
とづき、比較回路2からのオペランドと定数レジスタ1
1の出力とのいずれかを選択して出力する。1実施例で
は、符号ビットが0の場合(すなわち、選択されたオペ
ランドの値が正または0の場合)には、比較回路2から
のオペランドをそのまま出力し、符号ビットが1の場合
(すなわち、選択されたオペランドの値が負の場合)に
は、定数レジスタ11の出力を選択して出力する。
【0044】ここで適用される命令は、(1)与えられ
た2つのソースオペランドの比較を行なう、(2)値の
小さい方のソースオペランドを選択する、(3)フラ
グレジスタの値が0の場合は、選択されたオペランドを
そのまま出力し、 フラグレジスタの値が1の場合は、選択されたオペラ
ンドが正または0の場合にその選択されたオペランドを
そのまま出力し、選択されたオペランドが負の場合に定
数レジスタ11の内容を出力する、という動作を指示す
る命令である。図3の命令デコーダ1は、この命令を解
読したとき制御信号線c1を通じて、比較回路2および
出力データ選択回路3に上記(1)〜(3)の動作を実
行するように指示する制御信号を送出する。
【0045】前述した図2に示す実施例との相違点は、
ソフトウェアで設定可能な専用のフラグレジスタを有す
ること、および1つの選択命令が比較結果をそのまま出
力する命令としてふるまうか、あるいは比較結果出力が
負であった場合は定数レジスタの値を採用して出力する
命令としてふるまうかが、フラグの値によって動的に変
化する点である。
【0046】図4は、本発明の他の実施例の構成図であ
る。図4において、1は命令デコーダ、2は比較回路、
3は出力データ選択回路、4はソースオペランドAを格
納するソースオペランド格納レジスタ、5はソースオペ
ランドBを格納するソースオペランド格納レジスタ、6
は結果データ格納レジスタ、10は符号判定回路、11
−1〜11−3は定数レジスタ、12はマルチプレク
サ、13はソフトウェアで設定可能なフラグレジスタ、
s1〜s4、s6〜s8は各種データ信号(線)、c
1、c3、c4は各種制御信号(線)である。各種信号
(線)に付された( )付き数字は信号線のビット数を
示している。
【0047】ソースオペランド格納レジスタ4に格納さ
れているソースオペランドAと、ソースオペランド格納
レジスタ5に格納されているソースオペランドBの2つ
をデータ信号線s1、s2を通じて比較回路2の入力と
して与えると、比較回路2では2つの値の大小を比較
し、小さい値の方のオペランドを選択して出力データ選
択回路3へ送出する。
【0048】データ信号線s3を通じて出力データ選択
回路3へ入力されてきたデータは、符号判定回路10
と、マルチプレクサ12の一方の入力へ送られる。符号
判定回路10は、データ信号線s3上のデータ中の符号
ビットのみならずデータ部分をも取り込み、その判定結
果(正、負、0)をマルチプレクサ12の制御信号とし
て制御信号線c3を通じてマルチプレクサ12の制御入
力へ与える。符号ビットのみでは、正数と0との識別が
できないため、データ部分の判定により正数と0との識
別を行なう。定数レジスタ11−1〜11−3の出力は
データ信号線s6〜s8を通じてマルチプレクサ12の
他方の入力へ与えられる。また、フラグレジスタ13の
値が制御信号線c4を通じてマルチプレクサ12の制御
入力へ与えられる。
【0049】ここで、フラグレジスタ13の値が0の場
合は、比較回路2からのオペランドの値にかかわらず、
そのオペランドをそのままマルチプレクサ12を通して
出力する。一方、フラグレジスタ13の値が1の場合、
マルチプレクサ12では、符号判定回路10による符号
判定結果(正、負、0)にもとづき、比較回路2からの
オペランドに代えて、定数レジスタ11−1〜11−3
の出力のいずれかを選択して出力する。1実施例では、
比較回路2からのオペランドが正の場合に定数レジスタ
11−1の値が選択され、比較回路2からのオペランド
が負の場合に定数レジスタ11−2の値が選択され、比
較回路2からのオペランドが0の場合に定数レジスタ1
1−3の値が選択される。
【0050】ここで適用される命令は、(1)与えられ
た2つのソースオペランドの比較を行なう、(2)値の
小さい方のソースオペランドを選択する、(3)フラ
グレジスタの値が0の場合は、選択されたオペランドを
そのまま出力し、 フラグレジスタの値が1の場合は、選択されたオペラ
ンドが正の場合に定数レジスタ11−1の内容を出力
し、選択されたオペランドが負の場合に定数レジスタ1
1−2の内容を出力し、選択されたオペランドが0の場
合に定数レジスタ11−3の内容を出力する、という動
作を指示する命令である。図4の命令デコーダ1は、こ
の命令を解読したとき制御信号線c1を通じて、比較回
路2および出力データ選択回路3に上記(1)〜(3)
の動作を実行するように指示する制御信号を送出する。
【0051】前述した図3に示す実施例との相違点は、
フラグの値が1のときに、比較回路の出力オペランドの
正、負、0に応じて、それぞれ対応する定数レジスタの
値を、出力オペランドに代えて出力する点である。前述
した実施例においては、フレームバッファ上の色の指定
を0から255の正数の範囲にクランプする処理を行な
う際に、一方のソースオペランド格納レジスタ5に正数
255を与え、他方のソースオペランド格納レジスタ4
に色指定データを与え、比較回路では値の小さい方を選
択するようにしている。一方、これとは逆の指定および
選択手法によりクランプ処理を実施することもできる。
【0052】本発明の他の変形した実施例を、上述した
図1を援用して説明する。まず、一方のソースオペラン
ド格納レジスタ5に下限値である0を設定する。そして
比較回路2では、与えられた2個のオペランドを比較し
て、値の大きい方のオペランドを選択する。出力データ
選択回路3では、比較回路2により選択されたオペラン
ドの値が所定の値、すなわち正数255に等しいかある
いはそれ以下の値であるか否かを判定する。選択された
オペランドの値が255以上の場合はその選択されたオ
ペランドに代えて正数255を出力する。選択されたオ
ペランドの値が255に等しいかあるいはそれ以下の場
合は、選択されたオペランドの値をそのまま出力する。
【0053】図1に示す符号反転回路7に位置する回路
は、この場合、正数255のデータを出力する機能と、
選択されたオペランドの値が255以上か否かを指示す
る1ビットの制御信号を出力する機能を持つ。また、図
1に示すAND回路8に代えて選択回路が設けられ、符
号反転回路7に位置する回路からの制御信号が0のとき
は選択されたオペランドの値をそのまま出力し、符号反
転回路7に位置する回路からの制御信号が1のときはそ
の回路からの正数255を選択出力する動作を行なう。
【0054】ここで適用される命令は、(1)与えられ
た2つのソースオペランドの比較を行なう、(2)値の
大きい方のソースオペランドを選択する、(3)選択さ
れたオペランドが255またはそれ以下の場合はその選
択されたオペランドをそのまま出力し、選択されたオペ
ランドが255以上の場合は255を出力する、という
動作を指示する命令である。図1の命令デコーダ1は、
この命令を解読したとき制御信号線c1を通じて、比較
回路2および出力データ選択回路3に上記(1)〜
(3)の動作を実行するように指示する制御信号を送出
する。
【0055】なお、色指定データとしてソースオペラン
ド格納レジスタ4に格納された値が0の場合、ソースオ
ペランド格納レジスタ5に設定された値0と同一の値と
なるが、この場合にはいずれかを一方を「大きい方のデ
ータ」とみなして処理すればよい。本発明の他の変形し
た実施例を、上述した図2を援用して説明する。まず、
一方のソースオペランド格納レジスタ5に下限値である
0を設定する。そして比較回路2では、与えられた2個
のオペランドを比較して、値の大きい方のオペランドを
選択する。出力データ選択回路3では、比較回路2によ
り選択されたオペランドの値が所定の値、すなわち正数
255に等しいかあるいはそれ以下の値であるか否かを
判定する。選択されたオペランドの値が255以上の場
合はその選択されたオペランドに代えて定数レジスタ1
1の内容を出力する。選択されたオペランドの値が25
5に等しいかあるいはそれ以下の場合は、選択されたオ
ペランドの値をそのまま出力する。
【0056】図2に示す符号判定回路10に位置する回
路は、この場合、選択されたオペランドの値が255以
上か否かを指示する1ビットの制御信号を出力する機能
を持つ。マルチプレクサ12は、符号判定回路10に位
置する回路からの制御信号が0のときは選択されたオペ
ランドの値をそのまま出力し、符号反転回路7に位置す
る回路からの制御信号が1のときは定数レジスタ11の
内容を選択出力する動作を行なう。
【0057】ここで適用される命令は、(1)与えられ
た2つのソースオペランドの比較を行なう、(2)値の
大きい方のソースオペランドを選択する、(3)選択さ
れたオペランドが255またはそれ以下の場合はその選
択されたオペランドをそのまま出力し、選択されたオペ
ランドが255以上の場合は定数レジスタ11の内容を
出力する、という動作を指示する命令である。図2の命
令デコーダ1は、この命令を解読したとき制御信号線c
1を通じて、比較回路2および出力データ選択回路3に
上記(1)〜(3)の動作を実行するように指示する制
御信号を送出する。
【0058】本発明の他の変形した実施例を、上述した
図3を援用して説明する。まず、一方のソースオペラン
ド格納レジスタ5に下限値である0を設定する。そして
比較回路2では、与えられた2個のオペランドを比較し
て、値の大きい方のオペランドを選択する。ここで、フ
ラグレジスタ13の値が0の場合には、出力データ選択
回路3では、比較回路2からのオペランドの値にかかわ
らず、そのオペランドをそのままマルチプレクサ12を
通して出力する。
【0059】一方、フラグレジスタ13の値が1の場合
は、出力データ選択回路3では、比較回路2により選択
されたオペランドの値が所定の値、すなわち正数255
に等しいかあるいはそれ以下の値であるか否かを判定す
る。選択されたオペランドの値が255以上の場合はそ
の選択されたオペランドに代えて定数レジスタ11の内
容を出力する。選択されたオペランドの値が255に等
しいかあるいはそれ以下の場合は、選択されたオペラン
ドの値をそのまま出力する。
【0060】図3に示す符号判定回路10に位置する回
路は、この場合、選択されたオペランドの値が255以
上か否かを指示する1ビットの制御信号を出力する機能
を持つ。マルチプレクサ12は、フラグレジスタ13の
値が1の場合、符号判定回路10に位置する回路からの
制御信号が0のときは選択されたオペランドの値をその
まま出力し、符号反転回路7に位置する回路からの制御
信号が1のときは定数レジスタ11の内容を選択出力す
る動作を行なう。
【0061】ここで適用される命令は、(1)与えられ
た2つのソースオペランドの比較を行なう、(2)値の
大きい方のソースオペランドを選択する、(3)フラ
グレジスタの値が0の場合は、選択されたオペランドを
そのまま出力し、 フラグレジスタの値が1の場合は、選択されたオペラ
ンドが255に等しいかあるいはそれ以下の場合にその
選択されたオペランドをそのまま出力し、選択されたオ
ペランドが255以上の場合に定数レジスタ11の内容
を出力する、という動作を指示する命令である。図3の
命令デコーダ1は、この命令を解読したとき制御信号線
c1を通じて、比較回路2および出力データ選択回路3
に上記(1)〜(3)の動作を実行するように指示する
制御信号を送出する。
【0062】上記実施例においては、画像データ処理に
おけるクランプ処理への適用例について説明したが、本
発明はこれに限定されるものではなく、データ処理の種
々の分野への適用が可能なものである。
【0063】
【発明の効果】以上説明したように、本発明によれば、
画像データ処理等における命令ステップ数を削減するこ
とが可能となり、画像表示処理等の高速化に大きく寄与
することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施例の構成図である。
【図2】本発明の他の実施例の構成図である。
【図3】本発明の他の実施例の構成図である。
【図4】本発明の他の実施例の構成図である。
【符号の説明】
1 命令デコーダ 2 比較回路 3 出力データ選択回路 4、5 ソースオペランド格納レジスタ 6 結果データ格納レジスタ

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 与えられた2個のオペランドデータの大
    小関係を比較して、あらかじめ定められた関係を満たす
    いずれか一方のオペランドデータを選択する第1の手段
    と、 前記第1の手段により選択されたオペランドの値と所定
    の値との大小関係にもとづいて、選択されたオペラント
    と所定の値とのいずれかを出力する第2の手段とをそな
    えるとともに、 与えられた2個のオペランドデータの大小関係を比較
    し、あらかじめ定められた関係を満たすいずれか一方の
    オペランドを選択し、選択されたオペランドと所定の値
    との大小関係にもとづいて、選択されたオペランドある
    いは所定の値のいずれかを出力することを前記第1およ
    び第2の手段に指示する命令をそなえたことを特徴とす
    るデータ処理装置。
  2. 【請求項2】 与えられた2個のオペランドデータを比
    較して、値の小さい方のオペランドデータを選択する比
    較手段と、 前記比較手段により選択されたオペランドの値が所定の
    値もしくはそれ以上の値であるか否かを判定するととも
    に、選択されたオペランドの値が所定の値以下である場
    合には選択されたオペランドに代えてその所定の値を出
    力する出力手段とをそなえるとともに、 与えられた2個のオペランドデータを比較して、値の小
    さい方のオペランドデータを選択し、選択したオペラン
    ドの値が所定の値もしくはそれ以上の値であるか否かを
    判定し、選択したオペランドの値が所定の値以下である
    場合には選択したオペランドに代えてその所定の値を出
    力することを前記比較手段および出力手段に指示する命
    令をそなえたことを特徴とするデータ処理装置。
  3. 【請求項3】 前記所定の値は0であり、前記出力手段
    は、選択されたオペランドの符号ビットが負数を示す場
    合に0を出力する回路手段と、選択されたオペランドと
    前記回路手段の出力とを入力とするAND回路手段とか
    ら構成され、 選択されたオペランドが負数の場合に当該オペランドに
    代えて0が出力されることを特徴とする請求項2に記載
    のデータ処理装置。
  4. 【請求項4】 与えられた2個のオペランドデータを比
    較して、値の小さい方のオペランドデータを選択する比
    較手段と、 前記比較手段により選択されたオペランドの値が所定の
    値もしくはそれ以上の値であるか否かを判定するととも
    に、選択されたオペランドの値が所定の値以下である場
    合には選択されたオペランドに代えて第三の値を出力す
    る出力手段とをそなえるとともに、 与えられた2個のオペランドデータを比較して、値の小
    さい方のオペランドデータを選択し、選択したオペラン
    ドの値が所定の値もしくはそれ以上の値であるか否かを
    判定し、選択したオペランドの値が所定の値以下である
    場合には選択したオペランドに代えて第三の値を出力す
    ることを前記比較手段および出力手段に指示する命令を
    そなえたことを特徴とするデータ処理装置。
  5. 【請求項5】 前記所定の値は0であり、前記出力手段
    は、前記第三の値を保持する定数レジスタ手段と、選択
    されたオペランドと前記定数レジスタ手段の出力のいず
    れかを選択するマルチプレクサ手段とを有し、前記マル
    チプレクサ手段は、選択されたオペランドの符号ビット
    にもとづいて制御され、 選択されたオペランドが負数の場合に当該オペランドに
    代えて前記第三の値が出力されることを特徴とする請求
    項4に記載のデータ処理装置。
  6. 【請求項6】 ソフトウェアでその内容を設定可能なフ
    ラグ手段と、 与えられた2個のオペランドデータを比較して、値の小
    さい方のオペランドデータを選択する比較手段と、 前記フラグ手段が第1の値を有する場合には、前記比較
    手段により選択されたオペランドの値が所定の値もしく
    はそれ以上の値であるか否かを判定するとともに、選択
    されたオペランドの値が所定の値以下である場合には選
    択されたオペランドに代えて第三の値を出力し、前記フ
    ラグ手段が第2の値を有する場合には、前記比較手段に
    より選択されたオペランドをそのまま出力する出力手段
    をそなえるとともに、 前記フラグ手段が第1の値を有する場合には、与えられ
    た2個のオペランドデータを比較して、値の小さい方の
    オペランドデータを選択し、選択したオペランドの値が
    所定の値もしくはそれ以上の値であるか否かを判定し、
    選択したオペランドの値が所定の値以下である場合には
    選択したオペランドに代えて第三の値を出力することを
    前記比較手段および出力手段に指示し、前記フラグ手段
    が第2の値を有する場合には、選択したオペランドをそ
    のまま出力することを前記比較手段および出力手段に指
    示する命令をそなえたことを特徴とするデータ処理装
    置。
  7. 【請求項7】 前記所定の値は0であり、前記出力手段
    は、前記第三の値を保持する定数レジスタ手段と、選択
    されたオペランドと前記定数レジスタ手段の出力のいず
    れかを選択するマルチプレクサ手段とを有し、前記マル
    チプレクサ手段は、選択されたオペランドの符号ビット
    および前記フラグ手段の値にもとづいて制御され、 前記フラグ手段が第1の値を有し、かつ選択されたオペ
    ランドが負数の場合に当該オペランドに代えて前記第三
    の値が出力されることを特徴とする請求項6に記載のデ
    ータ処理装置。
  8. 【請求項8】 ソフトウェアでその内容を設定可能なフ
    ラグ手段と、 与えられた2個のオペランドデータを比較して、値の小
    さい方のオペランドデータを選択する比較手段と、 前記フラグ手段が第1の値を有する場合には、前記比較
    手段により選択されたオペランドの値が正数、負数ある
    いは0のいずれであるかを判定するとともに、それぞれ
    の場合に対応して予め定められた第三の値を当該選択さ
    れたオペランドに代えて出力し、前記フラグ手段が第2
    の値を有する場合には、前記比較手段により選択された
    オペランドをそのまま出力する出力手段をそなえるとと
    もに、 前記フラグ手段が第1の値を有する場合には、与えられ
    た2個のオペランドデータを比較して、値の小さい方の
    オペランドデータを選択し、選択したオペランドの値が
    正数、負数あるいは0のいずれであるかを判定するとと
    もに、それぞれの場合に対応して予め定められた第三の
    値を選択されたオペランドに代えて出力し、前記フラグ
    手段が第2の値を有する場合には、前記比較手段により
    選択されたオペランドをそのまま出力することを前記比
    較手段および出力手段に指示する命令をそなえたことを
    特徴とするデータ処理装置。
  9. 【請求項9】 前記出力手段は、選択したオペランドの
    値が正数の場合に出力されるべき第三の値を保持する第
    一の定数レジスタと、選択したオペランドの値が負数の
    場合に出力されるべき第三の値を保持する第二の定数レ
    ジスタと、選択したオペランドの値が0の場合に出力さ
    れるべき第三の値を保持する第三の定数レジスタと、選
    択されたオペランドと前記第一から第三の定数レジスタ
    手段の出力のいずれかを選択するマルチプレクサ手段と
    を有し、前記マルチプレクサ手段は、選択されたオペラ
    ンドの値および前記フラグ手段の値にもとづいて制御さ
    れ、 前記フラグ手段が第1の値を有する場合は、選択された
    オペランドに代えて前記第一から第三の定数レジスタ手
    段の出力のいずれかが出力されることを特徴とする請求
    項8に記載のデータ処理装置。
  10. 【請求項10】 与えられた2個のオペランドデータを
    比較して、値の大きい方のオペランドデータを選択する
    比較手段と、 前記比較手段により選択されたオペランドの値が所定の
    値もしくはそれ以下の値であるか否かを判定するととも
    に、選択されたオペランドの値が所定の値以上である場
    合には選択されたオペランドに代えてその所定の値を出
    力する出力手段とをそなえるとともに、 与えられた2個のオペランドデータを比較して、値の大
    きい方のオペランドデータを選択し、選択したオペラン
    ドの値が所定の値もしくはそれ以下の値であるか否かを
    判定し、選択したオペランドの値が所定の値以上である
    場合には選択したオペランドに代えてその所定の値を出
    力することを前記比較手段および出力手段に指示する命
    令をそなえたことを特徴とするデータ処理装置。
  11. 【請求項11】 与えられた2個のオペランドデータを
    比較して、値の大きい方のオペランドデータを選択する
    比較手段と、 前記比較手段により選択されたオペランドの値が所定の
    値もしくはそれ以下の値であるか否かを判定するととも
    に、選択されたオペランドの値が所定の値以上である場
    合には選択されたオペランドに代えて第三の値を出力す
    る出力手段とをそなえるとともに、 与えられた2個のオペランドデータを比較して、値の大
    きい方のオペランドデータを選択し、選択したオペラン
    ドの値が所定の値もしくはそれ以下の値であるか否かを
    判定し、選択したオペランドの値が所定の値以上である
    場合には選択したオペランドに代えて第三の値を出力す
    ることを前記比較手段および出力手段に指示する命令を
    そなえたことを特徴とするデータ処理装置。
  12. 【請求項12】 ソフトウェアでその内容を設定可能な
    フラグ手段と、 与えられた2個のオペランドデータを比較して、値の大
    きい方のオペランドデータを選択する比較手段と、 前記フラグ手段が第1の値を有する場合には、前記比較
    手段により選択されたオペランドの値が所定の値もしく
    はそれ以下の値であるか否かを判定するとともに、選択
    されたオペランドの値が所定の値以上である場合には選
    択されたオペランドに代えて第三の値を出力し、前記フ
    ラグ手段が第2の値を有する場合には、前記比較手段に
    より選択されたオペランドをそのまま出力する出力手段
    をそなえるとともに、 前記フラグ手段が第1の値を有する場合には、与えられ
    た2個のオペランドデータを比較して、値の大きい方の
    オペランドデータを選択し、選択したオペランドの値が
    所定の値もしくはそれ以下の値であるか否かを判定し、
    選択したオペランドの値が所定の値以上である場合には
    選択したオペランドに代えて第三の値を出力することを
    前記比較手段および出力手段に指示し、前記フラグ手段
    が第2の値を有する場合には、選択したオペランドをそ
    のまま出力することを前記比較手段および出力手段に指
    示する命令をそなえたことを特徴とするデータ処理装
    置。
JP9246554A 1997-09-11 1997-09-11 条件に応じて出力を変更する選択命令を有するデータ処理装置 Withdrawn JPH1185508A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9246554A JPH1185508A (ja) 1997-09-11 1997-09-11 条件に応じて出力を変更する選択命令を有するデータ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9246554A JPH1185508A (ja) 1997-09-11 1997-09-11 条件に応じて出力を変更する選択命令を有するデータ処理装置

Publications (1)

Publication Number Publication Date
JPH1185508A true JPH1185508A (ja) 1999-03-30

Family

ID=17150149

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9246554A Withdrawn JPH1185508A (ja) 1997-09-11 1997-09-11 条件に応じて出力を変更する選択命令を有するデータ処理装置

Country Status (1)

Country Link
JP (1) JPH1185508A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015513749A (ja) * 2012-03-15 2015-05-14 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation Vectorstringrangecompare

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015513749A (ja) * 2012-03-15 2015-05-14 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation Vectorstringrangecompare

Similar Documents

Publication Publication Date Title
US6954204B2 (en) Programmable graphics system and method using flexible, high-precision data formats
US7979679B2 (en) System and method for selectively controlling operations in lanes in an execution unit of a computer
JPH08305568A (ja) 情報処理装置
US4608660A (en) Data processing system with condition data setting function
JP2739487B2 (ja) 描画処理装置及びその描画処理装置を用いた画像表示装置
KR20020002334A (ko) 정렬된 simd용 범용 레지스터 파일 구조
US5077659A (en) Data processor employing the same microprograms for data having different bit lengths
JPH1185508A (ja) 条件に応じて出力を変更する選択命令を有するデータ処理装置
US5841379A (en) Method and apparatus for selectively counting consecutive bits
JPH1153189A (ja) 演算装置、演算方法及びコンピュータ読み取り可能な記録媒体
US5416745A (en) Parallel data transfer circuit
US5467450A (en) Process and apparatus for characterizing and adjusting spatial relationships of displayed objects
US6381295B1 (en) Shifter with overflow detection mechanism
EP2600241B1 (en) VLIW processor, instruction structure, and instruction execution method
JP2003331296A (ja) 円弧描画方法
EP1443457A2 (en) Processing of colour graphics data
JPH01271876A (ja) 比較演算処理装置
JPH04184535A (ja) 並列演算装置
JP3210356B2 (ja) データのゼロ判定装置
JPS6057440A (ja) 情報処理装置
JP2708415B2 (ja) 図形処理装置
JPH01263828A (ja) 演算処理装置
JPH0236423A (ja) 退避/復帰レジスタアドレス生成回路
JPH01161436A (ja) 演算処理装置
JPH08305840A (ja) 画像処理装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20041207