JPH0721155A - Central arithmetic processor - Google Patents

Central arithmetic processor

Info

Publication number
JPH0721155A
JPH0721155A JP19076593A JP19076593A JPH0721155A JP H0721155 A JPH0721155 A JP H0721155A JP 19076593 A JP19076593 A JP 19076593A JP 19076593 A JP19076593 A JP 19076593A JP H0721155 A JPH0721155 A JP H0721155A
Authority
JP
Japan
Prior art keywords
cpu
vector
function
degree
matrix
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
Application number
JP19076593A
Other languages
Japanese (ja)
Other versions
JP3618109B2 (en
Inventor
Akio Oba
章男 大場
Masaaki Oka
正昭 岡
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.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP19076593A priority Critical patent/JP3618109B2/en
Priority to CA002127053A priority patent/CA2127053C/en
Priority to CA 2350844 priority patent/CA2350844C/en
Priority to US08/267,678 priority patent/US5850540A/en
Priority to CA 2350852 priority patent/CA2350852C/en
Priority to MYPI94001718A priority patent/MY111274A/en
Priority to KR1019940015724A priority patent/KR100380705B1/en
Priority to DE69434014T priority patent/DE69434014T2/en
Priority to EP02080384A priority patent/EP1306808B1/en
Priority to DE69433988T priority patent/DE69433988T2/en
Priority to EP94304855A priority patent/EP0632407B1/en
Priority to DE69432385T priority patent/DE69432385T2/en
Priority to EP02080385A priority patent/EP1300800B1/en
Priority to TW083106106A priority patent/TW378309B/en
Publication of JPH0721155A publication Critical patent/JPH0721155A/en
Priority to US08/868,123 priority patent/US6011564A/en
Priority to US08/868,124 priority patent/US5784070A/en
Application granted granted Critical
Publication of JP3618109B2 publication Critical patent/JP3618109B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PURPOSE:To lighten the load on a CPU without reducing the computing capability of the CPU itself on a main bus by incorporating a dedicated arithmetic part for performing geometrical arithmetic in the CPU as hardware. CONSTITUTION:In an image processing system which uses the CPU 12, the CPU 12, a main memory 13, and a raster processor 14 are connected to a main bus 11. The CPU 12 is provided with a matrix arithmetic part 100 as a dedicated arithmetic part for the function part of a geometric processor. A CPU part 22 is connected to this arithmetic part 100 through an internal bus 21 and for a process for converting coordinates of polygon data, a function for the multiplication of a matrix of nXm=3X3 and a vector of degree m=3, a function for the addition and subtraction of a vector of degree n=3 and a vector of degree n=3, a function for the term-classified multiplication of a vector of degree n=3 and a vector of degree n=3, and a function for the multiplication of a vector of degree n=3 and a scalar value, and a function for division between scalar values are exclusively executed.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】この発明は、例えば、グラフィッ
クコンピュータ、特殊効果装置、ゲーム機などのコンピ
ュータを利用した画像生成装置のように高速に画像を生
成し、操作する必要がある装置に使用して好適な中央演
算処理装置(以下、CPUという)に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention is used for a device which needs to generate and operate an image at high speed such as an image generating device using a computer such as a graphic computer, a special effect device and a game machine. And a suitable central processing unit (hereinafter referred to as CPU).

【0002】[0002]

【従来の技術】例えばグラフィックコンピュータにより
画像を生成(描画)する場合には、図5に示すような処
理手順で画像描画処理をする。
2. Description of the Related Art For example, when an image is generated (drawn) by a graphic computer, an image drawing process is performed according to the processing procedure shown in FIG.

【0003】すなわち、コンピュータグラフィックスで
は、描画しようとする物体は小さな基本図形(ポリゴン
(多角形))に分割され、そのポリゴンの形、位置、向
き、色、模様などが画像を決めるポリゴンデータとして
与えられる。ポリゴンの形、位置、向きは、その頂点の
座標で決まる。
That is, in computer graphics, an object to be drawn is divided into small basic figures (polygons (polygons)), and the shape, position, direction, color, pattern, etc. of the polygons are used as polygon data for determining an image. Given. The shape, position, and orientation of a polygon are determined by the coordinates of its vertices.

【0004】画像描画処理としては、先ず、ステップS
1において、例えばメモリや記録媒体に蓄えられている
描画データを読み込み、ステップS2において、その描
画データからポリゴンデータをのみを抽出する。
As the image drawing process, first, step S
At 1, the drawing data stored in, for example, a memory or a recording medium is read, and at step S2, only polygon data is extracted from the drawing data.

【0005】次に、ステップS3において所定の入力手
段から入力された視点位置の情報を元に、当該視点に正
対するスクリーンを仮想して、各ポリゴンの頂点座標
を、そのスクリーン上の座標に変換する。この頂点座標
の座標変換は、視点を基準にした物体の向きに変換のた
めの3次元座標変換OP1と、上記のスクリーンに対し
て視点からの物体までの距離に応じた透視変換(2次元
座標変換)OP2とを行う。3次元座標変換OP1は、
座標変換マトリクスを用いて行い、透視変換OP2は、
頂点の奥行き情報(Z情報)を用いた割算演算を行うも
のである。
Next, in step S3, based on the viewpoint position information input from the predetermined input means, the screen facing the viewpoint is hypothesized, and the vertex coordinates of each polygon are converted into the coordinates on the screen. To do. The coordinate transformation of the vertex coordinates includes a three-dimensional coordinate transformation OP1 for transforming the orientation of the object based on the viewpoint, and a perspective transformation (two-dimensional coordinate) according to the distance from the viewpoint to the screen with respect to the screen. Conversion) OP2. The three-dimensional coordinate conversion OP1 is
The coordinate transformation matrix is used, and the perspective transformation OP2 is
The division operation is performed using the depth information (Z information) of the vertex.

【0006】そして、得られた変換後の頂点データを、
ステップS4でメモリから取り出し、ステップS5でそ
の座標に従ってビデオRAM上にポリゴンの描画を行
う。
Then, the obtained converted vertex data is
In step S4, it is taken out from the memory, and in step S5, a polygon is drawn on the video RAM according to the coordinates.

【0007】図5の処理を高速に行う装置としては、従
来、図6や図7に示すような構成の画像処理システムを
使用している。
As an apparatus for performing the processing shown in FIG. 5 at high speed, conventionally, an image processing system having a configuration as shown in FIGS. 6 and 7 is used.

【0008】図6のシステムにおいては、メインバス1
に対して、CPU2と、メインメモリ3とが接続されて
いる。そして、CPU2に対してローカルバス介してジ
ェオメトリプロセッサ4が接続され、このジェオメトリ
プロセッサ4に対してローカルバスを介してラスタープ
ロセッサ5が接続される。そして、ラスタープロセッサ
5に対してビデオRAM6が接続される。
In the system of FIG. 6, the main bus 1
On the other hand, the CPU 2 and the main memory 3 are connected. Then, the geometry processor 4 is connected to the CPU 2 via a local bus, and the raster processor 5 is connected to the geometry processor 4 via a local bus. Then, the video RAM 6 is connected to the raster processor 5.

【0009】また、図7のシステムにおいては、メイン
バス1に対して、CPU2、メインメモリ3、ジェオメ
トリプロセッサ7、ラスタープロセッサ8が接続され、
ラスタープロセッサ8に対してビデオRAM9が接続さ
れる。
Further, in the system of FIG. 7, a CPU 2, a main memory 3, a geometry processor 7, and a raster processor 8 are connected to a main bus 1.
A video RAM 9 is connected to the raster processor 8.

【0010】図6及び図7のシステムにおいて、CPU
2はシステム全体のコントロールを行う。ジェオメトリ
プロセッサ4、7は、前述のステップS3の座標変換の
ための幾何演算を行う。ラスタープロセッサ5、8は、
前述のステップS5のビデオRAM6、9への描画を行
う。
In the system of FIGS. 6 and 7, the CPU
2 controls the entire system. The geometry processors 4 and 7 perform geometrical operations for the coordinate conversion in step S3 described above. The raster processors 5 and 8 are
Drawing on the video RAMs 6 and 9 in step S5 is performed.

【0011】[0011]

【発明が解決しようとする課題】以上の図6及び図7の
システムでは、CPU2が幾何演算やビデオRAMへの
描画を行う必要がないので、負担が軽くなり、処理速度
を高速にできるが、次のような欠点がある。
In the system shown in FIGS. 6 and 7, the CPU 2 does not need to perform geometric calculation or drawing in the video RAM, so that the burden is lightened and the processing speed can be increased. It has the following drawbacks.

【0012】図6のシステム構成は、ステップS3の幾
何演算以降がパイプライン処理により実行されるので、
処理速度が速いが、CPU2とジェオメトリプロセッサ
4、ジェオメトリプロセッサ4とラスタープロセッサ5
が、それぞれ独立のローカルバスを介して接続される構
成であるため、ハードウエアの規模が大きくなる欠点が
ある。
In the system configuration shown in FIG. 6, since the geometric operation after step S3 is executed by pipeline processing,
Although the processing speed is fast, the CPU 2 and the geometry processor 4, and the geometry processor 4 and the raster processor 5
However, since they are connected to each other via independent local buses, there is a drawback that the scale of hardware becomes large.

【0013】また、図7のシステム構成では、すべての
情報がメインバス1を通るため、CPU2のメインメモ
リ3へのアクセスが妨害され、処理速度がそれだけ遅く
なってしまう。
Further, in the system configuration of FIG. 7, since all the information passes through the main bus 1, the access of the CPU 2 to the main memory 3 is obstructed and the processing speed becomes slower.

【0014】この発明は、上記の点に鑑み、例えば、小
型で、描画機能の高いグラフィック機器を製作する場合
に、ハードウエアを増大させることなく、描画速度を高
めることが可能なCPUを提供することを目的とする。
In view of the above points, the present invention provides a CPU capable of increasing the drawing speed without increasing the hardware when, for example, a small-sized graphic device having a high drawing function is manufactured. The purpose is to

【0015】[0015]

【課題を解決するための手段】上記課題を解決するた
め、この発明によるCPUは、後述の実施例の参照符号
を対応させると、n×m(n,m≧2)の行列と、m次
のベクトルとの乗算機能と、n次のベクトルとn次のベ
クトルとの加減算機能と、n次のベクトルとn次のベク
トルとの項別乗算機能と、n次のベクトルとスカラー値
との乗算機能と、スカラー値間の割算機能とを専用に実
行する専用演算部100を備える。
In order to solve the above-mentioned problems, the CPU according to the present invention makes the matrix of n × m (n, m ≧ 2) and m-th order correspond to the reference numerals of the embodiments described later. Function of multiplying by vector of n, vector of addition and subtraction of vector of nth order, vector of nth order and vector of nth order, multiplication of vector of nth order and scalar value A dedicated arithmetic unit 100 is provided for exclusively performing the function and the function of dividing the scalar value.

【0016】[0016]

【作用】上記の構成のこの発明によるCPUを使用し
て、上述の画像処理システムを構成する場合には、ジェ
オメトリプロセッサの機能は、CPUの専用演算部10
0で実行される。したがって、その分、メインバスを通
るデータが少なくなり、図6のようなパイプライン構成
を採用しなくても、高速の処理が可能になる。
When the CPU according to the present invention having the above-mentioned structure is used to form the above-mentioned image processing system, the function of the geometry processor is the function of the dedicated arithmetic unit 10 of the CPU.
It is executed at 0. Therefore, the amount of data passing through the main bus decreases accordingly, and high-speed processing is possible without adopting the pipeline configuration as shown in FIG.

【0017】[0017]

【実施例】以下、この発明によるCPUの一実施例を図
を参照しながら説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of a CPU according to the present invention will be described below with reference to the drawings.

【0018】図2は、この発明によるCPU12を使用
した画像処理システムの構成例である。このシステムで
は、メインバス11に対してCPU12と、メインメモ
リ13と、ラスタープロセッサ14とが接続される。ジ
ェオメトリプロセッサの機能部分は、この場合、CPU
12に専用演算部としてマトリクス演算器100を設け
て、CPU12が行う。
FIG. 2 is a structural example of an image processing system using the CPU 12 according to the present invention. In this system, a CPU 12, a main memory 13, and a raster processor 14 are connected to the main bus 11. In this case, the functional part of the geometry processor is the CPU
12 is provided with a matrix calculator 100 as a dedicated calculator, and is executed by the CPU 12.

【0019】この例の場合、CPU12においては、C
PU部22が接続される内部バス21に対してマトリク
ス演算器100が接続される。マトリクス演算器100
は、この例のポリゴンデータの座標変換などの処理のた
めには、n×m=3×3の行列と、m=3次のベクトル
との乗算機能と、n=3次のベクトルとn=3次のベク
トルとの加減算機能と、n=3次のベクトルとn=3次
のベクトルとの項別乗算機能と、n=3次のベクトルと
スカラー値との乗算機能と、スカラー値間の割算機能と
を専用に実行する。
In the case of this example, in the CPU 12, C
The matrix calculator 100 is connected to the internal bus 21 to which the PU unit 22 is connected. Matrix calculator 100
For processing such as coordinate conversion of polygon data in this example, a multiplication function of a matrix of n × m = 3 × 3 and a vector of m = third order, n = third order vector and n = third vector Addition / subtraction function with third-order vector, item-wise multiplication function with n = third-order vector and n = third-order vector, multiplication function with n = third-order vector and scalar value, and between scalar values Dedicated division function and.

【0020】図1は、この発明によるCPU12の一実
施例の構成を示すブロック図である。CPU12では、
外部バスであるメインバス11に対してバスインターフ
ェイスユニット24を介して内部バス21が接続され
る。内部バス21に対しては、CPU部22と、キャッ
シュメモリ23が接続される。さらに、内部バス21に
対してマトリクス演算器100が接続される。
FIG. 1 is a block diagram showing the configuration of an embodiment of the CPU 12 according to the present invention. In the CPU 12,
The internal bus 21 is connected to the main bus 11, which is an external bus, via the bus interface unit 24. A CPU unit 22 and a cache memory 23 are connected to the internal bus 21. Further, the matrix calculator 100 is connected to the internal bus 21.

