JPS59165140A - Two-dimensional arithmetic circuit - Google Patents

Two-dimensional arithmetic circuit

Info

Publication number
JPS59165140A
JPS59165140A JP58039387A JP3938783A JPS59165140A JP S59165140 A JPS59165140 A JP S59165140A JP 58039387 A JP58039387 A JP 58039387A JP 3938783 A JP3938783 A JP 3938783A JP S59165140 A JPS59165140 A JP S59165140A
Authority
JP
Japan
Prior art keywords
data
circuit
arithmetic
memory
bus
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
JP58039387A
Other languages
Japanese (ja)
Other versions
JPH04300B2 (en
Inventor
Takeshi Masui
桝井 猛
Toshio Matsuura
松浦 俊夫
Naruaki Teraoka
寺岡 成晃
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 JP58039387A priority Critical patent/JPS59165140A/en
Publication of JPS59165140A publication Critical patent/JPS59165140A/en
Publication of JPH04300B2 publication Critical patent/JPH04300B2/ja
Granted 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)

Abstract

PURPOSE:To perform parallel arithmetic at a high speed on the basis of pipeline processing by providing a direct memory access mode wherein cyclic operation is performed while plural access operation timing points are regarded as one set. CONSTITUTION:An input buffer 41 is stored with data fetched from at least two memory areas. When data processing is performed, the data inputted to the circuit 41 synchronously with data fetched by direct memory access DMA is sent out to an arithmetic circuit 40 at the next timing. Further, the logical arithmetic part in the circuit 40 performs multinomial parallel progressive arithmetic among data set in plural registers, i.e. pipeline processing, and the result is stored in an output data buffer 42. This data is returned to the storage area of a general memory by using some of the access timing of an address generating circuit 43. Thus, DMA access control is performed to perform parallel arithmetic at a high speed.

Description

【発明の詳細な説明】 (分 野) 本発明は2次元演算回路に係り特に通常のデータ処理シ
ステムにおいて汎用のメモリに対シて汎用のバスインタ
フェースで接続可能であり内部ではパイプライン演算処
理が可能な2次元演算回路に関する。
[Detailed Description of the Invention] (Field) The present invention relates to a two-dimensional arithmetic circuit, and particularly to a two-dimensional arithmetic circuit that can be connected to a general-purpose memory using a general-purpose bus interface in a normal data processing system, and that performs pipeline arithmetic processing internally. This paper relates to a possible two-dimensional arithmetic circuit.

(従来技術) 従来のデータ処理システムにおいて通常のデータ処理は
ビットあるいはワード単位で汎用の計算機(以下CPU
と称す)の演算部で制御プログラムの手順に従っていわ
ゆるソフト的に行われて来たが、こうした汎用の演算処
理にとってかなり厄介で処理ステップと処理時間を要す
る演算処理としてベクトル間演算、あるいはマトリック
ス変換の様な変換マトリックス、あるいは逆マトリック
スを°求めるデータマトリックスとデータマトリックス
間の演算があり、汎用の処理方法では演算処理゛ステッ
プが2次元的に多くなり使用メモリの容量的には可能で
も通常、処理時間がかかりすぎるのでこうしたデータ処
理を行うには演算処理速度が早い大型のCPUを必要と
していた。
(Prior art) In conventional data processing systems, normal data processing is performed in bit or word units using a general-purpose computer (hereinafter referred to as CPU).
However, for such general-purpose arithmetic processing, vector-to-vector arithmetic processing or matrix conversion is a computation process that is quite troublesome and requires processing steps and processing time. There are calculations between data matrices and data matrices to obtain various transformation matrices or inverse matrices, and general-purpose processing methods require two-dimensionally more calculation steps, and although it is possible in terms of memory capacity, Since it takes too much time, a large-sized CPU with high processing speed is required to perform such data processing.

