JPS59205674A - Matrix multiplication circuit for graphic display - Google Patents

Matrix multiplication circuit for graphic display

Info

Publication number
JPS59205674A
JPS59205674A JP7979783A JP7979783A JPS59205674A JP S59205674 A JPS59205674 A JP S59205674A JP 7979783 A JP7979783 A JP 7979783A JP 7979783 A JP7979783 A JP 7979783A JP S59205674 A JPS59205674 A JP S59205674A
Authority
JP
Japan
Prior art keywords
matrix
data
elements
ram2
area
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
JP7979783A
Other languages
Japanese (ja)
Other versions
JPH036547B2 (en
Inventor
Takaomi Tatemichi
立道 孝臣
Masato Takahashi
正人 高橋
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.)
Seiko Instruments Inc
Original Assignee
Seiko Instruments Inc
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 Seiko Instruments Inc filed Critical Seiko Instruments Inc
Priority to JP7979783A priority Critical patent/JPS59205674A/en
Priority to GB08411337A priority patent/GB2141847B/en
Priority to US06/607,420 priority patent/US4719588A/en
Publication of JPS59205674A publication Critical patent/JPS59205674A/en
Publication of JPH036547B2 publication Critical patent/JPH036547B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

PURPOSE:To improve the arithmetic speed by storing plural types of element matrices to an RAM for each element, giving a direct access to an area where a desired element is stored and reading out the element serially by a shift clock to omit the loading process to a shift register. CONSTITUTION:RAM2-17 having areas corresponding to matrix elements M11- M44 are provided to an element matrix data store part 1 to store the elements M11-M44. A high order address counter 18 which selects areas and a low order address counter 19 which reads out the data elements stored in the RAM2-17 are connected to these RAMs. While multipliers Kx-Kw which perform the multiplication of each pair are connected to the output sides of RAM2-17, and adders Nx-Nw are connected to the output sides of multipliers Kx-Kw respectively. Then a direct access is given to a desired area of RAM4-17 with the clock given from a clock signal source, the shift frequency setting signal of a data bus 21, etc. Then desired elements M11-M44 are read out. Thus the arithmetic speed is increased.

Description

【発明の詳細な説明】 本発明は、グラフィックディスプレイに適したシリアル
形式のマトリックス乗算回路に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a serial type matrix multiplication circuit suitable for graphic displays.

三次元グラフィックディスプレイは、第1図に示したよ
うに、ホストコンピュータから転送されてきた図形デー
タをキーボードやジョイステック等の入力機器Aからの
指令に応じて図形の拡大、縮小、回転、透視変換等を行
なってCRTに表示する装置である。この装置において
、第2図に示したように点P左 (X人 、Vc ’+
 Zえ )に位置t ル物体(t ヲ点PL+1(XL
+i + Yj+1 + Z;−+1)に移動させる場
合には、マトリックス乗算回路Cにより座標マトリック
スデータ[Xん 、yえ 、ZL 。
As shown in Figure 1, a three-dimensional graphic display enlarges, reduces, rotates, and performs perspective transformation of graphic data transferred from a host computer in response to commands from an input device A such as a keyboard or joystick. This is a device that performs these operations and displays the results on a CRT. In this device, as shown in Fig. 2, point P left (X person, Vc'+
position t object (t point PL+1(XL
+i + Yj+1 + Z; -+1), the matrix multiplier circuit C converts the coordinate matrix data [Xn, ye, ZL.

1′] と要素マトリックスUとの乗算、つまりアフィ
ン変換、 =  [x、、1. YL+1+ ”Lq+  ’ ]
により変換座標データマトリックスを求め、この点P 
の座標が画面からはみ出していないか、どうかをクリッ
プ回路りにより検定した後、直線発生器Eにより座標間
を補間するデータ信号を発生させ、これを画像メモリF
に格納してからプラウン管Gに直線近似の図形として表
示するように構成されている。
1′] by the element matrix U, that is, affine transformation, = [x,, 1. YL+1+ "Lq+ ']
Find the transformed coordinate data matrix by
After verifying with a clip circuit whether the coordinate of
The configuration is such that the image is stored in the Plumn tube G and then displayed as a straight-line approximation figure.

従来、このマトリックス乗算回路は、第3図に示したよ
うに各種の要素マトリックスを格納したスタックメモリ
Hから演算に必要とする要素マトリックスUをロード命
令(第4図m)により呼出し、各マトリックス要素Mi
jを一旦それぞれのシフトレジスタJll〜J44に格
納し、この各マトリックス要素Mjjをシフトクロック
(TV)によりシリアルデータに変換して乗数(V)と
して乗算器Kll〜に44に入力し、データバスLから
の座標マトリックス[x’j、yえ、z;−,1] を
被乗数としてシリアルに掛算を行なうように構成されて
いた。なお、図中符号N1−N4は、各列の乗算出力を
加算する加算器を、Pi−P4はへファレジスタをそれ
ぞれ示している。
Conventionally, as shown in FIG. 3, this matrix multiplication circuit uses a load instruction (m in FIG. 4) to call up the element matrix U required for the operation from the stack memory H storing various element matrices, and calculates each matrix element. Mi
j is temporarily stored in each of the shift registers Jll~J44, and each matrix element Mjj is converted into serial data by a shift clock (TV) and input as a multiplier (V) to the multiplier Kll~44, and the data bus L It was configured to perform serial multiplication using the coordinate matrix [x'j, y, z; -, 1] as the multiplicand. Note that in the figure, symbols N1 to N4 indicate adders that add the multiplication outputs of each column, and Pi to P4 indicate heifer registers, respectively.

ところで、スタックメモリは、格納データを頻繁に更新
する必要がある演算処理には非常に便利なメモリである
が、上述したように乗算の度にロード命令を介して乗数
をシフトレジスタに置数する必要があるため、乗算器へ
の乗数の入力に時間T(第4図m)を要し、1≠−夕当
りの演算時間が長くなるという問題がある。
By the way, stack memory is a very convenient memory for arithmetic processing that requires frequent updating of stored data, but as mentioned above, each time a multiplication is performed, the multiplier is placed in a shift register via a load instruction. As a result, it takes time T (m in FIG. 4) to input the multiplier to the multiplier, and there is a problem that the calculation time for 1≠−even becomes long.

他方、グラフィックディスプレイにおいては、乗数とな
る要素マトリックスUのデータ数が有限であり、しかも
要素マトリックスを格納しているメモリのデータを変更
する必要がないという特質がある。
On the other hand, a graphic display has the characteristic that the number of data in the element matrix U serving as a multiplier is finite, and there is no need to change the data in the memory storing the element matrix.

本発明はこのような特質に着目し、複数種の要素マトリ
ックスを要素毎にランダムアクセスメモリに格納して所
望のマトリックス要素が格納されている領域を直接アク
セスし、同時にこれをシフI・クロックによってシリア
ルに読出すことにより、シフトレジスタへのロードを省
略し、もって演算速度を向上させたマトリックス乗算回
路を提供することを目的とする。
Focusing on such characteristics, the present invention stores multiple types of element matrices element by element in a random access memory, directly accesses the area where the desired matrix element is stored, and simultaneously serializes it using a shift I clock. It is an object of the present invention to provide a matrix multiplication circuit which can omit loading into a shift register by reading the data into a matrix, thereby improving the calculation speed.

そこで、以下に本発明の詳細を図示した実施例  ゛に
基づいて説明する。
Therefore, the details of the present invention will be explained below based on illustrated embodiments.

第5図は、本発明の一実施例を示す回路のブロック図で
あって、図中符号lは、本発明の特−徹部分をなす要素
マトリックスデータ格納部で、マトリックス要素Mll
〜M44の個数、つまり16個のRAM2〜17を備え
、各RAMは、第6図に示したように64ビツトを1エ
リアとして64エリアに分割され、各RAMの同−二リ
アnには1つの要素マトリックスUnを構成するそれぞ
れのマトリックス要素データ[Mij]nを格納して6
4種類の要素マトリックスの読出しが可能となるように
構成されている。各RAMの出力側は各列の乗算を実行
する乗算器Kxll〜K x 44の乗数入力端子に接
続し、またアドレス端子は、エリアnを選択する上位ア
ドレス端子All・・・・A6とエリア内に格納されて
いる要素データ[Mij]nを読出す下位アドレス端子
A5・・・・AOの2群に分割され、各RAMの上位ア
ドレス端子All・・・・A6には、共通の上位アドレ
スカウンタ18の出力端子を、下位アドレス端子A5・
・・・AOには選択されたエリアnのデータ[Mij]
nをシリアルに読出す共通の下位アドレスカウンタ19
を接続して構成されている。20は、シフトカウンタで
、クロック信号源からのクロック信号とデータバス21
からのシフト回数紐定信号と、後述するアンドゲート2
2からの信号が入力し、スタート信号入力後、シフト回
数信号が入力すると、設定−1ト された個数のクロック信号を出力するまでイネーブル信
号を送出するように構成されている。22は、前述した
アンドゲートで、シフトカウンタ20からイネーブル信
号が出力されている期間だけシフトクロックを出力する
ように構成されている。なお図中符号Kxll〜Kw4
4は、データバス21からの座標データを被乗数とし、
要素マトリックスデータ格納部lからの乗数をシリアル
に掛算するための乗算器を、またNx−Nwは各乗算器
からの出力を加算してバッファレジスタPx〜Pwに出
力する加算器をそれぞれ示している。
FIG. 5 is a block diagram of a circuit showing an embodiment of the present invention, and reference numeral l in the figure represents an element matrix data storage unit which is a special feature of the present invention;
~M44, that is, 16 RAMs 2 to 17, each RAM is divided into 64 areas with 64 bits as one area, as shown in FIG. Each matrix element data [Mij]n constituting one element matrix Un is stored and 6
It is configured so that four types of element matrices can be read out. The output side of each RAM is connected to the multiplier input terminals of multipliers Kxll to Kx44 that execute multiplication of each column, and the address terminals are connected to the upper address terminals All...A6 that select area n and It is divided into two groups of lower address terminals A5...AO for reading element data [Mij]n stored in the RAM, and a common upper address counter is connected to the upper address terminals All...A6 of each RAM. 18 output terminal to the lower address terminal A5.
...AO contains the data of the selected area n [Mij]
Common lower address counter 19 that reads n serially
It is configured by connecting. 20 is a shift counter that receives a clock signal from a clock signal source and a data bus 21;
The shift count determination signal from , and the AND gate 2 described later.
When the signal from 2 is input, and after the start signal is input and the shift count signal is input, the enable signal is sent out until the number of clock signals set by -1 is output. Reference numeral 22 denotes the aforementioned AND gate, which is configured to output a shift clock only during the period when the enable signal is output from the shift counter 20. Note that the symbols Kxll to Kw4 in the figure
4 uses coordinate data from the data bus 21 as a multiplicand,
A multiplier for serially multiplying the multiplier from the element matrix data storage section l is shown, and Nx-Nw shows an adder for adding the outputs from each multiplier and outputting the result to the buffer registers Px to Pw. .

次に、このように構成した回路の動作を第7図に示した
タイミングチャートに基づいて説明する。
Next, the operation of the circuit configured as described above will be explained based on the timing chart shown in FIG.

キーボードからデータが入力すると下位アドレスカウン
タ19がクリアされ(第7図Iり、このデータに対応し
て必要とする特定の要素マトリックスUnがグラフィク
プロセッサによって選択される。これにより、この要素
マトリックスを構成するマトリ・ンクス要素1M1l]
n・・・・[M44コ nを格納しているRAM2〜1
7のエリアnのアドレスが上位アドレスカウンタ18に
設定される(m)。この時点において、シフトカウンタ
20から下位アドレスカウンタ19にシフトクロック(
IV)が出力し、選択されていた各RAM2〜17のエ
リアnのデータ[Mij]nをシフトクロックのタイミ
ングによって最下位ビットLSBから順番にシリアル形
式で読出し、それぞれに接続している乗算器K x 1
1〜Kw44の乗数入力端子に出力する(V)。他方、
゛この読出しに同期してデータバス21から乗算器Kx
ll〜Kw44の被乗数入力端子から入力して来るシリ
アル形式の座標データマトリックス[x 、 y 、 
z 、 l]とビット単位で乗算を行ない、各列要素の
乗算器群Kx〜Kwからの出力を加算器K x −K 
wにより加算してシフトレジスタPx−Pwに乗算結果
、つまり変換された座標データマトリックス[X、Y、
Z。
When data is input from the keyboard, the lower address counter 19 is cleared (see FIG. 7), and the graphics processor selects a specific required element matrix Un corresponding to this data. Matrix element 1M1l]
n... [M44 RAM 2 to 1 storing n
The address of area n of No. 7 is set in the upper address counter 18 (m). At this point, the shift clock (
IV), the data [Mij]n of the selected area n of each RAM 2 to 17 is read out in serial format starting from the least significant bit LSB according to the timing of the shift clock, and the multiplier K connected to each x 1
Output to the multiplier input terminal of 1 to Kw44 (V). On the other hand,
``Synchronizing with this readout, the multiplier Kx is sent from the data bus 21.
Serial format coordinate data matrix [x, y,
z, l] bit by bit, and the output from the multiplier groups Kx to Kw of each column element is added to the adder K x −K.
The multiplication result, that is, the converted coordinate data matrix [X, Y,
Z.

lコを出力する。Output 1.

なお、この実施例では、4行4列のマトリックスの乗算
に例を採って説明したが、m行m列のマトリックスを乗
数とする場合には、格納部を構成するRAM及び乗算器
をそれぞれm個ずつ設ければよい。
In this embodiment, the multiplication of a matrix of 4 rows and 4 columns was explained as an example, but when a matrix of m rows and m columns is used as a multiplier, the RAM and the multiplier constituting the storage section are each multiplied by m. You can set them up one by one.

以上、説明したように本発明によれば、要素マトリック
スのマトリックス要素の数に相当するRAMを設けて各
RAMを複数のエリアに分割し、各RAMの同一エリア
毎に1つの要素マトリックスを構成するマトリックス要
素を格納するとともに、必要とする要素マトリックスが
格納されているエリアをランダムアクセスによって選択
し、これをシリアルに読出すようにしたので、乗算器へ
の乗数の入力時間を大幅に短縮することができ、マトリ
ックス演算を高速度で行なうことができるばかりでなく
、シリアル変換用のシフトレジスタが不要となり、スペ
ース・パーフォマンスの向上と消費電力の低減を図るこ
とができる。
As described above, according to the present invention, RAMs corresponding to the number of matrix elements of an element matrix are provided, each RAM is divided into a plurality of areas, and one element matrix is configured for each same area of each RAM. In addition to storing the matrix elements, the area where the required element matrix is stored is selected by random access and read out serially, which greatly reduces the time required to input the multiplier to the multiplier. This not only allows matrix operations to be performed at high speed, but also eliminates the need for a shift register for serial conversion, improving space performance and reducing power consumption.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は、グラフィクデスプレイの一例を示すブロック
図、第2図は、図形の移動を示す説明図、第3図は、従
来のマトリックス乗算回路の一例を示す回路のブロック
図、第4図は、従来回路の動作を示すタイミング図、第
5図、本発明の一実施例を示す回路のブロック図、第6
図は、同上回路におけるRAMのデータエリアの構成を
示す概念図、第7図は、同上回路の動作を説明するタイ
ミング図である。 1・・・・要素マトリックスデータ格納部2〜17・・
・・RAM 18・・・・上位アドレスカウンタ 19・・・・下位アドレスカウンタ 出願人 株式会社 第二精工台。 代理人 弁理士 西 川 慶 冶 同 木村勝彦 第 l 口 す 第20 第3 目
FIG. 1 is a block diagram showing an example of a graphic display, FIG. 2 is an explanatory diagram showing movement of figures, FIG. 3 is a circuit block diagram showing an example of a conventional matrix multiplication circuit, and FIG. 4 is a block diagram showing an example of a conventional matrix multiplication circuit. , a timing diagram showing the operation of a conventional circuit, FIG. 5, and a block diagram of a circuit showing an embodiment of the present invention, FIG.
The figure is a conceptual diagram showing the structure of the data area of the RAM in the above circuit, and FIG. 7 is a timing diagram illustrating the operation of the above circuit. 1...Element matrix data storage section 2-17...
...RAM 18... Upper address counter 19... Lower address counter Applicant: Daini Seikodai Co., Ltd. Agent Patent Attorney Yasutoshi Nishikawa Katsuhiko Kimura No. 20 No. 3

Claims (1)

【特許請求の範囲】[Claims] m行m列のマトリックスの要素個数m2に相当するRA
Mをそれぞれ同一個数のエリアに区分し、同一エリア毎
に1つのマトリックスを構成する各要素データを格納し
た手段と、前記RAMの各エリアを上位アドレスにより
特定する手段と、該手段により特定されたエリアを下位
アドレスによりシリアルに読出す手段と、該手段により
読出されたデータを乗数にして被乗数とシリアル形式に
より乗算を行なう手段とからなるグラフインクディスプ
レイ用マトリックス乗算回路。
RA corresponding to the number of elements m2 of a matrix with m rows and m columns
means for dividing M into the same number of areas and storing each element data constituting one matrix for each same area; means for specifying each area of the RAM by an upper address; A matrix multiplication circuit for a graph ink display, comprising means for serially reading an area according to a lower address, and means for using the data read by the means as a multiplier and multiplying it by a multiplicand in a serial format.
JP7979783A 1983-05-06 1983-05-06 Matrix multiplication circuit for graphic display Granted JPS59205674A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP7979783A JPS59205674A (en) 1983-05-06 1983-05-06 Matrix multiplication circuit for graphic display
GB08411337A GB2141847B (en) 1983-05-06 1984-05-03 Matrix multiplication apparatus for graphic display
US06/607,420 US4719588A (en) 1983-05-06 1984-05-07 Matrix multiplication circuit for graphic display

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7979783A JPS59205674A (en) 1983-05-06 1983-05-06 Matrix multiplication circuit for graphic display

Publications (2)

Publication Number Publication Date
JPS59205674A true JPS59205674A (en) 1984-11-21
JPH036547B2 JPH036547B2 (en) 1991-01-30

Family

ID=13700202

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7979783A Granted JPS59205674A (en) 1983-05-06 1983-05-06 Matrix multiplication circuit for graphic display

Country Status (1)

Country Link
JP (1) JPS59205674A (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS51141558A (en) * 1975-05-31 1976-12-06 Toshiba Corp High speed processor of multi-dimensional data
JPS54120546A (en) * 1978-03-10 1979-09-19 Seiko Instr & Electronics Ltd Matrix multiplier circuit
JPS5642870A (en) * 1979-09-14 1981-04-21 Ricoh Co Ltd Picture processing system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS51141558A (en) * 1975-05-31 1976-12-06 Toshiba Corp High speed processor of multi-dimensional data
JPS54120546A (en) * 1978-03-10 1979-09-19 Seiko Instr & Electronics Ltd Matrix multiplier circuit
JPS5642870A (en) * 1979-09-14 1981-04-21 Ricoh Co Ltd Picture processing system

Also Published As

Publication number Publication date
JPH036547B2 (en) 1991-01-30

Similar Documents

Publication Publication Date Title
US4754421A (en) Multiple precision multiplication device
US4719588A (en) Matrix multiplication circuit for graphic display
US4635292A (en) Image processor
JPH0652530B2 (en) Vector processor
JP3740516B2 (en) Method and apparatus for generating a covariance matrix
JP2000148730A (en) Internal product vector arithmetic unit
CN212112470U (en) Matrix multiplication circuit
EP0474246A2 (en) Image signal processor
JPS59205674A (en) Matrix multiplication circuit for graphic display
JP3333779B2 (en) Matrix arithmetic unit
JP2583774B2 (en) High-speed numerical operation device
JPH06230964A (en) Computer equipped with cache memory
JPS6218595A (en) Display unit
JPS58151644A (en) Digital operating device
JP3441847B2 (en) Processor with data memory
JPS6162174A (en) Information processor
JPS62274426A (en) Coordinate converting device
JP3608207B2 (en) Parallel processing unit
JPS6211381B2 (en)
JPH0252302B2 (en)
JPH0223476A (en) Filtering processor
JPH01142934A (en) Information processing circuit
JPH03139773A (en) Digital image processor
JPH0340044A (en) Image memory system
JPH01321573A (en) Picture data converting circuit