【0021】マトリクス演算器100は、入出力レジス
タ30と、3個の積和演算回路31、32、33と、割
算器34とを備えている。また、図示しなかったが、マ
トリクス演算器100は、CPU部22からの命令を受
信して解読し、レジスタや各回路に制御信号や制御クロ
ックを供給する制御部を備える。
The matrix calculator 100 includes an input / output register 30, three product-sum calculation circuits 31, 32 and 33, and a divider 34. Although not shown, the matrix calculator 100 includes a control unit that receives and decodes an instruction from the CPU unit 22 and supplies a control signal and a control clock to a register and each circuit.

【0022】3個の積和演算回路31、32、33のそ
れぞれは、係数レジスタ41、42、43と、乗算器5
1、52、53と、加減算器61、62、63と、レジ
スタ71、72、73とからなっている。74は、割算
の際に使用されるスカラー値をストアするレジスタであ
る。
Each of the three product-sum operation circuits 31, 32, 33 includes a coefficient register 41, 42, 43 and a multiplier 5.
1, 52, 53, adders / subtractors 61, 62, 63, and registers 71, 72, 73. Reference numeral 74 is a register for storing a scalar value used at the time of division.

【0023】係数レジスタ41、42、43は、乗算器
51、52、53に係数をそれぞれ出力すると共に、加
減算器61、62、63に対してレジスタ71、72、
73を介して係数を出力する。乗算器51、52、53
の出力は加減算器61、62、63に供給される。加減
算器61、62、63の出力は、レジスタ71、72、
73に供給されると共に、入出力レジスタ30に供給さ
れる。さらに、加減算器63の出力は、割算器34に供
給される。
The coefficient registers 41, 42, 43 output the coefficients to the multipliers 51, 52, 53, respectively, and the registers 71, 72 for the adder / subtractors 61, 62, 63, respectively.
The coefficient is output via 73. Multipliers 51, 52, 53
Is supplied to the adders / subtractors 61, 62, 63. The outputs of the adders / subtractors 61, 62, 63 are the registers 71, 72,
It is supplied to the input / output register 30 as well as to the input terminal 73. Further, the output of the adder / subtractor 63 is supplied to the divider 34.

【0024】この例の場合、3個の積和演算回路が設け
られるのは、画像描画処理のための座標変換や透視変換
のために、x,y,zの3座標が必要であるので、その
3座標についての演算を並列に行うためである。また、
描画する物体の色は、3原色データで決められるからで
ある。
In the case of this example, three product-sum operation circuits are provided because three coordinates x, y, z are required for coordinate conversion for image drawing processing and perspective conversion. This is because the calculations for the three coordinates are performed in parallel. Also,
This is because the color of the object to be drawn is determined by the three primary color data.

【0025】以上の構成のCPU12においては、入出
力レジスタ30と、各係数レジスタ41、42、43及
びレジスタ44は内部バス21に接続され、外部バスを
経由せずに高速に読み書きできる。また、入出力レジス
タ30は、必要なデータを積和演算回路31、32、3
3及び割算器34に送り、そして、演算結果を出力デー
タとして受信し、その演算結果は、内部バス21を介し
てCPU部22に送出する。
In the CPU 12 having the above configuration, the input / output register 30, each coefficient register 41, 42, 43, and the register 44 are connected to the internal bus 21, and can read and write at high speed without passing through the external bus. The input / output register 30 transfers necessary data to the product-sum operation circuits 31, 32, 3
3 and the divider 34, and the calculation result is received as output data, and the calculation result is transmitted to the CPU unit 22 via the internal bus 21.

【0026】この場合、この発明によるCPU12の構
成は、マトリクス演算器100に対する命令の与え方の
違いにより、図3あるいは図4のような構成とすること
ができる。すなわち、図3の例は、マトリクス演算器1
00をコプロセッサとして接続する場合の例で、マトリ
クス演算器100は、インストラクションキャッシュ2
3Iから、直接、コプロセッサ命令を受け取り、実行す
る。データは、データキャッシュ23Dから内部バス2
1のデータバス21Dを介して受け取る。
In this case, the configuration of the CPU 12 according to the present invention can be configured as shown in FIG. 3 or FIG. 4 depending on the way of giving the instruction to the matrix calculator 100. That is, the example of FIG.
In the example in which 00 is connected as a coprocessor, the matrix calculator 100 is the instruction cache 2
Receive and execute coprocessor instructions directly from 3I. Data is transferred from the data cache 23D to the internal bus 2
1 via the data bus 21D.

【0027】図4の例は、マトリクス演算器100をC
PU12の内部バス21上にメモリマップした場合の例
で、この場合は、インストラクションレジスタに命令を
書き込むことにより、演算が実行される。つまり、内部
バス21のアドレスバス21A及びデータバス21Dに
より、CPU部22から命令がマトリクス演算器100
に書き込まれる。
In the example shown in FIG. 4, the matrix calculator 100 is a C
This is an example in which the memory is mapped on the internal bus 21 of the PU 12, and in this case, the operation is executed by writing an instruction in the instruction register. That is, an instruction is sent from the CPU unit 22 to the matrix operation unit 100 by the address bus 21A and the data bus 21D of the internal bus 21.
Written in.

【0028】図3及び図4の構成のいづれの場合も、外
部バス11にデータを出力することなく、演算時にCP
U部22とマトリクス演算器100とを並列に駆動する
ことができる。したがって、マトリクス演算器100で
演算が行われているときであっても、CPU部22は、
内部バス21を用いて、他の演算を並行して計算するこ
とができる。
In either case of the configurations shown in FIGS. 3 and 4, CP is not output to the external bus 11 at the time of operation and CP
The U unit 22 and the matrix calculator 100 can be driven in parallel. Therefore, even when the matrix calculator 100 is performing the calculation, the CPU unit 22
Using the internal bus 21, other operations can be calculated in parallel.

【0029】上述の画像処理装置においては、マトリク
ス演算器100は、前述した3次元座標変換OP1及び
透視変換OP2とを行う。3次元座標変換OP1は、数
1として示す次式のようなもので、3×3の行列と3次
のベクトルの乗算と、その乗算結果と、3次のベクトル
との加算からなる。
In the above image processing apparatus, the matrix calculator 100 performs the above-mentioned three-dimensional coordinate conversion OP1 and perspective conversion OP2. The three-dimensional coordinate transformation OP1 is represented by the following expression shown as the equation 1, and is composed of multiplication of a 3 × 3 matrix and a cubic vector, and addition of the multiplication result and the cubic vector.

【0030】[0030]

【数1】 数1で、[M11,M12,M13,M21,M22,M23,M31,M32,M33 ]は
座標変換マトリクスである。[B1,B2,B3]は頂点座標で
ある。[C1,C2,C3]は平行移動ベクトルである。また、
[A1,A2,A3]は、座標変換後の頂点座標である。
[Equation 1] In Equation 1, [M11, M12, M13, M21, M22, M23, M31, M32, M33] is a coordinate transformation matrix. [B1, B2, B3] are vertex coordinates. [C1, C2, C3] are translation vectors. Also,
[A1, A2, A3] are the vertex coordinates after coordinate conversion.

【0031】また、透視変換OP2は、数2として示す
次式のようなものである。
The perspective transformation OP2 is expressed by the following equation (2).

【0032】[0032]

【数2】 数2で、[O1,O2,O3]はオフセット値、[S1,S2,S3]
は、座標変換後の頂点座標([A1,A2,A3])に相当す
る。Hは視点から透視変換のスクリーンまでの距離であ
る。[D1,D2,D3]は透視変換後の頂点座標である。
[Equation 2] In Equation 2, [O1, O2, O3] is the offset value, and [S1, S2, S3]
Corresponds to the vertex coordinates ([A1, A2, A3]) after coordinate conversion. H is the distance from the viewpoint to the perspective conversion screen. [D1, D2, D3] are the vertex coordinates after perspective transformation.

【0033】上記の座標変換及び透視変換を行う場合に
は、係数レジスタ41には、乗算器51用として係数
(M11,M12,M13 )が、加減算器61用として係数(C1,O
1 )が設定され、係数レジスタ42には、乗算器52用
として係数(M21,M22,M23 )が、加減算器62用として
係数(C2,O2 )が設定され、係数レジスタ43には、乗
算器53用として係数(M31,M32,M33 )が、加減算器6
3用として係数(C3,O3)が設定される。そして、レジ
スタ74には、スカラー値Hが設定され、割算器34の
一方の入力として供給されると共に、割算器34の他方
の入力としては、加減算器63で求められた値A3が入力
される。
When performing the above-mentioned coordinate transformation and perspective transformation, the coefficient register 41 has coefficients (M11, M12, M13) for the multiplier 51 and coefficients (C1, O for the adder / subtractor 61).
1) is set, the coefficient register 42 is set with coefficients (M21, M22, M23) for the multiplier 52 and the coefficient (C2, O2) is used for the adder / subtractor 62, and the coefficient register 43 is set with the multiplier The coefficient (M31, M32, M33) for 53 is used by the adder / subtractor 6
The coefficient (C3, O3) is set for 3. Then, the scalar value H is set in the register 74 and supplied as one input of the divider 34, and the value A3 obtained by the adder / subtractor 63 is input as the other input of the divider 34. To be done.

【0034】そして、入出力レジスタ30には、ポリゴ
ンの頂点座標[B1,B2,B3]が入力値として設定され、ま
た、演算結果の[A1,A2,A3]、[D1,D2,D3]が出力値と
して設定される。
Then, the vertex coordinates [B1, B2, B3] of the polygon are set as input values in the input / output register 30, and the calculation results [A1, A2, A3], [D1, D2, D3] are set. Is set as the output value.

