मैं अपने बहुत ही एआरएम आधारित प्रोसेसर कैसे डिजाइन करूं?


37

मेरे पास कई प्रश्न हैं कि मैं अपने स्वयं के एआरएम-आधारित सीपीयू को कैसे डिजाइन करूंगा?

  • एक एआरएम लाइसेंस के साथ कैसे शुरू होता है और एक बोर्ड पर टांका लगाने के लिए तैयार पैकेज के साथ समाप्त होता है?
  • मुझे एआरएम से क्या मिलता है (मुझे यकीन है कि उनके पास डिश-आर्किटेक्चर लाइसेंस (क्वालकॉम स्नैपड्रैगन शैली) और कोर लाइसेंस (टीआई ओएमएपी शैली) के कई लाइसेंस विकल्प हैं।
  • एआरएम से एक बार 'कुछ' होने के बाद मुझे किन उपकरणों को आगे बढ़ाने की आवश्यकता है?
  • मैं फैब को क्या भेजूं?
  • मेरा मानना ​​है कि केवल कुछ फाउंड्रीज़ को एक सिलिकॉन वेफर पर एआरएम कोर निकालने के लिए लाइसेंस दिया जाता है। क्या मैं सही हू?
  • एक छात्र के रूप में, क्या मैं एफपीजीए पर ऐसा करने का जोखिम उठा सकता हूं? मैं इस तरह से कुछ के लिए अनुभव पर हाथ कैसे प्राप्त करूं?

9
स्पष्ट उत्तर एआरएम से बात करना है।
ओलिन लेथ्रोप

3
Opencores.com पर एक नज़र डालें - पूर्णता और कार्यक्षमता के विभिन्न राज्यों में बहुत सारे विभिन्न प्रोसेसर कोर हैं। जहाँ तक वास्तविक ARM कोर सोर्स प्राप्त करने का ... @OlinLathrop का कहना है ... ARM से बात करें।
akohlsmith

6
मुझे समझ में नहीं आ रहा है, यह एक भोला सवाल हो सकता है, लेकिन निश्चित रूप से वैध IMO।
जॉन एल

2
समस्या यह है कि आपका प्रश्न एक वर्कफ़्लो के लिए विशिष्ट है जिसका आपको अनुसरण करने के लिए नहीं मिलेगा। FPGA को लक्षित करने के लिए HDL में एक मूल या स्वतंत्र रूप से उपलब्ध डिज़ाइन का उपयोग करके - आप जिस वर्कफ़्लोज़ का अनुसरण कर सकते हैं, वह उससे भिन्न है।
क्रिस स्ट्रैटन

2
कॉर्टेक्स-M1 कोर किसी भी उपयुक्त रूप से सक्षम FPGA में चलने का इरादा किया जा रहा है। प्रमुख FPGA विक्रेताओं के पास IP लाइसेंस होता है, और वे डिज़ाइनर को वितरित करते हैं क्योंकि वे किसी भी अन्य सॉफ्ट कोर का उपयोग करेंगे। मैं मुफ्त में नहीं मान रहा हूं, लेकिन विशेष रूप से शैक्षणिक उपयोग के लिए संभावना कार्यक्रम उपलब्ध हैं।
RBerteig

जवाबों:


68

यहां बताया गया है कि कंपनियां ऐसा कैसे करती हैं:

  1. लगभग 10 मिलियन अमरीकी डॉलर जुटाए।
  2. लाइसेंस प्राप्त करने के लिए एआरएम से बातचीत करें। यह शायद कम से कम $ 1 मिलियन अमेरिकी खर्च होंगे।
  3. एआरएम से डिजाइन फाइलें प्राप्त करें। यह संभवतः वीएचडीएल, वेरिलॉग या "एन्क्रिप्टेड" नेटलिस्ट के कुछ रूप में होगा।
  4. अपने स्वयं के तर्क (बाह्य उपकरणों के लिए) और एआरएम ने आपको क्या दिया है, का उपयोग करके अपनी खुद की चिप डिज़ाइन करें। इस कदम के लिए कुछ महंगे CAD सॉफ्टवेयर और विशेषज्ञों की एक छोटी टीम की आवश्यकता होगी। कम से कम यूएस $ 5 मिलियन और कई वर्षों तक खर्च करने की अपेक्षा करें।
  5. चिप के लिए ही मुखौटे बनवाएं। यदि आप किसी आधुनिक अर्धचालक प्रक्रिया का उपयोग करते हैं तो यह लगभग $ 1 मिलियन तक चलेगा।
  6. चिप खुद बनाई। मूल्य भिन्न होता है, लेकिन यूएस $ 0.5 मिलियन से कम होना चाहिए।
  7. आपके द्वारा बनाई गई चिप को डिबग करें, बग को ठीक करें, फिर चरण 5 पर वापस जाएं जब तक आपके पास कुछ ऐसा न हो जिसे आप बेच सकते हैं।

यहाँ आप इसे कैसे करते हैं:

  1. अपने स्थानीय विश्वविद्यालय में स्नातक स्तर का कंप्यूटर आर्किटेक्चर कोर्स करें।
  2. डिजिटल लॉजिक में और जो भी हो, अधिक पाठ्यक्रम लें।
  3. VHDL या वेरिलॉग में खरोंच से सीपीयू डिज़ाइन करें।
  4. खरोंच से एक और सीपीयू डिज़ाइन करें।
  5. एआरएम इंस्ट्रक्शन सेट को देखें और एक संगत सीपीयू डिजाइन करें।
  6. अपने ARM- कम्पेटिबल CPU को एक FPGA में काम करें।
  7. जब तक आप मुकदमा नहीं करना चाहते तब तक अपना VHDL / वेरिलॉग सोर्स कोड वितरित न करें।
  8. अपने पीएचडी के लिए एक अच्छा शोध प्रबंध लिखने के लिए अपने एआरएम अनुभव का उपयोग करें।
  9. एआरएम, या टीआई, या जो कोई भी नौकरी पाने के लिए अपने पीएचडी का उपयोग करें। फिर एक कंपनी कैसे करती है, इस पर पिछले 7 चरणों का उपयोग करके प्रक्रिया को दोहराएं।

ठीक है, इसलिए यह सूची थोड़ी जीभ-इन-गाल है, लेकिन यह मूल रूप से सही है। मुद्दा यह है कि एआरएम से सीधे निपटने की जहमत भी न उठाएं क्योंकि बाधाओं के कारण आपके पास पैसा नहीं है। और कुछ भी ऐसा न करें जो आपको एआरएम द्वारा मुकदमा दायर करेगा।


1
+1। बहुत बढ़िया जवाब। मैं क्या कहने जा रहा था, लेकिन बेहतर।
राकेटमग्नेट

1
किसी भी अच्छे कोर्स में विभिन्न प्रकार के सीपीयू की बुनियादी संरचना और वे सभी कैसे काम करते हैं, शामिल होंगे। टॉपिक्स में माइक्रोकोड, इंस्ट्रक्शन डिकोड, ALU's, मेमोरी एक्सेस, कैशे, रजिस्टर, पाइपलाइनिंग, डाटा हैजार्ड, इंस्ट्रक्शन

3
क्या कोई कारण है कि एआरएम का निर्देश, स्वयं का और किसी भी अन्य सीपीयू की तुलना में अधिक विश्वसनीय होगा, जिसमें क्लोन बंद हो जाते हैं? निश्चित रूप से कुछ वास्तुशिल्प विशेषताएं होने के लिए उपयुक्त हैं, लेकिन अगर किसी का लक्ष्य सीपीयू डिजाइन करना है जो मौजूदा संकलक के साथ काम करेगा, तो क्या निर्देश खुद को एक समस्या पैदा करेगा?
सुपरकैट

1
@supercat आम तौर पर खुद निर्देश बहुत पेटेंट योग्य नहीं होते हैं जब तक कि वे कुछ वास्तुशिल्प चीजों को शामिल नहीं करते हैं। MIPS ने अपने सीपीयू के साथ ऐसा किया, जहां उन्होंने कुछ निर्देशों का पेटेंट कराया जो उन शब्दों को लोड / स्टोर करेगा जो शब्द-संरेखित नहीं हैं और साथ ही कुछ सामान को बड़े और छोटे एंडियन के बीच गतिशील रूप से स्विच करने के लिए। जब MIPS ने MIPS क्लोन निर्माता पर मुकदमा दायर किया, और MIPS जीता (2000 के आसपास)। लेकिन ज्यादातर पेटेंट वास्तु संबंधी मुद्दों के बारे में हैं। आप एक सीपीयू नहीं बना सकते हैं जो मौजूदा संकलक के साथ वास्तुकला और अनुदेश सेट की नकल किए बिना, दुख की बात है।

1
@LordLoh आप इन सवालों उपयोगी हो सकते हैं: electronics.stackexchange.com/questions/28686/... electronics.stackexchange.com/a/7051/638
W5VO

32

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


4
धन्यवाद :-) मैं इनमें से कुछ का अनुरोध करने के लिए अपना सलाहकार प्राप्त करने की कोशिश करूँगा।
भगवान लोह।

