Blackfin processzor: architektúra, jellemzők és alkalmazásai

Próbálja Ki A Műszerünket A Problémák Kiküszöbölésére





A Blackfin processzort az Analog Devices és az Intel Micro Signal Architecture (MSA) néven tervezték, fejlesztették és forgalmazták. Ennek a processzornak az architektúráját 2000 decemberében jelentették be, és először az ESC-n mutatták be ( Beágyazott rendszerek Konferencia) 2001 júniusában. Ezt a Blackfin processzort elsősorban a jelenlegi beágyazott audio-, video- és kommunikációs alkalmazások teljesítmény- és számítási igényeinek kielégítésére tervezték. Ez a cikk áttekintést nyújt a Blackfin processzor – architektúra és alkalmazásai.


Mi az a Blackfin processzor?

A Blackfin processzor 16 vagy 32 bites mikroprocesszor amely tartalmaz egy beépített, fixpontos DSP-funkciót, amelyet 16 bites MAC-kon keresztül biztosítanak (multiplik – gyűjt). Ezek processzorok főként olyan kombinált, alacsony fogyasztású processzorarchitektúrához tervezték, amely képes futtatni az operációs rendszert, miközben egyszerre kezel nehéz numerikus feladatokat, mint például a valós idejű H.264 videókódolás.



Ez a processzor egyesíti a 32 bites RISC és a kettős 16 bites MAC jelfeldolgozási funkciókat az általános célú mikrovezérlőkben található attribútumok egyszerű használatával. Tehát ez a feldolgozási attribútum-kombináció lehetővé teszi a Blackfin Processorok számára, hogy hasonlóan jó eredményeket érjenek el mind a vezérlés-, mind a jelfeldolgozó alkalmazásokban. Ez a képesség nagymértékben leegyszerűsíti mind a hardver-, mind a szoftvertervezés megvalósítási feladatait.

  Blackfin processzor
Blackfin processzor

Blackfin jellemzők:

  • Ez a processzor egyetlen utasításkészlet-architektúrával rendelkezik, beleértve a feldolgozási teljesítményt, amely egyszerűen megfelel/megveri a termékpalettát digitális jelfeldolgozó vagy DSP a jobb költség-, energia- és memóriahatékonyság érdekében.
  • Ez a 16 vagy 32 bites architektúrájú processzor egyszerűen lehetővé teszi a közelgő beágyazott alkalmazásokat.
    Multimédia, jel- és vezérlésfeldolgozás egyetlen magon belül.
  • Növeli a fejlesztők termelékenységét.
  • Hangolható teljesítményt nyújt az energiafogyasztás vagy a jelfeldolgozás dinamikus energiagazdálkodása során.
  • Nagyon gyorsan alkalmazzák a különféle tervekben, amelyeket egyszerűen több eszközlánc és operációs rendszer támogat.
  • Minimális optimalizálást igényel a nagy teljesítményű szoftverek fejlesztői környezete és az alapvető teljesítmény miatt.
  • A Blackfin processzor támogatja az iparágvezető fejlesztőeszközöket.
  • Ennek a processzornak a teljesítménye és a konkurens DSP-k teljesítményének fele lehetővé teszi a fejlett specifikációkat és az új alkalmazásokat.

Blackfin processzor architektúra

A Blackfin processzor biztosítja a mikrovezérlő egység funkcióit és digitális jelfeldolgozás egyetlen processzoron belül, rugalmasságot biztosítva. Tehát ez a processzor tartalmaz egy SIMD (egy utasításos több adat) processzort, beleértve néhány szolgáltatást, például változó hosszúságú KOCKÁZAT utasítások, watchdog időzítő, on-chip PLL, memóriakezelő egység, valós idejű óra, soros portok 100 Mbps sebességgel, UART vezérlők és SPI portok.



Az MMU több funkciót is támogat DMA csatornák a perifériák és a FLASH, SDRAM és SRAM memória alrendszerek közötti adatátvitelhez. Támogatja az adatgyorsítótárakat és a konfigurálható chip-utasításokat is. A Blackfin processzor egy egyszerű hardver, amely támogatja a 8, 16 és 32 bites aritmetikai műveleteket.

