Blackfin protsessor: arhitektuur, funktsioonid ja rakendused

Proovige Meie Instrumenti Probleemide Kõrvaldamiseks





Blackfin protsessor kujundati, arendati ja turustati Analog Devices & Inteli kaudu mikrosignaaliarhitektuurina (MSA). Selle protsessori arhitektuur avalikustati 2000. aasta detsembris ja seda demonstreeriti esmakordselt ESC-l ( Manussüsteemid konverents) juunis 2001. See Blackfin protsessor oli mõeldud peamiselt praeguste sisseehitatud heli-, video- ja siderakenduste võimsuspiirangute ja arvutusnõuete täitmiseks. Selles artiklis käsitletakse ülevaadet a Blackfin protsessor – arhitektuur ja selle rakendused.


Mis on Blackfin protsessor?

Blackfin protsessor on 16- või 32-bitine mikroprotsessor mis sisaldab sisseehitatud fikseeritud punkti DSP-funktsiooni, mida tarnitakse 16-bitiste MAC-ide kaudu (korrutab-akumuleerib). Need protsessorid olid mõeldud peamiselt kombineeritud vähese energiatarbega protsessori arhitektuuri jaoks, mis suudab OS-i käitada, täites samal ajal keerulisi numbrilisi ülesandeid, nagu reaalajas H.264 videokodeering.



See protsessor ühendab 32-bitise RISC-i ja kahe 16-bitise MAC-signaali töötlemise funktsiooni, kasutades lihtsasti üldotstarbelistes mikrokontrollerites leiduvaid atribuute. Nii et see töötlemisatribuutide kombinatsioon võimaldab Blackfin protsessoritel saavutada sarnaseid tulemusi nii juhtimis- kui ka signaalitöötlusrakendustes. See võimalus lihtsustab oluliselt nii riist- kui ka tarkvara projekteerimise rakendusülesandeid.

  Blackfin protsessor
Blackfin protsessor

Blackfin omadused:

  • Sellel protsessoril on ühe käsukomplekti arhitektuur, sealhulgas töötlemisjõudlus, mis lihtsalt vastab tootevalikule / ületab selle digitaalne signaaliprotsessor või DSP, et pakkuda paremat kulu, võimsust ja mälu tõhusust.
  • See 16- või 32-bitise arhitektuuriga protsessor võimaldab lihtsalt tulevasi manustatud rakendusi.
    Multimeediumi-, signaali- ja juhtimistöötlus ühes tuumas.
  • See suurendab arendajate tootlikkust.
  • Sellel on häälestatav jõudlus kogu dünaamilise toitehalduse jooksul energiatarbimise või signaalitöötluse jaoks.
  • See võetakse väga kiiresti kasutusele erinevatesse kujundustesse, mida lihtsalt toetavad mitmed tööriistaahelad ja operatsioonisüsteemid.
  • See nõuab minimaalset optimeerimist võimsa tarkvara arenduskeskkonna tõttu koos põhijõudlusega.
  • Blackfin protsessor toetab valdkonna juhtivaid arendustööriistu.
  • Selle protsessori jõudlus ja poole väiksem võimsus konkureerivatest DSP-dest võimaldab täiustatud spetsifikatsioone ja uusi rakendusi.

Blackfin protsessori arhitektuur

Blackfin protsessor pakub nii mikrokontrolleri funktsioone kui ka digitaalne signaalitöötlus ühes protsessoris, võimaldades paindlikkust. Seega sisaldab see protsessor SIMD (ühe käsuga mitu andmeside) protsessorit, mis sisaldab mõningaid funktsioone, nagu muutuva pikkusega protsessor RISK juhised, valvekoera taimer, kiibil olev PLL, mäluhaldusseade, reaalajas kell, jadapordid kiirusega 100 Mbps, UART kontrollerid ja SPI sadamad.



MMU toetab mitut DMA kanalid andmete edastamiseks välisseadmete ja FLASH-, SDRAM- ja SRAM-mälu alamsüsteemide vahel. Samuti toetab see andmevahemälu ja konfigureeritavaid kiibil olevaid juhiseid. Blackfin protsessor on lihtne riistvara, mis toetab 8-, 16- ja 32-bitiseid aritmeetilisi tehteid.

