JPS62175866A - シグナルプロセツサ - Google Patents

シグナルプロセツサ

Info

Publication number
JPS62175866A
JPS62175866A JP61016697A JP1669786A JPS62175866A JP S62175866 A JPS62175866 A JP S62175866A JP 61016697 A JP61016697 A JP 61016697A JP 1669786 A JP1669786 A JP 1669786A JP S62175866 A JPS62175866 A JP S62175866A
Authority
JP
Japan
Prior art keywords
data
register
double
bus
output
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
JP61016697A
Other languages
English (en)
Other versions
JPH04307B2 (ja
Inventor
Takao Nishitani
隆夫 西谷
Yuichi Kawakami
雄一 川上
Hideo Tanaka
秀夫 田中
Ichiro Kuroda
黒田 一朗
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP61016697A priority Critical patent/JPS62175866A/ja
Priority to US07/008,684 priority patent/US4899301A/en
Priority to EP19870101216 priority patent/EP0238807A3/en
Publication of JPS62175866A publication Critical patent/JPS62175866A/ja
Publication of JPH04307B2 publication Critical patent/JPH04307B2/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/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/141Discrete Fourier transforms
    • G06F17/142Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は高速フーリエ変換やディジタルフィルタ等のデ
ィジタル信号処理をソフトウェアで実現する実時間信号
処理プロセッサに関する。
〔従来の技術〕
実時間ディジタル信号処理の利点はアナログ技術では実
現できない様な高精度もしくは高安定性の保障されたフ
ィルタや変復調装置が実現できること、さらに、アナロ
グ信号処理では考えられなかった時変適応フィルタ等が
容易に実現できることなどが挙げられる。さらに詳しい
ディジタル信号処理の利点等については電子通信学会誌
1982年12月号の1280頁より1284頁に記載
されている。
この様に多くの利点を持つディジタル信号処理も、その
反面美大な演算量を必要とする欠点を持っている。つま
り、実時間信号処理を行なうには、標本化された入力信
号l標本当り標本化周期以内に与えられたディジタル信
号処理を行なわなくてはならず、例えば電話音声(8k
Hza本化)に対し4次の巡回形ディジタルフィルタ処
理を施す場合、125マイクロ秒の間に乗算8回、加算
8回の演算を必要とする。アナログ技術によるフィルタ
の実現は抵抗やコンデンサ等のアナログ素子を用いて低
消費電力かつ小型のものが容易に得られるため、上述し
た美大な演算量を1チップで実行する様なディジタルプ
ロセッサが存在しない限りディジタル信号処理技術がア
ナログ信号処理技術を完全に置換することはできない。
このために登場したものがシグナルプロセッサと称せら
れるディジタル信号処理用マイクロプロセッサである。
従来のシグナルプロセッサとしては、例えば、アイイー
イーイー・ジャーナル・オブ・ソリッドステート・サー
キッッ(I E E E Journal ofSol
id 5tate C1rcuits)第5C−16巻
4号(1981年8月)の372頁より376頁に掲載
されたμPD7?20シグナルプロセッサや、エレクト
ロニクス(Electronics )誌1982年、
2月24日号の105頁より100頁に掲載された7M
S320シグナルプロセツサがあるが、これ等には、 (1)大量のデータを実時間処理する必要性から、汎用
コンピュータや汎用マイクロコンビエータと異なりビッ
トパラレル乗算器を内蔵し、乗算器出力の累算を効率的
に行なうため、乗算器と累算器を直列接続した形式を採
っている、 (2)内部メモリのアドレス指定は、バスに接続された
カウンタやレジスタにより行ない、特にカウンタをアド
レス指定に用いることにより連続したアドレスに格納さ
れたデータを効率的に読み出すことが可能となる様に工
夫している、(3)演算形式は固定小数点で最上位ビッ
トが極性符号を、最上位ビットと次のビットの間に小数
点を有する2の補数表現のデータを取り扱っている、 などの共通点があった。
この様な共通点により、ディジタルフィルタ、とりわけ
、処理すべきデータがメモリ内部の連続アドレスに格納
されており、 蓄えられる という演算で指定されるFIRフィルタなどは効率的に
処理できた。
〔発明が解決しようとする問題点〕
しかしながら、従来方式のシグナルプロセッサではディ
ジタル信号処理の他の基本的演算であるFFT (ファ
ストフーリエ変換)などには効率的な処理ができなかっ
た。この理由は以下に示す通り、FFTでは演算を受け
るデータの格納アドレスが連続的でなく、このため、演
算に先立って複雑なアドレス操作が必要となるためであ
る。以下、FFTの詳細を必要な範囲で述べる。
FFTの詳細は例えば1975年プレンティス・ホール
(Prentice I(all)発行のディジタル・
シグナル・プロセッシング(Digital Sign
al Processing)の290頁〜320頁に
詳しいが、8点FFTについて以下に述べる。
入力信号(x (i): i=0.1.−1’tのFF
Tスペクトルを(X (k):に=O,t、・・・7)
とすると、 として求めるものである。ここで k はひねり因子と呼ばれ、 とおけば、式(2)は、 となる。
この式(4)をすべてのkについて求める信号のフロー
は、各演算の途中結果を各々利用しあうことで乗算量を
低減でき、第2図に示す通りである。
第2図において(x (i): l=0.1.−7)は
人力信号のサンプル値であり、メモリに蓄えられること
を前提として左端にアドレスを示した。
また、(X (i): i=o、l、・・・7)がフー
リエ変換されたサンプル値であり、ひねり因子がシグナ
ルフローの一部に乗ぜられている様子が理解されよう。
なお、入力信号はアドレス番号のビット逆順に並べられ
ている。第2図は3役の処理から構成され、各段では、
例えばy。′とy2′より20′と22′を計算するバ
タフライと呼ばれる演算が基本となっており、このバタ
フライ演算は第3図に示す通りである。第3図は複素乗
算器100゜複素加算器101.複素減算器102より
成っており、2つの複素信号y、と3’Jより という演算を行なう回路である。まずyjにひねり因子
Wを複素乗算器100で乗じ、複素加算器1旧にてy、
とW yjを加算する。また複素減算器102ではy、
からWyJを減算し、式(5)を求めている。
FFTは複素入出力演算であるため、式(5)は実数演
算で述べると となる。一般的にFFTを扱う場合は式(5)を用いて
説明した方が簡単であるため、明細書の詳細部では式(
6)を用いて説明するが、しばらくは式(5)を中心に
述べる。
第2図で示されるFFTからも最初の段は互いに隣り合
ったデータ毎のバタフライ演算となるが、2段目ではバ
タフライ演算は2番地ずつ離れたアドレスの内容が、さ
らに3段目では3番地ずつ離れたアドレスの内容が必要
となる。また、ひねり因子も第1段ではWN+1のみが
必要であるが、第2段目ではWや。とW2′が、さらに
、第3段目ではWN ’ +wN’、wN’、w、3が
必要となり、メモリに(W、’。
WN’、 WN’、 WN’)を格納していても連続し
たアドレスの内容が次々と必要となるのは最終段だけで
あることが理解されよう。
この様にFFT演算では離散的なアドレス指定、特に2
の巾乗ずつ異゛なるアドレスの指定が必要となり、従来
のシグナルプロセッサでは効率的なプログラムが組めな
かった。
本発明の目的は、上述のような問題点を解決したシグナ
ルプロセッサを提供することにある。
〔発明の構成〕
本発明のシグナルプロセッサは、各々に2組の±1歩進
可能なレジスタが設けられ、前記2組のレジスタのどち
らか一方の内容もしくは前記2組のレジスタの加算内容
でアドレス指定でき、前記加算内容を前記2組のレジス
タのうちの一方のレジスタに格納できる第1及び第2の
メモリよりなる2組のメモリと、 前記2組のメモリの各々の出力を被乗数及び乗数入力端
子に接続し、被乗数及び乗数データの語長の倍語長の乗
算結果を出力する乗算器と、前記2組組のメモリの各々
にデータを供給あるいは前記2組のメモリの各々からデ
ータを供給するデータバスと、 前記2組のメモリの出力の各々の最下位ビット以下に複
数のゼロビットを付加して倍語長としたデータ、前記デ
ータバス上のデータの最下位ビット以下に複数のゼロビ
ットを付加して倍語長としたデータ、前記乗算器の倍語
長データ、及び後記倍語長演算バス上のデータのうちい
ずれか1つを選択する選択回路と、 前記選択回路の倍語長出力に対し多ビット桁シフトを行
なうシフタと、 前記シフタの内容と後記ビット位置回路の出力に対し倍
語長の算術論理演算を行なう演算回路と、前記演算回路
の倍語長出力を一時記憶するレジスタ群と、 前記レジスタ群の出力を前記選択回路へ伝える倍語長演
算バスと、 前記倍語長演算バスの下位複数ビットの順番をビットの
重みが逆となるデータと前記倍語長演算バスの内容デー
タとのいずれか一方を選択して前記演算回路へ伝えるビ
ット位置回路と、前記倍9吾長演算バスの上位語長骨の
データもしくは下位語長分のデータのいずれか一方を前
記データバスへ伝える切出回路と、 ±1及び2の巾乗歩進できるレジスタによりアドレス指
定され、前記データバスを介して前記乗算器にデータを
供給する第3のメモリと、を備えることを特徴としてい
る。
〔作用〕
まず、第2図のFFTの流れ図からも理解される様にF
FTの人力データの並びはビット逆順に並べ換えられる
。このため、メモリアドレスとして通常カウンタのビッ
ト逆順データをロードする必要がある。汎用性を失うこ
となくこの様な機能を実現するためには、算術論理演算
回路(ALLI)からの出力をビット逆順でメモリアド
レスレジスタに転送できれば良い。このビット逆順はF
FTの最大処理データ数を2″とするとALLIからの
下位nビットのみを配線でビット逆順してバスへ接続す
るバスを用意すれば2″以下のビット逆順も容易に実現
できる。例えば10ビット分ビット逆順とした場合に2
ビットのビット逆順を行なう場合、ALUでは28を累
算できる様にすれば、1回累算 A L U     
: 0000000000メモリレジスタ: oooo
ooooo。
2回累算 A L U     : 01000000
00メモリレジスタ: 00000000103回累算
 A L U     : 1000000000メモ
リレジスタ: 00000000014回累算 A L
 U     : 1100000000メモリレジス
タ: ooooooooitとなり、メモリレジスタに
は下位2ビットのビット逆順が行なえる。
第2図で示されるFFTの流れ図を第3図で示されるバ
タフライ処理を中心にながめると、バクフライの組が次
の様にグループ分けできる。バタフライに入力される2
組のデータのアドレスの間に他のバタフライに入力され
るデータのアドレスを含んでいるバタフライの集合をバ
タフライグループと呼ぶことにする。このバクフライグ
ループの個数は1段目は4個、2段目は2個、3段目は
1個のバタフライグループに分割される。
さらに、同一バクフライグループでは第3図の’It 
に相当するバタフライ入力データの格納アドレスは1ず
つ異なり、第3図のy」に相当するバタフライ人力デー
タの格納アドレスは2の巾乗分異なる。また、1つのバ
タフライグループのylに相当するデータのアドレスの
うち最も大きいものと、次のバタフライグループのyI
に相当するデータのアドレスのうち最も小さいものとの
差は、2つのバタフライ入力データ間隔と等しい2の巾
乗とさらに1だけ異なる。この様子を示したのが第4図
であり、第4図では第2図の2段目に対応するバタフラ
イグループと最初のバクフライが記されており、最初の
バタフライへの人力データのアドレスAとBの差は22
である。第1バタフライグループに属する2番目のバタ
フライへの人力データアドレスは各々1番目のバタフラ
イへの入力データアドレスを+1ずつインクリメントし
たものとなっている。また、この第1バタフライグルー
プの最後のバタフライはアドレスCの内容を用いたもの
であり、次の第2バタフライグループの最初のバタフラ
イの人力アドレスA′とCの差は22+1だけ離れてい
る。
この様なアドレス生成を容易にするためには、アドレス
指定用に2つのレジスタI、Bを用意し、レジスタ■に
第3図のバタフライのyIに対応するアドレスデータを
、レジスタ已に2の巾乗(この場合は22)を用意し、
第3図のy、のデータを読み出すにはレジスタ■で、y
lのデータを読み出すにはレジスタIとBの和でメモリ
をアクセスし同一バタフライグループ内の次のバタフラ
イの人力アドレスを設定するにはレジスタIをインクリ
メントすると良い。また、新しいバタフライグループに
移る場合はレジスタIをインクリメントするとともに、
インクリメントしたレジスタIの値とレジスタBの値の
和をレジスタIへ格納する機能があれば効率良くアドレ
ス発生が行なえる。
ここで重要なことは、FFTの信号は複素データである
ため、実部と虚部を持っており、実部と虚部のデータを
効率良く得るためには前述した2組のレジスタI、Bに
よりアクセスできるメモリを実部用と虚部州別々に必要
となる点である。
FFT演算の他の特徴は同一バタフライグループではバ
タフライ入力側にかかるひねり因子がeXp(1/2π
N)の2の巾乗ずつ増加していくことで、第2図の2段
目では2′乗ずつ、3段目では2°乗ずつ増加している
。バタフライの加減算はオペランドの双方とも入力デー
タであるが、乗算はひねり因子とデータの積を得るため
に必要である。このため加減算に関しては実数部と虚数
部を分割して2組のメモリに記憶させ、同時に2つのメ
モリをアクセスする必要があったが、ひねり因子は固定
係数であるため、続出専用メモIJ 1組に実数部と虚
数部を蓄えていても、データを格納するメモリからの続
出データとひねり因子とが乗算されるため効率は落ちな
い。そこで1組の続出専用メモリと、このメモリをアク
セスするレジスタとして+1及び+2″歩進が可能なも
のを用意すれば、ひねり因子の読出しが第5図の様に行
なえる。ここで第5図は続出専用メモリのアドレスと内
容を示しており、偶数番地にひねり因子の実数部が、奇
数番地にひねり因子の虚数部が格納されており、アドレ
ス21にはひねり因子の1乗の実数部、アドレス21+
1にはひねり因子のi乗の虚数部が蓄えられている。こ
のメモリをアクセスするのに±1歩進できるレジスタを
用いるのが便利なのは次の理由による。いま、データy
、とびねり因子WNI′Iの積を考えると、 llN″・y。
= (Re (WN’) +jfm (Ilh”) ]
+jRe (y」) Im(L”) +j1m (y」
) Re (L”)となる。よって、この積を求めるに
はひねり因子を Re  (W)+”)、  I m  (WH″)、 
 r m  (WN+)、  Re(Wl、″)の順に
読み出す必要があり、Re(w、”)から1m(Wll
″)へは+1、Im(WM’)からRe (WN” )
へは−1、アドレス指定レジスタを操作する必要がある
。次のバタフライに進むにはひねり因子因子がW8の2
の巾乗ずつ増加するため、+2hの操作が望まれる。
また、演算回路では式(5)を実行することになるが、
式(5)における積は式(7)の様に与えられるため、
実数部/虚数部とも3項の積和演算となる(式(6)参
照)。この積和演算の演算精度を高く保つためには、連
続加算によるオーバーフローの問題と単精度乗算結果が
倍精度データとなり、これを単精度に丸めるための丸め
雑音の問題がある。これを汎用性を失うことなく実現す
るには、乗算結果を倍精度のまま2ビットシフトダウン
し、3項の累算を倍精度で行ない、演算結果を1ビット
シフトアツプした後、単精度に丸めると良い。乗算結果
を2ビットシフトダウンしたことで、データの値は1/
4に減少し、3回加算を行なっても途中でオーバーフロ
ーは発生しない。また、ひねり因子の絶対値は1である
から、3項の累算結果は最大1ビット増加している可能
性があり、2ビットシフトアツプするとオーバーフロー
を発生するが1ビットシフトアツプでは問題ない。この
結果、■バタフライ毎に1/2ずつダイナミックレンジ
は小さくなるが、これはアルゴリズム的に保証されたダ
イナミックレンジの縮小で、FFTの定義式には初めか
らこのスケーリングを含めたものもあり、問題とはなら
ない。この場合FFTの式(2)を、8”°     
  2πN と定義を変えたことになる。1ビットシフトアツプした
後、単精度の丸めを行なえば丸めの回数は1バタフライ
当り1回となり高精度な演算が保証される。
〔実施例〕
第1図は本発明の一実施例であり、乗算器人力レジスタ
1,2)乗算器3、選択回路4、バレルシフタ5、算術
論理部6、レジスタファイル7、ピット位置回路8、ビ
ット切出回路9、データメモリ10,20、ペースレジ
スタ11.21、インデックスレジスタ12.22)加
算器13,23、読出専用メモリ30、ポインタ31、
入出力ポート40、データバス50、演算バス60から
構成されている。
ここでレジスタ1.2)ペースレジスタ11.21は1
985年テキサスインスッルメンツ社発行の“ALS/
Asロジック・サーキッッ・データ・ブック(Logi
c C1rcuits Data Book) ”の4
−321頁より4−326頁記載のICが、また、選択
回路4は同文献の4−123頁〜4−126頁記載のI
Cが、算術論理部6、加算器13.23は同文献の4−
175頁〜4−185頁記載のICが、インデックスレ
ジスタ12゜22は同文献の4−139頁〜4−148
頁記載のICが、レジスタファイル7は同文献の4−6
21頁〜4−625頁記載のICが利用できる。また、
バレルシフタ5は1977年AMD社発行の“ショット
キー・アンド・ローパワー・ショットキー・データ・ブ
ック・インクルーディング・デジタル・シグナル・プロ
セッシング・ハンドブック(Schottky and
 low−power 5chottky Data 
BookIncluding Digital Sig
nal Processing Handbook”の
4−33頁〜4−36頁記載のICが、乗算器3は同文
献の4−3頁〜4−8頁記載のICが、人出力ボート4
0は同文献の4−123頁〜4−129頁記載のICが
利用できる。また、データメモ1月0,20は1982
年NECBlectronics Ll、  S、Δ、
 Inc発行の19B2c A T A L O075
頁〜78頁記載のICが、読出専用メモリ30は同文献
の137頁〜139頁記載のICが利用できる。ビット
位置回路8.ビット切出回路9.ポインタ31について
は後述する。
第1図の詳細を説明するため、第2図で示した8点FF
Tを実行する場合について以下に各ステップ毎に説明す
る。
第1ステツプでは、まず人出力ポート40から8黒人カ
データが人力され、ビット逆順にデータメモ!710.
20に各々8黒人カデータの実数部及び虚数部を並べる
ところから説明する。まず、ピット位置回路8はレジス
タファイル7の下位10ビットをビット逆順にするモー
ドに固定し、ビット切出回路9はピット位置回路8の出
力の下位単精度データをデータバス50に載せるモード
に固定する。
バレルシフタ5はシフト量0のモードに設定し、選択回
路4はレジスタファイル7の内容を選択する様にしてお
く。データメモ’JI0.20は各々インデックスレジ
スタ12.22でアクセスされるモードとする。また、
レジスタファイル7内の2つのレジスタの一方にゼロ、
他方に128をロードしておく。
入出力ポート40に最初の実数部データRe(x(0)
)が人力されるとレジスタファイル7内のゼロを蓄えて
いるレジスタの出力が演算バス60を介してビット位置
回路8に供給され、ビット位置回路8で下位10ビット
のビット逆順操作が行われるが、この場合ゼロとなり、
次いでビット位置回路9で下位単精度分のビットの内容
がデータバス50を介してインデックスレジスタ12へ
転送される。
この場合インデックスレジスタ12はゼロである。
第2ステツプでは、人出力ポート40のデータRe(X
(0))がデータメモリ10に転送されるため、データ
メモリ10のアドレスOにRe(x(0))が格納され
、第2図のX(0)のポジションが得られる。
第3ステツプでは、次に人出力ポート40に虚数部デー
タ1m (x (0) )が入力されると、インデック
スレジスタ12のゼロの値がデータバス50を介しイン
デックスレジスタ22へ転送される。
第4ステツプでは、次いで、人出力ボート40に蓄えら
れたIm (x (0) )がインデックスレジスタ2
2でアクセスされたデータメモリ20のアドレス0に格
納され、第2図のx(0)の虚数部が用意できる。
第2のデータ人力以降基本的に;よ前述した4つのステ
ップで実行できる。つまり、入出力ポート40に第2の
データX(1)の実数部Re(x (1) )が入力さ
れると、レジスタファイル7のゼロを保持しているレジ
スタに他の128を保持しているレジスタの内容が演算
パス601選択回路4、バレルシフタ5を介して算術論
理部6で加算され128を保持する結果となり、この結
果はビット位置回路8で下位10ビットが’00100
00000 ”から” 0000000100″′とな
り、ビット切出回路9によりデータバス50上へ4 (
= ”0000000100”)として伝えられ、イン
デックスレジスタ12へ格納される。
人出力ポート40内のRe (x (1) )はデータ
バス50を介しデータメモリ10へ格納されるため、デ
ータメモリ10のアドレス4にRe (x (1) )
が格納され、第2図のx(1)のポジションと同一とな
る。
人出力ポート40に第2のデータx(1)の虚数部1m
 (x (1) )が人力されるとインデックスレジス
タ12の内容はデータバス50を介してインデックスレ
ジスタ22へ転送される。人出力ポート40内のデータ
Im (x (1) )はデータバス50を介してデー
タメモリ20に格納されるため、データメモリ20のア
ドレス4にはIm (x (1) )が格納され、第2
図のX(1)の虚数部が用意される。
同様に順次レジスタファイル7内の128を格納してい
るレジスタの内容を演算パス609選択回路4゜バレル
シフタ5.算術論理部6を介して他のレジスタに累算し
、この累算結果をビット位置回路8゜ビット切出回路9
を介してインデックスレジスタ12へ転送し、このイン
デックスレジスタ12の示すデータメモリ10のアドレ
ス位置に人出力ポート40の内容を書き込むことにより
実数部データのビット逆順並び換えが、また、インデッ
クスレジスタ12の内容を他のインデックスレジスタ2
2へ転送することにより、インデックスレジスタ22の
示すデータメモリ20のアドレス位置に人出力ポート4
0の内容を書き込むことにより虚数部データのビット逆
順並び換えが合計4ステツプずつの動作で実現できる。
次にFFT演算を第2段目の最初のバタフライループの
最初のバタフライ演算について詳述する。
これに先立ち、ビット位置回路8はビット逆順を行わな
い通常モードに設定し、ビット切出回路9は上位単精度
分のビット数をデータバス50に転送できる様にする。
また、ポインタ31は0を保持するとともに、±1の歩
進とともに+22の歩進ができるモードとし、インデッ
クスレジスタ12.22の内容はゼロに、ペースレジス
タ11.21の内容ハ2に設定しておくものとする。第
2図により、第2段目の最初のバタフライに必要なデー
タのアドレスは0と2であり、アドレス2のデータにW
8゜を乗する必要があることが理解されよう。このため
、このバタフライ演算は以下の様に実行される。
まず、データメモリ10をインデックスレジスタ12の
内容0とペースレジスタ11の内容2とを加算器13で
加算して値2でアクセスし、データメモリ10のアドレ
ス2に蓄えられている実数部データRe(y2 ′)を
データバス50を介さずに直接レジスタ1へ転送するパ
スを介して転送する。同時に、ポインタ31は読出専用
メモリ30のアドレス0に格納されているRe (WM
’)  (第4図参照)が 読み出されデータバス50
を介してレジスタ2へ転送される。この後ポインタ31
は+1されIm(Wg’)を読出専用メモリ30から読
み出す用意をする。以上で第1ステツプが終了する。
第2ステツプでは乗算器3はレジスタ1の内容Re(y
2′)とレジスタ2の内容Re(WN’)の倍長ビット
分の積を出力し、選択回路4を介しバレルシフタ5によ
り2ビット分シフトダウンした結果、y4Re (Ws
’) Re (y2’ )を算術論理部6を介してレジ
スタファイル7内の実数部累算用レジスタに蓄える。こ
れと同時に、ポインタ31の内容で読出専用メモリ30
をアクセスし、前述した様にIm(WN’)をデータバ
ス50を介してレジスタ1へ転送し、またインデックス
レジスタ22に蓄えられた0とペースレジスタ21に蓄
えられた2が加算器23により加算されデータメモリ2
0をアクセスするため、データメモリ20のアドレス2
に格納されているIm(y2′)が読み出されデータバ
ス50を介さない専用パスでレジスタ2へ転送される。
以上で第2ステツプ力<a番了する。
第3ステツプでは第2ステツプでレジスタ1及び2に格
納されたIm(L’)とIm(y2’)(7)積が乗算
器3により倍長ビット数として得られ、選択回路4を介
し、バレルシフタ5により2ビット分シフトダウンされ
、この結果′/41m(WN。)In(y2’)をレジ
スタファイル7内の実数部累算用レジスタに格納されて
いるスRe(Wa’)Re(y2’)より算術論理部6
で引き去り、前期レジスタファイル7内の実数部累算用
レジスタに蓄える。つまり’A CRe (WN’) 
Re(y2′)−Im (WN’)Im、(y2’))
が得られ、これはy2IにW、I。を乗じた正しい実数
部となっている。また、これと同時に、ポインタ31で
示された読出専用メモリ30の内容つまり第2ステツプ
と同様Im(W、’)がデータバス50を介してレジス
タ2へ転送され、また、インデックスレジスタ12とペ
ースレジスタ11との加算器13による和である2でデ
ータメモリ10をアクセスし、第1ステツプと同様Re
 (W)+’ )を読み出し、専用パスを介してレジス
タ1へ転送する。この後ポインタ31を−1して読出専
用メモリ30からRe(W、’)を読み出す準備をする
第4ステツプではレジスタ1及び2に蓄えられたI m
 (WN’ )とRe(y2’)の積が乗算器3により
倍長ビット数で得られ、この結果は選択回路4を介しバ
レルシフタ5により2ビットシフトダウンされ、この結
果%Re (V2’ )1m (WM’)が算術論理部
6を介してレジスタファイル7の虚数部累算用レジスタ
に格納される。これと同時にポインタ31によってアク
セスされる読出専用メモリ30は第3ステツプで述べた
様にRe(WN。)を出力し、データバス50を介して
レジスタlに転送され、また、インデックスレジスタ2
2とペースレジスタ21との加算器23による和である
2でデータメモリ20をアクセスし、出力Im(y2’
)を専用パスを介してレジスタ2へ転送する。
第5ステツプではレジスタ1,2に蓄えられたRe(W
、。)とIm(y2’)が乗算器3により倍長ビットの
積を出力し、これが選択回路4を介し、バレルシフタ5
により2ビットシフトダウンされ、この結果%Im (
ya  ’ ) Re (WN’)はステップ4で述べ
たレジスタファイル7内の虚数部累算レジスタの内容と
算術論理部6で加算され、虚数部累算レジスタに格納さ
れる。よってレジスタファイル7内の虚数部累算レジス
タには、!4Im (lllu’ ) Re (y2’
 ) + ′//4Re (L’ ) 1m (y2’
 )が得られ、1/4倍されているもののデータy2′
とひねり因子W 、 Qの積の虚数部が正しく計算され
ている。
第6ステツプではインデックスレジスタ12の内容(こ
の場合0)でアクセスされたデータメモリ10の出力R
e(yo  ′)は専用パスを介して選択回路4を介し
、下位ビットとして0を追加して倍長データとした後、
バレルシフタ5により2ビットシフトダウンし、′//
4’Re(yo’)とした後、算術論理部6ではレジス
タファイル7内の実数累算レジスタ内の ’A [Re (Y2 ’ ) Re (IIIN。)
  1m (y2’ ) Im(L°)〕と加算してレ
ジスタファイル7内の第3のレジスタに格納する。この
結果レジスタファイル7内の第3レジスタには シイ2  (Re (!10  ’  )  +Re 
(Y2  ”t  Re  (’;す、。)1m (y
2 ’ ) Im(Lo) )が格納されており、1/
4倍を除けば正しい0番地のバタフライの出力つまり式
(6)の第1式が計算されていることとなる。
第7ステツプではインデックスレジスタ22の内容(こ
の場合0)でアクセスされたデータメモリ20の出力1
m(yo’)は専用バスを介して選択回路4を介し、下
位ビットとして0を追加して倍長データとした後、バレ
ルシフタ5により2ビットシフトダウンし、%Im(y
a’)とした後、算術論理部6ではレジスタファイル7
内の虚数部累算レジスタ内の % (Im (y2’ ) Re (L’) +Re 
(Y2 ’ ) Im (L’) )と加算してレジス
タファイル7内の第4のレジスタに格納する。この結果
レジスタファイル7内の第4のレジスタには ’yA [:Im (yo ’ ) +1m (y2’
 ) Re (L。)十Re (!/2 ’ ) Im
(L’) ]が格納されており、1/4倍を除けば正し
い0番地のバタフライの出力つまり、式(6)の第2式
が計算されている。
第8ステツプでは第6ステツプと同様インデックスレジ
スタ12の内容(この場合0)でアクセスされたデータ
メモIJIOの出力Re(yo’)は専用パスを介して
選択回路4を介し、下位ビットとして0を追加して倍長
データとした後、バレルシフタ5により2ビットシフト
ダウンし、y4Re(y0′)とした後、算術論理部6
ではレジスタファイル内の実数部累算レジスタ内の%(
Re(y2’)Re(L。)  1m(y2’)1m(
L’))を減算してレジスタファイル7内の第5のレジ
スタに格納する。この結果第5のレジスタには’A (
Re (yo ’ )   (Re (y2’ ) R
e (L’ )Im D2 ’ ) Re (L’) 
) ]が格納され、1/4倍を除けば正しい2番地のバ
タフライ出力つまり式(6)の第3式が計算されている
第9ステツプでは第7ステツプと同様インデックスレジ
スタ22の内容(この場合0)でアクセスされたデータ
メモリ20の出力Im(yo’)は専用パスを介して選
択回路4を介し、下位ビットとし て0を追加して倍長
データとした後、バレルシフタ5により2ビットシフト
ダウンし、ZIm(Va’)とした後、算術論理部6で
はレジスタファイル7内の虚数部累算レジスタ内の’A
 (Im (y2’ )Re (L’) +Re (V
2’ )1m (L。) Eを減算し、レジスタファイ
ル7内の第6のレジスタに格納する。この結果第6のレ
ジスタには’A (1m (yo ’ ) −(1m 
(y2’ ) Re (L’)+Re (y2’ ) 
[m (L°))〕が格納されており、1/4をのぞけ
ば正しい2番地のバタフライの内容つまり式(6)の第
4式が計算されている。
引きつづくステップ10.11.12.13は、各々、
ステップ6、 7. 8.9で得られたレジスタファイ
ル7内の各々のデータを演算バス601選択回路4を介
し、バレルシフタ5により1ビットシフトアツプし、算
術論理部6を介して各々のレジスタファイル7内のレジ
スタに格納する。この結果ステップ6、 7. 8. 
9で得られた1/4倍された答は各々1/2倍された答
となり、スケーリングを含んだFFTの正しい答となっ
ている。
引きつづくステップ14.15.16.17ではステッ
プ10、11.12.13で得られた各々の結果を演算
バス60゜ビット位置回路8.ビット切出回路9を介し
てデータバス50に載せ、各々、インデックスレジスタ
12でアクセスされるデータメモリ10、インデックス
レジスタ22でアクセスされるデータメモリ20、イン
デックスレジスタ12とペースレジスタ11の内容を加
算器13で加算した結果でアクセスしたデータメモリ1
0、インデックスレジスタ22とペースレジスタ21の
内容を加算器23で加算した結果でアクセスしたデータ
メモリ20の各々に転送することで完了する。
第2図のFFTフローにおける2段目の第1バタフライ
グループ中の第2のバタフライの演算を行なうには、上
記ステップ1よりステップ17と本質点に同じ演算を行
うが、ひねり因子がWす0よりW N2へ、またバタフ
ライの人出力アドレスが各々1ずつ加わるため、ステッ
プ1に先立ち、次のステップを追加する必要がある。
追加ステップ:インデックスレジスタ12.22を各々
+1行い、ポインタ31を+22歩進行う。
このステップを追加したことにより、インデックスレジ
スタ12.22でアクセスされるデータメモリ10.2
0のアドレスは各々1であり、また、インデックスレジ
スタ12.22 とペースレジスタ11.21の内容を
加算器13.23で加算して得られるデータメモリ10
.20のアドレスは各々3となり、正しいバクフライの
人出力アドレスを与えている。
また、ひねり因子はWN。より−2へ変るが、最初のバ
タフライの計算時のステップ3でポインタ31の値は読
出専用メモリ30に蓄えられたRe(WN’)をアクセ
スすべく0となっており、WN2の実数部のアドレスは
第5図より明らかな様に4番地となるので、ポインタ3
1の2の巾乗歩進機能を用いて+22歩進し、正しい4
番地のアドレスを生成している。
以下、前述したバタフライのステップ1よりステップ1
7はメモリーアドレスが全てレジスタ11゜12)21
.22.31による間接アドレス指定で実行されるため
、正しい第2バタフライの演算が実行できる。
第2図のFFTフローにおける2段目の第1バクフライ
グループの第2バクフライ演算が終了した後、第2バタ
フライグループの第1バクフライ演算を行うためには、
基本的には第1バタフライグループの第1バタフライを
実行するステップ1よりステップ17までと同一である
が、ひねり因子がW、0へ戻ること、及び、バタフライ
入出力アドレスが3ずつ増加するため、次の2つのステ
ップを第1バタフライグループの第1バタフライ演算の
ためのステップ1より17までに先立って必要とする。
追加ステップ1:インデックスレジスタ12及び22の
内容(この場合各々1)とペースレジスタ11及び21
の内容(この場合は2)を加算器13及び23で各々加
算を行い、加算結果をインデックスレジスタ12及び2
2へ格納するとともにポインタ31にゼロをセットする
追加ステップ2:インデックスレジスタ12及び22を
+1ずつインクリメントする。
以上の追加ステップによりインデックスレジスタ12及
び22の値は4となり、第2バクフライグループの最初
のバクフライの正しい人出力データアドレスを示す。ま
た、ポインタ31もゼロにセットされるため、読出専用
メモリ30の出力も正しいひねり因子W、+1を発生す
る。
このため、これ等の追加ステップ以降第1バタフライグ
ループの計算と同一のステップをくり返せば良い。
第2のFFTフローの第2段目が終了して第3段目に移
るときは、2つのバタフライ入出力アドレスの差が2よ
り4に変わりひねり因子もW、OとWN’だけでなくW
N。、WN’、WN”、W−が必要となる。このため、
第2段目の最終バタフライグループの最終バタフライ演
算が終った時点で、第3段目バタフライグループの最初
のバタフライ演算を始める前に次の追加ステップを設け
ればよい。
追加ステップ1:インデックスレジスタ12.22にゼ
ロをロードする。
追加ステップ2:ペースレジスタ11.21 に4をロ
ードする。
追加ステップ3:ポインタ31の2の巾乗歩進機能を2
′に設定する。
追加ステップ1.2により第3段目の最初のバタフライ
の入出力アドレスが設定され、追加ステップ3によりひ
ねり因子の増分が設定できたため、以降のステップは第
2図の第2段目の第1バタフライグループの処理と同一
である。ただし、第3段目はバタフライグループが1個
で4バタフライあるため、連続する4個のバクフライは
第2段目の第1バタフライグループのバクフライ演算を
4回連続して行なうだけで良い。
なお、バタフライ演算のステップの説明において、ステ
ップ6、 7. 8. 9は算術論理部にオーバーフロ
ー発生時にオーバーフローした極性方向の最大値に置き
換えるサチュレーションロジックが設けられている場合
には不要となり、その代わりにバレルシフタのシフト量
を最初から1ビットシフトダウンとしておけば良い。ま
たステップ1.0.11.12.13は単なるデータ転
送だけであるため、バタフライグループからバタフライ
グループへの移動に伴う追加ステップをこれ等のステッ
プに埋めむことも可能である。
第6図は第1図のビット位置回路8の一例である。この
ビット位置回路は双方向ドライバ200、単方向ドライ
バ2旧、選択回路202)インバータ203、入出力方
向指示端子204、ビット逆順指定端子205、結合端
子210〜217.220〜227から構成されており
、端子220より227までの8本の端子に8ビットで
示されるデータの各々のビット情報が加えられ、下位4
ビットをビット逆順に並べ換え、端子210より端子2
17までに伝えるもので、端子210〜217までのデ
ータを端子204に加えられる信号により端子220〜
227へ伝えることができる様になっている。また、第
6図の双方向ドライバ200及び単方向ドライバ201
 は1985年テキサスインスツルメンツ社発行のザ・
バイポーラ・デジタル・インテグレーテッド・サーキッ
ツ・データ・ブック・TTL/インターフェース・サー
キッツ(The BipolarDigital In
tegrated C1rcuits Data Bo
ok TT L/Interface C1rcuit
s) ’の7−330頁〜7−331頁記載のICが、
選択回路202は同文献の7−162頁〜7−166頁
記載のICが、インバータ203は同文献の6−2頁〜
6−3頁記載のICが利用できる。
以下図面を参照しながら第6図を説明する。端子220
から227に加えられたデータをビット反転せずに端子
210から端子217へ伝えるには端子204に“L”
を加え、端子205に“L”を加える。この時端子22
4から端子227までの信号は双方向ドライバ200を
介して各々端子214より端子217に伝えられ、また
、端子220より端子223までの信号は選択回路20
2によりそのままの順で端子210より端子213に伝
わる。この時端子204からの信号はインバータ203
によりL″を伝え単方向ドライバ201は出力を禁止し
ている。
次に端子205にH”を加えた場合を説明する。
この時、端子224より端子227までの信号は前述し
た様に双方向ドライバ200を介して端子214より端
子217へ伝えられる。−万端子210より端子213
までの信号は選択回路202の入力端で端子213から
の信号をLSBにくる様ビット順反転して接続されてお
り、端子205が“H”であるためにビ、ソト反転した
入力端が選ばれ端子210より端子213には端子22
0より端子223までの信号がビット反転して伝えられ
る。さらに端子204を“H”にするとインパーク20
3により選択回路202は出力を禁止され、双方向ドラ
イバ200.単方向ドライバ201共に端子220〜2
27方向に開かれるため、端子210より217までの
信号が端子220より227へ伝えられる。
第7図は第1図のビット切出回路9の一例である。この
ビット切出回路は、選択回路300.301、切出指定
端子302)挿入指定端子303、切出/挿入端子30
4、インバータ305、端子310〜313、端子32
0〜327から構成される。選択回路300.301は
第6図の選択回路202と同じICが利用できる。
まず、端子320より端子327に加えられた8ビット
データの上位8ビットを端子310より端子313に伝
える場合を考える。この時、端子304より加えられた
゛L″信号により選択回路301は出力を禁止され、か
つ、端子304より加えられた“L″信号インバータ3
05によりH″′に変えられて選択回路300に伝えら
れ、出力を許可される。この時端子302に“H”が加
えられると、端子324より327までの信号が端子3
10より313に伝えられる。
端子304に加えられた信号をそのままにしておき、端
子302に加えられる信号を“L ”とすると、端子3
20より323までの信号が選択回路300により選択
され、端子310より313へ伝えられる。
次に端子304に“H”を加えるとインバータ305に
より選択回路300にはL′°が伝えられ出力を禁止さ
れる。反対に、選択回路301には“H11が伝えられ
るため出力が許可される。
いま、端子303に′H″を加えると選択回路301は
端子310より313までの信号の下位4ビットにゼロ
を加えた入力を選択するため、端子320より323ま
ではゼロが、端子324より327までは端子310よ
り313までの信号が伝わる。
次に端子303にL”を加えると選択回路301は他方
の入力信号を選択するため、端子320より323まで
に端子310より313までの信号が、端子324より
327まではゼロが伝わる。
第8図は第1図のポインタ31の一例である。このポイ
ンタは出力レジスタ400.加算器4011選択回路4
02.レジスタ403.アンドゲート404.出 力 
端子410.バス接続端子420.データロード端子4
05から構成されている。レジスタ400.403は第
1図のレジスタ1.2と同じICが、また加算器401
は第1図の加算器13と同じICが、選択回路402は
第1図の選択回路4と同じICが利用できる。
まず、ポインタにバスの内容をロードする時は選択回路
402はバス接続端子420からの信号を選択し加算器
401に伝える。この時端子405は″L ”となって
おり、アンドゲート404は閉となっており、このため
、加算器401は選択回路402の出力とアンドゲート
404の出力“0″を加算してレジスタ400に伝える
。よって出力端子410にはバス接続端子420の値が
現れる。
次に+1演算について述べる。この時端子405は“H
”となり加算器401にはレジスタ400の値が伝えら
れる。また選択回路402は+1人力を選択しており、
この結果、加算器401はレジスタ400の値に+1し
た値を出力し、これがレジスタ400に加えられるため
、レジスタ400の出力は先程までの値に+1されたも
のが出力される。
次に−1歩進について述べる。この時もアンドゲート4
04は開となっており加算器401にレジスタ400の
値を伝えている。また選択回路402は−1を選択し、
加算器4旧に伝えているため加算器401の出力は先程
までのレジスタ400の値に−1された値となり、これ
が新しくレジスタ400にセットされ、端子410より
出力される。
次に2の巾乗歩進について述べる。この時まず始めに2
の巾乗の値をまずバスより端子420を介してレジスタ
403に設定しておく。この値を今2hとすると、選択
回路402はレジスタ403の内容2hを選択し、加算
器401に伝える。アンドゲート404はこの場合も開
であり、レジスタ400の値を加算器401に伝えてい
る。このため、加算器4旧は先程までのレジスタ400
の値に2″を加えた値を出力し、これが新しくレジスタ
400にセットされ、端子410より出力される。
〔発明の効果〕
以上の様に本発明に従えば、FFTのデータに対するア
ドレス演算とひねり因子に対するアドレス演算を連続的
に発生できるだけでなく、倍長データでの演算を行うた
めに高精度な処理が可能となる。
特に信号処理においてはデータ長が24ビットないし3
2ビットで必要なものも多く、これに対し、メモリ容量
は1チップLSI化を考えると高々1024語程度であ
るから、アドレス生成用に用いる分散された加算器も小
さくて良く小型低消費電力シグナルプロセッサを実現す
ることができる。
【図面の簡単な説明】
第1図は本発明の一実施例を示す図、 第2図は信号処理の一例を示す図、 第3図は第2図の一部を説明するための図、第4図は第
2図の他の一部を説明するための図、第5図は続出専用
メモリのアドレスと内容を示す図、 第6図は第1図のビット位置回路の一例を示す図、 第7図は第1図のビット切出回路の一例を示す図、 第8図は第1図のポインタの一例を示す図である。 ■、2  ・・・・・・・・・・・・ レジスタ3 ・
・・・・・・・・・・・・・・・・・ 乗算器4 ・・
・・・・・・・・・・・・・・・・ 選択回路5 ・・
・・・・・・・・・・・・・・・・ バレルシフタ6 
・・・・・・・・・・・・・・・・・・ 算術論理部7
 ・・・・川・・・・・・・・・・・ レジスタファイ
ル8 ・・・・・・・・・・・・・・・・・・ ビット
位置回路9 ・・・・・・・・・・・・・・・・・・ 
ビット切出回路10.20  ・・・・・・・・・・・
・ データメモリ11、21  ・・・・・・・・・・
・・ ペースレジスタ12)22  ・・・・・・・・
・・・・ インデックスレジスフ13、23  ・・・
・・・・・・・・・ 加算器30  ・・・・・・・・
・・・・・・・・・・ 読出専用メモリ31  ・・・
・・・・・・・・・・・・・・・ ポインタ40  ・
・・・・・・・・・・・・・・・・・ 入出力ポート5
0  ・・・・・・・・・・・・・・・・・・ データ
バス60  ・・・・・・・・・・・・・・・・・・ 
演算ハス代理人 弁理士  岩 佐 義 幸 第1図 ドP−トP−トドトド 101  カロ11器 第3図 2 段目 第4図 第5図 第6図 第7図 第8図 手3売釘TT LEで) 昭和  年  月  日

