VIZSGADOLGOZAT PÁZMÁNY PÉTER KATOLIKUS EGYETEM INFORMÁCIÓS TECHNOLÓGIAI KAR DIGITÁLIS JELFELDOLGOZÁS 2004. MÁJUS



Hasonló dokumentumok
2. gyakorlat Mintavételezés, kvantálás

Iványi László ARM programozás. Szabó Béla 6. Óra ADC és DAC elmélete és használata

Analóg-digitális átalakítás. Rencz Márta/ Ress S. Elektronikus Eszközök Tanszék

Digitális jelfeldolgozás

Mintavételezés és AD átalakítók

Híradástechikai jelfeldolgozás

Elektronika Előadás. Digitális-analóg és analóg-digitális átalakítók

Digitális jelfeldolgozás

Analóg digitális átalakítók ELEKTRONIKA_2

Mérés és adatgyűjtés

X. ANALÓG JELEK ILLESZTÉSE DIGITÁLIS ESZKÖZÖKHÖZ

Fourier térbeli analízis, inverz probléma. Orvosi képdiagnosztika 5-7. ea ősz

A mintavételezéses mérések alapjai

A/D és D/A átalakítók gyakorlat

Orvosi Fizika és Statisztika

3.18. DIGITÁLIS JELFELDOLGOZÁS

ÉRZÉKELŐK ÉS BEAVATKOZÓK I. 6. A MINTAVÉTELI TÖRVÉNY

A digitális jelek időben és értékben elkülönülő, diszkrét mintákból állnak. Ezek a jelek diszkrét értékűek és idejűek.

Villamos jelek mintavételezése, feldolgozása. LabVIEW 7.1

2. Elméleti összefoglaló

Mintavétel: szorzás az idő tartományban

ANTAL Margit. Sapientia - Erdélyi Magyar Tudományegyetem. Jelfeldolgozás. ANTAL Margit. Adminisztratív. Bevezetés. Matematikai alapismeretek.

Villamos jelek mintavételezése, feldolgozása. LabVIEW előadás

Irányítástechnika GÁSPÁR PÉTER. Prof. BOKOR JÓZSEF útmutatásai alapján

Analóg-digitál átalakítók (A/D konverterek)

Az Informatika Elméleti Alapjai

π π A vivőhullám jelalakja (2. ábra) A vivőhullám periódusideje T amplitudója A az impulzus szélessége szögfokban 2p. 2p [ ]

Beszédinformációs rendszerek 5. gyakorlat Mintavételezés, kvantálás, beszédkódolás. Csapó Tamás Gábor

Informatika Rendszerek Alapjai

10.1. ANALÓG JELEK ILLESZTÉSE DIGITÁLIS ESZKÖZÖKHÖZ

A PC vagyis a személyi számítógép

Mintavételezés: Kvantálás:

Mérési jegyzőkönyv a 5. mérés A/D és D/A átalakító vizsgálata című laboratóriumi gyakorlatról

Digitális szűrők - (BMEVIMIM278) Házi Feladat

Gyakorló többnyire régebbi zh feladatok. Intelligens orvosi műszerek október 2.

Informatikai eszközök fizikai alapjai Lovász Béla

Elektronika Előadás. Modulátorok, demodulátorok, lock-in erősítők

Fourier-sorfejtés vizsgálata Négyszögjel sorfejtése, átviteli vizsgálata

Hangtechnika. Médiatechnológus asszisztens

Értékelés Összesen: 100 pont 100% = 100 pont A VIZSGAFELADAT MEGOLDÁSÁRA JAVASOLT %-OS EREDMÉNY: EBBEN A VIZSGARÉSZBEN A VIZSGAFELADAT ARÁNYA 15%.

Akusztikus MEMS szenzor vizsgálata. Sós Bence JB2BP7

Ellenőrző kérdések a Jelanalízis és Jelfeldolgozás témakörökhöz

Jelfeldolgozás bevezető. Témalaboratórium

Digitális jelfeldolgozás

1.1 Számítógéppel irányított rendszerek

Jelek és rendszerek 1. 10/9/2011 Dr. Buchman Attila Informatikai Rendszerek és Hálózatok Tanszék

Jelfeldolgozás - ANTAL Margit. impulzusválasz. tulajdonságai. Rendszerek. ANTAL Margit. Sapientia - Erdélyi Magyar Tudományegyetem

Fehérzajhoz a konstans érték kell - megoldás a digitális szűrő Összegezési súlyok sin x/x szerint (ez akár analóg is lehet!!!)

ÉRZÉKELŐK ÉS BEAVATKOZÓK I. 3. MÉRÉSFELDOLGOZÁS

Shift regiszter + XOR kapu: 2 n állapot

6. témakör. Mintavételezés elve Digitális jelfeldolgozás (DSP) alapjai

A/D és D/A konverterek vezérlése számítógéppel

1. előadás. Lineáris algebra numerikus módszerei. Hibaszámítás Számábrázolás Kerekítés, levágás Klasszikus hibaanalízis Abszolút hiba Relatív hiba

A digitális analóg és az analóg digitális átalakító áramkör

Kommunikációs hálózatok 2 Analóg és digitális beszédátvitel

Digitális mérőműszerek. Kaltenecker Zsolt Hiradástechnikai Villamosmérnök Szinusz Hullám Bt.

Távközlő hálózatok és szolgáltatások Távközlő rendszerek áttekintése

Analóg elektronika - laboratóriumi gyakorlatok

Kiegészítés a Párbeszédes Informatikai Rendszerek tantárgyhoz

Mérési hibák

Jelfeldolgozás a közlekedésben. 2017/2018 II. félév. Analóg-digitális átalakítás ADC, DAC

Z v 1 (t)v 2 (t τ)dt. R 12 (τ) = 1 R 12 (τ) = lim T T. ill. periódikus jelekre:

Kvantálási torzítás mérése PCM A karakterisztika

Analóg elektronika - laboratóriumi gyakorlatok

Mintavételezés és FI rendszerek DI szimulációja

