Tervezése és optimalizálása jelfeldolgozás az agykéregben-m4

Mivel a hiánya a frekvenciatartomány válik érzékelhetővé, hogy szükség van a gondos használat növekszik. Ilyen körülmények között fenn kell tartani a magas szintű spektrális hatékonyságot az egész frekvenciasávban elkülönített földfelszíni vezeték nélküli szolgáltatások. A cikk bemutatja a feldolgozására szolgáló eljárást egy digitális RF jelet (RF DSP), hatékonyan alkalmazható egy kiszámíthatatlan zaj körülmények között.

A meglévő különböző mikrokontrollerek (MC) könnyen elvész. A cikk bemutatja a komplex módszer kiválasztása a megfelelő modellt. A gyakorlati példák, és a táblázat a fő jellemzői a MC.

Harvard architektúra

Cortex-M4 processzor épül a Harvard architektúra, amelyet az jellemez, a jelenléte külön utasítás és adat buszok. Az a képesség, hogy Cortex-M4 egyidejű olvasási utasításokat és adatokat a memóriából, hogy képes végrehajtani számos művelet párhuzamosan, amely felgyorsítja a végrehajtását alkalmazásokat. 32 bites busz AMBA AHB-Lite ICode lehívja utasításokat a kód memória területet, és a 32 bites busz AMBA AHB-Lite DCode hozzáfér az adatokat a kód memória terület. Periféria busz hozzáférés biztosítása komponensek kívül rendszer Cortex-M4 processzor.

8 és 16 bites adattípusok

Cortex-M4 32 bites adatnyilvántartások. Sok jelfeldolgozó alkalmazások manipulálni 8 és 16 bites adatok mintákat. 32 bites regiszterek növelheti a termelékenységet annak a ténynek köszönhető, hogy képes tárolni két 16 bites vagy négy 8 bites adat minta és dolgozni az ilyen adatok formátumokat.
Cortex-M4 processzor széles skáláját kínálja a SIMD-funkciók (Single Instruction, Multiple Data - egy utasítás több adat) végrehajtásának biztosítására ilyen algoritmusok a minimális számú CPU. Használata SIMD-függvények numerikus műveleteket lehet egyszerre alkalmazni a két 16 bites vagy négy 8 bites érték.

SIMD-aritmetikai

Cortex-M4 processzor aritmetikai műveletek csomagolt, 8 és 16 bites adatok. Különböző megvalósítási módjai ezeket a parancsokat a 3. táblázat mutatja Vannak más nagy parancsokat, amelyek lehetővé teszik a változás a második felében szó operandus regiszter és különböző műveleteket fél szavakkal. Vannak olyan parancsok is hozzátéve, a különbség jel nélkül, amely képes együttműködni a képpont adatok és nagyon hasznos alkalmazásokat, mint a számítás a pálya.

3. táblázat számtani SIMD-üzemeltetés processzor Cortex-M4

Matematikai műveletek cutoff

Az értékek az adatok minta a jelfeldolgozó algoritmusok fix pont kell maradnia világosan meghatározott körének számokat. Ha a számok túl kicsi, a hatás a kvantálási zaj csökkenti a teljesítményt. Ha a számok túl magas, akkor lehetőség van a túlfolyó. Algoritmusok fix pontot, és gondosan skálázás szinte mindig célja egy az esetlegesen túlfolyó bizonyos feltételek mellett. A szabványos integer túlcsordulás kezeli a lehető legrosszabb módon: ciklikus kezelést végzünk, hogy az érték a minta túlfolyó vezet zavar a folytonosság jelet. Ahhoz, hogy csökkentsék ezt a hatást a Cortex-M4 processzor matematikai műveleteket építménnyel. Amikor a minta érték túlcsordul, akkor nyírni a legnagyobb pozitív vagy negatív értékeket. Cutoff fordul elő ugyanabban a ciklusban, mint a számtani művelet, és nem foglalja magában a felső (lásd. Ábra. 3.).

