मुझे लगता है कि FPGA वास्तव में क्या है और जब इसे डिजाइन में उपयोग किया जाता है, तो इसके बारे में गलत धारणा हो सकती है। तो मुझे पहले उस भाग को समझाने की कोशिश करते हैं।
FPGAs और जब एक के लिए एक हो सकता है ...
सरलीकरण के जोखिम में, एक एफपीजीए एक प्रोसेसर से थोड़ा अधिक होता है जो कि 'पुन: कॉन्फ़िगर करने योग्य' होता है।
कोई 'पुन: प्राप्य' माइक्रोप्रोसेसर क्यों चाहेगा? ठीक है, क्योंकि यह एक सिलिकॉन प्रोसेसर गढ़ने के लिए बहुत अधिक लागत आता है, इसे एक, दो या दो सौ चिप्स के लिए वहन करने के लिए। आपको आर्थिक रूप से संभव बनाने के लिए हजारों चिप्स के बैच चलाने होंगे।
चूँकि कोई भी डिज़ाइन कभी भी बग-फ्री नहीं होता है, पहली बार राउंड, सिलिकॉन मार्ग पर प्रभावी ढंग से एक कंपनी को कम से कम दो करने के लिए प्रेरित करता है अगर अधिक परीक्षण नहीं चलता है, तो सभी विशाल निर्माण लागत पर।
जो अनिवार्य रूप से इसका मतलब है कि बहुत कम वाणिज्यिक कंपनियां व्यापक पर्याप्त वाणिज्यिक अपील के साथ चिप के अलावा किसी भी अन्य चीज को डिजाइन करने और बनाने में रुचि रखने वाली हैं।
इसलिए, यदि आप एक शानदार डिजाइन के साथ आते हैं, जो एक कस्टम माइक्रोप्रोसेसर को सही ठहराता है, तो आप अपने विचार को एक FPGA में लागू करके एक शानदार बजट पर जीवन में लाने की कोशिश कर सकते हैं , जहां वास्तविक चिप केवल फाटकों का एक संग्रह है, और एक 'प्रोग्राम' (आमतौर पर वीएचडीएल या वेरिलॉग) उन गेट्स को एक वास्तविक माइक्रोप्रोसेसर में व्यवस्थित करता है।
लेकिन यह काफी अलग तरीके (बिल्कुल माइक्रोप्रोसेसर डिजाइन!) सड़क है ...
जो मुझे यह सुझाव देता है
... FPGAs रोबोटिक्स के लिए आवश्यक नहीं हैं - कम से कम शुरुआत में
रोबोटिक्स के लिए आपको क्या चाहिए एक प्रोसेसर है । एक FPGA एक विशेष प्रकार का प्रोसेसर (पुन: प्राप्य) है।
आप पूछते हैं कि क्या आपको should चाहिए ’? वैसे यह आपके ज्ञान के साथ-साथ आपके वास्तविक हितों पर भी निर्भर करता है - माइक्रोप्रोसेसर डिजाइन पहले या रोबोटिक्स पहले?
यदि माइक्रोप्रोसेसर आपके जुनून हैं, तो हर तरह से! और रोबोटिक्स कस्टम माइक्रोप्रोसेसरों के लिए एक महान अनुप्रयोग क्षेत्र है - शायद हार्डवेयर में सीधे कई समानांतर निर्णय मार्गों के साथ एक विज़ुअल कॉर्टेक्स, या हार्डवेयर में विशेष टेन्सर गुणा - मूल रूप से ऐसा कुछ भी जो जेनेरिक प्रोसेसर अच्छी तरह से बंद नहीं कर सकते।
लेकिन अगर आप FPGAs में माइक्रोप्रोसेसर डिजाइन करने जा रहे हैं, तो निश्चित रूप से, आपको उस सभी निम्न स्तर के ज्ञान की आवश्यकता होगी जो आप उल्लेख करते हैं, और अधिक - क्योंकि मौलिक रूप से आप अपना स्वयं का प्रोसेसर डिजाइन करेंगे। जिसका वास्तव में रोबोटिक्स से कोई लेना-देना नहीं है, भले ही आपका लक्ष्य एप्लिकेशन रोबोटिक्स हो सकता है।
अधिकांश डिजाइनर शायद एक मौजूदा प्रोसेसर पा सकते हैं जो कि सबसे अधिक वे करेंगे जो उन्हें कभी भी आवश्यकता होगी।
इसलिए मुझे लगता है कि आपको शायद FPGA की जरूरत नहीं है।
एक स्टार्टर रोडमैप: वाणिज्यिक क्षमताओं से (शायद) एक FPGA ...
मेरी राय में पहला लक्ष्य अपने सभी रचनात्मक अवधारणाओं को एक काम करने वाले रोबोट (अपने आप में एक गहन चुनौती) के रूप में प्राप्त करने का प्रयास करना है।
यदि आप पाते हैं कि आपको अपने डिजाइन में विशिष्ट और महत्वपूर्ण प्रसंस्करण बाधाएं मिली हैं, तो अगला लक्ष्य आपके प्रोसेसर के चयन / डिजाइन को अनुकूलित करना है, फिर भी व्यावसायिक रूप से उपलब्ध चिप्स। शायद बड़ा, तेज (पावर ड्रा, हीट डिसऑर्डर के साथ व्यापार बंद)। शायद छोटे, समर्पित चिप्स विशिष्ट कार्यों को संभालने और मुख्य मस्तिष्क (एल्गोरिदम / तर्क जटिलताओं के साथ व्यापार-बंद) के साथ इंटरफेस कर रहे हैं।
केवल अगर ऐसी क्षमताएं हैं, जिन्हें आप केवल वाणिज्यिक चिप्स प्राप्त करने में सक्षम नहीं होंगे, तो आप एक FPGA के अंदर एक विशेष प्रोसेसर को लागू करने पर विचार कर सकते हैं क्योंकि उस बिंदु पर बहुत स्पष्ट फायदे होंगे जो आप अपने खुद के रोल करके हासिल करने की उम्मीद करते हैं। ', और आप केवल उन क्षमताओं को लागू करने पर ध्यान केंद्रित कर सकते हैं, जिनमें आपके डिज़ाइन के बाकी हिस्सों के लिए सही इंटरफेस हैं।
अन्यथा, आपको अपने मुख्य लक्ष्य से साइड-ट्रैक होने की संभावना है (जो मैं मान रहा हूं कि वास्तव में एक रोबोट बनाना है!)
नीचे पंक्ति: FPGAs रोबोटिक्स में शुरू होने से एक व्याकुलता हैं --- जब तक कि आप रोबोटिक्स सड़क से काफी नीचे नहीं हैं - और डिजिटल इलेक्ट्रॉनिक्स / माइक्रोप्रोसेसर डिजाइन में कुछ मजबूत तरीके से कहीं भी प्राप्त कर चुके हैं।