Кіріспе

MicroBlaze – Xilinx қайта бағдарламаланатын қақпалық массивтері (FPGA) үшін әзірленген жұмсақ микропроцессорлық ядро. Жұмсақ ядролы процессор ретінде MicroBlaze Xilinx FPGA-ның жалпы мақсаттағы жады және логикалық тізбегінде толығымен іске асырылады. MicroBlaze 2002 жылы енгізілді.

Шолу

MicroBlaze-дің нұсқаулар жиынтығы архитектурасы тұрғысынан, ол танымал компьютерлік архитектура кітабында Паттерсон мен Хеннесси сипаттаған RISC негізіндегі DLX архитектурасына ұқсас. Шамалы ерекшеліктер болғанда, MicroBlaze әр циклде жаңа нұсқауды орындай алады, көп жағдайда бір циклдік өнімділікті сақтайды. MicroBlaze әртүрлі кіріктірілген қосымшаларды қолдау үшін әмбебап өзара байланыс жүйесіне ие. MicroBlaze-дің негізгі I/O шинасы – AXI өзара байланысы, ол жүйелік жадқа негізделген транзакциялық шина және master-slave мүмкіндіктерін ұсынады. MicroBlaze-дің бұрынғы нұсқалары CoreConnect PLB шинасын қолданды. Көптеген өндірушілер мен үшінші тараптар IP интерфейсін тікелей AXI-ге (немесе AXI өзара байланысы арқылы) қосады. Жергілікті жадқа (FPGA RAM) қол жеткізу үшін MicroBlaze арнайы LMB шинасын пайдаланады, ол микросхемада жылдам сақтауды қамтамасыз етеді. Пайдаланушы анықтаған копроцессорлар арнайы AXI4 Stream қосылымдары арқылы қолдауға ие. Копроцессор интерфейсі есептеуді күрделі алгоритмдерді жеделдету үшін пайдаланушы жобалаған аппараттық модульге есептеудің бір бөлігін немесе толығымен жүктеу арқылы жеделдете алады. MicroBlaze-дің көптеген аспектілерін пайдаланушы өзгерте алады: кэш өлшемін, құбырдың тереңдігін (3 сатылы, 5 сатылы немесе 8 сатылы), кіріктірілген перифериялық құрылғыларды, жад басқару блогын және шина интерфейстерін конфигурациялауға болады. Аймақты оңтайландырылған MicroBlaze нұсқасы, 3 сатылы құбырды пайдаланады, логикалық аймақты азайту үшін тактық жиіліктен бас тартады. Өнімділікті оңтайландырылған нұсқа орындау құбырын 5 сатыға дейін кеңейтеді, бұл Virtex UltraScale+ FPGA отбасында 700 МГц-тен жоғары жылдамдыққа жетеді. Сондай-ақ, аппараттық құралдарда жүзеге асыруы қиын, бірақ сирек қолданылатын процессордың маңызды нұсқауларын таңдаулы түрде қосуға/алып тастауға болады (мысалы, көбейту, бөлу және қозғалмалы нүктелік операциялар). Бұл бейімдеу әзірлеушіге хост аппараттық және қосымша бағдарламалық қамтамасыз етудің нақты талаптарына сәйкес дизайнды таңдауға мүмкіндік береді. Жад басқару блогымен MicroBlaze аппараттық негіздегі беттеу және қорғауды қажет ететін операциялық жүйелерді, мысалы Linux ядросын іске қоса алады. Әйтпесе, ол FreeRTOS сияқты қарапайым қорғау және виртуалды жад моделі бар операциялық жүйелермен немесе MMU қолдауы жоқ Linux-пен шектеледі. MicroBlaze-дің жалпы өнімділігі Zynq-дегі ARM Cortex A9 сияқты салыстырмалы түрде қатты CPU ядросынан әлдеқайда төмен. MicroBlaze V RISC V архитектурасына негізделген.

Вивадо

Xilinx Vivado Design Suite – Xilinx FPGA-да қазіргі MicroBlaze (немесе ARM, Zynq-қа қараңыз) кіріктірілген процессор жүйелерін құруға арналған даму ортасы. Алдыңғы нұсқаларда Xilinx-тің EDK (Embedded Development Kit) бағдарламалық кешені қолданылған. Дизайнерлер кіріктірілген жүйелерінің аппараттық сипаттамаларын (процессор ядросы, жад контроллері, I/O перифериялық құрылғылары және т.б.) конфигурациялау және құру үшін Vivado IP Integrator-ды пайдаланады. IP Integrator дизайнердің блок-сызбасын синтезделетін RTL сипаттамасына (Verilog немесе VHDL) түрлендіреді және кіріктірілген жүйенің іске асырылуын автоматтандырады (RTL-ден бит ағыны файлына дейін). MicroBlaze ядросы үшін Vivado шифрланған (адам оқымайтын) нетлистті жасайды. SDK кіріктірілген жүйеде орындалатын бағдарламалық жасақтаманы басқарады. GNU құралдар жиынтығымен (GNU Compiler Collection, GNU Debugger) жұмыс істейтін SDK бағдарламашыларға кіріктірілген жүйелері үшін C/C++ қолданбаларын жазуға, компиляциялауға және түзетуге мүмкіндік береді. Xilinx құралдары бағдарламалық жасақтаманы симуляцияда іске қосуға немесе нақты жүйеде жүктеу және орындау үшін қолайлы FPGA тақтасын пайдалану мүмкіндігін ұсынады. Vivado сатып алушыларына Xilinx FPGA-да MicroBlaze-ді қайта төленетін роялтисіз пайдалануға мәңгілік лицензия беріледі. Лицензия Xilinx құрылғыларынан тыс жерде MicroBlaze-ді пайдалану құқығын бермейді. Altium компаниясынан баламалы компиляторлар мен даму құралдары қолжетімді, бірақ EDK орнату және лицензиясы әлі де қажет.

Ашық көз

2009 жылдың маусым айында MicroBlaze Linux ядросының негізгі тармағына енгізілген алғашқы бағдарламаланатын CPU архитектурасы болды. Бұл жұмысты Михал Симек жасады, ал оған PetaLogix және Xilinx қолдау көрсетті. 2009 жылдың қыркүйегінен бастап MicroBlaze GNU құралдарына қолдау Free Software Foundation негізгі репозиторийлеріне де үлестестірілуде. MicroBlaze қолдауы GCC нұсқаларының 4.6 нөмірінен бастап енгізілді. LLVM-ге қолдау 2010 жылдың сәуірінде қосылды, бірақ кейіннен 2013 жылдың шілдесінде күтуші маманның болмауына байланысты алынып тасталды.