Mérés 3 - Ellenörzö mérés - 5. Alakítsunk A-t meg D-t oda-vissza (A/D, D/A átlakító)

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

DIGITÁLIS KOMMUNIKÁCIÓ Oktató áramkörök

Jelek és rendszerek MEMO_03. Pletl. Belépő jelek. Jelek deriváltja MEMO_03

Mechatronika és mikroszámítógépek. 2016/2017 I. félév. Analóg-digitális átalakítás ADC, DAC

Kommunikációs hálózatok 2 Analóg és digitális beszédátvitel

ADAT- ÉS INFORMÁCIÓFELDOLGOZÁS

A/D és D/A átalakítók

Mérés és adatgyűjtés

Bevezetés a méréstechnikába és jelfeldolgozásba 7. mérés RC tag Bartha András, Dobránszky Márk

Képrestauráció Képhelyreállítás

Wavelet transzformáció

Jelfeldolgozás. Gyakorlat: A tantermi gyakorlatokon való részvétel kötelező! Kollokvium: csak gyakorlati jeggyel!

HÍRADÁSTECHNIKA SZÖVETKEZET

Néhány fontosabb folytonosidejű jel

Véletlen jelenség: okok rendszere hozza létre - nem ismerhetjük mind, ezért sztochasztikus.

Villamosságtan szigorlati tételek

Digitális jelfeldolgozás

Digitális mérőműszerek

A gyakorlat célja a fehér és a színes zaj bemutatása.

1. ábra. Repülő eszköz matematikai modellje ( fekete doboz )

2. témakör. Sztochasztikus, stacionárius és ergodikus jelek leírása idő és frekvenciatartományban

KANDÓ KÁLMÁN VILLAMOSMÉRNÖKI FŐISKOLAI KAR. Mikroelektronikai és Technológiai Intézet. Aktív Szűrők. Analóg és Hírközlési Áramkörök

Digitális Fourier-analizátorok (DFT - FFT)

Akusztikus mérőműszerek

1: Idõ(tartam), frekvencia (gyakoriság) mérés

5. témakör. Szögmodulációk: Fázis és frekvenciamoduláció FM modulátorok, demodulátorok

(Independence, dependence, random variables)

Mérés és adatgyűjtés

Számítógépes gyakorlat MATLAB, Control System Toolbox

A munkavégzés a rendszer és a környezete közötti energiacserének a D hőátadástól eltérő valamennyi más formája.

Statisztika - bevezetés Méréselmélet PE MIK MI_BSc VI_BSc 1

1. Ismertesse az átviteltechnikai mérőadók szolgáltatásait!

A/D ÉS D/A ÁTALAKÍTÓK

Távközlő hálózatok és szolgáltatások Távközlő rendszerek áttekintése

Átírás:

VIZSGADOLGOZAT PÁZMÁNY PÉTER KATOLIKUS EGYETEM INFORMÁCIÓS TECHNOLÓGIAI KAR DIGITÁLIS JELFELDOLGOZÁS 2004. MÁJUS Konzulens: Oláh András Csercsa Richárd Magony Andor

TARTALOM 1.Bevezetés... 3 2.Folytonos jelek diszkrét idejű feldolgozása... 5 2.1. Az analóg jel előszűrése... 6 2.2. Analóg digitális átalakítás... 7 2.2.1. Mintavétel és tartás (SampleandHold)... 7 2.2.2. A mintavételezés karakterisztikája; matematikai alapozás... 8 2.2.3. A mintavételezés matematikai modellje... 8 2.2.4. Kvantálás... 10 2.2.5. A kvantálás matematikai modellje:... 11 2.2.6. Egyenletes kvantálás... 11 2.2.7. Logaritmikus kvantálás... 12 2.2.8. Kvantálási hibák... 13 2.3. Oversampling A/D átalakítók... 14 2.4. D/A Konverzió... 15 2.5. Oversampling D/A Konverterek... 17 FÜGGELÉK... 19 1. ábra Mintavételezés... 19 2. ábra Lineáris kvantálás és annak karakterisztikája... 19 3. ábra Logaritmikus kvantáló és karakterisztikája... 20 4. ábra D/A átalakítás kis pontossággal... 20

1. Bevezetés A digitális jelfeldolgozás legelső és legfontosabb állomása a természetes karakterisztikájú, folytonos analóg jelek valamilyen formájú diszkretizálása, alkalmassá tétele digitális számítógépeken való további feldolgozásra. Ezen folyamat során az időben folytonos jelalakból (pl. hanghullám, mérőátalakítók kimenetei: hőmérséklet, nyomás, sebesség, páratartalom, elmozdulás, erő, stb.) meghatározott eljárások során diszkretizált jelsorozatot nyerünk, mely digitális jelfolyamként realizálódik a számítógépben. Ez a folyamat az analógdigitális átalakítás, mely vívmányt tudvatudatlanul, de szinte mindannyian használunk hétköznapjainkban. Használjuk a mára már oly megszokottá vált mobiltelefóniában, használjuk, amikor rögzítünk egy előadást az egyetemen, amikor régi bakelit lemezeink tartalmának CDre írva próbálunk meg új életet adni, és még számos más esetben, amikor talán nem is tudunk róla. Leggyakrabban pedig valószínűleg úgy találkozunk vele, hogy a feldolgozás nem számítógépen, hanem kimondottan jelfeldolgozásra

kihegyezett DSPken (Digital Signal Processor) történik, mely specializáltsának köszönhetően sokkalta gyorsabb, mint az univerzális feladatokra használatos számítógépes processzorok. Maga a folyamat, melynek során az analóg jelből digitális eredményt kapunk, jól elkülöníthető, egyszerűen algoritmizálható lépésekből áll. Először is biztosítanunk kell, hogy a bejövő jel sávkorlátozott legyen, amit egy aluláteresztő szűrővel érhetünk el. Ezután következik a mintavételezés, melynek során adott időközönként méréseket végzünk az analóg jelen, s azokat mintákként értelmezzük. Itt általában ekvidisztáns mérési időpontokat alkalmazunk, a mérés után a mért jelet egy ideig megtartjuk (Sample & Hold). A következő lépés a mért minták osztályozása, azaz diszkrét értékekhez való hozzárelése, ez az ún. kvantálás. Ennek paramétere az osztályozás finomsága, tehát az a jellemző, amely meghatározza, hogy a mintákat milyen felbontással tudjuk diszkretizálni. Ennek mérőszáma bitben, általában 2 hatványaként adott. A végső digitális jel előállításához már csak kódolásra van szükség, amely a leggyakrabban egy adott típusú bináris kód. A teljes folyamat blokkdiagramja: Áramköri elemekkel leírva, nagyon egyszerű megközelítésben a mintavételhez csupán kapcsolóra és kondenzátorra, a kvantáláshoz pedig komparátorra van szükségünk. Ez a szint az A/D átalakító fizikai megvalósulása.

1.1. Motiváció: De miért is jobb nekünk a jeleket digitálisan feldolgozni az analóg megoldásokkal szemben? A digitális rszereknek kétségtelenül nagy előnyei vannak, melyek, főleg napjaink hihetetlen méretű adatmennyiségéből kifolyólag alapvető jelentőségűek. Ezek (a teljesség igénye nélkül): megbízhatóság a digitális jelek minden olvasás alkalmával ugyanazon értékeket garantálják, nemúgy mint analóg megfelelőik, melyek minden hozzáféréssel egyre gyengülnek; rugalmasság a feldolgozás, sőt maga a jelátalakítás is gyorsan, egyszerűen programozható, ill. paraméterezhető, és a kívánt igények szerint módosítható anélkül, hogy áramköröket kellene újratervezni, átépíteni, esetleg teljesen újakat alkotni; programozhatóság a digitális jelek feldolgozását végző DSPn futó program(ok) remek hatásfokkal dolgoznak, hiszen maga a DSP egy adott célfeladatra van kihegyezve, optimalizált, minimális programkóddal, amely tetszés szerint programozható, az egyedi igényeknek megfelelően; továbbfejleszthetőség a digitális rszerek szinte korlátlanul bővíthetőek, s ahogy egyre jobb eljárások, ill. megoldások születnek, egyre kevesebb befektetéssel egyre jobb hatásfokot tudunk elérni; robusztusság az adataink egyszerűbben és biztonságosabban, ráadásul romlásmentesen tárolhatók, gyakorlatilag érzéketlenek a környezeti hatásokra, vagy legalábbis könnyebben javíthatók, avagy védhetők meg ezen jelenségektől (sok, egyszerűbb jelet könnyebb javítani, mint egy komplexet pl. analóg hanghullám); 2. Folytonos jelek diszkrét idejű feldolgozása Számos alkalmazás esetén kimondottan előnyös a folytonos idejű analóg jeleket DSPken feldolgozni. Ennek folyamatát a következő ábra illusztrálja: analóg jel Előszűrő X(t) A/D X(n) DSP y(n) D/A y(t) Utószűrő y (t) átalakító átalakító

A feldolgozás megtervezésének első fázisában meg kell határoznunk a jel sávszélességét, az ugyanis meghatározza szükséges minimális mintavételi frekvenciát. Példaképpen felhozható az emberi beszédhang, melynek digitalizálása során elegő az ún. érthetőségi tartomány lefedése, amely a 3000 Hzig tartó frekvenciákat tartalmazza. Az ezen érték feletti komponensek az érthetőséget kevéssé, inkább a hang kvalitatív jellemzőit javítják, ezért kis relkezésre álló sávszélesség esetén ezen tartományok feleslegesnek tekinthetők. 2.1. Az analóg jel előszűrése Két okból szükséges analóg szűrő alkalmazása a folytonos jelen. Elsősorban azért, mert ez biztosítja, hogy a mintavételezni kívánt jel sávszélessége korlátos legyen, s így az adott tartomány feletti frekvenciák kioltásával az átfedés (aliasing) által okozott zajtényező is kizárható. A másik oka az előszűrésnek, hogy limitáljuk a járulékos zaj spektrumát és más interferenciákat, melyek a kívánt jel jelentős romlásához vezethetnek. Az additív zaj általában szélessávú, azaz meghaladja a kívánt jel frekvenciatartományát. Előszűréssel redukálhatjuk a zaj energiáját arra a szintre, amely a hasznos jeltartományba esik, kizárva ezzel a tartományon kívül eső zajokat. Az előszűrés paramétereinek megadása után a mintavételi ráta meghatározása következik. Ennek értéke: F s = 1/T, ahol T a mintavételezési időintervallum. Ezen mintavételi frekvencia nem csupán a mintavételezhető legnagyobb frekvenciát adja meg (F s /2), hanem a későbbiekben alapul szolgál bármiféle diszkrétidejű jelen történő feldolgozáshoz is (pl. digitális szűrők alkalmazása). A mintavételezés részletes bemutatását később tárgyaljuk.

2.2. Analóg digitális átalakítás Megfelelő előszűrés és a mintavételi frekvencia meghatározása után a következő lépcső a mintavételezés (mintavétel és mintatartás), majd pedig a kvantálás. Az eszköz, mely e folyamatot hivatott elvégezni, az analógdigitális (A/D) átalakító, vagy A/D konverter (ADC). Amikor pedig elvégeztük a kívánt feldolgozó eljárásokat a digitalizált jelsorozaton, szükséges lehet a jelet újra folytonos, analóg jellé alakítani. Ezt a digitálisanalóg (D/A) átalakító (DAC) teszi lehetővé úgy, hogy a kimeneten digitális jelhez arányos feszültséget vagy áramot állít elő. A következőkben részleteiben is kitérünk az A/D és D/A konverziók lépéseire, illetve jellemzőire. 2.2.1. Mintavétel és tartás (SampleandHold) A mintavételezést a gyakorlatban egy mintavételezőéstartó (S/H) áramkör valósítja meg. A mintavett jel ez után kerül kvantálásra és digitális formára történő konvertálásra. Az S/H áramkört általában közvetlenül az A/D átalakítóba integrálják. Ez a digitálisan vezérelt egység mintegy méri az analóg bemenetet mintavételi módban, majd megtartja azt a pillanatnyi mért szinten mintatartási módban. Ennek jelentősége az analóg jel folytonos mintavétele, majd konstans állapotban való megtartása annyi ideig, amennyire az A/D átalakítónak szüksége van ahhoz, hogy megállapítsa annak digitális értékű megfelelőjét. Az áramkör segítségével az átalakító lassabban üzemelhet, mint a mintavételezés tényleges időigénye, míg annak hiányában a bejövő jel nem változhatna többet, mint egy kvantálási lépcső fele, ami egy igen célszerűtlen megszorítás lenne. Következésképp az S/H folyamatnak döntő szerepe van a nagyfelbontású (12 bit/minta vagy a feletti) digitális jelkonverzióban nagy sávszélesség esetén (azaz, amikor a jel gyors váltásokra képes, hajlamos ). Az ideális mintavételezés során nem lép fel torzítás a jelkonverzióban, mindazonáltal bizonyos időfüggő hatások, mint például a mintavételezési

folyamat periodicitásának hibái ( jitter ), nemlineáris váltások a mintavétel időtartamában,vagy a tartott jel feszültségének változása konverzió közben ( droop ), előfordulnak a gyakorlati megvalósulásokban. 2.2.2. A mintavételezés karakterisztikája; matematikai alapozás Az elsődleges szempont minden átalakító esetében, hogy vane a folyamat során adatveszteség, és ha igen, akkor mekkora, és tolerálható mértékűe? Garantálhatóe továbbá az előírt minőség az adott paraméterekkel? Mintavételezésnél az elsőszámú követelmény eleget tenni a mintavételi tételnek: T MINTAVÉTELI TÉTEL: ha a jel sávkorlátozott : x(f) tartója [B;B], akkor f m = 1/T B esetén xk x(t), azaz nincs információveszteség. Példaként felhozhatjuk a már említett emberi beszédhang digitalizálásának folyamatát, amely esetben, ha csak az érthetőségre törekszünk elegő 3 khzig venni a frekvenciatartományt. Ez azt jelenti, hogy ennek valamivel több, mint kétszeresével kell mintavételeznünk ahhoz, hogy a jel ne szenvedjen információveszteséget, amelyet konkrétan 8 khzes mintavételezéssel oldanak meg. Ha ehhez 8 bites kvantálási felbontást veszünk kiszámítható, hogy az érthető beszéd átviteléhez 64 kbps sávszélességre van szükség. T Shannonféle mintavételi törvény: egy véges energiatartalmú sávkorlátozott jel egyértelműen visszaállítható az x(nt) mintáiból, ha a mintavételi frekvencia a sávkorlát kétszerese, és az interpoláló szűrő karakterisztikája sin(x) / x alakú. 2.2.3. A mintavételezés matematikai modellje Feltételezhetjük, hogy a spektrum egy W körfrekvencia fölött már gyakorlatilag nulla. A sávkorlátot az f B = T/2 frekvenciával vagy az f N = T/

Nyquistfrekvenciával jellemezhetjük. TL=â A sávkorlátozott jel spektrumát a T < t < T tartományban felírhatjuk a Fouriersorával: Ą x Ht, X Źk ă jtk 2 p T k= Ą ahol az együtthatók értéke: x k = 1 Tŕ T 2 T 2 X Ht, TLă jtk 2 p T â t Az időtartományban végzett analízis során azt tapasztaljuk, hogy ha egy folytonos f(t) függvényt t 0 pillanatban megszorzunk egy Diracimpulzussal és ezt integráljuk, akkor megkapjuk az f(t) függvény t0 időpontbeli értékét (mintavételezzük). A Diracimpulzussorozatot szokás fésű (comb) függvénynek is nevezni, definíciója és függvényképe az alábbi: Ą comb =â Ą d Ht ntl A mintavételezett jel időfüggvénye:. Az időtartományban végzett szorzás ekvivalens a frekvenciatartományban végzett konvolúcióval, ám a dhtntḻel való konvolúció Tvel történő eltolást jelent, tehát a mintavett jel spektruma nem más, mint a folytonos Ąâ jel spektrumáról készült másolatok összege: Ą X m HfL= F 8x HtL<=ŕx m HtLă j2pft Ą â â t x Ą =ŕ HnLd Ht ntlă j2pft â t Ąn= Ą Ą X m HtL= x HnLd Hn ntl= ahol: n = Ą...+x(3)δ(t+3T)+x(2) δ(t+2t)+...+x(3) δ(t3t) â =â Ą Ą Ą x HnLŕd Ht ntlă j2pft â t x HnTLă j2pfnt Így: n= Ą Ą n= Ą. F 8x HtL<=

2.2.4. Kvantálás A kvantálás a minták amplitúdójának folytonos értékkészletét diszkrétté alakítja. Az eredeti értékkészletet kvantálási lépcsőkkel intervallumokra osztja. Mindegyik intervallumban kijelöl egy referencia értéket, a kvantálási szintet. Az eredeti pillanatnyi amplitúdóhoz azt a kvantálási szintet reli, amelyik a pillanatnyi amplitúdóval egy kvantálási lépcsőben van. A kvantálási folyamat egyértelműen leírható egy olyan lépcsős függvénnyel, amelynek független változója a kvantálandó függvény, függő változója pedig a kvantált mennyiség. Így tehát a kvantálás egy memóriamentes nemlineáris transzformáció. Ha a kvantálást egy ekvidisztáns szintkülönbségű lépcsős függvény ír le, akkor lineáris kvantálásról beszélünk. A kvantálási lépcsőknek nem kell sem azonosnak sem a nullára szimmetrikusnak lenniük, és az sem szükséges, hogy a kvantálási szintek a kvantálási lépcsők közepére essenek. Ha a kvantálás a nulla ponthoz és környezetéhez a 0 kvantálási szintet reli, akkor a kvantálás nulltartó, ha nincs zérus értékű kvantálási szint, akkor nullkitérő. A kettő között az alapvető különbség az, hogy a jelszünethez a nulltartó kvantálás jelszünetet, a nullkitérő kvantálás pedig hamis jelet rel. Alkalmazható továbbá nemlineáris, például logaritmikus kvantáló is, amely nem egyenletes kvantálási szinteket tartalmaz. Bizonyos esetekben ezzel a megoldással jobb, pontosabb eredményt érhetünk el, ez azonban a bejövő jel és a kívánt felhasználás függvénye. A pillanatnyi amplitúdó és a kvantálási szint különbsége a kvantálási hiba. A kvantált jel tehát az eredeti jel és a kvantálási hiba összegéből áll.

2.2.5. A kvantálás matematikai modellje: c Kvantálás előtti mintavett jel: X n R, Kvantálás utáni diszkrét jel: X^n Q = { 1... 2 } szimbólumkészlet, Kvantálási szintek száma: N = 2 n, ( n = bitszám) Kvantálási szint nagysága: = 2c / N, c Jelenergia: c 2 / 2 Jelzaj arány (SNR): jelenergia / kvantálási hiba energia Mivel a kvantálás = kerekítés, ezért mindenképpen adódik valamekkora mértékű információveszteség. Ez a veszteség a kvantálási hiba, amelynek jelenlétét bele kell kalkulálni a feldolgozás folyamatába. Információveszteség: = x x^, melynek mértéke: / 2 < < / 2, ahol egyenletes eloszlású valószínűségi változó: P (u) = 1 /. A kvantálási hiba energiáját az információveszteség várható értékével adhatjuk meg: E D 2 He 2L=ŕ D 2 u 2 1 D â u = D2 12, ezért: SNR = c 2 2 D 2 12 = 6 c2 D 2. Mivel N = 2c / SNR = 3 / 2 N 2 = 3 / 2 2 2n, n bites kvantáló esetén. 2.2.6. Egyenletes kvantálás Nullkitérő (midtread) karakterisztika kis jelszintek mellett mindent nullára kvantál. Nulltartó (midriser) karakterisztika kis jelszintek esetén nulla körül ingadozik; nagy kvantálási zaj képződik. A kvantálási jel/zaj viszony: s x 2 SNR db Q =10lg s2 e

2.2.7. Logaritmikus kvantálás jel amplitútó kvantálási érték Ezt a fajta kvantálási karakterisztikát leggyakrabban hangjelek digitalizálásánál alkalmazzák, ugyanis tapasztalati ill. kísérleti úton bizonyított, hogy az emberi fül nagyobb jelszintek mellett nagyobb zajszintet tolerál, amely tulajdonságot ez a kvantáló jelentősen kihasznál. A törekvés ezek alapján jelszint független jel/zaj viszony biztosítása. Ennek matematikai alapjai: 2L SNR = E Hx E He 2L, ahol E c Hx 2L=ŕ c Bevezetve l(x) kompresszorfüggvényt: Dy Dx i E =ăi = l' He 2L=âi Hx il, s ekkor értelmezve E( 2 )et: Dx i 2 l' Hx p il2 E He 2Če Î Dx ilp Hx ildx i = Hx ildx i = 4 c2 12 N 2ăi u 2 p HuLâ u, p(u) a minta sűrűsége. l(x) kvantáló a teljes valószínűség tétele miatt: 1 l' Hx p c 1 Hx ildx i = il2 áll.ŕ c l' Hx p Hx ilâ x il2 Azaz: SNR opt = max:áll. c Ů c x 2 p HxLâ x p l' 2 HxL c 1 Ů c HxLâ x>.

Ezt pedig akkor tudjuk maximalizálni, ha l(x) helyére logaritmus függvényt választunk. 2.2.8. Kvantálási hibák Hogy meghatározhassuk a kvantálás hatásait az A/D átalakító teljesítményén, statisztikai megközelítést alkalmazunk. A kvantálási hiba bemeneti jeltől, valamint a kvantáló nemlineáris természetétől való függése nehézkessé teszi a determinisztikus vizsgálódást, kivéve egészen egyszerű esetekben. Statisztikai közelítésben feltételezzük, hogy a kvantálási hiba véletlen természetű. Ezen hibát zajként modellezzük, mely az eredeti (kvantálatlan) jelhez adódik. Amennyiben a bemenő analóg jel a kvantáló tartományában mozog, akkor a kvantálási hiba nagysága korlátozott (azaz < / 2 ), s ekkor szemcsés zajról beszélünk (granular noise). Ha viszont a bemeneti jel kiesik a kvantálási tartományból (clipping), nem lesz korlátolt, s ez túlterhelési zajhoz vezet (overload noise). Az ilyen tipusú hiba igen komoly torzulásokat képes okozni a jelfolyamban. Az egyetlen megoldás, hogy úgy méretezzük a bemeneti jelünket, hogy annak dinamika tartománya beleférjen a kvantálási tartományba. Feltesszük továbbá a következő állításokat statisztikai tulajdonságairól: egyenletes eloszlású a / 2 < < / 2 tartományban. stacionárius fehér zaj folyamat (azaz két különböző állapotbéli hiba korrelálatlan). korrelálatlan az x(n) jelfolyammal. Az x(n) jelfolyam nulla várható értékű, stacionárius folyamat. Ezen feltételezések általában nem állnak fenn, kivéve kis kvantálási lépcsőknél, ill. ha x(n) jelfolyam több kvantálási szintet vált két egymást követő minta között. Ilyen esetekben közelíthetjük a jel/zaj viszonyt a 2.2.7. pont képletei alapján. További hibatípusok: offset hiba