Claims (3)

    【特許請求の範囲】
  1. (1)各々に2組の±1歩進可能なレジスタが設けられ
    、前記2組のレジスタのどちらか一方の内容もしくは前
    記2組のレジスタの加算内容でアドレス指定でき、前記
    加算内容を前記2組のレジスタのうちの一方のレジスタ
    に格納できる第1及び第2のメモリよりなる2組のメモ
    リと、 前記2組のメモリの各々の出力を被乗数及び乗数入力端
    子に接続し、被乗数及び乗数データの語長の倍語長の乗
    算結果を出力する乗算器と、前記2組のメモリの各々に
    データを供給あるいは前記2組のメモリの各々からデー
    タを供給するデータバスと、 前記2組のメモリの出力の各々の最下位ビット以下に複
    数のゼロビットを付加して倍語長としたデータ、前記デ
    ータバス上のデータの最下位ビット以下に複数のゼロビ
    ットを付加して倍語長としたデータ、前記乗算器の倍語
    長データ、及び後記倍語長演算バス上のデータのうちい
    ずれか1つを選択する選択回路と、 前記選択回路の倍語長出力に対し多ビット桁シフトを行
    なうシフタと、 前記シフタの内容と後記ビット位置回路の出力に対し倍
    語長の算術論理演算を行なう演算回路と、前記演算回路
    の倍語長出力を一時記憶するレジスタ群と、 前記レジスタ群の出力を前記選択回路へ伝える倍語長演
    算バスと、 前記倍語長演算バスの下位複数ビットの順番をビットの
    重みが逆となるデータと前記倍語長演算バスの内容デー
    タとのいずれか一方を選択して前記演算回路へ伝えるビ
    ット位置回路と、 前記倍語長演算バスの上位語長分のデータもしくは下位
    語長分のデータのいずれか一方を前記データバスへ伝え
    る切出回路と、 ±1及び2の巾乗歩進できるレジスタによりアドレス指
    定され、前記データバスを介して前記乗算器にデータを
    供給する第3のメモリと、 を備えることを特徴とするシグナルプロセッサ。
  2. (2)特許請求の範囲第1項に記載のシグナルプロセッ
    サにおいて、前記2組のメモリに各々設けられた前記2
    組のレジスタのうち、いずれか一方を下位複数ビットだ
    けを歩進できる様にしたことを特徴とするシグナルプロ
    セッサ。
  3. (3)特許請求の範囲第1項または第2項に記載のシグ
    ナルプロセッサにおいて、全体が1チップ大規模集積回
    路で構成されていることを特徴とするシグナルプロセッ
    サ。
