JPH03262076A - 並列データ処理装置 - Google Patents
並列データ処理装置Info
- Publication number
- JPH03262076A JPH03262076A JP2061636A JP6163690A JPH03262076A JP H03262076 A JPH03262076 A JP H03262076A JP 2061636 A JP2061636 A JP 2061636A JP 6163690 A JP6163690 A JP 6163690A JP H03262076 A JPH03262076 A JP H03262076A
- Authority
- JP
- Japan
- Prior art keywords
- data
- arithmetic
- calculation
- fourier transform
- fast fourier
- 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.)
- Pending
Links
Landscapes
- Multi Processors (AREA)
- Complex Calculations (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[産業上の利用分野]
この発明は高速フーリエ変換を高速に実行するために、
該変換のバタフライ演算後のピットリバース処理を行う
を行う並列データ処理装置に関するものである。
該変換のバタフライ演算後のピットリバース処理を行う
を行う並列データ処理装置に関するものである。
[従来の技術]
高速フーリエ変換とは次式で示す離散的フーリエ変換式
を高速に演算するもので、サンプル値f (kl と回
転子W″′の乗算、およびΣに対する加減算回数を大幅
に減少させたものである。
転子W″′の乗算、およびΣに対する加減算回数を大幅
に減少させたものである。
第15図は2ポイントの高速フーリエ変換におけるバタ
フライ演算を図示したものである。図において・ (3
4)はx+y 、 O(351は(x−y) W’を演
算するものとする。全ての高速フーリエ変換はこの2ポ
イントのバタフライ演算に帰着できる。
フライ演算を図示したものである。図において・ (3
4)はx+y 、 O(351は(x−y) W’を演
算するものとする。全ての高速フーリエ変換はこの2ポ
イントのバタフライ演算に帰着できる。
以下16ポイントの高速フーリエ変換の場合を例として
述べる。
述べる。
第16図は第15図の記述法にしたがって16ポイント
の高速フーリエ変換のバタフライ演算を記述したもので
ある。
の高速フーリエ変換のバタフライ演算を記述したもので
ある。
16ポイント高速フーリエ変換の場合、各要素に付いて
βOgJ・4回のバタフライ演算を行えば良く、同図に
おいて演算順序を第1段(36) 、第2段(371、
第3段(38) 、第4段(39)とする。
βOgJ・4回のバタフライ演算を行えば良く、同図に
おいて演算順序を第1段(36) 、第2段(371、
第3段(38) 、第4段(39)とする。
第17図は従来の並列データ処理装置における第1図の
バタフライ演算を示したものであり、 (40)は演算
要素を示す。
バタフライ演算を示したものであり、 (40)は演算
要素を示す。
従来の並列データ処理装置は上記のように構成され、第
16図のように第1段から第4段まで加減。
16図のように第1段から第4段まで加減。
算および乗算を繰り返すことによりバタフライ演算を並
列に行う。
列に行う。
マタ、ハタフラーr演算の結果f(n) (n4xa
X2 XIxol、[]は2進数表現)は[Xo X+
Xz Xs]の順に格納され、演算要素平面上では第
18図のように格納される。これを元の位置に並びかえ
る処理をビットリバースと呼ぶが、従来の並列データ処
理装置では同図のように演算要素平面のアドレスが左右
対称でない行、または列についてその単位毎に入れ換え
を行うため、これだけでは1行・列が逆に格納される。
X2 XIxol、[]は2進数表現)は[Xo X+
Xz Xs]の順に格納され、演算要素平面上では第
18図のように格納される。これを元の位置に並びかえ
る処理をビットリバースと呼ぶが、従来の並列データ処
理装置では同図のように演算要素平面のアドレスが左右
対称でない行、または列についてその単位毎に入れ換え
を行うため、これだけでは1行・列が逆に格納される。
そこで、転置行列を求めることにより高速フーリエ変換
を並列に処理する。
を並列に処理する。
[発明が解決しようとする課題]
上記のような従来の並列データ処理装置では。
次に示す点から必ずしも高速な処理が可能ではない。
■)処理した結果が行方向のデータと列方向のデータが
逆に格納されてしまうため9本来不必要な転置行列を求
める処理を施さないとフーリエ変換の結果が得られない
。
逆に格納されてしまうため9本来不必要な転置行列を求
める処理を施さないとフーリエ変換の結果が得られない
。
2)サンプル数が正方行列にならないと転置行列を求め
るのが困難である。
るのが困難である。
3)除算機能がないため離散的フーリエ変換式の17N
に相当する演算が困難である。
に相当する演算が困難である。
従来の並列データ処理装置では上記の欠点が存在するた
め、必ずしも高速な処理ができないという問題点があっ
た。
め、必ずしも高速な処理ができないという問題点があっ
た。
この発明はかかる課題を解決するためになされたもので
、高速に高速フーリエ変換を実行することができる並列
データ処理装置を得ることを目的とする。
、高速に高速フーリエ変換を実行することができる並列
データ処理装置を得ることを目的とする。
[課題を解決するための手段]
この発明に係るデータ処理装置は、四則演算機能を有す
る演算手段と記憶手段と与えられた命令を実行する実行
制御手段とを有する複数の演算要素が、互いに隣接する
要素間でデータ転送するためのデータ転送ラインにより
2次元状に相互接続された演算アレイにおいて、各演算
要素に1つまたは2つ以上のデータを対応させこれらの
データに対し行単位及び列単位に2のべき乗だけ離れた
要素間でデータを転送するとともに、各々の演算要素内
での加減乗算を制御して高速フーリエ変換のバタフライ
演算を行い、上記演算の終了後に各要素内のデータを所
定の行・列に入れ換えることによりピットレバース処理
を行う手段を備えたものである。
る演算手段と記憶手段と与えられた命令を実行する実行
制御手段とを有する複数の演算要素が、互いに隣接する
要素間でデータ転送するためのデータ転送ラインにより
2次元状に相互接続された演算アレイにおいて、各演算
要素に1つまたは2つ以上のデータを対応させこれらの
データに対し行単位及び列単位に2のべき乗だけ離れた
要素間でデータを転送するとともに、各々の演算要素内
での加減乗算を制御して高速フーリエ変換のバタフライ
演算を行い、上記演算の終了後に各要素内のデータを所
定の行・列に入れ換えることによりピットレバース処理
を行う手段を備えたものである。
[作用]
この発明においては各演算要素においてバタフライ演算
を並列して同時に行い、上記演算後のデータを所定の行
・列に入れ換えているから、転置行列を求める処理が不
要になり、高速フーリエ変換が実行できる。
を並列して同時に行い、上記演算後のデータを所定の行
・列に入れ換えているから、転置行列を求める処理が不
要になり、高速フーリエ変換が実行できる。
[実施例]
第1図はこの発明の位置実施例を示す構成図であり、(
1)は演算要素、(2)は演算要素固有のデータを格納
するメモリ、(3)は四則演算を行うALU、(41は
演算命令を制御する制御装置、 f51 。
1)は演算要素、(2)は演算要素固有のデータを格納
するメモリ、(3)は四則演算を行うALU、(41は
演算命令を制御する制御装置、 f51 。
(61、f71 、 f8)は各々の演算要素から見て
上。
上。
下、左、右の方向の演算要素にデータ転送するデータ転
送ラインである。
送ラインである。
上記のように構成された並列データ処理装置においては
、 16ポイントの高速フーリエ変換を例にとると、従
来通りバタフライ演算を行った結果第2図のように各演
算要素上にデータが並ぶ。
、 16ポイントの高速フーリエ変換を例にとると、従
来通りバタフライ演算を行った結果第2図のように各演
算要素上にデータが並ぶ。
まず、同図で(9)と (lO)及び(illと(12
)の部分を入れ換え第3図のように配置する。図中の数
時はf (nlの値を示す。この手段は、第4図のよう
に左半分(13)の演算要素上のデータだけを1行上方
向に転送し、第5図のように(14)及び(15)の部
分、すなわち1行おきに2列右方向に転送し、第6図の
ように左半分(16)を1行下方向に転送する。
)の部分を入れ換え第3図のように配置する。図中の数
時はf (nlの値を示す。この手段は、第4図のよう
に左半分(13)の演算要素上のデータだけを1行上方
向に転送し、第5図のように(14)及び(15)の部
分、すなわち1行おきに2列右方向に転送し、第6図の
ように左半分(16)を1行下方向に転送する。
次に、この結果すなわち第7図で(17)と(18)及
び (19)と (20)の部分を入れ換えることによ
りビットリバース処理が完了する。この手順は。
び (19)と (20)の部分を入れ換えることによ
りビットリバース処理が完了する。この手順は。
第9図のように1列おきの演算要素(21)及び(22
)だけを2行分上方向にデータ転送し、第1O図のよう
に上半分(23)を1列右方向に転送子、第11図のよ
うに (24)及び(25)の部分、すなわち1列おき
に2行下方向に転送する。以上の手順で第8図のように
ビットリバース処理が完了する。
)だけを2行分上方向にデータ転送し、第1O図のよう
に上半分(23)を1列右方向に転送子、第11図のよ
うに (24)及び(25)の部分、すなわち1列おき
に2行下方向に転送する。以上の手順で第8図のように
ビットリバース処理が完了する。
以上は正方行列の場合を考えたが、一般に高速フーリエ
変換で扱うサンプル数は2のべき乗である。すなわち 2″・2′″・21 (nは偶数) 2″・21・21・2 (nは奇数)であり、正方行
列でない場合は必ず2対1の長方行列であることがわか
る。この例を32ポイントの高速フーリエ変換の場合に
ついて述べる。
変換で扱うサンプル数は2のべき乗である。すなわち 2″・2′″・21 (nは偶数) 2″・21・21・2 (nは奇数)であり、正方行
列でない場合は必ず2対1の長方行列であることがわか
る。この例を32ポイントの高速フーリエ変換の場合に
ついて述べる。
バタフライ演算の結果は第12図のように格納される。
(26)と(27)及び(28)と (29)の部分
を入れ換え第13図のように配置し、 (30)と(
31)及び(32)と(33)の部分を入れ換えて第1
4図のようになりビットリバース処理が完了する。
を入れ換え第13図のように配置し、 (30)と(
31)及び(32)と(33)の部分を入れ換えて第1
4図のようになりビットリバース処理が完了する。
この手順は16ポイントの場合と同様であり、以下のよ
うになる。
うになる。
l)第12図において1列数の2分の1を境にその左側
、すなわち左半分の演算要素上のデータを1行上に転送
する。
、すなわち左半分の演算要素上のデータを1行上に転送
する。
2)1行おきの演算要素について列数の2分の1を境に
左右のデータを入れ換える。
左右のデータを入れ換える。
3)列数の2分の1を境にその左側の演算要素上のデー
タを1行下に転送する。この結果第13図のように配置
される。
タを1行下に転送する。この結果第13図のように配置
される。
4)第13図において9列数の4分の1おきの演算要素
について2行だけ上方向に転送する。
について2行だけ上方向に転送する。
5)2行おきの演算要素について9列数の2分の1ごと
の組をさらに2分の1に切り、これを中心としてその各
々左右のデータを入れ換える。
の組をさらに2分の1に切り、これを中心としてその各
々左右のデータを入れ換える。
6)列数の4分の1おきの演算要素について2行だけ下
方向に転送する。
方向に転送する。
ところで上記説明では、この発明の並列データ処理装置
を16ポイント及び32ポイントの高速フーリエ変換す
る場合について述べたが、2のべき乗の一般的にサンプ
ル数の高速フーリエ変換でも。
を16ポイント及び32ポイントの高速フーリエ変換す
る場合について述べたが、2のべき乗の一般的にサンプ
ル数の高速フーリエ変換でも。
列数の2・分の1おきの演算要素について2・−1行だ
け上方向に転送し、2”行おきの演算要素について列数
の2″−1のl毎の各組の2分の1に切りこれを中心と
して左右のデータを入れ換え9列数の2゜分の1おきの
演算要素について2′−1行だけ下方向に転送し、 i
=1からi=βOgznまで繰り返すことにより利用で
きる。
け上方向に転送し、2”行おきの演算要素について列数
の2″−1のl毎の各組の2分の1に切りこれを中心と
して左右のデータを入れ換え9列数の2゜分の1おきの
演算要素について2′−1行だけ下方向に転送し、 i
=1からi=βOgznまで繰り返すことにより利用で
きる。
[発明の効果]
この発明は以上説明したとおり、複数個の演算要素を2
次元状に相互接続し同時に動作させ9行単位及び列単位
に転送、演算を行うといった簡単な方法により、高速フ
ーリエ変換が高速に実行できる並列データ処理装置が得
られるといった効果がある。
次元状に相互接続し同時に動作させ9行単位及び列単位
に転送、演算を行うといった簡単な方法により、高速フ
ーリエ変換が高速に実行できる並列データ処理装置が得
られるといった効果がある。
第1図はこの発明の一実施例を示す並列データ処理装置
の構成図、第2図は上記発明の一実施例による16ポイ
ント高速フーリエ変換のバタフライ演算後のデータ配置
及び入れ変えるデータの組を示す図、第3図は第2図の
結果を示す図、第4図は第2図から第3図に導くための
1番目の手順を示す図、第5図は同じく2番目の手順を
示す図。 第6図は同じく3番目の手順を示す図、第7図は第3図
の状態からビットリバース処理を完了するために入れ換
えるべきデータの組を示す図、第8図は上記処理が完了
した状態を示す図、第9図は第7図から第8図に導くた
めの1番目の手順を示す図、第10は同じく2番目の手
順を示す図、第11図は同じく3番目の手順を示す図、
第12図は上記発明の一実施例による32ポイント高速
フーリエ変換の場合のバタフライ演算後のデータ配置及
び入れ換えるべきデータの組を示す図、第13図は第1
2図で示したデータの組を入れ換えた結果及び最終的に
入れ換えるべきデータの組を示す図、 第14図は16
ポイント高速フーリエ変換のバタフライ演算アルゴリズ
ムを示す図、第17図は従来の並列データ処理装置にお
ける第1段目のバタフライ演算の手順を示す図、第18
図は上記従来の並列データ処理装置に置けるビットリバ
ース処理の手順を示す図である。 図においては)は演算要素、(2)はメモリ(記憶手段
) 、 13)はALU (四則演算手段)、(4)
は制御装置(実行制御手段) 、 f51 、 (61
、(71。 (8)はデータ転送ライン、 (91,flO) 、
fill。 (12)は入れ換えるデータの組、 (13) 、
(14) 。 (15) 、 +161は移動する部分、 f17
) 、 f18)。 (191、(20)は入れ換えるデータの組、 (21
)。 (221、+231. +241 、+251は移動す
る部分、 (261゜(27]、 (281,(291
、+301. (311,(32)、 +331は入れ
換えるデータの組、 (341は)(+yの演算を示
す符号、 (35)はfx−y) 11’の演算を示
す符号。 (36) 、 f37)、 (381、+391は1
6ポイント高速フーリエ変換のバタフライ演算の第1段
目、第2段目、第3段目、第4段目、 (401は演算
アレイ。 (41)、 +42+は演算アレイのアドレスである
。 なお、各図中同一符号は同一または相当部分を示す。
の構成図、第2図は上記発明の一実施例による16ポイ
ント高速フーリエ変換のバタフライ演算後のデータ配置
及び入れ変えるデータの組を示す図、第3図は第2図の
結果を示す図、第4図は第2図から第3図に導くための
1番目の手順を示す図、第5図は同じく2番目の手順を
示す図。 第6図は同じく3番目の手順を示す図、第7図は第3図
の状態からビットリバース処理を完了するために入れ換
えるべきデータの組を示す図、第8図は上記処理が完了
した状態を示す図、第9図は第7図から第8図に導くた
めの1番目の手順を示す図、第10は同じく2番目の手
順を示す図、第11図は同じく3番目の手順を示す図、
第12図は上記発明の一実施例による32ポイント高速
フーリエ変換の場合のバタフライ演算後のデータ配置及
び入れ換えるべきデータの組を示す図、第13図は第1
2図で示したデータの組を入れ換えた結果及び最終的に
入れ換えるべきデータの組を示す図、 第14図は16
ポイント高速フーリエ変換のバタフライ演算アルゴリズ
ムを示す図、第17図は従来の並列データ処理装置にお
ける第1段目のバタフライ演算の手順を示す図、第18
図は上記従来の並列データ処理装置に置けるビットリバ
ース処理の手順を示す図である。 図においては)は演算要素、(2)はメモリ(記憶手段
) 、 13)はALU (四則演算手段)、(4)
は制御装置(実行制御手段) 、 f51 、 (61
、(71。 (8)はデータ転送ライン、 (91,flO) 、
fill。 (12)は入れ換えるデータの組、 (13) 、
(14) 。 (15) 、 +161は移動する部分、 f17
) 、 f18)。 (191、(20)は入れ換えるデータの組、 (21
)。 (221、+231. +241 、+251は移動す
る部分、 (261゜(27]、 (281,(291
、+301. (311,(32)、 +331は入れ
換えるデータの組、 (341は)(+yの演算を示
す符号、 (35)はfx−y) 11’の演算を示
す符号。 (36) 、 f37)、 (381、+391は1
6ポイント高速フーリエ変換のバタフライ演算の第1段
目、第2段目、第3段目、第4段目、 (401は演算
アレイ。 (41)、 +42+は演算アレイのアドレスである
。 なお、各図中同一符号は同一または相当部分を示す。
Claims (1)
- 四則演算を行う演算素子と、上記演算素子にデータを供
給するメモリ素子と、与えられた命令を実行する手段を
有する複数の演算素子が二次元平面上に互いに接続され
た演算アレイより構成されている並列データ処理装置に
おいて、行単位及び列単位に2のべき乗だけ離れた演算
素子間でデータ転送するとともに各々の演算要素内で四
則演算を繰り返す事により、高速フーリエ変換のバタフ
ライ演算を行い、行方向・列方向に2のべき乗だけ離れ
た演算要素間でデータ転送することによりビットリバー
ス処理を行うことを特徴とする並列データ処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2061636A JPH03262076A (ja) | 1990-03-13 | 1990-03-13 | 並列データ処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2061636A JPH03262076A (ja) | 1990-03-13 | 1990-03-13 | 並列データ処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH03262076A true JPH03262076A (ja) | 1991-11-21 |
Family
ID=13176885
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2061636A Pending JPH03262076A (ja) | 1990-03-13 | 1990-03-13 | 並列データ処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH03262076A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5751616A (en) * | 1995-11-29 | 1998-05-12 | Fujitsu Limited | Memory-distributed parallel computer and method for fast fourier transformation |
| US7441106B2 (en) | 2004-07-02 | 2008-10-21 | Seagate Technology Llc | Distributed processing in a multiple processing unit environment |
| JP2012123561A (ja) * | 2010-12-07 | 2012-06-28 | Internatl Business Mach Corp <Ibm> | ルートi(√i)演算の保持を特徴とする基数8固定小数点FFT論理回路 |
-
1990
- 1990-03-13 JP JP2061636A patent/JPH03262076A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5751616A (en) * | 1995-11-29 | 1998-05-12 | Fujitsu Limited | Memory-distributed parallel computer and method for fast fourier transformation |
| US7441106B2 (en) | 2004-07-02 | 2008-10-21 | Seagate Technology Llc | Distributed processing in a multiple processing unit environment |
| JP2012123561A (ja) * | 2010-12-07 | 2012-06-28 | Internatl Business Mach Corp <Ibm> | ルートi(√i)演算の保持を特徴とする基数8固定小数点FFT論理回路 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0122048B1 (en) | Data processing cells and parallel data processors incorporating such cells | |
| EP0497586A2 (en) | Motion detection circuit | |
| CA2130336A1 (en) | Method and apparatus for rapidly processing data sequences | |
| JPS6211960A (ja) | プロセツサアレイ | |
| KR880011681A (ko) | 메모리연결형 파면어레이 프로세서 | |
| CN108205700A (zh) | 神经网络运算装置和方法 | |
| Qiao et al. | Cycle time analysis of dual-arm cluster tools for wafer fabrication processes with multiple wafer revisiting times | |
| JPH0233191B2 (ja) | ||
| JPH09153029A (ja) | 高速フーリエ変換を行うメモリ分散型並列計算機およびその方法 | |
| JPH03262076A (ja) | 並列データ処理装置 | |
| JP2580501B2 (ja) | 並列デ−タ処理装置 | |
| JPH05233795A (ja) | 画像拡大縮小装置 | |
| JPH06175986A (ja) | 行列演算の並列処理方法 | |
| EP0073116A2 (en) | Integrated data processing circuits | |
| JP2600591B2 (ja) | 乗算器 | |
| JPS60175174A (ja) | 並列デ−タ転送方式 | |
| JP3860545B2 (ja) | 画像処理装置及び画像処理方法 | |
| JPH03116271A (ja) | 2次元画像の高速フーリエ変換解析方法 | |
| WO1999053417A1 (en) | Device for converting series of data elements | |
| JPH0648485B2 (ja) | 並列データ処理方式 | |
| JP2835366B2 (ja) | 高速フーリエ変換用アドレス情報発生装置 | |
| JP3839504B2 (ja) | フーリエ変換装置 | |
| JP2605792B2 (ja) | 演算処理装置 | |
| JPS5839336B2 (ja) | 自動制御系のデイジタル処理方式 | |
| KR950009773B1 (ko) | 메쉬형 병렬 컴퓨터의 단위기판 배열방법 |