gain hiba nemlinearitás kódkihagyás 2.3. Oversampling A/D átalakítók Az oversampling (túlmintavételező) A/D átalakítók lényege, hogy a mintavételi frekvenciát addig növeljük, amíg alacsonyabb felbontású kvantáló 2 használata is elég. Ahogy már láthattuk, a kvantálási hiba szórása: e = 2 /12, ahol = 2c/2 n. A jel dinamikus tartománya (a legnagyobb amplitúdó pozitív és negatív irányban egyaránt, vagyis 2c) arányos x el, így is arányos x el. Tehát adott bitszám esetén a kvantálási hiba energiája arányos a jel szórásával. Ebből következően adott SQNR esetén a jel szórásának csökkentése a kvantáló bitszáma csökkenthető. A dinamikus tartomány alapötlete vezetett el a differential quantizationhöz. Nézzük meg a jel két egymást követő mintája különbségének szórását: d 2 = E{[x(n)x(n1)] 2 } = 2 x2 [1 xx (1)], ahol xx (1) az x(n) autokorrelációs sorozatának ( xx (m)) m = 1 helyen vett értéke. Megfigyelhetjük, hogy xx (1) > 0.5 esetén d2 < x2, így érdemesebb a különbséget kvantálni és x(n) a különbségek kvantált értékeiből visszaállítani. Az egymást követő minták magasabb korreláltságának érdekében a mintavételi frekvenciának szignifikánsan magasabbnak kell lennie a Nyquist határfrekvenciánál. Egy még jobb megközelítés, ha d(n) = x(n)ax(n1) különbséget kvantáljuk, ahol az a paraméter optimális értékére a következő összefüggés adható: a = xx (1)/ xx (0) = xx (1)/ x2. Ebből d2 = x2 [1a 2 ]. Ebben az esetben d2 < x2, mivel a 0 és 1 közé esik. Az x^(n) = ax(n1) mennyiséget x(n) elsőrű becslésének hívjuk (firstorder predictor). Ebből következően x(n) prű becslése: x^(n) = p k=1 a k x(nk). Ilyen differential predictive jelkvantáló rszereket, amik x(n) becslését x(n) korábbi értékeinek lineáris kombinációjából állítják elő a különbség dinamikus tartománya csökkentésének érdekében, használnak a beszéd kódolására és telefoncsatornákon való továbbítására. Ezt hívják differential pulse code modulationnek (DCPM).

Az ábrán látható elrezés esetén az x q (n) visszaállított kvantált jel hibája megegyezik a d(n) különbség kvantálási hibájával. A differential predictive kvantálás legegyszerűbb fajtája a delta moduláció (DM). Itt egy kétszintes kvantálót és elsőrű becslést alkalmaznak. A DM a bemenő jel lépcsőzetes alakú közelítését adja. Minden mintavételi pillanatban meghatározzák a bemenő jel és a lépcső különbségét, ezután a lépcsőjelet a megfelelő irányban módosítják egy lépéssel. A DM két legjellemzőbb hibája a meredekségi torzítás (slopeoverload distortion) és a granuláris zaj (granular noise). Meredekségi torzítás esetén a jel gyorsabban nő, mint ahogy azt a lépcső követni tudná, lemarad a jelhez képest, hiszen a lépcsőjel csak egy szintet ugorhat. Ez megszüntethető túlmintavételezéssel, de kérdéses, hogy meddig előnyös ez az eljárás az eredetihez képest. A granuláris zaj azt jelenti, hogy konstans jel esetén (ha a jel a lépcsőjel egy szintjén belül mozog) a lépcsőjel két szint között fog váltakozni. A lépcső szintjeinek mérete ( ) alapvető befolyással van mindkét zajra. Növelése csökkenti a meredekségi torzítást, de megnöveli a granuláris zajt és fordítva. Ezen két fajta torzítás csökkentésének egyik lehetséges módja egy integrátor alkalmazása a DM előtt. Ez elsimítja az alacsony frekvenciákat és megnöveli a DMbe bemenő jel korrelációját. Ezen kívül egyszerűsíti a DM dekódert, ami ezáltal egyszerűen egy aluláteresztő szűrőből fog állni. A kódolóban lévő két integrátor helyettesíthető eggyel a komparátor előtt. Ezt a rszert hívják sigmadelta modulációnak (SDM). Leginkább nagy felbontású (12 bit feletti) hagyományos A/D konverterek helyettesítésére alkalmazzák. 1bites kvantálót használ és nagyon magas mintavételi frekvenciát (akár a Nyquistfrekvencia 64 szeresét (pl. Motorola DSP56ADC16)). 2.4. D/A Konverzió A mintavételi tétel értelmében egy sávkorlátozott analóg jel visszaállítható mintáiból információveszteség és torzulás nélkül az alábbi összefüggéssel: x(t) = n=.x(nt) h(tnt). Ez a folyamat egy interpolációs probléma, amire az ideális

interpolációs függvény: h(t) = sin(2 Bt)/ 2 Bt. Tulajdonképpen ez az interpolációs formula h(t) időbeli eltolásainak lineáris szuperpozíciója a megfelelő x(nt) mintákkal súlyozva. Ezt a folyamatot tekinthetjük lineáris szűrésnek is, aminek bemenetén rövid impulzusok diszkrét idejű sorozata található, a mintákkal megegyező amplitúdóval. Az analóg szűrő frekvenciaválasz függvénye: H(F) = T, ha F <= 1/2T és 0, ha F > 1/2T, ami egyszerűen a h(t) interpoláló függvény Fouriertranszformáltja (ami a szűrő impulzusválaszfüggvénye lesz). Az ideális visszaalakító szűrő egy ideális aluláteresztő szűrő lesz, aminek impulzusválasza nem véges. Tehát a szűrő nem kauzális és fizikailag nem megvalósítható. A gyakorlati D/A konverzió során a tulajdonképpeni D/A átalakítást egy Sampleandhold és egy aluláteresztő szűrő követi. A D/A konverter egy bináris szónak megfelelő elektromos jeleket kap a bemenetén és a szónak megfelelő feszültséget vagy áramot állít elő a kimenetén. A D/A átalakító egyik fontos paramétere a settling time, ami a kódszó betáplálása és a kimeneten megjelenő végső érték (korlátolt mértékű (általában + ½ LSB) ingadozással) megjelenése között eltelt időt jelenti. A kimenet gyakran egy nagy impedanciájú állapot. Ez abban az esetben fordul elő, ha két egymást követő kódszó néhány bitben különbözik. Ezen probléma kiküszöbölésére használnak a D/A konverter után egy mintavételező és tartó egységet (S/H). Feladata a konverter előző értékének tartása, amíg az új minta a konverter kimenetén eléri a steadystate állapotot. Ekkor ezt mintavételezi és tartja a következő mintavételi időintervallumban. Így a S/H az analóg jelet téglalap alakú impulzusok sorozataként közelíti, amik magassága megegyezik a megfelelő jel értékével. Mivel a S/H frekvenciakarakterisztikájának nincs egy éles levágása, sok átfedő (F m /2nél nagyobb frekvenciájú) komponens jelenik meg a kimenetén. Ennek kiküszöbölésére általában egy aluláteresztő szűrőn megszűrik a jelet, ami jelentősen csillapítja az F m /2nél magasabb frekvenciájú komponenseket. Ezen kívül simítja is a jelet az éles diszkontinuitások eltávolításával.