Blackfin arhitektuur põhineb peamiselt mikrosignaali arhitektuuril ja selle töötasid ühiselt välja ADI (Analog Devices) ja Intel, mis sisaldab 32-bitist RISC-käskude komplekti ja 8-bitist videokäskude komplekti koos kahe 16-bitise korrutusakumulatsiooniga. (MAC) ühikut.

  PCBWay   Blackfin protsessori arhitektuur
Blackfin protsessori arhitektuur

Analoogseadmed on võimelised saavutama tasakaalu DSP ja MCU nõuete vahel Blackfini käsukomplekti arhitektuuri kaudu. Üldjuhul on Blackfin protsessor ühendatud võimsate VisualDSP++ tarkvaraarendustööriistadega, kuid nüüd on C või C++ abil võimalik toota ülitõhusat koodi senisest lihtsamalt. Reaalajas nõudmiste jaoks muutub operatsioonisüsteemi tugi kriitiliseks, nii et Blackfin toetab ei. operatsioonisüsteemide ja mälu kaitse. Blackfin protsessor on saadaval nii ühetuumalisena nagu BF533, BF535 ja BF537, kui ka kahetuumalisena nagu BF561.

Blackfin protsessori arhitektuur sisaldab erinevaid kiibil olevaid välisseadmeid, nagu PPI (parallel perifeerne liides), SPORTS (jadapordid), SPI (serial Peripheral Interface), UART (universaalne asünkroonne vastuvõtja saatja), üldotstarbelised taimerid, RTC (reaalajas) Kell), valvekoera taimer, üldotstarbeline I/O (programmeeritavad lipud), Controller Area Network (CAN) liides , Ethernet MAC, perifeersed DMA-d -12, mälust mällu DMA-d -2, sealhulgas käepigistuse DMA, TWI (kahejuhtmelise liidese) kontroller, silumis- või JTAG Liides ja sündmuste käitleja 32-ga Vahele segama Sisendid. Kõik need arhitektuuri välisseadmed on lihtsalt ühendatud erinevate suure ribalaiusega siinide kaudu tuumaga. Nii et mõnede nende välisseadmete kirjeldus on toodud allpool.

PPI või Parallel Peripheral Interface

Blackfin protsessor pakub lihtsalt PPI-d, mida tuntakse ka kui paralleelset välisliidest. See liides on otse ühendatud paralleelsete analoog-digitaal- ja digitaal-analoogmuundurite, videokooderite ja dekoodritega ning ka muude üldotstarbeliste välisseadmetega.

See liides sisaldab spetsiaalset sisendi CLK viiku, kolme kaadri sünkroonimisviiku ja 16 andmeviiku. Siin toetab sisend CLK viik lihtsalt paralleelset andmeedastuskiirust, mis võrdub poolega süsteemi CLK kiirusest. Kolm erinevat ITU-R 656 režiimi toetavad ainult aktiivset videot, vertikaalset tühjendamist ja täielikku välja.

PPI üldotstarbelised režiimid sobivad paljude erinevate edastus- ja andmehõiverakendustega. Seega on need režiimid jagatud põhikategooriatesse Andmete vastuvõtmine sisemiselt loodud kaadrite sünkroonimise kaudu, Andmete edastamine sisemiselt loodud kaadrite sünkroonimise kaudu, Andmete edastamine väliselt loodud kaadrite sünkroonimise kaudu ja Väliselt loodud kaadrite sünkroonimise kaudu vastuvõetud andmed.

SPORT

Blackfin protsessor sisaldab kahte kahe kanaliga sünkroonset jadaporti SPORT0 ja SPORT1, mida kasutatakse jada- ja mitmeprotsessoriga suhtlemiseks. Nii et need on kiire ja sünkroonne jadaport, mis toetab I²S , TDM ja mitmesugused muud konfigureeritavad kadreerimisrežiimid ühendamiseks DAC-id , ADC-d, FPGA-d ja muud protsessorid.