A Blackfin architektúra főként a mikrojel architektúrán alapul, és ezt az ADI (Analog Devices) és az Intel közösen fejlesztette ki, amely 32 bites RISC utasításkészletet és 8 bites videó utasításkészletet tartalmaz kettős, 16 bites szorzós gyűjtővel. (MAC) egységek.

  PCBWay   Blackfin processzor architektúra
Blackfin processzor architektúra

Az analóg eszközök a Blackfin utasításkészlet-architektúráján keresztül képesek egyensúlyt elérni a DSP és MCU követelmények között. Általánosságban elmondható, hogy a Blackfin processzort a nagy teljesítményű VisualDSP++ szoftverfejlesztő eszközökkel párosítják, de most a C vagy C++ használatával a korábbiaknál sokkal könnyebben lehet előállítani rendkívül hatékony kódot. A valós idejű igényekhez az operációs rendszer támogatása kritikussá válik, így a Blackfin támogatja a nem. operációs rendszerek és memóriavédelem. A Blackfin processzor egymagos, például BF533, BF535 és BF537, valamint kétmagos, például BF561 modellben kapható.

A Blackfin processzorarchitektúra különböző chip-perifériákat tartalmaz, mint például a PPI (párhuzamos periféria interfész), a SPORTS (soros portok), az SPI (soros perifériás interfész), az UART (univerzális aszinkron vevőadó), az általános célú időzítők, az RTC (valós idejű interfész). Óra), Watchdog időzítő, általános célú I/O (programozható zászlók), Controller Area Network (CAN) interfész , Ethernet MAC, perifériás DMA-k -12, memória-memória DMA-k -2, beleértve a Handshake DMA-t, TWI (kétvezetékes interfész) vezérlő, hibakeresés vagy JTAG Interfész és eseménykezelő 32-vel Megszakítás Bemenetek. Mindezek a perifériák az architektúrában egyszerűen csatlakoztatva vannak különböző nagy sávszélességű buszokon keresztül a maghoz. Tehát az alábbiakban néhány periféria leírása található.

PPI vagy párhuzamos periféria interfész

A Blackfin processzor egyszerűen egy PPI-t biztosít, amelyet párhuzamos perifériális interfésznek is neveznek. Ez az interfész közvetlenül csatlakozik párhuzamos analóg-digitális és digitális-analóg konverterekhez, videokódolókhoz és dekóderekhez, valamint egyéb általános célú perifériákhoz.

Ez az interfész egy dedikált bemeneti CLK érintkezőt, három keretszinkronizáló lábat és 16 adattűt tartalmaz. Itt a bemeneti CLK érintkező egyszerűen támogatja a rendszer CLK sebességének felével megegyező párhuzamos adatátviteli sebességet. Három különböző ITU-R 656 mód csak az aktív videót, a függőleges üresítést és a teljes mezőt támogatja.

A PPI általános célú üzemmódjai számos átviteli és adatrögzítési alkalmazáshoz illeszkednek. Tehát ezek a módok fő kategóriákra vannak osztva: adatfogadás belsőleg generált keretszinkronizáláson keresztül, adatátvitel belsőleg generált keretszinkronizáláson keresztül, adatátvitel külsőleg generált keretszinkronizáláson keresztül és külsőleg generált keretszinkronizáláson keresztül fogadott adatok.

Sport

A Blackfin processzor két kétcsatornás szinkron soros portot tartalmaz, a SPORT0 és SPORT1 soros és többprocesszoros kommunikációt. Tehát ezek nagy sebességű és szinkron soros portok, amelyek támogatják I²S , TDM és számos más konfigurálható keretezési mód a csatlakoztatáshoz DAC-ok , ADC-k, FPGA-k és egyéb processzorok.

SPI vagy soros periféria interfész port

A Blackfin processzor tartalmaz egy SPI portot, amely lehetővé teszi a processzor számára, hogy különféle SPI-kompatibilis eszközökkel kommunikáljon. Ez az interfész egyszerűen három érintkezőt használ az adatok továbbítására, a 2-es adattűket és egy CLK érintkezőt. Az SPI-port kiválasztott bemeneti és kimeneti érintkezői egyszerűen egy full-duplex SSI-t (szinkron soros interfészt) adnak, amely támogatja mind a mester, mind a szolga módokat, valamint a több mestert tartalmazó környezeteket. Ennek az SPI-portnak az adatátviteli sebessége és az órafázis vagy a polaritások programozhatók. Ez a port egy beépített DMA-vezérlővel rendelkezik, amely támogatja az adatfolyamok átvitelét/vételét.

Időzítők

A Blackfin processzor 9 programozható időzítő egységgel rendelkezik. Ezek az időzítők megszakításokat generálnak a processzormag számára, hogy időszakos eseményeket biztosítsanak a processzor órájával vagy egy külső jelszámlálással való szinkronizálásra.

UART

Az UART kifejezés az „univerzális aszinkron vevőadó” portot jelent. A Blackfin processzor 2-félduplex UART-porttal rendelkezik, amelyek teljes mértékben megfelelnek a PC szabványos UART-oknak. Ezek a portok egyszerűen egy alapvető UART interfészt biztosítanak más gazdagépeknek vagy perifériáknak a DMA által támogatott, félduplex, aszinkron soros adatátvitel érdekében.

Az UART portok 5-8 adatbitet és 1 vagy 2 stopbitet tartalmaznak, és 2 üzemmódot támogatnak, mint például a programozott I/O és DMA. Az első módban a processzor az olvasási/írási I/O-leképezett regisztereken keresztül küldi vagy fogadja az adatokat, mindenhol, ahol az adatok kétszer vannak pufferelve az adás és a vétel során. A második módban a DMA vezérlő adatokat ad és fogad, és csökkenti a megszakítások számát, amelyek szükségesek ahhoz, hogy adatokat küldjenek a memóriából és a memóriába.

RTC vagy valós idejű óra

A blackfin processzor valós idejű órája egyszerűen különböző funkciókat kínál, például stoppert, pontos időt és ébresztőt. Tehát a valós idejű óra egy 32,768 kHz-es kristállyal működik a Blackfin processzoron kívül. A processzoron belüli RTC tápegység érintkezőkkel rendelkezik, amelyek akkor is bekapcsolva maradhatnak, ha a Blackfin processzor többi része alacsony fogyasztású állapotban van. A valós idejű óra számos programozható megszakítási lehetőséget biztosít. A 32,768 kHz-es bemeneti CLK frekvencia 1 Hz-es jelre van leválasztva egy előskálázón keresztül. A többi eszközhöz hasonlóan a valós idejű óra is képes felébreszteni a Blackfin processzort Deep Sleep módból/Sleep módból.

Watchdog Timer

A Blackfin processzor 32 bites watchdog időzítővel rendelkezik, amely szoftveres watchdog funkció végrehajtására szolgál. Tehát a programozó inicializálja az időzítő számláló értékét, amely lehetővé teszi a megfelelő megszakítást, majd engedélyezi az időzítőt. Ezt követően a szoftvernek újra be kell töltenie a számlálót, mielőtt a programozott értékről 0-ra számolna.

GPIO vagy általános célú I/O

A GPIO egy digitális jelérintkező, amelyet bemenetként, kimenetként vagy mindkettőként használnak, és szoftver vezérli. A Blackfin processzor GPIO (általános célú I/O) érintkezőket tartalmaz, 48 kétirányú 3 különálló GPIO modulon keresztül, mint például a PORTFIO, PORTHIO és PORTGIO, amelyek a G, a H és az F porthoz kapcsolódnak. Minden általános célú port érintkező egyedileg vezérelhető az állapot, a portvezérlés és a megszakítási regiszterek, például a GPIO DCR, GPIO CSR, GPIO IMR és GPIO ISR manipulálásával.

Ethernet MAC

