Processador Blackfin: Arquitectura, característiques i les seves aplicacions

Proveu El Nostre Instrument Per Eliminar Problemes





El processador Blackfin va ser dissenyat, desenvolupat i comercialitzat mitjançant Analog Devices i Intel com a Micro Signal Architecture (MSA). L'arquitectura d'aquest processador es va anunciar el desembre de 2000 i es va demostrar per primera vegada a l'ESC ( Sistemes encastats Conferència) el juny de 2001. Aquest processador Blackfin va ser dissenyat principalment per assolir les limitacions de potència i les demandes computacionals de les aplicacions actuals d'àudio, vídeo i comunicacions incrustades. Aquest article tracta una visió general d'a Processador Blackfin – L'arquitectura i les seves aplicacions.


Què és el processador Blackfin?

El processador Blackfin és de 16 o 32 bits microprocessador que inclou una funcionalitat DSP de punt fix incorporada subministrada a través de MAC de 16 bits (multiplicació-acumula). Aquests processadors es van dissenyar principalment per a una arquitectura combinada de processadors de baix consum que pot executar el sistema operatiu mentre gestiona tasques numèriques difícils simultàniament, com ara la codificació de vídeo H.264 en temps real.



Aquest processador combina una funcionalitat de processament de senyal RISC de 32 bits i doble MAC de 16 bits utilitzant fàcilment els atributs que es troben als microcontroladors de propòsit general. Així, aquesta combinació d'atributs de processament permet als processadors Blackfin aconseguir un rendiment similar tant en el processament de control com en les aplicacions de processament de senyal. Aquesta capacitat simplifica molt les tasques d'implementació del disseny de maquinari i programari.

  Processador Blackfin
Processador Blackfin

Característiques Blackfin:

  • Aquest processador té una arquitectura de conjunt d'instruccions únic que inclou un rendiment de processament que simplement compleix/supera la gamma de productes processador de senyal digital o DSP per oferir un millor cost, potència i eficiència de memòria.
  • Aquest processador d'arquitectura de 16 o 32 bits només permet les properes aplicacions incrustades.
    Processament multimèdia, senyal i control dins d'un sol nucli.
  • Augmenta la productivitat dels desenvolupadors.
  • Té un rendiment ajustable a tota la gestió dinàmica de l'energia per al consum d'energia o el processament del senyal.
  • S'adopta molt ràpidament en diversos dissenys que simplement són compatibles amb diverses cadenes d'eines i sistemes operatius.
  • Requereix una optimització mínima a causa de l'entorn de desenvolupament de programari potent juntament amb el rendiment bàsic.
  • El processador Blackfin admet eines de desenvolupament líders en el sector.
  • El rendiment d'aquest processador i la meitat de la potència dels DSP de la competència permeten especificacions avançades i noves aplicacions.

Arquitectura del processador Blackfin

El processador Blackfin proporciona les funcionalitats d'una unitat de microcontrolador i processament digital del senyal dins d'un únic processador permetent flexibilitat. Així, aquest processador inclou un processador SIMD (instrucció única de dades múltiples) que inclou algunes característiques com ara la longitud variable RISC instruccions, temporitzador de control, PLL en xip, unitat de gestió de memòria, rellotge en temps real, ports sèrie amb 100 Mbps, UART controladors i SPI ports.



La MMU admet múltiples DMA canals per transferir dades entre perifèrics i subsistemes de memòria FLASH, SDRAM i SRAM. També admet memòria cau de dades i instruccions configurables al xip. El processador Blackfin és un maquinari senzill que admet operacions aritmètiques de 8, 16 i 32 bits.

L'arquitectura Blackfin es basa principalment en l'arquitectura de micro senyal i això va ser desenvolupat conjuntament per ADI (Analog Devices) i Intel, que inclou un conjunt d'instruccions RISC de 32 bits i un conjunt d'instruccions de vídeo de 8 bits amb acumulació de multiplicació dual de 16 bits. unitats (MAC).

  PCBWay   Arquitectura del processador Blackfin
Arquitectura del processador Blackfin

Els dispositius analògics són capaços d'aconseguir un equilibri entre els requisits de DSP i MCU mitjançant l'arquitectura de conjunt d'instruccions de Blackfin. En general, el processador Blackfin s'acobla amb les potents eines de desenvolupament de programari VisualDSP++, però ara utilitzant C o C++, és possible produir codi altament eficient molt fàcilment que abans. Per als requisits en temps real, el suport del sistema operatiu esdevé fonamental, de manera que el Blackfin admet un no. de sistemes operatius i protecció de memòria. El processador Blackfin ve en models d'un sol nucli com el BF533, BF535 i BF537 i de doble nucli com els models BF561.

L'arquitectura del processador Blackfin inclou diferents perifèrics en xip com un PPI (interfície perifèrica paral·lela), SPORTS (ports sèrie), SPI (interfície perifèrica sèrie), UART (transmissor receptor asíncron universal), temporitzadors d'ús general, RTC (temps real). Rellotge), temporitzador Watchdog, E/S d'ús general (bandera programable), Interfície de xarxa d'àrea del controlador (CAN). , Ethernet MAC, DMA perifèrics -12, DMA de memòria a memòria -2 incloent Handshake DMA, controlador TWI (interfície de dos cables), un depurador o JTAG Interfície i gestor d'esdeveniments amb 32 Interrupció Entrades. Tots aquests perifèrics de l'arquitectura estan connectats simplement mitjançant diferents busos d'amplada de banda alta al nucli. Per tant, a continuació es fa una descripció d'alguns d'aquests perifèrics.

PPI o interfície perifèrica paral·lela

El processador Blackfin simplement proporciona un PPI que també es coneix com a interfície perifèrica paral·lela. Aquesta interfície està connectada directament a convertidors analògics a digitals i digitals a analògics paral·lels, codificadors de vídeo i descodificadors i també a altres perifèrics d'ús general.

Aquesta interfície inclou un pin CLK d'entrada dedicat, tres pins de sincronització de fotogrames i 16 pins de dades. Aquí, el pin CLK d'entrada només admet taxes de dades paral·leles iguals a la meitat de la velocitat CLK del sistema. Tres modes ITU-R 656 diferents només admeten el vídeo actiu, l'eliminació vertical i el camp complet.

Els modes de propòsit general del PPI es donen per adaptar-se a una àmplia varietat d'aplicacions de transmissió i captura de dades. Així, aquests modes es divideixen en categories principals Recepció de dades mitjançant sincronitzacions de fotogrames generades internament, Transmissió de dades mitjançant sincronitzacions de fotogrames generades internament, Transmissió de dades mitjançant sincronitzacions de fotogrames generades externament i dades rebudes mitjançant sincronitzacions de fotogrames generades externament.

ESPORTS

El processador Blackfin inclou dos ports sèrie síncrons de doble canal SPORT0 i SPORT1 utilitzats per a comunicacions sèrie i multiprocessador. Per tant, aquests són ports sèrie síncrons i d'alta velocitat compatibles I²S , TDM i diversos altres modes d'enquadrament configurables per a la connexió DAC , ADC, FPGA i altres processadors.

SPI o port d'interfície perifèrica sèrie

El processador Blackfin inclou un port SPI que permet que el processador converse amb diversos dispositius compatibles amb SPI. Aquesta interfície simplement utilitza tres pins per transmetre dades, pins de dades-2 i un pin CLK. Els pins d'entrada i sortida de selecció del port SPI simplement proporcionen un SSI (interfície sèrie síncrona) full-duplex que admet tant els modes mestre com esclau i també entorns multimaster. La velocitat de transmissió d'aquest port SPI i la fase o les polaritats del rellotge és programable. Aquest port té un controlador DMA incorporat que admet transmissió/recepció de fluxos de dades.

Temporitzadors

El processador Blackfin té 9 unitats de temporitzador programables. Aquests temporitzadors generen interrupcions al nucli del processador per proporcionar esdeveniments periòdics destinats a la sincronització amb el rellotge del processador o amb un recompte de senyals externs.

UART

El terme UART significa port de 'transmissor receptor asíncron universal'. El processador Blackfin proporciona 2 ports UART semidúplex, que s'adapten completament als UART estàndard de PC. Aquests ports simplement proporcionen una interfície UART bàsica a altres amfitrions o perifèrics per proporcionar transferències de dades en sèrie asíncrones, semidúplex i compatibles amb DMA.

Els ports UART inclouen de 5 a 8 bits de dades i 1 o 2 bits de parada i admeten 2 modes de funcionament com E/S programada i DMA. En el primer mode, el processador transmet o rep dades mitjançant la lectura/escriptura de registres mapejats d'E/S, allà on les dades s'emmagatzemen dues vegades en la transmissió i la recepció. En el segon mode, el controlador DMA transmet i rep dades i disminueix el nombre d'interrupcions necessàries per transmetre dades des de i cap a la memòria.

RTC o rellotge en temps real

El rellotge en temps real del processador blackfin simplement ofereix diferents funcions com un cronòmetre, l'hora actual i l'alarma. Per tant, el rellotge en temps real es registra amb un cristall de 32,768 kHz extern al processador Blackfin. L'RTC dins del processador té pins d'alimentació, que poden mantenir-se encès i rellotge fins i tot quan la resta del processador Blackfin estigui en condicions de baixa potència. El rellotge en temps real ofereix una sèrie d'opcions d'interrupció programables. La freqüència CLK d'entrada de 32,768 kHz es separa a un senyal d'1 Hz mitjançant un preescalador. De manera similar a la resta de dispositius, el rellotge en temps real pot activar el processador Blackfin del mode de repòs profund/mode de repòs.

Temporitzador de gos vigilant

El processador Blackfin té un temporitzador de control de 32 bits, utilitzat per executar una funció de control de programari. Així, el programador inicialitza el valor de recompte del temporitzador que permet la interrupció adequada i, a continuació, permet el temporitzador. Després d'això, el programari ha de tornar a carregar el comptador abans que compti des del valor programat fins a '0'.

GPIO o E/S de propòsit general

Un GPIO és un pin de senyal digital que s'utilitza com a entrada, sortida o ambdues i es controla mitjançant programari. El processador Blackfin inclou pins GPIO (E/S de propòsit general), 48 bidireccionals en 3 mòduls GPIO separats com PORTFIO, PORTHIO i PORTGIO connectats amb el port G, el port H i el port F respectivament. Cada pin de port d'ús general es controla individualment mitjançant la manipulació de l'estat, el control del port i els registres d'interrupció com GPIO DCR, GPIO CSR, GPIO IMR i GPIO ISR.

Ethernet MAC

El perifèric Ethernet MAC del processador Blackfin proporciona de 10 a 100 Mb/s entre una interfície MII (Media Independent Interface) i el subsistema perifèric de Blackfin. El MAC només funciona en els modes Full-Duplex i Half-Duplex. El controlador d'accés als mitjans es registra internament des del pin CLKIN del processador.

Memòria

La memòria de l'arquitectura del processador Blackfin només proporciona blocs de memòria de nivell 1 i nivell 2 en la implementació del dispositiu. La memòria de dades i instruccions L1, com ara la memòria d'instruccions, es connecta directament al nucli del processador, s'executa a la velocitat CLK del sistema completa i proporciona el màxim rendiment del sistema per als segments d'algorisme de temps crítics. La memòria L2 com la memòria SRAM és més gran que ofereix un rendiment una mica reduït, però, encara és més ràpida en comparació amb la memòria fora de xip.

L'estructura de la memòria L1 s'implementa per proporcionar el rendiment necessari per processar senyals alhora que ofereix programes en microcontroladors. Això s'aconsegueix simplement permetent que la memòria L1 s'organitzi com a SRAM, memòria cau, en cas contrari, una combinació de tots dos.

En donar suport als models de programació de memòria cau i SRAM, els dissenyadors del sistema assignen conjunts crítics de dades de processament de senyals en temps real que necessiten una baixa latència i un ample de banda elevat a la SRAM, alhora que emmagatzemen tasques de control o sistema operatiu en temps real a la memòria cau.

Modes d'arrencada

El processador Blackfin inclou sis mecanismes per a la càrrega de memòria d'instruccions interna L1 automàticament després d'un restabliment. Així, els diferents modes d'arrencada inclouen principalment; Mode d'arrencada des de la memòria flash externa de 8 bits i 16 bits, memòria SPI sèrie. El dispositiu host SPI, UART, memòria TWI sèrie, TWI Host i funcionen des de la memòria externa de 16 bits, sense passar per la sèrie d'arrencada. Per a cadascun dels 6 primers modes d'arrencada, primer es llegeix una capçalera de 10 bytes des d'un dispositiu de memòria exterior. Per tant, la capçalera indica el no. de bytes a transmetre i l'adreça de destinació de la memòria. Es poden carregar diversos blocs de memòria mitjançant qualsevol sèrie d'arrencada. Quan simplement es carreguen tots els blocs, l'execució del programa comença des del començament de la SRAM d'instrucció L1.

Modes d'adreçament

Els modes d'adreçament del processador blackfin simplement determinen com una memòria d'accés individual i un adreçament ha d'especificar una ubicació. Els modes d'adreçament utilitzats al processador Blackfin són l'adreçament indirecte, l'increment/decrement automàtic, la modificació posterior, l'indexació amb desplaçament immediat, la memòria intermèdia circular i la inversa de bits.

Adreçament indirecte

En aquest mode, el camp d'adreça de la instrucció inclou la ubicació de la memòria o del registre allà on hi hagi l'adreça de l'operand eficient. Aquest adreçament es classifica en dues categories com Registre indirecte i Memòria indirecta.

Per exemple LOAD R1, @300

A la instrucció anterior, l'adreça efectiva s'emmagatzema simplement a la ubicació de memòria 300.

Autoincrement/Disminució de l'adreça

L'adreçament d'increment automàtic només actualitza el punter i els registres d'índex després del dret d'entrada. La quantitat d'increment depèn principalment de la mida de la mida de la paraula. L'accés a paraules de 32 bits pot resultar dins de l'actualització del punter amb '4'. Un accés de paraula de 16 bits actualitza el punter amb '2' i un accés de paraula de 8 bits actualitza el punter amb '1'. Les operacions de lectura tant de 8 bits com de 16 bits poden indicar que zero-extend/sign-extend el contingut al registre de destinació. Els registres de punter s'utilitzen principalment per a accessos de 8, 16 i 32 bits, mentre que els registres d'índex només s'utilitzen per a accessos de 16 i 32 bits.

Per exemple: R0 = W [ P1++ ] (Z) ;

A la instrucció anterior, una paraula de 16 bits es carrega en un registre de destinació de 32 bits des d'una adreça apuntada a través del registre de punter 'P1'. Després d'això, el punter s'incrementa amb 2 i la paraula s'estén '0' per omplir el registre de destinació de 32 bits.

De la mateixa manera, la disminució automàtica funciona disminuint l'adreça després del dret d'entrada.

Per exemple: R0 = [ I2– ] ;

A la instrucció anterior, un valor de 32 bits es carrega al registre de destinació i redueix el registre d'índex en 4.

Adreçament posterior a la modificació

Aquest tipus d'adreçament simplement utilitza el valor dins dels registres d'índex/punter com l'adreça eficient. Després d'això, el modifica amb el contingut del registre. Els registres d'índex simplement es canvien amb registres modificats, mentre que els registres de punter es canvien per altres registres de punter. Igual que els registres de destinació, l'adreçament de tipus post-modificació no admet els registres de punter.

Per exemple: R3 = [ P1++P2] ;

A la instrucció anterior, es carrega un valor de 32 bits al registre 'R3' i es troba a la ubicació de la memòria apuntada pel registre 'P1'. Després d'això, el valor del registre 'P2' s'afegeix al valor del registre P1.

Indexat amb compensació immediata

L'adreçament indexat simplement permet als programes obtenir valors de les taules de dades. El registre del punter es modifica pel camp immediat, després s'utilitza com a adreça efectiva. Per tant, el valor del registre del punter no s'actualitza.

Per exemple, si P1 = 0x13, aleshores [P1 + 0x11] seria eficientment equivalent a [0x24], que està associat a tots els accessos.

Bit de direcció inversa

Per a alguns algorismes, els programes requereixen un adreçament de bits invertit per obtenir resultats en ordre seqüencial, especialment per als càlculs FFT (Fast Fourier Transform). Per satisfer els requisits d'aquests algorismes, la funció d'adreçament de bits invertits dels generadors d'adreces de dades permet subdividir sèries de dades i emmagatzemar aquestes dades en un ordre de bits invertit.

Adreçament de buffer circular

El processador Blackfin proporciona una característica com l'adreçament circular opcional que simplement augmenta un registre d'índex per un rang predefinit d'adreces, després restableix automàticament els registres d'índex per repetir aquest rang. Per tant, aquesta característica millora el rendiment del bucle d'entrada/sortida simplement eliminant el punter d'índex d'adreces cada vegada.

L'adreçament de memòria intermèdia circular és molt útil quan es carrega o emmagatzema repetidament una cadena de blocs de dades de mida fixa. El contingut del buffer circular ha de complir aquestes condicions:

  • La longitud màxima de la memòria intermèdia circular hauria de ser un nombre sense signe amb una magnitud inferior a 231.
  • La magnitud del modificador ha d'estar per sota de la longitud del buffer circular.
  • La primera ubicació del punter 'I' ha d'estar a la memòria intermèdia circular que es defineix per la longitud 'L' i la base 'B'.

Si alguna de les condicions anteriors no es compleix, no s'especifica el comportament del processador.

Fitxer de registre del processador Blackfin

El processador Blackfin inclou tres fitxers de registre definitius com; Fitxer de registre de dades, fitxer de registre de punter i registre DAG.

  • El fitxer de registre de dades recull operands utilitzant els busos de dades utilitzats per a les unitats computacionals i emmagatzema els resultats computacionals.
  • El fitxer de registre de punters inclou punters utilitzats per a les operacions d'adreçament.
  • Els registres DAG gestionen els buffers circulars de sobrecàrrega zero utilitzats per a les operacions DSP.

El processador Blackfin ofereix una gestió i un rendiment d'energia de primera classe. Aquests estan dissenyats amb una metodologia de disseny de baixa tensió i baixa potència que són capaços de variar tant la tensió com la freqüència d'operació per reduir significativament la utilització general de l'energia. Per tant, això pot provocar una disminució considerable de la utilització d'energia, en comparació amb només canviar la freqüència d'operació. Així, això simplement permet una durada de la bateria més llarga per als electrodomèstics útils.

El processador Blackfin admet diferents memòries externes com ara DDR-SDRAM, SDRAM, flash NAND, SRAM i flash NOR. Alguns processadors Blackfin també inclouen interfícies d'emmagatzematge massiu com SD/SDIO i ATAPI. També poden suportar 100 megabytes de memòria dins de l'espai de memòria externa.

Avantatges

El avantatges del processador Blackfin incloure el següent.

  • Els processadors Blackfin ofereixen avantatges bàsics al dissenyador del sistema.
  • El processador Blackfin ofereix flexibilitat de programari i escalabilitat per a aplicacions convergents com el processament d'àudio, vídeo, veu i imatge en multiformat, seguretat en temps real, processament de control i processament de paquets de banda base multimode.
  • La capacitat de processament de control eficient i el processament de senyal d'alt rendiment permeten nous mercats i aplicacions diferents.
  • DPM (Dynamic Power Management) permet al dissenyador del sistema modificar especialment el consum d'energia del dispositiu als requisits del sistema final.
  • Aquests processadors redueixen molt el temps i els costos de desenvolupament.

Aplicacions

El aplicacions del processador Blackfin incloure el següent.

  • Els processadors Blackfin són ideals per a moltes aplicacions com ADAS (sistemes avançats d'assistència al conductor d'automòbil) , sistemes de vigilància o seguretat i visió industrial industrial.
  • Les aplicacions Blackfin inclouen sistemes de control de servomotors, electrònica d'automòbils, sistemes de monitorització i dispositius multimèdia de consum.
  • Aquests processadors simplement realitzen funcions de microcontrolador i processament de senyal.
  • S'utilitzen per a àudio, control de processos, automoció, proves, mesurament, etc.
  • Els processadors Blackfin s'utilitzen en aplicacions de processament de senyals com ara aparells d'Internet amb capacitat d'àudio o vídeo de banda ampla, comunicacions mòbils i Internet.
  • Blackfin s'utilitza en aplicacions convergents com ara mitjans de xarxa i streaming, entreteniment domèstic digital, telemàtica d'automòbils, infoentreteniment, televisió mòbil, ràdio digital, etc.
  • El processador Blackfin és un processador incrustat que té l'eficiència energètica i el rendiment més alt que s'utilitza en aplicacions on la veu, l'àudio, el vídeo, la banda base multimode, el processament d'imatges, el processament de paquets, la seguretat i el control en temps real són importants.

Així, això és una visió general del processador Blackfin – arquitectura, avantatges i les seves aplicacions. Aquest processador realitza funcions de processament de senyal i microcontrolador. Aquí teniu una pregunta, què és un processador?