JP61016697A 1986-01-30 1986-01-30 シグナルプロセツサ Granted JPS62175866A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP61016697A JPS62175866A (ja) 1986-01-30 1986-01-30 シグナルプロセツサ
US07/008,684 US4899301A (en) 1986-01-30 1987-01-29 Signal processor for rapidly calculating a predetermined calculation a plurality of times to typically carrying out FFT or inverse FFT
EP19870101216 EP0238807A3 (en) 1986-01-30 1987-01-29 Signal processor for rapidly executing a predetermined calculation a plurality of times for typically carrying out fft or inverse fft

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61016697A JPS62175866A (ja) 1986-01-30 1986-01-30 シグナルプロセツサ

Publications (2)

Publication Number Publication Date
JPS62175866A true JPS62175866A (ja) 1987-08-01
JPH04307B2 JPH04307B2 (ja) 1992-01-07

Family

ID=11923487

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61016697A Granted JPS62175866A (ja) 1986-01-30 1986-01-30 シグナルプロセツサ

Country Status (3)

Country Link
US (1) US4899301A (ja)
EP (1) EP0238807A3 (ja)
JP (1) JPS62175866A (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3854818T2 (de) * 1987-08-21 1996-05-15 Commw Scient Ind Res Org Transformationsverarbeitungsschaltung
US5093801A (en) * 1990-07-06 1992-03-03 Rockwell International Corporation Arrayable modular FFT processor
US5038311A (en) * 1990-08-10 1991-08-06 General Electric Company Pipelined fast fourier transform processor
JPH05158967A (ja) * 1991-12-05 1993-06-25 Nec Corp 計算機システム
US5845093A (en) * 1992-05-01 1998-12-01 Sharp Microelectronics Technology, Inc. Multi-port digital signal processor
JPH0620034A (ja) * 1992-07-02 1994-01-28 Nec Corp 画像処理用アドレス生成回路
SE507529C2 (sv) * 1996-10-21 1998-06-15 Ericsson Telefon Ab L M Anordning och förfarande vid beräkning av FFT
EP0855657B1 (en) 1997-01-22 2007-03-14 Matsushita Electric Industrial Co., Ltd. Fast fourier transforming apparatus and method
US6477554B1 (en) * 1999-09-17 2002-11-05 Globespanvirata, Inc. Circuit and method for computing a fast fourier transform
US6557096B1 (en) * 1999-10-25 2003-04-29 Intel Corporation Processors with data typer and aligner selectively coupling data bits of data buses to adder and multiplier functional blocks to execute instructions with flexible data types
EP1162547A3 (en) * 2000-06-05 2003-09-03 DSP Group Ltd. In-Place Memory Management for FFT
US6760741B1 (en) * 2000-06-05 2004-07-06 Corage Ltd. FFT pointer mechanism for FFT memory management
US7062523B1 (en) * 2000-08-01 2006-06-13 Analog Devices, Inc. Method for efficiently computing a fast fourier transform
US20030212721A1 (en) * 2002-05-07 2003-11-13 Infineon Technologies Aktiengesellschaft Architecture for performing fast fourier transforms and inverse fast fourier transforms
KR100518797B1 (ko) * 2004-01-07 2005-10-05 삼성전자주식회사 처리속도가 향상된 고속 퓨리에 변환 장치 및 그의 처리방법
KR100762281B1 (ko) * 2005-12-08 2007-10-01 한국전자통신연구원 고속 푸리에 변환 시스템의 메모리 주소 생성 방법 및 그를이용한 트위들 팩터 생성 장치
US20080071848A1 (en) * 2006-09-14 2008-03-20 Texas Instruments Incorporated In-Place Radix-2 Butterfly Processor and Method
US8200729B2 (en) * 2006-10-25 2012-06-12 Agilent Technologies, Inc. Efficient implementation of filters for MIMO fading
US20090172062A1 (en) * 2007-12-31 2009-07-02 Broadcom Corporation Efficient fixed-point implementation of an fft
US8572149B2 (en) * 2009-03-28 2013-10-29 Qualcomm Incorporated Apparatus and methods for dynamic data-based scaling of data such as staged fast fourier transform (FFT) while enhancing performance

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4075630A (en) * 1976-09-01 1978-02-21 Raytheon Company Signal processor
US4138730A (en) * 1977-11-07 1979-02-06 Communications Satellite Corporation High speed FFT processor
US4541048A (en) * 1978-10-06 1985-09-10 Hughes Aircraft Company Modular programmable signal processor
US4266279A (en) * 1979-03-29 1981-05-05 Motorola, Inc. Memory system for a Doppler radar incorporating a fast Fourier transform computer
GB2084362B (en) * 1980-09-19 1984-07-11 Solartron Electronic Group Apparatus for performing the discrete fourier transform
US4587626A (en) * 1981-10-13 1986-05-06 Trw Inc. Sum and difference conjugate discrete Fourier transform
JPS59103169A (ja) * 1982-12-03 1984-06-14 Matsushita Electric Ind Co Ltd デジタル信号処理装置

Also Published As

Publication number Publication date
JPH04307B2 (ja) 1992-01-07
EP0238807A3 (en) 1991-03-20
US4899301A (en) 1990-02-06
EP0238807A2 (en) 1987-09-30

Similar Documents

Publication Publication Date Title
JPS62175866A (ja) シグナルプロセツサ
US4490807A (en) Arithmetic device for concurrently summing two series of products from two sets of operands
JPH0934693A (ja) 指数対数変換回路
JPH0526229B2 (ja)
Chu et al. A prime factor FTT algorithm using distributed arithmetic
EP0297588A2 (en) Trigonometric function arithmetic processor using pseudo-division
Nishitani et al. Advanced single-chip signal processor
US3290493A (en) Truncated parallel multiplication
US7774399B2 (en) Shift-add based parallel multiplication
US6101521A (en) Data processing method and apparatus operable on an irrational mathematical value
JP2508286B2 (ja) 平方根演算装置
JPH05174046A (ja) 演算回路
JP3872724B2 (ja) 高速フーリエ変換のための回転因子表およびそれを用いた高速フーリエ変換装置
US6256656B1 (en) Apparatus and method for extending computational precision of a computer system having a modular arithmetic processing unit
JP3970442B2 (ja) 離散コサイン変換装置及び逆離散コサイン変換装置
JPH0585924B2 (ja)
KR940004476B1 (ko) 디지탈 필터의 연산 처리 회로
EP0988604A1 (en) Device for converting series of data elements
JPH074658Y2 (ja) 対数変換回路
JPH0215089B2 (ja)
JP3105577B2 (ja) 分割積型乗算装置
EP0988605A2 (en) Device for converting series of data elements
JPS59186070A (ja) 高速信号処理装置
CN115586922A (zh) 一种存储与计算格式解耦的SpMV混合精度优化方法
JPH06105421B2 (ja) 逆三角関数演算装置

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term