一方、こうした処理を専用に行うための専用のハードウ
ェアにより構成された専用のプロセッサも存在す、るが
こうしたプロセッサと構成メモリの間のインクフェース
は汎用のそれと異なるためメモリも特殊なものが必要と
なり1例えばミニコンマイコン等の主メモリとこうした
プロセッサを接続することは困難である。
On the other hand, there are also dedicated processors that are configured with dedicated hardware to specifically perform these processes, but the interface between these processors and the configuration memory is different from that of general-purpose ones, so special memory is also required. However, it is difficult to connect such a processor to the main memory of, for example, a minicomputer microcomputer.

(目的と特徴) 本発明の目的は上記にかんがみ汎用のメモリと汎用のバ
スを介して接続可能なインタフェースをもち、かつ内部
では並列演算をパイプライン処理にもとすいて高速して
実行出来る2次元演算回路を提供することにあり本発明
の特徴は上記目的を実現する手段として六スを介して計
算機に支配される高速演算モジュールを有し計算機より
、該バスに連結する記憶装置の複数の領域に格納された
データ同志を演算、転送する指令が発行された時。
(Purpose and Features) In view of the above, the object of the present invention is to have an interface that can be connected via a general-purpose memory and a general-purpose bus, and internally converts parallel operations into pipeline processing so that they can be executed at high speed. The feature of the present invention is to provide a dimensional arithmetic circuit as a means for realizing the above object, which has a high-speed arithmetic module controlled by a computer via a six bus, and a plurality of storage devices connected to the bus from the computer. When a command is issued to calculate and transfer data stored in an area.

複数のアクセス動作タイミングを1セントとしてサイク
リックに作動するダイレクトメモリーアクセスモードを
有し、上記1セントのタイミングの一つを選んで上記記
憶装置の複数の領域の一つから該領域のデータを取り込
みバッファに格納する手段と、こうして複数の領域から
取り込まれたデータ同志を演算する手段と、演算結果を
一時バッフ、アする手段と、上記タイミングの一つを選
択して上記演算結果を転送する手1段を有することであ
る。
It has a direct memory access mode that operates cyclically with multiple access operation timings as 1 cent, and selects one of the 1 cent timings to read data from one of the multiple areas of the storage device. A means for storing data in a buffer, a means for calculating the data taken in from multiple areas in this way, a means for temporarily buffering the result of the calculation, and a means for selecting one of the above timings to transfer the result of the calculation. It has one stage.

(実施例) 第1図乃至第10図は本発明の一実施例の説明図であり
、第1図はシステム構成、第2図は2次元演算回路にい
てパイプライン処理されるデータの流れを説明するもの
、第3図は2次元配列データの意味を説明するもの、第
4図は2次元演算の内容を説明するものであり、第5図
は第1図の2次元″演算回路のより詳細なブロック図、
第6図は第5図の補足図でバスを介して汎用メモリをア
クセスするデータアクセスサイクルの説明図、第7図は
第5図のアドレス発生回路の構成例、第8図は第5図の
入力データバソファ回路の構成例、第9図に第5図の出
力データバッファ回路の構成例。
(Embodiment) Figures 1 to 10 are explanatory diagrams of one embodiment of the present invention, where Figure 1 shows the system configuration and Figure 2 shows the flow of data that is pipelined in a two-dimensional arithmetic circuit. Fig. 3 explains the meaning of two-dimensional array data, Fig. 4 explains the contents of two-dimensional operations, and Fig. 5 shows a more detailed explanation of the two-dimensional operation circuit shown in Fig. 1. detailed block diagram,
Figure 6 is a supplementary diagram to Figure 5, and is an explanatory diagram of a data access cycle that accesses general-purpose memory via a bus. Figure 7 is an example of the configuration of the address generation circuit in Figure 5. An example of the configuration of the input data buffer circuit, and FIG. 9 shows an example of the configuration of the output data buffer circuit of FIG.

第10図は第5図の演算回路の構成例を夫々示すもので
ある。
FIG. 10 shows an example of the configuration of the arithmetic circuit shown in FIG. 5, respectively.

