Procesor Blackfin: Architektúra, funkcie a jeho aplikácie

Vyskúšajte Náš Nástroj Na Odstránenie Problémov





Procesor Blackfin bol navrhnutý, vyvinutý a predávaný prostredníctvom Analog Devices & Intel ako Micro Signal Architecture (MSA). Architektúra tohto procesora bola ohlásená v decembri 2000 a prvýkrát demonštrovaná na ESC ( Vložené systémy Konferencia) v júni 2001. Tento procesor Blackfin bol navrhnutý hlavne na dosiahnutie energetických obmedzení a výpočtových požiadaviek súčasných vstavaných audio, video a komunikačných aplikácií. Tento článok pojednáva o prehľade a Procesor Blackfin – architektúra a jej aplikácie.


Čo je to procesor Blackfin?

Procesor Blackfin je 16- alebo 32-bitový mikroprocesor ktorý zahŕňa vstavanú funkciu DSP s pevným bodom dodávanú prostredníctvom 16-bitových MAC (multiply-akumuluje). Títo spracovateľov boli navrhnuté hlavne pre kombinovanú architektúru procesorov s nízkou spotrebou, na ktorej je možné spustiť OS a súčasne zvládnuť zložité numerické úlohy, ako je kódovanie videa H.264 v reálnom čase.



Tento procesor kombinuje 32-bitové RISC a duálne 16-bitové funkcie spracovania MAC signálu jednoduchým použitím atribútov, ktoré sa nachádzajú v univerzálnych mikrokontroléroch. Takže táto kombinácia atribútov spracovania umožňuje procesorom Blackfin dosahovať podobné výsledky v aplikáciách spracovania riadenia a spracovania signálov. Táto schopnosť výrazne zjednodušuje implementačné úlohy pri návrhu hardvéru a softvéru.

  Procesor Blackfin
Procesor Blackfin

Vlastnosti Blackfin:

  • Tento procesor má architektúru s jednou inštrukčnou sadou vrátane výkonu spracovania, ktorý jednoducho spĺňa/prekoná rad produktov digitálny signálový procesor alebo DSP, aby sa zabezpečila lepšia cena, výkon a efektívnosť pamäte.
  • Tento procesor so 16 alebo 32-bitovou architektúrou jednoducho umožňuje pripravované vstavané aplikácie.
    Multimediálne, signálové a riadiace spracovanie v rámci jedného jadra.
  • Zvyšuje produktivitu vývojárov.
  • Má laditeľný výkon v rámci dynamického riadenia spotreby energie alebo spracovania signálu.
  • Veľmi rýchlo sa osvojuje v rôznych dizajnoch, ktoré sú jednoducho podporované niekoľkými nástrojmi a operačnými systémami.
  • Vyžaduje minimálnu optimalizáciu kvôli vývojovému prostrediu výkonného softvéru spojeného s výkonom jadra.
  • Procesor Blackfin podporuje špičkové vývojové nástroje.
  • Výkon tohto procesora a polovičný výkon oproti konkurenčným DSP umožňuje pokročilé špecifikácie a nové aplikácie.

Architektúra procesora Blackfin

Procesor Blackfin poskytuje funkcie mikrokontroléra a digitálne spracovanie signálu v rámci jedného procesora tým, že umožňuje flexibilitu. Tento procesor teda obsahuje procesor SIMD (s jednou inštrukciou s viacerými dátami) vrátane niektorých funkcií, ako je premenlivá dĺžka RIZIKO inštrukcie, časovač watchdog, PLL na čipe, jednotka správy pamäte, hodiny reálneho času, sériové porty s rýchlosťou 100 Mbps, UART ovládače & SPI prístavov.



MMU podporuje viacero DMA kanály na prenos údajov medzi periférnymi zariadeniami a pamäťovými subsystémami FLASH, SDRAM a SRAM. Podporuje tiež dátové vyrovnávacie pamäte a konfigurovateľné inštrukcie na čipe. Procesor Blackfin je jednoduchý hardvér, ktorý podporuje 8, 16 a 32-bitové aritmetické operácie.