Az előbb tárgyalt S/Hon kívül a jel visszaállításának egy másik lehetséges módja az elsőrű tartó alkalmazása. Az elsőrű tartó az x(t) jelet a jelenlegi x(nt) minta és a megelőző x(ntt) minta alapján közelíti: x^(t) = x(nt) + ((x(nt) x(ntt))/t) * (tnt), ahol nt <= t < (n+1)t. Lineáris szűrőként nézve az elsőrű tartó impulzusválasza: h(t) = 1+ t/t, ha 0<=t<=T, 1 t/t, ha T<=t<2T és 0 egyébként. Mivel ez a visszaállítási technika is torzít az Fm/2nél nagyobb frekvenciájú komponensek átengedése által, itt is szükséges aluláteresztő szűrő használata. Az elsőrű tartó a jelenlegi és egy múltbeli mintát használ a jel visszaállítására. Ezekből megpróbálja lineárisan becsülni a következő mintát. Ennek eredményeképpen a becsült jel hullámformájában a mintavételi pontoknál ugrások vannak. Ezek az ugrások elkerülhetők egy egymintás késleltetés alkalmazásával. Így az interpolált jel: x^(t) = x(ntt) + ((x(nt) x(nt T))/T) * (tnt), ahol nt <= t < (n+1)t. Megfigyelhetjük, hogy a jel visszaállításában T idejű késleltetés van. Lineáris szűrőként tekintve az impulzusválasz: h(t) = t/t, ha 0<=t<=T, 2 t/t, ha T<=t<2T és 0 egyébként. A frekvenciaválaszból látszik, hogy a nagysága gyorsan leesik és csak kis hullámokat tartalmaz az Fm mintavételi frekvencián túl. Egy aluláteresztő szűrő alkalmazásával a magas frekvenciás komponensek tovább csökkenthetők. 2.5. Oversampling D/A Konverterek A túlmintavételező D/A konverter két részre osztható: egy digitális és egy azt követő analóg részre. A digitális rész egy interpoláló szűrőből és egy sigmadelta modulátorból áll. Az interpolátor megnöveli a digitális mintavétel gyakoriságát az egymást követő ritka minták közé nullákat illesztve. Ezt a jelet egy B/F m levágási frekvenciájú digitális szűrőn megszűrik, hogy elkerüljék a bemeneti jelspektrum ismétlődéseit. Ezt a gyakoribb jelet táplálják az SDMbe, ami 1bites mintákat generál. Minden 1bites mintát az analóg részben található 1bites D/A konverterbe táplálnak, aminek kimenetén megjelenő jelet átengedik az analóg részt alkotó másik egységen, az analóg antialiasing és

simító szűrőn. Ezek a szűrők a nulla és B közötti frekvencián sáváteresztőként működnek, viszont a B és F m /2 közötti frekvenciákon simítják a jelet és eltávolítják a kvantálási hibát. Gyakrolatban az oversampling D/A és A/D átalakítóknak sok előnye van a hagyományosabb D/A és A/D konverterekkel szemben. Először is, a magas mintavételi frekvencia és a digitális szűrés mellett nincs szükség bonyolult és drága analóg antialiasing szűrőkre. Továbbá a konverzió során fellépő analóg zajok kiszűrődnek. Ezen kívül nincsen szükség S/H áramkörökre. Az oversampling SDM A/D és D/A átalakítók nagyon szilárdak az analóg áramköri paraméterek változásaira, természetüknél fogva lineárisak és olcsók.

FÜGGELÉK 1. ábra Mintavételezés 2. ábra Lineáris kvantálás és annak karakterisztikája

3. ábra Logaritmikus kvantáló és karakterisztikája 4. ábra D/A átalakítás kis pontossággal

Függvények MatLab forráskódja function f = sampler(x_in,sf) SAMPLER Sampler function Usage: sampler(x,sf) where x = input vector Sf = sampling frequency error(nargchk(2,2,nargin)); if size(x_in,1) > size(x_in,2), dim=size(x_in,1); else dim=size(x_in,2); ii=1; for iv=1:sf:dim, f(ii)=x_in(iv); ii=ii+1; subplot(2,1,1), plot(x_in), title('original analog signal'), xlabel('time'), ylabel subplot(2,1,2), plot(f), title('digitized signal'), xlabel('time'), ylabel EOF SAMPLER.M function f = spectrum(x_in) SPECTRUM 512point spectrum function Usage: spectrum(x) where x = input vector error(nargchk(1,1,nargin)); if size(x_in,1) > size(x_in,2), dim=size(x_in,1); else dim=size(x_in,2); N=512; Y=fft(x_in,N); Pyy=Y.*conj(Y)/N; f=1000*(0:n/2)/n; subplot(2,1,1), plot(x_in), title('original signal'), xlabel('time'), ylabel subplot(2,1,2), plot(f,pyy(1:257)), title('the spectrum of the signal'), xlabel ('frequency (Hz)'); EOF SPECTRUM.M function max = quantizer(x_in,bn) QUANTIZER Quantizer function Usage: quantizer(x,bn) where x = input vector bn = bit number (quantization resolution) error(nargchk(2,2,nargin)); if size(x_in,1) > size(x_in,2), dim=size(x_in,1); else dim=size(x_in,2);

