JPH0644701B2 - たたみ込み演算回路 - Google Patents
たたみ込み演算回路Info
- Publication number
- JPH0644701B2 JPH0644701B2 JP15214886A JP15214886A JPH0644701B2 JP H0644701 B2 JPH0644701 B2 JP H0644701B2 JP 15214886 A JP15214886 A JP 15214886A JP 15214886 A JP15214886 A JP 15214886A JP H0644701 B2 JPH0644701 B2 JP H0644701B2
- Authority
- JP
- Japan
- Prior art keywords
- sum
- circuit
- input
- products
- 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.)
- Expired - Lifetime
Links
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、異なる二つの信号系列xnとhnとのたたみ
込み演算を行う回路に関する。特に、一方の信号系列h
nがp次の全極形ディジタルフィルタのインパルス応答
の自己相関関係である場合のたたみ込み演算回路に関す
る。本発明は音声処理回路に利用するに適する。
込み演算を行う回路に関する。特に、一方の信号系列h
nがp次の全極形ディジタルフィルタのインパルス応答
の自己相関関係である場合のたたみ込み演算回路に関す
る。本発明は音声処理回路に利用するに適する。
本発明は、N項の信号系列とp次の全極形ディジタルフ
ィルタのインパルス応答の自己相関関数とのたたみ込み
演算回路において、 積和回路を2個設け、それぞれの積和回路の出力の和を
出力することにより、 少ない計数回数で短時間に計算を実行することができる
ようにしたものである。
ィルタのインパルス応答の自己相関関数とのたたみ込み
演算回路において、 積和回路を2個設け、それぞれの積和回路の出力の和を
出力することにより、 少ない計数回数で短時間に計算を実行することができる
ようにしたものである。
一般にたたみ込み演算は、 で表される。ここで、Rnはp次全極形ディジタルフィ
ルタのインパルス応答の自己相関関数で、全極形フィル
タのインパルス応答をfn、n=0,1,2,……とす
ると、 で表される。ここで、 Rn=R-n,−(N−1)≦n≦N−1……(3) である。
ルタのインパルス応答の自己相関関数で、全極形フィル
タのインパルス応答をfn、n=0,1,2,……とす
ると、 で表される。ここで、 Rn=R-n,−(N−1)≦n≦N−1……(3) である。
(1)式を演算する従来例回路の構成を第2図に示す。第
2図で、入力xnは、x0,x1,……の順に入力端子
100 から加えられ、2×(N−1)個縦続に接続された
遅延素子101 内に記憶され、右へシフトしていく。x0
がちょうど、その出力が乗算器102 で係数R0と乗算さ
れる遅延素子内に記憶されたとき、スイッチ104 が閉成
し、以後、xnの最終サンプルxN-1 が入力されるま
で、出力ynが出力端子105 から得られる。加算器103
では2N−1個の乗算器102 の出力が加算される。
2図で、入力xnは、x0,x1,……の順に入力端子
100 から加えられ、2×(N−1)個縦続に接続された
遅延素子101 内に記憶され、右へシフトしていく。x0
がちょうど、その出力が乗算器102 で係数R0と乗算さ
れる遅延素子内に記憶されたとき、スイッチ104 が閉成
し、以後、xnの最終サンプルxN-1 が入力されるま
で、出力ynが出力端子105 から得られる。加算器103
では2N−1個の乗算器102 の出力が加算される。
このような従来例装置では、(1)式の計算に乗算および
加算が各々N2回行われることが必要であり、Nが通常
大きな値(≧ 256)をとり得るので、このときに計算時
間が長引く欠点があった。
加算が各々N2回行われることが必要であり、Nが通常
大きな値(≧ 256)をとり得るので、このときに計算時
間が長引く欠点があった。
本発明はこのような欠点を除去するもので、乗算および
加算の回数を低減し、計算時間を短縮することができる
たたみ込み演算回路を提供することを目的とする。
加算の回数を低減し、計算時間を短縮することができる
たたみ込み演算回路を提供することを目的とする。
本発明は、N項の信号からなる信号系列と、p次の全極
形でそのz変換で表現された伝達関数が であるディジタルフィルタのインパルス応答の自己相関
関数とのたたみ込み演算を行うたたみ込み演算回路にお
いて、自己相関関数と信号系列とのN/2項の積和を演
算する第一の積和回路(1)と、この積和回路の出力を
記憶する第一の記憶手段(3)と、係数αiと自回路の
入力信号とのp項の積和を演算する第二の積和回路
(2)と、上記第一の積和回路の出力をこの第二の積和
回路の入力信号の初期値として第一のタイミングで与え
る手段(6、7A)と、上記第二の積和回路の出力をそ
の入力として第二のタイミングで再帰入力する手段(7
B)と、上記第二の積和回路の出力を記憶する第二の記
憶手段(4)と、上記第一の記憶手段とこの第二の記憶
手段の出力を加算して出力する手段(5)とを備えたこ
とを特徴とする。
形でそのz変換で表現された伝達関数が であるディジタルフィルタのインパルス応答の自己相関
関数とのたたみ込み演算を行うたたみ込み演算回路にお
いて、自己相関関数と信号系列とのN/2項の積和を演
算する第一の積和回路(1)と、この積和回路の出力を
記憶する第一の記憶手段(3)と、係数αiと自回路の
入力信号とのp項の積和を演算する第二の積和回路
(2)と、上記第一の積和回路の出力をこの第二の積和
回路の入力信号の初期値として第一のタイミングで与え
る手段(6、7A)と、上記第二の積和回路の出力をそ
の入力として第二のタイミングで再帰入力する手段(7
B)と、上記第二の積和回路の出力を記憶する第二の記
憶手段(4)と、上記第一の記憶手段とこの第二の記憶
手段の出力を加算して出力する手段(5)とを備えたこ
とを特徴とする。
Nを偶数とし、(1)式をマトリクスの形で書き直すと、 になる。
ここで、 とおくと、ynは yn=un+vn,0≦n≦N−1……(8) で表される。p次の全極形ディジタルフィルタの伝達関
数H(z)を、 とすると、H(z)のインパルス応答fnは、 で表される。ここで である。インパルス応答の自己相関Rnは、(2)式で表
され、 になる。
数H(z)を、 とすると、H(z)のインパルス応答fnは、 で表される。ここで である。インパルス応答の自己相関Rnは、(2)式で表
され、 になる。
さて、un(N/2 ≦n≦N−1)、vn(0≦n≦(N/2)−
1)は、(11)式の関係式を用いて、少ない計算回数で計
算することができる。すなわち、un-iにαiを乗算し
たものをi=1,……,pについて加えると、 になる。したがってunは、un-i (i=1,……,
p)からp回の乗算と加算とで求まる。通常pは7〜10
程度の値をとり、unを直接計算する場合のN/2 回の乗
算および加算に比べて大幅に低減される。一度unが求
まれば、再帰的にun+1,un+2,……と順に求めること
ができる。
1)は、(11)式の関係式を用いて、少ない計算回数で計
算することができる。すなわち、un-iにαiを乗算し
たものをi=1,……,pについて加えると、 になる。したがってunは、un-i (i=1,……,
p)からp回の乗算と加算とで求まる。通常pは7〜10
程度の値をとり、unを直接計算する場合のN/2 回の乗
算および加算に比べて大幅に低減される。一度unが求
まれば、再帰的にun+1,un+2,……と順に求めること
ができる。
vn(0≦n≦(N/2)−1)についても、vn+i,i=1
〜pから、 と表され、unと同様に計算回数は大幅に低減される。
vnについても、vn-1,vn-2,……と再帰的に求めら
れる。
〜pから、 と表され、unと同様に計算回数は大幅に低減される。
vnについても、vn-1,vn-2,……と再帰的に求めら
れる。
un,n=N/2,(N/2)+1,……,N-1は、u(N/2)-p,u
(N/2)-(p-1),……,u(N/2)-1を初期値とて(6)式に従っ
て計算し、以降は(12)式により計算すれば求まる。ま
た、vn,n=(N/2)-1,(N/2)-2,……,0は、v
N/2 ,V(N/2)+1,……,v(N/2)+(p-1)を初期値として
(7)式により計算し、以降は(13)式に従って計算をすれ
ば求まる。
(N/2)-(p-1),……,u(N/2)-1を初期値とて(6)式に従っ
て計算し、以降は(12)式により計算すれば求まる。ま
た、vn,n=(N/2)-1,(N/2)-2,……,0は、v
N/2 ,V(N/2)+1,……,v(N/2)+(p-1)を初期値として
(7)式により計算し、以降は(13)式に従って計算をすれ
ば求まる。
以上のステップで、u(N/Z)-p〜uN-1 ,v0〜v
(N/2)+(p-1)が求められるが、残されたu0〜u
(N/2)-(p-1),v(N/2)+p〜VN-1 については、サイズを
N/2 としたたたみ込み演算と同じになるから、同様な手
順を繰り返すことにより高速に求められる。
(N/2)+(p-1)が求められるが、残されたu0〜u
(N/2)-(p-1),v(N/2)+p〜VN-1 については、サイズを
N/2 としたたたみ込み演算と同じになるから、同様な手
順を繰り返すことにより高速に求められる。
(9)式ないし(11)式は、ラビナ氏、シャファ氏著、音声
信号のデジタル処理、プレンティスホール、1978年(L.
R Rabiner,R.W.Schafer,Digital Processing of Speech
Signals Prentice-Hall,1978)による。
信号のデジタル処理、プレンティスホール、1978年(L.
R Rabiner,R.W.Schafer,Digital Processing of Speech
Signals Prentice-Hall,1978)による。
以下、本発明実施例を図面に基づいて説明する。
第1図はこの実施例装置の構成を示すブロック構成図で
ある。この実施例回路は、unおよびvnの初期値(u
n,(N/2)−p≦n≦(N/2)−1;vn,N/2 ≦n≦(N/2)
+(p−1))を計算する第一の積和回路1と、un
およびvnを再帰的に求める第二の積和回路2とを含
む。第一の積和回路1では、乗算器の係数は、Rp-1,R
p-2,……,R0……,R(N/2)-1 の順で左側から割当て
られ、第二の積和回路2の乗算器係数は、左から順に全
極形フィルタの係数α1,α2,……,αpである。
ある。この実施例回路は、unおよびvnの初期値(u
n,(N/2)−p≦n≦(N/2)−1;vn,N/2 ≦n≦(N/2)
+(p−1))を計算する第一の積和回路1と、un
およびvnを再帰的に求める第二の積和回路2とを含
む。第一の積和回路1では、乗算器の係数は、Rp-1,R
p-2,……,R0……,R(N/2)-1 の順で左側から割当て
られ、第二の積和回路2の乗算器係数は、左から順に全
極形フィルタの係数α1,α2,……,αpである。
次に、この実施例の動作を第1図に基づいて説明する。
まず、入力端子10にx0,x1,……が加えられて最終
サンプルx(N/Z)-1 が入力されると同時に第一のタイミ
ングでスイッチ6が閉成し、スイッチ7が7A側に接続
され、u(N/Z)-pが第一の積和回路1の出力端子11から
出力され、第一の記憶素子3に格納されるとともに、第
二の積和回路2の遅延素子の初期値として入力され、p
−1クロックの間に、順次u(N/Z)-p+1,……,u
(N/Z)-1 が同様に出力され記憶される。次に、第二のタ
イミングでスイッチ7は7B側に接続され、u(N/Z)-i
とαi(i=1,……,p)の積和を求め、その結果
は、遅延素子に入力されると同時に、第二の記憶素子4
に入力される。この動作はN/2 クロック間繰り返えさ
れ、un,n= N/2,……,N-1 が求まる。
まず、入力端子10にx0,x1,……が加えられて最終
サンプルx(N/Z)-1 が入力されると同時に第一のタイミ
ングでスイッチ6が閉成し、スイッチ7が7A側に接続
され、u(N/Z)-pが第一の積和回路1の出力端子11から
出力され、第一の記憶素子3に格納されるとともに、第
二の積和回路2の遅延素子の初期値として入力され、p
−1クロックの間に、順次u(N/Z)-p+1,……,u
(N/Z)-1 が同様に出力され記憶される。次に、第二のタ
イミングでスイッチ7は7B側に接続され、u(N/Z)-i
とαi(i=1,……,p)の積和を求め、その結果
は、遅延素子に入力されると同時に、第二の記憶素子4
に入力される。この動作はN/2 クロック間繰り返えさ
れ、un,n= N/2,……,N-1 が求まる。
続いて、vnの計算に移る。第一の積和回路1の入力端
子10から信号がxN-1,xN-2,……,x(N/2)の順で入力
され、最後のサンプルx(N/2)が入力されると同時にス
イッチ6が閉成され、スイッチ7が7A側に接続され、
v(N/2)+p-1,v(N/2)+p-2,……,v(N/2) がクロック毎
に、第一の記憶素子3と、第二の積和回路2とに出力さ
れる。次に、スイッチ7が再び7B側に接続され、
vn,n=(N/2)-1 ,(N/2)-2 ,……,0が積和回路2
の出力として記憶素子4および遅延素子に入力される。
以上の手順は、もしNが4の倍数であれば、サイズをN/
4とし、同様の処理を繰り返し続けることができる。
子10から信号がxN-1,xN-2,……,x(N/2)の順で入力
され、最後のサンプルx(N/2)が入力されると同時にス
イッチ6が閉成され、スイッチ7が7A側に接続され、
v(N/2)+p-1,v(N/2)+p-2,……,v(N/2) がクロック毎
に、第一の記憶素子3と、第二の積和回路2とに出力さ
れる。次に、スイッチ7が再び7B側に接続され、
vn,n=(N/2)-1 ,(N/2)-2 ,……,0が積和回路2
の出力として記憶素子4および遅延素子に入力される。
以上の手順は、もしNが4の倍数であれば、サイズをN/
4とし、同様の処理を繰り返し続けることができる。
最終的なたたみ込み演算の結果ynは、記憶素子3およ
び4に記憶されたunおよびvnを同一のnについて加
算することにより得られる。
び4に記憶されたunおよびvnを同一のnについて加
算することにより得られる。
本発明は、以上説明したように、従来N2回の乗算およ
び加算が必要であったたたみ込み演算が、N=2Mで表
される場合に最大(本発明では全体のサイズをN/2 ,N/
4 ,N/8 ,……と順に1/2 ずつ分解してゆき、p≧N/
2k,k=1,2,3……となった時点で終了する。ここ
で最大というのは、kをmax log Nとしたときの値を意
味し、一般にはこの値より小さくなる。)で、 初期値計算 P〔2M-1・2+2M-2・4+2M-3・8+……〕 =PNlog N 回 再帰式計算 P〔2M-1・2+2M-2・4+2M-3・8+……〕 =PNlog N 回 であり、したがって、最大2PNlog N 回で乗算で実
現できる。また、加算の回数は、最大で2PN・log N
+N・log N=(2P+1)N・log N 回である。
び加算が必要であったたたみ込み演算が、N=2Mで表
される場合に最大(本発明では全体のサイズをN/2 ,N/
4 ,N/8 ,……と順に1/2 ずつ分解してゆき、p≧N/
2k,k=1,2,3……となった時点で終了する。ここ
で最大というのは、kをmax log Nとしたときの値を意
味し、一般にはこの値より小さくなる。)で、 初期値計算 P〔2M-1・2+2M-2・4+2M-3・8+……〕 =PNlog N 回 再帰式計算 P〔2M-1・2+2M-2・4+2M-3・8+……〕 =PNlog N 回 であり、したがって、最大2PNlog N 回で乗算で実
現できる。また、加算の回数は、最大で2PN・log N
+N・log N=(2P+1)N・log N 回である。
一例として、Nが256 の場合の乗算回数を比較すると、 従来例:N2=65,536回 本発明:N2=15,232回 になり、約1/4 に低減される。この結果はNが大きいほ
ど顕著である。すなわち、計算時間を短縮する効果があ
る。
ど顕著である。すなわち、計算時間を短縮する効果があ
る。
第1図は本発明の実施例装置の構成を示すブロック構成
図。 第2図は従来例装置の構成を示すブロック構成図。 1、2……積和回路、3、4……記憶素子、5、103 …
…加算器、6、7、104 ……スイッチ、10、12、100…
…入力端子、11、13、105 ……出力端子、101 ……遅延
素子、102 ……乗算器。
図。 第2図は従来例装置の構成を示すブロック構成図。 1、2……積和回路、3、4……記憶素子、5、103 …
…加算器、6、7、104 ……スイッチ、10、12、100…
…入力端子、11、13、105 ……出力端子、101 ……遅延
素子、102 ……乗算器。
Claims (1)
- 【請求項1】N項の信号からなる信号系列と、p次の全
極形でそのz変換で表現された伝達関数が であるディジタルフィルタのインパルス応答の自己相関
関数とのたたみ込み演算を行うたたみ込み演算回路にお
いて、 入力に遅延を与える複数の遅延素子とこの遅延素子で遅
延される入力に係数を乗算する複数の乗算器と上記乗算
器の出力を加算する加算器とを備えて自己相関関数と信
号系列とのN/2項の積和を演算する第一の積和回路
(1)と、 この積和回路の出力を記憶する第一の記憶手段(3)
と、 入力に遅延を与える複数の遅延素子とこの遅延素子で遅
延される入力に係数を乗算する複数の乗算器と上記乗算
器の出力を加算する加算器とを備えて係数αiと自回路
の入力信号とのp項の積和を演算する第二の積和回路
(2)と、 上記第一の積和回路の出力をこの第二の積和回路の入力
信号の初期値として第一のタイミングで与える手段
(6、7A)と、 上記第二の積和回路の出力をその入力として第二のタイ
ミングで再帰入力する手段(7B)と、 上記第二の積和回路の出力を記憶する第二の記憶手段
(4)と、 上記第一の記憶手段とこの第二の記憶手段の出力を加算
して出力する手段(5)と を備えたことを特徴とするたたみ込み演算回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15214886A JPH0644701B2 (ja) | 1986-06-27 | 1986-06-27 | たたみ込み演算回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15214886A JPH0644701B2 (ja) | 1986-06-27 | 1986-06-27 | たたみ込み演算回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS637010A JPS637010A (ja) | 1988-01-12 |
JPH0644701B2 true JPH0644701B2 (ja) | 1994-06-08 |
Family
ID=15534082
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP15214886A Expired - Lifetime JPH0644701B2 (ja) | 1986-06-27 | 1986-06-27 | たたみ込み演算回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0644701B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004032679A (ja) | 2002-02-28 | 2004-01-29 | Matsushita Electric Ind Co Ltd | 通信装置及び通信システム |
-
1986
- 1986-06-27 JP JP15214886A patent/JPH0644701B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPS637010A (ja) | 1988-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0122117B1 (en) | Digital signal processors | |
US5287299A (en) | Method and apparatus for implementing a digital filter employing coefficients expressed as sums of 2 to an integer power | |
US6131105A (en) | Calculation of a scalar product in a direct-type FIR filter | |
US4791597A (en) | Multiplierless FIR digital filter with two to the Nth power coefficients | |
JP2957183B2 (ja) | 巡回型ディジタルフィルタ | |
US4947363A (en) | Pipelined processor for implementing the least-mean-squares algorithm | |
US4692888A (en) | Method and apparatus for generating and summing the products of pairs of numbers | |
US20020118739A1 (en) | Digital filter and method for performing a multiplication based on a look-up table | |
JPS6196817A (ja) | フイルタ− | |
EP0097167A1 (en) | A time multiplexed n-ordered digital filter | |
US4740906A (en) | Digital lattice filter with multiplexed fast adder/full adder for performing sequential multiplication and addition operations | |
US20020116422A1 (en) | Efficient convolution method and apparatus | |
JPH0644701B2 (ja) | たたみ込み演算回路 | |
EP0791242B1 (en) | Improved digital filter | |
JP3684314B2 (ja) | 複素乗算器および複素相関器 | |
JPS59194242A (ja) | ディジタル乗算累積加算装置 | |
KR940007570B1 (ko) | 디지탈 시스템의 다항식 곱셈회로 | |
Nun et al. | A modular approach to the hardware implementation of digital filters | |
SU1363248A1 (ru) | Устройство дл цифровой фильтрации | |
US20050108311A1 (en) | Method and filter arrangement for digital recursive filtering in the time domain | |
JPH06152330A (ja) | ディジタルフィルター | |
CA1289256C (en) | Optimal parametric signal processor for least squares finite impulse response filtering | |
RU2119242C1 (ru) | Цифровой трансверсальный фильтр | |
SU942247A1 (ru) | Цифровой нерекурсивный фильтр | |
JPH09298451A (ja) | デジタルフィルタ回路およびその制御方法 |