WFIW, यह उत्तर अब पुराना है, Cortex-M0 और Cortex-M3 दोनों उपलब्ध हैं, और उत्पाद के कुछ हिस्से गैर-छात्रों / संस्थानों के लिए खुले हैं।
सीन होउलहेन

5

OpenCores पर इस ARM कोर को देखें।


1
लेकिन चेतावनी दी है: इस तरह के फिर से कार्यान्वयन केवल एआरएम द्वारा सहन किया जाता है: eetimes.com/author.asp?section_id=36&doc_id=1287452 , आप एक संघर्ष विराम और विधिसम्मत दूर रहेंगे। आरआईएससी-वी जैसे खुले आर्क पर भी विचार करें।
सिरो सेंटिल्ली 新疆 改造 iro i

3

ARM Cortex-M1 (संभवतः ARM प्रोसेसर में सबसे सरल) पहला ARM प्रोसेसर है जिसे विशेष रूप से FPGAs में सॉफ्ट प्रोसेसर के रूप में लागू किया गया है। यह निम्नलिखित FPGA प्रकारों के लिए अनुकूलित है :

Actel (M1 ProASIC3 and M1 Fusion)
Altera (Cyclone-II, Stratix-III)
Xilinx (Spartan-3, Virtex-5)

ARM खुद Altera Cyclone III के लिए एक Cortex-M1 डेवलपमेंट किट बना रहा है, हालांकि यह DigiKey से $ 625 में थोड़ा महंगा है । आप हालांकि सभी ARM Cortex-M1 IP प्राप्त करते हैं, और विकास करने के लिए एक लाइसेंस (प्लस उत्पादन में जाने वाले लोगों के लिए 1000 बोर्डों के लिए एक मुफ्त रॉयल्टी अनुदान, बहुत अच्छा)।