maximális amplitúdó keresése max=0; for iv=1:dim, if abs(x_in(iv)) > max max = abs(x_in(iv)); N=2^bn; delta=(2*max)/(n1); for iv=1:dim, diff=max; for ii=0:n, if abs(x_in(iv)(maxii*delta)) < diff diff=abs(x_in(iv)(maxii*delta)); e(iv)=diff; f(iv)=maxii*delta; for ik=0:n1, k(ik+1)=maxik*delta; subplot(321), plot(x_in), title('original sampled signal'), xlabel('time'), ylabel subplot(322), plot(f,'r'), title('quantized signal'), xlabel('time'), ylabel subplot(323), stem(f), title('quantized signal'), xlabel('time'), ylabel subplot(324), stem(k), title('quantization characteristic'), xlabel('time'), ylabel subplot(325), plot(x_in), title('quantization error characteristic'), xlabel('time'), ylabel hold on; plot(f,'r'); hold off; subplot(326), stem(e), title('quantization error'), xlabel('time'), ylabel EOF QUANTIZER.M function f = logquantizer(x_in,bn) LOGQUANTIZER Logquantizer function Usage: logquantizer(x,bn) where x = input vector bn = bit number (quantization resolution) error(nargchk(2,2,nargin)); if size(x_in,1) > size(x_in,2), dim=size(x_in,1); else dim=size(x_in,2); maximalis amplitudo keresese max=0; for iv=1:dim, if abs(x_in(iv)) > max max = x_in(iv); for ii=0:2^(bn1)1, level(ii+1)=max*(1/(2^ii)); for ii=0:2^(bn1)1, level(2^bnii)=max*(1/(2^ii)); for iv=1:dim, diff=max; if x_in(iv)>0, for ii=1:2^(bn1), if abs(x_in(iv)level(ii)) < diff,

diff=abs(x_in(iv)level(ii)); e(iv)=diff; f(iv)=level(ii); else for ii=0:2^(bn1)1, if abs(x_in(iv)level(2^bnii)) < diff, diff=abs(x_in(iv)level(2^bnii)); e(iv)=diff; f(iv)=level(2^bnii); subplot(321), plot(x_in), title('original sampled signal'), xlabel('time'), ylabel subplot(322), plot(f,'r'), title('quantized signal'), xlabel('time'), ylabel subplot(323), stem(f), title('quantized signal'), xlabel('time'), ylabel subplot(324), stem(level), title('quantization characteristic'), xlabel('time'), ylabel subplot(325), plot(x_in), title('quantization error characteristic'), xlabel('time'), ylabel hold on; plot(f,'r'); hold off; subplot(326), stem(e), title('quantization error'), xlabel('time'), ylabel EOF LOGQUANTIZER.M function f = zoh(x_in,t) ZOH Zeroorder hold function Usage: zoh(x,t) where x = input vector t = period time error(nargchk(2,2,nargin)); if size(x_in,1) > size(x_in,2), dim=size(x_in,1); else dim=size(x_in,2); for ii=1:dim, summa=0; for in=1:dim, if in>=ii, h=0; else h=sin((pi/t)*(iiin))/((pi/t)*(iiin)); G=x_in(in)*h; summa=summa+g; f(ii)=summa; for iv=1:sf:dim, f(ii)=x_in(iv); ii=ii+1; subplot(211), plot(x_in), title('original analog signal'), xlabel('time'), ylabel subplot(212), plot(f), title('digitized signal'), xlabel('time'), ylabel EOF ZOH.M function f = lpf(x_in,lk,fs) LPF Lowpass filter function Usage: lpf(x,fs) where x = input vector lk = lépésköz Fs = period time

error(nargchk(3,3,nargin)); if size(x_in,1) > size(x_in,2), dim=size(x_in,1); else dim=size(x_in,2); X=fft(x_in,dim); v=(1:dim)/dim*(dim*lk); w=(1:dim/2)/(dim/2)*(1/(2*lk)); u=(1:fs); for ii=1:dim, if ii>fs/2, h(ii)=0; else h(ii)=1/fs; F=h.*abs(X); f=ifft(f); subplot(321), plot(v,x_in), title('original analog signal'), xlabel('time'), ylabel subplot(322), plot(w,abs(x(1:floor(dim/2)))), title('original signal in frequency domain'), xlabel('frequency'), ylabel subplot(323), plot(u,abs(h(1:floor(fs)))), title('lowpass filter'), xlabel('frequency'), ylabel subplot(324), plot(w,abs(f(1:floor(dim/2)))), title('filtered signal'), xlabel('frequency'), ylabel subplot(325), plot(v,f), title('reconstructed analog signal'), xlabel('time'), ylabel EOF LPF.M function f = lpf2(x_in,lk,fs) LPF2 Lowpass filter function Usage: lpf2(x,fs) where x = input vector lk = lépésköz Fs = period time error(nargchk(3,3,nargin)); if size(x_in,1) > size(x_in,2), dim=size(x_in,1); else dim=size(x_in,2); X=fft(x_in,dim); v=(1:dim)/dim*(dim*lk); w=(1:dim/2)/(dim/2)*(1/(2*lk)); u=(1:fs); [b,a]=ellip(1,0.5,20,0.99); [H,r]=freqz(b/Fs,a,512); f=filter(b/fs,a,x_in); F=fft(f,dim); subplot(321), plot(v,x_in), title('original analog signal'), xlabel('time'), ylabel subplot(322), plot(w,abs(x(1:floor(dim/2)))), title('original signal in frequency domain'), xlabel('frequency'), ylabel subplot(323), plot(r*fs/(2*pi),abs(h)), title('lowpass filter'), xlabel('frequency'), ylabel subplot(324), plot(w,abs(f(1:floor(dim/2)))), title('filtered signal'), xlabel('frequency'), ylabel subplot(325), plot(v,f), title('reconstructed analog signal'), xlabel('time'), ylabel EOF LPF2.M Felhasznált irodalom Levovszky János: Digitális jelfeldolgozás, órai jegyzetek Gyimesi E: Mintavételezés, kvantálás, kódolás Kalotay Béla: Audio jelek digitalizálása és tömörítő kódolása