なお9図中1は汎用インタフェースのパスライン、2は
汎用プロセッサ、3は汎用メモリ、4は2次元演算回路
、でla、lb、Icはそれぞれバスを詳細定義したデ
ータバス、アドレスバス。
In Figure 9, 1 is a general-purpose interface pass line, 2 is a general-purpose processor, 3 is a general-purpose memory, 4 is a two-dimensional arithmetic circuit, and la, lb, and Ic are data buses and address buses, respectively, which define the buses in detail.

制御バス、40〜44は上記演算回路4の内部構成を詳
細定義したもので40は多要素のデータを並列演算する
演算回路、41は入力データバッファ、42は出力デー
タバッファ、43はアドレス発生回路、44はバス制御
回路。
Control bus 40 to 44 are detailed definitions of the internal configuration of the arithmetic circuit 4, 40 is an arithmetic circuit that performs parallel operations on multi-element data, 41 is an input data buffer, 42 is an output data buffer, and 43 is an address generation circuit. , 44 is a bus control circuit.

第1図における2次元演算回路は、汎用バスのインクフ
ェースでバス1を介して、プロセッサ2あるいはメモリ
3と結合され互いにアクセス可能に構成されておりプロ
セッサ2より汎用メモリ3上例えば先頭アト゛レス10
0o番よりはじまる領域Aのデータと、先頭アドレス2
000番より始まる領域Bのデータを順次取り出して該
データ同志で演算し、演算結集をこの場合メモリに戻す
転送として、先頭アドレス3000番より始まる領域C
に転送する処理命令が発行されたとすると2次元演算回
路4はプロセッサ2より各アクセス領域の大きさ、各先
頭アドレス、転送先、転送領域の大きさ、転送先の先頭
アドレス等を受取ったあと、各データの取込み、転送を
1セツトの複数のタイミングの夫々で行いながら、順次
各データの取込みと転送を周期的に繰り返し実行すると
言ういわゆる複数のアクセス動作をセットとしてサイク
リックに作動するダイレクトメモリアクセス(以下DM
Aと通称す)を行う。    ゛第5図、第6図にもと
ずき、その手続の概要を説明すると入力バッファ41に
は第8図の412と41bの様に先の例にもとずくと少
くとも二つのメモリの領域から別の取り込みのタイミン
グに従っそ取り込んだ別群のデータかたくわえられ順次
演算回路40に供給して演算結果を出力データバッファ
42あるいは42a、42bにたくゎえ転送タイミング
をまって転送を行う。なをこうした領域の先頭アドレス
の記憶、順次DMAでサイクリックにモードを切り替え
る作業アクセスを繰り返す作業データをアクセスするた
めのアドレスのカウントアツプする作業はすべてアドレ
ス発生回路43で行いバス制御回路44は連動してバス
の送受モードを切り替えている。
The two-dimensional arithmetic circuit in FIG. 1 is connected to the processor 2 or the memory 3 via the bus 1 at the ink face of the general-purpose bus, and is configured to be mutually accessible.
Data of area A starting from number 0o and start address 2
Data in area B starting from number 000 is sequentially retrieved, calculations are performed on the data, and the calculation result is transferred back to memory in this case.
Suppose that a processing instruction to transfer is issued, the two-dimensional arithmetic circuit 4 receives from the processor 2 the size of each access area, each start address, the transfer destination, the size of the transfer area, the start address of the transfer destination, etc. Direct memory access that operates cyclically as a set of so-called multiple access operations, in which each data is fetched and transferred at each of a set of multiple timings, and each data is fetched and transferred cyclically and repeatedly. (DM below)
(commonly referred to as A).゛Based on Figures 5 and 6, the outline of the procedure will be explained.Based on the previous example, the input buffer 41 has at least two memories, as shown in 412 and 41b in Figure 8. Another group of data taken from the area according to the timing of another reading is stored and sequentially supplied to the arithmetic circuit 40, and the calculation results are stored in the output data buffer 42 or 42a, 42b, and transferred after waiting for the transfer timing. . The address generating circuit 43 performs all operations such as storing the start address of such an area, sequentially switching modes cyclically using DMA, and counting up the addresses for accessing the work data, and the bus control circuit 44 works in conjunction. to switch the bus transmission/reception mode.

こうして組み込まれたデータの処理作業の流れを概説す
るとこうしたDMAによるデータの取込みと同期して入
力データ八ソファ41のレジスタ41a、41’bに取
込まれたデータは2次のタイミングでは演算回路40に
送出し該回路40の内部構成を成す論理演算部400に
対する2次元入力データ群をセットするシフトレジスタ
412〜40eと40f〜40iに夫々シフトバッファ
を形成する1行バッファ401〜404と405〜40
8を介してデータをセントしながら該セットデータをも
とに論理演算部400で例えばシフトレジスタ40a〜
40eにセットされたデータとシフトレジスタ40f〜
40iにセントされたデータ間の多項並行進行演算、い
わゆるパイプライン処理う行わせ結果を0UTDATA
1.あるいは0tJTDATA2を介して取り出し出力
データ八ソファ42のレジスタ4.2 aあるいは42
bにたくわえるとともにたくわえているデータを先のダ
イレクトメモリアクセスを行うアドレス発生回路43の
アクセスタイミングのいづれかを用いてデータバスを介
してメモリ3の格納領域に戻してやる。以上がデータの
流れの概要であり、以下これを実現するデータのアドレ
スを指定しての取り込み、バッファレジスタ群へのセン
ト、メモリ3へのアドレスを指定しての転送を機能上並
行に同時進行的に行わせるタイミングとアドレス指定に
よる手順制御についてより詳しく補足する。
To outline the flow of processing work of the data incorporated in this way, the data captured in the registers 41a, 41'b of the input data eight sofa 41 in synchronization with the data capture by DMA is transferred to the arithmetic circuit 40 at the secondary timing. One line buffers 401 to 404 and 405 to 40 form shift buffers in shift registers 412 to 40e and 40f to 40i, respectively, for setting a two-dimensional input data group to the logic operation unit 400 forming the internal configuration of the circuit 40.
8, and based on the set data, the logic operation unit 400 inputs the data through the shift registers 40a to 40a.
Data set in 40e and shift register 40f~
The result of multinomial parallel processing between data sent to 40i, so-called pipeline processing, is sent to 0UTDATA.
1. Or take out the output data via 0tJTDATA2 and register 4.2a of 8 sofa 42 or 42
At the same time, the stored data is returned to the storage area of the memory 3 via the data bus using one of the access timings of the address generation circuit 43 that performs the previous direct memory access. The above is an overview of the data flow, and below, to achieve this, data is fetched by specifying the address, sent to the buffer register group, and transferred to memory 3 by specifying the address, which are functionally performed simultaneously in parallel. We will provide more details on the timing and procedural control based on address specification.

第2図で説明する様にアドレス発生回路43とハス制御
回路44の協彷により2次元演算回路ではメモリ3から
2次元配列のデータをいくつか取り込″み、該データ間
ω演算処理によって生じた2次元配列のデータを再びメ
モリ3に転送するものであり、ここで言う2次元配−列
データとは第3図あるいは第4図の入力側に示す様に行
2列の形の配列位置アドレスX、Yによって定義された
領域に夫々メモリ3からのデータを取り込んで形成され
るデータマトリックスであり、2次元演算とはせまくは
こうしたマトリックス間の演算により出力マトリックス
を作成する処理を意味する。
As explained in FIG. 2, the two-dimensional arithmetic circuit takes in some two-dimensional array data from the memory 3 due to the cooperation between the address generation circuit 43 and the hash control circuit 44, and the data generated by the ω arithmetic processing between the data is The data in the two-dimensional array is transferred to the memory 3 again, and the two-dimensional array data referred to here is the array position in the form of two rows and two columns as shown on the input side of Figure 3 or Figure 4. It is a data matrix formed by loading data from the memory 3 into areas defined by addresses X and Y, respectively, and two-dimensional operation, at the very least, means processing for creating an output matrix by calculation between such matrices.

