एम्बर (प्रोसेसर)

एम्बर प्रोसेसर कोर एक एआरएम वास्तुकला 32-बिट कम निर्देश सेट कंप्यूटिंग (आरआईएससी) प्रोसेसर है। यह खुला स्रोत सॉफ्टवेयर  है, जिसे ओपनकोरस वेबसाइट पर होस्ट किया गया है, और ओपन सोर्स हार्डवेयर प्रोजेक्ट्स की लाइब्रेरी विकसित करने के लिए एक आंदोलन का हिस्सा है।

सिंहावलोकन
एम्बर कोर ARMv2a निर्देश सेट के साथ पूरी तरह से संगत है और इस प्रकार GNU टूलचैन द्वारा समर्थित है। एआरएम निर्देश सेट का यह पुराना संस्करण समर्थित है क्योंकि यह पेटेंट द्वारा कवर नहीं किया गया है, और इसलिए एआरएम होल्डिंग्स से लाइसेंस के बिना लागू किया जा सकता है, कुछ पूर्व ओपन सोर्स प्रोजेक्ट्स के विपरीत (उदाहरण के लिए, pub/misc/opencores/cores/nnARM/ nnARM)। कोर Verilog 2001 में विकसित किए गए थे और क्षेत्र में प्रोग्राम की जा सकने वाली द्वार श्रंखला (FPGA) संश्लेषण के लिए अनुकूलित हैं। उदाहरण के लिए, कोई रीसेट लॉजिक नहीं है: सभी रजिस्टरों को FPGA इनिशियलाइज़ेशन के हिस्से के रूप में रीसेट किया जाता है। एम्बर प्रोजेक्ट एम्बर कोर और यूनिवर्सल एसिंक्रोनस रिसीवर / ट्रांसमीटर (यूएआरटी), टाइमर और एक ईथरनेट मैक सहित कई बाह्य उपकरणों को शामिल करते हुए एक पूर्ण एम्बेडेड फील्ड-प्रोग्रामेबल गेट एरे (एफपीजीए) सिस्टम प्रदान करता है।

एम्बर परियोजना कोर के दो संस्करण प्रदान करती है। दोनों कोर एक ही निर्देश सेट वास्तुकला  (आईएसए) को लागू करते हैं और पूरी तरह से सॉफ्टवेयर संगत हैं।


 * एम्बर 23 में 3-स्टेज पाइपलाइन, एक एकीकृत निर्देश और डेटा कैश, एक विशबोन (कंप्यूटर बस) इंटरफ़ेस है, और यह प्रति मेगाहर्ट्ज 0.75 DMIPS (थ्रिस्टोन) के लिए सक्षम है। एम्बर 23 कोर एक बहुत छोटा 32-बिट कोर है जो अच्छा प्रदर्शन करता है। गुणा से जुड़े निर्देशों को छोड़कर, रजिस्टर-आधारित निर्देश एक चक्र में निष्पादित होते हैं। लोड और स्टोर निर्देशों के लिए तीन चक्रों की आवश्यकता होती है। कोर की पाइपलाइन तब ठप हो जाती है जब कोई कैश मिस होता है, या जब कोर विशबोन एक्सेस करता है।
 * एम्बर 25 में 5-स्टेज पाइपलाइन, अलग डेटा और निर्देश कैश, एक विशबोन इंटरफ़ेस है, और प्रति मेगाहर्ट्ज 1.0 डीएमआईपीएस के लिए सक्षम है। एम्बर 25 कोर एम्बर 23 कोर की तुलना में 30 से 40% बेहतर प्रदर्शन प्रदान करता है और 30 से 40% बड़ा है। गुणा, या जटिल शिफ्ट संचालन से जुड़े निर्देशों को छोड़कर, रजिस्टर-आधारित निर्देश एक चक्र में निष्पादित होते हैं। लोड और स्टोर निर्देश भी एक चक्र में निष्पादित होते हैं जब तक कि निम्न निर्देश के साथ कोई रजिस्टर विरोध न हो। कोर की पाइपलाइन ठप हो जाती है जब किसी भी कैश में कैश की कमी हो जाती है, जब एक निर्देश संघर्ष का पता चलता है, जब एक जटिल शिफ्ट को निष्पादित किया जाता है, या जब कोर एक विशबोन एक्सेस करता है।

Linux 2.4 कर्नेल को बूट करके दोनों कोर को सत्यापित किया गया है। 2.4 शाखा से लिनक्स कर्नेल के संस्करण और पहले समर्थित आईएसए के लिए कॉन्फ़िगरेशन शामिल हैं। Linux कर्नेल 2.6 और बाद के संस्करण स्पष्ट रूप से ARM v2a ISA का समर्थन नहीं करते हैं और इसलिए चलाने के लिए और संशोधनों की आवश्यकता है। कोर में स्मृति प्रबंधन इकाई  (एमएमयू) नहीं होता है, इसलिए वे केवल लिनक्स के एक गैर-वर्चुअल मेमोरी वेरिएंट को चला सकते हैं, जैसे कि μClinux।

यह भी देखें

 * शाहबलूतिक कंप्यूटर

अग्रिम पठन
For a description of the ARMv2a ISA, see Archimedes Operating System: A Dabhand Guide, or Acorn RISC Machine Family Data Manual.

बाहरी संबंध

 * Amber Core Specification
 * Marsohod Blog
 * Marsohod Blog