【0035】以上の設定により、数1及び数2の演算式
の各行についての演算を、それぞれの積和演算回路3
1、32、33が担当し、演算を並列に実行する。
With the above settings, the calculation for each row of the arithmetic expressions of the equations 1 and 2 is performed by each product-sum arithmetic circuit 3
1, 32, 33 are in charge and execute operations in parallel.

【0036】コンピュータグラフィックスでは、大気に
よる光の減衰、いわゆるフォグ効果を考慮して、視点か
ら物体までの距離を使って物体の明るさと大気の明るさ
をブレンディングし、遠くのものほどぼんやり見えるよ
うにして、現実の風景に近似するようにすることがあ
る。この際の物体の色を決定する演算も、マトリクス演
算器100を用いて、同様に行うことができる。
In computer graphics, the brightness of an object and the brightness of the atmosphere are blended using the distance from the viewpoint to the object in consideration of attenuation of light due to the atmosphere, so-called fog effect, so that the farther the object appears, the more vague. Then, it may be made to approximate the actual landscape. The calculation for determining the color of the object at this time can be similarly performed using the matrix calculator 100.

【0037】この場合にも、数1と全く同じ演算がおこ
なわれる。この場合には、数1において、[M11,M12,M1
3,M21,M22,M23,M31,M32,M33 ]は光源の性質を表すマト
リクスであり、[B1,B2,B3]は光源の方向、つまり光源
ベクトルである。[C1,C2,C3]は周囲光ベクトルであ
る。そして、[A1,A2,A3]は、光源効果を表す。この光
源効果を用いて物体の色[D1,D2,D3]を、数3として示
す次式により求めることができる。
Also in this case, the same calculation as in the equation 1 is performed. In this case, in equation 1, [M11, M12, M1
[3, M21, M22, M23, M31, M32, M33] is a matrix representing the properties of the light source, and [B1, B2, B3] is the direction of the light source, that is, the light source vector. [C1, C2, C3] is the ambient light vector. Then, [A1, A2, A3] represents a light source effect. By using this light source effect, the color [D1, D2, D3] of the object can be obtained by the following equation shown as Equation 3.

【0038】[0038]

【数3】 この数3において、[E1,E2,E3]は物体の元の色、[F
1,F2,F3]はフォグの色、[D1,D2,D3]は求める物体の
色である。Pはスカラー値である。このフォグ効果を考
慮した物体の色の演算の場合には、各積和演算回路3
1、32、33は、赤R、緑G、青Bの色データを演算
することになる。
[Equation 3] In this equation 3, [E1, E2, E3] is the original color of the object and [F
[1, F2, F3] is the fog color, and [D1, D2, D3] is the color of the desired object. P is a scalar value. In the case of calculating the color of an object in consideration of the fog effect, each product-sum calculation circuit 3
1, 32, and 33 calculate color data of red R, green G, and blue B.

【0039】そして、この場合には、係数レジスタ31
〜33は、マトリクスと加算ベクトルの係数を 乗算器51用:係数(M11,M12,M13,E1) 乗算器52用:係数(M21,M22,M23,E2) 乗算器53用:係数(M31,M32,M33,E3) 加減算器61用:係数(C1,F1 ) 加減算器62用:係数(C2,F2 ) 加減算器63用:係数(C3,F3 ) のように保持する。そして、入出力レジスタ30には、
光源ベクトル[B1,B2,B3]が入力値として設定され、ま
た、演算結果の[A1,A2,A3]、[D1,D2,D3]が出力値と
して設定される。
In this case, the coefficient register 31
To 33 are the coefficients of the matrix and the addition vector For the multiplier 51: Coefficients (M11, M12, M13, E1) For the multiplier 52: Coefficients (M21, M22, M23, E2) For the multiplier 53: Coefficients (M31, M32, M33, E3) For adder / subtractor 61: coefficient (C1, F1) For adder / subtractor 62: coefficient (C2, F2) For adder / subtractor 63: coefficient (C3, F3) Then, in the input / output register 30,
The light source vector [B1, B2, B3] is set as an input value, and the calculation results [A1, A2, A3] and [D1, D2, D3] are set as output values.

【0040】[0040]

【発明の効果】以上説明したように、この発明によれ
ば、CPU内に専用演算部をハードウエアとして内蔵し
ているので、幾何演算をその専用演算部に実行させるこ
とにより、CPUの負荷を減らして、メインバス上でC
PU自身の計算機能を妨害しないようにすることができ
る。
As described above, according to the present invention, since the dedicated arithmetic unit is built in the CPU as hardware, the load on the CPU is reduced by causing the dedicated arithmetic unit to execute the geometric operation. Reduce and C on the main bus
It is possible not to disturb the calculation function of the PU itself.

【0041】したがって、このCPUを使用すれば、図
2のように、メインバスに対してラスタープロセッサを
接続する構成であっても、メインバス上のデータの輻輳
を少なくでき、高速処理が可能になる。このため、この
発明のCPUを用いることにより小型で描画機能の高い
グラフィック機器を作ることができる。
Therefore, by using this CPU, even if the raster processor is connected to the main bus as shown in FIG. 2, the congestion of the data on the main bus can be reduced and the high speed processing can be performed. Become. Therefore, by using the CPU of the present invention, it is possible to make a small graphic device having a high drawing function.

【図面の簡単な説明】[Brief description of drawings]

【図1】この発明によるCPUの一実施例のブロック図
である。
FIG. 1 is a block diagram of an embodiment of a CPU according to the present invention.

【図2】この発明の一実施例のCPUを用いた画像処理
システムの構成例を示す図である。
FIG. 2 is a diagram showing a configuration example of an image processing system using a CPU according to an embodiment of the present invention.

【図3】この発明によるCPUの一実施例の要部の構成
例を示す図である。
FIG. 3 is a diagram showing a configuration example of a main part of an embodiment of a CPU according to the present invention.

【図4】この発明によるCPUの他の実施例の要部の構
成例を示す図である。
FIG. 4 is a diagram showing a configuration example of a main part of another embodiment of the CPU according to the present invention.

【図5】画像描画処理手順の流れを示す図である。FIG. 5 is a diagram showing a flow of an image drawing processing procedure.

【図6】従来の画像処理システムの構成例を示す図であ
る。
FIG. 6 is a diagram showing a configuration example of a conventional image processing system.

【図7】従来の画像処理システムの他の構成例を示す図
である。
FIG. 7 is a diagram showing another configuration example of a conventional image processing system.

【符号の説明】[Explanation of symbols]

11 メインバス 12 CPU 13 メインメモリ 14 ラスタープロセッサ 15 ビデオRAM 21 CPU内部バス 30 入出力レジスタ 31〜33 積和演算回路 34 割算器 100 マトリクス演算器 11 Main Bus 12 CPU 13 Main Memory 14 Raster Processor 15 Video RAM 21 CPU Internal Bus 30 Input / Output Registers 31-33 Product Sum Operation Circuit 34 Divider 100 Matrix Operator

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 n×m(n,m≧2)の行列と、m次の
ベクトルとの乗算機能と、 n次のベクトルとn次のベクトルとの加減算機能と、 n次のベクトルとn次のベクトルとの項別乗算機能と、 n次のベクトルとスカラー値との乗算機能と、 スカラー値間の割算機能とを専用に実行する専用演算部
を備える中央演算処理装置。
1. A function of multiplying an n × m (n, m ≧ 2) matrix by an m-th vector, an addition / subtraction function of an n-th vector and an n-th vector, and an n-th vector and n A central processing unit provided with a dedicated arithmetic unit for exclusively performing a function of multiplying a next vector by terms, a function of multiplying an nth-order vector by a scalar value, and a function of dividing between scalar values.
【請求項2】 上記専用演算部をコプロセッサとして備
え、 上記専用演算部の上記の演算機能を組み合わせた演算
を、命令の1つとして実行するようにした請求項1に記
載の中央演算処理装置。
2. The central processing unit according to claim 1, wherein the dedicated arithmetic unit is provided as a coprocessor, and an arithmetic operation in which the arithmetic functions of the dedicated arithmetic unit are combined is executed as one of the instructions. .
【請求項3】 上記専用演算部をコプロセッサとして備
え、 上記専用演算部の上記の演算機能を組み合わせた演算
を、命令の組み合わせによって実行するようにした請求
項1に記載の中央演算処理装置。
3. The central processing unit according to claim 1, wherein the dedicated arithmetic unit is provided as a coprocessor, and an arithmetic operation in which the arithmetic functions of the dedicated arithmetic unit are combined is executed by a combination of instructions.
JP19076593A 1993-07-02 1993-07-02 Central processing unit Expired - Lifetime JP3618109B2 (en)

Priority Applications (16)

Application Number Priority Date Filing Date Title
JP19076593A JP3618109B2 (en) 1993-07-02 1993-07-02 Central processing unit
CA 2350844 CA2350844C (en) 1993-07-02 1994-06-29 Method and apparatus for producing a polygonal image representation through operation of plotting commands on image data
US08/267,678 US5850540A (en) 1993-07-02 1994-06-29 Method and apparatus for time-sharing CPU system bus in image generation system
CA 2350852 CA2350852C (en) 1993-07-02 1994-06-29 Method and apparatus for producing an image through operation of plotting commands on image data
CA002127053A CA2127053C (en) 1993-07-02 1994-06-29 Method and apparatus for time-sharing cpu system bus in image generation system
KR1019940015724A KR100380705B1 (en) 1993-07-02 1994-07-01 Image generation method and apparatus, game playback apparatus
DE69434014T DE69434014T2 (en) 1993-07-02 1994-07-01 DEVICE AND METHOD FOR IMAGING
EP02080384A EP1306808B1 (en) 1993-07-02 1994-07-01 Image data generation
MYPI94001718A MY111274A (en) 1993-07-02 1994-07-01 Image generating method and apparatus
DE69433988T DE69433988T2 (en) 1993-07-02 1994-07-01 imaging
EP94304855A EP0632407B1 (en) 1993-07-02 1994-07-01 Image data generation
DE69432385T DE69432385T2 (en) 1993-07-02 1994-07-01 imaging
EP02080385A EP1300800B1 (en) 1993-07-02 1994-07-01 Apparatus and method for image generation
TW083106106A TW378309B (en) 1993-07-02 1994-07-02 Method and device for generating image
US08/868,123 US6011564A (en) 1993-07-02 1997-06-03 Method and apparatus for producing an image through operation of plotting commands on image data
US08/868,124 US5784070A (en) 1993-07-02 1997-06-03 Method and apparatus for producing a polygonal image representation through operation of plotting commands on image data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19076593A JP3618109B2 (en) 1993-07-02 1993-07-02 Central processing unit

Publications (2)

Publication Number Publication Date
JPH0721155A true JPH0721155A (en) 1995-01-24
JP3618109B2 JP3618109B2 (en) 2005-02-09

Family

ID=16263356

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19076593A Expired - Lifetime JP3618109B2 (en) 1993-07-02 1993-07-02 Central processing unit

Country Status (1)

Country Link
JP (1) JP3618109B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000215028A (en) * 1998-10-06 2000-08-04 Texas Instr Inc <Ti> Multiplyer/accumulator unit
JP2001092663A (en) * 1999-09-17 2001-04-06 Sanyo Electric Co Ltd Data processor
JP2003515851A (en) * 1999-12-06 2003-05-07 エヌヴィディア Method, apparatus and product for a conversion module in a graphics processor
JP2009181293A (en) * 2008-01-30 2009-08-13 Yamaha Corp Matrix operation co-processor

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000215028A (en) * 1998-10-06 2000-08-04 Texas Instr Inc <Ti> Multiplyer/accumulator unit
JP2001092663A (en) * 1999-09-17 2001-04-06 Sanyo Electric Co Ltd Data processor
JP2003515851A (en) * 1999-12-06 2003-05-07 エヌヴィディア Method, apparatus and product for a conversion module in a graphics processor
JP2009181293A (en) * 2008-01-30 2009-08-13 Yamaha Corp Matrix operation co-processor

Also Published As

Publication number Publication date
JP3618109B2 (en) 2005-02-09

Similar Documents

Publication Publication Date Title
US6417858B1 (en) Processor for geometry transformations and lighting calculations
US4862392A (en) Geometry processor for graphics display system
US6014144A (en) Rapid computation of local eye vectors in a fixed point lighting unit
US5973705A (en) Geometry pipeline implemented on a SIMD machine
US20060250397A1 (en) Graphics processing unit and graphics processing system
US6037947A (en) Graphics accelerator with shift count generation for handling potential fixed-point numeric overflows
US20130093766A1 (en) Interpolation of vertex attributes in a graphics processor
US7466322B1 (en) Clipping graphics primitives to the w=0 plane
US6219062B1 (en) Three-dimensional graphic display device
US10818067B1 (en) GPU assist using DSP pre-processor system and method
US8259122B1 (en) System, method and article of manufacture for a programmable processing model with instruction set
US8681173B2 (en) Device, system, and method for improving processing efficiency by collectively applying operations
JP3338043B2 (en) Parallel arithmetic device, entertainment device, arithmetic processing method, computer program, semiconductor device
KR20010102977A (en) Method and apparatus for stretch blitting using a 3d pipeline
JPH0721155A (en) Central arithmetic processor
JP2001222712A (en) Image processor, convolutional integration circuit and method therefor
JPH11212955A (en) Arithmetic unit and image processor
US6885375B2 (en) Stalling pipelines in large designs
US6847378B2 (en) System and method for performing scale and bias operations by preclamping input image data
EP0410778A2 (en) Graphics processor having a floating point coprocessor
JP3102031B2 (en) 3D color image generation system and method using simulated light source
JP2007128180A (en) Arithmetic processing unit
JP3066060B2 (en) Polygonal approximation method for Besee curve section
JPH1063254A (en) Three dimensional graphics accelerator card, and computer system using the card
JPH11328438A (en) Method and device for high-efficiency floating-point z buffering

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040416

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041109

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071119

Year of fee payment: 3

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081119

Year of fee payment: 4

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091119

Year of fee payment: 5

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091119

Year of fee payment: 5

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101119

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111119

Year of fee payment: 7

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121119

Year of fee payment: 8

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121119

Year of fee payment: 8

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121119

Year of fee payment: 8

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121119

Year of fee payment: 8

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121119

Year of fee payment: 8

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121119

Year of fee payment: 8

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131119

Year of fee payment: 9

EXPY Cancellation because of completion of term