• 沒有找到結果。

第一章 緒論

1.1 研究背景

一串數列的離散傅立葉轉換,亦稱為傅立葉頻譜或簡稱為頻譜,若其頻譜在 所限定的頻率之內皆大於或等於零,如假設ω∈[0,π],而在ω∈[0,π]內此數列 的頻譜沒有負的部分,則這個數列即可稱之為正數列。本論文就是要找到一串有 限長度正數列,利用min-max 的評判標準[1],去近似一個已給定的頻譜(例如低 通理想濾波器),而得到將誤差最大值最小化的最佳頻譜,再經處理後即可得正 數列頻譜。而此有限長度正數列頻譜即可作頻譜分解,並以 FIR(finite impulse response)系統實現。

首先我們討論min max 指標的數學表示式,再加上限制條件下,我們可將頻 譜設計的問題表示為︰

=

=

L

L n

n j j

j

j j

e n h e

A

e A t s

e A e

H W

ω ω

ω

ω ω

π ω

π ω ω

] [ )

(

] , 0 [ 0

) ( . .

|}

)) ( ) (

| ) ( max min{ [0, ]

(1.1-1)

表示式中A(ejω)為我們所要找的頻譜,H(ejω)為給定的理想頻譜,而W(ω)為權 重函數(weighted function),然而對每一個ω ,A(ejω)≥0 ω∈[0,π],每一頻率ω

均有一個限制,因此限制條件有無限多個,因此文獻上我們稱此問題為半無限維 規劃問題。

在這裡權重函數我們定義為︰





= ≤

π ω ω

ω ω ω

s

K p

W

, 1

0 1 , )

( , (1.1-2)

其中ωp、ωs分別稱為通帶邊緣頻率(passband edge frequency)及滯帶邊緣頻率 (stopband edge frequency),藉由權重函數中 K 值的變化,可以讓我們得到不同比 率的δ 、1 δ 近似誤差值,而此特性對於得到正數列最佳頻譜,將有極大的用途。 2 1.2 章節介紹

第二章裡我們先介紹正數列的一些基本特性,以及本論文中設計方法 min max 指標的定理基礎和 Parks-McClellan 利用此定理基礎下所發展出的演算法,

最後再介紹頻譜分解理論。第三章裡我們將利用這一套演算法,模擬出設計結 果,並且求出具有最佳之最大誤差正數列頻譜,其中再和一些其它方法的模擬結 果做最大誤差上的比較。第四章則為本論文之結論。

第二章 定理及演算法

在本章節裡我們在2.1 節中首先介紹正數列特性,接著 2.2 節再介紹 min max 指標問題所需使用解多項式方法的交替定理,和此定理其應用在設計濾波器上出 現的性質,而交替定理並沒有確切指出如何解得濾波器。因此2.3 節我們再討論 Parks-McClellan 疊代演算法,這個演算法將會實現交替定理應用到濾波器上的 設計。2.4 節再介紹分解理論來分解所設計出之頻譜,即可以 FIR 系統做近似。

2.1 正數列的特性

我們稱一串數列

{

x(n)

}

為正數列其數學式子上的定義,即為:

−∞

=

=

n

n j

j x n e

e

X( ω) ( ) ω 0 (2.1-1) 也就是說若且為若其離散傅立葉轉換大於或等於零,在此需注意的一點 (2.1-1)之定義並非指數列

{

x(n)

}

內之元素皆為正數,而是指這串數列的離散傅立 葉轉換後的函數值大於或等於零。而一串數列所有元素皆為非負仍有可能具有負 的離散傅立葉轉換函數。然而正數列總是有實數值的離散傅立葉轉換,如此一 來,此正數列同時也必須遵守共軛對稱(Conjugate Symmetric)性質,亦即:

) ( ) ( n x n

x − = ∀n (2.1-2)

x 表示x的共軛複數。我們以一個代數上的表示法來說明正數列的特性,此表示 法即是Parseval’s 關係式的應用,如下所示:

∑ ∑

−∞

=

−∞

=

=

k m

j j

k w m w k m x

d e W e X

) ( ) ( ) (

) ( ) 2 (

1 π 2

π

ω

ω ω

π (2.1-3)

其中 X(ejω)和W(ejω)為任意兩數列

{ }

x(n) 和

{

w(n)

}

的離散傅立葉轉換。

(2.1-3)是構成正數列的一個必要但不是充分條件,因為有很多數列雖滿足(2.1-3)

卻不是一個正數列。假如X(ejω)為離散傅立葉函數轉換的非負實數,則(2.1-3) 即為非負實數值。因此建立了如下正數列的基礎特性[3]。

定理 2.1.1 一串共軛對稱數列

{ }

x(n) 為正數列之充分必要條件為

∑ ∑

−∞

=

−∞

=

k m

k w m w k m

x( ) ( ) ( ) 0 (2.1-4) 對於每個複數數列

{

w(n)

}

,上述定理提供了我們對於測試數列一串無限數列是否

為正的方法,我們進而可以將之利用到有限數列上,把(2.1-4)改為如下所示︰

∑ ∑

= =

L

L k

L

L m

k w m w k m

x( ) ( ) ( ) 0 (2.1-5) 我們把(2.1-5)中的共軛對稱數列

{

x(n)

}

轉換成相關的k 階資料矩陣(date matrix)來 考量。這個矩陣具有下列型式︰









= −

) 0 ( )

1 ( ) (

) 1 ( )

0 ( ) 1 (

) ( )

1 ( ) 0 (

x k

x k x

k x x

x

k x x

x Xk

L M M

M

L L

(2.1-6)

(2.1-5)的(k+1)×(k+1)的資料矩陣是一個Hermitian-Toeplitez 的矩陣,而 Hermitian-Toeplitez 矩陣我們可以利用(2.1-5)來得到。

下列我們做簡單的推導,

[

矩陣我們可得以下定理。

定理 2.1.2 共軛對稱數列

{ }

x(n) 是正數列,則若且唯若其相關資料矩陣 ,L

2 , 1 , 0 ,k =

Xk 為半正定。

由(2.1-5)所示,這個數列稱之為正數列的條件為大於等於零,因此(2.1-9) 0

) ( )

(k *X W k

W k ,其中W(k)=

{

w(n)

}

為任意複數數列,因此Xk 0,也就是說

X 為半正定則這個數列即為正數列。 k

這個定理可以讓我們更明確的測試出,一串數列是否為正數列,然而這裡有 一項需要注意的是,在測試這串數列否為正數列時,這個數列的所有資料矩陣都 應該是半正定。也就是說這個數不論取數列中對稱的任何一段數列,其X 都應k 該是半正定。因此若整個資料矩陣族皆為半正定時,此數列不論是有限或無限長 度,都可稱之為正數列。

在介紹完正數列的定義以及測試正數列的方法後,我們接下來再介紹濾波器 設計上,所需使用到的定理基礎也就是交替定理[1]和設計的演算法。

2.2 交替定理(Alternation Theorem)

假設 F 表示包含在實軸 x 上之封閉子集所成的不連續聯集。P (x)表示一個L 階 多項式,如下所示︰

=

= L

k k kx a x

P

0

)

( (2.2-1) 在此我們定義一個誤差函數Ep(x),使其具有以下的表示方式︰

)]

( ) ( )[

( )

(x W x H x P x

Ep = p p − (2.2-2)

) (x

Hp 為一個給定之理想函數,它在 F 上連續;Wp(x)是一個權重函數,在 F 上 連續。此外我們再定義出最大誤差|| E 為︰ ||

| ) (

| max

||

||E Ep x

x∈F

= (2.2-3) 在定理中指出,當一個使|| E 為最小的唯一 L 階多項式|| P(x),若且唯若條件為

||

|| E 最 少 有 (L+2) 個 xi 在 F , 使 得 x1 <x2 <K<xr+2 , 而 且

||

||

) 1 ( )

(x E x E

Ep i =− p i+ =± ,i=1,2,...,(r+1)。也就是說當我們找到了一個 L 階多項P(x),而這個多項式在不連續聯集 F 中,最少有(L+2)個端點存在,且此

) 2

(L+ 個極端點之誤差絕對值大小皆相等,並具有一正極端值後為一負端極值順 序特性者,則此 L 階多項式P(x)即為一個使得(2.2-2)中Ep(x)為最大,且為唯一 的多項式解。

定理 2.2.1

在一個 L 階的多項式之最大可能交替數目是(L+3)個且最少有(L+2)個交替。

我們對這個定理做簡單說明如下,由於在等漣波濾波器的設計中,一個 L 階的多項式最多會有(L−1)個極端值,而在ω=0,ωps,π 亦有可能有交替,所 以最大可能的交替數目為(L−1)個極端值,再加上四個邊緣頻率,因此最多會有

) 3

(L+ 個交替,而由交替定理可知最少有(L+2)個交替,若交替數達到最大可能

交替數目(L+3)個時,則此濾波器也可稱為超越漣波濾波器(extraripple filter)。

在此我們考慮一個三角多項式

=

= L

k

k

ak

H

0

) (cos )

(cosω ω

) ) (cos )

1 ( ( sin

) ) (cos (

) sin (cos

1

0

1 0

1

= +

=

⋅ +

=

=

L

k

k k

L

k

k k

a k

a d k

dH

ω ω

ω ω ω

ω

(2.2-4)

其在ω=0及π 兩點上總是零,而(L−1)次多項式的(L−1)個根也會使(2.2-4)為 零,在此交替頻率已有(L+1)個,因此再來討論ωp和ωs是否也必定為交替,由 於在交替定理中,我們已知交替頻率點上,其誤差必須要在δ =±|| E||間,且ωp 和ωs為相連接之交替頻率,也就是說|Ep)|=−|Es)|,因此若ωp和ωs其中

有一個不為交替頻率會連帶移走兩個交替,而使得交替頻率少於L+2個,不合 定理。

2.3 派克司-麥克連演算法(Parks-McClellan algorithm) 2.3.1 Parks-McClellan 演算法介紹

交替定理提供了誤差在 min max 下是否具最佳性的充分且必要條件。而這個 定理並沒有明確告訴我們,如何尋找最佳濾波器,但是這個條件卻提供了尋找濾 波器的基礎,而 Parks-McClellan 演算法[1]則提供了我們,利用交替定理為基礎 下所發展出的一套疊代設計方法。

以下我們介紹交替定理如何套用在濾波器設計上,以及Parks-McClellan algorithm 演算法做詳細的介紹。通常我們可以先考慮設計一個零相位的濾波器,

也就是說濾波器之係數有以下性質︰

] [ ]

[n h n

h = − n∈ (2.3-1) R 而這個濾波器可以假設為︰

=

在Parks-McClellan 演算法中,它的目的是為了把一個濾波器的設計問題轉 換成一個多項式近似問題,再利用解多項式的方法而來得到所要求的濾波器。因 此就必須將(2.3-5)改成多項式的型式。明確的說,就是把A(ejω)中的cos( nω )能 夠表示成為cos(ω)的多項式,因此在這個演算法裡套用了︰

)

2

ωp

ω ≤

0 (通帶)處的交替頻率ωiA(ejωi)= 1±Kδ,在ωs ≤ω≤π(滯帶)處交替

頻率ωiA(ejωi)=±δ ,且E(ω)≤δ,ω∈[0 π]。如果有E(ω)≥δ則表示這並非 是最佳的,必須再找一組新極端點,而我們所找的新極端點為誤差曲線(在此我

們稱還未得到最佳誤差濾波器時,疊代過程中所得到的曲線為誤差曲線)中 )

2

(L+ 個最大尖點頻率,重新計算直到找到最大誤差為止,而這個重複的程序也 一定可以收斂,並找到最佳濾波器。在這裡Parks-McClellan 運用 Lagrange 內插 法,得到可以直接求得A(ejw)和E(ω)的公式。

+

= +

=

= 1

1 1

1

)] [(

)] [(

)

( L

k k

k L

k

k k k j

x x

m x C x

m e

A ω (2.3-13a)

其中

) (

) 1 ) (

( 1

k k j

k H e W

C k

ω

ω − − +δ

= (2.3-13b)

+

= = − +

= 1

1

2) ) (

( 1

L

k i i

L k k i k

k b x x

x

m x (2.3-13c)

其中ωk,k =0,1,...,L+1,為原先所猜測的極值頻率,但並不限定是前(L+1)個,

也就是說ωk只要是這一組極值頻率中任意L+1個頻率即可。

我們將整體設計流程整理如下,首先我們將所要設計的頻譜A(ejω)表示式改 換成多項式形式,並且套用至交替定理上可得(2.3-11),而由(2.3-11)為基礎下 Parks-McClellan 找出了一組公式,此公式可以得出演算法每次疊代時所需之數 據,也就是誤差δ 值和新的誤差曲線,在這些數據的獲得後,我們即可做演算法

誤差濾波器後,我們再做第三章所介紹之處理方法,即可得到我們所要的正數列 頻譜。下一章節我們將把演算法疊代過程以條列表示出,並展示其流程圖。

2.3.2 Parks-McClellan 演算法疊代過程及流程圖

2.3.1 演算法

1、一開始先猜測L+2個交替頻率,ωi,i=0,1,2,L,(L+2),而這個L+2個頻率,

包含通帶邊緣頻率ωp 和滯帶邊緣頻率ωs。 2、此L+2個頻率利用(2.3-12)可計算出δ值。

3、將猜測之交替頻率中L+1個極端點頻率代入(2.3-13)中,可以得到A(ejω)。 4、由A(ejω)可以算出E(ω)值,若| E(ω)|≥δ ,尋找A(ejω)的極端點。

5、比較新找出的極端點是否為原先之頻率,若不是則重新 2 的步驟。

6、演算終止,所得到的δ值即為最佳值,而此L+2個頻率即為交替頻率。

以下我們將這個演算法展示出其流程圖。

任意猜測(L+2)個 起始極端點頻率

內插(L+1)個點 以得到A(ejw)

計算E(w)當|E(w)|≧δ 時找出區域極大值

極端點的數目 大於(L+2)?

檢查極端點 是否改變了

最佳近似

保留(L+2)個最大極端點 計算在極端點集上

的最佳δ值

不變

不是

改變

圖2.3-1 演算法流程圖 2.4 頻譜分解定理

在介紹頻譜分解定理[3]之前,我們首先要將一串數列轉換到 z-domain 來分 析,因為在 z-domain 下我們可以更了解數列上的特性,以及更容易分析這串數 列,在此我們舉出一串典型的共軛對稱數列來敘述這個定理,其 z 轉換表示如

下︰

=

+

+

= q

n

n

n x n z

z n x x

z X

1

] ) ( )

( [ ) 0 ( )

( (2.4-1)

而由於此數列具有共軛對稱的特性,因此我們可以得到︰

∑ ∑

= =

+ = + + =

+

= q

n

q

n

n n

n

n x n z x x n z x n z X z

z n x x

z X

1 1

1) ( ] ) ( )

( [ ) 0 ( ] ) ( )

( [ ) 0 ( )

( (2.4-2)

其中x(0)= x(0)為實數取共軛相等且z= ,而由(2.4-2)我們可得到若z z 是0 X(z)

的一個零點(zero),則其共軛倒數(Conjugate Reciprocal) 01

非落在單位圓上便會以共軛倒數成對出現。

定理 2.4.2 分解理論(Factorization Theorem)

一串有限長度2q+1的正數列

{

x(n)

}

若且為若其 z 轉換可被因式分解為下:

=

= q

k

k

kz z z

z z

X

1

1

2 (1 )(1 )

)

( α (2.4-6)

此處α2為一正數,由(2.4-6)我們可以發現一個正數列的特性,也就是其在單位圓 上的零點會以偶數重數出現,如2、4、6….個,因此我們可以比較出正數列以及 一般共軛對稱數列的不同點,就在於單位圓上零點,正數列會出現偶數個數,而 一般共軛對稱數列則奇、偶數重數都有可能,如2、3、4…個出現。

利用(2.4-6)我們可以得到以下型式︰

) ( ) ( )

(z =B zB z1

X q q (2.4-7) 其中

=

= + + +

= q

k

q k

q z z z b b z b q z

B

1

1

1) (0) (1) ( )

1 ( )

( α L (2.4-8)

=

= q − = + + +

k

q k

q z z z b b z b q z

B

1

1

1) (1 ) (0) (1) ( )

( α L (2.4-9) 在此我們必須注意到一點,也就是(2.4-8)和(2.4-9)之組合解非唯一,而這個原因

和零點z 及k z 有關,也就是說當我們沒有限定k1 Bq(z)內的零點,皆為單位圓內或

和零點z 及k z 有關,也就是說當我們沒有限定k1 Bq(z)內的零點,皆為單位圓內或

相關文件