माइक्रोकंट्रोलर्स की बढ़ती लोकप्रियता के साथ इंजीनियर FPGAs से अधिक माइक्रोकंट्रोलर का उपयोग कर रहे हैं। पुरालेख से अधिक प्रमुख बन गए हैं FPGA उनके सस्ती कीमत, अच्छा समर्थन, आसान उपलब्धता, बड़े समुदाय, बहुमुखी प्रतिभा, प्रोग्रामिंग आदि की वजह से लेकिन उस माइक्रोप्रोसेसरों के अलावा अन्य तरह के निर्देश सेट के रूप में कुछ सीमाएं हैं, कार्यक्रमों की अनुक्रमिक निष्पादन (अनुक्रमिक प्रोसेसिंग), लचीलेपन और पुन: प्रयोज्य आदि की कमी हालांकि FPGA इन सीमाओं को पार कर सकती है क्योंकि FPGAs के कार्यक्रमों का समानांतर निष्पादन होता है और यह लचीला और पुन: प्रयोज्य है इसका मतलब यह है कि इसे अलग-अलग कार्यों के लिए बार-बार पुन: शुरू किया जा सकता है।
FPGA क्या है और यह माइक्रोकंट्रोलर से कैसे अलग है
एक एफपीजीए एक एकीकृत परिपथ सिलिकॉन चिप जो लॉजिक गेट की सरणी है और इस सरणी क्षेत्र में प्रोग्राम किया जा सकता यानी उपयोगकर्ता अपनी नई परिभाषित विन्यास के साथ मौजूदा विन्यास अधिलेखित कर सकते हैं और मैदान पर अपने स्वयं के डिजिटल सर्किट बना सकते हैं। FPGAs को खाली स्लेट माना जा सकता है। FPGAs अपने आप से कुछ भी नहीं करते हैं, जबकि डिजाइनरों के लिए यह एक विन्यास फाइल बनाना है, जिसे अक्सर FPGA के लिए एक बिट फ़ाइल कहा जाता है । FPGA एक बिट फ़ाइल के साथ लोड होने के बाद डिजिटल सर्किट की तरह व्यवहार करेगा।
जबकि माइक्रोकंट्रोलर में, यह मामला नहीं है क्योंकि माइक्रोकंट्रोलर को प्रोग्राम या क्षेत्र में पुनर्गठन नहीं किया जा सकता है। उपयोगकर्ता को न तो अपने मौजूदा कॉन्फ़िगरेशन को अधिलेखित करने की अनुमति है और न ही वे क्षेत्र पर कोई डिजिटल सर्किट बना सकते हैं। माइक्रोकंट्रोलर प्रोग्राम करना आसान है और समुदाय भी विस्तृत है। माइक्रोकंट्रोलर कस्टम निर्मित मिनी कंप्यूटर हैं जो आईसी रूप में आते हैं जबकि एफपीजीएएस में केवल तर्क ब्लॉक होते हैं जिन्हें फिर से विद्युत रूप से फिर से शुरू किया जा सकता है। माइक्रोकंट्रोलर के संदर्भ में भी, यह FPGAs की तुलना में कम बिजली की खपत करता है। FPGAs को महंगा होने के लिए जाना जाता है और इसे किसी भी उपकरण के निर्माण के लिए माइक्रोकंट्रोलर की तुलना में अधिक लागत की आवश्यकता होती है। FPGAs को सेट-अप करने के लिए काफी अधिक समय लगता है जबकि विशिष्ट अनुप्रयोगों के लिए माइक्रोकंट्रोलर आसानी से उपलब्ध होते हैं।
FPGA वास्तुकला
FPGA में तर्क कोशिकाओं या मॉड्यूल और इंटरलिंक की एक नियमित संरचना होती है जो डेवलपर्स और डिजाइनरों के पूर्ण नियंत्रण में होती है। FPGA को मुख्य रूप से तीन प्रमुख ब्लॉकों जैसे विन्यास योग्य लॉजिक ब्लॉक (CLB), I / O ब्लॉक या पैड और स्विच मैट्रिक्स / इंटरकनेक्शन तारों के साथ बनाया गया है । प्रत्येक ब्लॉक के बारे में संक्षेप में चर्चा की जाएगी।
- सीएलबी (कॉन्फ़िगर करने योग्य लॉजिक ब्लॉक): ये एफपीजीए की मूल कोशिकाएं हैं। इसमें एक 8-बिट फ़ंक्शन जनरेटर, दो 16-बिट फ़ंक्शन जनरेटर, दो रजिस्टर (फ्लिप-फ्लॉप या लैचेस), और रिप्रोग्रामेबल राउटिंग कंट्रोल (मल्टीप्लेक्सर्स) होते हैं। CLB को अन्य डिज़ाइन किए गए फ़ंक्शन और मैक्रोज़ को लागू करने के लिए लागू किया जाता है। प्रत्येक सीएलबी में हर तरफ इनपुट होते हैं जो उन्हें तर्क के मानचित्रण और विभाजन के लिए लचीला बनाता है।
- I / O पैड या ब्लॉक्स: इनपुट / आउटपुट पैड का उपयोग बाहरी परिधीयों के लिए FPGA के कार्यों तक पहुँचने के लिए किया जाता है और I / O पैड्स का उपयोग करके यह अलग-अलग बाह्य उपकरणों का उपयोग करके FPGA के साथ विभिन्न अनुप्रयोगों के लिए भी संवाद कर सकता है।
- स्विच मैट्रिक्स / इंटरकनेक्शन तार: स्विच मैट्रिक्स का उपयोग FPGA में लंबे और छोटे इंटरकनेक्शन तारों को एक साथ लचीले संयोजन में जोड़ने के लिए किया जाता है। इसमें ट्रांजिस्टर को विभिन्न लाइनों के बीच कनेक्शन को चालू / बंद करना भी शामिल है।
जब FPGAs की जरूरत है
जैसा कि ऊपर उल्लेख किया गया है कि माइक्रोकंट्रोलर्स के पास कुछ सीमा होती है और इसका उपयोग समानांतर रूप से कार्य करने के लिए नहीं किया जा सकता है क्योंकि माइक्रोकंट्रोलर और माइक्रोप्रोसेसरों कार्यक्रमों के अनुक्रमिक निष्पादन पर चलता है जो इसे कुछ अनुप्रयोगों में थोड़ा धीमा बनाता है, इस परिदृश्य में FPGAs का एक फायदा है और इसका प्रभावी ढंग से उपयोग किया जा सकता है। । इसके अलावा माइक्रोकंट्रोलर सीमित कार्य कर सकते हैं क्योंकि वे निर्देशों और उनके सर्किट्री के साथ आते हैं । एक प्रोग्रामर को कोड विकसित करते समय प्रतिबंधों का पालन करना पड़ता है। तो इस परिदृश्य में भी, FPGAs का फायदा है।
हालांकि, माइक्रोकंट्रोलर्स के मामले में, प्रोसेसर समानता के कुछ स्तर को प्राप्त करने के लिए एक कोड से दूसरे कोड पर स्विच करता है। आपको FPGAs की तुलना में माइक्रोकंट्रोलर पर कोड लिखना आसान होगा। FPGAs की समानांतर प्रसंस्करण क्षमता आपको Finite State Machines (FSM) का उपयोग करके व्यवधानों को प्रभावी ढंग से नियंत्रित करने में सक्षम बनाती है।
माइक्रोकंट्रोलर्स के मामले में, एक रुकावट को हल करने के लिए आपको ISR द्वारा लिए गए समय का हिसाब देना होगा। आप एक FPGA को आसानी से रीप्रोग्राम करके आसानी से पुनः प्राप्त कर सकते हैं। FPGA में कॉन्फ़िगरेशन को कॉन्फ़िगर करने योग्य लॉजिक सेल पर लोड किया जाता है जब बिजली चालू होती है।
FPGA को पुन: उत्पन्न करने के लिए आपको हार्डवेयर में कोई बदलाव करने की आवश्यकता नहीं है। FPGAs समानांतर डेटा के उच्च गति प्रसंस्करण के लिए उपयुक्त हैं और कस्टमाइज़ेबिलिटी के उच्च स्तर के साथ आते हैं । हालांकि, उनके पास प्रोटोटाइप संचालन और कॉन्फ़िगरेशन की जटिलता की कमियां भी हैं। इसलिए, FPGAs को माइक्रोकंट्रोलर पर इन लाभों के साथ चुना जा सकता है। आइए FPGA प्रोग्रामिंग शुरू करें और जोर दें