JP3503141B2 - ディジタル演算処理装置 - Google Patents

ディジタル演算処理装置

Info

Publication number
JP3503141B2
JP3503141B2 JP03838592A JP3838592A JP3503141B2 JP 3503141 B2 JP3503141 B2 JP 3503141B2 JP 03838592 A JP03838592 A JP 03838592A JP 3838592 A JP3838592 A JP 3838592A JP 3503141 B2 JP3503141 B2 JP 3503141B2
Authority
JP
Japan
Prior art keywords
address
arithmetic processing
data
start signal
digital
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 - Fee Related
Application number
JP03838592A
Other languages
English (en)
Other versions
JPH05210694A (ja
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP03838592A priority Critical patent/JP3503141B2/ja
Publication of JPH05210694A publication Critical patent/JPH05210694A/ja
Application granted granted Critical
Publication of JP3503141B2 publication Critical patent/JP3503141B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ディジタル・オーディ
オ機器やディジタル・ビデオ機器等におけるディジタル
演算処理、特にディジタル・フィルタ処理を行うような
ディジタル演算処理装置に関する。
【0002】
【従来の技術】一般にディジタル・オーディオ信号やデ
ィジタル・ビデオ信号のテープレコーダあるいはディス
クプレーヤ等においては、ディジタル演算処理、特に各
種ディジタル・フィルタ処理が必要とされている。この
ディジタル・フィルタ機能等を実現するための演算、例
えばいわゆるFIR(有限インパルス応答)フィルタの
演算は、メモリ上のデータと係数とを乗算して累積加算
することを繰り返すだけであるので、乗算や加算の命令
は固定あるいは単調な繰り返しで済み、またデータ・メ
モリのアドレスもカウンタで連続的に生成することがで
きる。
【0003】また、1種類のFIRフィルタだけでな
く、他の種類のFIRフィルタ等についても、同じハー
ドウェアを用いて時分割処理する場合には、メモリに命
令やデータ・アドレスを記憶させてマイクロプログラム
処理することができる。この場合には、処理内容の変更
の自由度が高い代わりに、マイクロプログラム用のメモ
リが必要となるため、素子数やICチップ面積等が増加
し、メモリをアクセスするための消費電力も増加するこ
とになる。
【0004】
【発明が解決しようとする課題】ところで、1ワードの
処理ステップ数の内の大半が次数の多いFIRの積和演
算である場合には、単純な繰り返し命令や連続的なデー
タ・アドレスを発生させるためにメモリを使用すること
になり、メモリ容量や素子数や消費電力の不必要な増加
を招くことになる。特に、マイクロプログラムのメモリ
に外部から転送できるRAMを用いている場合に、素子
数や消費電力の増加が顕著である。
【0005】本発明は、このような実情に鑑みてなされ
たものであり、マイクロプログラムに基づいてディジタ
ル演算処理、特にFIRフィルタ処理を行う装置におい
て、連続的な積和演算と他の演算とを行わせる際に、繰
り返しの部分をハードウェア化して、メモリ容量の低減
や、消費電力の低減を図るようなディジタル演算装置の
提供を目的とする。
【0006】
【課題を解決するための手段】本発明に係るディジタル
演算処理装置は、ディジタルデータに対して連続的な積
和演算と他の演算とを行う演算処理手段と、上記演算処
理手段での上記他の演算を制御するためのオペレーショ
ンコードが記憶されるオペレーション記憶手段と、上記
演算処理手段での上記連続的な積和演算を制御するため
のオペレーションコードの生成を行うオペレーション生
成手段と、上記オペレーション記憶手段から読み出され
たオペレーションコードと上記オペレーション生成手段
から生成されたオペレーションコードとを、上記演算処
理手段を制御するためのコントロール信号にデコードす
るオペレーションデコード手段と、上記オペレーション
デコード手段から出力されるスタート信号に基づいて、
上記オペレーションデコード手段への上記オペレーショ
ン生成手段からのオペレーションコードの供給と、上記
オペレーション記憶手段からのオペレーションコードの
供給とを切り換えるタイミングを生成する計数手段とを
有することにより、上述の課題を解決する。
【0007】また、本発明に係るディジタル演算処理装
置は、ディジタルデータが記憶されるデータ記憶手段
と、上記ディジタルデータに対して連続的な積和演算と
他の演算とを行う演算処理手段と、上記演算処理手段で
の上記他の演算が行われるディジタルデータが記憶され
る上記データ記憶手段のアドレスを記憶するアドレス記
憶手段と、上記演算処理手段での上記連続的な積和演算
が行われるディジタルデータが記憶される上記データ記
憶手段のアドレスを生成するアドレス生成手段と、外部
からのマイクロプログラムに基づいてスタート信号を出
力するスタート信号生成手段と、上記スタート信号生成
手段から出力されるスタート信号に基づいて、上記演算
処理手段への上記アドレス生成手段からのアドレスの供
給と、上記アドレス記憶手段からのアドレスの供給を切
り換えるタイミングを生成する計数手段とを有すること
により、上述の課題を解決する。
【0008】
【作用】マイクロプログラムの内の繰り返し部分や規則
的な部分を、メモリの代わりにロジック回路で生成する
ことにより、メモリ容量を減らすことができ、メモリか
ら読み出すための消費電力も減らすことができる。すな
わち、自由度を持たせつつ素子数、電力を低減できる。
また、命令コード中にロジック回路による生成動作の開
始点を入れておくことにより、処理途中での任意の箇所
でメモリ読み出し動作からロジック回路による生成動作
に切り換えることができる。また、ロジック回路による
生成中は、命令及びデータ・アドレスのメモリのアドレ
スを停止したり、メモリのアクセスを禁止したりするこ
とにより、消費電力を減らすことができる。さらに、乗
算器の係数が0のときに乗算処理を禁止することによ
り、消費電力を減らすことができる。
【0009】
【実施例】以下、本発明に係る一実施例として、ディジ
タル・オーディオ・テープレコーダ(DAT)のオーバ
ーサンプリングA/D、D/A変換のためのディジタル
・フィルタ、特にFIR(有限インパルス応答)フィル
タに適用した例について、図面を参照しながら説明す
る。この実施例では、FIRフィルタ処理の大部分をハ
ードウェア・ロジック回路構成により行い、FIRフィ
ルタ処理の残り及び他の処理をメモリ(RAM)からマ
イクロプログラムを読み出すことにより行うようにして
いる。
【0010】図1及び図2は、本発明の一実施例となる
ディジタル演算処理装置の概略的なハードウェア構成を
示すブロック図であり、図1はデータを取り扱う部分
を、図2はコントロール(制御)信号を取り扱う部分を
それぞれ示している。また、図3は、図2に示すコント
ロール部分の要部の具体的な回路構成の一例を示すブロ
ック回路図である。
【0011】先ず、図1に示すデータ部分は、入出力回
路及びマイクロプログラムで動くALU(算術論理演算
ユニット)とデータRAMから成っており、基本的には
スロット・クロック単位で処理される。この図1中のブ
ロックに供給される各制御信号の内、OEは出力(アウ
トプット)イネーブルを、LEはラッチ・イネーブル
を、RDは読み出し(リード)を、WRは書き込み(ラ
イト)を、CLRはクリアを、SELはセレクトをそれ
ぞれ示している。
【0012】入出力端子101には、ディジタル・オー
ディオ・データに対してエラー訂正符号化/復号化処理
を行うためのエンコーダ/デコーダ部、いわゆるコーデ
ックが接続されている。コーデック・バッファ102
は、入出力端子101に接続される上記コーデックとの
間でデータの送受を行うと共に、SRバス110との間
でデータの送受を行う。SRバス110にはシフトレジ
スタ103が接続され、このシフトレジスタ103は、
入出力端子104を介して、A/D、D/A変換器に接
続されている。
【0013】DATの録音時には、A/D変換器から入
出力端子104を介してオーディオ・シリアル・データ
がシフトレジスタ103に入力されてパラレル・データ
に変換される。このシフトレジスタ103からのパラレ
ル・データは、SRバス110を通って固定のタイミン
グで入力ラッチ111に取り込まれる。またDATの再
生時には、上記コーデックからのエラー訂正復号化処理
されたデータが、コーデック・バッファ102を介しS
Rバス110を介して入力ラッチ111に送られて取り
込まれる。
【0014】入力ラッチ111に取り込まれたデータ
は、DFバス120に送られ、マイクロプログラムによ
るタイミングでデータRAM113に書き込まれる。こ
のデータRAM113は、端子114からのアドレス
(ADRS)によりアクセスされる。DFバス120に出さ
れたデータは、レジスタのラッチ・イネーブル信号 Reg
・LEによって入力レジスタ121に取り込むことができ
る。
【0015】このディジタル・フィルタでは、対称係数
のFIR演算において、予め同じ係数に対するデータの
和を前置加算器(プリアダー)122で求めてから係数
との乗算を行えるようになっている。前置加算器122
には、マルチプレクサ123で選択された出力xと、マ
ルチプレクサ124で選択された出力yとが供給され
て、これらが加算される。マルチプレクサ123は、入
力レジスタ121からの出力、データRAM113から
DFバス120を介した出力、アキュームレータ130
からの出力、及びオール0の内から選んで切り換え、出
力xとして取り出すことができる。この選択制御信号を
SEL・x とする。マルチプレクサ124は、入力レジス
タ121からの出力、データRAM113からDFバス
120を介した出力、及びオール0から選んで切り換え
ることができる。この選択制御信号を SEL・y とし、出
力をyとする。
【0016】前置加算器122からの加算出力は、オー
バーフロー・リミッタ125と、乗算器131のAレジ
スタA-Reg とにそれぞれ送られる。AレジスタA-Reg に
は1ビットだけシフトダウンされて、すなわち1/2に
されて入力される。オーバーフロー・リミッタ125か
らの出力は、ALUバッファ126を介してDFバス1
20に出力され、データRAM113や出力ラッチ11
2に書き込まれる。
【0017】DATの録音時には、出力ラッチ112か
らのデータ出力は、SRバス110を介し、コーデック
バッファ102を介して、上記コーデックに送られる。
また再生時には、出力ラッチ112からのデータ出力
は、シフトレジスタ103に送られてシリアル/パラレ
ル変換され、最上位ビット(MSB)ファーストで上記
D/A変換器に送られる。
【0018】上記乗算器131のBレジスタB-Reg に
は、係数COEFが入力される。乗算器131のA、B各レ
ジスタA-Reg 、B-Reg には、上記スロット・クロックの
2倍の周期の乗算クロック MPY・CKが与えられ、取り込
まれた内容を乗算した結果がアキュームレータ加算器1
32に送られる。この乗算器131は、乗算イネーブル
信号 MPY・ENによってデータ取り込みを禁止することも
できる。アキュームレータ加算器132のもう一方の入
力端子には、カスケード・マルチプレクサ133からの
出力が供給される。カスケード・マルチプレクサ133
は、アキュームレータ130からの出力とクリア状態の
オール0とを選択できる。アキュームレータ加算器13
2からの加算出力は、シフタ135で1ビットだけシフ
ト・アップ又はシフト・ダウンされてから、アキューム
レータ130に入力され、上述した乗算器131の各レ
ジスタA-Reg 、B-Reg と同じ乗算クロック MPY・CKで取
り込まれる。アキュームレータ130は、アキュームレ
ータ・イネーブル信号 Acc・ENによってデータ取り込み
を禁止することもできる。
【0019】このディジタル・フィルタでは、係数だけ
を浮動小数点表現し、指数部の差分が1又は0になるよ
うに仮数部を調整して、その指数部差分をシフト・ダウ
ンに与えることにより、擬似的に浮動小数点乗算を行う
ようにしている。
【0020】次に図2は、上記ハードウェアの内のコン
トロール信号を取り扱う部分を、図3は、この図2に示
すコントロール部分の要部の具体的な構成例を、それぞ
れ示している。このコントロール部分では、乗算器の係
数(COEF)、データRAMのアドレス(ADRS)、及び上
記ALU(算術論理演算ユニット)部への各種コントロ
ール信号を生成する。
【0021】これらの図2及び図3において、マイクロ
プログラムは、係数RAM151、アドレスRAM15
2、及びオペレーションRAM153にそれぞれの内容
が格納されるようになっており、これらのRAM15
1、152、153のアドレスは、スロット・カウンタ
155からのカウント出力により与えられる。これらの
RAM151、152、153へのマイクロ・プログラ
ムの各内容は、外部から転送されて格納される。
【0022】スロット・カウンタ155は、上記スロッ
ト・クロックをカウントして歩進する例えば5ビットの
カウンタであり、周波数fsのサンプリング周期内で、
1ワード当たり32スロットで1周する。係数RAM1
51の係数は、スロット・クロックの2倍の周期の上記
乗算クロック MPY・CKにより、1ワード当たり16回ア
クセスされるので、係数RAM151にはスロット・カ
ウンタ155からの出力の最下位ビット(LSB)を除
いた4ビットを与える。
【0023】このディジタル演算処理装置においては、
1ワードの内、ハードウェア・ロジック回路によるFI
R処理は16スロット分とし、メモリ(RAM)からの
マイクロプログラムによる残りのFIR処理や他のFI
R以外の処理も16スロット分としている。
【0024】スロット・カウンタ155からアドレスR
AM152とオペレーションRAM153とに与えられ
るアドレスは、5ビットのカウント出力(QA 〜QE
の内のそれぞれ下位4ビット(QA 〜QD )となってお
り、これらのRAM152、153の記憶容量はそれぞ
れ16スロット分しかなく、1ワード(1サンプリング
周期)の間に2周する。FIR処理の内の上記ハードウ
ェア・ロジック回路による処理を行っている間は、アド
レスRAM152とオペレーションRAM153とはい
ずれもアクセスが禁止され、スロット・カウンタ155
が16クロック分進んで同じ4ビットRAMアドレスに
戻ってくるとアクセスが再開されるようになっている。
これにより、RAM152、153での消費電力の低減
を図っている。
【0025】FIRアドレス生成回路156にはFIR
カウンタが設けられており、オペレーション・デコーダ
170からのスタート信号 FIR・Stをトリガとして、上
記スロット・クロックをカウントし始める。この時点か
ら16クロックの間、ディジタル演算のアドレスとオペ
レーションとは、RAM152、153からではなくロ
ジック回路、すなわちFIRアドレス生成回路156及
びFIRオペレーション生成回路157で生成される。
16クロック後は、再びRAM152、153からのマ
イクロプログラムによる処理に戻る。
【0026】アドレスRAM152からのアドレス出力
は、アドレス保持ラッチ154を介してオフセット加算
器176に送られ、このオフセット加算器176にてF
IRアドレス生成回路156からのアドレス出力と加算
される。オフセット加算器176からの加算出力は、加
算器178に送られ、ベースアドレス・カウンタ177
からのカウント出力と加算され、アドレス・フリップフ
ロップ179を介して上記データRAM113のアドレ
ス出力(ADRS)として取り出される。オペレーションR
AM153からのオペレーション出力は、FIRオペレ
ーション生成回路157を介してオペレーション・デコ
ーダ170に送られ、オペレーション・デコーダ170
では上記ALUの各コントロール信号に条件デコードす
る。
【0027】上記スロット・カウンタ155の5ビット
のカウント出力(QA 〜QE )の内の最下位ビット(L
SB、図3ではQA )を除いた上位4ビット(QB 〜Q
E )によりアクセスされる係数RAM151からの係数
出力は、係数マルチプレクサ172に送られてFIRア
ドレス生成回路156からの出力との間で切換選択さ
れ、乗算係数(COEF)として上記乗算器131のBレジ
スタB-Reg に送られる。また、係数マルチプレクサ17
2からの係数の各ビットが全て0か否かを検出するオー
ル0検出回路174が設けられている。
【0028】ここで、このFIRディジタル・フィルタ
では、対称係数のFIR演算において、予め同じ係数に
対するデータの和を求めてから係数との乗算を行うため
に、係数の外側から内側へ向かって2個ずつ順にアクセ
スするようなアドレスを生成している。
【0029】すなわち、例えば補間型ディジタルLPF
の場合、そのインパルス応答は図4のようになることか
ら、各係数(…、C-2、C-1、C0 、C1 、C2 、…)
を見ると、0次の係数C0 を中心として正負両側に対称
となっており、その次数が高くなるほど絶対値が小さ
く、0次の係数C0 (=1)を除く偶数次の係数C
2 (=C-2)、C4 (=C-4)等はいずれも0となって
いる。また、奇数次の各係数は、例えば38次の場合の
19(=C-19 )までで、 C1 (=C-1) ≒ 0.6328 C3 (=C-3) ≒−0.2031 C5 (=C-5) ≒ 0.1152 C7 (=C-7) ≒−0.07520 C9 (=C-9) ≒ 0.05078 C11(=C-11 )≒−0.03516 C13(=C-13 )≒ 0.02393 C15(=C-15 )≒−0.01587 C17(=C-17 )≒ 0.009888 C19(=C-19 )≒−0.008057 となっている。
【0030】これらの奇数次の各係数を、仮数部が8ビ
ットで、隣合う係数の指数部間の差分が0又は1となる
ような浮動小数点形式で表すと、 C1 (=C-1) :01010001 〔 ×2-7 〕 C3 (=C-3) :11001100 〔 ×2-8 〕 C5 (=C-5) :00111011 〔 ×2-9 〕 C7 (=C-7) :10110011 〔 ×2-10 〕 C9 (=C-9) :01101000 〔 ×2-11 〕 C11(=C-11 ):10111000 〔 ×2-11 〕 C13(=C-13 ):01100010 〔 ×2-12 〕 C15(=C-15 ):10111111 〔 ×2-12 〕 C17(=C-17 ):01010001 〔 ×2-13 〕 C19(=C-19 ):10111110 〔 ×2-13 〕 となる。ここで「01010001」等が係数の仮数部
の2進数表示値を示し、〔 〕内が係数の指数部に対応
して2の巾乗表示した値を示している。
【0031】ここで、係数の両端近傍(高次部分)では
演算結果に与える影響が少なくなる点、及びロジック回
路で生成し易くする点を考慮して、指数部の差を3に制
限した係数の一例を、C19から順に正側のみ示す。 C19: 11110111(F7H) 〔 ×2-10 〕 C17: 00001010(0AH) 〔 ×2-10 〕 C15: 11101111(EFH) 〔 ×2-10 〕 C13: 00011000(18H) 〔 ×2-10 〕 C11: 11011100(DCH) 〔 ×2-10 〕 C9 : 00110100(34H) 〔 ×2-10 〕 C7 : 10110011(B3H) 〔 ×2-10 〕 C5 : 00111011(3BH) 〔 ×2-9 〕 C3 : 11001100(CCH) 〔 ×2-8 〕 C1 : 01010001(51H) 〔 ×2-7 〕 ここで、(F7H)等は、仮数部の16進表示値を示
す。
【0032】図5には、このような各係数を有する38
次FIRフィルタのシグナルフロー図を示している。こ
の図5の入力端子181に入力されたデータがLPF
(ローパスフィルタ)処理されて出力端子182より出
力データとして取り出される。入力端子181から39
個のレジスタが直列接続され、各レジスタに取り込まれ
たデータを入力側から順にD-19 、D-18 、…、D-1
0 、D1 、D2 、…、D18、D19とするとき、データ
0 が現在のデータを示している。ここで、0次を除く
偶数次の乗算係数がいずれも0であることより、奇数次
の係数についてそれぞれのデータと乗算し累積加算すれ
ばよいことから、これらの奇数次及び0次の各係数に対
応する各データD-19 、D-17 、…、D-1、D0
1 、D3 、…、D17、D19を取り出して、いわゆる積
和演算を行わせるようにしている。
【0033】具体的な積和演算の際には、上述したよう
な同じ係数に対するデータの和を求めてから係数との乗
算を行っている。すなわち、両端側の2個のデータD
-19 及びデータD19の和を求め、1/2して係数C19
8倍(8・C19)を乗算することにより、8・P19(=
8・C19(D-19 +D19)/2)を求め、次に、これら
の内側の2個のデータD-17 及びデータD17の和につい
ての係数乗算値8・P17(=8・C17(D-17 +D17
/2)を求めて上記係数乗算値8・P19との和をとる。
これを8・ΣP19-17 と表す。以下同様に内側(現在デ
ータD0 側)に向かって2個ずつ順にデータの和をとっ
て対応する係数と乗算し、乗算結果を累積加算してい
る。この積和演算中において、データD-7、D7 につい
ての係数乗算値8・P7 を求めた後、その累積加算した
値8・ΣP19-7を、シフタ184aでシフト・ダウンす
ることにより1/2にして、4・ΣP19-7とし、これを
次の係数乗算値4・P5 と加算(累積加算)している。
このようなシフト・ダウンをシフタ184b、184c
でも行い、最終的に1倍の係数となるようにしている。
これらのシフタ184a〜184cは、上記図1のシフ
タ135に対応するものである。また、上記係数乗算及
びシフト・ダウン動作については、図7の(l)〜
(p)を参照しながら後述する。
【0034】この図5の例では、ディジタルLPF(ロ
ーパスフィルタ)の部分183に対して、シフタ186
a、加算器186b、オーバーフロー・リミッタ186
c、遅延素子186dより成る回路部を付加すること
で、ディジタルHPF(ハイパスフィルタ)の特性を実
現するようにしている。
【0035】ところで、この図5に示すFIRフィルタ
のディジタル演算は、主として図3に示すようなハード
ウェアのロジック回路により行っているが、データRA
M113に対して上記両端側データD-19 及びデータD
19の2個から内側(現在データD0 側)に向かって2個
ずつ順にアクセスする際に、外側の2組(4個)のデー
タD-19 、D19、D-17 、D17については、アドレスR
AM152からのアドレスを読み出して、(オフセット
加算器176、加算器178、アドレス・フリップフロ
ップ179を介して)上記データRAM113内の各デ
ータをアクセスするようにし、データD-15 、D15から
内側のデータのアクセスについては、FIRアドレス生
成回路156からのハードウェア的に生成されたFIR
アドレス(オフセット・アドレス)を用いるようにして
いる。すなわち、FIRアドレス生成回路156内のF
IRカウンタやExOR回路等によって生成されたオフ
セット分のFIRアドレスをオフセット加算器176に
送って、加算器178、アドレス・フリップフロップ1
79を介して最終的なデータRAMアドレスを得るよう
にしている。このときのFIRアドレス生成回路156
内のFIRカウンタからの4ビット出力(QA 〜QD
とオフセット加算器176に送られる5ビットのオフセ
ット・アドレス入力(B0 〜B4 )との関係を、次の表
1に示す。
【0036】
【表1】
【0037】この表1において、FIRカウンタは0〜
F(16進数)をカウントして0に戻るときのオフセッ
ト・アドレスの5ビット(B0 〜B4 )は、2の補数表
示値であり、10進数表示では負と正とを交互にとるよ
うな値となる。
【0038】上記ロジック回路によるFIR処理が開始
された最初のスロットでは、アドレスRAM152はF
IR終了後の最初のアドレスとなっているので、その内
容を読み出してアドレス保持ラッチ154に保持してお
き、FIR処理の間の対称係数の中心のデータをアクセ
スするようなオフセットとする。
【0039】FIRアドレス生成回路156の出力とア
ドレス保持ラッチ154の内容は、オフセット加算器1
76に入力されて加算される。上記ロジック回路による
FIR処理が終了した後は、上記FIRカウンタはクリ
アされて止まっているので、出力は0となる。
【0040】サンプリング周期(周波数fs)でカウン
トアップされるベースアドレス・カウンタ177からの
カウント出力と、オフセット加算器176からの出力と
を加算器178で加算し、アドレス・フリップフロップ
179を介して、図1のデータRAM113にアドレス
(ADRS)として送る。
【0041】オペレーションRAM153からは、ディ
ジタル・フィルタ操作のコードが出力され、ロジック回
路によるFIR処理のとき以外は、FIRオペレーショ
ン生成回路157をそのまま通過して、オペレーション
・デコーダ170でALUの各コントロール(制御)信
号にデコードされる。しかし、ロジック回路によるFI
R処理のときは、オペレーションRAM153の出力は
無視してFIR演算のための2つのオペレーションを、
上記乗算クロック MPY・CKの“H”と“L”とに応じて
繰り返し生成する。このときもスロット・カウンタ15
5が16クロックだけカウントしてRAMアドレスが元
に戻ってくるとアクセスを再開する。
【0042】係数RAM151の出力は、FIRのとき
以外は係数マルチプレクサ172をそのまま通過して乗
算器131のBレジスタB-Reg に入力される。しかし、
ロジック回路によるFIR処理のときは、FIRアドレ
ス生成回路156内のFIRカウンタの最下位ビット
(LSB)の次のビット(QB )を係数の最上位ビット
(MSB)とし、係数のMSB以外のビットは係数RA
M151から乗算器131のBレジスタB-Reg に入力さ
れる。すなわち、係数のMSBだけが係数マルチプレク
サ172で切り換えられる。このとき、係数RAM15
1のMSBは浮動小数点係数の指数部の差分となってお
り、ALUにシフト・ダウン信号として送られる。
【0043】ところで、乗算器131の消費電力は大き
いので、乗算する必要のないときは係数RAM151を
0にしておき、乗算器131の係数の全ビットが0であ
ることをオール0検出回路174で検出して、乗算器1
31のAレジスタA-Reg 及びBレジスタB-Reg のクロッ
クとアキュームレータ130のクロックとを禁止するこ
とにより、消費電力を減らすようにしている。この禁止
動作のために、乗算イネーブル信号 MPY・ENとアキュー
ムレータ・イネーブル信号 Acc・ENとを用いている。
【0044】次に、図6及び図7は、上記図1〜図3に
示すディジタル演算処理装置の動作を説明するためのタ
イミング・チャートである。これら図6及び図7におい
て、(a)はスロット・クロックを、(b)は乗算クロ
ック MPY・CKの反転信号を、(c)は周波数fsのクロ
ックの反転信号を、(d)はスロット・カウンタ155
の出力を、それぞれ示している。また、時刻t1 〜t9
が1サンプリング周期に対応している。
【0045】これらの図6、図7及び上記図1〜図3に
おいて、スロット・カウンタ155は、時刻t1 からス
ロット・クロック(a)をカウント開始して、カウント
出力(d)を出力する。このスロット・カウント出力
(d)の下位4ビット値に応じてオペレーションRAM
153がアクセスされ、オペレーション・デコーダ17
0にオペレーション・コード(e)が入力される。この
オペレーション・コード(e)の内の「B」(16進表
示)が上記ハードウェア・ロジック回路によるFIR演
算の開始コードに対応しており、このコード「B」がオ
ペレーション・デコーダ170でデコードされて、FI
Rスタート信号 FIR・Stの反転信号(f)が時刻t2
出力される。この信号(f)がFIRアドレス生成回路
156に送られてFIRイネーブル信号 FIR・ENが生成
され、FIRカウンタがスロット・クロック(a)を1
6カウントするまで同じ状態を保持した後復帰するか
ら、この FIR・EN信号は図6の(g)のようになる。従
って、スロット・カウント出力(d)が「5」〜「1
4」(16進表示)までの間(時刻t2 〜t6 間)の1
6スロットが、ハードウェア・ロジック回路によりFI
Rの積和演算を行う領域となる。
【0046】FIRアドレス生成回路156内のFIR
カウンタは、 FIR・EN信号(g)に応じてカウントが開
始され、スロット・クロック(a)をカウントすること
により、時刻t2 〜t6 間に「0」〜「F」(16進表
示)となるFIRカウント出力(h)を発生する。この
カウント出力(h)がExOR回路等により論理演算さ
れて、上記表1に示すようなオフセット・アドレス
(i)に変換され、オフセット加算器176に送られ
る。また、FIRアドレス生成回路156内のDラッチ
により上記 FIR・EN信号(g)がスロット・クロック
(a)の反転信号でラッチされてアドレス保持信号
(j)が生成され、アドレス保持ラッチ154にラッチ
・イネーブル信号として送られる。このアドレス保持信
号(j)の立ち下がりは、上記 FIR・EN信号(g)の立
ち上がりから半クロック分ずれたタイミングとなる。こ
のアドレス保持信号(j)によりアドレス保持ラッチ1
54でアドレスRAM152から読み出されたアドレス
が保持される。このアドレス保持ラッチ154からの出
力の状態を図7の(r)に示している。なお、FIRア
ドレス生成回路156内の上記FIRカウンタの第2ビ
ット目QB 出力を図6の(k)に示している。
【0047】上記FIRイネーブル信号 FIR・EN(g)
がFIRオペレーション生成回路153に送られ、ま
た、上記アドレス保持信号(j)がアドレスRAM15
2及びオペレーションRAM153の各チップセレクト
端子CSにそれぞれ送られることにより、上記時刻t2
〜t6 間は、アドレスRAM152及びオペレーション
RAM153からの読出動作が停止され、アドレス保持
ラッチ154で保持されたアドレス(r)がオフセット
加算器176に送られると共に、FIRオペレーション
生成回路157で生成されたオペレーション・コードが
オペレーション・デコーダ170に入力される。FIR
オペレーション生成回路157では、上記時刻t2 〜t
6 の間、コード「4」及び「8」(16進表示)を交互
に出力し、オペレーション・デコーダ170にオペレー
ション・コード(e)として送っている。コード「4」
はデータRAM113を読み出して入力レジスタ121
に取り込むオペレーション・コード、コード「8」はデ
ータRAM113を読み出して入力レジスタ121の内
容と加算するオペレーション・コードである。これらの
交互の動作により、上記各乗算係数毎の積和演算が順次
行われる。
【0048】乗算器131に送られる乗算係数(COEF)
は、各係数C19〜C0 に応じて、図7の(l)に示すよ
うに、スロット・カウント出力(d)の「3」のタイミ
ングから2スロット・クロック周期で順次「F8」、
「0A」、「F0」、・・・となっている。すなわち、
この具体例での各乗算係数C19〜C0 を、 C19: 11111000(F8H) 〔 ×2-10 〕 C17: 00001010(0AH) 〔 ×2-10 〕 C15: 11110000(F0H) 〔 ×2-10 〕 C13: 00011000(18H) 〔 ×2-10 〕 C11: 11011100(DCH) 〔 ×2-10 〕 C9 : 00110100(34H) 〔 ×2-10 〕 C7 : 10110011(B3H) 〔 ×2-10 〕 C5 : 00111011(3BH) 〔 ×2-9 〕 C3 : 11001100(CCH) 〔 ×2-8 〕 C1 : 01010001(51H) 〔 ×2-7 〕 としている。ただし、ロジック回路によるFIR処理
は、係数C15からC1 までの積和演算としている。
【0049】この図7の(l)の乗算係数(COEF)と上
述した同じ係数の2個ずつのデータの和とが順次乗算さ
れ、乗算器131からの乗算出力は図7の(m)のよう
に現れる。係数RAM151から読み出される係数デー
タは2の補数表示されたものであり、MSB(最上位ビ
ット)は正負の符号を表す符号ビットであるが、上記ロ
ジック回路によりFIR処理を行っている間は、上述し
た隣接する係数データの指数部間の差分(0か1)を表
すビットとなっている。この係数RAM151からの係
数データのMSBを(p)に示す。このMSBの値に応
じて係数マルチプレクサ172の論理回路(ANDゲー
ト)がシフト・ダウン信号(n)を生成している。ま
た、ロジック回路によりFIR処理している間の乗算係
数(COEF)値(l)の符号ビットとなるMSB(最上位
ビット)については、係数マルチプレクサ172の論理
回路(ORゲート)により“H”と“L”とが交互に形
成されるようになっている。このMSBを(l)に重ね
て示している。この係数RAM151のMSBの切り換
えは、上記 FIR・EN信号(g)を1スロット・クロック
分だけ遅延した信号(q)により時刻t4 、t7 を境界
として行われる。
【0050】係数マルチプレクサ172からの上記シフ
ト・ダウン信号(n)に応じて、上記図5と共に説明し
たように、それまでの累積加算値が1ビット分ずつシフ
トされて順次1/2され、図7の(o)に示すように、
最終的に1倍の係数値で乗算したものの累積加算値が得
られるわけである。
【0051】なお、本発明は上記実施例のみに限定され
るものではなく、例えば、FIRフィルタ処理以外にも
各種の繰り返し演算を含む処理に適用できる。また、適
用機器はDATに限定されず、各種のディジタル信号を
取り扱う機器に本発明を適用することができる。
【0052】
【発明の効果】以上の説明からも明らかなように、本発
明に係るディジタル演算処理装置によれば、ディジタル
データに対して連続的な積和演算と他の演算とを行う演
算処理手段と、上記演算処理手段での上記他の演算を制
御するためのオペレーションコードが記憶されるオペレ
ーション記憶手段と、上記演算処理手段での上記連続的
な積和演算を制御するためのオペレーションコードの生
成を行うオペレーション生成手段と、上記オペレーショ
ン記憶手段から読み出されたオペレーションコードと上
記オペレーション生成手段から生成されたオペレーショ
ンコードとを、上記演算処理手段を制御するためのコン
トロール信号にデコードするオペレーションデコード手
段と、上記オペレーションデコード手段から出力される
スタート信号に基づいて、上記オペレーションデコード
手段への上記オペレーション生成手段からのオペレーシ
ョンコードの供給と、上記オペレーション記憶手段から
のオペレーションコードの供給とを切り換えるタイミン
グを生成する計数手段とを有することにより、メモリ容
量を減らすことができ、メモリから読み出すための消費
電力も減らすことができる。すなわち、マイクロプログ
ラムによる自由度を持たせながら、素子数、電力を低減
できる。また、本発明に係るディジタル演算処理装置に
よれば、ディジタルデータが記憶されるデータ記憶手段
と、上記ディジタルデータに対して連続的な積和演算と
他の演算とを行う演算処理手段と、上記演算処理手段で
の上記他の演算が行われるディジタルデータが記憶され
る上記データ記憶手段のアドレスを記憶するアドレス記
憶手段と、上記演算処理手段での上記連続的な積和演算
が行われるディジタルデータが記憶される上記データ記
憶手段のアドレスを生成するアドレス生成手段と、外部
からのマイクロプログラムに基づいてスタート信号を出
力するスタート信号生成手段と、上記スタート信号生成
手段から出力されるスタート信号に基づいて、上記演算
処理手段への上記アドレス生成手段からのアドレスの供
給と、上記アドレス記憶手段からのアドレスの供給を切
り換えるタイミングを生成する計数手段とを有すること
により、メモリ容量を減らすことができ、メモリから読
み出すための消費電力も減らすことができ、マイクロプ
ログラムによる自由度を持たせながら、素子数、電力を
低減できる。
【0053】ここで、メモリ上の命令コードの中に上記
ハードウェア・ロジック回路による命令、データ・アド
レス、係数等の生成動作への切り換えの開始点を書き込
んでおくことにより、処理途中での任意の箇所でメモリ
読み出し動作からロジック回路による生成動作に切り換
えることができる。また、ロジック回路による生成中
は、命令及びデータ・アドレスのメモリのアドレスを停
止したり、メモリのアクセスを禁止したりすることによ
り、消費電力を減らすことができる。さらに、乗算器の
係数が0のときに乗算処理を禁止することにより、消費
電力を減らすことができる。
【図面の簡単な説明】
【図1】本発明に係るディジタル演算処理装置の一実施
例のデータを取り扱う部分の構成例を示すブロック図で
ある。
【図2】上記実施例のディジタル演算処理装置のコント
ロール信号を取り扱う部分の構成例を示すブロック図で
ある。
【図3】上記図2に示すコントロール信号を取り扱う部
分の要部の具体的な構成例を示すブロック図である。
【図4】上記実施例により実現されるディジタルFIR
フィルタのインパルス応答特性を示す図である。
【図5】上記実施例により実現されるディジタルFIR
フィルタのシグナルフローを示すブロック回路図であ
る。
【図6】上記実施例の動作を説明するためのタイミング
チャートである。
【図7】上記実施例の動作を説明するためのタイミング
チャートである。
【符号の説明】
113・・・・・データRAM 121・・・・・入力ラッチ 123、124・・・・・マルチプレクサ 130・・・・・アキュームレータ 131・・・・・乗算器 135・・・・・シフタ 151・・・・・係数RAM 152・・・・・アドレスRAM 153・・・・・オペレーションRAM 154・・・・・アドレス保持ラッチ 155・・・・・スロット・カウンタ 156・・・・・FIRアドレス生成回路 157・・・・・FIRオペレーション生成回路 170・・・・・オペレーション・デコーダ 172・・・・・係数マルチプレクサ 174・・・・・オール0検出回路 176・・・・・オフセット加算器 177・・・・・ベースアドレス・カウンタ
フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 17/00 - 17/18 H03H 17/00 - 17/08 G06F 9/22 - 9/42 G06F 12/00 550 - 12/06 G06F 13/16 - 13/18

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】 ディジタルデータに対して連続的な積和
    演算と他の演算とを行う演算処理手段と、 上記演算処理手段での上記他の演算を制御するためのオ
    ペレーションコードが記憶されるオペレーション記憶手
    段と、 上記演算処理手段での上記連続的な積和演算を制御する
    ためのオペレーションコードの生成を行うオペレーショ
    ン生成手段と、 上記オペレーション記憶手段から読み出されたオペレー
    ションコードと上記オペレーション生成手段から生成さ
    れたオペレーションコードとを、上記演算処理手段を制
    御するためのコントロール信号にデコードするオペレー
    ションデコード手段と、 上記オペレーションデコード手段から出力されるスター
    ト信号に基づいて、上記オペレーションデコード手段へ
    の上記オペレーション生成手段からのオペレーションコ
    ードの供給と、上記オペレーション記憶手段からのオペ
    レーションコードの供給とを切り換えるタイミングを生
    成する計数手段とを有することを特徴とするディジタル
    演算処理装置。
  2. 【請求項2】 上記オペレーション記憶手段に供給され
    るオペレーションコードの中に、上記オペレーション生
    成手段によるオペレーションコード生成の開始点を書き
    込んでおくことを特徴とする請求項1記載のディジタル
    演算処理装置。
  3. 【請求項3】 上記計数手段は、上記スタート信号に基
    づいて所定期間計数を行い、上記所定期間中は上記オペ
    レーション記憶手段からの読み出しを禁止することを特
    徴とする請求項1記載のディジタル演算処理装置。
  4. 【請求項4】 上記計数手段は、上記スタート信号に基
    づいて所定期間計数を行い、上記所定期間中は上記オペ
    レーション記憶手段のアドレス更新を停止することを特
    徴とする請求項1記載のディジタル演算処理装置。
  5. 【請求項5】 ディジタルデータが記憶されるデータ記
    憶手段と、 上記ディジタルデータに対して連続的な積和演算と他の
    演算とを行う演算処理手段と、 上記演算処理手段での上記他の演算が行われるディジタ
    ルデータが記憶される上記データ記憶手段のアドレスを
    記憶するアドレス記憶手段と、 上記演算処理手段での上記連続的な積和演算が行われる
    ディジタルデータが記憶される上記データ記憶手段のア
    ドレスを生成するアドレス生成手段と、 外部からのマイクロプログラムに基づいてスタート信号
    を出力するスタート信号生成手段と、 上記スタート信号生成手段から出力されるスタート信号
    に基づいて、上記演算処理手段への上記アドレス生成手
    段からのアドレスの供給と、上記アドレス記憶手段から
    のアドレスの供給を切り換えるタイミングを生成する計
    数手段とを有することを特徴とするディジタル演算処理
    装置。
  6. 【請求項6】 上記計数手段は、上記スタート信号生成
    手段から出力されるスタート信号に基づいて所定期間計
    数を行い、上記所定期間中は上記アドレス記憶手段から
    の読み出しを禁止することを特徴とする請求項5記載の
    ディジタル演算処理装置。
  7. 【請求項7】 上記計数手段は、上記スタート信号生成
    手段から出力されるスタート信号に基づいて所定期間計
    数を行い、上記所定期間中は上記アドレス記憶手段のア
    ドレス更新を停止することを特徴とする請求項5記載の
    ディジタル演算処理装置。
JP03838592A 1992-01-30 1992-01-30 ディジタル演算処理装置 Expired - Fee Related JP3503141B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP03838592A JP3503141B2 (ja) 1992-01-30 1992-01-30 ディジタル演算処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP03838592A JP3503141B2 (ja) 1992-01-30 1992-01-30 ディジタル演算処理装置

Publications (2)

Publication Number Publication Date
JPH05210694A JPH05210694A (ja) 1993-08-20
JP3503141B2 true JP3503141B2 (ja) 2004-03-02

Family

ID=12523816

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03838592A Expired - Fee Related JP3503141B2 (ja) 1992-01-30 1992-01-30 ディジタル演算処理装置

Country Status (1)

Country Link
JP (1) JP3503141B2 (ja)

Also Published As

Publication number Publication date
JPH05210694A (ja) 1993-08-20

Similar Documents

Publication Publication Date Title
KR880001168B1 (ko) 디지탈 신호처리 시스템
US3988606A (en) Digital filter device for processing binary-coded signal samples
US4958311A (en) Composite finite impulse response digital filter
EP0021018B1 (en) Digital filters
JPH082014B2 (ja) 多段デジタル・フィルタ
US4701875A (en) High speed convolution arithmetic circuit with multiple counters
US5400271A (en) Apparatus for and method of calculating sum of products
JP3503141B2 (ja) ディジタル演算処理装置
JPS5968058A (ja) フロ−テイング乗算器
KR0134042B1 (ko) 디지탈 신호처리장치 및 신호처리방법
JP3230270B2 (ja) 信号処理装置
JPH08152994A (ja) 乗算器及びディジタルフィルタ
JP2675010B2 (ja) 情報処理装置
US5689079A (en) Musical tone generator
US6681236B2 (en) Method of performing operations with a variable arithmetic
JPH01179515A (ja) デジタル信号処理装置
JPS645500B2 (ja)
JPH05211446A (ja) 直線補間装置
JPH0828647B2 (ja) メモリ装置及びそれを用いたディジタル信号処理装置
JPS602688B2 (ja) デイジタル信号減衰器
JP3193830B2 (ja) 演算回路
JPH0828646B2 (ja) ディジタルフィルタ
JPH04195423A (ja) 乗算器
JPH10254680A (ja) 2乗回路
JPH0728599A (ja) データ処理装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20031118

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20031201

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071219

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081219

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091219

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees