MicroBlaze procesors tika izstrādāts 2002. gadā, lai integrētu vairākas sarežģītas funkcijas, lai apmierinātu jauno, kā arī augošo tirgus pieprasījumu. Tātad MicroBlaze procesors ir būtisks elements Xilinx zemas klases portfelī, lai nodrošinātu ātrāku sistēmas attīstību, kas satur Artix®-7. FPGA , Spartan®-6, Zynq®-7000 AP SoCs. Šis procesors ir ļoti konfigurējams, tāpēc to var izmantot kā iegultu procesoru vai mikrokontrolleri FPGA, kā arī izmantot kā līdzprocesoru Zynq-7000 AP SoC, pamatojoties uz ARM Cortex-A9. Šajā rakstā ir sniegta īsa informācija par MicroBlaze procesors – arhitektūra un darbs ar aplikācijām.
Kas ir Microblaze procesors?
Mīkstais mikroprocesors, kas ir paredzēts galvenokārt Xilinx FPGA, ir pazīstams kā MicroBlaze procesors. Šis procesors ir vienkārši ieviests Xilinx FPGA vispārējas nozīmes atmiņas un loģikas struktūrā. Šis procesors ir līdzīgs DLX arhitektūrai, kuras pamatā ir RISC, un tam ir elastīga starpsavienojumu sistēma, lai tas atbalstītu dažādas iegultās lietojumprogrammas. MicroBlaze galvenā I/O kopne un AXI starpsavienojums ir ar atmiņu kartēta transakciju kopne ar master-slave iekārtu.
MicroBlaze izmanto īpašu LMB kopni, lai piekļūtu vietējai atmiņai un nodrošina ātru mikroshēmas krātuvi. Daudzas šī procesora daļas var konfigurēt lietotājs, piemēram, kešatmiņas lielumu, cauruļvada atmiņas pārvaldības vienības dziļumu, iegultās perifērijas ierīces un kopnes saskarnes.
Microblaze funkcijas
The Microblaz iezīmes e iekļaujiet tālāk norādīto. Tam ir 32 vispārējas nozīmes reģistri.
- Tam ir 32 bitu norādījumu vārdi, tostarp 2 adresācijas režīmi un 3 operandi.
- Adrešu kopne ir 32 bitu.
- Tam ir 3 pakāpju cauruļvads vai 5 pakāpju cauruļvads.
- ALU bloks ar pārslēdzēju.
- Hārvardas arhitektūra ietver 32 bitu datu un adrešu kopni.
- Datu interfeiss un LMB vai vietējās atmiņas kopnes instrukcija.
- AX14 un AX14 straumes saskarnes.
- Peldošā komata vienība un atmiņas pārvaldības vienība.
- Tā atbalsta lockstep.
- Atkļūdošanas un izsekošanas saskarne.
Microbaze arhitektūra
MicroBlaze procesora blokshēma ir parādīta zemāk. Šis MicroBlaze procesors ir ļoti pielāgojams, un tas atbalsta vairāk nekā 70 dizaina iespējas. Šī arhitektūra parāda pastāvīgas aparatūras funkcijas, kā arī konfigurējamas opcijas, piemēram, instrukciju vai datu kešatmiņu, atmiņas pārvaldības vienību, peldošā komata vienību utt.
An iegultā sistēma kas samontēti ap MicroBlaze procesoru, galvenokārt ietver MicroBlaze mīksto procesora kodolu, mikroshēmas lokālo atmiņu, standarta kopnes starpsavienojumus un OPB perifērijas ierīces (on-chip peripheral Bus). MicroBlaze procesoru sistēma galvenokārt svārstās no procesora kodola ar lokālo atmiņu līdz lielai sistēmai, kas ietver vairākus MicroBlaze procesori , ārējā atmiņa un daudzas OPB perifērijas ierīces.

Mīksts procesora kodols
MicroBlaze mīkstais procesora kodols ir MicroBlaze iegultās sistēmas centrālais elements. Šis ir ļoti ātrs un efektīvs 32 bitu RISC procesors, kam ir šādas funkcijas.
- Instrukciju kopa ir ortogonāla.
- Atsevišķas datu un instrukciju kopnes.
- 32 bitu vispārējas nozīmes reģistri.
- Tam ir papildu 32 bitu stobra pārslēdzējs.
- Iebūvētas saskarnes ātrai OCM vai mikroshēmas atmiņai un IBM nozares standarta OPB (on-chip Peripheral Bus).
Īstenojumi Virtex-II un turpmākajās ierīcēs atbalsta aparatūras daudzveidību.
Mikroshēmas lokālā atmiņa
Sinhronā atmiņa ir lokālā atmiņa, ko galvenokārt izmanto, lai atļautu mikroshēmas bloka RAM.
Standarta autobusu starpsavienojumi
Kopnes saskarnes instrukciju un datu pusē ietver saskarni ar vietējo atmiņu, ko sauc par LMB (vietējās atmiņas kopne), un saskarni ar IBM mikroshēmas perifērijas kopni. Tātad mēs varam izstrādāt sistēmas, kas stingri pieturas pie Hārvardas arhitektūras, pretējā gadījumā, lai koplietotu resursus, mēs varam izmantot vienu OPB kombinācijā, izmantojot kopnes arbitru.
Vietējā atmiņas kopne nodrošina nodrošinātu viena cikla ievadi mikroshēmas bloka RAM. Šis ir ļoti efektīvs, vienkāršs un viena galvenā kopnes protokols, un tas ir lieliski piemērots ātrai vietējai atmiņai. OPB jeb On-chip Peripheral Bus ir 32 bitu plata vairāku galveno kopne, kas ir lieliski piemērota perifērijas ierīču un ārējās atmiņas savienošanai ar MicroBlaze procesora kodolu.
Mikroshēmas perifērijas autobusu perifērijas ierīces
MicroBlaze aparatūras sistēmu papildina OPB perifērijas ierīces, lai nodrošinātu dažādas funkcijas, piemēram, Watchdog taimeris vai laika bāze, vispārējas nozīmes taimeris vai skaitītāji, IC (pārtraukšanas kontrolieris), dažādi kontrolieri, piemēram, SRAM, zibatmiņa, ZBT atmiņa, BRAM, DDR, SDRAM, UART Lite. , SPI, I2C, vispārējas nozīmes I/O, UART 16450/550 un Ethernet 10/100 MAC. Turklāt mēs varam arī pievienot un definēt perifērijas ierīces galvenokārt pielāgotām funkcijām, pretējā gadījumā saskarni ar dizainu, kas pastāv FPGA.
Microblaze instrukciju komplekts
Microblaze instrukciju kopas ir aritmētika, loģika, filiāle, ielāde/uzglabāšana un citas. Visu instrukciju lielums ir fiksēts. Kā operandi var norādīt ne vairāk kā 3 reģistrus. Microblaze ietver divus A tipa un B tipa instrukciju formātus, kas ir parādīti zemāk.
A tipa instrukciju formāts galvenokārt tiek izmantots reģistra-reģistra instrukcijām. Tātad tas ietver opkodu, vienu galamērķi un divus avota reģistrus. B tipa instrukciju formātu galvenokārt izmanto reģistra tūlītējām instrukcijām, kas ietver operācijas kodu, viena galamērķa un viena avota reģistrus. un 16 bitu tūlītējās vērtības avotu.

Iepriekšminētajos divos instrukciju formātos operācijas kods ir darbības kods, Rd ir galamērķa reģistrs, kas ir kodēts ar 5 bitiem, Ra un Rb ir avota reģistri, kur katrs ir kodēts ar 5 bitiem, un Immediate ir 16 bitu vērtība.
Aritmētiskie norādījumi
A un B tipa aritmētiskie norādījumi ir doti tālāk.
A tips
ADD Rd, Ra, Rb pievienot |
Rd = Ra+Rb, Pārnēsāšanas karodziņš ietekmēts |
ADD K Rd, Ra, Rb Pievienojiet un turpiniet nēsāt |
Rd = Ra+Rb, Carry karodziņš netiek ietekmēts |
RSUB Rd, Ra, Rb Apgrieztā atņemšana |
Rd = R-Rb, Carry karodziņš netiek ietekmēts |
B tips
ADD I Rd, Ra, Imm pievienot nekavējoties |
Rd = Ra+zīmePagarinājums32 (Imm) |
PIEVIENOT IK Rd, Ra, Imm pievienojiet nekavējoties un turpiniet nēsāt |
Rd = Ra+ zīme Extend32 (Imm) |
RSUBIK Rd, Ra, Imm apgrieztā atņemšana ar tūlītēju |
Rd = Ra+ zīmePagarināt32 (Imm) -Ra |
SRA Rd, Ra aritmētiskā nobīde pa labi |
Rd = (Ra>>1) |
Loģiskas instrukcijas
A un B tipa loģiskās instrukcijas ir sniegtas tālāk.
A tips
VAI Rd, Ra, Rb Loģiski vai |
Rd = Ra| Rb |
UN Rd,Ra,Rb Loģisks papildinājums |
Rd = Ra un Rb |
XOR Rd, Ra, Rb Loģiskais xor |
Rd = Rb ^ Rb |
ANDN Rd, Ra, Rb Loģiski un nē |
Rd = Ra & (Rb) |
B tips
ORI Rd, Ra, Imm loģiski VAI ar tūlītēju |
Rd = Ra | signExtend32 (Imm) |
ANDI Rd, Ra, Imm loģiski UN ar tūlītēju |
Rd = Ra un zīme Extend32 (Imm) |
XORI Rd, Ra, Imm logisks XOR ar tūlītēju |
Rd = Ra ^ zīme Extend32 (Imm) |
ANDNI Rd, Ra, Imm Loģiski UN NE ar tūlītēju |
Rd = Ra & (signExtend32 (Imm)) |
Norādījumi filiālei — beznosacījuma
Mainiet programmu skaitītāju reģistru
BRID Im filiāle nekavējoties ar tūlītēju kavēšanos |
PC = PC+ signExtend32 (Imm) atļaut aiztures slota izpildi |
BRLID Rd, Imm atzarojums un saite nekavējoties ar tūlītēju aizkavi (funkcijas izsaukums) |
Rd = dators PC = PC+&signExtend32 (Imm) atļaut aiztures slota izpildi |
RTSD Ra, Imm atgriezties no apakšprogrammas |
PC = Ra + zīme Extend32 (Imm) atļaut aiztures slota izpildi |
RTID Ra, Imm atgriezties no pārtraukuma |
PC = Ra + zīme Extend32 (Imm) atļaut aiztures slota izpildi iestatiet pārtraukuma iespējošanu MSR |
Norādījumi filiālei — beznosacījuma1
Mainiet programmu skaitītāju reģistru, kad nosacījums ir izpildīts
BEQI Ra, Imm filiāle, ja vienāda |
PC = PC+ signExtend32 (Imm) Ja Ra = = 0 |
MASH Ra, Imm filiāle, ja nav vienāda |
Rd = dators PC = PC+&signExtend32 (Imm) Ja Ra! = 0 |
Norādījumi filiālei — beznosacījuma2
Mainiet programmu skaitītāju reģistru, kad nosacījums ir izpildīts
BLTI Ra, Imm filiāle, ja zemāka par |
PC = PC+ signExtend32 (Imm) Ja Ra < 0 |
BLEI Ra, Imm filiāle, ja zemāka ir vienāda ar |
Rd = dators PC = PC+&signExtend32 (Imm) Ja Ra!< = 0 |
BGTI Ra, Imm zars, ja lielāks par |
PC = PC+ signExtend32 (Imm) Ja Ra!> 0 |
BGEI Ra, Imm filiāle, ja lielāka ir vienāda ar |
PC = PC+signExtend32 (Imm) Ja Ra!>= 0 |
Iekraušanas/glabāšanas instrukcijas — A tips
LW Rd, Ra, Rb Ielādēt vārdu |
Adrese = Ra+Rb Rd = *Adrese |
SW Rd, Ra, Rb Glabājiet vārdu |
Adrese – Ra+Rb *Adrese = Rd |
B tips
LWI Rd, Ra, Imn Nekavējoties ielādējiet vārdu |
Adrese = Ra + signExtend32 (Imm) Rd = *Adrese |
SW Rd, Ra, Imm Nekavējoties saglabājiet vārdu |
Adrese = Ra + signExtend32 (Imm) *Adrese = Rd |
Citas instrukcijas
IMM, Imm nekavējoties |
Paplašiniet iepriekšējās B tipa instrukcijas Imm līdz 32 bitiem. |
MFS Rd, Sa Pāriet no īpašam nolūkam dibināta reģistra |
Rd = Sa Sa- īpašam mērķim reģistrs, avota operands
|
MTS Sd, Ra Pāriet uz īpašam nolūkam dibinātu reģistru |
Sd = Ra Sd – īpašam nolūkam dibināts reģistrs, galamērķa operands |
Reģistri
MicroBlaze procesora arhitektūra ir pilnībā ortogonāla, kas ietver 32 bitu vispārējas nozīmes reģistrus un 32 bitu speciālos reģistrus, piemēram, programmu skaitītāju un mašīnas statusa reģistru.
Cauruļvadu arhitektūra
MicroBlaze izmanto 3 pakāpju konveijera arhitektūru, tostarp ielādes, atkodēšanas un pabeigšanas posmus. Automātiski aparatūrā tiek noteikta datu pārsūtīšana, atzari un konveijera aizķeršanās.
Ielādēt vai uzglabāt arhitektūru
MicroBlaze atbalsta atmiņu trīs datu izmēros: 8 biti (baiti), 16 biti (pusvārds) un 32 biti (Word). Tātad piekļuves atmiņai vienmēr tiek saskaņots datu lielums. Šis ir Big-Endian procesors, kas izmanto Big-Endian adreses adresi, kā arī marķēšanas konvencijas, kad piekļūst atmiņai.
Pārtrauc
Kad notiek pārtraukums, šis procesors beigs pašreizējo izpildi, lai pārvaldītu pārtraukuma pieprasījumu, izmantojot sazarojumu, lai pārtrauktu vektora adresi un saglabātu izpildāmās instrukcijas adresi. Šis procesors apturēs turpmākos pārtraukumus, notīrot IE (Interrupt Enable) karogu MSR (mašīnas statusa reģistrā).
Kā darbojas Microblaze?
MicroBlaze procesors atbalsta 32 bitu kopnes platumu, un šis procesora kodols ir uz RISC balstīts dzinējs, kas ietver reģistra failu, kura pamatā ir 32 bitu LUT RAM, izmantojot atsevišķas atmiņas un datu piekļuves instrukcijas.
Šis procesors vienkārši atbalsta gan mikroshēmas BlockRAM, gan ārējo atmiņu. Līdzīgi kā IBM PowerPC; visas perifērijas ierīces izmanto līdzīgu CoreConnect OPB kopni; procesora perifērijas ierīces ir labi saskaņotas ar PowerPC uz Virtex-II Pro.
MicroBlaze procesors nodrošina pilnīgu elastību, izvēloties atmiņas, perifērijas un interfeisa funkciju kombināciju, kas nodrošinās jums precīzu sistēmu, kas jums nepieciešama vienā FPGA ar mazākām izmaksām.
Atšķirība B/W Microblaze vs Risc-V
The atšķirība starp MicroBlaze un RISC v iekļaujiet tālāk norādīto.
Microblaze |
Risks-V |
Tas ir mīksts mikroprocesora kodols, kas galvenokārt paredzēts Xilinx FPGA.
|
RISC-V ir instrukciju kopas arhitektūra, kas sakņojas RISC principos.
|
Tas izmanto Hārvardas RISC arhitektūru. | Tas izmanto instrukciju kopas arhitektūru. |
Tās licence ir patentēta (Xilinx) | Tās licence ir atvērtā pirmkoda. |
Cauruļvada dziļums ir 3 vai 5. | Cauruļvada dziļums ir 5. |
Tā veiktspēja ir 280 DMIP. | Tā veiktspēja ir 250 DMIP. |
Tā ātrums ir 235 MHz. | Tā ātrums ir 250 MHz. |
Tam ir 1027 LUT. | Tam ir 4125 LUT. |
Izmantotās tehnoloģijas ieviešana ir Xilinx FPGA. | Izmantotās tehnoloģijas ieviešana ir FPGA/ASIC. |
Microblaze priekšrocības
The MicroBlaze priekšrocības iekļaujiet tālāk norādīto.
- Tas ir ekonomisks.
- Tas ir ļoti konfigurējams.
- Tā veiktspēja ir augsta, salīdzinot ar ARM.
- To atbalsta iegultais izstrādes komplekts.
- Tas ir mīksts mikroprocesors kodols.
- Lai palīdzētu jums ātri sakārtot lietojumprogrammu, šis procesors ietver trīs fiksētas konfigurācijas, kas ir saistītas ar labi zināmām procesoru klasēm mikrokontrolleri, reāllaika un lietojumprogrammu procesoru.
Microblaze lietojumprogrammas
The MicroBlaze lietojumprogrammas iekļaujiet tālāk norādīto.
- Šis procesors atbilst daudzām dažādām lietojumprogrammu prasībām, piemēram, rūpnieciskajām, automobiļu, medicīnas un patērētāju prasībām utt.
- MicroBlaze lietojumu diapazons ir no vienkāršām stāvokļa mašīnām, kuru pamatā ir programmatūra, līdz sarežģītiem kontrolieriem, ko izmanto iegultās lietojumprogrammās vai interneta ierīcēs.
- Tas ir optimizēts iegultām lietojumprogrammām, piemēram, rūpnieciskajai vadībai, biroja automatizācijai un automobiļiem.
- MicroBlaze spēj sazināties ar lielu perifērijas ierīču komplektu, lai ietilptu vidēja mēroga lietojumprogrammās.
- Šī procesora mīkstais raksturs padara to pielāgojamu dažādām lietojumprogrammām, kur dizaineri var apmainīt līdzekļus ar izmēriem, lai sasniegtu cenu un veiktspējas mērķus medicīnas, automobiļu, rūpniecības un drošības lietojumiem.
Tādējādi tas viss ir par pārskats par Microblaze procesors. Šis ir pilnībā aprīkots, 32 bitu programmējams RISC mīkstā procesora kodols. Šis procesors atbilst dažādām prasībām dažādās jomās, piemēram, patērētāju, medicīnas, rūpniecības, automobiļu un sakaru infrastruktūras tirgos. Tas ir ļoti konfigurējams, tāpēc tiek izmantots kā iegultais procesors vai mikrokontrolleris FPGA, citādi kā ARM līdzprocesors. Šeit ir jautājums jums, kas ir FPGA?