Tervezése és optimalizálása jelfeldolgozás az agykéregben-m4

Ábra. 3. jelfeldolgozó cutoff

Barrel ciklikus eltolás eszköz

Shift műveleteket is nagyon gyakori a DSP-fixpontos algoritmusok. Az eltolás használunk, például annak érdekében, hogy további védelmet túlcsordulás bit. A legtöbb eszköz általában elmozdulás érték egy kicsit balra vagy jobbra, de gyakran csak repetitív műszakban üzemel. A processzor Cortex-M4 van kialakítva a műszak adatok tetszőleges számú bit balra vagy jobbra egy ciklusban, amely javítja a hatékonyságot a kódot.

Végrehajtása a hardvert az MC, ami nem lesz könnyű és kényelmes a használata, egy haszontalan dolog. Könnyű programozás elengedhetetlen a gyors fejlődés a nagy teljesítményű hardver. Az évek során kísérletet tettek, hogy mikrokontroller technológiát elérhetővé a tömeges piacra segítségével egy nagyon könnyen kezelhető szoftver fejlesztési eszközök építési összetett alkalmazások. Cortex-M4 processzor és a hozzá tartozó szoftver támogatja az ökoszisztéma is javítását célzó könnyű használat elvének létrehozásakor jelfeldolgozó funkciók, amelyek hagyományosan nehéz megvalósítani.

Szoftverfejlesztő eszközök

Integrált funkciók Cortex-M4 processzor jelfeldolgozó egyszerűsítése fejlesztése alkalmazás szoftver segítségével egy csomag feldolgozása eszköz szerszámok képest architektúrák, amelyben külön kérelmet processzorokat használnak együtt programozható DSP gyorsítók vagy fix funkciókat. Egységes fejlesztési eszköz között felgyorsítja time-to-market, mert a szoftver egyre fontosabb szerepet a fejlesztés a rendszer.
Sok nagy teljesítményű működés Cortex-M4 jelfeldolgozó processzor javítható a fordító. Ha azt szeretné, hogy optimalizálja a kódot, C fordító támogatást nyújt beépített funkciók végrehajtására az alacsony szintű műveletek assembly nyelven. Beépített funkciók lehetővé teszik, hogy maximálisan kihasználja az összes lehetőséget a programozás assembly nyelven C nyelven fejlesztőkörnyezet és ugyanabban az időben, hogy ne a bonyolultsága assembly kóddal.

Szoftver Interfész Szabvány MK Cortex (CMSIS)

szabványok általánosan használt annak érdekében, hogy javítsák a termékek minőségét és azok széles körű alkalmazását a különböző projektekben. Az elektronikai iparban van egy csomó ilyen szabványok, de a piacon sok MK márkás processzor architektúrát, amelyben lehetetlen alkalmazni a hatékony alapprogram. Ez a helyzet gyorsan változik, elsősorban a gyors bevezetése processzorok ARM Cortex-M. Ez az első alkalom az ipar beágyazott MC megvan a képessége, hogy egységesítsék egyetlen hardver platform népszerű.
ARM cég létrehozott egy szabványos MK Cortex (Cortex mikrokontroller szoftver interfész Standard - CMSIS) szoftver interfész, amely lehetővé teszi a félvezető gyártók és a beszállítók a firmware olyan szoftver, amely könnyen integrálható a készüléket. CMSIS szabvány alakult szoros együttműködésben számos kulcsfontosságú félvezető gyártók és a szoftver. CMSIS - a gyártó-független absztrakt megjelenítési réteg hardver, amely egységes megközelítést konjugációs periféria RTOS és firmware komponensek (lásd a 4. ábrát ..). Ez a szabvány skálázható, biztosítva annak alkalmasságát az összes fém alapú Cortex-M processzorcsalád - a fiatalabb családtagokra 8 KB-os memória eszközök kifinomult kommunikációs perifériák, például Ethernet vagy USB-OTG. CMSIS lett kifejlesztve, mint a nyílt forrású szabvány, amely élvezhető minden.