Architektúra Blackfin je založená hlavne na architektúre mikro signálu a bola vyvinutá spoločne spoločnosťami ADI (Analog Devices) & Intel, ktorá zahŕňa 32-bitovú inštrukčnú sadu RISC a 8-bitovú sadu video inštrukcií s duálnym 16-bitovým multiplikačným akumulačným systémom. (MAC) jednotky.

  PCBWay   Architektúra procesora Blackfin
Architektúra procesora Blackfin

Analógové zariadenia sú schopné dosiahnuť rovnováhu medzi požiadavkami DSP a MCU prostredníctvom architektúry súboru inštrukcií Blackfin. Vo všeobecnosti je procesor Blackfin spojený s výkonnými nástrojmi na vývoj softvéru VisualDSP++, ale teraz pomocou C alebo C++ je možné vytvárať vysoko efektívny kód veľmi jednoducho ako predtým. Pre požiadavky v reálnom čase sa podpora operačného systému stáva kritickou, takže Blackfin podporuje nie. operačných systémov a ochrany pamäte. Procesor Blackfin sa dodáva ako jednojadrový, ako BF533, BF535 a BF537, ako aj dvojjadrový ako BF561.

Architektúra procesora Blackfin zahŕňa rôzne periférie na čipe, ako sú PPI (paralelné periférne rozhranie), SPORTS (sériové porty), SPI (sériové periférne rozhranie), UART (univerzálny asynchrónny prijímač prijímača), univerzálne časovače, RTC (v reálnom čase). Hodiny), časovač Watchdog, I/O na všeobecné účely (programovateľné príznaky), Rozhranie Controller Area Network (CAN). , Ethernet MAC, Peripheral DMAs -12, Memory to Memory DMAs -2 vrátane Handshake DMA, TWI (Two-Wire Interface) Controller, Debug alebo JTAG Rozhranie a obsluha udalostí s 32 Prerušiť Vstupy. Všetky tieto periférie v architektúre sú jednoducho pripojené cez rôzne širokopásmové zbernice k jadru. Takže popis niektorých z týchto periférnych zariadení je uvedený nižšie.

PPI alebo paralelné periférne rozhranie

Procesor Blackfin jednoducho poskytuje PPI, ktoré je tiež známe ako paralelné periférne rozhranie. Toto rozhranie je priamo pripojené k paralelným analógovo-digitálnym a digitálnym-analógovým prevodníkom, videokóderom a dekodérom a tiež k iným univerzálnym perifériám.

Toto rozhranie obsahuje vyhradený vstupný kolík CLK, tri kolíky synchronizácie snímok a 16 kolíkov údajov. Tu vstupný kolík CLK jednoducho podporuje paralelné prenosové rýchlosti rovnajúce sa polovici systémovej rýchlosti CLK. Tri rôzne režimy ITU-R 656 podporujú iba aktívne video, vertikálne zatemnenie a kompletné pole.

Všeobecné režimy PPI sú dané tak, aby vyhovovali rôznym aplikáciám prenosu a zberu dát. Tieto režimy sú teda rozdelené do hlavných kategórií Prijímanie údajov prostredníctvom interne generovaných synchronizácií rámcov, Prenos údajov prostredníctvom interne generovaných synchronizácií rámcov, Prenos údajov prostredníctvom externe generovaných synchronizácií rámcov a Údaje prijímané prostredníctvom externe generovaných synchronizácií rámcov.

ŠPORTY

Procesor Blackfin obsahuje dva dvojkanálové synchrónne sériové porty SPORT0 a SPORT1 používané na sériovú a viacprocesorovú komunikáciu. Ide teda o vysokorýchlostný a synchrónny sériový port, ktorý podporuje I²S , TDM a rôzne ďalšie konfigurovateľné režimy rámovania na pripojenie DAC , ADC, FPGA a ďalší spracovatelia.