第6図にアドレス発生回路43とバス制御回路44まわ
りのモードと制御タイミングを示すがノマスライン1に
対する2次元演算回路4によるデータ転送(取り込み、
送出)要求のタイミングは例えばMOD1〜4のタイミ
ングに4分割されており、リードライトモード信号によ
り図ではMODElと2をメモリからのリードタイミン
グ、3と4をメモリ等外部への送出(書込み)タイミン
グに割り当てている。そして転送制御上にはこの分割さ
れ、リードライトモードに割り振られたここで言うと4
サイクルが1セツトとして一内部命令で作動する様構成
されるそしてメモリ3に対してデータを要求するときに
はバスのタイミングに合わせて制御バスを介してリード
アクセス、アドレスバスを介して要求さるデータのアド
レスを指定し、読み出されてデータバスを介して到着し
たデータを着信毎に入力データ八ソファ41に浸け、・
次々と内部タイミングに従って転送し4て演算回路40
のシフトレジスタにセントし9次々とパイプライン演算
し、結果を次々と出力バッファ42に受け、この化カバ
ソファ42のデータを先の書込タイミングの期間に、格
納すべきアドレスを付けてメモリ3に転送する。なをメ
モリ3の書込み。
FIG. 6 shows the mode and control timing around the address generation circuit 43 and the bus control circuit 44. Data transfer (intake,
For example, the timing of the request (sending) is divided into four timings for MOD1 to MOD4, and according to the read/write mode signal, in the figure, MODEL and 2 are the read timings from the memory, and MODELs 3 and 4 are the timings for sending (writing) to external devices such as memory. is assigned to. Then, on the transfer control, this division is performed, and in this case, 4
It is configured so that each cycle operates with one internal instruction as one set, and when data is requested from the memory 3, read access is performed via the control bus in accordance with the bus timing, and the address of the requested data is accessed via the address bus. is specified, and the data that is read out and arrives via the data bus is immersed in the input data 8 sofa 41 for each incoming call.
The data is transferred one after another according to the internal timing to the arithmetic circuit 40.
The data in the conversion buffer 42 is stored in the memory 3 with the address to be stored during the previous write timing period. Forward. Write to memory 3.

読出し領域はプロセッサ2で管理されておりアドレス発
生回路43は当然処理命令にしたがい、その支配下で仕
事をしているものである。
The read area is managed by the processor 2, and the address generation circuit 43 naturally works under its control in accordance with processing instructions.

、なをメモリ3から2次元データマトリックスとりして
おればデータマトリックスの1行分、あるいは1列分で
ある必要がないか2次元配列データとして演算回路40
の入力データセント部であるはない。
, etc. If the two-dimensional data matrix is taken from the memory 3, it is not necessary to use one row or one column of the data matrix.
There is no input data center.

まだパイプラインで処理される演算内容自体も特に指定
するものではない。なをアドレス発生回路43の動作を
第7図をもとに説明するとこの回路はプロセッサ2から
の取込領域と転送領域に関する指令にもとづき、データ
のDMAを実行するタイミングとアドレス制御を行う部
分であって。
The contents of the operations to be processed in the pipeline are not yet specified. The operation of the address generation circuit 43 will be explained based on FIG. 7. This circuit is a part that controls the timing and address for executing data DMA based on commands regarding the capture area and transfer area from the processor 2. There it is.

この図では4タイミングサイクルで1セントになってお
り夫々のタイミングサイクルでのアドレス発行を行うた
めのカウンタ41〜43諌もち、1セツト中いくつのタ
イミングでアクセスを動作させるかを指定するFF43
Cによって1サイクル中の使用されるアクセスモー1数
がデータバスを介してプロセッサ2から指定される様に
なっており、サイクリックモードを順次進行させるため
のクロックCLKによってサイクリックに歩進して順次
カウンタ431〜43昼こアドレスデータを取り込むタ
イミングによるカウンタの選択を指示するためのサイク
リックカウンタ43e、サイクリックカウンタの値のこ
こでは4つの値へのデコーダ43d、先0FF43Cの
値と対比してカウンタ選択信号(■ネーブル信号)を作
るゲー)43fの1〜4アドレスバス信号のデコーダ4
3b、結果としての発行アドレスをバスにのせるための
マルチプレクサ432等より成り、まずプロセッサ2か
らアクセス処理指令があり、データバスを介して使用タ
イミングモード数1例えばここでは3モードで第1が領
域Aからのデータ取込み第2が領域Bからのデータ取込
み、第3が領域Cへのデータ転送とすると、F F 4
3 cの三つの出力をセントし、カウンタ43eをリセ
ットし次の一クロックタイミングでアドレスバスよりタ
イミングを指定し。
In this figure, 4 timing cycles equal 1 cent, and there are counters 41 to 43 to issue addresses in each timing cycle, and an FF 43 to specify at which timing in one set access is to be performed.
The number of access modes used in one cycle is specified by the processor 2 via the data bus by C, and the number of access modes used in one cycle is cyclically incremented by the clock CLK for sequentially advancing the cyclic modes. Sequential counters 431-43: cyclic counter 43e for instructing counter selection according to the timing of taking in address data; decoder 43d converts the value of the cyclic counter into four values here; Decoder 4 for the 1 to 4 address bus signals of 43f (game that creates the counter selection signal (■ enable signal))
3b, it consists of a multiplexer 432 etc. for putting the resulting issued address on the bus, and first there is an access processing command from the processor 2, and the number of timing modes to be used is 1. If the second data acquisition from A is data acquisition from area B, and the third is data transfer to area C, F F 4
3 Cent the three outputs of c, reset the counter 43e, and specify the timing from the address bus at the next clock timing.

データバスより領域の先頭アドレスを次々と送って来る
。そしてこうして送って来られた先頭アドレスが夫々カ
ウンタ431. 432. 433にセットされるとと
もに、マルチプレクサ43aを介してメモリをDMAで
アクセスするためのアクセス要求アト″レスをアドレス
バスを介して次々と所定のタ −イミノジでメモリに発
行してゆく、そしてデータバスを介してメモリから入力
データバッファ41aあるいは41bにデータが着信す
るたびに着信したデータが領有していたアドレス分上記
カウンタ43+、43zの値をカウントアツプするし、
出力データバソファ42から所定のタイミングここては
第3のタイミングにのせて出力データの二転送ブロック
がメモリに転送されるたびごとに該転送→゛ロツク領有
しているアドレス分カウンタ433の値をカウントアツ
プしてゆくことにより夫々所定のタイミングをとらえて
指定された領域骨のデータを各領域のアドレス順に順次
取込み、順次処理し、順次指定された領域に書き込むパ
イプラインデータ処理が汎用のデータバスを介して実行
さ゛れる。なをサイクリックモードはここでは最大4サ
イクルで説明したが必要に応じて8サイ・タル等に拡大
することが出来、こうした場合三元入力以ある。
The start address of the area is sent one after another from the data bus. Then, the first addresses sent in this way are respectively stored in the counter 431. 432. 433, the multiplexer 43a issues an access request address for accessing the memory by DMA to the memory one after another at a predetermined timing via the address bus, and the data bus is Each time data arrives from the memory to the input data buffer 41a or 41b, the counters 43+ and 43z are incremented by the address occupied by the received data.
Every time two transfer blocks of output data are transferred to the memory from the output data buffer 42 at a predetermined timing, here, at the third timing, the value of the counter 433 corresponding to the address that owns the transfer is changed. Pipeline data processing is a general-purpose data bus in which the data of the specified area bone is taken in sequentially in the order of the address of each area at a predetermined timing by counting up, sequentially processed, and sequentially written to the specified area. It is executed via. Although the cyclic mode has been described here with a maximum of 4 cycles, it can be expanded to 8 cycles, etc., if necessary, and in such a case, more than ternary input is required.