SPI või Serial Peripheral Interface Port

Blackfin protsessor sisaldab SPI-porti, mis võimaldab protsessoril vestelda erinevate SPI-ühilduvate seadmetega. See liides kasutab andmete edastamiseks lihtsalt kolme kontakti, andmekontakte-2 ja ühte CLK viiku. SPI-pordi valitud sisend- ja väljundviigud annavad lihtsalt täisdupleksse SSI (sünkroonse jadaliidese), mis toetab nii ülem- kui ka alamrežiime ning ka mitme ülemuse keskkondi. Selle SPI-pordi andmeedastuskiirus ja kella faas või polaarsused on programmeeritavad. Sellel pordil on sisseehitatud DMA-kontroller, mis toetab andmevoogude edastamist/vastuvõtmist.

Taimerid

Blackfin protsessoril on 9 programmeeritavat taimerit. Need taimerid genereerivad protsessori tuumale katkestusi, et pakkuda perioodilisi sündmusi, mis on ette nähtud protsessori kellaga või väliste signaalide loendamisega sünkroonimiseks.

UART

Mõiste UART tähistab universaalset asünkroonse vastuvõtja saatja porti. Blackfin protsessor pakub 2-pooldupleksset UART-porti, mis sobivad täiesti hästi läbi personaalarvuti standardsete UART-ide. Need pordid pakuvad lihtsalt UART-i põhiliidest teistele hostidele või välisseadmetele, et pakkuda DMA-toega pooldupleks-asünkroonset jadaandmeedastust.

UART-pordid sisaldavad 5–8 andmebitti ja 1 või 2 stoppbitti ning need toetavad kahte töörežiimi, nagu programmeeritud I/O ja DMA. Esimeses režiimis edastab või võtab protsessor andmeid vastu I/O-kaardistatud registrite lugemise/kirjutamise kaudu, kus andmed puhverdatakse kaks korda nii edastamisel kui ka vastuvõtmisel. Teises režiimis saadab ja võtab DMA-kontroller andmeid vastu ja vähendab andmete edastamiseks mällu ja mällu vajalike katkestuste arvu.

RTC või reaalajas kell

Blackfin protsessori reaalajas kell pakub lihtsalt erinevaid funktsioone, nagu stopper, praegune kellaaeg ja äratus. Niisiis, reaalajas kella taktis on Blackfin protsessori välise 32,768 kHz kristall. Protsessori RTC-l on toiteallika tihvtid, mis jäävad sisselülitatuks ja töötama isegi siis, kui ülejäänud Blackfin protsessor on vähese energiatarbega olekus. Reaalajakell pakub mitmeid programmeeritavaid katkestusvõimalusi. 32,768 kHz sisend-CLK sagedus eraldatakse eelskaalaja kaudu 1 Hz signaaliks. Sarnaselt teistele seadmetele võib reaalajas kell äratada Blackfin protsessori sügavast unerežiimist / puhkerežiimist.

Valvekoera taimer

Blackfin protsessoril on 32-bitine valvekoera taimer, mida kasutatakse tarkvara valvefunktsiooni täitmiseks. Nii et programmeerija lähtestab taimeri loendusväärtuse, mis võimaldab õiget katkestust, ja lubab seejärel taimeri. Pärast seda peab tarkvara loenduri uuesti laadima, enne kui see loendab programmeeritud väärtusest nullini.

GPIO või üldotstarbeline I/O

GPIO on digitaalse signaali viik, mida kasutatakse sisendi, väljundina või mõlemana ja mida juhitakse tarkvara kaudu. Blackfin protsessor sisaldab GPIO (üldotstarbeline I/O) kontakte, mis on 48-kahesuunalised 3 eraldi GPIO mooduli vahel, nagu PORTFIO, PORTHIO ja PORTGIO, mis on ühendatud vastavalt pordiga G, pordiga H ja pordiga F. Iga üldotstarbelist pordi tihvti juhitakse individuaalselt oleku, pordi juhtimise ja katkestusregistrite, nagu GPIO DCR, GPIO CSR, GPIO IMR ja GPIO ISR, abil.