SPI alebo port sériového periférneho rozhrania

Procesor Blackfin obsahuje port SPI, ktorý umožňuje procesoru konverzovať s rôznymi zariadeniami kompatibilnými s SPI. Toto rozhranie jednoducho využíva tri kolíky na prenos údajov, dátové kolíky-2 a jeden kolík CLK. Vybrané vstupné a výstupné kolíky portu SPI jednoducho poskytujú plne duplexné SSI (synchrónne sériové rozhranie), ktoré podporuje režimy master a slave, ako aj prostredia s viacerými mastermi. Prenosová rýchlosť tohto portu SPI a fáza alebo polarity hodín sú programovateľné. Tento port má zabudovaný radič DMA, ktorý podporuje prenos/príjem dátových tokov.

Časovače

Procesor Blackfin má 9 programovateľných jednotiek časovača. Tieto časovače generujú prerušenia jadra procesora na poskytovanie periodických udalostí určených na synchronizáciu s hodinami procesora alebo s počtom externých signálov.

UART

Termín UART znamená port „univerzálneho asynchrónneho prijímača vysielača“. Procesor Blackfin poskytuje 2-polovičné duplexné porty UART, ktoré sú úplne vhodné pre štandardné UART PC. Tieto porty jednoducho poskytujú základné rozhranie UART iným hostiteľom alebo periférnym zariadeniam na poskytovanie poloduplexných asynchrónnych sériových dátových prenosov s podporou DMA.

Porty UART obsahujú 5 až 8 dátových bitov a 1 alebo 2 stop bity a podporujú 2 režimy prevádzky, ako je programované I/O a DMA. V prvom režime procesor vysiela alebo prijíma dáta prostredníctvom čítania/zápisu I/O-mapovaných registrov, kedykoľvek sú dáta ukladané do vyrovnávacej pamäte dvakrát pri vysielaní aj prijímaní. V druhom režime DMA radič vysiela a prijíma dáta a znižuje počet prerušení potrebných na prenos dát z & do pamäte.

RTC alebo hodiny reálneho času

Hodiny reálneho času procesora blackfin jednoducho poskytujú rôzne funkcie, ako sú stopky, aktuálny čas a budík. Hodiny reálneho času sú teda taktované kryštálom 32,768 kHz, ktorý je externý k procesoru Blackfin. RTC v procesore má napájacie kolíky, ktoré môžu zostať napájané a taktované, aj keď je zvyšok procesora Blackfin v stave nízkej spotreby. Hodiny reálneho času poskytujú množstvo programovateľných možností prerušenia. Vstupná frekvencia CLK 32,768 kHz je oddelená až na 1 Hz signál cez preddeličku. Podobne ako na iných zariadeniach, hodiny reálneho času dokážu prebudiť procesor Blackfin z režimu hlbokého spánku/režimu spánku.

Watchdog Timer

Procesor Blackfin má 32-bitový časovač stráženia, ktorý sa používa na vykonávanie funkcie stráženia softvéru. Programátor teda inicializuje hodnotu počítania časovača, ktorá umožňuje správne prerušenie, a potom povolí časovač. Potom musí softvér znovu načítať počítadlo predtým, ako začne počítať z naprogramovanej hodnoty na „0“.

GPIO alebo General-Purpose I/O

GPIO je digitálny signálny kolík, ktorý sa používa ako vstup, výstup alebo oboje a je riadený softvérom. Procesor Blackfin obsahuje kolíky GPIO (univerzálne I/O), 48-obojsmerné cez 3 samostatné moduly GPIO, ako sú PORTFIO, PORTHIO & PORTGIO spojené s portom G, portom H a portom F. Každý univerzálny pin portu je riadený individuálne prostredníctvom manipulácie so stavom, riadením portov a registrami prerušení, ako sú GPIO DCR, GPIO CSR, GPIO IMR a GPIO ISR.

Ethernet MAC

