JPH0636164B2 - Fft演算装置 - Google Patents

Fft演算装置

Info

Publication number
JPH0636164B2
JPH0636164B2 JP62184264A JP18426487A JPH0636164B2 JP H0636164 B2 JPH0636164 B2 JP H0636164B2 JP 62184264 A JP62184264 A JP 62184264A JP 18426487 A JP18426487 A JP 18426487A JP H0636164 B2 JPH0636164 B2 JP H0636164B2
Authority
JP
Japan
Prior art keywords
fft
data
scaling
target data
calculation
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.)
Expired - Lifetime
Application number
JP62184264A
Other languages
English (en)
Other versions
JPS6426975A (en
Inventor
吉田  隆
和良 久保
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric 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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP62184264A priority Critical patent/JPH0636164B2/ja
Publication of JPS6426975A publication Critical patent/JPS6426975A/ja
Publication of JPH0636164B2 publication Critical patent/JPH0636164B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、FFT演算装置に関するものであり、詳しく
は、固定小数点演算によりFFT演算処理を実行するF
FT演算処理装置におけるオーバーフロー防止に関する
ものである。
(従来の技術) FFT演算装置の一種に、ブロックフローティングを用
いた固定小数点演算によりFFT演算処理を実行するよ
うに構成されたものがある。
この方法は、N個のFFT対象データよりなるデータブ
ロックに対して1つの指数を持たせて演算するものであ
って、FFT演算時にオーバーフローが発生しないよう
にFFT演算に先行して前述のデータブロック全体に対
してFFTアルゴリズムに応じたスケーリング演算が行
われる。
これにより、FFT演算時にオーバーフローが発生する
ことは防止できるが、オーバーフローが発生しないよう
なデータブロックに対しても一義的にFFTアルゴリズ
ムに応じた所定のスケーリング演算が行われることにな
り、FFTの精度が低下することになる。
このような不都合を解決するためには、スケーリング演
算に先行してデータブロックを構成するFFT対象デー
タの最大値を判別してスケーリング演算の要否を判断す
ることが望ましい。
スケーリング演算の要否はソフトウェアで処理すること
もできるが、その分FFT演算処理が遅れることになり
好ましくない。
そこで、第5図のような概略構成の装置が提案されてい
る。第5図において、1はFFT演算を行うデジタルシ
グナルプロセッサ(DSP)であり、FFT演算に先立
ってFFT対象データをデータメモリ2に格納する。3
はスケーリング判別回路であり、データメモリ2に格納
されるFFT対象データの最大値に基づいて、FFT演
算時にオーバーフローを発生させないためのスケーリン
グ値(1,1/2,1/4,1/8など)を判別する。4はDS
P1,データメモリ2およびスケーリング判別回路3を
共通に接続するメモリバス、5はDSP1とスケーリン
グ判別回路3を接続するI/Oバスである。
第6図,第7図はそれぞれ従来のスケーリング判別回路
3の構成例を示すブロック図である。第6図において、
6は互いに異なる閾値が設定された複数n個のコンパレ
ータで構成されたコンパレータブロックであり、各入力
端子にはFFT対象データが並列に加えられ、出力端子
は判定結果レジスタ7に接続されている。ここで、例え
ばコンパレータ1はFFT対象データが1/2よりも大き
い場合には“H”レべルを出力し、コンパレータ2はF
FT対象データが1/4よりも大きい場合には“H”レべ
ルを出力するように設定されている。第7図において、
8はリードオンリメモリ(ROM)であり、このROM
8にはFFT対象データをアドレスとして第6図のコン
パレータブロック6と同様の出力信号が得られるように
変換データが格納されている。
このような構成において、DSP1がデータメモリ2に
FFT対象データを書き込む毎にスケーリング判別回路
3は前述のようなスケーリング値の判別を行い、その判
別結果をDSP1に送出する。そして、DSP1は、ス
ケーリング判別回路3から加えられるスケーリング値の
判別結果に従ってFFT対象データに対して所定のスケ
ーリング演算を行った後、FFT演算を実行する。
(発明が解決しようとする問題点) しかし、第6図,第7図に示すような従来のスケーリン
グ判別回路は、それぞれFFTアルゴリズムに固有のも
のであり、複数のFFTアルゴリズムが選択できる装置
の場合には各FFTアルゴリズムに対応した複数のスケ
ーリング判別回路を用意しなければならないという欠点
がある。
また、第6図の構成によれば、コンパレータブロック6
を構成していることから部品点数が多くなるという欠点
もある。
本発明は、このような点に着目したものであって、その
目的は、共通の回路構成で、異なるFFTアルゴリズム
によるFFT演算時のオーバーフロー発生が防止できる
FFT演算装置を提供することにある。
(問題点を解決するための手段) 本発明のFFT演算装置は、 複数のFFTアルゴリズムを有し、選択された所定のF
FTアルゴリズムに従って、ブロックフローティングを
用いた固定小数点演算によるFFT演算処理を実行する
FFT演算装置において、 FFTアルゴリズムの選択に応じたオーバーフロー閾値
データが格納され、FFT対象データとオーバーフロー
閾値データとの比較結果を出力するランダムアクセスメ
モリと、 このランダムアクセスメモリの比較結果の最大値をホー
ルドするレジスタとを具備し、 前記レジスタにホールドされた比較結果に従ってFFT
対象データに対するスケーリング演算を実行することを
特徴とする。
(実施例) 以下、図面を用いて本発明の実施例を詳細に説明する。
第1図は、本発明の一実施例の要部を示すブロック図で
ある。第1図において、10はランダムアクセスメモリ
(RAM)であり、図示しないDSPからFFTアルゴ
リズムの選択に応じたオーバーフロー閾値データが格納
され、FFT対象データとオーバーフロー閾値データと
の比較結果を判定結果レジスタ11に出力する。すなわ
ち、RAM10には、FFT対象データをアドレスとし
て従来の第6図のコンパレータブロック6と同様の出力
信号を得ることができる変換データが格納される。判定
結果レジスタ11はRAM10の比較結果の最大値をホ
ールドする。
第2図は第1図の具体例を示すブロック図であり、第1
図と同一部分には同一符号を付けている。第2図におい
て、12は図示しないDSPやデータメモリも共通に接
続されるデータバスであり、例えば16ビットのFFT
対象データが伝送される。13はラッチ回路であり、R
AM10に所定の変換データを書き込む時にはFFT対
象データの一部をアドレスしてラッチするとともに、F
FT対象データの値を判定する時にはこのFFT対象デ
ータの一部をデータとしてラッチする。このラッチ回路
13のクロック端子CKには、図示しないDSPから、
ゲート14を介してストローブ信号▲▼およびチ
ップセレクト信号▲▼が加えられている。RAM
10の▲▼端子にはチップセレクト信号▲▼
が加えられている。なお、本実施例では、RAM10は
FFT対象データの上位8ビットをアドレスとして4ビ
ットの比較結果D〜Dを個別に出力する例を示して
いる。ここで、例えばDはスケーリングが不要な状態
を示し、Dは1/2にスケーリングする状態を示し、D
は1/4にスケーリングする状態を示し、Dは1/8にス
ケーリングする状態を示す。15はRAM10に所定の
変換データを書き込むためのトライステートのデータバ
ッファであり、本実施例ではFFT対象データの下位4
ビットを書き込む例を示している。このデータバッファ
15の制御端子にはDSPからチップセレクト信号▲
▼が加えられている。16はオアゲートであり、R
AM10の出力端子D〜Dに対応するように4個設
けられている。17はフリップフロップであり、オアゲ
ート16に対応するように4個の入力端子D〜D
4個の出力端子Q〜Qが設けられている。これらオ
アゲート16およびフリップフロップ17は判定結果レ
ジスタ11を構成している。すなわち、オアゲート16
の一方の入力端子にはRAM10の出力端子D〜D
がそれぞれ接続され、他方の入力端子にはフリップフロ
ップの出力端子Q〜Qが接続されていて、最大値を
ホールドすることができる。なお、フリップフロップ1
7のクロック端子CKにはRAM10のアクセスタイム
を補償するためのディレー18を介してストローブ信号
▲▼がDSPから加えられ、▲▼端子には
DSPからチップセレクト信号▲▼が加えられて
いる。19は栄 判定結果レジスタ11の判定結果をDSPに読み出すた
めのトライステートのデータバッファであり、本実施例
ではFFT対象データの下位4ビットとして読み出され
ることになる。このデータバッファ19の制御端子には
DSPからチップセレクト信号▲▼が加えられて
いる。
このような装置を用いてFFT演算を実行するのにあた
っては、始めに、選択設定されたFFTアルゴリズムに
対するオーバーフロー閾値データをRAM10に格納す
る。例えばRAM10に8ビット構成のFFT対象デー
タが加えられる場合には、各FFT対象データのレべル
は256ステップのいずれかの大きさになる。そこで、
これら256ステップのレべルをアドレスにして、それ
ぞれの大きさに対応して予め割り当てられた4ビットD
〜Dの出力信号を選択設定されたFFTアルゴリズ
ムに対するオーバーフロー閾値データとしてデータバッ
ファ15を介してデータバス12からRAM10に書き
込む。このようにしてRAM10へのデータの書き込み
が完了した後、データメモリにFFT対象データを格納
するとともにFFT対象データを逐次RAM10にも加
えてオーバーフロー閾値データと比較し、スケーリング
判定を行う。すなわち、RAM10からは、FFT対象
データの256ステップのレべルをアドレスにして予め
割り当てられ格納されている4ビットD〜Dの出力
信号が選択的に出力される。このようにして選択的に出
力される出力信号の最大値は、判定結果レジスタ11の
フリップフロップ17に保持される。DSPは、このフ
リップフロップ17に保持されている出力信号をデータ
バッファ19を介して読み取ってその読み取り値に応じ
たスケーリング演算を含む初段のFFT演算処理を実行
し、演算結果をデータメモリに格納する。この演算結果
に対しても前述と同様にスケーリング判定が行われ、そ
の判定結果に従って所定のスケーリング演算を含む次段
のFFT演算処理が実行される。以下同様に、必要段数
のFFT演算処理が実行されることになる。
第3図は、このような一連のFFT演算処理の流れの要
部を示すフローチャートである。
まず、チップセレクト信号▲▼に従ってラッチ回
路13にアドレスを書き込み(ステップ)、チップセ
レクト信号▲▼に従ってRAM10に変換データ
を書き込む(ステップ)。このようなステップをFF
T対象データのレべルステップ数(256ステップ)繰
り返す。その後、判定結果レジスタ11のフリップフロ
ップ17をチップセレクト信号▲▼に従ってクリ
アし(ステップ)、FFT対象データをデータメモリ
に逐次取り込みながら前回の判定結果に応じてスケール
量を変えてFFT演算のためのバタフライ演算を実行す
る(ステップ)。その後、チップセレクト信号▲
▼に従って今回の判定結果を読み取る(ステップ
)。このようなステップを2点FFTの場合にはn
段繰り返す。
このように構成することにより、FFTアルゴリズムの
選択に応じてRAMに書き込む変換データを更新するだ
けで基数が2,4,8,…などのFFTアルゴリズムを
はじめとするあらゆるFFTアルゴリズムに対応するこ
とができ、従来のようにFFTアルゴリズムに応じてR
OMや回路構成を変更しなくてもよく、装置構成の簡略
化が図れ、高精度の演算を行うことができる。
なお、上記実施例では、DSPがデータメモリにデータ
を書き込む時にスケーリング判定を行う例を示したが、
データを読み出す時に判定するようにしてもよい。
また、スケーリング判定回路に加えるデータのビット数
は8ビットに限るものではなく、増減してもよく、判定
出力データも4ビットに限るものではなく増減してもよ
い。
また、判定結果レジスタに第4図に示すようにエンコー
ダ20を付加して2桁2進数に変換して出力するように
してもよい。この場合、例えば00出力は次の演算では
スケーリングが不要を表わし、01出力は次の演算では
1/2スケーリングが必要であることを表わし、10出力
は次の演算では1/4スケーリングが必要であることを表
わし、11出力は次の演算では1/8スケーリングが必要
であることを表わすことになる。
(発明の効果) 以上説明したように、本発明によれば、共通の回路構成
で、異なるFFTアルゴリズムによるFFT演算時のオ
ーバーフロー発生が防止できるFFT演算装置が実現で
き、実用上の効果は大きい。
【図面の簡単な説明】
第1図は本発明の一実施例を示すブロック図、第2図は
第1図の具体例を示すブロック図、第3図はFFT演算
処理の流れの要部を示すフローチャート、第4図は本発
明の他の実施例の要部を示すブロック図、第5図はFF
T演算装置の概略構成図、第6図,第7図はそれぞれ従
来のスケーリング判別回路の構成例を示すブロック図で
ある。 1……デジタルシグナルプロセッサ(DSP)、2……
データメモリ、3……スケーリング判別回路、10……
ランダムアクセスメモリ(RAM)、11……判定結果
レジスタ、12……データバス、13……ラッチ回路、
14……ゲート、15,19……データバッファ、16
……オアゲート、17……フリップフロップ、18……
ディレー、20……エンコーダ。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】複数のFFTアルゴリズムを有し、選択さ
    れた所定のFFTアルゴリズムに従って、ブロックフロ
    ーティングを用いた固定小数点演算によるFFT演算処
    理を実行するFFT演算装置において、 FFTアルゴリズムの選択に応じたオーバーフロー閾値
    データが格納され、FFT対象データとオーバーフロー
    閾値データとの比較結果を出力するランダムアクセスメ
    モリと、 このランダムアクセスメモリの比較結果の最大値をホー
    ルドするレジスタとを具備し、 前記レジスタにホールドされた比較結果に従ってFFT
    対象データに対するスケーリング演算を実行することを
    特徴とするFFT演算装置。
JP62184264A 1987-07-23 1987-07-23 Fft演算装置 Expired - Lifetime JPH0636164B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62184264A JPH0636164B2 (ja) 1987-07-23 1987-07-23 Fft演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62184264A JPH0636164B2 (ja) 1987-07-23 1987-07-23 Fft演算装置

Publications (2)

Publication Number Publication Date
JPS6426975A JPS6426975A (en) 1989-01-30
JPH0636164B2 true JPH0636164B2 (ja) 1994-05-11

Family

ID=16150275

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62184264A Expired - Lifetime JPH0636164B2 (ja) 1987-07-23 1987-07-23 Fft演算装置

Country Status (1)

Country Link
JP (1) JPH0636164B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2524413B2 (ja) * 1989-10-30 1996-08-14 日本電気株式会社 Fft演算手法自動選択方式
JP2953297B2 (ja) * 1994-03-30 1999-09-27 日本電気株式会社 受光素子およびその駆動方法

Also Published As

Publication number Publication date
JPS6426975A (en) 1989-01-30

Similar Documents

Publication Publication Date Title
EP0127988B1 (en) A normalizing circuit
EP0373291B1 (en) Digital signal processor
JP2692384B2 (ja) アドレス生成回路
JP3487903B2 (ja) 演算装置及び演算方法
JPS5854472A (ja) 画像処理装置及び方法
US4992969A (en) Integer division circuit provided with a overflow detector circuit
JPH0636164B2 (ja) Fft演算装置
US6681314B1 (en) FIFO memory device suitable for data transfer apparatuses with different data bus widths and method for controlling the same
JPS6044675B2 (ja) 楽音デ−タ処理装置
JP3064048B2 (ja) Cd−romの削除ビット貯蔵方法及び回路
US5374776A (en) System for processing musical sound data having overflow/underflow compensation
JPH06301596A (ja) マイクロプロセッサ
JP2752220B2 (ja) 文字列処理装置
JP3121609B2 (ja) デジタル信号処理装置
JP2575856B2 (ja) 演算回路
JP2538095B2 (ja) 同期保護回路
JPH0793213A (ja) バンクレジスタ設定回路
JPS5844417Y2 (ja) チエンジデイテクタ入力モジユ−ル
JP2536489B2 (ja) 圧縮デ−タ復号化装置
JP2861435B2 (ja) パイプライン形演算装置
JPH0252901B2 (ja)
JPH0728220B2 (ja) デ−タ変換処理回路
KR19990070644A (ko) 에러 정정 장치 및 방법
JP2004362262A (ja) 半導体集積回路
JPS6044674B2 (ja) 楽音デ−タ処理装置