(効 果) 以上説明した様に本発明によればサイクリックに動作す
る複数モードのDMAアクセス制御をそなえることによ
りパイプライン処理演算を行う演算回路と汎用のバスと
の間でインタフェースを取りながらパイプラインの処理
が実行出来るので汎用のプロセッサで特殊な処理だけ早
くしようとする希望があるとき2例えば小型のOCR装
置で図形認識等を行いたい場合等にきわめて有効な特徴
を発揮するものである。
(Effects) As explained above, according to the present invention, by providing multiple modes of DMA access control that operate cyclically, pipe processing can be performed while interfacing between an arithmetic circuit that performs pipeline processing operations and a general-purpose bus. Since it can perform line processing, it is an extremely effective feature when there is a desire to speed up only special processing with a general-purpose processor (2), for example, when a small OCR device is desired to perform figure recognition, etc.

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

第1図乃至第10図は本発明の一実施例の説明図であり
、第1回はシステム構成、第2図は2次元演算回路にお
いてパイプライン処理されるデータの流れを説明するも
の、第3図は2次元配列データの意味を説明するもの、
第4図は2次元演算の内容を説明するものであり、第5
図は第1図の2次元演算回路のより詳細なブロック図、
第6図は第5図の補足図でバスを介して汎用メモリをア
クセスするデータアクセスサイクルの説明図、第7図は
第5図のアドレス発生回路の構成例、第8図は第5図の
入力データバソファ回路の構成例。 第9図は第5図の出力データバソファ回路の構成例、第
10図は第5図の演算回路の構成例を夫々示すものであ
る。 なを図中、1は汎用インタフェースのパスライン、2は
汎用プロセッサ、3は汎用メモリ、4は2次元演算回路
。 茅、l 図 を 茅? 口 □ ス (hJIlrd畏) 1m 芽3 図 1−J −1−1− v 4図
1 to 10 are explanatory diagrams of one embodiment of the present invention, the first part is a system configuration, the second part is a diagram explaining the flow of data pipelined in a two-dimensional arithmetic circuit, and the first part is an explanatory diagram of an embodiment of the present invention. Figure 3 explains the meaning of two-dimensional array data.
Figure 4 explains the contents of the two-dimensional calculation, and Figure 5
The figure is a more detailed block diagram of the two-dimensional arithmetic circuit in Figure 1.
Figure 6 is a supplementary diagram to Figure 5, and is an explanatory diagram of a data access cycle that accesses general-purpose memory via a bus. Figure 7 is an example of the configuration of the address generation circuit in Figure 5. Configuration example of input data bath sofa circuit. 9 shows an example of the configuration of the output data bath sofa circuit of FIG. 5, and FIG. 10 shows an example of the configuration of the arithmetic circuit of FIG. 5. In the figure, 1 is a general-purpose interface path line, 2 is a general-purpose processor, 3 is a general-purpose memory, and 4 is a two-dimensional arithmetic circuit. Kaya, l Figure Kaya? Mouth (hJIlrd) 1m Bud 3 Figure 1-J -1-1- v Figure 4

Claims (1)

【特許請求の範囲】[Claims] バスを介して計算機に支配される高速演算モジュールを
有し、計算機より、該バスに連結する記憶装置の複数の
領域に格納されたデータ同志を演算、転送する指令が発
行された時、複数のアクセス動作タイミングを1セツト
としてサイクリックに作動するダイレクトメモリーアク
セスモードを有し、上記1セツトのタイミングの一つを
選んで上記記憶装置の複数の領域の一つから該領域のデ
ータを取り込みバッファに格納する手段と、こうして複
数の領域から取り込まれたデータ同志を演算する手段と
、演算結果を一時バツファする手段と、上記タイミング
の一つを選択して上記演算結果を転送する手段を有する
ことを特徴とする2次元演算回路。
It has a high-speed calculation module controlled by a computer via a bus, and when the computer issues a command to calculate and transfer data stored in multiple areas of a storage device connected to the bus, multiple It has a direct memory access mode that operates cyclically with one set of access operation timings, and selects one of the one set of timings to fetch data from one of the plurality of areas of the storage device and store it in the buffer. A method for storing data, a means for calculating the data taken in from a plurality of areas, a means for temporarily buffering the result of the calculation, and a means for selecting one of the timings and transferring the result of the calculation. Features a two-dimensional calculation circuit.
JP58039387A 1983-03-10 1983-03-10 Two-dimensional arithmetic circuit Granted JPS59165140A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58039387A JPS59165140A (en) 1983-03-10 1983-03-10 Two-dimensional arithmetic circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58039387A JPS59165140A (en) 1983-03-10 1983-03-10 Two-dimensional arithmetic circuit

