České vysoké učení technické v Praze Fakulta elektrotechnická semestrální práce zpředmětu Použití signálových procesorů(31psp) Decimace výstupního datového toku Σ modulátoru 1.sekce Vypracoval: Richard Starý
1 Anotace Tato práce se zabývá problematikou zpracování výstupního datového toku Sigma-Delta modulátoru a její implementací na digitálním signálovém procesoru firmy Texas Instruments s označením TMS320C541 na úrovni simulace. Bude vyložena základní myšlenka zpracování digitálního výstupu Σ modulátoru a význam jednotlivých fází. Poté zaměřím svou pozornost podrobněji na 1. sekci, budu prezentovat zajímavou možnost jejího řešení a tuto následně implementovat. Probíraná problematika stejně jako samotný implementovaný zdrojový kód bude podpořena simulacemi v Matlabu. 2 Teorie Σ modulace V této kapitole se seznámíme se základními principy Σ modulace, ze kterých přímo vyplývají zásady pro zpracování výstupního datového toku Σ modulátoru. Ve třech následujích podkapitolách se postupně zaměříme na Σ modulátor jako základní předmět našeho zájmu, na zpracování jeho výstupního digitálního signálu a konečně ve třetí podkapitole se detailněji podíváme na 1. sekci zpracování, kterou budeme později implementovat. 2.1 Princip Σ modulace Nyní se pokusím na obecné úrovni přiblížit základní princip Σ modulace. Sigma-Deltamodulátorjeanalogovědigitálnímpřevodníkem(ADC)srozlišením1bit 1.Na obrázku1jeuvedenoblokovéschémaσ modulátoru1.řádu.vidíme,žesejednáorelativně jednoduché zapojení, srovnáváme-li jej s klasickými PCM A/D převodníky. Jednoduchá je i jeho obvodová realizace blíže viz[4]. Obrázek 1: Blokové schéma Sigma-Delta modulátoru 1. řádu Za zmínku stojí též skutečnost, že tento převodník vzhledem k typické volbě vzorkovací frekvence řádově v oblasti jednotek MHz nevyžaduje předřazení antialiasingového filtru. Na vstupu též není obvod typu Sample&Hold. Oba tyto fakty přispívají k jednoduchosti výsledné realizace Σ modulátoru. Vyšší řády Σ modulátoru vzniknou zařazením dalších integrátorů a zpětnovazebních smyčekdoschématunaobrázku1.vpraxisevšakrealizujenejvýšeřádtřetí;vyššířádyjižpřinášejí zvýšené riziko nestability. Nejčastěji používaným je potom Σ modulátor 2. řádu, který nabízí dobré vlastnosti, snadnou realizaci a nízké riziko nestability. Případným zájemcům o detailnější seznámení se Σ modulátory a jejich návrhem doporučuji prostudovat literaturu[4]. 1 VpraxijemožnésetkatseiseΣ převodníky,kterémajírozlišenívyššínež1bit,např.bityčtyři,nicméně 1bitové převodníky jednoznačně dominují. 2
Obrázek 2: Znázornění korespondence napěťové úrovně vstupního analogového a výstupního digitálního signálu Výstupní digitální signál má tedy šířku bitového slova 1 bit. Z toho vyplývá, že informace o napěťové úrovni vstupního analogového signálu nemůže být uchována v amplitudě(úrovni) výstupního digitálního signálu. Namísto toho je tato informace nesena hustotou jedniček v čase. Tojedobřezřetelnézobrázku2.Natomtoobrázkujsouvynesenyobasignály vstupní analogový(pilovitý průběh) a výstupní digitální. Je patrné, že čím vyšší je úroveň analogové signálu,tímvyšší hustotajedniček jevdigitálnímsignálu.vtomspočíváonamodulace, kterou Σ převodník provádí. Je jí jakési kódování signálu analogového do 1bitového digitálního signálu. Obrázek 3: Příklad spektra výstupního 1bitového digitálního signálu Σ modulátoru 2. řádu Zajímavá je situace ve spektru. Σ modulátor totiž oproti klasickým PCM A/D převodníkům nemá kvantizační šum rozložen rovnoměrně ve spektru výstupního digitálního signálu, nýbrž jeho spektrální hustota narůstá směrem k vyšším frekvencím, směrem k polovině vzorkovacího kmitočtu(charakter rozložení kvantizačního šumu je možno v oblasti nízkých kmitočtů 3
aproximovatfunkcí(sinf) n,kde njeřádpoužitéhoσ modulátoru).tomimojinépředurčuje Σ převodníkykvyužitípřevzorkování.tj.vzorkovacíkmitočet(f vz )jevolenjakoněkolikanásobeknyquistovyfrekvence(f N ),např.256krátči512krát. Díky kombinaci výše uvedeného charakteru rozložení kvantizačního šumu ve spektru a využití převzorkování se dosahuje u Σ modulátorů velmi dobrého poměru užitečného signálu k šumu atudíživysokéhobitovéhorozlišení(např.až24bit),kterébychomupcmpřevodníkůjen velmi obtížně docílili. Příklad spektra výstupního digitální signálu Σ modulátoru 2. řádu je uveden na obrázku 3. Vzorkovaným signálem byl pilovitý průběh. 2.2 Zpracování výstupního digitálního signálu Nyní, po stručném výkladu problematiky spojené se Σ modulací, se můžeme zaměřit na samotné zpracování výstupního datového toku. Tím mám na mysli 1bitový digitální signál odebíraný na výstupu Σ modulátoru. Tento signál má šířku bitového slova 1 bit a frekvenci rovnou frekvenci vzorkovací, která bývá řádově jednotky MHz. Takovéto parametry signálu nejsou vhodné pro další zpracování nebo přenos. Proto se snažíme u výstupního datového toku navýšit šířku bitového slova a snížit frekvenci na úroveň Nyquistovy frekvence. Jinými slovy, snažíme se vytvořit takový signál, jaký bychom získali vzorkováním Nyquistovou frekvencí převodníkem PCM s daným bitovým rozlišením. Nejjednodušší řešení tohoto problému, které nás napadne je omezení spektra výstupního digitálního signálu(separace užitečného signálu z kvantizačního šumu) a následná decimace. Bohužel toto přímočaré řešení je nepraktické. Realizace filtru s ostrým přechodem z propustného do nepropustného pásma a dobrým potlačením v nepropustném pásmu na vysoké frekvenci je konstrukčně i výpočetně náročná. Takový filtr je samozřejmě realizovatelný, nicméně zpravidla máme pro signálový procesor důležitější práci než jen filtraci signálu z A/D převodníku. Ztohotodůvodusevpraxizpracovánívýstupního datového toku Σ modulátoru dělí na dvě fáze. V první fázi provedeme snížení frekvence signálu na osminásobek Nyquistovi frekvence[3] spolu s navýšením šířky bitového slova pomocí Lynnova filtru. Tento filtr má přenosovou funkci danou vztahem H(z)= 1 N 1 z N, (1) 1 z 1 kde Njedecimačnípoměr,tj.nazákladěvýše uvedenýchúvahnapříklad N = f vz /(8f N ). Lynnův filtr má sice velmi pozvolný přechod z propustného do nepropustného pásma, nicménětonámvzhledemktomu,žespektrum užitečného signálu zabírá jen jednu osminu Obrázek 4: Navýšení bitového rozlišení v závislosti na počtu kaskádně řazených Lynnových filtrů kadecimačnímpoměru N propustného pásma, příliš nevadí. Naproti tomu nám filtr nabízí velmi jednoduchou realizaci (viz[4]) a ještě jednu výtečnou vlastnost. Tou je skutečnost, že všechny nuly přenosové funkce leží přesně na kmitočtech, jejichž okolí se po decimaci dostane do základního pásma, resp. bude se překrývat s užitečným signálem. Z toho pohledu je tedy filtrace Lynnovým filtrem, který má jinak nepříliš uspokojující potlačení v nepropustném pásmu, postačující. V praxi se často využívá kaskádního řazení Lynnových filtrů, které zlepšuje potlačení šumu a zvyšuje šířku bitového slova. Nicméně musíme si dávat pozor, aby nám filtr příliš nepotlačil 4
i užitečný signál z toho důvodu je literaturou[3] doporučováno v 1. fázi zpracování snížení frekvence signálu na osminásobek Nyquistovy frekvence; to při trojnásobné filtraci Lynnovým filtrem potlačí užitečný signál na mezi propustného pásma o 0,8 db. Lynnův filtr též navýší šířku bitového slova B podle vztahu B= b+klog 2 N, kde b je počet bitů výchozího Σ modulátoru(nejčastěji tedy 1 bit), k stupeň filtrace, resp. početkaskádněřazenýchlynovýchfiltrůandecimačnípoměr.prostupeňfiltrace k=1,2,3a běžné decimační poměry je výše uvedený vztah vynesen v grafu na obrázku 4. Za první sekcí může následovat již klasický FIR, popř. i IIR, filtr, který pro zpracování signálu na snížené frekvenci bude vyžadovat mnohem menší výpočetní výkon. Po filtraci provedeme decimaci na Nyquistovu frekvenci při postupu dle výše uvedených doporučení faktorem decimace osm. Takto získáme relativně jednoduchou cestou digitální signál vhodný k dalšímu zpracování či přenosu. 2.3 Realizace 1. sekce Jásevtétoprácivšakomezímnaimplementaciprvnísekce,takjakbylanastíněnavýše. Jednoduchý Lynnův filtr s přenosovou fukncí dle(1) lze realizovat jako kaskádní zapojení integrátoru a hřebenového filtru Mtého řádu. Již na této úrovni tedy máme jeden stupeň volnosti můžeme se rozhodnout, zda nejprve zařadíme integrátor, či hřebenový filtr. S rostoucím počtem kaskádně řazených Lynnových filtrů(v praxi nejvýše čtyři) roste i počet stupňů volnosti. Z tohoto důvodu jsem se při volbě řazení integrátorů a hřebenových filtrů podržel článku[2], který se touto problematikou hlouběji zabývá viz obrázek 5 zobrazující obecně myšlenku kaskádního řazení Lynnových filtrů, přičemž vlevo před spínačem je tolik integrátorů kolik Lynnových filtrů je celkem v kaskádě; stejný počet je i hřebenových filtrů vpravo od spínače. Obrázek 5: Kaskádní řazení Lynnových filtrů decimujících faktorem N dle Hogenauera[2] Zapojení dle obrázku 5 navíc realizuje i decimaci faktorem N, čímž značně zefektivňuje implementaci; především s ohledem na snížení počtu operací potřebných k filtraci, protože dle uvedeného zapojení se zpracovávají pouze hodnoty, které mají smysl, resp. které nebudou decimací ztraceny. Zapojením je tedy realizována funkce Y(z N )= 3 Implementace na DSP ( 1 1 z N ) k N1 z 1 X(z). (2) Před samotným přistoupením k implementaci algoritmu do DSP TMS320C541 jsem provedl předběžný návrh rovnic realizujících zapojení dle obrázku 5 a úspěšně simuloval jejich chování 5
v programu Matlab zdrojový kód viz příloha k této zprávě. Provedl jsem rovněž ověření skutečnosti, že volně přetékající integrátory při aritmetice ve dvojkovém doplňku a dodržení podmínky, že počet bitů pamětí je větší nebo roven počtu bitů výstupního signálu, neovlivňují správnost výsledku. Za využití literatury[1] a myšlenky výše uvedeného zapojení kaskády Lynnových filtrů jsem sepsal zdrojový kód pro DSP viz příloha. Algoritmus je schopen pro libovolný zadaný počet Lynnových filtrů v kaskádě a libovolný decimační poměr plnohodnotně provést první sekci zpracování výstupního datového toku Σ modulátoru. Co se časové náročnosti týká, je maximální frekvence zpracovatelného vstupního signálu dána nejdelším průchodem programem mezi dvěma čteními vstupních vzorků. Přehledně jsou tyto mezní frekvence uvedeny v tabulce 1. f max vst.signálu[mhz] Dobacyklu[ns] k=1 k=2 k=3 25,0 1,90 1,38 1,08 20,0 2,38 1,72 1,35 15,0 3,17 2,30 1,80 12,5 3,81 2,76 2,16 10,0 4,76 3,45 2,70 Tabulka 1: Závislost mezní frekvence vstupního digitálního signálu na počtu Lynnových filtrů a délce jednoho instrukčního cyklu DSP Z tabulky je zřejmé, že DSP TMS320C541 by byl schopen plnohodnotně filtrovat signál ze Σ modulátoru pracujícího s taktovacím kmitočtem 1 MHz při třech Lynnových filtrech v kaskádě. Maximální frekvenci zpracovatelných signálů by šlo ještě navýšit, uvědomíme-li si, že nejdelší průběh programem se odehraje pouze jednou z N průchodů. Všechny ostatní průchody programem, kdy se neuplatňuje hřebenová část filtrace, trvají polovinu času nejdelšího průchodu. Při alternativním řešení např. vstupní vyrovnávací buffer by se mezní frekvence zpracovatelného vstupního digitálního signálu téměř zdvojnásobila. 4 Ověření funkce K ověření činnosti jsem využil přípravku osazeného Σ modulátorem 2. řádu, který jsem navrhl v rámci semestrálního projektu(31sp) na katedře teorie obvodů. Tímto přípravkem jsem vzorkoval kmitočtem f vz =150kHzanalogovýsignáltvarupilyofrekvenci150Hz.Jednobitovýdigitální signál na výstupu Σ modulátoru svým charakterem odpovídal signálu dle obrázku 2. Navrženým algoritmem jsem prostřednictvím simulátoru(tms320c54x Simulator) provedl filtraci a decimaci výstupního 1bitového digitálního signálu odebíraného na výstupu Σ modulátorupronásledujícízvolenéparametry:stupeňfiltrace k=3adecimačnípoměr N=16. Výstupní vyfiltrovaný a zdecimovaný signál jak v časové, tak i spektrální oblasti je uveden na obrázku 6. Z obrázku zpracovaného signálu je patrné, že došlo k navýšení šířky bitovéhoslova,konkrétněna12bit(= b+klog 2 N=0+3log 2 16).Signálvčasovéoblastijiž svým tvarem také připomíná vzorkovaný analogový signál pilovitého průběhu. Nelinearita v ideálním případě lineárních ůseků, ze kterých má být pilovitý průběh tvořen je způsobena nekvalitním generátorem analogového signálů použitého při měření, nikoliv kvalitou navrženého filtru. Takto předpřipravený signál je možno FIR filtrem s relativně strmým přechodem z propustného do nepropustného pásma a s mezní frekvencí propustného pásma rovné polovině Nyquistovy frekvence omezit a následně zdecimovat faktorem osm a to vše při nízké výpočetní náročnosti. 6
Obrázek6:Výstup1.sekce vyfiltrovanýazdecimovanývstupnídigitálnísignál(k=3, N=16, f vz =150kHz) 5 Shrnutí V rámci semestrální práce z předmětu PSP vyučovaného pod záštitou katedry teorie obvodů FEL jsem navrhnul a na úrovni simulace ověřil první sekci zpracování výstupního datového toku Σ modulátoru. Nastínil jsem též problematiku spojenou se Σ modulací obecně; detailněji jsem pak rozpracoval problematiku první sekce. Navržený algoritmus jsem úspěšně otestoval na datech získaných reálným měřením na přípravku se Σ modulátorem 2. řádu, který jsem navrhnul a sestavil v rámci semestrálního projektu(31sp). Navržený algoritmus je možno aplikovat v praxi na signály s frekvencí menší než mezní frekvence zpracovatelného signálu uvedená pro různé případy v tabulce 1. Případní zájemci o podrobnosti ohledně mojí semestrální práce, či problematiku Σ modulace obecně, nechť se obrátí na mojí osobu skrze můj fakultní e-mail staryr1@fel.cvut.cz, popř. nechť mě vyhledají přes moje webové stránky http://richardstary.wz.cz. 7
Obsah 1 Anotace 2 2 Teorie Σ modulace 2 2.1 PrincipΣ modulace...... 2 2.2 Zpracovánívýstupníhodigitálníhosignálu... 4 2.3 Realizace1.sekce..... 5 3 Implementace na DSP 5 4 Ověření funkce 6 5 Shrnutí 7 Literatura 8 Literatura [1] Davídek, V. Implementace algoritmů číslicového zpracování signálů v reálném čase. Vydavatelství ČVUT, Praha, 2004. ISBN 80-01-03114-4. [2] Hogenauer, Eugene B. An Economical Class of Digital Filters for Decimation and Interpolation. IEEE Transactions on Acoustics, Speech and Signal Processing, vol. ASSP 29, No.2,April1981. [3] Candy, James C. Decimation for Sigma Delta Modulation. IEEE Transactions on Communications, vol. COM 34, No. 1, strany 72 76, Fellow, January 1986. [4] Norsworthy, Steven R., Schreier, Richard, Temes, Gabor C. Delta-Sigma Data Converters Theory, Design and Simulation. IEEE Press, New York, 1996. ISBN-0-7803-1045-4. 8