Bevezető előadás Mikrórendszerek összahasonlítása.DSP bevezető A DSP (Digital Signal Processor) mikrórendszer a világon a legelterjedtebb beágyazott rendszerben használt processzor. A DSP tulajdonságok bemutatása előtt nézzük át a mikróprocesszoros rendszerek tulajdonságait és fejlődését. Néhány bevezető fogalom ismertetése: − Mikróprocesszor(µP) − Mikrószámítógép − Mikrókontroller(µC) − Digitális jelfeldolgozó processzor (DSP) − Digitális jelfeldolgozó kontroller (DSC) A mikróprocesszor – mikrószámító eszköz központi egysége, fontosabb tulajdonságok: − Két architektúra létezik § Von Neumann § Harvard − Von Neumann architektúra: § Közös memória a kód és az adat tárolására § Közös kód és adat sin § Példa Intel 80x86 − Harvard architektúra: § Külön adat és kód - memória § Két különböző adat és kód – sin − A mikróprocesszor egymagában nem tud működni, szüksége van külső egységekre (például memória) A mikróprocesszor egyszerű szekvenciális végrehajtásra épül, kiolvassa a kódmemóriából az utasítást, kiolvassa az operandusokat az adatmemóriából, elvégzi a műveletet, és az eredményt visszaírja az adatmemóriába. A következő ábrán a mikróprocesszor alapegységeit látjuk: − A sínrendszer kezelő egység – a fő feladata a külső memória megcímzése egy egyirányú címbusz, egy kétirányú adatbusz és egy kétirányú állapott sinen keresztül. Az utasítást az utasításlistába fűzi, tehát előkészíti a következő utasítást. − Az utasítás dekodoló egység kiolvassa az utasításlistából az utasítást, dekódolja, majd beteszi a következő listába. − A központi végrehajtó egység elvégzi a műveletet, beolvassa a sínkezelő egységen keresztül az operandusokat.
− A művelet végrehajtása utána a címgeneráló egység utasítást kap a következő utasítás címének kiszámítására.
A fent bemutatott egyszerűsített működés az alapelvek felelevenítését szolgálja, mélyebben majd a DSP-t tárgyaljuk. Mikrószámítógép – a mikróprocesszor, a memóriák és a perifériák együttese
Amint az ábrán látható a mikrószámítógép az adatmemóriából, a kódmemóriából, időzítő-számláló, digitális bemenetek, analóg ki-bemenetekből áll. Tipikus számítógép perifériák: − Digitális ki-bemenetek − Analóg ki-bemenetek − Időzítő-számláló − PWM kimenet − Capture bemenete − Kommunikációs egységek: § SPI interfész § SCI – UART interfész § CAN interfész § IIC § LAN, WAN § USB § Stb… − Grafikus kártyák − Stb… A mikrókontroller – egy mikrószámítógép egy chip-en. Rendelkezik perifériákkal, belső és külső memóriával, önállóan tud működni. Mivel a mikrókontroller egy megcékzott feladattipusra vagy osztályra van kifejlesztve nagyon sok fajtája létezik (emlékezzetek a PIC családra a legegyszerűbb 12C508 – tól a 18F254-ig). Tulajdonságok: − 4, 8, 16, 32, 64 bites mikrókontrollerek léteznek(mit jelent a szám?) − mindkét processzor architektúra megtalálható − több mint 200 fajta különböző mikrókontroller család létezik − egy modern autóban közel 80 mikrókontroller található A mai mikróvezérlők már sok tekintetben meghaladták az első generációs DSPket, vannak olyan mikróvezérlők amik 100Mhz feletti órajellel működnek. A nagy előnyük a perifériák, de nem rendelkeznek néhány elemi tulajdonsággal, amit a DSP rendszer megkíván. Ezt próbálta pótolni a Microchip a dsPIC családdal.
A digitális jelfeldolgozó processzor DSP – a mikróprocesszórhoz hasonlítható, tehát egy mikrószámítógép központi egysége, de kibővítve néhány funkcióval, ami a párhúzamos processzálást, gyors műveletvégrehajtást biztosít: − Hardware szorzó − Több sínrendszer a párhúzamos adatmozgatás miatt − Hardware shifter – 2n – el való szorzás és osztás elvégzése − MAC – Multilpy And Accumulate Tipikus DSP műveletek
Amint látjuk minden DSP művelet szorzást és összeadást tartalmaz, ezt oldja meg a MAC egy órajel ciklus alatt. Hardware szorzás és mikrókód szorzás:
Tehát a hardware szorzó egy ciklus alatt elvégzi a szorzást, míg egy mikróprocesszor annyi ciklus alatt amekkora az operandus plusz egy ciklus az összeadás. A digitális jelfeldolgozó kontroller – egy DSP és perifériák egy chipen. Ezeket főleg folyamatirányítási feladatokra fejlesztették ki, ilyen a Texas C2000-es családja valamint a dsPIC. Miért használunk DSP-t és nem egy nagy kapacitású mikróprocesszort: − Mert a fogyasztása sokkal alacsonyabb − Mert a méretei sokkal kisebbek − Mert olcsóbb − Mert feldolgozhatunk nagyobb frekvenciájú jeleket Mikor használunk mikróprocesszort: − Amikor memóriaigényes feladatot oldunk meg − Fejlett operációsrendszert akarunk használni Nem elhanyagolható a valósidős jelfeldolgozás sem, mit értünk valósidős jelfeldolgozás alatt? A valósidős kifejezés a feladattól függ, például egy 100 elemes FIR szűrő végrehajtása akkor valósidős, ha két mintavétel között a DSP elvégzi a következő műveletet:
Másképpen: Valós Idős Feldolgozás ha a várási idő pozitív.
Texas Instruments DSP családok:
A Texas Instruments a vezető DSP gyártó a világon, ez a következő piaci részesedést mutató grafikonon is láthatjuk:
Microchip DSC család: