Blackfin-processor: arkitektur, funktioner och dess tillämpningar

Prova Vårt Instrument För Att Eliminera Problem





Blackfin-processor designades, utvecklades och marknadsfördes genom Analog Devices & Intel som Micro Signal Architecture (MSA). Arkitekturen för denna processor tillkännagavs i december 2000 och demonstrerades först på ESC ( Inbyggda system Conference) i juni 2001. Denna Blackfin-processor var huvudsakligen designad för att nå effektbegränsningarna och beräkningskraven för nuvarande inbyggda ljud-, video- och kommunikationsapplikationer. Den här artikeln diskuterar en översikt av en Blackfin-processor – arkitektur och dess tillämpningar.


Vad är Blackfin-processor?

Blackfin-processorn är en 16 eller 32-bitars mikroprocessor som inkluderar en inbyggd DSP-funktion med fast punkt som tillhandahålls via 16-bitars MAC:er (multiplicera–ackumuleras). Dessa processorer designades huvudsakligen för en kombinerad lågeffektprocessorarkitektur som kan köra OS samtidigt som man hanterar svåra numeriska uppgifter samtidigt som H.264-videokodning i realtid.



Denna processor kombinerar en 32-bitars RISC och dubbla 16-bitars MAC-signalbehandlingsfunktioner genom att enkelt använda attribut som finns i mikrokontroller för allmänna ändamål. Så den här kombinationen av bearbetningsattribut tillåter Blackfin-processorer att uppnå liknande bra i både kontrollbehandlings- och signalbehandlingsapplikationer. Denna förmåga förenklar avsevärt både implementeringsuppgifterna för hårdvaru- och mjukvarudesign.

  Blackfin-processor
Blackfin-processor

Blackfin-funktioner:

  • Denna processor har en arkitektur med en instruktionsuppsättning inklusive bearbetningsprestanda som helt enkelt uppfyller/slår produktutbudet digital signalprocessor eller DSP för att ge bättre kostnad, kraft och minneseffektivitet.
  • Denna 16 eller 32-bitars arkitekturprocessor tillåter helt enkelt kommande inbäddade applikationer.
    Multimedia-, signal- och kontrollbearbetning inom en enda kärna.
  • Det ökar utvecklarnas produktivitet.
  • Den har inställbar prestanda genom hela dynamisk energihantering för strömförbrukning eller signalbehandling.
  • Det antas mycket snabbt i olika konstruktioner som helt enkelt stöds av flera verktygskedjor såväl som operativsystem.
  • Det kräver minimal optimering på grund av utvecklingsmiljön för kraftfull programvara i kombination med kärnprestanda.
  • Blackfin-processorn stöder branschledande utvecklingsverktyg.
  • Den här processorns prestanda och hälften av kraften hos konkurrerande DSP:er tillåter avancerade specifikationer och nya applikationer.

Blackfin-processorarkitektur

Blackfin-processorn ger både funktionerna hos en mikrokontrollerenhet och digital signalbehandling inom en enda processor genom att tillåta flexibilitet. Så den här processorn inkluderar en SIMD-processor (single instruction multiple data) inklusive vissa funktioner som variabel längd RISK instruktioner, watchdog-timer, on-chip PLL, minneshanteringsenhet, realtidsklocka, serieportar med 100 Mbps, UART kontroller & SPI hamnar.



MMU stöder flera DMA kanaler för att överföra data mellan kringutrustning och minnesundersystem FLASH, SDRAM och SRAM. Den stöder också datacachar och konfigurerbar on-chip-instruktion. Blackfin-processorn är en enkel hårdvara som stöder 8, 16 och 32-bitars aritmetiska operationer.

Blackfin-arkitekturen är huvudsakligen baserad på mikrosignalens arkitektur och denna utvecklades gemensamt av ADI (Analog Devices) & Intel, som inkluderar en 32-bitars RISC-instruktionsuppsättning och 8-bitars videoinstruktionsuppsättning med dubbla 16-bitars multiplicera-ackumulera (MAC) enheter.

  PCBWay   Blackfin-processorarkitektur
Blackfin-processorarkitektur

Analoga enheter kan uppnå en balans mellan DSP- och MCU-kraven genom Blackfins instruktionsuppsättningsarkitektur. I allmänhet är Blackfin-processorn kopplad till de kraftfulla VisualDSP++ mjukvaruutvecklingsverktygen men nu genom att använda C eller C++ är det möjligt att producera högeffektiv kod mycket enkelt än tidigare. För realtidskrav blir operativsystemstöd kritiskt, så Blackfin stöder ett nej. av operativsystem och minnesskydd. Blackfin-processorn kommer i både enkelkärniga som BF533, BF535 & BF537, och dual-core som BF561-modeller.

Blackfin-processorarkitekturen inkluderar olika kringutrustning på kretsen som en PPI (Parallell Peripheral Interface), SPORTS (Serial Ports), SPI (Serial Peripheral Interface), UART (Universal Asynchronous Receiver Transmitter), Allmänna timers, RTC (Real-Time) Klocka), Watchdog-timer, Allmänt I/O (programmerbara flaggor), Controller Area Network (CAN) gränssnitt , Ethernet MAC, Perifer DMA -12, Minne till minne DMA -2 inklusive Handshake DMA, TWI (Two-Wire Interface) Controller, en Debug eller JTAG Gränssnitt och händelsehanterare med 32 Avbryta Ingångar. Alla dessa kringutrustningar i arkitekturen är helt enkelt anslutna till kärnan via olika högbandsbussar. Så en beskrivning av några av dessa kringutrustning ges nedan.

PPI eller Parallell Periferal Interface

Blackfin-processorn tillhandahåller helt enkelt en PPI som också är känd som Parallel Peripheral Interface. Detta gränssnitt är direkt anslutet till parallella analog till digital & digital till analog omvandlare, videokodare och avkodare och även till annan kringutrustning för allmänna ändamål.

Detta gränssnitt inkluderar en dedikerad CLK-ingångsstift, tre ramsynkroniseringsstift och 16 datastift. Här stöder ingångs-CLK-stiftet helt enkelt parallella datahastigheter lika med hälften av systemets CLK-hastighet. Tre olika ITU-R 656-lägen stöder endast Active Video, Vertical Blanking och komplett fält.

PPI:s generella lägen är givna för att passa en mängd olika överförings- och datafångstapplikationer. Så dessa lägen är uppdelade i huvudkategorier Datamottagning genom internt genererade ramsynkroniseringar, Dataöverföring genom internt genererade ramsynkroniseringar, Dataöverföring genom externt genererade ramsynkroniseringar och data som tas emot genom externt genererade ramsynkroniseringar.

Sporter

Blackfin-processorn inkluderar två synkrona serieportar med två kanaler SPORT0 & SPORT1 som används för seriell och multiprocessorkommunikation. Så dessa är höghastighets och synkron serieport som stöder I²S , TDM och olika andra konfigurerbara inramningslägen för anslutning DAC:er , ADC, FPGA:er & andra processorer.

SPI eller seriell perifer gränssnittsport

Blackfin-processorn har en SPI-port som gör att processorn kan konversera med olika SPI-kompatibla enheter. Detta gränssnitt använder helt enkelt tre stift för att överföra data, datastift-2 och ett CLK-stift. De utvalda ingångs- och utgångsstiften på SPI-porten ger helt enkelt ett full-duplex SSI (synkront seriellt gränssnitt) som stöder både master- och slavlägen och även multi-master-miljöer. Baudhastigheten för denna SPI-port & klockfas eller polariteter är programmerbar. Denna port har en inbyggd DMA-kontroller som stöder antingen sändning/mottagning av dataströmmar.

Timers

Blackfin-processorn har 9 programmerbara timerenheter. Dessa timer genererar avbrott till processorkärnan för att tillhandahålla periodiska händelser avsedda för synkronisering med processorns klocka eller till en extern signalräkning.

UART

Termen UART står för 'universal asynchronous receiver transmitter'-port. Blackfin-processorn har 2 halvduplex UART-portar, som är helt väl lämpade genom PC-standard UART. Dessa portar tillhandahåller helt enkelt ett grundläggande UART-gränssnitt till andra värdar eller kringutrustning för att tillhandahålla DMA-stödda, halvduplex, asynkrona seriella dataöverföringar.

UART-portarna inkluderar 5 till 8 databitar och 1 eller 2 stoppbitar och de stöder 2 driftlägen som programmerad I/O och DMA. I det första läget sänder eller tar processorn emot data genom att läsa/skriva I/O-mappade register, varhelst data buffras två gånger på både sändning och mottagning. I den andra moden sänder och tar DMA-styrenheten data emot och minskar antalet avbrott som krävs för att överföra data från & till minnet.

RTC eller realtidsklocka

Realtidsklockan på blackfen-processorn ger helt enkelt olika funktioner som ett stoppur, aktuell tid och alarm. Så, realtidsklockan klockas med en 32,768 kHz kristall utanför Blackfin-processorn. RTC inuti processorn har strömförsörjningsstift, som kan förbli strömsatta och klockade även när resten av Blackfin-processorn är i ett lågenergitillstånd. Realtidsklockan ger ett antal programmerbara avbrottsalternativ. 32,768 kHz ingångs-CLK-frekvensen separeras ner till en 1 Hz-signal genom en Prescaler. I likhet med de andra enheterna kan realtidsklockan väcka Blackfin-processorn från djupt viloläge/viloläge.

Watchdog Timer

Blackfin-processorn har en 32-bitars watchdog-timer, som används för att utföra en mjukvaruövervakningsfunktion. Så programmeraren initierar timerns räknevärde som tillåter rätt avbrott och tillåter sedan timern. Därefter måste programvaran ladda om räknaren innan den räknas från det programmerade värdet till '0'.

GPIO eller allmän I/O

En GPIO är ett digitalt signalstift som används som ingång, utgång eller båda och styrs av mjukvara. Blackfin-processorn inkluderar GPIO (allmänna I/O)-stift, 48-dubbelriktade över 3-separata GPIO-moduler som PORTFIO, PORTHIO & PORTGIO anslutna till Port G, Port H och Port F respektive. Varje portstift för allmänna ändamål styrs individuellt genom manipulering av status, portkontroll och avbrottsregister som GPIO DCR, GPIO CSR, GPIO IMR och GPIO ISR.

Ethernet MAC

Ethernet MAC-tillbehören i Blackfin-processorn ger 10 till 100 Mb/s mellan en MII (Media Independent Interface) och det perifera delsystemet Blackfin. MAC fungerar helt enkelt i både Full-Duplex och Half-Duplex-lägen. Medieåtkomstkontrollern klockas internt från processorns CLKIN-stift.

Minne

Minnet i Blackfin Processor-arkitekturen tillhandahåller helt enkelt både nivå 1 och nivå 2 minnesblock i implementeringen av enheten. Minnet i L1 som data- och instruktionsminne är helt enkelt anslutet till processorkärnan direkt, körs med fullständig system-CLK-hastighet och ger maximal systemprestanda för kritiska tidsalgoritmsegment. L2-minnet som SRAM-minnet är större vilket ger lite reducerad prestanda, men det är fortfarande snabbare jämfört med off-chip-minne.

Strukturen hos L1-minnet är implementerad för att ge den prestanda som krävs för att bearbeta signaler samtidigt som det erbjuder program i mikrokontroller. Detta uppnås genom att helt enkelt tillåta minnet L1 att arrangeras som SRAM, cache, annars en kombination av båda.

Genom att stödja cache- och SRAM-programmeringsmodellerna tilldelar konstruktörerna av systemet kritiska signalbearbetningsdatauppsättningar i realtid som behöver låg latens och hög bandbredd till SRAM, samtidigt som de lagrar kontroll- eller OS-uppgifter i realtid i cacheminnet.

Startlägen

Blackfin-processorn inkluderar sex mekanismer för att ladda det interna L1-instruktionsminnet automatiskt efter en återställning. Så de olika startlägena inkluderar främst; Startläge från 8-bitars & 16-bitars externt flashminne, seriellt SPI-minne. SPI-värdenheten, UART, seriellt TWI-minne, TWI Host och utför från 16-bitars externt minne, förbi startserien. För vart och ett av de första 6 startlägena läses först en 10-byte header från en extern minnesenhet. Så, rubriken indikerar nej. antal byte som ska överföras och minnesdestinationsadressen. Flera minnesblock kan laddas genom valfri startserie. När alla block är helt enkelt laddade, startar programexekveringen från början av L1-instruktionen SRAM.

Adresseringslägen

Svartfenprocessorns adresseringslägen bestämmer helt enkelt hur ett individuellt åtkomstminne och adressering ska specificera en plats. Adresseringslägena som används i svartfenad processor är indirekt adressering, autoinkrement/minsk, postmodifiering, indexerad med omedelbar offset, cirkulär buffert och Bitrevers.

Indirekt adressering

I detta läge inkluderar adressfältet i instruktionen platsen för minnet eller registret varhelst den effektiva operandens adress finns. Denna adressering är klassificerad i två kategorier som Register Indirect & Memory Indirect.

Till exempel LOAD R1, @300

I ovanstående instruktion lagras den effektiva adressen helt enkelt på minnesplats 300.

Autoincrement/Decrement Addressing

Automatisk inkrementeringsadressering uppdaterar helt enkelt både Pointer- och Indexregistren efter inträdesrätten. Mängden ökning beror huvudsakligen på storleken på ordstorleken. 32-bitars ordåtkomst kan resultera i pekarens uppdatering med '4'. En 16-bitars ordåtkomst uppdaterar pekaren med '2' och en 8-bitars ordåtkomst uppdaterar pekaren med '1'. Läsoperationerna för både 8-bitars och 16-bitars kan indikera antingen noll-förlängning/teckenförlängning av innehållet in i målregistret. Pekarregister används huvudsakligen för 8-, 16- och 32-bitars åtkomst medan indexregister endast används för 16 och 32-bitars åtkomster

Till exempel: R0 = W [P1++] (Z);

I ovanstående instruktion laddas ett 16-bitars ord in i ett 32-bitars destinationsregister från en spetsig adress genom pekarregistret 'P1'. Därefter ökas pekaren med 2 och ordet '0' utökas för att fylla 32-bitars destinationsregistret.

På samma sätt fungerar automatisk minskning genom att minska adressen efter inträdesrätten.

Till exempel: R0 = [ I2– ] ;

I ovanstående instruktion laddas ett 32-bitars värde in i destinationsregistret och minskar indexregistret med 4.

Post-modifiera adressering

Denna typ av adressering använder helt enkelt värdet i Index/Pointer-registren som den effektiva adressen. Därefter modifierar den det med registerinnehåll. Indexregister ändras helt enkelt med modifierade register medan pekarregister ändras av andra pekarregister. Precis som destinationsregister, stöder post-modifiering typ adressering inte Pointer register.

Till exempel: R3 = [P1++P2];

I ovanstående instruktion laddas ett 32-bitars värde in i 'R3'-registret och hittas inom platsen för minnet som pekas av 'P1'-registret. Därefter läggs värdet i P2-registret till värdet i P1-registret.

Indexeras med omedelbar offset

Indexerad adressering tillåter helt enkelt program att hämta värden från datatabeller. Pekarregistret ändras av det omedelbara fältet, efter det används det som effektiv adress. Så Pointer registervärdet uppdateras inte.

Till exempel, om P1 = 0x13, då skulle [P1 + 0x11] effektivt motsvara [0x24], vilket är associerat med alla åtkomster.

Bit omvänd adressering

För vissa algoritmer kräver program bitomvänd bäradressering för att erhålla resultat i sekventiell ordning, särskilt för FFT-beräkningar (Fast Fourier Transform). För att uppfylla dessa algoritms krav tillåter den bitomvända adresseringsfunktionen i Data Address Generators upprepade gånger att dela upp dataserier och lagra dessa data i bitomvänd ordning.

Cirkulär buffertadressering

Blackfin-processorn tillhandahåller en funktion som valfri cirkulär adressering som helt enkelt ökar ett indexregister med ett fördefinierat intervall av adresser, efter det återställer den automatiskt indexregistren för att upprepa det intervallet. Så den här funktionen förbättrar prestandan för in-/utgångsslingan genom att helt enkelt ta bort adressindexpekaren varje gång.

Cirkulär buffertadressering är mycket användbar när du upprepade gånger laddar eller lagrar en sträng av datablock av fast storlek. Innehållet i den cirkulära bufferten måste uppfylla dessa villkor:

  • Den cirkulära buffertens maximala längd ska vara ett tal utan tecken med en magnitud under 231.
  • Modifierarens storlek måste vara under den cirkulära buffertens längd.
  • Den första platsen för pekaren 'I' måste vara i den cirkulära bufferten som definieras av längden 'L' och basen 'B'.

Om något av ovanstående villkor inte är uppfyllt, specificeras inte processorns beteende.

Registrera fil för Blackfin-processor

Blackfin-processorn innehåller tre definitiva registerfiler som; Dataregisterfil, Pekarregisterfil & DAG-register.

  • Dataregisterfilen samlar in operander med hjälp av databussarna som används för beräkningsenheterna och lagrar beräkningsresultat.
  • Pekarregisterfilen inkluderar pekare som används för adresseringsoperationer.
  • DAG-registren hanterar cirkulära buffertar med noll overhead som används för DSP-operationer.

Blackfin-processor ger förstklassig energihantering och prestanda. Dessa är designade med en designmetod för låg spänning och låg effekt som kan variera både spänning och driftfrekvens för att minska det totala strömutnyttjandet avsevärt. Så detta kan resultera i en avsevärd minskning av energianvändningen, jämfört med att bara ändra driftfrekvensen. Så detta tillåter helt enkelt batterilivslängden för behändiga apparater.

Blackfin-processor stöder olika externa minnen som DDR-SDRAM, SDRAM, NAND-blixt, SRAM & NOR-blixt. Vissa Blackfin-processorer innehåller även masslagringsgränssnitt som SD/SDIO & ATAPI. De kan också stödja 100 megabyte minne inom utrymmet för externt minne.

Fördelar

De fördelarna med Blackfin-processorn inkluderar följande.

  • Blackfin-processorer ger grundläggande fördelar för konstruktören av systemet.
  • Blackfin-processor erbjuder mjukvaruflexibilitet såväl som skalbarhet för konvergerande applikationer som ljud-, video-, röst- och bildbehandling i multiformat, realtidssäkerhet, kontrollbearbetning och multimode basbandspaketbehandling
  • Den effektiva kontrollbearbetningskapaciteten och högpresterande signalbehandlingen tillåter olika nya marknader och applikationer.
  • DPM (Dynamic Power Management) tillåter systemdesignern att särskilt modifiera enhetens strömförbrukning till slutsystemets krav.
  • Dessa processorer minskar utvecklingstiden och kostnaderna avsevärt.

Ansökningar

De tillämpningar av Blackfin-processorn inkluderar följande.

  • Blackfin-processorer är idealiska för många applikationer som ADAS (avancerade förarassistanssystem för fordon) , övervaknings- eller säkerhetssystem & industriell maskinseende.
  • Blackfin-applikationer inkluderar servomotorstyrningssystem, fordonselektronik, övervakningssystem och multimedia konsumentenheter.
  • Dessa processorer utför helt enkelt mikrokontroller och signalbehandlingsfunktioner.
  • Dessa används för ljud, processkontroll, fordon, testning, mätning, etc.
  • Blackfin-processorerna används i signalbehandlingsapplikationer som trådlöst bredband, mobil kommunikation och ljud eller video-kompatibla Internetapparater.
  • Blackfin används i konvergenta applikationer som nätverks- och strömmande media, digital hemunderhållning, biltelematik, infotainment, mobil-TV, digitalradio, etc.
  • Blackfin-processor är en inbyggd processor som har den energieffektivitet och högsta prestanda som används i applikationer där flerformatsröst, ljud, video, multi-mode basband, bildbehandling, paketbearbetning, realtidssäkerhet och kontrollbehandling är betydande.

Detta är alltså en översikt över Blackfin Processor – arkitektur, fördelar och dess tillämpningar. Denna processor utför signalbehandling och mikrokontrollerfunktioner. Här är en fråga till dig, vad är en processor?