Publications (2)

Publication Number Publication Date
JPS59165140A true JPS59165140A (en) 1984-09-18
JPH04300B2 JPH04300B2 (en) 1992-01-07

Family

ID=12551589

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58039387A Granted JPS59165140A (en) 1983-03-10 1983-03-10 Two-dimensional arithmetic circuit

Country Status (1)

Country Link
JP (1) JPS59165140A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63201822A (en) * 1987-02-13 1988-08-19 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン Data processing system
JPS6474617A (en) * 1987-09-17 1989-03-20 Tsukuba Univ Floating-point arithmetic system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS49100938A (en) * 1972-10-10 1974-09-24
JPS54127235A (en) * 1978-03-27 1979-10-03 Toshiba Corp Direct memory access unit
JPS5543525A (en) * 1978-09-22 1980-03-27 Hitachi Ltd Photosensitive device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS49100938A (en) * 1972-10-10 1974-09-24
JPS54127235A (en) * 1978-03-27 1979-10-03 Toshiba Corp Direct memory access unit
JPS5543525A (en) * 1978-09-22 1980-03-27 Hitachi Ltd Photosensitive device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63201822A (en) * 1987-02-13 1988-08-19 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン Data processing system
JPS6474617A (en) * 1987-09-17 1989-03-20 Tsukuba Univ Floating-point arithmetic system

Also Published As

Publication number Publication date
JPH04300B2 (en) 1992-01-07

Similar Documents

Publication Publication Date Title
CN107301455B (en) Hybrid cube storage system for convolutional neural network and accelerated computing method
JPH0778825B2 (en) Image processing processor
JPS6131502B2 (en)
US11269796B2 (en) Acceleration control system based on binarization algorithm, chip, and robot
EP0409285B1 (en) Method and apparatus for data transfer between processor elements
CN110674927A (en) Data recombination method for pulse array structure
CN114359662B (en) Implementation method of convolutional neural network based on heterogeneous FPGA and fusion multi-resolution
CN114092338B (en) Image zooming fast calculation method
US6272583B1 (en) Microprocessor having built-in DRAM and internal data transfer paths wider and faster than independent external transfer paths
CN116431562B (en) Multi-head attention mechanism fusion calculation distribution method based on acceleration processor
JPS59165140A (en) Two-dimensional arithmetic circuit
EP0939374A2 (en) Processor for information processing equipment and control method
CN115328832A (en) Data scheduling system and method based on PCIE DMA
CN101794276B (en) Discrete cosine transform (DCT)-inverse discrete cosine transform (IDCT) coprocessor suitable for system on chip (SOC)
JPS60205760A (en) Memory controller
JP2008102599A (en) Processor
JPH0664606B2 (en) Image processing device
JP2577071B2 (en) Digital signal processor
CN112418419B (en) Data output circuit structure processed by neural network and scheduled according to priority
JP2643116B2 (en) Main memory controller
JP2730013B2 (en) Method and apparatus for transferring coordinate data
CN118627565A (en) Configurable convolution operation accelerating device and method based on systolic array
JPH10326258A (en) Data arithmetic system and method therefor
CN112835513A (en) Control data read-write device and method
JPS6349984A (en) Picture processor