अपने आप से आईपी प्राप्त करने के लिए कुछ विकल्प हो सकते हैं (शायद उनके पास एक शैक्षणिक कार्यक्रम है, किसी और ने एक विश्वविद्यालय कार्यक्रम का उल्लेख किया है, लेकिन यह M0 के लिए था)। तब आप अलग से एक विकास बोर्ड खरीद सकते थे।

यहाँ एल्टर पर ARM Cortex-M1 के बारे में कुछ और जानकारी दी गई है ।

एएमएल FPGA पर ARM Cortex-M1 डालने के बारे में कुछ जानकारी यहाँ दी गई है

इस बीच FPGA पर ARM कॉर्टेक्स के अन्य संस्करणों में कुछ रुचि है; यहाँ एक व्यक्ति से एक पेपर है जिसने एक Xilinx FPGA पर ARM Cortex-M0 को लागू किया है।


यदि आप डिज़ाइन बदलना चाहते हैं, तो "उचित" 32-बिट मशीन बनाने का प्रयास करें। वर्तमान में, ARM एक बार में 32-बिट इंस्ट्रक्शन 8 बिट्स को पढ़ता है, जिसका अर्थ है कि प्रत्येक इंस्ट्रक्शन फ़िश के लिए पीसी द्वारा 4 की वृद्धि।
एलन कैंपबेल

1

अब आप Cortex-M3 प्रोसेसर (और एक विस्तार योग्य AHB / APB सबसिस्टम) पर ARM के DesignStart प्रोग्राम के माध्यम से पहुँच प्राप्त कर सकते हैं।

Eval विकल्प एक FPGA लक्ष्य प्रदान करता है (सिमुलेशन समर्थित है, कोर के obfuscated RTL के साथ, Verilog में बाकी सब कुछ)। यह वर्तमान में एआरएम MPS2 + FPGA को लक्षित समर्थन के साथ लक्षित करता है।

प्रो संस्करण (केवल उन कंपनियों / विश्वविद्यालयों के लिए उपलब्ध है जो लाइसेंस पर हस्ताक्षर कर सकते हैं) निर्माण की अनुमति देता है, और इसमें वेरिलोग में प्रोसेसर कोर शामिल है (इसमें कॉर्टेक्स-एम 0 और कोर्टेक्स-एम 3 दोनों शामिल हैं)।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.