JPH1021219A - 加算器およびデジタルiirフィルタ - Google Patents

加算器およびデジタルiirフィルタ

Info

Publication number
JPH1021219A
JPH1021219A JP8176849A JP17684996A JPH1021219A JP H1021219 A JPH1021219 A JP H1021219A JP 8176849 A JP8176849 A JP 8176849A JP 17684996 A JP17684996 A JP 17684996A JP H1021219 A JPH1021219 A JP H1021219A
Authority
JP
Japan
Prior art keywords
register
data
input
output
bit
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
Application number
JP8176849A
Other languages
English (en)
Inventor
Koichi Hamashita
浩一 浜下
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.)
Asahi Kasei Microsystems Co Ltd
Asahi Kasei Microdevices Corp
Original Assignee
Asahi Kasei Microsystems Co Ltd
Asahi Kasei Microdevices 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 Asahi Kasei Microsystems Co Ltd, Asahi Kasei Microdevices Corp filed Critical Asahi Kasei Microsystems Co Ltd
Priority to JP8176849A priority Critical patent/JPH1021219A/ja
Publication of JPH1021219A publication Critical patent/JPH1021219A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】 【課題】回路規模を小さくしたデジタルIIRフィルタ
を実現する。 【解決手段】保持するデータを、マシンサイクルにした
がってLSB側から順次シリアル出力して、予め対応付
けられた転送先の各加減算装置へ転送入力させるため
の、入力データ用レジスタを備える。さらに、加減算装
置の各々は、転送されてきた2種類のデータを、1マシ
ンサイクル毎に、キャリー入力を参照して、LSB側よ
り順次加減算していく加減算器と、前回のマシンサイク
ルでの加減算結果におけるキャリーを、今回のマシンサ
イクルにてキャリー入力として前記加減算器に供給する
キャリーレジスタとを、含み、加減算結果の各々が、L
SB側より順次、予め対応付けられた転送先のレジスタ
へシリアル転送され、前記転送先のレジスタのMSB側
より前記加減算結果が入力されるように構成される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、オーディオ、音声
通信を始めとする各種の分野で用いられる加算器および
デジタルフィルタに係わり、特に、回路規模を小さくし
た加算器およびデジタルIIRフィルタ(Infinite Inp
ulse Response Filter、無限インパルス応答フィルタ)
を提供する技術に関する。
【0002】
【従来の技術】近年、オーディオ、音声通信を始めとす
る各種の分野においては、A/DコンバータやD/Aコ
ンバータの性能向上とともに、信号処理のデジタル化が
急速に進展し、従来アナログ分野で行われていた各種フ
ィルタリング処理を、デジタル信号にて行う、いわゆる
デジタルフィルタを用いたデジタル信号処理方法が盛ん
に開発されつつある。
【0003】ところで、デジタルフィルタとしては、F
IR型(有限インパルス応答型)とIIR型(無限イン
パルス応答型)とがあるが、このうちIIR型は、従来
のアナログフィルタにて実現されていた機能をデジタル
回路にて実現するのに適しており、特に、アナログSC
F(スイッチト・キャパシタ・フィルタ)と同一の伝達
関数を持ちうることが知られている。このIIR型デジ
タルフィルタは、FIR型に比べ、はるかに次数が少な
いため、演算の回数が少なくて実現可能であるが、一
方、内部演算語長(ビット数)を十分大きくとることが
性能上必要となり、演算回路としては、単一の乗算器よ
りも、複数の多ビット加算器を採用することが多い。具
体的には、DC成分(オフセット)除去用のHPF(ハ
イパスフィルタ)や、ディエンファシス・プリエンファ
シス用フィルタ、バス/トレブルコントロール用フィル
タ、バスブースト用フィルタ等において、1次ないし2
次のフィルタを組み合わせたタイプのフィルタが用いら
れる。
【0004】さて、図1(a)は、2次IIRフィルタ
におけるシグナルフローの説明図であり、入力データX
(n)、出力データY(n)、中間演算データW1
(n)、W2(n)は、いずれもサンプリングデータで
あり、また、「n」は、サンプリングの時系列番号を表
現する変数である。
【0005】また、「Σ」は加算を表現し、「z-1」は
1サンプル時間の時間遅れ要素を表現し、フィードフォ
ワード係数a1 〜a2 、フィードバック係数−b1 〜−
2の各々は、乗算係数を表現している。図1(a)に
おいては、時間遅れ要素z-1が2個存在するので、2次
のIIRフィルタ(いわゆるバイキャド)を実現してい
る。なお、この時間遅れ要素z-1を1個にすることによ
って、図1(b)に示すような1次のIIRフィルタを
実現することができる。なお、3次以上のフィルタにつ
いても、時間遅れ要素z-1を挿入することで構成可能で
あるが、系の安定性を考慮すると、2次までのフィルタ
を複数段、縦続接続して実現するのが一般的である。
【0006】これらのシグナルフローの説明図を参照し
て分かるように、IIR型デジタルフィルタの特徴は、
フィードバック係数を有するいわゆるフィードバックパ
スが存在することであり、それ故に通常、W1(n)、
W2(n)の語長(ビット数)は入力X(n)、出力Y
(n)に比べてかなり長くなり、よって、各係数の乗算
や各加算器が扱う演算語長(ビット数)も長くなり、そ
のハードウエア構成もかなり大規模な回路となってい
る。
【0007】以下、従来のIIR型デジタルフィルタの
ハードウエア構成例を簡単に説明するために、1次II
R型HPFを例にとって説明する。実際の代表的な適用
例としては、オフセット除去用1次HPFが挙げられ、
アナログオーディオ信号をデジタルオーディオ信号に変
換するA/Dコンバータの後段に配置して、A/Dコン
バータやアナログ・オペアンプ等にて発生するDCオフ
セットを除去するために用いられる。
【0008】図2に、オーディオ帯域用の1次IIR型
HPFのシグナルフローの説明図を示す。この1次II
R型HPFは、図1(b)の一般的な1次IIR型フィ
ルタにおいて、「a0 =1、a1 =−1、−b1 =1−
α」とおきHPFを構成したもので、2個の加算器と1
個の乗算器を有した回路構成で実現される。
【0009】このとき、z領域での伝達関数H(z)
は、次のように表現される。 H(z)=Y(Z)/X(Z)=(Z−1)/(Z−
(1−α)) したがって、零点Zzero、極点Zpoleは、以下のように
なる。
【0010】Zzero=1、Zpole=1−α したがって、DC(Z=1)にて伝達関数がゼロになる
HPF特性を有することが分かる。さらに、「z≒1+
jω」と近似すると、 H(ω)≒jω/(jω+α)=1/(1−j(α/
ω)) となり、カットオフ周波数Fcは、サンプリング周波数
をFsとして、 Fc=(1/(2π))・α・Fs と表現できる。オーディオ用途では、Fs=48(kH
z)に対して、Fcは10(Hz)以下が要求され、上
式より、乗算係数αは、α<2π・10/48000=
1/764であれば良いことになる。
【0011】回路製造の簡略化のため、乗算係数αを2
のべき乗で表現し、乗算器を、スイッチング素子を用い
ないようにして、回路を含む配線パターンを製造するこ
とによって、即ち、ビットシフトにて表現することを考
えると、αを、α=1/1024=2-10 とおき、Fc
=7.46(Hz)とするのが好ましい。
【0012】図3は、上記の説明に基づいて構成した従
来のHPF回路の一例のブロック図を示したもので、1
6ビット、1Fs(=48kHz)のオーディオ信号X
(n)を入力し、DC成分をカットされた16ビット、
1Fsの出力Y(n)を出力する機能を有する。なお、
データ形式は、加減算を加算器にて扱える、「2の補数
形式」を採用するものとする。
【0013】入力レジスタ100、出力レジスタ20
0、および、累算レジスタ35はいずれも、演算クロッ
ク400により1演算サイクル(1Fs)毎に、各多ビ
ットデータX(n)、Y(n)、W(n)を同時に入・
出力するためのパラレルレジスタとして構成されてお
り、入力レジスタ100と出力レジスタ200は各16
ビット、累積レジスタ35は26ビットのレジスタで構
成される。第1の加算器50は、17個のフルアダーに
て構成される17ビット加算器であり、16ビットデー
タX(n)と、反転回路10の反転処理によって生成さ
れる、26ビットデータW(n)の上位16ビットの反
転データ〔Q11〕〜〔Q26〕と、1LSBを加算し
て、17ビットデータY’(n)を生成するものであ
り、これは、 Y’(n)=X(n)−α・W(n)=X(n)−2
-10 ・W(n) における減算を実施している。尚、ここでの係数α=2
-10 を掛ける乗算は、配線を10ビット分シフトするよ
うに製造することで実現される。
【0014】なお、以下、記号「〔〕」により反転デー
タを表すものとし、図ではアッパーラインを付して表現
する。さて、前出した17ビットデータY’(n)は、
1ビット余分な上位演算空間を有するデータであり、1
6ビットフルスケール設定回路60によって、16ビッ
トデータY(n)に加工された後、出力レジスタ200
および第2の加算器70へ送られる。なお、16ビット
フルスケール設定回路60による加工とは、前記17ビ
ットデータY’(n)の値が16ビットにて表現可能な
正もしくは負のフルスケール値を超えている場合には、
16ビットの正もしくは負のフルスケール値に強制設定
し、一方、フルスケール値以内の場合には、最上位の1
7ビット目を単に削除することで、16ビットの「2の
補数形式」のデータを生成する処理である。
【0015】さて、第2の加算器70は、27個のフル
アダーにて構成される27ビット加算器であり、26ビ
ットフルスケール設定回路80と累算レジスタ35とと
もに、26ビット累算器90を構成し、前記演算結果で
ある16ビットデータY(n)と前回演算までの累算結
果である26ビットデータW(n)とを加算し、27ビ
ットの新規累算データW’(n+1)を生成する。そし
て、生成されたW’(n+1)は、26ビットフルスケ
ール設定回路80によって、1ビットの上位演算空間を
削除され、26ビットの新規累算データW(n+1)と
なって、次回演算で用いられるように累算レジスタ35
に取り込まれる。
【0016】以上のような構成によって、1演算サイク
ル(1Fs)毎に、入力データX(n)、累算データW
(n)を更新しながら、出力Y(n)を求めていくこと
により、1次IIR型HPFが実現される。
【0017】また、2次IIRフィルタについても、多
ビット加算器とレジスタを必要個数用意して組み合わせ
ることで上記1次IIR型HPFと同様に実現される。
次に、図4は、前記17ビット加算器である第1の加算
器50、および、27ビット加算器である第2の加算器
70に用いられるキャリーリップル型加算器の構成を示
したもので、フルアダーを必要ビット数分用意し、下位
ビットのキャリー出力(Cout)を上位ビットのキャ
リー入力(Cin)に各々結線することで構成される。
ここでは、mビットデータA、Bを入力とし、(m+
1)ビットの加算結果Sを1度に出力するものである。
なお、LSB側のキャリー入力C0は、加算用としては
「L(即ちゼロ)」に固定し、減算用としては前述した
1LSB加算用として「H(即ち1)」に固定すること
が一般的である。また、最上位のキャリー出力Cm+1
値は、無視される。
【0018】なお、1つのフルアダーは、データAi
i の入力端子A、Bと、下位ビットからのキャリーの
入力端子Cinと、上位ビットへのキャリーの出力端子
Coutと、加算結果出力端子Sとを備え、フルアダー
は、データのビット数(m)に1個を加えた数(m+
1)だけ接続されている。
【0019】
【発明が解決しようとする課題】しかしながら、上述し
た従来型のIIRフィルタでは、各多ビット加算器およ
び各レジスタ間の結線が多ビットの並列配線であること
や前記のビットシフトにて乗算を実現する場合には、シ
フトすべきビット数分の並列配線が余分に必要となるこ
と等により、配線面積が増加しており、この事は、単に
レイアウト面積の増加を招くばかりでなく、負荷容量増
大による消費電力増加をもたらすことにもなっていた。
【0020】しかも、加算器の回路規模は、非常に増大
していた。例えば、図4のキャリーリップル型加算器
は、従来の各種方式の多ビット加算器のうちで最も回路
規模が小さいものであるが、1ビット分のフルアダーを
構成するためには、28個程度のトランジスタを必要と
し、これが(m+1)個必要であるから、「28・(m
+1)」個のトランジスタが必要となり、加算器は、か
なり大規模な回路構成となっていた。しかも、通常はフ
ィルタ次数の2倍の多ビット加算器が必要であり、演算
すべきビット数と、フィルタ次数の両者に比例して回路
規模が増大して、ひいては、LSIレイアウト面積の増
大とLSIチップコストの増大を招くていた。
【0021】そこで、本発明は、上記の課題を解決する
ためになされたものであり、その目的は、回路規模の小
さな加算器を実現する点にある。また、本発明の他の目
的は、回路規模の小さな、IIRデジタルフィルタを実
現する点にある。
【0022】
【課題を解決するための手段】上記目的を達成するため
に、請求項1に係る発明によれば、第1の制御信号(C
KP)に従って、与えられたmビット(mは自然数)の
データを、第(m+1)ビットの値が第mビットの値と
同一となるように取込み、さらに、第2の制御信号(C
KS)に従って、(m+1)ビットのデータを順次シリ
アル出力する2種類のレジスタである第1のレジスタ、
第2のレジスタと、該第1のレジスタおよび該第2のレ
ジスタから順次シリアル出力されるデータとキャリー入
力とを全加算するフルアダーと、前記第1の制御信号
(CKP)に従って自身のリセット動作を行い、さら
に、前記フルアダーが行った全加算結果のキャリーを、
前記第2の制御信号(CKS)に従って、所定時間遅延
させて前記フルアダーのキャリー入力として供給するリ
セット付きキャリーレジスタと、前記フルアダーの全加
算結果を、前記第2の制御信号(CKS)に従って順次
取り込む第3のレジスタと、を含む加算器が提案され
る。
【0023】また、他の目的を達成するため、請求項2
に係る発明によれば、入力データと、フィリタリング処
理の過程で得られた中間演算データと、に基づいて演算
処理を行った結果である出力データを、フィリタリング
処理結果として出力するデジタルIIRフィルタであっ
て、保持するデータを、マシンサイクルにしたがってL
SB側から順次シリアル出力して、予め対応付けられた
転送先の各加減算装置へ転送入力させるための、入力デ
ータ用レジスタを備え、さらに、前記加減算装置の各々
は、転送されてきた2種類のデータを、1マシンサイク
ル毎に、キャリー入力を参照して、LSB側より順次加
減算していく加減算器と、前回のマシンサイクルでの加
減算結果におけるキャリーを、今回のマシンサイクルに
てキャリー入力として前記加減算器に供給するキャリー
レジスタとを、含み、加減算結果の各々が、LSB側よ
り順次、予め対応付けられた転送先のレジスタへシリア
ル転送され、前記転送先のレジスタのMSB側より前記
加減算結果が入力されるように構成されている、デジタ
ルIIRフィルタが提供される。
【0024】さらに具体的には、入力データと、フィリ
タリング処理の過程で得られた中間演算データ(累算デ
ータ)と、に基づいて演算処理を行った結果である出力
データを、フィリタリング処理結果として出力するデジ
タルIIRフィルタであって、第1の制御信号(CK
P)に従って、与えられたmビット(mは自然数)のデ
ータを、第(m+1)ビットの値が第mビットの値と同
一となるように取込み、さらに、第2の制御信号(CK
S)に従って、(m+1)ビットのデータを順次シリア
ル出力(XQ1)するレジスタである入出力シフトレジ
スタ(210)と、前記第2の制御信号(CKS)に従
って、自身が保持した中間演算データ(WQ)の所定位
置のデータを出力するとともに、自身が保持した中間演
算データをLSB側から順次シリアル出力(WQ1)す
るための累算シフトレジスタ(240)と、該累算シフ
トレジスタ(240)が出力した所定位置のデータを反
転出力(〔WQi〕:iは自然数)するインバータ(3
10)と、前記入出力シフトレジスタからのシリアル出
力(XQ1)と前記インバータの出力(〔WQi〕)と
キャリー入力(C1in)とを全加算する、第1のフル
アダー(320)と、前記第1の制御信号(CKP)に
従って、自身の出力を1にするセット動作を行うととも
に、前記第2の制御信号(CKS)に従って、前記フル
アダーの加算結果により生じたキャリー出力(C1ou
t)を入力し、所定時間遅延させて前記フルアダーのキ
ャリー入力として供給するキャリーレジスタ(330)
と、前記第1のフルアダーの加算結果(YS)と前記累
算シフトレジスタからのシリアル出力(WQ1)とキャ
リー入力(C2in)とを全加算するフルアダー(34
0)と、前記第1の制御信号(CKP)に従って、自身
の出力を0にするリセット動作を行うとともに、前記第
2の制御信号(CKS)に従って、前記第2のフルアダ
ーの加算結果により生じたキャリー出力(C2out)
を入力し、所定時間遅延させて前記第2のフルアダーの
キャリー入力として供給するキャリーレジスタ(35
0)と、を備え、さらに、前記第2の制御信号(CK
S)に従って、前記第1のフルアダーの全加算結果が、
前記入出力シフトレジスタ(210)のMSB側より順
次取り込まれるように構成され、かつ、前記第2の制御
信号(CKS)に従って、前記第2のフルアダーの全加
算結果が、前記累算シフトレジスタ(240)のMSB
側より順次取り込まれるように構成される、デジタルI
IRフィルタが提供される。
【0025】また、請求項3に係る発明によれば、請求
項2において、中間演算データ用レジスタは、自身の任
意のレジスタ位置からデータの入出力が可能なように、
かつ、入出力されたデータは、予め対応付けられた加減
算器に入出力されるように構成されていることを特徴と
する、デジタルIIRフィルタが提供される。
【0026】さらに、請求項4に係る発明によれば、請
求項2および3のいずれかにおいて、前記キャリーレジ
スタは、制御信号(CKP)にしたがって、減算動作で
は前記キャリー入力を1とするセット機能を有し、一
方、加算動作では前記キャリー入力を0とするリセット
機能を有するように構成されたことを特徴とするデジタ
ルIIRフィルタが提供される。
【0027】さらにまた、請求項5に係る発明によれ
ば、請求項2、3および4のいずれかにおいて、前記中
間演算データを所定ビット数にするためのフルスケール
リミット回路を、いずれかのレジスタに設けていること
を特徴とするデジタルIIRフィルタが提供される。
【0028】また、請求項6に係る発明によれば、請求
項2、3、4および5のいずれかにおいて、前記マシン
サイクル、制御信号を含む信号を生成する信号生成パタ
ーンを予め格納した不揮発性メモリを備えることを特徴
とするデジタルIIRフィルタが提案される。
【0029】さらに、請求項7に係る発明によれば、請
求項2、3、4、5および6のいずれかにおいて、前記
入力用レジスタが、自身に予め対応付けられた転送先の
加減算装置による演算結果(出力データ)を、該演算結
果のLSB側より、順次、自身のMSB側からシリアル
取り込みするように構成されている、ことを特徴とする
デジタルIIRフィルタが提案される。
【0030】そして、請求項8に係る発明によれば、請
求項2、3、4、5、6および7のいずれかにおいて、
前記入力データ用レジスタ、出力データ用レジスタ、お
よび、中間演算データ用レジスタのうちの少なくとも1
以上のレジスタが、所定時にリセットされるように構成
されていることを特徴とするデジタルIIRフィルタが
提案される。
【0031】
【発明の実施の形態】以下、本発明の実施形態を図面を
参照しつつ説明する。ここでは、まず第1実施形態とし
て、シフトレジスタとキャリー記憶機能付きフルアダー
を用いた加算器について説明し、次に、具体例としてD
Cオフセット除去用1次IIR型HPFに対して、加算
器を適用した第2実施形態について説明する。なお、以
下に示すデータ形式は、全て2の補数表現を用いるが、
これは説明の容易化のためであり、本発明の適用範囲を
限定するものではない。 (第1実施形態)まず、第1実施形態として、本発明で
提案するシリアル演算方式によるシリアル加算器につい
て簡単に説明する。
【0032】図5には、シリアル加算器のブロック図、
図6には、シルアル加算器の動作タイミングチャートを
示す。本シリアル加算器は、多ビットのシフトレジスタ
(110、120、130)と1ビットのキャリー記憶
機能付きフルアダー140を用いて構成された一実形態
を示すものである。そして、本シリアル加算器は、2個
のmビットデータA,Bを加算して、(m+1)ビット
の加算結果Sを、(m+1)回のマシンサイクルにてL
SB側より順次シリアルに求めるシリアル加算器であ
る。
【0033】即ち、具体的には、第1の制御クロックC
KPに従って被加算データA、Bを取込み、第2の制御
クロックCKSに従って、LSB側よりシリアル出力す
るための入力シフトレジスタ110、120と、入力シ
フトレジスタ110、120から出力されるデータを加
算端子Ai i に入力し、かつ、キャリー入力を端子C
iに入力し、全加算していき、端子Coからキャリーを
出力するとともに、加算結果を端子Soから出力する、
1ビットのフルアダー150、および、第1の制御クロ
ックCKPに従って自身の出力Qをリセットするリセッ
ト端子(R)と端子CKから与えられる第2の制御クロ
ックCKSに従って、入力端子Dのデータ(キャリー出
力)を1クロック遅延出力し、出力端子Qと端子Ciと
を接続した1ビットのリセット付きキャリーレジスタ1
60を含んで構成されるキャリー記憶機能付きフルアダ
ー140と、第2の制御クロックCKSに従って、加算
結果SをLSB側より順次シリアルに取込むための出力
シフトレジスタ130とを有して構成され、初期状態設
定用のパラレル入力クロックCKPと、(m+1)サイ
クルのシフトクロックCKSによりコントロールされ
る。
【0034】なお、入力シフトレジスタ110、120
を構成するICは、出力端子Qと、第1の制御クロック
CKPを入力するための端子CPと、第1の制御クロッ
クCKPにしたがって、被加算データを入力するための
入力端子DPと、第2の制御クロックCKSを入力する
ための端子CSと、第2の制御クロックCKSにしたが
って、入力されたデータを出力端子に出力するための端
子DSとを備える。
【0035】また、出力レジスタ130を構成するIC
は、出力端子Qと、第2の制御クロックCKSを入力す
るための端子CSと、第2の制御クロックCKSにした
がって、入力されたデータを出力端子に出力するための
端子DSとを備える。
【0036】そして、被加算データABは、mビット、
出力シフトレジスタは、(m+1)ビットであり、さら
に、入力シフトレジスタ110、120は、保持される
MSBが第m番目のビットと同じ値になるようにした、
(m+1)ビットのシフトレジスタとして構成されてい
る。
【0037】図6には、動作タイミングチャートを示し
ているが、これを参照すれば分かるように、演算初期状
態では、パラレル入力制御クロックCKPにより、2個
の(m+1)ビットのシフトレジスタ110、120
に、各mビットの被加算データA、Bが1ビットサイン
拡張されて、(m+1)ビットデータとして取り込ま
れ、リセット端子(R)に制御クロックが入力されて、
キャリーレジスタ160の内容はゼロにリセットされ
る。これにより、フルアダー150の各入力端子には被
加算データA,Bの各LSB(A1 ,B1 )とキャリー
LSB入力(Ci =0)が供給され、即ち、Ai
1 ,Bi =B1 、Ci =0となり、フルアダー150
は第1LSBの加算結果としてのSum出力「So =S
1 、Co =C 1」を出力する。なお、上述のサインビッ
ト拡張とは、ここで用いる2の補数形式のデータに対し
て適用しうるもので、サインビットであるMSB、即
ち、第mビットのデータをそのまま第(m+1)ビット
のデータとしてコピーすることにより、データ内容を変
えずにビット数を増やす処理である。
【0038】なお、以下、LSBからMSBに向かって
m番目のデータを「第mLSB」または「第mビット」
と称し、一方、MSBからLSBに向かってm番目のデ
ータを「第mMSB」と称して説明の簡略化を図る。
【0039】さて、実際のシリアル加算は、(m+1)
回のマシンサイクルを供給するシフトクロックCKS
が、各シフトレジスタ110、120、130とキャリ
ーレジスタ160の所定部に共通に供給されることで行
われる。シフトクロックCKSの第1サイクルにより、
キャリー出力値C1 はキャリーレジスタ160に、Su
m出力値S1 は出力レジスタ130のMSB側、即ち、
第(m+1)ビット目に取り込まれ、両入力シフトレジ
スタ110、120内のデータA、Bは1ビットLSB
側へシフトされる。これにより、フルアダー150の各
入力端子は、Ai=A2 ,Bi =B2 、Ci =C1 に更
新され、フルアダー150は、第2LSBに対する演算
を行い、So =S2 、Co =C2 を出力する。この様子
は、図6の制御クロックCKSのクロック2に対する、
フルアダー入出力の変化を参照すれば分かる。なお、こ
こで、キャリー値C1 とは、第1LSB同士の加算によ
る桁上げキャリーのことであり、これは第2LSB桁の
値である。このシフトクロックCKSによる一連の動作
を(m+1)サイクル繰り返すことで、(m+1)個の
Sum出力値S1 〜Sm+1 がLSB側より順次求めら
れ、出力シフトレジスタ130に、シリアルシフトしな
がら取り込まれ、最終的には、出力レジスタ130のQ
m+1 〜Q1 にSm+1 〜S1 が格納されることになる。即
ち、2個のmビットデータA,Bを入力として、(m+
1)ビットの加算結果「S=A+B」が得られる。な
お、(m+1)サイクル後にキャリーレジスタに残った
キャリー値C m+1 は、先述の従来型の多ビット加算器の
場合と同様に不要であり、次回演算の初期リセットによ
り消去されるようにすればよい。図6は、このような動
作によって、フルアダーと出力レジスタ130に入出力
されるデータを記載したタイミングチャートである。
【0040】上記実施形態では、理解の容易化のため
に、入力シフトレジスタを(m+1)ビットとし、パラ
レル入力時にサインビット拡張するものを示したが、m
ビットの入力レジスタを用いてサイン拡張することも可
能である。。即ち、図7(a)に示すように、サインビ
ットを取り込む第mビット出力Qmを、シフト先の第
(m−1)ビットの入力端子Dm-1 に接続するだけでな
く、第mビットの入力端子Dm にも接続したループであ
る自己ループを形成して、シフトクロックCKS供給に
よるシフト動作時に、自動的にサインビット拡張を実施
することが可能である。このような構成によれば、図7
(b)に示すように、CKS供給時には、常に、第mビ
ット出力Qm がAm となり、CKSの第mサイクル以降
のLSB出力(Q1 )には、サインビットとしてAm
出力されることになる。従って、シフトクロック供給が
mサイクル以上になったときには、このmビットシフト
レジスタの出力が、常にサインビットであることが保証
され、2の補数形式の演算が正常に実施される。このよ
うに、自己ループを形成によって、mビットの入力レジ
スタを用いてサイン拡張することも可能である。
【0041】次に、図8に、シリアル減算器の実施形態
を示す。このシリアル減算器は、mビットデータである
AからBを減算して(m+1)ビットの減算結果Sを
(m+1)マシンサイクルにてLSB側よりシリアルに
求めるものである。図8のシリアル減算器が、先に図5
にて示した加算器と異なる点は、減算データBを出力す
るためのシフトレジスタ120の出力とフルアダー15
0のBi 入力との間にインバータ170が設けられた点
と、キャリーレジスタとして、セット付きキャリーレジ
スタ180が採用された点である。なお、セット付きキ
ャリーレジスタ180は、セット端子Sに制御クロック
CKPが与えられると、自身の出力が(出力端子Q)が
1となる機能を有する。
【0042】さて、2の補数形式での減算は、被減算デ
ータと、減算データの反転と、1LSBと、を加算する
ことで行われる。即ち、 S=A−B=A+(Bの反転)+1 なる計算を行えばよい。図8では、Bの反転はインバー
タ170によりフルアダーでの加算直前に1ビット毎に
行われ、1LSBの加算は、初期状態設定時にキャリー
レジスタ180の内容を1にセットすることで、即ち、
セット端子Sに制御クロックCKPを与えることによ
り、最初のLSB加算時に「+1」のキャリーが加算さ
れることによって行われる。制御クロックCKPが与え
られた後は、(m+1)個のシフトクロックCKSが供
給されるだけで、前述した加算器の動作と同様に、減算
結果Sがシフトレジスタ130に取り込まれるように動
作する。
【0043】なお、上記実施形態においては、被減算デ
ータを初期状態もしくは演算時にサイン拡張して演算結
果Sとビット数を同一にする方式を示したが、これはコ
ントロール信号CKSを1系統のみにして制御を簡単に
するためであり、本発明の適用範囲を特に限定するもの
ではない。例えば、制御クロックCKSを2系統供給可
能な構成とし、入力シフトレジスタ110、120を単
なるmビット構成とし、被加減算データをサイン拡張せ
ずに取り込む場合には、入力シフトレジスタ110、1
20に対して供給されるシフトクロックをm−1サイク
ルに限定することで、最終的に、入力シフトレジスタの
出力端子にMSB(サインビット)が設定され、これを
用いて第(m+1)ビット目の演算を行うようにするこ
とも可能である。 (第2実施形態)次に、本発明にかかる第2の実施形態
として、前記シリアル演算器を適用したIIRフィルタ
について説明する。
【0044】図9および図10は、本発明に係る第2の
実施形態として、1チャンネルの1次II1フィルタの
ブロック図およびその動作タイミングチャートを示すも
ので、16ビット、1Fs=48(kHz)のオーディ
オ信号X(n)を入力し、カットオフ周波数Fc=7.
46(Hz)なるハイパスフィルタリング処理を行っ
て、16ビット、1Fsの出力Y(n)を出力するもの
である。
【0045】本IIRフィルタは、制御クロックCKP
にしたがって、入力端子から16ビットデータX(n)
をサイン拡張(図中MSBと表現する)して17ビット
データとして取込み、LSB側から順次シリアル出力す
る(出力端子XQ1、出力信号XQ1)入力シフトレジ
スタ機能、17ビットのHPF演算結果Y’(n)をM
SB側から、入力端子XDSより順次取込むための出力
シフトレジスタ機能、および、該17ビットデータY’
(n)を16ビットフルスケールデータY(n)へ変換
するための16ビットフルスケールリミット機能を有す
る、17ビット入出力シフトレジスタ210と、保持し
ていた前演算サイクルの累算結果W(n−1)を、第1
LSB出力WQ1の出力端子(WQ1)および第11L
SB出力WQ11の出力端子(WQ11)よりシリアル
出力しながら、新演算サイクルの累積結果W’(n)を
MSB側から、入力端子WDSより順次取り込むための
27ビットの累算シフトレジスタ240と、該第11L
SB出力WQ11の出力データを反転した〔WQ11〕
を生成するためのインバータ310と、XQ1と〔WQ
11〕を入力し、シルアル減算値YSを出力する機能を
有し、1ビットフルアダー320および1ビットセット
付きレジスタ330を含んで構成される第1のキャリー
記憶機能付フルアダー270と、YSおよびWQ1のデ
ータを1マシンサイクル遅らせたYSdおよびWQ1d
を生成するためのタイミング調整用1ビットレジスタ2
90、300と、該YSdおよびWQ1dを入力し、シ
ルアル加算値WSを出力する機能を有し、1ビットフル
アダー340および1ビットリセット付きレジスタ35
0を含んで構成される第2のキャリー記憶機能付フルア
ダー280と、を有して構成される。
【0046】そして、1ビットフルアダー320は、入
力データX(n)から累算データW(n−1)の2-10
を乗じた値をシリアル減算するために、入力端子Ai
i、Ci にXQ1、〔WQ11〕、C1inを入力し
全加算し、加算結果をSo から出力するとともに、キャ
リーC1out をCo から出力する。さらに、1ビットセ
ット付きレジスタ330は、制御クロックCKPがセッ
ト端子(S)に与えられると、自身の出力端子Qを1に
するとともに、Co に接続されている入力端子Dに入力
されるC1out を、制御クロックCKS1に従って1マ
シンサクル遅延して出力端子Qから出力し、さらに、3
30の出力端子Qと320の端子Ci は接続されてい
る。また、1ビットフルアダー340は、演算結果YS
と前累積データW(n−1)とをシリアル加算して新累
算データW’(n)を求めるために、入力端子Ai 、B
i 、Ci にYSd、WQ1d、C2inを入力し全加算
し、加算結果をSo から出力するとともに、キャリーC
out をCo から出力する。さらに、1ビットリセット
付きレジスタ350は、制御クロックCKPがリセット
端子(R)に与えられると、自身の出力端子Qを0にす
るとともに、Co に接続されている入力端子Dに入力さ
れるC2out を、制御クロックCKS2に従って1マシ
ンサクル遅延して出力端子Qから出力し、さらに、35
0の出力端子Qと340の端子C i は接続されている。
また、タイミング調整用1ビットレジスタ290、30
0は、350と同一構成であり、いずれのリセット端子
も制御クロックCKPが与えられるように構成されてい
る。
【0047】なお、累算シフトレジスタは、27ビット
から26ビットへのフルスケールリミット機能をも有し
た27ビットレジスタにて構成されており、演算サイク
ル終了時には、新累算データW’(n)を各26ビット
フルスケール値に制限された27ビットデータW(n)
に加工し直し、次回演算サイクルに備えるものであり、
この詳細については、図11等を参照して後に説明す
る。また、累算シフトレジスタ(中間演算データ用レジ
スタ)は、自身の任意のレジスタ位置からデータの入出
力が可能なように、かつ、入出力されたデータは、予め
対応付けられた加減算器に入出力されるように構成され
る。本IIRフィルタの構成例では、11ビット目の位
置からデータが出力され、1ビットフルアダー320へ
出力されるように構成されている。
【0048】本IIRフィルタが備える入出力シフトレ
ジスタ210は、図5に示す入力シフトレジスタ110
のような構成を有し、図5に示す出力シフトレジスタ1
30も兼用している。これは、入出力シフトレジスタ2
10が、演算対象データをそのLSB側から順次、端子
XQ1を介してシリアル出力していくとともに、演算結
果を順次端子XDSから取り込んで、入出力シフトレジ
スタを共用するように動作するためである。したがっ
て、図5の入力シフトレジスタ110、出力シフトレジ
スタ130を単に適用した場合に比べ、回路規模の一層
の小型化が図れることになる。
【0049】このように、入出力データ用レジスタであ
る入出力シフトレジスタ210、および、中間演算デー
タ用レジスタである累算シフトレジスタ240のシリア
ル出力は、夫々、減算機能を有する第1のキャリー記憶
機能付フルアダー270、加算機能を有する第2のキャ
リー記憶機能付フルアダー280(但し、〔WQ11〕
は280にも転送される)に転送されるように、予め対
応付けられて構成されている。また、減算機能を有する
第1のキャリー記憶機能付フルアダー270、および、
加算機能を有する第2のキャリー記憶機能付フルアダー
280による演算結果は、夫々、入出力シフトレジスタ
210、累算シフトレジスタ240が転送先になるよう
に転送される、回路構成になっている。
【0050】さて、HPF演算を行うための制御信号と
しては、本実施形態ではCKP、CKS1、CKS2の
3信号と、各シフトレジスタにおけるフルスケール設定
を行うためのCKFS1、CKFS2の2信号とが使用
される。1演算サイクルの初期状態を設定するための1
パルスのクロック信号CKPは、入出力シフトレジスタ
210のパラレル入力指示端子CKPと各レジスタ29
0、300、350のリセット端子とレジスタ330の
セット端子Sに供給され、第1のシリアル演算を行うた
めの17パルスのクロック信号CKS1は、入出力シフ
トレジスタ210のシフト動作指示端子CKSと各レジ
スタ290、330のクロック端子に供給され、第2の
シリアル演算を行うための28パルスのクロック信号C
KS2は、累算シフトレジスタ240のシフト動作指示
端子CKSと各レジスタ300、350のクロック端子
に供給される。また、全てのHPF演算を開始するため
の初期状態として累算シフトレジスタ240の内容はゼ
ロリセットされることが好ましく、このために累積レジ
スタ240のリセット端子(RST)には初期化リセッ
ト信号RST(図10に図示せず)が供給される。1演
算サイクルにおける、これらのクロックの変化の様子を
図10に示す。
【0051】図10のタイミングチャートは、1回の入
力データX(n)の取り込みから出力データY(n)を
出力するまでの期間である1演算サイクル(Ts=1/
Fs)内の動作状態を表現したものであって、この1演
算サイクル期間内の各コントロール信号の変化に応じ
て、各レジスタ内容の変化が起こり、マシンサイクル=
「32Fs」にて周期的に演算が実行されていくことを
示すものである。なお、本タイミングチャートでは前記
初期化リセット信号RSTを含まないが、これはリセッ
ト信号RSTが全てのHPF演算の開始時に1パルスの
リセット信号として供給され、その後は、本タイミング
チャートに従う演算サイクルを繰り返すことによってH
PF処理が実行されることを考慮し、説明簡略化の為に
省略したにすぎない。
【0052】次に、図9、10を参照して、動作説明を
行う。まず、1演算サイクルの初期状態設定は、クロッ
ク信号CKPにより、図10の第0マシンサイクルにて
行われる。これにより、16ビットの入力信号X(n)
は、MSBである第16ビットをサイン拡張により第1
7ビットにコピーされた17ビットデータX’(n)と
して、入力端子を介して、入出力シフトレジスタ210
にパラレル入力される。また、タイミング調整用レジス
タ290、300はゼロにリセットされ、さらに、第1
および第2のキャリー記憶機能付きフルアダー270、
280を構成する各キャリーレジスタ330、350に
おいては、減算用のレジスタ330が1にセットされ、
加算用のレジスタ350がゼロにリセットされることに
なる。なお、入出力シフトレジスタ210に蓄積されて
いた前演算サイクルの出力データY(n−1)は、新規
入力データX(n)の取り込みと同時に消去される。ま
た、累算シフトレジスタ240の内容は、前演算サイク
ルまでの累積結果W(n−1)である。
【0053】この初期状態設定により、第1マシンサイ
クル(CKS1の1)での各信号線の状態は、図10示
すようになる。即ち、XQ1上にはX(n)の第1LS
BであるX1 (n)、WQ11上にはW(n−1)の第
11LSBであるW11(n−1)、従って〔WQ11〕
上には、その反転されたデータ〔WQ11〕が現れる。
この結果、第1のフルアダー320は、キャリーレジス
タ330の初期内容が1であることにより、第1LSB
の演算である「X1 (n)+〔W11(n−1)〕+1」
を実行してSum出力Y’1 (n)を出力ラインYS
(YSはデータ自体の他に信号線も表現する)上に、キ
ャリー出力C11 を出力ラインC1out (C1out はデ
ータ自体の他に信号線も表現する)上に出力する。
【0054】これは、先にも示したように、Y(n)=
X(n)−2-10 ・W(n−1)=X(n)+2-10
〔W(n−1)〕+1(但し、データは2の補数形式
で、〔W(n−1)〕はW(n−1)の反転データ)な
る演算の第1LSB演算を示すものである。同時に、W
Q1上にはW1 (n−1)が現れるが、第2のフルアダ
ー340の3入力は、Ai =YSd=0、Bi =WQ1
d=0、Ci =C2in=0のままであり、よって、Su
m出力So およびキャリー出力C1o が共に0であり、
WS=0、C2out =0となる。
【0055】次に、CKS1、CKS2の各第1パルス
が供給されることで、全てのレジスタはデータを1ビッ
トシフトさせて第2マシンサイクルの状態へ移行する。
この第2マシンサイクル(CKS1の2)での各信号線
の状態は、図10に示すようになる。即ち、「XQ1=
2 (n)、WQ11=W12(n−1)、C1in=C1
1 、YSd=Y’1 (n)、WQ1d=W1 (n−
1)、C2in=0」となり、第1マシンサイクルにて求
められた演算結果、YS=Y’1 (n)、WS=0は、
各レジスタ210、240の第1MSBとして、各入力
端子XDS、WDSより、各第1MSBへ自己ループ的
に取り込まれる。即ち、XQ17=Y’1 (n)、WQ
27=0となる。
【0056】第1のフルアダー320は、第2LSB演
算、即ち、「X2 (n)+〔W12(n−1)〕+C
1 」を行い、Sum出力So およびキャリー出力Co
として、YS=Y’2 (n)、C1out =C12 を出力
する。同時に、第2のフルアダー340は、新規累積デ
ータW(n)の第1LSB演算、即ち「Y’1 (n)+
1 (n−1)+0」を行い、Sum出力So およびキ
ャリー出力Co として、WS=W’1 (n)、C2out
=C21 を出力する。
【0057】以下同様に、図10に示す様に、第17マ
シンサイクルまではCKS1、CKS2の両シフトレジ
スタ用の制御クロックが供給され、第1および第2のシ
リアル演算が実行され、両シリアル演算結果は、自己ル
ープ的に両シフトレジスタ210、240にMSB側か
ら、夫々、入力端子XDS、WDSを介して取り込まれ
る。第17マシンサイクルでは、第1のフルアダー32
0は、サイン拡張されたMSB桁の加算、即ち、「X17
(n)+〔W27(n−1)〕+C116」なる演算を行
い、Sum出力So として、YS=Y’17(n)が求め
られることが、図10を参照して分かる。なお、この時
出力されるキャリー出力C117は、先述の説明と同様
に、不要データである。
【0058】このY’17(n)は、CKS1の第17パ
ルスにより、入出力シフトレジスタ210、および、タ
イミング調整レジスタ290に取り込まれ、次に、第1
8マシンサイクルの状態へ移行する。この際、入出力シ
フトレジスタ210は、17ビットレジスタとしてハー
ドウエア構成されているので、レジスタの内容は演算結
果である17ビット出力データY’(n)に置き替わ
る。
【0059】即ち、レジスタ内の17ビットデータ「X
17(n)〜XQ1 (n)」が17ビットデータ「Y’
17(n)〜Y’1 (n)」となる。ここで、「XQ
17(n)〜XQ1 (n)」は、パラレル入力後シフト動
作が起動される前のレジスタの内容であり、「Y’
17(n)〜Y’1 (n)」は、17マシンサイクルが終
了後のレジスタの内容である。
【0060】また、第18マシンサイクル以降では、C
KS1の供給は停止され、CKS2のみが、さらに11
パルス供給されることになり、入出力レジスタ210と
タイミング調整レジスタ290は、出力データY’
(n)とそのサインビットY’17(n)を保持し続け、
第2のキャリー記憶機能付きフルアダー280側で行わ
れる、累算用の第2のシリアル演算のみが実行されるこ
とになる。この際、フルアダー340のAi 入力(YS
d)は、サインビットY’17(n)に固定されること
で、17ビットデータからのサイン拡張が自動的に行わ
れ、他の2入力である、Bi =WQ1d、Ci =C2in
がCKS2に従って順次更新され、残る上位11ビット
のシリアル演算が行われることになる。
【0061】即ち、「YSd=Y’17(n)(固定)、
WQ1d=W17(n−1)〜W27(n−1)、C2in
C216〜C226」のように入力データが順次更新され、
Sum出力So として、「WS=W’17(n)〜W27
(n)」が順次求められ、順次、累算レジスタ240に
転送され、CKS2の第28パルスが終了した第29マ
シンサイクルにおいては、27ビットの累積レジスタ2
40の内容は、新規の累算データW’(n)に置き替わ
る。即ち、27ビットレジスタの内容である27ビット
データ「WQ27(n)〜WQ1 (n)」が、27ビット
データ「W’27(n)〜W1 ’(n)」となる。以上の
動作は、図10を参照すれば理解できる。
【0062】以上の動作を行うことによって、1演算サ
イクル内での演算結果である、17ビット出力データ
Y’(n)、および、27ビット新規累算データW’
(n)が求まり、夫々、順次、シフトレジスタ210、
240に転送されることになる。
【0063】これらの演算結果Y’(n)、W’(n)
は、各16ビット、26ビットのフルスケール値以上
(いわゆるオーバーフロー)であるか否かが判定され、
フルスケールオーバーの場合には、所定のフルスケール
値に設定し直されて、最終的な演算結果が求められる。
【0064】なお、本実施形態では、フルスケールリミ
ット回路を入出力シフトレジスタ210、および、累算
レジスタ240に内蔵した方式をも提案しており、フル
スケールリミット機能は、第29、30マシンサイクル
で供給される2個の制御パルスCKFS1、CKFS2
にて起動される。
【0065】即ち、入出力シフトレジスタ210および
累算シフトレジスタ240は、図11に示す様に、mビ
ットフルスケール値へのフルスケールリミット機能を併
せ持つ、(m+1)ビットのシフトレジスタとなる。図
11に示す(m+1)ビットのシフトレジスタは、(m
+1)個のセット・リセット付きレジスタ(なお、MS
Bに対するレジスタには、セット・リセット端子が備わ
ってなくても良い)と、正・負のフルスケールオーバー
判定・制御回路41とを有している。そして、各セット
・リセット付きレジスタは、出力端子Q、自身の出力を
リセットするためのリセット端子R、自身の出力をセッ
トするためのセット端子S、シフト動作を行わせるため
の制御クロックCKSを入力するための端子CK、およ
び、入力端子Dを備え、制御クロックCKSに従ったシ
フト動作を行う。
【0066】また、制御クロックCKFS1により出力
制御される信号ST1、RST1の信号線が、夫々、下
位(m−1)ビットのセット・リセット付きレジスタの
セット端子およびリセット端子に接続され、また、制御
クロックCKFS2により出力制御される信号ST2、
RST2の信号線が、夫々、第mビットのセット・リセ
ット付きレジスタのセット端子およびリセット端子に接
続されている。なお、第(m+1)ビットのレジスタ
は、サインビットとして機能する。
【0067】正/負のフルスケールオーバー判定・制御
回路41は、制御クロックCKFS1、制御クロックC
KFS2、(m+1)ビットのレジスタの出力Qm+1
および、mビットのレジスタの出力Qm を入力して、信
号ST1、RST1、ST2、RST2を生成する。
【0068】なお、ここで扱うデータは2の補数形式で
あることから、本レジスタに取り込まれた(m+1)ビ
ットのデータが、mビットのフルスケール値をオーバー
しているか否かは、第(m+1)ビット値Qm+1 と第m
ビット値Qm とにより判定される。
【0069】即ち、「Qm+1 =0、Qm =1の時、正の
フルスケールオーバー、Qm+1 =1、Qm =0の時、負
のフルスケールオーバー」となる。これらの判定結果に
より、即ち、正・負のフルスケールオーバーの場合に
は、CKFS1のパルスにより、下位(m−1)ビット
がサインビットの反転〔Qm+1 〕に設定されることにな
る。具体的には、「Qm+1 =0、Qm =1」のときであ
って、制御パルスCKFS1が与えられると、インバー
タAの出力は、〔Qm+1 〕=1となり、NANDゲート
Cの出力は0、さらに、インバータGの反転動作により
ST1は1となり、下位(m−1)ビットの値が1にな
る。このとき、NANDゲートDの出力は1、さらに、
インバータHの反転動作によりRST1は0となってい
る。
【0070】一方、「Qm+1 =1、Qm =0」のときで
あって、制御パルスCKFS1が与えられると、インバ
ータBの出力は、〔Qm 〕=1となり、NANDゲート
Dの出力は0、さらに、インバータHの反転動作により
RST1は1となり、下位(m−1)ビットの値が0に
なる。このとき、NANDゲートCの出力は1、さら
に、インバータGの反転動作によりST1は0となって
いる。
【0071】次に、制御パルスCKFS2により、第m
ビットをサインビットの正転Qm+1に設定する。具体的
には、「Qm+1 =0、Qm =1」のときであって、制御
パルスCKFS2が与えられると、NANDゲートFの
出力は0、さらに、インバータJの反転動作によりRS
T2は1となり、第mビットの値が0になる。このと
き、NANDゲートEの出力は1、さらに、インバータ
Iの反転動作によりST2は0となっている。
【0072】一方、「Qm+1 =1、Qm =0」のときで
あって、制御パルスCKFS2が与えられると、NAN
DゲートEの出力は0、さらに、インバータIの反転動
作によりST2は1となり、第mビットの値が1にな
る。このとき、NANDゲートFの出力は1、さらに、
インバータJの反転動作によりRST1は0となる。
【0073】従って、(m+1)ビットのレジスタ内容
は、上位2ビットがサインビットである、mビットフル
スケール値のデータに変換されることになる。具体的に
は正のフルスケールオーバーの時には、「Qm+1 =0、
m =0、1、1、…(以下1)」、また、負のフルス
ケールオーバーの時には、「Qm+1 =1、Qm =1、
0、0、…(以下0)」のように、上位2ビットがサイ
ンビットである、mビットフルスケール値のデータに変
換される。
【0074】また、元データがmビットフルスケール値
以内の時には、既に「Qm+1 =Qm」であり、下位(m
−1)ビットのデータは変更されず、第mビットは、第
(m+1)ビット同様サインビットとして機能すること
が図11より理解される。
【0075】なお、ここで、従来例のような独立したフ
ルスケール設定回路を採用せずに、CKFS1、CKF
S2なる2個の制御パルスに従って動作する、フルスケ
ールリミット回路を、シフトレジスタに併せ持たせた構
成にしたので、レジスタ個数を低減して回路規模の減少
を図ることが可能となった。従って、CKFS1、CK
FS2等の制御パルスを用いず、独立したフルスケール
リミット回路を用いる場合には、入力シフトレジスタと
出力シフトレジスタを独立に用意し、累算レジスタをデ
ータ取り込み用とデータ出力用の2個のレジスタに分割
して構成する必要がある。
【0076】以上のシーケンスにて求められた出力デー
タY(n)は、第31マシンサイクルのパルスCKPO
にて後段の回路へと出力されて、累算データW(n)
は、累算レジスタ240に保持されて、次回の演算サイ
クルに用いられる。
【0077】以上がHPFの1演算サイクルでの動作概
要であり、上記動作が周期的に繰り返されることで、1
次HPFが小規模の回路構成で実現できることになる。
なお、以上の説明では、1次HPFを例に取り説明した
ため、演算結果Y(n)が即座に出力されるために、入
出力シフトレジスタ210が、入力データX(n)と出
力データY(n)との双方の入力・出力用として兼用可
能なように、回路構成を行った例について述べてきた
が、2次以上のIIRフィルタを構成する場合や後段に
シフトレジスタが存在する場合等には、シフトレジスタ
210を入力データ専用のレジスタとし、出力データ
Y’(n)は、シリアル転送ラインYSを介して、転送
先である、別のシフトレジスタへシリアル転送されるよ
うに、回路構成するのが簡便であり、このことは本発明
の適用範囲に何らの制約を与えるものではない。シフト
レジスタを共用するか否かは、実現したいIIRフィル
タの構成に応じて適宜決定して、決定に応じた回路構成
をすればよい。
【0078】さて、上記実施形態において供給される各
制御クロックを発生するためには、ロジック回路で構成
することも可能であるが、1演算サイクル毎に周期的に
動作するROMにより生成させる方がより簡便である。
即ち、マシンサイクル、制御信号等を生成する信号生成
パターンを予め不揮発性メモリ(例えば、ROM等)に
格納しておき、不揮発性メモリの格納内容である信号生
成パターンを出力して、前記マシンサイクル、制御信号
を含む信号を生成すればよい。また、CPUを設けて、
CPUが別のROM内に内蔵されている動作プログラム
にしたがって、不揮発性メモリの格納内容である信号生
成パターンを読み出し、制御クロック等として、所望の
回路部に供給可能に回路構成をしておくことも可能であ
る。
【0079】なお、特に、本IIRフィルタと同一半導
体基板上にFIR型のデジタルフィルタ等を製造する場
合には、デジタルフィルタの処理に必要な係数を記憶し
ている係数記憶部もまた、上記1演算サイクル毎に周期
的に動作しているROMで実施することが多く、この場
合、フィルタ係数と共に、該ROM内にマイクロコード
化された制御信号データを内蔵して実現し、このマイク
ロコード化されたデータをデコードすることで、デジタ
ルフィルタの処理に必要な係数を生成させることが可能
であり、このような回路構成によって回路規模は大幅に
縮小される。なお、いわゆるフラッシュメモリを用い
て、所定時に格納内容を書換え可能にしておくと、回路
構成変更にも対処しうるので利便性が増す。
【0080】ところで、図11においては、フルスケー
ルリミット機能について述べることを主眼としたが、さ
らに、第(m+1)ビットをもリセット付きレジスタに
して、演算初期や何らかの異常時に、レジスタ全体をリ
セットすることも可能である。このような回路構成例
を、図12に示す。
【0081】図12の回路は、図11の回路において、
リセット信号RSTとRST1の2つの信号を入力する
ORゲートLの出力を、(m−1)ビット目のレジスタ
のリセット端子に接続し、また、リセット信号RSTと
RST2の2つの信号を入力するORゲートKの出力
を、mビット目のレジスタのリセット端子に接続し、さ
らに、リセット信号RSTが、(m+1)ビット目のレ
ジスタのリセット端子に入力されるように構成されてい
る。さらに、ORゲートLの出力が(m−1)ビット目
以下の全てのレジスタのリセット端子に入力されるよう
になっている。
【0082】したがって、このような回路において、
「RTS=H」により、全レジスタ内容はゼロにリセッ
トされることになる。なお、図9では、累算シフトレジ
スタ240にリセット端子(RST)を設けて、累算シ
フトレジスタ240をリセット可能にしている。
【0083】このように、入力データ用レジスタ、出力
データ用レジスタ、および、中間演算データ用レジスタ
のうちの少なくとも1以上のレジスタが、所定時にリセ
ットされるように構成されると、演算初期化のリセット
や異常発生等の後の演算を円滑に行うことが可能にな
る。
【0084】また、本発明の内容を複数チャンネルの演
算に対して適用する場合には、前記キャリー記憶機能付
きフルアダーを1個にしておいて、時分割して利用する
ことも考えられる。即ち、第1の態様としては、キャリ
ーレジスタを複数チャンネル分の個数だけ用意して、入
出力、および、中間演算データの供給および取り込み
を、各チャンネル毎に繰り返すことで、演算処理が実行
される。また第2の態様としては、1チャンネル分の1
演算サイクル終了後に、次チャンネルの1演算サイクル
を実施していくことで、前記キャリーレジスタを1ビッ
トにしたままで、演算処理の実行が可能となる。
【0085】以上、1次HPFを例に取り本発明の一実
施形態について述べたが、本発明の適用範囲は、1次H
PFに限られず全ての種類のIIRフィルタに適用可能
であるため、ここではLPFの場合や2次以上のIIR
フィルタへの適用形態の説明は行わない。
【0086】以上説明したように、本発明によれば、回
路規模が大きな多ビット加減算器の替わりに、回路規模
が小さいシリアル加減算器を実現できるとともに、回路
規模が大きな多ビット加減算器を不要とする、回路規模
が小さく、かつ、LSI面積、配線容量および消費電力
の少ないシリアル演算型のデジタルIIRフィルタを実
現できる。
【0087】さらに具体的に述べると、本発明によれ
ば、多ビットデジタルデータの加減算を、シフトレジス
タと1ビットのキャリー記憶機能付きフルアダーにて実
現させるシリアル演算手段と、該手段を適用したデジタ
ルIIRフィルタを提案することにより、従来のパラレ
ル演算方式およびパラレル演算型デジタルIIRフィル
タにて必要とされてきた17〜27ビットという多ビッ
トのフルアダーにて直接構成される多ビット加算器を、
1ビットのキャリーレジスタとフルアダーのみに置き替
えて実現することを可能とし、多ビットのキャリー遅延
による動作速度の問題をも解消し、回路規模や消費電力
を大幅に削減することが可能になる。
【0088】また、データレジスタの共用手法、フルス
ケールリミット機能、コントロール信号生成手法等を工
夫して、回路規模を縮小する手段を提供することによ
り、LSI製造面積、負荷容量、および、消費電力等を
大幅に低減することを可能にする。
【0089】
【発明の効果】以上説明したように、請求項1に係る発
明によれば、第1のレジスタ、第2のレジスタが、第1
の制御信号(CKP)に従って、与えられたmビット
(mは自然数)のデータを、第(m+1)ビットの値が
第mビットの値と同一となるように取込み、さらに、第
2の制御信号(CKS)に従って、(m+1)ビットの
データを順次シリアル出力し、フルアダーが、第1およ
び第2のレジスタから順次シリアル出力されるデータと
キャリー入力とを全加算し、リセット付きキャリーレジ
スタが、第1の制御信号(CKP)に従って自身のリセ
ット動作を行い、さらに、フルアダーが行った全加算結
果のキャリーを、第2の制御信号(CKS)に従って、
所定時間遅延させて前記フルアダーのキャリー入力とし
て供給するとともに、第3のレジスタがフルアダーの全
加算結果を、第2の制御信号(CKS)に従って順次取
り込むので、回路規模の小さな加算器を実現することが
できる効果がある。
【0090】また、請求項2に係る発明によれば、入力
データ用レジスタが、保持するデータを、マシンサイク
ルにしたがってLSB側から順次シリアル出力して、予
め対応付けられた転送先の各加減算装置へ転送入力さ
せ、さらに、加減算装置の各々は、転送されてきた2種
類のデータを、1マシンサイクル毎に、キャリー入力を
参照して、LSB側より順次加減算していく加減算器
と、前回のマシンサイクルでの加減算結果におけるキャ
リーを、今回のマシンサイクルにてキャリー入力として
加減算器に供給するキャリーレジスタとを、含み、加減
算結果の各々が、LSB側より順次、予め対応付けられ
た転送先のレジスタへシリアル転送され、前記転送先の
レジスタのMSB側より前記加減算結果が入力されるよ
うに構成されているので、回路規模の小さなデジタルI
IRフィルタを実現することができる効果がある。
【0091】また、請求項3に係る発明によれば、中間
演算データ用レジスタは、自身の任意のレジスタ位置か
らデータの入出力が可能なように、かつ、入出力された
データは、予め対応付けられた加減算器に入出力される
ように構成されているため、請求項2による効果に加
え、所望の演算を行うようなデジタルIIRフィルタ
を、容易に構成することが可能となる。
【0092】特に、請求項4に係る発明によれば、前記
キャリーレジスタは、制御信号(CKP)にしたがっ
て、減算動作では前記キャリー入力を1とするセット機
能を有し、一方、加算動作では前記キャリー入力を0と
するリセット機能を有するように構成されているため、
請求項2および3による効果に加え、加減算動作を簡易
な構成で行わせることが可能になる。
【0093】また、請求項5に係る発明によれば、前記
中間演算データを所定ビット数にするためのフルスケー
ルリミット回路をいずれかのレジスタに設けているの
で、請求項2、3および4による効果に加えて、正確な
演算を行うフィルタリング性能を維持できるという効果
がある。
【0094】さらに、請求項6に係る発明によれば、マ
シンサイクル、制御信号を含む信号を生成する信号生成
パターンを予め格納した不揮発性メモリを備えたので、
不揮発性メモリの格納内容である信号生成パターンを出
力して、前記マシンサイクル、制御信号を含む信号を生
成し、請求項2、3、4および5による効果に加え、回
路規模の増大を招かず簡単な構成で各種の制御信号を生
成可能になるという効果がある。
【0095】また、請求項7に係る発明によれば、前記
入力用レジスタを、自身に予め対応付けられた転送先の
加減算装置による演算結果(出力データ)を、該演算結
果のLSB側より、順次、自身のMSB側からシリアル
取り込みするように構成するので、請求項2、3、4、
5および6による効果に加え、入力用レジスタと出力用
レジスタとを共用可能とする。
【0096】さらに、請求項8に係る発明によれば、前
記入力データ用レジスタ、出力データ用レジスタ、およ
び、中間演算データ用レジスタのうちの少なくとも1以
上のレジスタが、所定時にリセットされるように構成さ
れているので、請求項2、3、4、5、6および7によ
る効果に加え、演算初期化が可能であり、しかも何らか
の異常等が生じても後の演算が円滑に実行可能になると
いう効果がある。
【図面の簡単な説明】
【図1】IIRフィルタのシグナルフローの説明図であ
る。
【図2】IIRフィルタのシグナルフローの説明図であ
る。
【図3】従来例である1次IIR型ハイパスフィルタの
ブロック図である。
【図4】多ビットキャリーリップル型加算器の構成図で
ある。
【図5】本発明に係る実施形態のシリアル加算器のブロ
ック図である。
【図6】シリアル加算器の動作タイミングを示す説明図
である。
【図7】サイン拡張の説明図である。
【図8】本発明に係る実施形態のシリアル減算器のブロ
ック図である。
【図9】本発明に係る実施形態のシリアル演算方式を用
いたIIRフィルタのブロック図である。
【図10】IIRフィルタの動作タイミングを示す説明
図である。
【図11】mビットフルスケールリミット機能を有する
(m+1)ビットシフトレジスタの構成図である。
【図12】フルスケールリミット機能および全リセット
機能を有する(m+1)ビットシフトレジスタの構成図
である。
【符号の説明】
10 反転回路 35 累算レジスタ 41 正・負のフルスケールオーバ判定・制御回路 50 第1の加算器 60 16ビットフルスケール設定回路 70 第2の加算器 80 26ビットフルスケール設定回路 90 26ビット累算器 100 入力レジスタ 110 入力シフトレジスタ 120 入力シフトレジスタ 130 出力シフトレジスタ 140 キャリー記憶機能付きフルアダー 150 フルアダー 160 リセット付きキャリーレジスタ 170 インバータ 180 セット付きキャリーレジスタ 200 出力レジスタ 210 入出力シフトレジスタ 240 累算シフトレジスタ 270 第1のキャリー記憶機能付きフルアダー 280 第2のキャリー記憶機能付きフルアダー 290 タイミング調整用1ビットレジスタ 300 タイミング調整用1ビットレジスタ 310 インバータ 320 1ビットフルアダー 330 1ビットセット付きレジスタ 340 1ビットフルアダー 350 1ビットリセット付きレジスタ

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 第1の制御信号(CKP)に従って、与
    えられたmビット(mは自然数)のデータを、第(m+
    1)ビットの値が第mビットの値と同一となるように取
    込み、さらに、第2の制御信号(CKS)に従って、
    (m+1)ビットのデータを順次シリアル出力する2種
    類のレジスタである第1のレジスタ、第2のレジスタ
    と、 該第1のレジスタおよび該第2のレジスタから順次シリ
    アル出力されるデータとキャリー入力とを全加算するフ
    ルアダーと、 前記第1の制御信号(CKP)に従って自身のリセット
    動作を行い、さらに、前記フルアダーが行った全加算結
    果のキャリーを、前記第2の制御信号(CKS)に従っ
    て、所定時間遅延させて前記フルアダーのキャリー入力
    として供給するリセット付きキャリーレジスタと、 前記フルアダーの全加算結果を、前記第2の制御信号
    (CKS)に従って順次取り込む第3のレジスタと、を
    含む加算器。
  2. 【請求項2】 入力データと、フィリタリング処理の過
    程で得られた中間演算データと、に基づいて演算処理を
    行った結果である出力データを、フィリタリング処理結
    果として出力するデジタルIIRフィルタであって、 保持するデータを、マシンサイクルにしたがってLSB
    側から順次シリアル出力して、予め対応付けられた転送
    先の各加減算装置へ転送入力させるための、入力データ
    用レジスタを備え、さらに、 前記加減算装置の各々は、転送されてきた2種類のデー
    タを、1マシンサイクル毎に、キャリー入力を参照し
    て、LSB側より順次加減算していく加減算器と、前回
    のマシンサイクルでの加減算結果におけるキャリーを、
    今回のマシンサイクルにてキャリー入力として前記加減
    算器に供給するキャリーレジスタとを、含み、加減算結
    果の各々が、LSB側より順次、予め対応付けられた転
    送先のレジスタへシリアル転送され、前記転送先のレジ
    スタのMSB側より前記加減算結果が入力されるように
    構成されている、デジタルIIRフィルタ。
  3. 【請求項3】 請求項2において、中間演算データ用レ
    ジスタは、自身の任意のレジスタ位置からデータの入出
    力が可能なように、かつ、入出力されたデータは、予め
    対応付けられた加減算器に入出力されるように構成され
    ていることを特徴とする、デジタルIIRフィルタ。
  4. 【請求項4】 請求項2および3のいずれかにおいて、
    前記キャリーレジスタは、制御信号(CKP)にしたが
    って、減算動作では前記キャリー入力を1とするセット
    機能を有し、一方、加算動作では前記キャリー入力を0
    とするリセット機能を有するように構成されたことを特
    徴とするデジタルIIRフィルタ。
  5. 【請求項5】 請求項2、3および4のいずれかにおい
    て、 前記中間演算データを所定ビット数にするためのフルス
    ケールリミット回路を、いずれかのレジスタに設けてい
    ることを特徴とするデジタルIIRフィルタ。
  6. 【請求項6】 請求項2、3、4および5のいずれかに
    おいて、 前記マシンサイクル、制御信号を含む信号を生成する信
    号生成パターンを予め格納した不揮発性メモリを備える
    ことを特徴とするデジタルIIRフィルタ。
  7. 【請求項7】 請求項2、3、4、5および6のいずれ
    かにおいて、 前記入力用レジスタが、自身に予め対応付けられた転送
    先の加減算装置による演算結果(出力データ)を、該演
    算結果のLSB側より、順次、自身のMSB側からシリ
    アル取り込みするように構成されている、ことを特徴と
    するデジタルIIRフィルタ。
  8. 【請求項8】 請求項2、3、4、5、6および7のい
    ずれかにおいて、 前記入力データ用レジスタ、出力データ用レジスタ、お
    よび、中間演算データ用レジスタのうちの少なくとも1
    以上のレジスタが、所定時にリセットされるように構成
    されていることを特徴とするデジタルIIRフィルタ。
JP8176849A 1996-07-05 1996-07-05 加算器およびデジタルiirフィルタ Pending JPH1021219A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8176849A JPH1021219A (ja) 1996-07-05 1996-07-05 加算器およびデジタルiirフィルタ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8176849A JPH1021219A (ja) 1996-07-05 1996-07-05 加算器およびデジタルiirフィルタ

Publications (1)

Publication Number Publication Date
JPH1021219A true JPH1021219A (ja) 1998-01-23

Family

ID=16020916

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8176849A Pending JPH1021219A (ja) 1996-07-05 1996-07-05 加算器およびデジタルiirフィルタ

Country Status (1)

Country Link
JP (1) JPH1021219A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007274217A (ja) * 2006-03-30 2007-10-18 Sharp Corp Ofdm復調装置、ofdm復調方法、プログラム及びコンピュータ読み取り可能な記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007274217A (ja) * 2006-03-30 2007-10-18 Sharp Corp Ofdm復調装置、ofdm復調方法、プログラム及びコンピュータ読み取り可能な記録媒体

Similar Documents

Publication Publication Date Title
JPH082014B2 (ja) 多段デジタル・フィルタ
JPWO2008018197A1 (ja) デジタルフィルタ、その合成装置、合成プログラム、及び合成プログラム記録媒体
JPH1021219A (ja) 加算器およびデジタルiirフィルタ
JP3318753B2 (ja) 積和演算装置および積和演算方法
CN114448390A (zh) 一种Biquad数字滤波器装置及实现方法
JPH0127463B2 (ja)
JPH08172343A (ja) Iir型ディジタルフィルタの構成方法
JP3258938B2 (ja) デシメーションフィルタ
CN112988111B (zh) 一种单比特乘法器
JPS6336577B2 (ja)
JP3123060B2 (ja) ディジタル演算回路
JP3097599B2 (ja) ディジタルフィルタ
WO2005078924A1 (ja) 周波数成分分離フィルタ、方法およびプログラム
JP3851024B2 (ja) 乗算器
JP2009065515A (ja) デジタルフィルタ
JP2864598B2 (ja) ディジタル演算回路
JPS61213926A (ja) Dsp演算処理方式
US6144329A (en) Apparatus and method for processing analog signals using residue-based digital operations
JPH05224888A (ja) 小数点位置可変型データの乗算回路
JP2001298349A (ja) オーバーサンプリングディジタルフィルタ回路
JPH03211910A (ja) ディジタルフィルタ
JP2004289417A (ja) デジタルフィルタ
JPH01305714A (ja) デジタルフイルタ
JP2005149009A (ja) 積和演算回路
JPH09312549A (ja) レート変換回路

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040824

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041020

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050614