Periférne zariadenie Ethernet MAC v procesore Blackfin poskytuje 10 až 100 Mb/s medzi MII (Media Independent Interface) a periférnym subsystémom Blackfin. MAC jednoducho funguje v režime Full-Duplex aj Half-Duplex. Radič prístupu k médiu je interne taktovaný z pinu CLKIN procesora.

Pamäť

Pamäť architektúry Blackfin Processor jednoducho poskytuje pamäťové bloky úrovne 1 aj úrovne 2 pri implementácii zariadenia. Pamäť dátovej a inštrukčnej pamäte typu L1 je jednoducho pripojená priamo k jadru procesora, beží pri kompletnej systémovej rýchlosti CLK a poskytuje maximálny výkon systému pre kritické segmenty časového algoritmu. Pamäť L2, ako je pamäť SRAM, je väčšia, čo poskytuje trochu znížený výkon, je však stále rýchlejšia v porovnaní s pamäťou mimo čipu.

Štruktúra pamäte L1 je implementovaná tak, aby poskytovala výkon potrebný na spracovanie signálov a zároveň ponúkal programy v mikrokontroléroch. To sa dosiahne jednoduchým povolením, aby bola pamäť L1 usporiadaná ako SRAM, cache, inak kombinácia oboch.

Podporou programovacích modelov cache a SRAM dizajnéri systému priraďujú kritické dátové súbory na spracovanie signálu v reálnom čase, ktoré vyžadujú nízku latenciu a veľkú šírku pásma, do pamäte SRAM, pričom ukladajú riadenie v reálnom čase alebo úlohy operačného systému do vyrovnávacej pamäte.

Režimy zavádzania

Procesor Blackfin obsahuje šesť mechanizmov na automatické načítanie vnútornej pamäte inštrukcie L1 po resete. Takže rôzne režimy zavádzania zahŕňajú hlavne; Bootovací režim z 8-bitovej & 16-bitovej externej flash pamäte, sériovej SPI pamäte. Hostiteľské zariadenie SPI, UART, sériová pamäť TWI, hostiteľ TWI a fungujú zo 16-bitovej externej pamäte, čím sa obíde séria zavádzania. Pre každý z prvých 6 režimov zavádzania sa najprv načíta 10-bajtová hlavička z externého pamäťového zariadenia. Takže hlavička označuje nie. bajtov na prenos a cieľovú adresu pamäte. Cez ktorúkoľvek sériu zavádzania je možné načítať niekoľko pamäťových blokov. Keď sú všetky bloky jednoducho načítané, vykonávanie programu začína od začiatku inštrukcie L1 SRAM.

Režimy adresovania

Režimy adresovania procesora blackfin jednoducho určujú, ako má individuálny prístup k pamäti a adresovanie špecifikovať umiestnenie. Režimy adresovania používané v procesore blackfin sú nepriame adresovanie, autoinkrementácia/zníženie, post modifikácia, indexovanie s okamžitým posunom, kruhová vyrovnávacia pamäť a bitový reverz.

Nepriame adresovanie

V tomto režime obsahuje pole adresy v inštrukcii umiestnenie pamäte alebo registra, kdekoľvek je prítomná adresa efektívneho operandu. Toto adresovanie je klasifikované do dvoch kategórií, napríklad Register Indirect & Memory Indirect.

Napríklad LOAD R1, @300

Vo vyššie uvedenej inštrukcii je efektívna adresa jednoducho uložená na pamäťovom mieste 300.

Autoincrement/decrement Addressing

Auto-inkrementálne adresovanie jednoducho aktualizuje ukazovateľ a registre indexu po práve na vstup. Výška prírastku závisí hlavne od veľkosti veľkosti slova. 32-bitový prístup k slovu môže viesť k aktualizácii ukazovateľa s „4“. 16-bitový prístup k slovu aktualizuje ukazovateľ na „2“ a 8-bitový prístup k slovu aktualizuje ukazovateľ na „1“. Operácie čítania 8-bitových aj 16-bitových môžu indikovať buď rozšírenie o nulu alebo rozšírenie o znamienko obsahu do cieľového registra. Registre ukazovateľov sa používajú hlavne pre 8, 16 a 32-bitové prístupy, zatiaľ čo registre indexov sa používajú iba pre 16 a 32-bitové prístupy

Napríklad: R0 = W [ P1++ ] (Z) ;

Vo vyššie uvedenej inštrukcii sa 16-bitové slovo načíta do 32-bitového cieľového registra zo zameranej adresy cez register ukazovateľa „P1“. Potom sa ukazovateľ zvýši o 2 a slovo sa rozšíri na „0“, aby vyplnil 32-bitový cieľový register.

Podobne funguje automatické znižovanie tak, že sa adresa po práve na vstup zníži.

Napríklad: R0 = [ I2– ] ;

Vo vyššie uvedenej inštrukcii sa 32-bitová hodnota načíta do cieľového registra a redukuje indexový register o 4.

Adresovanie po úprave

Tento typ adresovania jednoducho používa hodnotu v registroch indexu/ukazovateľa ako efektívnu adresu. Potom ho upraví obsahom registra. Registre indexov sa jednoducho menia pomocou upravených registrov, zatiaľ čo registre ukazovateľov sa menia pomocou iných registrov ukazovateľov. Podobne ako cieľové registre, adresovanie typu Post-modify nepodporuje registre ukazovateľov.

Napríklad: R3 = [ P1++P2 ] ;

Vo vyššie uvedenej inštrukcii sa 32-bitová hodnota načíta do registra „R3“ a nájde sa v umiestnení pamäte, na ktorú ukazuje register „P1“. Potom sa hodnota v registri „P2“ pripočíta k hodnote v registri P1.

Indexované s okamžitým posunom

Indexované adresovanie jednoducho umožňuje programom získať hodnoty z údajových tabuliek. Register Pointer sa zmení podľa okamžitého poľa, potom sa použije ako efektívna adresa. Hodnota registra ukazovateľa sa teda neaktualizuje.

Napríklad, ak P1 = 0x13, potom [P1 + 0x11] by bolo efektívne ekvivalentné [0x24], ktoré je spojené so všetkými prístupmi.

Bitové reverzné adresovanie

Pre niektoré algoritmy programy vyžadujú bitovo obrátené prenosové adresovanie na získanie výsledkov v sekvenčnom poradí, najmä pre výpočty FFT (Fast Fourier Transform). Na splnenie požiadaviek týchto algoritmov funkcia bitového obráteného adresovania generátorov dátových adries opakovane umožňuje delenie dátových sérií a ukladanie týchto dát v obrátenom poradí.

Kruhové adresovanie vyrovnávacej pamäte

Procesor Blackfin poskytuje funkciu, ako je voliteľné kruhové adresovanie, ktoré jednoducho zväčší indexový register o preddefinovaný rozsah adries, potom automaticky vynuluje indexové registre, aby sa tento rozsah opakoval. Takže táto funkcia zvyšuje výkon vstupno/výstupnej slučky jednoduchým odstránením ukazovateľa indexu adresy zakaždým.

Kruhové adresovanie vyrovnávacej pamäte je veľmi užitočné pri opakovanom načítavaní alebo ukladaní reťazca dátových blokov s pevnou veľkosťou. Obsah kruhového zásobníka musí spĺňať tieto podmienky:

  • Maximálna dĺžka kruhovej vyrovnávacej pamäte by mala byť číslo bez znamienka s veľkosťou menšou ako 231.
  • Veľkosť modifikátora musí byť pod dĺžkou kruhovej vyrovnávacej pamäte.
  • Prvé umiestnenie ukazovateľa „I“ musí byť v kruhovej vyrovnávacej pamäti, ktorá je definovaná dĺžkou „L“ a základňou „B“.

Ak niektorá z vyššie uvedených podmienok nie je splnená, správanie procesora nie je špecifikované.

Registrovať súbor procesora Blackfin

Procesor Blackfin obsahuje tri definitívne súbory registrov ako; Súbor registra údajov, súbor registra ukazovateľov a register DAG.

  • Súbor registra údajov zhromažďuje operandy pomocou dátových zberníc používaných pre výpočtové jednotky a ukladá výsledky výpočtov.
  • Súbor registra ukazovateľov obsahuje ukazovatele používané na operácie adresovania.
  • Registre DAG riadia kruhové vyrovnávacie pamäte s nulovou réžiou používané pre operácie DSP.

Procesor Blackfin poskytuje prvotriednu správu napájania a výkon. Tieto sú navrhnuté pomocou nízkonapäťovej a nízkoenergetickej konštrukčnej metodiky, ktorá je schopná meniť napätie aj prevádzkovú frekvenciu, aby sa výrazne znížila celková spotreba energie. To môže mať za následok značné zníženie spotreby energie v porovnaní so zmenou prevádzkovej frekvencie. Takže to jednoducho umožňuje dlhšiu výdrž batérie pre šikovné spotrebiče.

Procesor Blackfin podporuje rôzne externé pamäte ako DDR-SDRAM, SDRAM, NAND flash, SRAM a NOR flash. Niektoré procesory Blackfin obsahujú aj rozhrania pre hromadné ukladanie dát, ako napríklad SD/SDIO a ATAPI. Môžu tiež podporovať 100 megabajtov pamäte v rámci priestoru externej pamäte.

Výhody

The výhody procesora Blackfin zahŕňajú nasledujúce.

  • Procesory Blackfin poskytujú dizajnérom systému základné výhody.
  • Procesor Blackfin ponúka softvérovú flexibilitu, ako aj škálovateľnosť pre konvergentné aplikácie, ako je spracovanie zvuku, videa, hlasu a obrazu vo viacerých formátoch, zabezpečenie v reálnom čase, riadenie a multimódové spracovanie paketov v základnom pásme
  • Efektívna kapacita spracovania riadenia a vysokovýkonné spracovanie signálu umožňuje rôzne nové trhy a aplikácie.
  • DPM (Dynamic Power Management) umožňuje konštruktérovi systému zvlášť upraviť spotrebu energie zariadenia podľa požiadaviek koncového systému.
  • Tieto procesory výrazne znižujú čas a náklady na vývoj.

Aplikácie

The aplikácie procesora Blackfin zahŕňajú nasledujúce.

  • Procesory Blackfin sú ideálne pre mnoho aplikácií, napr ADAS (automobilové pokročilé asistenčné systémy vodiča) , sledovacie alebo bezpečnostné systémy a priemyselné strojové videnie.
  • Aplikácie Blackfin zahŕňajú riadiace systémy servomotorov, automobilovú elektroniku, monitorovacie systémy a multimediálne spotrebiteľské zariadenia.
  • Tieto procesory jednoducho vykonávajú funkcie mikrokontroléra a spracovania signálu.
  • Používajú sa na audio, riadenie procesov, automobilový priemysel, testovanie, meranie atď.
  • Procesory Blackfin sa používajú v aplikáciách na spracovanie signálu, ako je širokopásmové bezdrôtové pripojenie, mobilná komunikácia a internetové zariadenia s podporou zvuku alebo videa.
  • Blackfin sa používa v konvergentných aplikáciách, ako sú sieťové a streamingové médiá, digitálna domáca zábava, automobilová telematika, infotainment, mobilná televízia, digitálne rádio atď.
  • Procesor Blackfin je vstavaný procesor, ktorý sa vyznačuje energetickou účinnosťou a najvyšším výkonom používaným v aplikáciách, kde sú dôležité multiformátový hlas, zvuk, video, viacrežimové základné pásmo, spracovanie obrazu, spracovanie paketov, zabezpečenie a riadenie v reálnom čase.

Teda toto je prehľad procesora Blackfin – architektúra, výhody a jej aplikácie. Tento procesor vykonáva spracovanie signálu a funkcie mikrokontroléra. Tu je otázka pre vás, čo je to procesor?