MicroBlaze

From alpha
Jump to navigation Jump to search
MicroBlaze
DesignerXilinx
Bits32-bit/64-bit (32 → 64)
Version11.0
DesignRISC
EncodingFixed
EndiannessLittle (Big)
OpenNo
Registers
32 × 32 bits

माइक्रोब्लेज़ एक नरम माइक्रोप्रोसेसर कोर है जिसे Xilinx क्षेत्र में प्रोग्राम की जा सकने वाली द्वार श्रंखला (FPGA) के लिए डिज़ाइन किया गया है। सॉफ्ट-कोर प्रोसेसर के रूप में, माइक्रोब्लेज़ पूरी तरह से Xilinx FPGAs के सामान्य-उद्देश्य मेमोरी और लॉजिक फैब्रिक में लागू किया गया है।

माइक्रोब्लेज को 2002 में पेश किया गया था।[1]


सिंहावलोकन

अपने निर्देश सेट आर्किटेक्चर के संदर्भ में, माइक्रोब्लेज़ डेविड ए. पैटरसन (वैज्ञानिक) और जॉन एल. हेनेसी द्वारा एक लोकप्रिय कंप्यूटर आर्किटेक्चर पुस्तक में वर्णित अल्प निर्देश सेट कंप्यूटर-आधारित DLX आर्किटेक्चर के समान है। कुछ अपवादों के साथ, MicroBlaze अधिकांश परिस्थितियों में एकल-चक्र थ्रूपुट को बनाए रखते हुए, हर चक्र में एक नया निर्देश जारी कर सकता है।

MicroBlaze में विभिन्न प्रकार के एम्बेडेड अनुप्रयोगों का समर्थन करने के लिए एक बहुमुखी इंटरकनेक्ट सिस्टम है। MicroBlaze की प्राथमिक I/O बस, उन्नत माइक्रोकंट्रोलर बस आर्किटेक्चर, मास्टर-स्लेव क्षमता के साथ एक सिस्टम-मेमोरी मैप्ड ट्रांजैक्शन बस है। MicroBlaze के पुराने संस्करणों ने CoreConnect PLB बस का उपयोग किया। अधिकांश विक्रेता-आपूर्ति और तृतीय-पक्ष IP इंटरफ़ेस AXI को सीधे (या AXI इंटरकनेक्ट के माध्यम से)। लोकल-मेमोरी (एफपीजीए रैम) तक पहुंच के लिए, माइक्रोब्लेज एक समर्पित एलएमबी बस का उपयोग करता है, जो तेजी से ऑन-चिप स्टोरेज प्रदान करता है। समर्पित AXI4-स्ट्रीम कनेक्शन के माध्यम से उपयोगकर्ता-परिभाषित कोप्रोसेसरों का समर्थन किया जाता है। सहसंसाधक(एस) इंटरफेस कम्प्यूटेशनल रूप से गहन एल्गोरिदम को भागों को ऑफलोड करके या गणना की संपूर्णता को उपयोगकर्ता-डिज़ाइन किए गए हार्डवेयर मॉड्यूल में गति प्रदान कर सकता है।

MicroBlaze के कई पहलुओं को उपयोगकर्ता द्वारा कॉन्फ़िगर किया जा सकता है: कैश आकार, पाइपलाइन की गहराई (3-चरण, 5-चरण, या 8-चरण), एम्बेडेड बाह्य उपकरणों, मेमोरी प्रबंधन इकाई और बस-इंटरफ़ेस को अनुकूलित किया जा सकता है। MicroBlaze का क्षेत्र-अनुकूलित संस्करण, जो 3-चरण पाइपलाइन का उपयोग करता है, कम तर्क क्षेत्र के लिए घड़ी की आवृत्ति का त्याग करता है। प्रदर्शन-अनुकूलित संस्करण निष्पादन पाइपलाइन को 5 चरणों तक विस्तारित करता है, जिससे 700 मेगाहर्ट्ज से अधिक की शीर्ष गति की अनुमति मिलती है (वीरटेक्स अल्ट्रास्केल + फील्ड-प्रोग्टक्कर मारनाेबल गेट एरे परिवार पर)। साथ ही, मुख्य अनुप्रयोग-विशिष्ट निर्देश सेट प्रोसेसर जो शायद ही कभी उपयोग किया जाता है लेकिन हार्डवेयर में लागू करने के लिए अधिक महंगा होता है, उसे चुनिंदा रूप से जोड़ा/हटाया जा सकता है (उदाहरण के लिए गुणा, विभाजित और फ़्लोटिंग पॉइंट ऑपरेशंस)। यह अनुकूलन एक डेवलपर को होस्ट हार्डवेयर और एप्लिकेशन सॉफ़्टवेयर आवश्यकताओं के एक विशिष्ट सेट के लिए उपयुक्त डिज़ाइन ट्रेड-ऑफ़ करने में सक्षम बनाता है।

स्मृति प्रबंधन इकाई के साथ, माइक्रोब्लेज ऑपरेटिंग सिस्टम को होस्ट करने में सक्षम है, जिसके लिए लिनक्स कर्नेल जैसे हार्डवेयर-आधारित पेजिंग और सुरक्षा की आवश्यकता होती है। अन्यथा यह एक सरलीकृत सुरक्षा और वर्चुअल मेमोरी मॉडल के साथ ऑपरेटिंग सिस्टम तक ही सीमित है, उदा। FreeRTOS या μClinux। MicroBlaze का समग्र थ्रूपुट तुलनात्मक हार्ड CPU कोर (जैसे Zynq-7000 में ARM Cortex-A9) से काफी कम है।

विवाडो

Xilinx का Xilinx Vivado Xilinx FPGAs में वर्तमान माइक्रोब्लेज़ (या एआरएम वास्तुकला - Zynq देखें) एम्बेडेड प्रोसेसर सिस्टम के निर्माण के लिए विकास का वातावरण है। पुराने संस्करणों ने Xilinx के EDK (एम्बेडेड डेवलपमेंट किट) विकास पैकेज का इस्तेमाल किया।

डिज़ाइनर अपने एम्बेडेड सिस्टम (प्रोसेसर कोर, मेमोरी-कंट्रोलर, I/O बाह्य उपकरणों, आदि) के हार्डवेयर विनिर्देश को कॉन्फ़िगर करने और बनाने के लिए Vivado IP इंटीग्रेटर का उपयोग करते हैं। या VHDL), और एम्बेडेड सिस्टम (RTL से बिटस्ट्रीम-फ़ाइल तक) के कार्यान्वयन को स्वचालित करता है। MicroBlaze कोर के लिए, Vivado एक एन्क्रिप्टेड (गैर मानव-पठनीय) नेटलिस्ट बनाता है।

SDK उस सॉफ़्टवेयर को संभालता है जो एम्बेडेड सिस्टम पर निष्पादित होगा। GNU टूलचैन (जीएनयू संकलक संग्रह, GNU डीबगर) द्वारा संचालित, SDK प्रोग्रामर्स को उनके एम्बेडेड सिस्टम के लिए C/C++ एप्लिकेशन लिखने, संकलित करने और डीबग करने में सक्षम बनाता है। Xilinx के टूल सिमुलेशन में सॉफ़्टवेयर चलाने की संभावना प्रदान करते हैं, या वास्तविक सिस्टम पर डाउनलोड करने और निष्पादित करने के लिए एक उपयुक्त FPGA-बोर्ड का उपयोग करते हैं।

विवाडो के खरीदारों को आवर्ती रॉयल्टी के बिना Xilinx FPGAs में माइक्रोब्लेज़ का उपयोग करने के लिए एक स्थायी लाइसेंस दिया जाता है। लाइसेंस Xilinx के उपकरणों के बाहर MicroBlaze के उपयोग का अधिकार नहीं देता है।

Altium से वैकल्पिक संकलक और विकास उपकरण उपलब्ध कराए गए हैं लेकिन EDK स्थापना और लाइसेंस की अभी भी आवश्यकता है।

खुला स्रोत

जून 2009 में, माइक्रोब्लेज़ मेनलाइन लिनक्स कर्नेल सोर्स ट्री में विलय होने वाला पहला सॉफ्ट-सीपीयू आर्किटेक्चर बन गया। यह काम माइकल शिमेक द्वारा किया गया था और पेटालॉजिक्स और ज़िलिनक्स द्वारा समर्थित था।

सितंबर 2009 तक, फ्री सॉफ्टवेयर फाउंडेशन के मेनलाइन रिपॉजिटरी में माइक्रोब्लेज जीएनयू टूल्स सपोर्ट का भी योगदान दिया जा रहा है। संस्करण 4.6 से शुरू होने वाले जीसीसी रिलीज में माइक्रोब्लेज के लिए समर्थन शामिल है[2] समर्थन अप्रैल 2010 में एलएलवीएम में जोड़ा गया था,[3] लेकिन बाद में जुलाई 2013 में हटा दिया गया[4] मेंटेनर की कमी के कारण

क्लोन

  • aeMB, Verilog, LGPL में लागू किया गया
  • OpenFire सबसेट, Verilog, MIT लाइसेंस में कार्यान्वित
  • एमबी-लाइट, वीएचडीएल, [[एलजीपीएल]] लाइसेंस में लागू
  • एमबी-लाइट+, वीएचडीएल, एलजीपीएल लाइसेंस में लागू किया गया
  • MyBlaze, MyHDL, LGPL लाइसेंस में लागू किया गया
  • सीक्रेटब्लेज, वीएचडीएल, जीपीएल में लागू किया गया

अन्य सॉफ्ट प्रोसेसर

यह भी देखें


संदर्भ

  1. Xilinx (August 21, 2002). "MicroBlaze RISC 32-Bit Soft Processor datasheet" (PDF).
  2. "GCC 4.6 Release Series Changes, New Features, and Fixes". 2011-03-15. Retrieved 2011-03-15. Support has been added for the Xilinx MicroBlaze softcore processor (microblaze-elf) embedded target.
  3. "LLVM 2.7 Release Notes". releases.llvm.org. Retrieved 2019-04-07.
  4. Christopher, Eric (2013-07-24). "[LLVMdev] Deprecating and removing the MBlaze backend". Retrieved 2019-04-07.


बाहरी संबंध