A Blackfin processzorban található Ethernet MAC periféria 10-100 Mb/s sebességet biztosít a MII (Media Independent Interface) és a Blackfin periféria alrendszere között. A MAC egyszerűen működik Full-Duplex és Half-Duplex módban is. A médiahozzáférés-vezérlő belső órajele a processzor CLKIN érintkezőjétől származik.

memória

A Blackfin Processor architektúra memóriája egyszerűen biztosítja az 1. és 2. szintű memóriablokkokat az eszköz megvalósításában. Az L1-hez hasonló adat- és utasításmemória egyszerűen csatlakoztatható közvetlenül a processzormaghoz, teljes rendszer CLK-sebességgel fut, és maximális rendszerteljesítményt biztosít a kritikus idő algoritmus-szegmensei számára. Az L2 memória, mint például az SRAM memória, nagyobb, ami egy kicsit csökkentett teljesítményt biztosít, de még mindig gyorsabb a chipen kívüli memóriához képest.

Az L1 memória szerkezete úgy van megvalósítva, hogy a jelek feldolgozásához szükséges teljesítményt biztosítsa, miközben programokat kínál a mikrokontrollerekben. Ezt úgy érjük el, hogy egyszerűen engedélyezzük az L1 memória SRAM-ként, gyorsítótárként való elrendezését, ellenkező esetben a kettő kombinációjaként.

A gyorsítótár és az SRAM programozási modellek támogatásával a rendszer tervezői az alacsony késleltetést és nagy sávszélességet igénylő kritikus, valós idejű jelfeldolgozási adatkészleteket hozzárendelik az SRAM-hoz, miközben a valós idejű vezérlési vagy operációs rendszeri feladatokat a gyorsítótárban tárolják.

Rendszerindítási módok

A Blackfin processzor hat mechanizmust tartalmaz a belső L1 utasítás memória automatikus betöltéséhez a visszaállítás után. Tehát a különböző rendszerindítási módok főként a következőket tartalmazzák: Rendszerindítási mód 8 bites és 16 bites külső flash memóriából, soros SPI memóriából. Az SPI-gazdaeszköz, az UART, a soros TWI-memória, a TWI-gazdagép, és 16 bites külső memóriából működik, megkerülve a rendszerindítási sorozatot. Az első 6 rendszerindítási mód mindegyikéhez először egy 10 bájtos fejléc kerül beolvasásra egy külső memóriaeszközről. Tehát a fejléc a nemet jelzi. a továbbítandó bájtok száma és a memória célcíme. Számos memóriablokk betölthető bármely rendszerindítási sorozaton keresztül. Ha az összes blokkot egyszerűen betöltjük, akkor a program végrehajtása az SRAM L1 utasítás elejétől kezdődik.

Címzési módok

A blackfin processzor címzési módjai egyszerűen meghatározzák, hogy az egyéni hozzáférési memória és címzés hogyan határozza meg a helyet. A blackfin processzorban használt címzési módok a következők: közvetett címzés, automatikus növelés/csökkentés, utólagos módosítás, azonnali eltolással indexelt, körkörös puffer és Bit reverse.

Közvetett címzés

Ebben a módban az utasításon belüli címmező tartalmazza a memória vagy regiszter helyét, ahol a hatékony operandus címe található. Ez a címzés két kategóriába sorolható, mint például a közvetett nyilvántartás és a közvetett memória.

Például LOAD R1, @300

A fenti utasításban a tényleges címet egyszerűen a 300-as memóriahelyen tároljuk.

Autoncrement/Decrement Addressing

Az automatikus növekményes címzés egyszerűen frissíti a mutató- és az indexregisztereket a belépési jog után. A növekmény mértéke elsősorban a szó méretétől függ. A 32 bites szóalapú hozzáférés a Pointer frissítésén belül „4”-gyel érhető el. A 16 bites szóhozzáférés 2-vel frissíti a mutatót, a 8 bites szóhozzáférés pedig 1-gyel frissíti a mutatót. Mind a 8 bites, mind a 16 bites olvasási műveletei jelezhetik a tartalom nulla kiterjesztését/jel-kiterjesztését a célregiszterbe. A pointer regisztereket főként 8, 16 és 32 bites hozzáférésekhez használják, míg az index regisztereket csak 16 és 32 bites hozzáférésekhez használják

Például: R0 = W [ P1++ ] (Z) ;

A fenti utasításban egy 16 bites szó betöltődik egy 32 bites célregiszterbe egy hegyes címről a „P1” mutatóregiszteren keresztül. Ezt követően a mutató 2-vel nő, és a szó „0” lesz, hogy kitöltse a 32 bites célregisztert.

Hasonlóképpen, az automatikus csökkentés úgy működik, hogy csökkenti a címet a belépési jog után.

Például: R0 = [ I2– ] ;

A fenti utasításban egy 32 bites érték betöltődik a célregiszterbe, és 4-gyel csökkenti az Index regisztert.

Címzés módosítása után

Ez a fajta címzés egyszerűen az index/mutató regisztereken belüli értéket használja, például a hatékony címet. Ezt követően regisztertartalommal módosítja. Az indexregisztereket egyszerűen megváltoztatják a módosított regiszterek, míg a mutatóregisztereket más mutatóregiszterek módosítják. A célregiszterekhez hasonlóan a módosítás utáni típusú címzés sem támogatja a Pointer regisztereket.

Például: R3 = [ P1++P2 ] ;

A fenti utasításban egy 32 bites érték betöltődik az „R3” regiszterbe, és a „P1” regiszter által jelölt memóriahelyen belül található. Ezt követően a „P2” regiszteren belüli érték hozzáadódik a P1 regiszteren belüli értékhez.

Azonnali eltolással indexelve

Az indexelt címzés egyszerűen lehetővé teszi a programok számára, hogy értékeket kapjanak az adattáblázatokból. A Pointer regisztert az azonnali mező módosítja, ezt követően az érvényes cím lesz. Tehát a Pointer regiszter értéke nem frissül.

Például, ha P1 = 0x13, akkor a [P1 + 0x11] gyakorlatilag egyenértékű a [0x24]-gyel, amely az összes hozzáféréshez kapcsolódik.

Bit fordított címzés

Egyes algoritmusok esetében a programok bit-fordított átviteli címzést igényelnek, hogy szekvenciális sorrendben kapják meg az eredményeket, különösen az FFT (Fast Fourier Transform) számításoknál. Az algoritmus követelményeinek kielégítése érdekében a Data Address Generatorok bit-fordított címzési funkciója ismételten lehetővé teszi az adatsorok felosztását és ezeknek az adatoknak a bitek fordított sorrendjében történő tárolását.

Körkörös puffercímzés

A Blackfin processzor olyan funkciót biztosít, mint az opcionális körkörös címzés, amely egyszerűen megnöveli az indexregisztert egy előre meghatározott címtartománnyal, majd automatikusan alaphelyzetbe állítja az indexregisztereket, hogy megismételje ezt a tartományt. Tehát ez a szolgáltatás javítja a bemeneti/kimeneti hurok teljesítményét azáltal, hogy minden alkalommal egyszerűen eltávolítja a címindex mutatót.

A körkörös puffercímzés nagyon hasznos fix méretű adatblokkok sorozatának ismételt betöltésekor vagy tárolásakor. A kör alakú puffer tartalmának meg kell felelnie a következő feltételeknek:

  • A kör alakú puffer maximális hosszának egy előjel nélküli számnak kell lennie, amelynek magnitúdója 231 alatti.
  • A módosító nagyságának a kör alakú puffer hossza alatt kell lennie.
  • Az „I” mutató első helyének a kör alakú pufferben kell lennie, amelyet az „L” hosszúság és a „B” alap határozza meg.

Ha a fenti feltételek bármelyike ​​nem teljesül, akkor a processzor viselkedése nincs megadva.

A Blackfin processzor regisztrációs fájlja

A Blackfin processzor három végleges regiszterfájlt tartalmaz, mint például; Adatregiszter-fájl, mutatóregiszter-fájl és DAG-regiszter.

  • Az adatregiszter fájl operandusokat gyűjt a számítási egységekhez használt adatbuszok segítségével, és tárolja a számítási eredményeket.
  • A mutatóregiszter fájl tartalmazza a címzési műveletekhez használt mutatókat.
  • A DAG regiszterek kezelik a DSP műveletekhez használt zéró overhead körkörös puffereket.

A Blackfin processzor első osztályú energiagazdálkodást és teljesítményt biztosít. Ezeket alacsony feszültségű és kis teljesítményű tervezési módszerrel tervezték, amely képes mind a feszültség, mind a működési frekvencia változtatására, hogy jelentősen csökkentse a teljes energiafelhasználást. Ez tehát az energiafelhasználás jelentős csökkenését eredményezheti, ahhoz képest, hogy csak a működési frekvenciát változtatjuk. Így egyszerűen hosszabb akkumulátor-élettartamot tesz lehetővé a praktikus készülékek számára.

A Blackfin processzor különböző külső memóriákat támogat, mint például a DDR-SDRAM, SDRAM, NAND flash, SRAM és NOR flash. Egyes Blackfin processzorok tömegtároló interfészt is tartalmaznak, például SD/SDIO és ATAPI. 100 megabájt memóriát is támogatnak a külső memória területén belül.

Előnyök

Az A Blackfin processzor előnyei a következőket tartalmazzák.

  • A Blackfin processzorok alapvető előnyöket biztosítanak a rendszer tervezőjének.
  • A Blackfin processzor szoftveres rugalmasságot és méretezhetőséget kínál az olyan konvergens alkalmazásokhoz, mint a hang-, videó-, hang- és képfeldolgozás több formátumban, valós idejű biztonság, vezérlési feldolgozás és többmódusú alapsávi csomagfeldolgozás
  • A hatékony vezérlés-feldolgozási kapacitás és a nagy teljesítményű jelfeldolgozás különböző új piacokat és alkalmazásokat tesz lehetővé.
  • A DPM (Dynamic Power Management) lehetővé teszi a rendszertervező számára, hogy az eszköz energiafogyasztását különösen a végrendszer követelményeihez igazítsa.
  • Ezek a processzorok jelentősen csökkentik a fejlesztési időt és a költségeket.

Alkalmazások

Az a Blackfin processzor alkalmazásai a következőket tartalmazzák.

  • A Blackfin processzorok ideálisak számos alkalmazáshoz, mint pl ADAS (autóipari fejlett vezetőtámogató rendszerek) , felügyeleti vagy biztonsági rendszerek és ipari gépi látás.
  • A Blackfin alkalmazások közé tartoznak a szervomotor-vezérlőrendszerek, az autóelektronika, a felügyeleti rendszerek és a multimédiás fogyasztói eszközök.
  • Ezek a processzorok egyszerűen mikrokontroller és jelfeldolgozási funkciókat látnak el.
  • Ezeket audio-, folyamatirányítási, autóipari, tesztelési, mérési stb.
  • A Blackfin processzorokat olyan jelfeldolgozó alkalmazásokban használják, mint a szélessávú vezeték nélküli, mobil kommunikációs és audio- vagy videoképes internetes készülékek.
  • A Blackfin olyan konvergens alkalmazásokban használatos, mint a hálózati és streaming média, a digitális otthoni szórakoztatás, az autóipari telematika, az infotainment, a mobil TV, a digitális rádió stb.
  • A Blackfin processzor egy olyan beágyazott processzor, amely energiahatékonysággal és legmagasabb teljesítménnyel rendelkezik, ahol a több formátumú hang-, hang-, videó-, többmódusú alapsáv, képfeldolgozás, csomagfeldolgozás, valós idejű biztonság és vezérlés feldolgozása jelentős.

Ez tehát az a Blackfin processzor áttekintése – architektúra, előnyei és alkalmazásai. Ez a processzor jelfeldolgozási és mikrokontroller funkciókat lát el. Itt egy kérdés, hogy mi az a processzor?