Digitaalne signaalitöötlus

Digitaalne signaalitöötlus ehk digitaalsignaalitöötlus (ingl "digital signal processing", lühendina DSP) on info- ja kommunikatsioonitehnoloogia valdkond, mis pakub teooriat, meetodeid ja vahendeid digitaalsignaalide analüüsiks ja töötlemiseks. Tänapäeval põhinevad peaaegu kõik pildi, heli ja video salvestamise, ülekandmise ja säilitamise meetodid digitaalsel signaalitöötlusel.
Ajalugu.
Alates teisest maailmasõjast, kui mitte varem, on teadlased spekuleerinud digitaalsete tehnikate rakendamisele signaalitöötlusel. Näiteks 1940. aastate lõpus arutlesid C. Shannon, H. Bode ja teised teadlased firmast Bell Telephone Laboratories võimaluse üle kasutada digitaalsete elektriahelate elemente filtreerimise eesmärgil. Kuid sel ajal polnud sobivat riistvara saadaval, sest hind, suurus ja vastupidavus soosis traditsioonilisi analooglahendusi.
1950. aastate keskel arutles Massachusettsi Tehnoloogiainstituudi professor J. Linvill magistriseminarides digitaalse filtreerimise teemal. Selleks ajaks oli kontrolliteooria, osaliselt W. Hurewiczi töödel põhinev, kehtestatud eraldiseisva teadusharuna ning diskreetimine ja selle mõju spektrile oli hästi mõistetud. Elektroonikainsenerid hakkasid kasutama mitmeid matemaatilisi meetodeid, näiteks z-teisendust. Kuid tol ajal suutis tehnoloogia töödelda ja kontrollida vaid madalsageduslikke signaale. Kuigi seismoloogid kasutasid probleemide lahendamiseks digitaalse filtri kontseptsioone, ilmus rangem DSP teooria alles 1960. aastatel. Sel perioodil tegi ränipõhiste integraalskeemide tehnoloogia tulek võimalikuks terviklikud digitaalsed süsteemid, kuigi need olid kallid.
Esimese suure panuse digitaalsete filtrite sünteesimisse andis J. Kaiser. Tema uurimistööd näitasid, kuidas disainida kasulikke filtreid, kasutades bilineaarset teisendust (BLT). Umbes 1965. aastal avaldati J. W. Cooley ja J. Turkey tänapäeval tuntud teadustöö, mis käsitles kiiret Fourier' teisendust (FFT): viisi, kuidas efektiivselt ja kiiresti teha diskreetset Fourier' teisendust (DFT). Sel ajal töötati välja riistvara, mis sobis paremini digitaalsete filtrite rakendamiseks, ja ilmusid müüki taskukohased integraalskeemid.
DSP jaoks tehti teed rajavaid pingutusi neljas valdkonnas. Radar ja sonar, kus riiklik julgeolek on ohus; naftamaardlate otsimine, kus on võimalik teenida suuri summasid; kosmoseuuringud, kus andmed on asendamatud, ja meditsiiniline piltdiagnostika, mille abil on võimalik inimeste elusid päästa.
Personaalarvutite revolutsioon 1980. ja 1990. aastate alguses põhjustas DSP rakenduste suurema leviku. DSP arengut hakkasid juhtima enam mitte sõjaväe ja riigi vajadused, vaid kaubanduslik eesmärk. Paljud firmad nägid kiiresti arenevas DSP valdkonnas võimalust hästi teenida. DSP jõudis inimesteni mobiiltelefonides, CD-mängijates ja elektroonilises kõnepostis.
Esimese eraldiseisva kiibi (12-bitine S2811), mis oli spetsiaalselt DSP jaoks disainitud, andis välja American Microsystems Inc. (AMI) 1978. aastal. Kuigi see põhines väga uuenduslikul skeemidisainil, ei saavutanud see suuri müüginumbreid. Sellega sai hakkama NEC µPD7720, mis oli helispektris töötamiseks piisavalt kiire ja efektiive.
Ülevaade.
Üldist digitaalset signaalitöötlust illustreerib ülaltoodud lihtsustatud plokkskeem, mis koosneb analoogfiltrist, analoog-digitaalmuundurist (ADC), digitaalse signaali (DS) protsessorist, digitaal-analoogmuundurist (DAC) ja taastavast ("anti-image") filtrist. Analoogahelal põhineva signaalitöötluse korral tugineb töötlus sellistel elektroonikakomponentidel nagu takistid, kondensaatorid, transistorid, operatsioonivõimendid ja integraalskeemid.
Jooniselt on näha, et enamasti on looduses esinevad signaalid analoogsignaalid, st ajas ja amplituudis pidevad. Sellised on näiteks voolutugevus, pinge, temperatuur, rõhk ja valguse intensiivsus. Mitteelektrilise signaali muundamiseks elektrisignaaliks (pingeks) kasutatakse andurit. Saadud analoogsignaal filtreeritakse madalpääsfiltriga, et eemaldada Nyquisti sagedusest kõrgemad sagedused (vt Nyquisti-Shannoni diskreetimisteoreem). Filtreerimise eesmärk on vähendada spektraalset kattuvust ("aliasing"), mille korral ei teki analoogsignaaliks tagasi muundamisel korrektne signaal. ADC muundab analoogsignaali digitaalseks signaaliks, mis on ajas ja amplituudis diskreetne. DS-protsessor töötleb saadud andmeid vastavalt soovitule digitaalse madal-, kõrg-, ribapääsfiltri või mõne muu algoritmi alusel. Edasi muundatakse töödeldud signaal analoogsignaaliks, mis on ajas pidev, kuid amplituudis diskreetne. Selleks, et siluda DAC poolt väljastatava signaali pinget, kasutatakse taastavat filtrit.
Mitmetel DSP rakendustel (andmete kogumine, digitaalse informatsiooni kuvamine, kõnetuvastus, andmete kodeerimine jne) pole vaja digitaalsignaali analoogsignaaliks tagasi muundada, seepärast pole ka vaja DAC-d. Samamoodi on rakendusi, kus pole vaja ADC-d: CD-mängijad, kõnesüntees, digitaalsed heligeneraatorid jt.
Digitaalsed filtrid.
Filtrite põhitõed.
Digitaalne filtreerimine on DSP üks kõige tähtsamaid osi. Seda kasutatakse peamiselt kahel eesmärgil: ühinenud signaalist kindla signaali eraldamiseks või moondunud signaali taastamiseks. Ka analoogfiltreid on võimalik samade ülesannete jaoks kasutada, kuid digitaalsed filtrid annavad ülekaalukalt paremaid tulemusi. Signaali eraldamist on vaja siis, kui signaal on rikutud müra, interferentsi või teiste signaalide poolt. Näiteks kui elektrokardiogrammiga mõõdetakse ema üsas oleva beebi südametööd, on vaja saadud signaalist eraldada ema hingamise ja südametöö poolt põhjustatud signaalid. Signaali taastamist kasutatakse moondunud signaali korral, näiteks heli salvestamisel vigasest seadmest tulnud müra eemaldamiseks.
DSP puhul on tavaliselt filtri sisend ja väljund aegesituses, sest digitaalseid signaale luuakse analoogsignaalist ühtlaste ajavahemike tagant lugemeid võttes. Kuid see ei ole ainuke diskreetimise viis. Teine levinud viis on diskreetida ühtlaste intervallide tagant ruumis. On olemas ka teisi esitusi, kuid need kaks on levinumad
Igal lineaarsel filtril on impulss-koste, sageduskarakteristik ja samm-koste. Need sisaldavad täielikku informatsiooni filtri kohta, kuid erineval kujul. Kui üks kolmest on määratletud, siis on võimalik teist kahte arvutada. Kõik kolm esitust on tähtsad, kuna need kirjeldavad filtri toimet erinevates olukordades.
Filtrite teostamine.
Kõige lihtsam viis digitaalse filtri teostamiseks on teha konvulsioon sisendsignaali ja filtri impulss-koste vahel. Konvulsiooni korral arvutatakse iga väljund sisendilugemite kaalumisel ja liitmisel. Sel viisil tehakse kõikvõimalikud lineaarsed filtrid. Sel juhul nimetatakse filtri impulss-kostet filtri kerneliks. Teine filtri loomise viis on rekursiivne. Rekursiivsed filtrid kasutavad väljundi arvutamiseks lisaks sisendlugemitele ka eelnevaid väljundlugemeid ja neid iseloomustab rekursiooni tegurite hulk.
Filtri impulss-koste teada saamiseks piisab sellest, kui filtri sisendisse anda impulss ja vaadata väljundit. Rekursiivsete filtrite impulss-koste koosneb eksponentsiaalselt kahanevate amplituudidega sinusoididest, mis teeb nende impulss-koste põhimõtteliselt lõpmatult pikaks. Selle eripära tõttu kutsutakse neid ka lõpmatu impulss-kostega (IIR) filtriteks. Konvulsiooni kasutavaid filtreid kutsutakse aga vastupidi – lõpliku impulss-kostega (FIR) filtriteks.
Aeg- ja sagedusesitlus.
Ükskõik millise DSP ülesande puhul tuleb esmalt mõista, mis kujul on informatsioon signaalis. On eri viise, kuidas signaal võib informatsiooni kanda, eriti inimeste poolt loodud signaalides: amplituudmodulatsioon, sagedusmodulatsioon, PCM, PWM jne. On aga vaid kaks viisi, mis on tüüpilised looduslikele signaalidele: aegesituses sisalduv info ja sagedusesituses sisalduv info.
Aegesitus näitab, millalgi midagi toimub ja selle sündmuse amplituudi. Näiteks rõhu mõõtmine iga sekundi tagant. Iga lugem annab infot rõhu suuruse kohta ja on tõlgendatav ka üksiklugemina. Sagedusesituses sisalduv info ei ole nii otsene. Informatsioon sisaldub signaali eri punktide omavahelises vahekorras. Üksiklugem ei sisalda informatsiooni perioodiliste liikumiste kohta.
Filtri disainimisel tuleb otsustada, kummas esituses paremat jõudlust soovitakse. Mõlemaks korraga filtrit optimeerida ei saa.
Filtrite liigitus.
Ülaltoodud joonis võtab kokku digitaalfiltrite liigitamise kasutuse ja täideviimise järgi. Kasutusvaldkonnad saab jagada kolmeks kategooriaks: aegesitus, sagedusesitus ja kohandatud. Aegesituse puhul on informatsioon signaali kujus ja filtrit kasutatakse signaalis silumiseks, alalisvoolu eemaldamiseks, signaali kuju muutmiseks jne. Sagedusesituse filtreid kasutatakse kindlate sageduste eraldamiseks spektrist. Kohandatud filtreid kasutatakse keerulisemate ülesannete jaoks, näiteks dekonvulsiooniks (soovimatu konvulsiooni eemaldamiseks).
Filtrite teostamise viisid on järgmised: 
Konvolutsiooni kasutavad filtrid võivad olla suurema jõudlusega, kuid on aeglasemad.
Rakendusvaldkonnad.
DSP rakendusvaldkondi võib üldjoontes jagada kaheks. Esimese jaotuse hulka kuuluvad rakendused, mida on võimalik implementeerida kasutades analoogtehnikat, ent kus DSP kasutamine suurendab jõudlust märgatavalt. Teise jaotusesse kuuluvad rakendused, mida ei ole võimalik ilma DSP-d kasutamata luua.
Mõned konkreetsed näited eri valdkondadest: