JPH05233679A - Parallel data processor - Google Patents
Parallel data processorInfo
- Publication number
- JPH05233679A JPH05233679A JP4000064A JP6492A JPH05233679A JP H05233679 A JPH05233679 A JP H05233679A JP 4000064 A JP4000064 A JP 4000064A JP 6492 A JP6492 A JP 6492A JP H05233679 A JPH05233679 A JP H05233679A
- Authority
- JP
- Japan
- Prior art keywords
- input
- register
- bit
- data
- processor
- 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
Links
Landscapes
- Multi Processors (AREA)
- Complex Calculations (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、並列データ処理装置に
関し、特にビットシリアルプロセッサを用いた場合にス
ループットの速い総和加算を行なう並列処理プロセッサ
に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a parallel data processor, and more particularly to a parallel processor for performing summation addition with high throughput when a bit serial processor is used.
【0002】[0002]
【従来の技術】一般に、画像処理分野において、高速処
理を行なう場合、図3に示すように、一画面の各画素毎
にプロセッサ(プロセッサアレイ部)を用意し、全画素
の演算処理を同時に行なうことがある。図において、2
0は入力端子、21は入力インタフェース部、22はプ
ロセッサアレイ部、23は出力インタフェース部、24
は出力端子である。2. Description of the Related Art Generally, in the field of image processing, when high-speed processing is performed, a processor (processor array section) is prepared for each pixel of one screen and arithmetic processing of all pixels is performed simultaneously, as shown in FIG. Sometimes. In the figure, 2
0 is an input terminal, 21 is an input interface unit, 22 is a processor array unit, 23 is an output interface unit, 24
Is an output terminal.
【0003】このような構成においてよく用いられる演
算処理として、フィルタリング、行列計算等があるが、
その場合、各プロセッサ要素(以下PEという)の総和
加算が行なわれる。Filtering, matrix calculation, etc. are often used as arithmetic operations in such a configuration.
In that case, the summation addition of each processor element (hereinafter referred to as PE) is performed.
【0004】従来、この様な総和加算は、図4に示すよ
うな構成で行なわれていた。ここでは、総和加算として
図3のプロセッサアレイの1行分の加算を行なう場合と
する。図中、101〜10Nは各々PEを示し、111
〜11Nは総和をとる各PEの値を保持しているレジス
タ、121〜12NはALU(算術演算ユニット)を示
し、ここでは全加算器として働く。131〜13Nは桁
上げ値を保持するレジスタ、141〜14Nは桁上げ出
力端子,151〜15Nは桁上げ入力端子である。各P
Eに保持されているデータをa0 a1 〜an ,b0 b1
…bn ,…,d0 d1 …dn とする。この各値の添字0
〜nがLSB〜MSBに対応する。Conventionally, such total sum addition has been performed with a configuration as shown in FIG. Here, it is assumed that addition for one row of the processor array of FIG. 3 is performed as total addition. In the figure, 101 to 10N each represent PE, and 111
.About.11N are registers holding the value of each PE that sums up, and 121 to 12N are ALUs (arithmetic operation units), which function as full adders here. Reference numerals 131 to 13N are registers for holding a carry value, 141 to 14N are carry output terminals, and 151 to 15N are carry input terminals. Each P
The data held in E is set to a 0 a 1 to a n , b 0 b 1
... b n , ..., d 0 d 1 ... d n . Subscript 0 of each value
~ N corresponds to LSB to MSB.
【0005】次にこの回路の動作を説明する。レジスタ
111〜11Nは、動作クロックの1クロック毎にシフ
トしALU121〜12Nにデータが入力される。先ず
1回目のクロックでデータa0 ,b0 ,c0 ,…,d0
が各PEのALU121〜12Nに入力され、隣接する
ALUの出力(加算結果の同じ桁の値)と加算される。Next, the operation of this circuit will be described. The registers 111 to 11N shift every operation clock, and the data is input to the ALUs 121 to 12N. First data a 0 in the first round of the clock, b 0, c 0, ... , d 0
Is input to the ALU 121 to 12N of each PE, and is added to the output of the adjacent ALU (the value of the same digit of the addition result).
【0006】PE101の入力は隣接するPEがないた
め0とa0 である。PE102ではPE101の加算結
果とb0 が加算され、PE103ではPE102の加算
結果とC0 が加算される。同様の動作が全PEで行なわ
れ、PE10NのALUの出力として総和加算のLSB
が出力される。この時各PEのレジスタ131〜13N
には、LSB+1ビット目の桁に相当する値が桁上げ値
として保持される。The inputs of PE 101 are 0 and a 0 because there is no adjacent PE. The PE 102 adds the addition result of the PE 101 and b 0 , and the PE 103 adds the addition result of the PE 102 and C 0 . The same operation is performed in all PEs, and the LSB of the sum addition is output as the output of the ALU of PE 10N.
Is output. At this time, the registers 131 to 13N of each PE
Holds a value corresponding to the digit of the LSB + 1st bit as a carry value.
【0007】次に、2回目のクロックでデータa1 ,b
1 ,c1 ,…,d1 が各PEのALUに入力され、隣接
するALUの出力及びレジスタ131〜13Nに保持さ
れた桁上げ値との加算が行なわれる。この結果、PE1
0NのALUの出力として総和加算のLSB+1ビット
目の値が出力される。各PEのレジスタ131〜13N
にはLSB+2ビット目の桁に相当する値が桁上げ値と
して保持される。Next, at the second clock, the data a 1 , b
1 , c 1 , ..., D 1 are input to the ALU of each PE, and the addition of the output of the adjacent ALU and the carry value held in the registers 131 to 13N is performed. As a result, PE1
As the 0N ALU output, the value of the LSB + 1th bit of the sum addition is output. Registers 131 to 13N of each PE
Holds a value corresponding to the digit of LSB + 2nd bit as a carry value.
【0008】以上の動作を繰り返して実行し、n回目の
クロックでデータan ,bn ,cn,…,dn の加算が
行なわれ、PE10Nからnビット目の加算結果がレジ
スタ16に出力される。この時点で各PEのレジスタ1
31〜13Nにはn+1ビット目の値が保持されてお
り、n+1回目以降のクロックでは入力レジスタ111
〜11Nからの値は0を送り、レジスタ131〜13N
の値の加算をN−1回のクロック期間で実行する。した
がって、n+N−1回のクロック期間で総和加算が終了
する。The above operation is repeatedly executed, the data a n , b n , c n , ..., D n are added at the n-th clock, and the addition result of the n-th bit is output from the PE 10N to the register 16. To be done. Register 1 of each PE at this point
The values of the (n + 1) th bits are held in 31 to 13N, and the input register 111 is held at the (n + 1) th and subsequent clocks.
The value from ~ 11N sends 0, and registers 131 ~ 13N
The value of is added in N-1 clock periods. Therefore, the sum addition is completed in n + N-1 clock periods.
【0009】[0009]
【発明が解決しようとする課題】この従来のビットシリ
アル型並列プロセッサによる総和加算においては、各桁
の値を各々1回のクロック期間で計算できるため高速に
処理できるが、各PEのレジスタは計算期間中に次の計
算の値を入力することができない。あるいは次の計算の
ためのレジスタを余分に持つことが必要となる。In the summation addition by the conventional bit serial type parallel processor, the value of each digit can be calculated at a high speed because it can be calculated in one clock period, but the register of each PE can be calculated. You cannot enter a value for the next calculation during the period. Alternatively, it is necessary to have an extra register for the next calculation.
【0010】一方、リアルタイム画像処理においては、
入力画像データが耐え間なく入力されてくるため、前の
処理を待つことができない。したがって、この方法で
は、計算期間中次の計算データを保持するバッファレジ
スタ31〜3Nが必要となり、ハード規模が大きくなる
という欠点があった。On the other hand, in real-time image processing,
Since the input image data is input without endurance, the previous processing cannot be waited for. Therefore, this method requires the buffer registers 31 to 3N for holding the next calculation data during the calculation period, which has a drawback of increasing the hardware scale.
【0011】本発明の目的は、このような欠点を除き、
バッファレジスタを半減し、ハードウェア小型化した並
列データ処理装置を提供することにある。The object of the present invention is to eliminate these drawbacks.
It is an object of the present invention to provide a parallel data processing device in which the buffer register is halved and the hardware is downsized.
【0012】[0012]
【課題を解決するための手段】本発明の並列データ処理
装置の構成は、一方の入力を入力データレジスタに接続
し、もう一方の入力を入力端子に接続し、桁上げ出力を
1ビットのレジスタを介して桁上げ入力に接続した全加
算器から成るプロセッサ要素を複数個配設し、これらプ
ロセッサ要素のうち隣接するプロセッサ要素の間は、一
方のプロセッサ要素の前記全加算器の加算出力端子と、
他方のプロセッサ要素の入力端子とを1ビットレジスタ
を介して接続する構成により、入力データを各タイムス
ロットで隣接するプロセッサ要素に順次に入力するよう
にしたことを特徴とする。The parallel data processor of the present invention has a structure in which one input is connected to an input data register, the other input is connected to an input terminal, and a carry output is a 1-bit register. A plurality of processor elements each of which is composed of a full adder connected to a carry input via the processor are provided, and between adjacent processor elements among these processor elements, an addition output terminal of the full adder of one processor element is provided. ,
It is characterized in that the input terminal of the other processor element is connected via a 1-bit register so that input data is sequentially input to the adjacent processor element in each time slot.
【0013】[0013]
【実施例】図1は本発明の一実施例のビットシリアル型
並列プロセッサの総和加算を求める場合のブロック図で
ある。図4の従来例と同様の機能のブロックは同じ記号
で示してある。本実施例では、従来例に対して各PE1
01〜10Nの出力値を保持するレジスタ171,17
2,…を加えることによって従来例におけるレジスタ3
1〜3Nを不要としたことを特徴とする。DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 is a block diagram of a bit serial type parallel processor according to an embodiment of the present invention for obtaining the sum addition. Blocks having the same functions as those in the conventional example shown in FIG. 4 are indicated by the same symbols. In this embodiment, each PE1 is different from the conventional example.
Registers 171 and 17 for holding output values of 01 to 10N
By adding 2, ..., Register 3 in the conventional example
It is characterized in that 1 to 3 N are unnecessary.
【0014】本実施例の動作を説明するため、データ数
を「4」,ビット数を「6」とした時の各PEのレジス
タの内容を図2に示す。まず、クロック1において、入
力データはPE101のレジスタ111に入力される。
次に、クロック2において、入力データはPE102の
レジスタ112に入力される。ALU121においてa
0 (LSB)と0が加えられ、結果がレジスタ171に
保持される。これと同時にALU122においてクロッ
ク2におけるレジスタ171の値とb0 (LSB)が加
算され、結果がレジスタ172に保持され、桁上げ値が
レジスタ132に保持される。To explain the operation of this embodiment, the contents of the registers of each PE when the number of data is "4" and the number of bits is "6" are shown in FIG. First, at clock 1, input data is input to the register 111 of the PE 101.
Next, at clock 2, the input data is input to the register 112 of the PE 102. A in the ALU121
0 (LSB) and 0 are added, and the result is held in the register 171. At the same time, the value of the register 171 at clock 2 and b 0 (LSB) are added in the ALU 122, the result is held in the register 172, and the carry value is held in the register 132.
【0015】次に、クロック4において、入力データは
PE104のレジスタ114に入力される。ALU12
1においてa2 (LSB+2ビット目)と0が加えら
れ、結果がレジスタ171に保持されると同時にALU
122においてクロック3におけるレジスタ171の値
とb1 (LSB+1ビット目)が加算され、結果がレジ
スタ172に保持され桁上げ値がレジスタ132に保持
される。同時に、ALU123においてクロック3にお
けるレジスタ172の値とc0 (LSB)が加算され、
結果がレジスタ173に保持され、桁上げ値がレジスタ
133に保持される。同様の操作をクロック4,クロッ
ク5…と繰り返し行なう。Next, at clock 4, the input data is input to the register 114 of the PE 104. ALU12
A 2 (LSB + 2 bit) and 0 is added in 1, at the same time the result is held in the register 171 ALU
At 122, the value of the register 171 at clock 3 and b 1 (LSB + 1st bit) are added, the result is held in the register 172, and the carry value is held in the register 132. At the same time, in the ALU 123, the value of the register 172 at clock 3 and c 0 (LSB) are added,
The result is held in the register 173, and the carry value is held in the register 133. The same operation is repeated for clock 4, clock 5 ...
【0016】クロック5において、4つのデータのLS
Ba0 ,b0 ,c0 ,d0 の加算結果がALU124か
ら出力され、クロック6においてLSB+1ビット目が
出力され、順次に加算結果がLSBが順番に出力され
る。クロック7において、レジスタ111のデータが無
くなり、次の入力データが入力され、クロック1から動
作に戻ることになる。この例の場合、データ数よりもビ
ット数が多いため、クロック5,クロック6においてデ
ータを入力できなくなるので、バッファを設ける必要が
あるが、通常画像データ処理においてはデータ数の方が
多いためバッファは必要ない。At clock 5, LS of four data
The addition result of Ba 0 , b 0 , c 0 , d 0 is output from the ALU 124, the LSB + 1st bit is output at the clock 6, and the addition result is output LSB in sequence. At clock 7, the data in the register 111 is lost, the next input data is input, and the operation returns from clock 1. In the case of this example, since the number of bits is larger than the number of data, the data cannot be input at the clock 5 and the clock 6, so it is necessary to provide a buffer. Is not necessary.
【0017】以上の説明から、入力データの加算結果が
出るまでの絶対時間は従来例よりも長くかかるが、ビッ
ト毎のパイプライン処理となるため、全体のスループッ
トは従来例と変らないことになる。From the above description, the absolute time until the addition result of the input data is obtained is longer than that of the conventional example, but since the pipeline processing is performed for each bit, the overall throughput is the same as that of the conventional example. ..
【0018】[0018]
【発明の効果】以上説明したように本発明は、ビットシ
リアル型並列プロセッサで総和加算を求める場合に、各
PE間に加算結果を保持するレジスタを設け、入力デー
タを各PE毎に時間的にビットシフトして入力すること
により、従来時間的に同時に全PEにデータを入力して
いた場合に対し、演算のスループットを変えずに入力レ
ジスタを半分に減らすことができるという効果を有す
る。As described above, according to the present invention, when a bit-serial type parallel processor is used to calculate the sum addition, a register for holding the addition result is provided between each PE, and the input data is temporally set for each PE. The bit-shifted input has an effect that the number of input registers can be reduced to half without changing the throughput of the operation as compared with the conventional case where data is input to all PEs simultaneously in terms of time.
【図1】本発明の一実施例のブロック図。FIG. 1 is a block diagram of an embodiment of the present invention.
【図2】図1の実施例の動作を説明するデータフロー
図。FIG. 2 is a data flow diagram illustrating the operation of the embodiment of FIG.
【図3】従来例の装置構成を説明するブロック図。FIG. 3 is a block diagram illustrating a device configuration of a conventional example.
【図4】図3の総和加算を行う場合のブロック図。FIG. 4 is a block diagram in the case of performing summation addition of FIG.
101〜10N プロセッサ要素 111〜11N 入力データレジスタ 121〜12N ALU 131〜13N 桁上げ保持レジスタ 141〜14N 桁上げ出力端子 151〜15N 桁上げ入力端子 16 出力データレジスタ 171〜17(N−1) 加算出力保持レジスタ 20 データ入力端子 21 入力インタフェース 22 プロセッサアレイ 23 出力インタフェース 24 データ出力端子 31〜3N 第2の入力データレジスタ 101 to 10N Processor element 111 to 11N Input data register 121 to 12N ALU 131 to 13N Carry hold register 141 to 14N Carry output terminal 151 to 15N Carry input terminal 16 Output data register 171 to 17 (N-1) Addition output Holding register 20 Data input terminal 21 Input interface 22 Processor array 23 Output interface 24 Data output terminal 31 to 3N Second input data register
Claims (1)
し、もう一方の入力を入力端子に接続し、桁上げ出力を
1ビットのレジスタを介して桁上げ入力に接続した全加
算器から成るプロセッサ要素を複数個配設し、これらプ
ロセッサ要素のうち隣接するプロセッサ要素の間は、一
方のプロセッサ要素の前記全加算器の加算出力端子と、
他方のプロセッサ要素の入力端子とを1ビットレジスタ
を介して接続する構成により、入力データを各タイムス
ロットで隣接するプロセッサ要素に順次に入力するよう
にしたことを特徴とするビットシリアル型並列データ処
理装置。1. A processor comprising a full adder having one input connected to an input data register, the other input connected to an input terminal, and a carry output connected to a carry input through a 1-bit register. A plurality of elements are provided, and between the adjacent processor elements among these processor elements, an addition output terminal of the full adder of one processor element,
Bit serial parallel data processing characterized in that input data is sequentially input to adjacent processor elements in each time slot by a configuration in which the input terminal of the other processor element is connected via a 1-bit register. apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4000064A JPH05233679A (en) | 1992-01-06 | 1992-01-06 | Parallel data processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4000064A JPH05233679A (en) | 1992-01-06 | 1992-01-06 | Parallel data processor |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05233679A true JPH05233679A (en) | 1993-09-10 |
Family
ID=11463766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4000064A Withdrawn JPH05233679A (en) | 1992-01-06 | 1992-01-06 | Parallel data processor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05233679A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011107972A (en) * | 2009-11-17 | 2011-06-02 | Fujitsu Ltd | Summation calculation method and numeric arithmetic device |
-
1992
- 1992-01-06 JP JP4000064A patent/JPH05233679A/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011107972A (en) * | 2009-11-17 | 2011-06-02 | Fujitsu Ltd | Summation calculation method and numeric arithmetic device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6754805B1 (en) | Method and apparatus for configurable multi-cell digital signal processing employing global parallel configuration | |
CN108073549B (en) | Convolution operation device and method | |
EP0227406B1 (en) | Image signal processor | |
US5600582A (en) | Programmable horizontal line filter implemented with synchronous vector processor | |
EP0281132B1 (en) | Vector calculation circuit capable of rapidly carrying out vector calculation of three input vectors | |
JPH1091780A (en) | Convolution device and convolution execution method | |
JP2002297377A (en) | Simd-type microprocessor having sorting function | |
JPH03121530A (en) | Circuit device for calculating sum of products | |
JPH0812693B2 (en) | Digital signal filter circuit | |
WO2024108801A1 (en) | Tensor calculation unit and use method, and data processing apparatus and operation method | |
JPH05233679A (en) | Parallel data processor | |
JP3639014B2 (en) | Signal processing device | |
JPH0566043B2 (en) | ||
JP2864597B2 (en) | Digital arithmetic circuit | |
JP3553376B2 (en) | Parallel image processor | |
JP3120435B2 (en) | Digital arithmetic circuit | |
WO2021035715A1 (en) | Data processing method and device | |
Bilal et al. | Low Complexity Parallel FIR Filter Circuit Design by Exploiting Signal Correlation in Multimedia Applications | |
JPH0619799B2 (en) | High-speed Fourier converter | |
JP3612950B2 (en) | Arithmetic apparatus and method | |
JPH02111115A (en) | Digital picture filter | |
JPH1083381A (en) | Signal processor | |
KR960005103B1 (en) | Digit serial multiplier | |
JPH05303556A (en) | Parallel data processor | |
Baghaie et al. | An efficient new systolic architecture for the solution of discrete Fourier transform |
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: 19990408 |