Tervezése és optimalizálása jelfeldolgozás az agykéregben-m4

Hogy csökkentse a többletterhelés gyakran végrehajtott ciklusok, van egy módszer alkalmazási ciklus, amelyet a fordító, de azt is kézzel kell felhelyezni a teljesítmény javítása érdekében. Ez egy hatékony nyelvfüggetlen optimalizálási módszert. Minden ciklusban, vannak overhead a ciklusszámláló, és annak növekedését mindegyik iterációs (3 ciklus a processzor Cortex-M4). Telepítés hurok kezeli indexek n ciklus egy ciklus, ami csökkenti a költségeket n-szer (lásd. Táblázat. 9). Amint a táblázatból látható, a belső hurok most úgy 5,75 löketet minden egyes szűrő együttható.

9. táblázat A belső hurok telepítési kód kiszámításához FIR szűrő

Telepítése ciklus 4 alkalommal

5,75 Összesen ciklus minden egyes szűrő együttható

összege + = coeffs [k] * állapotban [stateIndex];

összege + = coeffs [k] * állapotban [stateIndex];

összege + = coeffs [k] * állapotban [stateIndex];

összege + = coeffs [k] * állapotban [stateIndex];

overhead hurok

2 x 4 = 8 cikluson

Táblázat 10. Az SIMD-utasításokat, hogy optimalizálja a belső hurok kód kiszámításához FIR szűrő

Összesen 2375 ciklus minden egyes szűrő együttható

filtLen = filtLen <<2;

A (k = 0; k összege = __SMLALD (c, s, összeg);

összege = __SMLALD (c, s, összeg);

összege = __SMLALD (c, s, összeg);

összege = __SMLALD (c, s, összeg);

Összesen 19 ciklus, 2375 ciklus, illetve a faktor

FIR szűrő feldolgozás igényel igen gyakori memória-hozzáférést. 12. A 19. intézkedések végleges változata a kódnak a címet a memóriában. Például a 2 boot sorrend szükséges három ciklus munka Cortex-M4 processzor, egy MAC-parancs megköveteli csak egy órajel ciklusra. Amikor egy adatblokk feldolgozása, a memória kapacitását javítható egyidejű számítása több kimenet és a többszörös caching együtthatók és állapotváltozók. A 7. ábra egy diagram, a cache-közbenső változók.

Tervezése és optimalizálása jelfeldolgozás az agykéregben-m4

Ábra. 7. gyorsítótár közbülső változókat

MC és a DSP függvényei konvergálnak gyorsan, mert a felhasználóknak szükségük van hatékony és egyszerűen használható jelfeldolgozó technológiát. Cortex-M4 processzor ARM egy nagyszerű módja annak, hogy végre a digitális jel vezérlőberendezések alkalmazások, mint a kontroll az elektromos, ipari automatizálás, beágyazott hang digitális energiagazdálkodás és az autóiparban.
Cortex-M4 processzor kiterjeszti a családi Cortex-M processzorok a digitális jelfeldolgozás bevezetésével egy speciális DSP-funkciók, mint például a nagy teljesítményű egyetlen ciklus szorzás-összeadás parancsok SIMD-aritmetika matematikai műveletek átvágás és számítás blokkok egyszeres pontosságú lebegőpontos.
Alkalmazások fejlesztése a Cortex-M4 könnyű és lehet tenni teljesen C. Az egyszerű technikákat, akkor kialakulhat optimalizált programok minimális költség és erőfeszítés fejlesztése. Cortex-M4 processzor - egy nagy lehetőség a épületgépészeti rendszerek alapján a legújabb generációs IC és a digitális jel vezérlők, mivel az ilyen rendszerek célja olyan alkalmazásokhoz, amelyek nagyobb jelfeldolgozó képességeit.

Kapcsolódó cikkek