Digitální filtrace a signálové procesory Petr Skalický
Praha 1995 Tento text byl uvolněn pouze pro potřeby studentů v předmětech KN a ASP na katedře Radioelektroniky ČVUT v Praze pro rok 2000 jako doplňující literatura. Text bez souhlasu autora nesmí být kopírován ani v elektronické ani tištěné podobě pro jiné účely než jsou výše uvedeny. © P.Skalický 2000
-i-
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
Obsah Úvod ...........................................................................................................................2 1. Spojité a diskrétní signály.......................................................................................3 1.1. Impulzní signál ........................................................................................5 1.2. Diskrétní signál........................................................................................6 2. Diskrétní soustava ..................................................................................................9 2.1. Základní vlastnosti diskrétní soustavy.....................................................9 2.1.1. Odezva diskrétní soustavy. .......................................................9 2.1.2. Stabilita soustavy. ...................................................................11 2.1.3. Kmitočtová charakteristika diskrétní soustavy. ......................12 2.2. Z - transformace.....................................................................................12 2.2.1. Základní vlastnosti Z-transformace ........................................14 2.2.2. Zpětná Z-transformace............................................................15 2.2.3. Použití Z-transformace k popisu diskrétní soustavy ...............16 2.3. Geometrická interpretace H(jω).............................................................17 2.4. Odezva diskrétní soustavy na náhodné signály......................................18 3. Základní vyjádření přenosové funkce...................................................................21 3.1. Diskrétní soustavy s nekonečnou impulzní odezvou.............................22 3.2. Diskrétní soustavy s konečnou impulzní odezvou.................................24 3.3. Vliv kvantování koeficientů na vlastnosti struktury ..............................27 4. Návrh číslicových filtrů s nekonečnou impulzní odezvou ...................................33 4.1. Transformace diferenciálů .....................................................................35 4.2. Impulzně invariační transformace .........................................................36 4.3. Bilineární transformace..........................................................................40 4.4. Počítačový návrh filtrů NIO...................................................................42 4.4.1. Metoda nejmenších čtverců ....................................................43 4.4.2. Inverzní návrh metodou nejmenších čtverců ..........................43 4.4.3. Kmitočtová transformace filtrů typu dolní propusti s NIO.....45 5. Návrh filtrů s konečnou impulzní odezvou - KIO................................................47 5.1. Metoda Fourierových řad.......................................................................48 5.2. Návrh filtrů užitím oken ........................................................................51 5.3. Návrh filtru pomocí kmitočtového vzorkování .....................................53 5.4. Filtry KIO vyjádřené trigonometrickým polynomem ............................54 6. Vlivy konečné délky slova v digitálním zpracování signálů ................................57
- ii -
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
6.1. Zobrazení čísel.......................................................................................57 6.1.1. Čísla s pevnou řádovou čárkou ...............................................58 6.1.2. Vyjádření čísel kladných a záporných.....................................59 6.1.3. Vyjádření čísel s pohyblivou řádovou čárkou.........................61 6.2. Kvantování a přetečení čísel ..................................................................62 6.2.1. Kvantování oříznutím čísla .....................................................63 6.2.2. Přetečení..................................................................................65 6.3. Kvantování výsledků aritmetických operací..........................................66 6.3.1. Nulový limitní cyklus ve filtrech NIO ....................................67 6.4. Statistická analýza kvantování ve filtrech NIO .....................................68 6.4.1. Statistická analýza pro realizace filtrů NIO s aritmetikou s pohyblivou čárkou .....................................................................................71 6.5. Vliv konečné délky registrů ve filtrech KIO..........................................72 7. Prostředky číslicového zpracování signálů...........................................................75 7.1. Použití univerzálních obvodů k číslicovému zpracování ......................76 7.2. Speciální obvody s paralelní architekturou............................................78 7.3. Signálové procesory...............................................................................81 7.3.1. Vývoj signálových procesorů..................................................83 7.3.2. Signálové procesory Texas Instruments..................................85 8. Signálový procesor TMS320C5x .........................................................................90 8.1. Centrální aritmeticko-logická jednotka CALU......................................97 8.2. Paralelní logická jednotka PLU ...........................................................102 8.3. Způsoby adresování .............................................................................103 8.4. Pomocné registry .................................................................................105 8.4.1. Stavové a řídící registry ........................................................107 8.5. Překrývání instrukcí - Pipeline ............................................................108 8.6. Řízení a generování programové adresy..............................................110 8.7. Přerušovací systém ..............................................................................112 8.7.1. Nulování CPU.......................................................................116 8.8. Čítač opakování ...................................................................................117 8.8.1. Blokové operace....................................................................117 8.8.2. Paměťové přesuny.................................................................118 8.9. Časovač................................................................................................119 8.10. Paměti ................................................................................................120 8.10.1. Programová paměť..............................................................121 8.10.2. Zaváděcí program ...............................................................123 8.10.3. Lokální datová paměť .........................................................125
- iii -
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
8.10.4. Přímý přístup do paměti......................................................129 8.10.5. Globální paměť ...................................................................131 8.11. Vstupně/výstupní prostor...................................................................134 8.12. Programovatelný generátor čekacích stavů........................................137 8.13. Módy se sníženou spotřebou..............................................................138 8.14. Sériové brány .....................................................................................138 8.14.1. Časově přepínaná sériová brána..........................................141 9. Instrukční soubor TMS320C5x ..........................................................................145 10. Programování signálových procesorů...............................................................170 10.1. Vývojové prostředky..........................................................................171 10.2. Příklady aplikačních programů ..........................................................173 Dodatek A...............................................................................................................185 Dodatek B ...............................................................................................................197 Dodatek C...............................................................................................................199 C.1. Amplitudově orientovaný návrh .........................................................201 C.2. Fázově orientovaný návrh ...................................................................204 Dodatek D...............................................................................................................207 Literatura ................................................................................................................211
- iv -
Úvod Rozvoj mikroelektroniky, který začal okolo roku 1960, umožnil využití číslicové techniky nejen v oblasti výpočetní techniky, ale i v ostatních technických oborech. Číslicové zpracování signálů, které má své základy v matematice 18. století, v současnosti hluboce proniklo a stále intenzivně proniká do nejrůznějších oborů lidské činnosti. Přechod od analogového přenosu, zpracování a vyhodnocení informací k číslicovému je nejen způsoben zvýšenými nároky na parametry zařízení, ale i technologickým rozvojem součástkové základny a vývojem nových návrhových postupů. Z oblastí, ve kterých dochází k největšímu rozvoji číslicového zpracování jmenujme zejména telekomunikace, radiotechniku, řídící, měřící a automatizační techniku, biomedicínu a spotřební elektroniku. Vlastností analogového signálu je jen relativní přesnost, která se při jeho zkreslení projeví určitou ztrátou přenášené informace. Naproti tomu u číslicového (dvojkového) signálu, kdy přenášený signál je vyjádřen posloupností čísel, i při velkém zkreslení nedochází ke ztrátě informace, pokud spolehlivě rozlišujeme obě diskrétní úrovně signálu. Reprezentace fyzikálních veličin diskrétními číslicovými signály dovoluje při zpracování používat nejen postupy modelující chování reálných fyzikálních soustav, ale i metody ryze matematické, optimalizační, statistické, atd. Chování soustav je pak možné modelovat na počítači nebo přímo realizovat číslicovým filtrem, signálový procesorem, fourierovským procesorem, atd., které pracují v reálném čase. Skripta jsou určena pro studenty 4. ročníku, kteří se seznámili se základními vlastnostmi signálů a soustav a se základy číslicové a impulzové techniky v rozsahu [13] a [1]. Skripta přináší krátké seznámení s jevy a problémy spojenými s přechodem od analogového signálu k signálu číslicovému. Potom je pozornost věnována vlastnostem diskrétní soustavy jako je stabilita, kmitočtová charakteristika až po prostředky usnadňující její popis a analýzu (Z-transformace). V dalších kapitolách jsou popsány struktury číslicových filtrů s nekonečnou i konečnou impulzovou charakteristikou včetně návrhových metod nutných k jejich použití a zhodnocení jejich vlastností. Nakonec je pozornost věnována problémům číslicového zpracování a filtrace souvisejícím s jejich realizací aritmetikou s pevnou nebo pohyblivou řádovou čárkou. Druhá část skripta je, po seznámení s prostředky k realizaci filtrů i jiných obvodů číslicového zpracování, věnována signálovým procesorům jako cenově nejpřístupnějšímu prostředku k realizaci číslicového zpracování signálů. Na popisu nejnovějšího vysoce výkonného procesoru firmy Texas Instruments TMS320C5x se čtenář seznámí s odlišnostmi signálových procesorů od procesorů universálních, s návrhem jejich obvodového zapojení i s prostředky a způsobem realizace jejich programového vybavení. Děkuji všem svým spolupracovníkům z katedry radioelektroniky, zejména doc.Ing. Jiřímu Podlešákovi, CSc za cenné připomínky při sestavení této pomůcky a dále Ing. Borisovi Šimákovi, CSc z katedry telekomunikační techniky za zpřístupnění nejnovější literatury a programového vybavení firmy Texas Instruments zapůjčeného elektrotechnické fakultě ČVUT.
-2-
1. Spojité a diskrétní signály Signálem označujeme měřitelnou fyzikální veličinu, která zprostředkovává přenos, zpracování nebo vyhodnocení informace. K tomu, aby bylo možné signál zpracovávat v diskrétní (číslicové) soustavě je potřeba jej převést na signál impulzový nebo číslicový. O změnách ve vlastnostech převáděného signálu se nyní krátce zmíníme. Analogový (spojitý) signál obr.1.1 je reprezentován na ohraničeném časovém intervalu spojitou funkcí času. Jedná se o signál, který je relativně přesný, protože umožňuje zaznamenat libovolně malé změny. Jeho nevýhoda spočívá v tom, že jakékoliv jeho zkreslení přináší určitou ztrátu přenášené informace. Přenos takového signálu zarušeným prostředím je problémový, ne-li přímo nemožný. Prvním krokem v přechodu od analogového signálu na signál číslicový je jeho kvantování. Při kvantování signálu rozdělíme jeho dynamický rozsah do daného počtu úrovní a podle zvoleného pravidla mu přiřadíme jednotlivé úrovně a získáme tak kvantovaný signál obr.1.2. Přiřazením úrovní vytvoříme chybu (kvantování), která je dána způsobem přiřazení kvantovacích úrovní a bude se pohybovat v intervalu (x -∆x/2, x +∆x/2> pro zaokrouhlení a <0,∆x) pro ořezávání (omezování). Přenášíme-li pak úroveň signálu například binárním číslem, nedojde ke zkreslení informace do té doby, dokud budeme bezpečně rozlišovat hodnoty jednotlivých logických nul a jedniček. Kvantováním zavádíme do signálu určité zkreslení, které je označováno jako kvantovací šum. Pro střední hodnotu chyby způsobené kvantováním snadno odvodíme E [∆ k ] =
xi + ∆x / 2
∫ ( x − x ) p( x) dx = p( x) = konstanta i
=0
(1-1)
xi − ∆x / 2
V případě, že by kvantování bylo prováděno ořezáváním, byla by střední hodnota kvantování rovna polovině kvantovacího kroku ( E ∆ k = 0, 5∆x ). Větší význam má však rozptyl chyby kvantování, který umožňuje kvantitativně stanovit zkreslení signálu způsobené kvantováním. Pro rozptyl odvodíme
[ ]
D ∆k =
xi + ∆x / 2
∫ (x − x ) i
xi − ∆x / 2
2
p( x ) dx =
1 . p( xi ). ∆x 3 12
(1-2)
Součin p(xi ). ∆x určuje pravděpodobnost výskytu veličiny x v ( xi − ∆x / 2; xi + ∆x / 2 > . Pro celý dynamický rozsah veličiny x pak snadno odvodíme
[ ]
D ∆ k = σ e2 =
N 1 1 . ∆x 2 . ∑ p( xi ). ∆x = . ∆x 2 12 12 i =1
-3-
intervalu
(1-3)
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995 fk (t)
f (t)
6 5 4 3 2
∆x
1 t 0
t 0
Obr.1.1 Spojitý signál
Obr.1.2 Kvantovaný signál
Kvantování nyní můžeme chápat jako proces, při kterém k původnímu signálu přičteme šumový signál a způsobíme jeho zkreslení. Veličinou, která nám umožňuje posoudit velikost tohoto zkreslení, je poměr výkonu signálu k výkonu šumu. Pro poměr signál-šum S/N můžeme psát
σ2x S σ2x = 2 = −2 b = 12. 22b.. σ2x N σe 2 / 12
(1-4)
kde σ2x je rozptyl vstupního signálu x a b je počet bitů. Vypočteme-li logaritmus tohoto poměru získáme tento vztah S / N = 10.log( σ 2x / σ 2e ) = 6,02.b + 10,79 + 10 log( σ 2x )
(1-5)
Ze vztahu (1-5) je jasné, že poměr S/N se zvětšuje přibližně o 6dB na každý přidaný bit kvantování. Z výrazu je však zřejmé, že poměr závisí též na velikosti vstupního signálu A.x(t) a prudce se snižuje se snížením jeho amplitudy s hodnotou 20 log (A). Proto se v aplikacích snažíme maximálně využít celého dynamického rozsahu a vystavujeme se tak nebezpečí jeho překročení při ojediněle velké hodnotě. Existuje řada signálů jako je řeč nebo hudba, které mohou být považovány za náhodný proces. Obecně lze takové signály charakterizovat rozdělením hustoty pravděpodobnosti s maximální hodnotou v okolí nuly a s prudkým poklesem pro zvětšující se amplitudu signálu. V takových případech pravděpodobnost amplitudy rovné 3 až 4 násobku střední kvadratické hodnoty σ2x je velmi malá. Položíme-li A rovné 1/4 σ2x , potom s velkou pravděpodobností se nebudou vyskytovat vzorky přesahující dynamický rozsah. Pro poměr S/N pak můžeme psát S / N = 6.b - 1,24 dB
(1-6)
Například pro poměr signál k šumu S / N ≥ 80 dB musíme ke kvantování signálu použít alespoň 14 bitů.
-4-
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
1.1. Impulzní signál
f*(t)
Provedeme-li diskretizaci signálu v čase znamená to, že vybereme vzorky signálu s určitou periodou opakování T. Potom se musíme zajímat o spektrum nově vytvořené veličiny f * (t) a jeho sou-
f (t)
vislost se spektrem původního signálu f(t). Omezíme se pouze na případ ideálního vzorkování, kdy vzorkujeme pomocí δ funkce (šířka vzorkovacích impulzů -> 0) obr.1.3. Použitím vzorkovací vlastnosti δ funkce
t -T
0
T 2T 3T 4T 5T 6T 7T 8T
Obr.1.3 Impulzní signál
f ( x ).δ ( x − x o ) = f ( x o ). δ ( x − x o )
(1-7)
můžeme získat vztah, mezi původním signálem f(t) a vzorkovanou posloupností f * (t) f (t ) =
∞
∞
k =−∞
k =−∞
*
∑ f ( kT ).δ (t − kT ) = f (t ). ∑ δ (t − kT )
(1-8)
Pro spektrum funkce f * ( t ) pak můžeme psát F * ( jω ) = F { f ( t ). v(t )} =
1 . F ( jω ) * F [v( t )] 2π
(1-9)
kde v( t ) =
∞
(1-10)
∑ δ (t − kT )
k =−∞
Spektrum funkce v(t), která je periodická, odvodíme za pomoci Fourierovy řady, pro kterou můžeme psát v(t ) =
∞
∑ c .e
k =−∞
n
T
jω o nt
kde
1 c n = . ∫ δ (t ). e − jnω o t dt T 0
(1-11)
Z výrazu pro c n snadno zjistíme, že všechny koeficienty c n jsou rovny hodnotě 1/T. Pro Fourierův obraz funkce v(t) pak můžeme psát F [v( t )] =
1 ∞ 1 ∞ 2π ∞ − jω o nt . ∑ F[e ] = T . ∑ 2 pδ (ω − n.ωo ) = T . ∑ δ (ω − n.ω o ) T k =−∞ n =−∞ n =−∞
(1-12)
Pro spektrum vzorkované veličiny pak již snadno odvodíme F * ( jω ) =
∞ 1 1 1 ∞ . F ( jω ) * F [v(t )] = . F ( jω ) * ∑ δ (ω − n.ω o ) = . ∑ F ( jω − jn.ω o ) T T n =−∞ 2π n = −∞
(1-13)
Ze vztahu vyplývá, že spektrum vzorkované veličiny získáme jako součet spekter původního signálu vůči sobě posunutých o násobky vzorkovacího kmitočtu ω o = 2 π / T obr.1.4.
-5-
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
F(j ω)
ω 0 F*(jω)
ω −2π/T −2π
2π/T 2π
0
Obr.1.4 Spektrum analogového a impulzního signálu Ze vztahu (1-13) vyplývá, že F * ( jω ) je vždy periodická funkce s periodou 2π/T jak ukazuje obr.1.4. V obecném případě se jednotlivé funkce F( jω ) překrývají. Bude-li vzorkovaný signál mít kmitočtově omezené spektrum, pro které platí F( jω ) = 0 pro ω ≥ ω1 a zároveň bude-li vzorkovací kmitočet splňovat podmínku regulárního vzorkování π / T > ω1 , pak je možné signál f(t) rekonstruovat zpět ze vzorkovaného signálu. Při rekonstrukci vycházíme z předpokladu, že ze spektra F * ( jω ) vybereme jenom jedno spektrum F( jω ) pomocí ideální dolní propusti s šířkou pásma danou vztahem ω ≤ π / T. V časové oblasti odpovídá součinu spekter konvoluční součin vzorkovaného signálu s impulzní odezvou dolní propusti dané vztahem f (t ) =
sin(π t / T )
πt / T
∞
* ∑ f (nT )δ (t − n. T ) = n =−∞
∞
∑
n =−∞
sin(π t / T ) f (nT )δ ( t − n. T ) * π t / T
(1-14)
Užitím vzorkovací vlastnosti δ funkce můžeme získat výraz pro rekonstruovaný spojitý signál f(t) ve tvaru f ( t ) ==
∞
∑
n =−∞
f (nT ).
sin(π ( t − n. T ) / T )
(1-15)
π (t − n. T ) / T
Z výrazu je zřejmé, že původní signál f(t) můžeme získat jako nekonečný součet funkcí sin(x)/x s tím, že n-tý pulz sin(x)/x je posunut o nT a vynásoben hodnotou f(nT). Pokud použijeme k vzorkování reálný obvod, bude šířka vzorkovacích impulzů konečná, což se projeví v poklesu amplitud nekonečné řady spekter z obr.1.4 závislosti na vzdálenosti od hlavního spektra.
1.2. Diskrétní signál Diskrétní (číslicový) signál získáme kvantováním hodnot vzorkovaného (impulzního) signálu. Jednotlivé vzorky signálu jsou pak vyjádřeny b-bitovými čísly a jejich další zpracování probíhá v číslicových aritmetických obvodech, v univerzálních nebo speciálních mikroproceso-
-6-
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
rech. Teorie diskrétních soustav se zabývá zpracováním diskrétních signálů, které jsou reprezentovány posloupnostmi čísel. Pro posloupnost x, mající n-tý člen vyjádřen x n , lze formálně psát x = {x n }
fn 7 6
f (t)
5
(1-16)
4
∆x
3
kde - ∞ < x < ∞.
2
Ze studia spojitých signálů víme, že zvláštní význam mají signály označované jako jednotkový impulz, jednotkový skok, harmonický signál. Tyto signály mají značný význam i v teorii diskrétních signálů a proto si je popišme.
1 t -T
0
T 2T 3T 4T 5T 6T 7T 8T
Obr.1.5 Diskrétní signál
1. Jednotkový impulz δn je definován takto δn = 1 pro n = 0 δn = 0 pro n ≠ 0
(1-17)
Signál δn plní stejnou funkci v diskrétních systémech jako Diracův impulz v systémech spojitých. 2. Jednotkový skok un je definován jako un = 0 pro n ≥ 0 (1-18) un = 1 pro n = 0 Jednotkový skok lze definovat pomocí jednotkového impulzu vztahem ∞
un = δn + δn −1 +! +! = ∑ δn − k
(1-19)
k =0
Obdobně lze pro jednotkový impulz psát δ n = un − un −1 . 3. Reálná exponenciální posloupnost je definována výrazem a n , kde a je reálné číslo. 4. Sinusová posloupnost je definována vztahem A.cos(nω T + ϕ ) Posloupnost x n je definovaná jako periodická s periodou N, jestliže x n = x n + N pro všechna n. Výše uvedené definici nemusí například vyhovovat sinusová posloupnost, pokud -3 -2 -1 0 1 2 3 4 5 6 7 n 2kπ / ω T nevytváří celočíselný podíl. Obr.1.6 Posloupnost složená ze čtyř vzorků Posloupnost násobená hodnotou α je definovaná výrazem α . x = {α . x n } a posloupnost y n je zpožděná (posunutá) o hodnotu n o , jestliže je dána vztahem y n = x n − n o . xn
-7-
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
Libovolnou sekvenci nyní můžeme vyjádřit jako součet zpožděných jednotkových impulzů, které jsou vynásobeny příslušnou amplitudou signálu. Pro sekvenci z obr.1.6 můžeme psát x = { x n } = x − 3 . δ n + 3 + x −1 . δ n +1 + x 2 . δ n − 2 + x 7 . δ n − 7
(1-20)
nebo obecným výrazem ∞
x = {xn } = ∑ xk .δn − k
(1-21)
k =0
Vyjádření diskrétního signálu jako posloupnosti zpožděných jednotkových impulzů nám později umožní definovat odezvy diskrétní soustavy na libovolný vstupní signál.
-8-
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
2. Diskrétní soustava Diskrétní soustavou rozumíme dynamický systém, který převádí vstupní posloupnost x n na výstupní posloupnost y n . To můžeme matematicky vyjádřit vztahem yn = D xn
xn
DS
(2-1)
kde x n a y n je vstupní a výstupní posloupnost tvořená impulzním signálem nebo signálem diskrétním (číslicovým), které mají navíc kvantovanou amplitudu vyjádřenou b bity (b vodiči).
Obr.2.1 Diskrétní soustava
2.1. Základní vlastnosti diskrétní soustavy Má-li soustava na vstupní signál a 1x1 odezvu a 1y1 a na a 2 x 2 odezvu a 2 y 2 , pak soustava je lineární, jestliže na vstupní signál a 1x1 + a 2 x 2 má odezvu a 1y1 + a 2 y 2 . a1 y1 + a2 y2 = D a1 x1 + a2 x2
x n-n o
yn
(2-2)
Má-li soustava na signál x n odezvu y n , pak soustava je stacionární, má-li posunutý signál odezvu y n-n o (2-3)
yn- no = D xn - no
Jinými slovy soustava je stacionární, jestliže na daný signál má odezvu nezávislou v čase. Má-li soustava na vstupní signál x n = 0 pro n < n o a libovolný signál pro n > n o odezvu y n , pak soustava je kauzální, jestliže odezva y n = 0 pro n < n o . To znamená, že odezva na signál začne až po příchodu vstupního signálu. Kauzální soustava je fyzikálně realizovatelná. 2.1.1. Odezva diskrétní soustavy. Odezvu diskrétní soustavy lze definovat analogicky jako u lineárních obvodů pomocí impulzní odezvy. V předcházející části jsme definovali vstupní posloupnost jako součet zpožděných impulzů s příslušnou amplitudou. Budeme-li předpokládat, že soustava je lineární a stacionární, potom můžeme odezvu soustavy vytvořit jako superpozici impulzních odezev systému na posunuté jednotkové pulzy s danou amplitudou takto ∞ ∞ ∞ ∞ y n = D ∑ xi .δn −i = ∑ D xi .δn −i = ∑ xi . hn −i = ∑ hi . x n −i = xi * hi i =−∞ i =−∞ i =−∞ i =−∞
[
]
-9-
(2-4)
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
δn
hn
1
-1
1
0
2
3
0
n
x0 δn
-1
1
0
2
3
0
n
2
3
DS
1
0
4
5
6
n
1
2
3
4
5
6
n
2
3
4
5
6
n
2
3
4
5
6
n
2
3
4
5
6
n
yn
0
n
x2 δn-2
hn
-1
1
0
3
x1 δn-1
xn
-1
2
x0 δn
x1 δn-1
hn
1
1 x 2δn-2
2
3
0
n
1 yn
xn
-1
0
1
2
3
0
n
1
Obr.2.2 Vytváření odezvy diskrétní soustavy kde hn = D δn je impulzní odezva soustavy na jednotkový impulz δ n . Odezva h n − i je odezvou na posunutý jednotkový impulz δ n − i . Za předpokladu, že známe impulzní odezvu soustavy, můžeme stanovit odezvu yn na libovolný vstupní signál. Grafické znázornění vztahu (2-4) je zobrazeno na obr.2.2. Odvozený vztah, který je analogií konvolučního integrálu u analogových obvodů, představuje diskrétní konvoluci vstupního signálu s impulzní odezvou. Z odvozeného vztahu
- 10 -
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
zjistíme, že dvě sériově zapojené lineární diskrétní soustavy mají výslednou impulzní odezvu danou vztahem h výs = h1n * h 2n . Paralelně zapojené diskrétní soustavy mají výslednou impulzní odezvu danou součtem jednotlivých odezev h výs = h1n + h 2n obr.2.3. xn
h1n
yn
h2n
xn
h1n *h2n
yn
xn
h1n +h2n
yn
h1n xn
yn h2n
Obr.2.3 Impulzní odezvy sériově a paralelně zapojených diskrétních soustav 2.1.2. Stabilita soustavy. Odvoďme nyní absolutní kritérium stability diskrétní soustavy. Toto kritérium nám určuje pouze teoretické předpoklady stability soustavy a nezaručuje nám ještě, že soustava realizovaná omezenou délkou vnitřních registrů a násobících koeficientů se zaokrouhlováním výsledků bude stabilní. Otázky vlivu omezené délky vnitřních registrů a koeficientů budou probrány později. Předpokládejme, že diskrétní soustava bude stabilní tehdy, když na omezený vstupní signál x n < C bude i odezva omezená yn < ∞. Při odvození budeme vycházet ze vztahu pro odezvu diskrétní soustavy na vstupní signál yn =
∞
∑h .x
n −i
i
i =−∞
<∞
(2-5)
Protože absolutní hodnota součtu není větší než součet absolutních hodnot jednotlivých složek, můžeme rovnici přepsat jako nerovnost yn ≤
∞
∑h
i
i =−∞
. xn −i < ∞
(2-6)
Nyní dosadíme za omezený vstupní signál maximální možnou hodnotu pro všechny vstupní vzorky ∞
yn ≤ C . ∑ h i < ∞
(2-7)
i =−∞
Z rovnice je již zřejmé, že soustava je stabilní, jestliže suma absolutních hodnot posloupnosti impulzní odezvy bude konečná ∞
∑h
i = −∞
i
(2-8)
<∞
- 11 -
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
Odvozený vztah je podmínkou nutnou a postačující pro zaručení stability diskrétního systému. 2.1.3. Kmitočtová charakteristika diskrétní soustavy. Kmitočtová charakteristika se definuje jako hodnota fázoru (amplituda, fáze) ustálené odezvy soustavy na harmonický signál. Mějme vstupní signál xn = e jω nT pro n ∈(− ∞, ∞) , který vznikne regulárním vzorkováním signálu e jω t . Po dosazení harmonického signálu do vztahu pro odezvu diskrétní soustavy můžeme psát yn =
∞
∑ h .e i
i = −∞
jω ( n − i ) T
=e
jω nT
∞
. ∑ h i . e − jω iT =H ( jω ). e jω nT
(2-9)
i =−∞
Odezva na harmonický signál vzniklý regulárním vzorkováním je tvořena harmonickým signálem o stejném kmitočtu s komplexní amplitudou určenou vztahem H ( jω ) =
∞
∑ h .e
i =−∞
i
− jω iT
(2-10)
Vztah popisuje závislost mezi impulzní odezvou diskrétní soustavy a jeho kmitočtovou charakteristikou H( jω ) = H R ( jω ) + j. H I ( jω ) , kde H R ( jω ), H I ( jω ) je reálná a imaginární část kmitočtové charakteristiky. Tu můžeme vyjádřit i v exponenciálním vyjádření H( jω ) .e j.argH ( jω ) . V některých aplikacích je kladen zvláštní důraz na skupinové zpoždění, které vypočteme ze vztahu τ (ω o ) = (dϕ / dω )ω . Dosaďme nyní do vztahu pro kmitočtovou charakteristiku za hodo notu ω hodnotu ω , = ω + 2 π k / T . Potom můžeme psát H ( jω
,
∞
) = ∑ h .e i =−∞
i
− j (ω + 2 π k / T )iT
∞
= ∑ hi . e − jω iT . e − j 2π k i = H ( jω )
(2-11)
i =−∞
Z odvození vyplývá, že kmitočtová charakteristika H ( jω ) = H ( jω + j 2π / T ) diskrétní soustavy je periodická funkce s periodou 2 π T a můžeme ji vyjadřovat amplitudovou charakteristikou H( jω ) , fázovou charakteristikou arg H( jω ) . Protože funkce H( jω ) je funkcí periodickou, lze ji vyjádřit Fourierovou řadou. Koeficienty jsou rovny hodnotám impulzní odezvy h n , pro které můžeme psát π /T
T hn = . H ( jω ). e jω nT dω 2π −π∫/ T
(2-12)
Tato okolnost vede na jednu z možných metod určení impulzní odezvy filtru se zadanou přenosovou charakteristikou H( jω ) . Nevýhodou metody je však i to, že často vede k filtru, který není přímo fyzikálně realizovatelný.
2.2. Z - transformace Jedním z velmi důležitých nástrojů pro reprezentaci a manipulaci s časovými diskrétními posloupnostmi - řadami je Z-transformace, kterou můžeme považovat za zevšeobecnění Fourierovy transformace pro diskrétní signály a soustavy. Z-transformace má pro tyto signály obdobný
- 12 -
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
význam jako Fourierova a Laplaceova transformace pro spojité signály a soustavy. Z-transformace posloupnosti {x n } je definována výrazem ∞
Z {x n } = X ( z ) =
∑x
n =−∞
n
(2-13)
. z −n
kde z je komplexní proměnná. V některých případech je užitečné vyjadřovat Ztransformaci jako jednostrannou, u které ve srovnání s transformací dvoustrannou ( 2-13 ) začíná sumace indexem n = 0. Pro některé posloupnosti x n = 0 pro n < 0, je jednostranná i dvoustranná transformace shodná. Vyjádříme-li komplexní proměnnou z v polárních souřadnicích z = r.e jωT a dosadíme do vztahu pro Z-transformaci posloupnosti x n , můžeme psát X (r . e jωT ) =
∞
∑ x .[r. e ]
n =−∞
jω T − n
n
=
∞
∑ x .r
n =−∞
n
−n
. e − jnωT
(2-14)
Na základě vztahu (2-14) můžeme Z-transformaci interpretovat jako Fourierovu transformaci posloupnosti x n vynásobené exponenciální posloupností r − n . Pro poloměr r = 1 ze vztahu (2-14) vyplývá, že Z-transformace na jednotkové kružnici ( z = 1) je shodná s Fourierovou transformací. Obdobně jako u Fourierovy transformace nekonverguje Z-transformace pro všechny posloupnosti nebo pro všechny hodnoty z. Pro danou posloupnost lze nalézt hodnoty z pro, které Z-transformace konverguje ( oblast konvergence ). Vyjdeme-li z faktu, že Fourierova transformace je konvergentní pro signály, jejichž absolutní hodnoty vytváří konvergentní řadu, musí i následující řada být absolutně konvergentní. ∞
∑ x .r
−n
n
<∞
(2-15)
n =−∞
Reálná exponenciála ve vztahu ( 2-15) vždy zajistí pro nějakou hodnotu Rx konvergenci řady. Potom hodnotu Rx , při které dochází ke konvergenci řady nazýváme poloměrem konvergence. Obecně nastávají čtyři případy řad, pro které lze stanovit obor konvergence: 1. Konečná posloupnost má pouze konečný počet nenulových hodnot X (z ) =
n2
∑x
n = n1
n
. z −n
(2-16)
kde n1 a n 2 jsou konečné hodnoty. Pro zajištění konvergence je třeba, aby hodnota z při součtu konečného součtu prvků ležela v intervalu 0 < z < ∞ . 2. Pravostranná posloupnost mající nenulové hodnoty pro n > n1 X (z ) =
∞
∑x
n = n1
n
. z −n
má oblast konvergence vně kružnice s poloměrem Rx1 tj. pro z > Rx1.
- 13 -
(2-17)
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
3. Levostranná posloupnost, která má nenulové hodnoty pouze pro n < n2 , má oblast konvergence uvnitř kružnice s poloměrem Rx2 tj. pro z < Rx2 . 4. Oboustranná posloupnost se dá rozdělit na posloupnost pravostrannou a levostrannou. V průniku oborů (oblastí) konvergence, konverguje oboustranná posloupnost [14]. Nyní si odvodíme obrazy Z-transformace některých základních posloupností (signálů), se kterými budeme dále pracovat. 1. Signál shodný s jednotkovým impulzem x n = δ n má obraz X(z) = 1. 2. Signál shodný s jednotkovým skokem x n = un má obraz daný výrazem, který získáme po vyčíslení součtu nekonečné geometrické řady ∞
X ( z) = ∑ z −n = n=0
1 1 − z −1
(2-18)
3. Exponenciální signál definovaný vztahem x n = c n pro n ≥ 0 a x n = 0 pro n < 0 má obraz daný rovnicí ∞
X ( z) = ∑ c n z −n = n=0
1 1 − cz −1
(2-19)
2.2.1. Základní vlastnosti Z-transformace Řadu základních vlastností Z-transformace lze odvodit přímo z definičního vztahu a většina z nich má podobu v Laplaceově a Fourierově transformaci. Uvedeme pouze čtyři ze základních vlastností, které se uplatňují při popisu chování diskrétních soustav. Nechť {x n } , {y n } , {h n } jsou časové posloupnosti (řady), X(z), Y(z), H(z) jejich Z-transformace, a, b - konstanty a k nějaké celé číslo. Potom pro vlastnosti Z-transformace můžeme psát Z(a.x n + b.y n ) = a.X( z) + b.Y( z)
1. Linearita 2. Věta o posunu 3. Věta o útlumu
Z(x n-k ) = z -k .X( z)
Z(a -n .x n ) = X(a -1 .z)
4. Konvoluce ∞ Z {y n } = Z ∑ xi . hn −i = i = −∞
∞ ∞ −n ∞ = x . h . z x . ∑ ∑ i n −i ∑ i ∑ hn−i . z −n n =−∞ n =−∞i =−∞ i =−∞ ∞
(2-20)
Zavedením substituce m = n-i, můžeme psát ∞
∞ −i −m x . ∑ . z ⇒ Y ( z ) = X ( z ). H ( z ) i ∑ hm . z m =−∞ i = −∞
- 14 -
(2-21)
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
2.2.2. Zpětná Z-transformace Zpětná Z-transformace značí postup nalezení předmětu (signálu) k danému obrazu X(z) a je definován vztahem xn =
1 . ∫ X (z ). z n −1dz 2πj c
(2-22)
kde c je uzavřená křivka v rovině z obepínající singulární body. K výpočtu tohoto integrálu se obvykle používají jednodušší postupy jako je: a) Výpočet pomocí reziduí xn =
∑ residuí [ X (z). z ] n −1
uvnitř křivky c
(2-23)
b) Rozvojem na parciální zlomky pro M < L M
X (z ) =
A. ∏ (1 − zi . z −1 ) i =1
L
∏ (1 − p . z ) i
i =1
−1
αi −1 i = 1 1 − pi . z L
=∑
(2-24)
kde αi / (1 − pi . z ) je obrazem signálu α i . (p i ) . Zpětnou transformaci racionálně lomené funkce z rovnice (2-24) pak můžeme vyjádřit vztahem n
−1
L
x n = ∑ α i . ( pi )
n
i =1
pro n ≥ 0, a x n = 0 pro n < 0
(2-25)
c) Dlouhé dělení M
X (z ) =
∑a .z i
i =1
L
−1
1 + ∑ bi . z
(2-26) −1
i =1
Dlouhým dělením jmenovatele čitatelem v rovnici (2-26) rozvíjíme X(z) v nekonečnou mocninou řadu z−1 . d) Rozvoj v mocninou řadu. e) Nalezení odpovídajícího signálu ve slovníku Z-transformace. Příklad 2.1 Rozveďte v mocninou řadu 1 / ( 1 − 0,5.z−1 ) . 1: (1- 0,5.z -1 ) = 1 + 0,5. z -1 + 0,25.z -2 + 0,125. z -3 +... - 1 + 0,5.z -1 0,5.z -1 0,5. z −1 + 0,25. z − 2
- 15 -
(2-27)
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
Odtud x n = 0 pro n < 0 a pro n ≥ 0 x n = 1; 0,5;0,25; 0,125; atd. tj. x n = (0,5) . n
2.2.3. Použití Z-transformace k popisu diskrétní soustavy Pomocí Fourierovy transformace můžeme stanovit kmitočtovou charakteristiku diskrétní soustavy nebo kmitočtové vlastnosti výstupního signálu diskrétní soustavy. Přesto nám Fourierova transformace nedává takové možnosti, jako Z-transformace. Předpokládejme, že máme kauzální diskrétní soustavu, pro její odezvu na vstupní signál xn můžeme psát ∞
(2-28)
yn = ∑ hi . xn −i = hi * xi i =0
Na základě věty o konvoluci (2-20) jsou obrazy signálů X(z), Y(z) a H(z) svázány vztahem Y(z) = X(z).H(z). Funkce H(z), kterou získáme Z-transformací impulzní odezvy, a která je dána podílem obrazu výstupní posloupnosti k obrazu vstupní posloupnosti, se nazývá systémová funkce a je dána vztahem H( z) =
∞ Y ( z) = Z {hn } = ∑ hn . z − n X ( z) n=0
(2-29)
Porovnáme-li vztahy pro kmitočtovou charakteristiku H(jω) (2-10) a systémovou funkci H(z) (2-29) zjistíme H(jω) = H(z), jestliže budeme za z substituovat z = e jω T . To znamená, že systémová funkce vyjadřuje na jednotkové kružnici |z| = 1 kmitočtovou charakteristiku diskrétní soustavy. Tato okolnost byla již zřejmá z popisu vztahu Z-transformace s Fourierovou transformací. Na tomto místě je vhodné poukázat na to, že v literatuře [2] se ve výrazech často neobjevuje hodnota periody vzorkování T. Toho lze dosáhnout zavedením normalizace, při které položíme T = 1. Z normovaného kruhového kmitočtu ω' ( jeho rozměr je [rad]) a známé hodnoty T [s] vypočteme skutečný kruhový kmitočet ω = ω'/T [rad/s]. Předpokládejme, že máme lineární systém s konstantními koeficienty, potom můžeme systémovou funkci vyjádřit racionálně lomenou funkcí. M
H( z) =
Y ( z) = X ( z)
∑ a .z i =0 L
i
∑b .z i =0
i
M
−i
= −i
A. ∏ (1 − zi . z −1 ) i =1
L
(2-30)
∏ (1 − p . z ) i =1
i
−1
kde A = a o b o , z i jsou nuly a p i póly racionálně lomené funkce. Upravíme-li vztah (2-30) do tvaru L
M
i =0
i =0
Y ( z ). ∑ bi . z −i = X ( z ). ∑ a i . z −i
(2-31)
můžeme pomocí zpětné Z-transformace a věty o linearitě a posunu, vyjádřit diskrétní soustavu pomocí této diferenční rovnice (b o = 1)
- 16 -
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
M
L
i =0
i =1
(2-32)
y n = ∑ ai . x n −i − ∑ bi . y n −i
Z tvaru diferenční rovnice vyplývá, že diskrétní soustava v paměti uchovává starší vzorky vstupního i výstupního (odezvy) signálu. První suma rovnice ( 2-32 ) představuje tzv. klouzavý průměr ( váhovaný průměr), který neovlivňuje stabilitu soustavy. Druhá část rovnice ( 2-32 ) představuje tzv. autoregresní člen, který udává rychlost odezvy a její charakter zanikání. Tento člen rozhoduje o stabilitě soustavy.
ω) 2.3. Geometrická interpretace H(jω Předpokládejme, že systémová funkce je ve tvaru racionálně lomené funkce vyjádřena součinem nul zi a pólů pi takto M
H (z ) =
Y (z ) = X (z )
A. ∏ (1 − zi . z −1 )
(2-33)
i =1
L
∏ (1 − p . z ) i
i =1
−1
Dosadíme-li do systémové funkce za z = e jω T můžeme pro kmitočtovou charakteristiku psát následující výraz M
H ( jω ) = H ( e
jω T
)=
A. ∏ (1 − zi . e
− jω T
i =1
L
∏ (1 − p . e i
i =1
− jω T
)
)
M
= A. e
jω ( L − M ) .T
.
∏ (e
jω T
− zi )
∏ (e
jω T
− pi )
i =1 L
i =1
(2-34)
Amplitudovou charakteristiku potom můžeme vyjádřit takto M
H ( jω ) = A .1.
∏ (e
jω T
∏ (e
jω T
i =1 L
i =1
− zi ) − pi )
=
n1 . n2 . ! . n M r1 . r2 . ! . rL
(2-35)
kde n1 , n2 ,! , n M jsou vzdálenosti mezi bodem na jednotkové kružnici určeném hodnotou ωT a nulami přenosové funkce a r1 , r2 , ! , rM jsou vzdálenosti mezi bodem na kružnici a póly přenosové funkce. Pro fázovou charakteristiku snadno ze vztahu ( 2-34 ) odvodíme M
L
i =1
i =1
arg H ( jω ) = ∑ arg(e jω T − zi ) − ∑ arg(e jω T − pi ) + arg A + ( L − M ).ω . T Příklad 2.2
(2-36)
Odhadněte průběh kmitočtové charakteristiky filtru se systémovou funkcí H ( z ) = z 2 / ( z - 0,7 ).( z - 0,9 ) .
U systémové funkce nejprve vynásobíme čitatele i jmenovatele hodnotou z −2 a rozepíšeme funkci do tohoto tvaru
- 17 -
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
(1 − z . z ).(1 − z . z ) (1 − 0. z ).(1 − 0. z ) = H( z) = (1 − p . z ).(1 − p . z ) (1 − 0,7. z ).(1 − 0,9. z ) −1
1
−1
1
−1
2
−1 −1
−1
2
−1
(2-37)
−1
ω
Systémová funkce, jak vyplývá ze vztahu (2-37) má n1 dvojnásobnou nulu v nule ( z1 = z 2 = 0 ) a dva reálné póly v r2 n2 r1 bodech p1 = 0,7 a p 2 = 0,9 . Pro odhad kmitočtové p1 p2 charakteristiky využijeme vztahu (2-35), který v našem z1,2 případě bude dán vztahem (vz1 .vz 2 )/(vp1 .vp 2 ), kde vz i jsou vzdálenosti nul od bodu ωT na jednotkové kružnici a vp i jsou vzdálenosti pólů od tohoto bodu. Na základě znaObr.2.4 Geometrická interpretace lostí z analytické geometrie potom můžeme pro amplitudu kmitočtové charakteristiky |H(jω)| odvodit tento výraz vztahu (2-35) H ( jω ) =
[(cosωT − 0,7)
1 2
][
+ ( sin ωT ) . (cos ωT − 0,9) + ( sin ωT ) 2
2
2
]
(2-38)
2.4. Odezva diskrétní soustavy na náhodné signály Pro odvození základních vlastností předpokládejme, že diskrétní soustava je stabilní a vstupní signál je omezený, stacionární, se střední hodnotou µ x a autokorelační funkcí Rxx (m) . Pro střední hodnotu na výstupu diskrétní soustavy snadno odvodíme ∞ ∞ ∞ µ y = E y n = E ∑ h i . x n −i = ∑ h i E x n −i = µ x . ∑ h i i =−∞ i =−∞ i =−∞
[ ]
[ ]
(2-39)
Známe-li přenosovou funkci H(jω) diskrétní soustavy, potom můžeme pro střední hodnotu na výstupu soustavy použít výraz
µ y = H ( j 0). µx
(2-40)
Pro autokorelační funkci na výstupu soustavy můžeme odvodit tento výraz ∞ ∞ R yy (n, n + m) = E y n . y n + m = E ∑ ∑ h i . hk . x n −i . x n + m− k = i =−∞ k =−∞
[
=
]
∞
∞
∑h . ∑h i
i =−∞
k =−∞
k
(2-41)
. E xn − i . xn + m − k
Je-li x stacionární, pak E x n − i .x n + m− k závisí pouze na hodnotě m-k+i a střední hodnota představuje autokorelační funkci vstupního signálu. Zaveďme substituci n = i - k do rovnice (2-41). R yy ( m) =
∞
∑
n =−∞
∞
Rxx ( m − n) ∑ h i − n . h i = i =−∞
∞
∑R
n =−∞
kde
- 18 -
xx
( m − n )v ( n )
(2-42)
P.Skalický- Digitální filtrace a signálové procesory
v ( n) =
Praha - 1/1995
∞
∑h
i = −∞
i −n
(2-43)
.hi
je tzv. aperiodická autokorelační posloupnost (autokorelační funkce impulzní odezvy). Pro vzájemnou korelační funkci mezi vstupem a výstupem systému je možné psát
[
]
Rxy (m) = E y n . y n + m
∞ ∞ = E x n . ∑ h i . x n + m−i = ∑ h i . R xx ( m − k ) i =−∞ i =−∞
(2-44)
Ze vztahu je zřejmé, že vzájemná korelace vstupu a výstupu systému odpovídá konvoluci impulzní odezvy s autokorelační funkcí vstupního signálu. Bude-li mít vstupní signál autokorelační funkci bílého šumu (nenulovou pouze v nule), pak vztah definuje jedno z možných měření impulzní odezvy soustavy. Příklad 2.3
Odvoďte výraz pro rozptyl výstupních hodnot číslicového filtru, na jehož vstup přichází nezávislé vzorky vstupního signálu.
Při odvození rozptylu výstupních hodnot nejprve vyjdeme z definičního vztahu, který upravíme na rozdíl střední hodnoty kvadrátu veličiny y n mínus kvadrát střední hodnoty
[ ]
D yn
2
2
∞ ∞ = E ∑ h i . x n − i − E y n = E ∑ h i . x n − i − E 2 y n i =0 i =0
[ ]
(2-45)
[ ]
Pro střední hodnotu kvadrátu veličiny y n můžeme dál psát 2
∞ ∞ ∞ ∞ ∞ E ∑ h i . x n −i = E ∑ h i . x n −i ∑ hk . x n − k = ∑ h i ∑ hk . E x n −i . x n − k = i =0 i =0 i =0 k = 0 k =0
[
∞
∞
i =0
k =0
]
(2-46)
= ∑ h i ∑ hk . Rxx (i − k )
[ ]
[ ]
kde R xx ( i − k ) = σ x2 + E 2 x n pro i = k a R xx ( i − k ) = E 2 x n rozptyl na výstupu filtru můžeme psát závěrečný vztah ∞
∞
∞
∞
∞
i =0
i =0
i =0
k =0
i =0
D yn = σ 2x . ∑ hi ∑ hi +E 2 xn . ∑ h i ∑ hi − E 2 yn =σ 2x . ∑ h i2
pro i ≠ k. Odtud pro (2-47)
Příklady k samostatnému řešení Příklad 2.4 Odvoďte kmitočtovou charakteristiku jednoduchého číslicového filtru IPC (indikátor pohyblivých cílů), který je popsán touto diferenční rovnicí yn = xn = xn− 1 . Nakreslete jeho realizaci. Příklad 2.5 Odvoďte diferenční rovnici a impulzovou charakteristiku číslicového filtru z obr.2.5. Určete zda filtr je stabilní.
- 19 -
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
Příklad 2.6 Odvoďte impulzovou charakteristiku filtru s diferenční rovnicí yn = a. yn-1 + x n a určete zda se jedná o filtr stabilní. Příklad 2.7 Odvoďte diferenční rovnici filtru z obr.2.6.
xn
z
-1
z
z-1
-1
k1= 0,8
yn
xn
yn
a1
-b1 k 2 = 0,8 -b2
Obr.2.5
Obr.2.6
- 20 -
z-1 a2
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
3. Základní vyjádření přenosové funkce Přenosovou funkci H(z) můžeme realizovat různými strukturami diskrétních (číslicových) soustav, které ačkoliv realizují stejnou přenosovou funkci liší se od sebe v konkrétní realizaci některými vlastnostmi jako je citlivost na změnu polohy nulových bodů a pólů H(z), vhodností pro realizaci signálovými procesory, možností přetečení při aritmetických operacích, atd. V zásadě můžeme číslicové filtry rozdělit podle vlastností impulzní odezvy na filtry s nekonečnou impulzní odezvou NIO (Infinite Impulse Response - IIR) a filtry s konečnou impulzní odezvou KIO (Finite Impulse Response - FIR), které nemají v oblasti analogových obvodů svůj ekvivalent. Předpokládejme, že budeme chtít realizovat lineární diskrétní soustavu s konstantními koeficienty, potom můžeme systémovou funkci vyjádřit ve tvaru racionálně lomené funkce M
Y ( z) = H( z) = X ( z)
∑ a .z i =0 L
i
∑b .z i =0
i
M
A. ∏ (1 − zi . z −1 )
−i
(3-1)
i =1
=
L
∏ (1 − p . z )
−i
i =1
i
−1
kde A = ao / bo . Budeme-li na první a druhý zlomek rovnice (3-1) aplikovat zpětnou Z-transformaci, potom získáme následující diferenční rovnici pro (b 0 = 1) M
L
i =0
i =1
(3-2)
y n = ∑ ai . x n −i − ∑ bi . y n −i
Z tvaru diferenční rovnice vyplývá, že k realizaci diskrétní soustavy potřebujeme tři základní stavební prvky, kterými jsou sčítačky, násobičky konstantou a obvody realizující zpoždění. Na obr.3.1 jsou nakresleny jejich schématické značky.
xn
wn
wn+ yn
xn
b1
b1 . x n
xn
z-1
yn
Obr.3.1 Základní stavební prvky diskrétní soustavy Výraz z −1 značí časové zpoždění signálu, pro který je obraz Z-transformace výstupního signálu roven obrazu vstupního signálu násobeného koeficientem z −1 . Digitální soustavu (filtr) můžeme realizovat buď pomocí číslicového obvodu s danou strukturou na základě znalostí základů číslicové techniky [1] s využitím integrovaných obvodů sčítaček, násobiček a registrů nebo programovatelných polí nebo pomocí univerzálních nebo speciálních procesorů. V druhém případě je třeba vytvořit vhodný výpočetní algoritmus, ze kterého je odvozen výpočetní program v jazyce symbolických adres nebo jazyka C.
- 21 -
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
3.1. Diskrétní soustavy s nekonečnou impulzní odezvou Diferenční rovnici (3-2) lze v souladu se zavedenými značkami realizovat obvodem z obr.3.2 tzv. 1 kanonickou ( přímou ) formou. Forma se skládá ze dvou samostatných částí, které odpovídají sumám v diferenční rovnici sčítající starší vzorky vstupního i výstupního signálu. První suma představuje tzv. klouzavý průměr (váhovaný průměr konstantami ai ), který neovlivňuje stabilitu soustavy. Druhá suma představuje tzv. autoregresní člen, který ovlivňuje rychlost zanikání odezvy a tudíž rozhoduje i o stabilitě soustavy. Odtud nazýváme soustavu rekurzivní, pokud alespoň některá konstanta bi ≠ 0 pro i=1,2,..,L.. xn
z-1
z-1
a0
z-1
a1
a2
aM-1
aM
yn -b L
-bL-1
z-1
-b1
z-1
z-1
z-1
Obr.3.2 První kanonická (přímá) forma číslicového filtru Z možných realizací systémové funkce lze vhodnou volbou získat filtr, který bude mít menší počet násobení konstantou nebo menší počet nutných zpoždění. Snížením zpožďovacích členů snižujeme nároky na paměťové registry (nebo paměť procesoru), redukcí počtu násobení je možné zvýšit výpočetní rychlost a tím i opakovací (vzorkovací) kmitočet filtru. Na druhé straně je třeba pamatovat na to, že dvě odlišné struktury filtrů mající při nekonečné přesnosti koeficientů a proměnných stejné přenosové vlastnosti, mohou mít při konečné přesnosti zcela odlišné vlastnosti. Ukazuje se, že v některých případech je třeba k realizaci volit strukturu, která nemá minimální počet násobení a zpoždění, zato je méně citlivá na vlivy konečné délky registrů. Ukažme si nyní, jak lze u první kanonické formy zredukovat počet zpožďovacích členů. Systémovou funkci můžeme rozložit takto H ( z ) = H1 ( z ). H 2 ( z ) =
M
1 L
∑b .z i =0
i
−i
. ∑ a i . z −i
(3-3)
i =0
Jestliže položíme H 1 (z) = W(z)/X(z) a H 2 (z) = Y(z)/W(z) a provedeme zpětnou Z-transformaci funkcí H 1 (z) a H 2 (z) za předpokladu, že b0 = 1, dostaneme tyto diferenční rovnice L
wn = xn − ∑ bi . wn −i i =1
M
yn = ∑ a i . wn −i i =0
- 22 -
(3-4)
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
xn
které lze realizovat tzv. 2 kanonickou formou, která vyžaduje poloviční počet zpožďovacích obvodů v případě, že M=L. V ostatních případech se počet redukuje na větší z hodnot L nebo M.
yn
wn
a0
z-1
a1
-b1 wn-1
z-1 -b2
Jiný způsob realizace přenosové funkce ve tvaru racionální lomené funkce vychází z rozkladu této funkce na součin přenosových funkcí prvého nebo druhého řádu, který můžeme vyjádřit tímto vztahem
a2
wn-L
z-1 -bL
aL
Obr.3.3 Druhá kanonická forma ČF M1
M
H ( z ) = A. ∏ Hi ( z ) = i =1
A. ∏ (1 − zi . z i =1 L1
H1(z)
.
j
j =1
∏ (1 − p . z ) ∏ (1 − p . z i =1
xn
) ∏ (1 − z . z ).(1 − z . z ) M2
−1
i
−1
L2
j
j =1
H2(z)
H3(z)
−1
−1
* j
−1
(3-5)
).(1 − p . z ) * j
−1
Hk(z)
yn
Obr.3.4 Kaskádní forma číslicového filtru kde M = M1 + 2.M2 a L = L1 + 2.L2. Ve výrazech prvého řádu představuje z i reálné nuly a p i reálné póly, ve výrazech druhého řádu pak z j , z*j představuje komplexně sdružené nuly a p j , p*j představuje komplexně sdružené póly. Tato forma c0 postihuje obecné rozložení nul a pólů za předpokladu, že yn xn a i a b i jsou reálné koeficienty. Odvozený vztah podporuje strukturu diskrétní soustavy tvořenou H1(z) kaskádním řazením soustav prvního nebo druhého řádu s přenosovými funkcemi H i ( z) obr.3.4. Při realizaci je třeba rozhodnout o spojení dvojic nul a pólů a o pořadí řazení sekcí prvního nebo druhého řádu, kterým můžeme při omezení rozsahu koeficientů a zaokrouhlování součinů ovlivňovat šumové a dynamické vlastnosti diskrétní soustavy. Dalším alternativním rozkladem systémové funkce je rozklad funkce na parciální zlomky, který můžeme vyjádřit tímto výrazem
- 23 -
H2(z)
Hk(z) Obr.3.5 Paralelní forma ČF
P.Skalický- Digitální filtrace a signálové procesory L1
H (z ) = ∑ k =1
(1 − p . z ) i
(
B k . 1 − z j . z −1
L2
Ak
−1
+∑ k =1
Praha - 1/1995
)
(1 − p . z ).(1 − p . z ) j
−1
−1
* j
+
M−L
∑C k =1
Jsou-li a i a b i reálné, potom jsou i hodnoty Ak , Bk , Ck , pi a z j také reálné. Je-li M < L, potom z poslední sumy v rovnici zůstane jenom koeficient C0 . Rovnice reprezentuje systémovou funkci číslicového filtru jako paralelní spojení přenosových funkcí prvého a druhého řádu, zobrazených na obr.3.5. Odtud je zobrazená forma nazývána paralelní formou realizace přenosové funkce.
k
.z
−k
M
= C0 + ∑ H k ( z )
(3-6)
k =1
α0
xn
yn 1/β1
z-1 −1/α 1 1/β2
z-1
Jiný z možných rozkladů přenosové funkce −1/α n vznikne dělením čitatele přenosové funkce jejím jmenovatelem. Přenosová funkce je potom vyjádObr.3.6 Realizace řetězovým zlomkem řena řetězovým zlomkem následujícího tvaru H (z ) = α 0 +
1
β1 . z −1 +
(3-7)
1
α1 +
1
β2 . z −1 +...+
1 αn
kterou realizuje příčková strukI yn xn -1 tura zobrazená na obr.3.6. Z z z-1 hlediska obvodů, které jsou méně závislé na kvantování koefiR R -I cientů si ukážeme strukturu, která se nazývá vazební struktura obr.3.7. Její zvláštností je Obr.3.7 Vazební struktura číslicového filtru druhého stupně to, že dvě násobičky realizují reálnou část pólů přenosové funkce a druhá dvojice realizuje část imaginární. Jak si později ukážeme vykazuje tato struktura rovnoměrný vliv na rozložení pólů v rovině z v důsledku kvantování násobících koeficientů. Přenosová funkce vazební struktury je dána výrazem H( z) =
1 − 2. R. z
−1
I.z2 + ( R 2 + I 2 ). z − 2
(3-8)
3.2. Diskrétní soustavy s konečnou impulzní odezvou V předcházející části se diskutovalo o realizacích systému s nekonečnou impulzní odezvou, které obsahují rekurzivní výpočetní algoritmus. V případech kauzálních systémů s konečnou im-
- 24 -
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
pulzní odezvou, které nemají v analogové oblasti svůj ekvivalent, má výpočetní algoritmus charakter klouzavého průměru. Pro systémovou funkci ve tvaru polynomu stupně M-1 můžeme psát H( z) =
Y ( z) = X ( z)
M −1
∑a k =0
k
(3-9)
. z −k
Po aplikaci zpětné Z-transformace na výraz (3-9) můžeme psát tuto diferenční rovnici yn = a0 . xn + a1 . xn −1 + a2 . xn − 2 +! + a M −1 . xn − M +1 =
M −1
∑a .x k
k =0
(3-10)
n−k
Systémová funkce má M-1 pólů v bodě z=0 a M-1 nul, které mohou ležet kdekoliv v konečné rovině z. Proto jsou filtry KIO vždy stabilní. Systémy s konečnou impulzní odezvou (KIO) mohou, stejně jako filtry typu NIO, mít rozmanité formy realizace, z nichž nejdůležitější nyní probereme. Přímou formu realizace systémové funkce můžeme kreslit na základě diferenční rovnice (3-10), u které koeficienty a n jsou totožné s koeficienty impulzní odezvy h n obr.3.8 viz. rovnice (2-4). xn
z-1
z-1
a0
z-1
a1
a2
a M-2
a M-1
yn Obr.3.8 Přímá forma nerekurzivního číslicového filtru Tato forma je shodná s 1.kanonickou formou filtru NIO s nulovými koeficienty b i . Proto ji lze považovat za speciální případ struktury NIO. Vyjdeme-li z faktu, že tato struktura odpovídá též výrazu pro odezvu diskrétní soustavy (2-4), můžeme k realizaci využít i druhý vztah pro odezvu diskrétní soustavy. Takto získáme tzv. transverzální strukturu zobrazenou na obr.3.9. xn h M-1
h M-2
z-1
h1
z-1
z-1
h0
yn
z-1
Obr.3.9 Transverzální struktura nerekurzivního číslicového filtru Dalším možným vyjádřením systémové funkce je její rozklad na součin funkcí druhého případně i prvého řádu takto H (z ) = A.
( M −1)/ 2
∏ Hi (z) = A. i =1
( M −1)/ 2
∏ (β i =1
0k
+ β1k . z −1 + β2 k . z − 2 )
- 25 -
(3-11)
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
kde jeden z koeficientů β 2k bude nulový, jestliže M je liché a H(z) má lichý počet reálných kořenů. V mnoha aplikacích je požadován návrh filtru s pokud možno lineárním průběhem fáze a skoro konstantním skupinovým zpožděním. Jednou z velmi důležitých vlastností filtrů KIO je to, že umožňují realizovat filtry s přesně lineární fází. Impulzní odezva takového filtru je vyjádřena tímto vztahem hn = ± hM −1− n
(3-12)
To znamená, že se jedná o osově nebo bodově symetrickou funkci. Dosadíme-li tuto závislost do systémové funkce, můžeme psát (pro M liché - sudý počet hodnot impulzní odezvy) M / 2 −1
∑ h .z n=0
n
−n
M /2
=
+
M −1
∑ h .z
n= M /2
n
−n
=
M / 2 −1
∑ h .z n=0
n
M /2
∑ hn . z −n ± ∑ h M −1−n . z −( M −1−n ) = n=0
n=0
−n
±
M −1
∑h
n= M /2
M /2
∑ h .( z n=0
n
−n
M −n
. z −n =
± z −( M −1− n ) )
(3-13)
Odpovídající struktura realizující tuto systémovou funkci je zobrazena na obr.3.10 pro M - liché a tečkovaná pro M - sudé, za předpokladu kladného znaménka v rovnici (3-13) xn
z-1
z-1
z-1 z-1
z-1 h0
z-1 h1
z-1 h M/2-2 - sudé M h (M-3)/2 - liché M
h2
yn
pro sudý poèet hodnot impulzní odezvy h M/2-1 - sudé M h (M-1)/2 - liché M
Obr.3.10 Nerekurzivní číslicový filtr s lineární fází Symetrie koeficientů impulzní odezvy způsobuje, z3 že nuly systémové funkce, za předpokladu, že h n jsou 1/z*1 z1 reálné, jsou v komplexně sdružených párech nebo v z4 recipročních párech obr.3.11. Z odpovídajících skupin z 2 1/z 2 nul můžeme vytvořit polynomy prvního, druhého nebo z*1 1/z 1 čtvrtého řádu, jejichž koeficienty mají stejnou symetrii z*3 jako H(z) a každý z nich má lineární fázi. Filtr je potom Obr.3.11 Symetrie nul u filtru možné realizovat též jako kaskádu systémů s lineární fází prvého, druhého nebo čtvrtého řádu. První řád má odpoKIO s lineární fází vídající nulu z = 1 nebo z = -1 a nevyžaduje při realizaci
- 26 -
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
funkci násobení (1 + z −1 ). Druhý řád bude realizován systémovou funkci (1 + a . z −1 + z −2 ), která vyžaduje pouze jedno násobení. Čtvrtý řád má tvar (a + b. z −1 + c. z −2 + b. z −3 + a. z −4 ) a bude při realizaci strukturou pro obvody s lineární fází vyžadovat pouze tři násobení. Jak vyplývá z analýzy vlastností filtrů s konečnou impulzní odezvou je jejich systémová funkce dána polynomem stupně M-1 s proměnnou z −1 , kde M je délka impulzní odezvy. Je též dobře známo, že polynom stupně M-1 popisuje funkci v M definovaných bodech. V literatuře pak můžeme nalézt rozmanité interpolační formule, jako je Lagrangeova nebo Newtonova, které určují polynom procházející M hodnotami. V případě Lagrangeova rozvoje můžeme systémovou funkci vyjádřit takto H (z ) = P(z ).
1 M −1 H ( z k ) .∑ M k = 0 1 − p k . z −1
(3-14)
kde M −1
P(z ) = ∏ (1 − zi . z −1 ) =(1 − z − M −1 )
(3-15)
i =1
a zi = e j2 π i/(M +1) , která vytváří polynom stupně M-1 procházející M vybranými body funkce H(z) libovolně rozložených na jednotkové kružnici. Realizace Lagrangeovy struktury se skládá z paralelního spojení stupňů prvého řádu násobených hodnotami H(z k ) v kaskádě spojených se systémem tvořícím funkci P(z). Zvláštním případem je situace, kdy body na jednotkové kružnici jsou voleny ekvidistantně. Systémová funkce pro takovouto strukturu zůstává vyjádřena stejným vztahem (3-14) a (3-15) s tím, že p k = WM− k = e − j( 2π k / M ) . Hlavní výhodou metody kmitočtového vzorkování je to, že póly v paralelní části filtru mohou být spojeny do komplexně sdružených párů, které realizujeme filtrem druhého řádu s reálnými koeficienty.
3.3. Vliv kvantování koeficientů na vlastnosti struktury Při návrhu číslicových filtrů různých typů je návrhář postaven před několik důležitých rozhodnutí. Nejprve se musí rozhodnout mezi typem s konečnou nebo nekonečnou impulzovou odezvou. Do této volby může vstoupit počet nutných registrů a násobení konstantou nebo nutnost přesně lineární fáze. Po volbě typu filtru musíme určit systémovou funkci reprezentující filtr požadovaných vlastností. Této otázce se budeme věnovat v dalších kapitolách. Návrhy filtrů se provádějí pro konstanty se skoro neomezenou přesností, které se však nezávisle na zvolené realizaci filtru (obvodové nebo programové) budou ve skutečnosti realizovat hodnotami koeficientů s omezenou délkou. Použijeme-li koeficienty filtru, které nejsou přesné, pak póly i nuly systémové funkce budou odlišné od požadovaných pólů a nul. Tento pohyb pólů a nul ( u filtrů KIO pouze nul) způsobí odchylku od požadované kmitočtové charakteristiky. Je-li kvantování koeficientů hrubé,
- 27 -
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
může systémová funkce vykazovat zcela jiné vlastnosti. Navíc u filtrů NIO může jeden nebo více pólů se přesunout na nebo vně jednotkové kružnice, což povede k nestabilitě filtru. Všeobecně vliv kvantování koeficientů silně závisí na realizované struktuře, která je více či méně citlivá na tyto změny. Při analýze vlivů v soustavě s nekonečnou odezvou vyjdeme z předpokladu, že systémová funkce je ve tvaru racionálně lomené funkce M
H (z ) =
Y (z ) = X (z )
∑ a i . z −1 i =0 L
∑b .z i =0
i
M
=
A. ∏ (1 − z i . z −1 ) i =1
L
(3-16)
∏ (1 − p . z )
−1
i =1
i
−1
kde a i a b i jsou požadované koeficienty v přímé realizaci funkce. Pro kvantované " koeficienty a" i a b" i můžeme zapsat stejný výraz pro systémovou funkci H(z), kde vztah mezi koeficienty bude dán rovnicemi b"i = bi + ∆bi
a" i = a i + ∆a i
(3-17)
Předpokládejme, že póly H(z) se nachází v bodech z = p i pro i = 1,2,..,L a jsou tvořeny polynomem L
L
i =1
k =0
P(z ) = ∏ (1 − pi . z −1 ) = ∑ bk . z − k
(3-18)
" ( z) jsou posunuté o hodnotu ∆p = p" − p . Chyba ∆p může Póly (1 − p" i .z ) změněné funkce H i i i i být vyjádřena ve výrazem pro změnu k-tého koeficienty bk takto −1
L
∆pi = ∑ k =0
∂ pi ∂ bk
. ∆b k
i = 1,2, ! , L
(3-19)
Užitím vztahu ( 2-18 ), můžeme psát ∂ P( z ) ∂ pi ∂ P( z ) = . ∂ pi z = p ∂ bk ∂ bk z = p i
(3-20)
i
kde
∂ pi = ∂ bk
piL − k L
∏(p l =1 l≠k
i
− pl )
(3-21)
Rovnice nám udává citlivost i-tého pólu na změně k-tého koeficientu v polynomu jmenovatele H(z). Tento výsledek platí pouze pro jednoduché póly, jak vyplývá z rovnice ( 2-18 ). Protože přímá forma má analogický polynom i pro nulové body, můžeme analogicky odvodit citlivost nul z i na koeficientech a i . Ze vztahu vyplývá, že jsou-li póly těsně vedle sebe, mohou i malé změny koeficientů způsobit velké změny pólů nebo nul. Každý faktor (p i − p k ) může být reprezentován
- 28 -
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
p2
p1 jako vektor v rovině p3 ω ω z obr.3.13. Hodnota p1 citlivosti pólu závisí rovina z rovina z p2 na délce tohoto vekp2* toru od všech ostatp1* ních pólů. Tak filtr typu pásmové prop* * 3 p pusti bude mít ve p2* 1 srovnání s filtrem tyObr.3.12 Rozložení pólů filtru typu Obr.3.13 Rozložení pólů filtru typu pu dolní propusti dolní propusti pásmové propusti menší citlivost na změnu koeficientů a i a b i obr.3.12 a obr.3.13. Analýzou lze ověřit jak je daná struktura filtru citlivá na kvantování koeficientů. Obecně lze říci, že filtr je méně citlivý, když poloha každého pólu a každé nuly závisí na menším počtu koeficientů. Uveďme vlastnosti některých struktur: 1. V případě přímé struktury filtru realizované první nebo druhou kanonickou formou je každý pól ovlivňován hodnotou všech koeficientů b i a každá nula hodnotami všech koeficientů a i . Malé změny hodnot koeficientů a i a b i mohou tedy způsobit velké změny poloh pólů a nul. Největší změna vlastností filtru nastává v případě, že nuly či póly jsou blízko u sebe (např. u úzkopásmových filtrů). 2. V paralelní struktuře je každý pól nebo pár pólů určen malým počtem koeficientů v každé paralelní větvi. Naproti tomu nuly závisí na všech koeficientech. Z toho vyplývá, že paralelní struktura je málo ovlivněna kvantováním v propustném pásmu, které je hlavně určeno polohou pólů, ale je velmi citlivá na změny koeficientů v nepropustném pásmu, které je převážně určeno polohou nul. 3. V kaskádních strukturách jsou póly i nuly ovlivněny malý počtem koeficientů. Filtry s touto strukturou mají proto malou citlivost, jak v propustném, tak i v nepropustném pásmu. Abychom demonstrovali vliv kvantování na polohu pólů a nul číslicového filtru, uvedeme jednoduchý příklad NIO filtru druhého řádu s přímou strukturou z obr.3.14. Pro přenosovou funkci tohoto filtru snadno odvodíme tento výraz
xn
z-1
2*b1
Obr.3.14 Filtr druhého řádu typu NIO
- 29 -
yn
z-1 b2
P.Skalický- Digitální filtrace a signálové procesory
H( z) =
Praha - 1/1995
1 z − 2 * b1 . z 1 − b2
(3-22)
2
Funkce má dva póly p1 a p 2 a dvě nuly v bodě z=0. Budeme-li předpokládat, že póly jsou tvořeny komplexně sdruženým párem, potom pro jejich polohu můžeme psát
(
)
p1,2 = R. e ± jϕ = R. cos(ϕ ) ± j sin(ϕ )
(3-23)
a pro přenosovou funkci můžeme vyjádřit ve tvaru H (z ) =
z2
( z − R. e ). ( z − R. e ) jϕ
(3-24)
− jϕ
Z porovnání rovnice (3-24) s rovnicí (3-22) vyplývá, že b1 = R.cos(ϕ )
b2 = − R 2
(3-25)
Pokud koeficienty násobiček b1 a b 2 nebudou kvantovány, můžeme určit požadovaný pár komplexně sdružených pólů přesným výpočtem těchto koeficientů. Póly pak zaujímají polohu v z-rovině danou pouze vypočtenou hodnotou koeficientů. Po kvantování mohou koeficienty b1 a b 2 , a tedy i konstanty R a ϕ nabývat pouze omezeného počtu hodnot, a tudíž i póly v z-rovině mohou zaujímat pouze omezený počet poloh, znázorněný jakousi mřížkou. Kvantujeme-li např. koeficienty výše uvedeného filtru 4-bitovým registrem tzn. ( 0,xxx pro kladná čísla a 1,xxx pro záporná čísla ), potom bude odpovídající mřížka přípustných poloh pólů mít tvar podle obr.3.15. Z důvodu úspory místa je uveden pouze jeden kvadrant. Im 1,0
0,75
0,5
0,25
0
0,25
0,5
0,75
1,0
Re
Obr.3.15 Rozložení možných poloh pólů pro koeficienty kvantované na čtyři bity
- 30 -
Každý koeficient může nabývat osmi hodnot. Soustředné kružnice odpovídají kvantování b 2 = R 2 a vertikální ekvidistantní čáry odpo vídají kvantování koeficientu b1 = R.cos( ϕ ) . Koeficienty b1 a b 2 nabývají hodnot 0,1/8,2/8, ... ,7/8. Poloměr nejmenší kružnice je určen odmocninou hodnoty b 2 = 1/ 8 tj. R = 1/ 8 = 0, 35. Největší chyby v kmitočtové charakteristice nastanou, jestliže realizovaný filtr má póly v oblasti mřížky, kde jsou jednotlivé přípustné pozice od sebe více vzdáleny. Různé struktury filtrů mají též různou mřížku rozložení nul a pólů v z-rovině z
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
důvodu kvantování koeficientů. Abychom ilustrovali toto tvrzení, uveďme vazební strukturu NIO filtru podle obr.3.16. Přenosová funkce tohoto filtru má tvar H( z) =
b
(z − a + jb). (z − a − jb)
Budeme-li předpokládat, že přenosová funkce bude mít opět dva komplexně sdružené póly, potom pro jejich umístění v komplexní rovině z můžeme psát
=
b z − 2az + a 2 + b 2
(3-26)
2
b
xn
z
-1
z-1
a
a
yn
-b
Obr.3.16 Filtr 2.řádu - vazební struktura
(
)
p1,2 = R. e ± jϕ = R. cos(ϕ ) ± j sin(ϕ )
(3-27)
Dosazením kořenů p1,2 do rovnice (3-26) získáme tyto vztahy pro konstanty a a b a = R.cos(ϕ )
b = R.sin(ϕ )
(3-28) Jestliže opět kvantujeme koeficienty a, b jako 4-bitová čísla, můžeme při realizaci umístit póly do některých pozic uvnitř jednotkové kružnice v z-rovině podle obr.3.17.
Im 1,0
0,75
0,5
0,25
0 Obr.3.17
0,25
0,5
0,75
1,0
Re
Rozložení možných poloh pólů pro koeficienty kvantované na čtyři bity u vazební struktury
- 31 -
Z obrázku je patrné, že rozložení pólů je rovnoměrnější než u struktury z obr.3.15. Kaskádní a paralelní forma, která realizuje každý komplexně sdružený pár samostatně, přináší nezávislost na vzdálenosti od ostatních pólů v systému. Z tohoto hlediska lze kaskádní a paralelní formy preferovat před přímou formou, zvláště pak jedná-li se o pásmové propusti s blízkým rozložením nul a pólů.
P.Skalický- Digitální filtrace a signálové procesory
Praha - 1/1995
Příklady k samostatnému řešení Příklad 3.1 Odvoďte první a druhou kanonickou, kaskádní a paralelní formu stacionárního systému s následující diferenční rovnicí yn - 0,75. yn-1 + 0,125. yn-2 = x n + x n-1 / 3 Příklad 3.2
Odvoďte druhou kanonickou formu a příčkovou strukturu filtru se systémovou funkcí H ( z) =
2. z −2 + 4. z −1 + 1 z − 2 + z −1 + 1
Příklad 3.3 Nakreslete všechny možné realizace číslicového filtru se systémovou funkcí H ( z) =
3. ( z + 1). ( z + 2) ( z + 0,5 ).( z - 0,4 )
- 32 -