Etherneti MAC

Blackfini protsessoris olev Etherneti MAC-välisseade tagab 10–100 Mb/s MII (Media Independent Interface) ja Blackfini välisseadmete alamsüsteemi vahel. MAC töötab lihtsalt nii täisdupleks- kui ka pooldupleksrežiimis. Meediumipöörduskontrolleri sisemine taktsagedus toimub protsessori CLKIN-viigu kaudu.

Mälu

Blackfin protsessori arhitektuuri mälu pakub seadme juurutamisel lihtsalt nii 1. kui ka 2. taseme mäluplokke. L1-tüüpi andme- ja käsumälu on lihtsalt ühendatud otse protsessori tuumaga, töötab süsteemi täielikul CLK-kiirusel ja tagab süsteemi maksimaalse jõudluse kriitiliste ajaalgoritmi segmentide jaoks. L2-mälu, nagu SRAM-mälu, on suurem, mis tagab veidi väiksema jõudluse, kuid on siiski kiirem võrreldes kiibivälise mäluga.

L1-mälu struktuur on rakendatud signaalide töötlemiseks vajaliku jõudluse tagamiseks, pakkudes samal ajal programme mikrokontrollerites. See saavutatakse lihtsalt lubades mälu L1 korraldada SRAM-i, vahemäluna, vastasel juhul mõlema kombinatsioonina.

Toetades vahemälu ja SRAM-i programmeerimismudeleid, määravad süsteemi disainerid SRAM-ile kriitilised reaalajas signaalitöötluse andmekogumid, mis vajavad madalat latentsust ja suurt ribalaiust, salvestades samal ajal vahemällu reaalajas juhtimis- või OS-i ülesanded.

Alglaadimisrežiimid

Blackfin protsessor sisaldab kuut mehhanismi sisemise L1 käsumälu automaatseks laadimiseks pärast lähtestamist. Nii et erinevad alglaadimisrežiimid hõlmavad peamiselt; Alglaadimisrežiim 8-bitisest ja 16-bitisest välismälust, SPI jadamälust. SPI-hostiseade, UART, jada-TWI-mälu, TWI-host ja toimivad 16-bitisest välismälust, minnes alglaadimisseeriast mööda. Iga esimese 6 alglaadimisrežiimi puhul loetakse esmalt välismäluseadmest 10-baidine päis. Niisiis, päis näitab ei. edastatavad baitid ja mälu sihtkoha aadress. Mis tahes alglaadimise seeria kaudu saab laadida mitu mäluplokki. Kui kõik plokid on lihtsalt laaditud, algab programmi täitmine L1 käsu SRAM algusest.

Adresseerimisrežiimid

Blackfin protsessori adresseerimisrežiimid määravad lihtsalt selle, kuidas individuaalne juurdepääsumälu ja adresseerimine asukoha määravad. Blackfin protsessoris kasutatavad adresseerimisrežiimid on kaudne adresseerimine, automaatne suurendamine/vähendamine, järelmuutmine, kohese nihkega indekseeritud, ringpuhver ja biti tagasikäik.

Kaudne adresseerimine

Selles režiimis sisaldab käsu aadressiväli mälu või registri asukohta, kus iganes tõhusa operandi aadress asub. See adresseerimine on klassifitseeritud kahte kategooriasse, nagu register kaudne ja mälu kaudne.

Näiteks LOAD R1, @300

Ülaltoodud juhistes salvestatakse kehtiv aadress lihtsalt mälukohta 300.

Autoincrement/Decrement Addressing

Aadressi automaatne suurendamine lihtsalt värskendab nii kursori kui ka indeksi registreid pärast sisestusõigust. Kasvu suurus sõltub peamiselt sõna suurusest. 32-bitine sõnajuurdepääs võib osutuda osuti värskenduse tulemuseks väärtusega 4. 16-bitine sõnajuurdepääs värskendab kursorit numbriga 2 ja 8-bitine sõnajuurdepääs värskendab kursorit numbriga 1. Nii 8-bitise kui ka 16-bitise lugemisoperatsioonid võivad näidata sihtregistri sisu null-laiendamist/märk-laiendamist. Osutiregistreid kasutatakse peamiselt 8-, 16- ja 32-bitiste juurdepääsude jaoks, indeksregistreid aga ainult 16- ja 32-bitiste juurdepääsude jaoks

Näiteks: R0 = W [ P1++ ] (Z) ;

Ülaltoodud juhises laaditakse 16-bitine sõna 32-bitisesse sihtregistrisse suunatud aadressist Pointer registri 'P1' kaudu. Pärast seda suurendatakse kursorit 2-ga ja sõna '0' laiendatakse 32-bitise sihtregistri täitmiseks.

Samamoodi toimib automaatne vähendamine, vähendades aadressi pärast sisenemisõigust.

Näiteks: R0 = [ I2– ] ;

Ülaltoodud juhises laaditakse 32-bitine väärtus sihtregistrisse ja vähendab indeksi registrit 4 võrra.

Aadressi muutmise järel

Seda tüüpi adresseerimine kasutab lihtsalt indeksi/osuti registrite väärtust, nagu tõhus aadress. Pärast seda muudab see seda registri sisuga. Indeksi registreid muudetakse lihtsalt muudetud registritega, samas kui osutiregistreid muudavad muud osutiregistrid. Sarnaselt sihtregistritele ei toeta muutmisjärgse tüübi adresseerimine osutiregistreid.

Näiteks: R3 = [P1++P2];

Ülaltoodud juhises laaditakse 32-bitine väärtus R3 registrisse ja leitakse mälu asukohast, millele osutab register P1. Pärast seda lisatakse P2 registris olev väärtus P1 registris olevale väärtusele.

Indekseeritud kohese nihkega

Indekseeritud adresseerimine lihtsalt võimaldab programmidel saada andmetabelitest väärtusi. Pointer registrit muudab vahetu väli, pärast seda kasutatakse seda aktiivse aadressina. Seega osuti registri väärtust ei värskendata.

Näiteks kui P1 = 0x13, siis [P1 + 0x11] oleks tõhusalt samaväärne [0x24]-ga, mis on seotud kõigi juurdepääsudega.

Bit vastupidine adresseerimine

Mõnede algoritmide puhul nõuavad programmid tulemuste saamiseks järjestikuses järjekorras bittide ümberpööratud adresseerimist, eriti FFT (Fast Fourier Transform) arvutuste puhul. Nende algoritmi nõuete täitmiseks võimaldab andmeaadressi generaatorite bittide ümberpööratud adresseerimise funktsioon korduvalt andmeseeriaid jaotada ja neid andmeid salvestada bittide vastupidises järjekorras.

Ringikujuline puhvri adresseerimine

Blackfin protsessor pakub sellist funktsiooni nagu valikuline ümmargune adresseerimine, mis lihtsalt suurendab indeksiregistrit eelnevalt määratletud aadresside vahemiku võrra, seejärel lähtestab indeksiregistrid automaatselt, et seda vahemikku korrata. Seega suurendab see funktsioon sisend-/väljundahela jõudlust, eemaldades lihtsalt aadressiindeksi osuti iga kord.

Ringikujuline puhveraadress on väga kasulik fikseeritud suurusega andmeplokkide jada korduvalt laadimisel või salvestamisel. Ringikujulise puhvri sisu peab vastama järgmistele tingimustele:

  • Ringikujulise puhvri maksimaalne pikkus peaks olema märgita arv, mille suurusjärk on väiksem kui 231.
  • Modifikaatori suurus peab olema alla ümmarguse puhvri pikkuse.
  • Kursori 'I' esimene asukoht peab olema ringikujulises puhvris, mis on määratletud pikkusega 'L' ja alusega 'B'.

Kui mõni ülaltoodud tingimustest ei ole täidetud, siis protsessori käitumist ei täpsustata.

Registreerige Blackfin protsessori fail

Blackfin protsessor sisaldab kolme kindlat registrifaili nagu; Andmeregistri fail, osutiregistri fail ja DAG register.

  • Andmeregistri fail kogub arvutusühikute jaoks kasutatavate andmesiinide abil operandid ja salvestab arvutustulemused.
  • Osutiregistri fail sisaldab viiteid, mida kasutatakse adresseerimistoiminguteks.
  • DAG-registrid haldavad DSP-toimingute jaoks kasutatavaid tsirkulaarseid nullpuhvreid.

Blackfin protsessor tagab esmaklassilise toitehalduse ja jõudluse. Need on konstrueeritud madala pinge ja väikese võimsusega projekteerimismetoodikaga, mis on võimelised muutma nii pinget kui ka töösagedust, et vähendada oluliselt üldist energiakasutust. Seega võib see võimsuskasutust märkimisväärselt vähendada, võrreldes lihtsalt töösageduse muutmisega. Seega pikendab see käepäraste seadmete aku kasutusiga.

Blackfin protsessor toetab erinevaid välismälu nagu DDR-SDRAM, SDRAM, NAND flash, SRAM & NOR flash. Mõned Blackfin protsessorid sisaldavad ka massmälu liideseid, nagu SD/SDIO ja ATAPI. Nad võivad toetada ka 100 megabaiti mälu välismälu ruumis.

Eelised

The Blackfin protsessori eelised sisaldama järgmist.

  • Blackfin protsessorid pakuvad süsteemi kujundajale põhilisi eeliseid.
  • Blackfin protsessor pakub nii tarkvara paindlikkust kui ka skaleeritavust koonduvate rakenduste jaoks, nagu heli-, video-, kõne- ja pilditöötlus mitmes vormingus, reaalajas turvalisus, juhtimistöötlus ja mitmerežiimiline põhiriba paketttöötlus
  • Tõhus kontrollitöötlusvõimsus ja suure jõudlusega signaalitöötlus võimaldavad erinevaid uusi turge ja rakendusi.
  • DPM (Dynamic Power Management) võimaldab süsteemi disaineril muuta seadme energiatarbimist eelkõige lõppsüsteemi nõuetele vastavaks.
  • Need protsessorid vähendavad oluliselt arendusaega ja -kulusid.

Rakendused

The Blackfin protsessori rakendused sisaldama järgmist.

  • Blackfin protsessorid sobivad ideaalselt paljude rakenduste jaoks, näiteks ADAS (autode täiustatud juhiabisüsteemid) , valve- või turvasüsteemid ja tööstusmasinate nägemine.
  • Blackfini rakendused hõlmavad servomootori juhtimissüsteeme, autoelektroonikat, seiresüsteeme ja multimeedia tarbijaseadmeid.
  • Need protsessorid täidavad lihtsalt mikrokontrolleri ja signaalitöötluse funktsioone.
  • Neid kasutatakse heli, protsesside juhtimise, autotööstuse, testimise, mõõtmise jne jaoks.
  • Blackfin protsessoreid kasutatakse signaalitöötlusrakendustes, nagu traadita lairiba-, mobiilside- ja heli- või videovõimega Interneti-seadmed.
  • Blackfinit kasutatakse konvergentsetes rakendustes, nagu võrgu- ja voogesitusmeedia, digitaalne kodumeelelahutus, autotelemaatika, teabe- ja meelelahutussüsteem, mobiiltelevisioon, digitaalraadio jne.
  • Blackfin protsessor on sisseehitatud protsessor, millel on energiatõhusus ja kõrgeim jõudlus, mida kasutatakse rakendustes, kus mitme vorminguga hääl, heli, video, mitmerežiimiline põhiriba, pilditöötlus, pakettide töötlemine, reaalajas turvalisus ja juhtimistöötlus on olulised.

Seega on see ülevaade Blackfin protsessorist – arhitektuur, eelised ja selle rakendused. See protsessor täidab signaalitöötluse ja mikrokontrolleri funktsioone. Siin on teile küsimus, mis on protsessor?