- माइक्रोकंट्रोलर्स के लिए पावर सेविंग तकनीक
- 1. स्लीप मोड्स
- 2. प्रोसेसर आवृत्ति का गतिशील संशोधन
- 3. बाधा हैंडलर फर्मवेयर संरचना
- 4. पावर ऑप्टिमाइज़्ड फ़र्मवेयर
- निष्कर्ष
जिस तरह गैस (पेट्रोल / डीजल) बाइक, ट्रक और कार (हाँ, टेस्ला को छोड़कर!) को स्थानांतरित करने के लिए महत्वपूर्ण है, उसी प्रकार अधिकांश इलेक्ट्रॉनिक्स अनुप्रयोगों के लिए इलेक्ट्रिक पावर है और इसलिए, एम्बेडेड सिस्टम आधारित अनुप्रयोगों के लिए जो आमतौर पर बैटरी हैं (सीमित ऊर्जा), नियमित मोबाइल फोन से लेकर स्मार्ट होम डिवाइसेस तक।
बैटरी पावर की सीमित प्रकृति से तात्पर्य है कि इन उपकरणों की बिजली की खपत की दर सुनिश्चित करने के लिए उचित होना चाहिए ताकि उनके अपनाने और उपयोग को प्रोत्साहित किया जा सके। विशेष रूप से IoT आधारित उपकरणों के साथ जहां एक उपकरण को बैटरी प्रतिस्थापन के बिना एक चार्ज पर 8 - 10 साल तक चलने की उम्मीद की जा सकती है।
इन रुझानों ने एम्बेडेड सिस्टम के डिजाइन में कम बिजली के विचारों को लागू किया है और वर्षों में, डिजाइनरों, इंजीनियरों और निर्माताओं ने कई बिंदुओं पर प्रभावी ढंग से उत्पादों द्वारा उपभोग की जाने वाली बिजली के प्रबंधन के कई बुद्धिमान तरीके विकसित किए हैं, ताकि यह सुनिश्चित हो सके कि वे लंबे समय तक चले सिंगल चार्ज। इनमें से बहुत सारी तकनीकें माइक्रोकंट्रोलर पर ध्यान केंद्रित करती हैं, जो अधिकांश उपकरणों का दिल है। आज के लेख में, हम इनमें से कुछ तकनीकों की खोज करेंगे और उनका उपयोग माइक्रोकंट्रोलर्स में बिजली की खपत को कम करने के लिए कैसे किया जा सकता है। हालांकि एक माइक्रोप्रोसेसर कम बिजली की खपत करता है लेकिन इसका उपयोग माइक्रोकंट्रोलर पर हर जगह रखा जा सकता है, माइक्रोप्रोसेसर से कैसे अलग है यह जानने के लिए लिंक का अनुसरण करें।
माइक्रोकंट्रोलर्स के लिए पावर सेविंग तकनीक
1. स्लीप मोड्स
स्लीप मोड (आमतौर पर कम पावर मोड के रूप में संदर्भित) निश्चित रूप से माइक्रोकंट्रोलर में बिजली की खपत को कम करने के लिए सबसे लोकप्रिय तकनीक है। वे आम तौर पर कुछ सर्किटरी या घड़ियों को अक्षम करते हैं जो माइक्रोकंट्रोलर्स के कुछ बाह्य उपकरणों को चलाते हैं ।
वास्तुकला और निर्माता के आधार पर, माइक्रोकंट्रोलर्स में आमतौर पर विभिन्न प्रकार के स्लीप मोड होते हैं, प्रत्येक मोड में दूसरे की तुलना में अधिक आंतरिक सर्किटरी या परिधीय को निष्क्रिय करने की क्षमता होती है। स्लीप मोड आमतौर पर गहरी नींद या बंद से लेकर निष्क्रिय और डोज मोड तक होता है।
कुछ उपलब्ध मोड नीचे दिए गए हैं । यह ध्यान दिया जाना चाहिए कि विशेषताओं के साथ-साथ इन मोड के नाम निर्माता से निर्माता तक भिन्न हो सकते हैं।
मैं। निष्क्रिय / नींद मोड
यह आमतौर पर डिजाइनरों को लागू करने के लिए कम शक्ति मोड का सबसे सरल है। यह मोड बहुत तेज़ दर पर पूर्ण संचालन पर लौटने के लिए माइक्रोकंट्रोलर को अनुमति देता है । इसलिए यह सबसे अच्छा मोड नहीं है, अगर डिवाइस का पावर चक्र, इसे स्लीप मोड को छोड़ने के लिए बहुत बार आवश्यकता होती है, क्योंकि बड़ी मात्रा में बिजली खींची जाती है, जब माइक्रोकंट्रोलर स्लीप मोड से बाहर निकलता है। स्टैंडबाय मोड से सक्रिय मोड पर लौटें आमतौर पर इंटरप्ट आधारित है। इस मोड को माइक्रोकंट्रोलर पर लागू किया जाता है, ताकि सीपीयू सर्किटरी को चालू करने वाले घड़ी के पेड़ को बंद कर दिया जाए, जबकि एमसीयू प्राथमिक उच्च आवृत्ति वाली घड़ी चल रही है। इसके साथ, सीपीयू संचालन को फिर से शुरू करने में सक्षम है तुरंत वेक-अप ट्रिगर सक्रिय हो गया है। माइक्रोकंट्रोलर्स के लिए कम पावर मोड में सिग्नलों को काटने के लिए क्लॉक गेटिंग को बड़े पैमाने पर नियोजित किया गया है और यह मोड सीपीयू में क्लॉक सिग्नलों को प्रभावी ढंग से स्थापित करता है।
ii। स्टैंडबाई मोड
स्टैंडबाई मोड एक और कम पावर मोड है, जो डिजाइनरों के लिए लागू करना आसान है। यह बहुत बेकार / स्लीप मोड के समान है क्योंकि इसमें सीपीयू में घड़ी के गेटिंग का उपयोग भी शामिल है, लेकिन एक बड़ा अंतर यह है कि यह राम की सामग्री में बदलाव की अनुमति देता है जो आमतौर पर निष्क्रिय / स्लीप मोड के मामले में नहीं होता है। स्टैंडबाई मोड में, DMA (डायरेक्ट मेमोरी एक्सेस), सीरियल पोर्ट्स, ADC और AES पेरिफेरल्स जैसी हाई-स्पीड परफॉरमेंस को सीपीयू के जागने के तुरंत बाद उपलब्ध कराने के लिए रखा जाता है। कुछ एमसीयू के लिए, रैम को भी सक्रिय रखा जाता है और इसे डीएमए द्वारा एक्सेस किया जा सकता है और डेटा को सीपीयू के हस्तक्षेप के बिना संग्रहीत और प्राप्त किया जा सकता है। इस मोड में खींची गई शक्ति कम पावर माइक्रोकंट्रोलर के लिए 50uA / MHZ जितनी कम हो सकती है।
iii। गहरी नींद मोड
गहरी नींद मोड, आम तौर पर माइक्रोकंट्रोलर के भीतर उच्च आवृत्ति वाली घड़ियों और अन्य सर्किटों को अक्षम करना शामिल है, केवल घड़ी सर्किटरी का उपयोग किया जाता है, जो वॉचडॉग टाइमर, ब्राउन आउट डिटेक्शन और रीसेट सर्किटरी की शक्ति जैसे महत्वपूर्ण तत्वों को चलाने के लिए उपयोग किया जाता है। अन्य MCUs समग्र दक्षता में सुधार करने के लिए इसमें अन्य तत्व जोड़ सकते हैं। इस मोड में बिजली की खपत विशेष MCU के आधार पर 1uA जितनी कम हो सकती है।
iv। स्टॉप / ऑफ मोड
कुछ माइक्रोकंट्रोलर्स के पास इस अतिरिक्त मोड के विभिन्न रूप हैं। इस मोड में, उच्च और निम्न दोनों थरथरानवाला आमतौर पर केवल कुछ कॉन्फ़िगरेशन रजिस्टर और अन्य महत्वपूर्ण तत्वों को छोड़कर अक्षम होते हैं।
ऊपर वर्णित सभी स्लीप मोड की विशेषताएं MCU से MCU तक भिन्न होती हैं लेकिन अंगूठे का सामान्य नियम है; गहरी नींद, नींद के दौरान परिधीयों की संख्या अधिक होती है, और बिजली की मात्रा कम होती है, हालाँकि, इसका आमतौर पर मतलब भी होता है; सिस्टम को वापस लाने के लिए खपत की गई ऊर्जा की मात्रा जितनी अधिक होगी। इस प्रकार इस भिन्नता पर विचार करना और सिस्टम के विनिर्देश को प्रभावित करने वाले समझौते किए बिना कार्य के लिए सही MCU का चयन करना डिजाइनर पर निर्भर है।
2. प्रोसेसर आवृत्ति का गतिशील संशोधन
यह एक माइक्रोकंट्रोलर द्वारा खपत बिजली की मात्रा को कुशलतापूर्वक कम करने के लिए एक और व्यापक रूप से लोकप्रिय तकनीक है। यह अब तक की सबसे पुरानी तकनीक है और स्लीप मोड की तुलना में थोड़ी अधिक जटिल है। इसमें फर्मवेयर को गतिशील रूप से प्रोसेसर घड़ी को चलाना, उच्च और निम्न आवृत्ति के बीच बारी-बारी से प्रोसेसर की आवृत्ति के बीच संबंध और खपत की गई शक्ति रैखिक है (जैसा कि नीचे दिखाया गया है)।
इस तकनीक का कार्यान्वयन आमतौर पर इस पैटर्न का अनुसरण करता है; जब सिस्टम निष्क्रिय स्थिति में होता है, तो फर्मवेयर घड़ी की आवृत्ति को कम गति पर सेट करता है जिससे डिवाइस कुछ शक्ति को बचा सकता है और जब सिस्टम को भारी गणना करने की आवश्यकता होती है, तो घड़ी की गति को वापस लाया जाता है।
प्रोसेसर आवृत्ति को संशोधित करने के लिए काउंटरप्रोडक्टिव परिदृश्य हैं जो आमतौर पर बुरी तरह से विकसित फर्मवेयर के परिणामस्वरूप होता है। इस तरह के परिदृश्य तब उत्पन्न होते हैं जब घड़ी की आवृत्ति कम रखी जाती है जबकि सिस्टम भारी गणना कर रहा होता है। इस परिदृश्य में एक कम आवृत्ति का मतलब है कि सिस्टम को सेट कार्य करने के लिए आवश्यक से अधिक समय लगेगा और इस प्रकार संचयी रूप से समान मात्रा में बिजली का उपभोग करेगा जिसे डिजाइनर बचाने की कोशिश कर रहे थे। इस प्रकार, महत्वपूर्ण अनुप्रयोगों में इस तकनीक को लागू करते समय अतिरिक्त सावधानी बरतनी चाहिए।
3. बाधा हैंडलर फर्मवेयर संरचना
यह माइक्रोकंट्रोलर में बिजली प्रबंधन की सबसे चरम तकनीकों में से एक है । यह कुछ माइक्रोकंट्रोलर द्वारा संभव बनाया गया है, जैसे एआरएम कॉर्टेक्स-एम कोर जो एससीआर रजिस्टर में एक नींद-पर-बाहर निकलने वाले बिट हैं। यह बिट एक व्यवधान दिनचर्या चलाने के बाद सोने की क्षमता के साथ माइक्रोकंट्रोलर प्रदान करता है। जबकि इस तरीके से सुचारू रूप से चलने वाले अनुप्रयोगों की संख्या की एक सीमा होती है, यह फ़ील्ड सेंसर और अन्य, दीर्घकालिक, डेटा एकत्र करने वाले अनुप्रयोगों के लिए एक बहुत ही उपयोगी तकनीक हो सकती है।
मेरी राय में अन्य तकनीकों में से अधिकांश पहले से ही ऊपर वर्णित लोगों की विविधताएं हैं । उदाहरण के लिए चयनात्मक परिधीय क्लॉकिंग तकनीक अनिवार्य रूप से स्लीप मोड्स की भिन्नता है जिसमें डिज़ाइनर बाह्य उपकरणों को चालू या बंद करने का चयन करता है। इस तकनीक को लक्ष्य माइक्रोकंट्रोलर के गहन ज्ञान की आवश्यकता होती है और यह बहुत शुरुआती अनुकूल नहीं हो सकता है।
4. पावर ऑप्टिमाइज़्ड फ़र्मवेयर
एक माइक्रोकंट्रोलर द्वारा उपभोग की गई बिजली की मात्रा को कम करने के सर्वोत्तम तरीकों में से एक कुशल और अच्छी तरह से अनुकूलित फर्मवेयर लिखना है । यह सीपीयू द्वारा प्रति बार किए गए काम की मात्रा को सीधे प्रभावित करता है और यह, विस्तार से माइक्रोकंट्रोलर द्वारा खपत की गई बिजली की मात्रा में योगदान देता है। कम कोड आकार और चक्रों को सुनिश्चित करने के लिए फर्मवेयर को लिखते समय प्रयास किए जाने चाहिए क्योंकि हर अनावश्यक निर्देश निष्पादित किया जाता है, बैटरी में संग्रहीत ऊर्जा का एक हिस्सा बर्बाद हो रहा है। नीचे अनुकूलित फर्मवेयर विकास के लिए कुछ सामान्य सी आधारित युक्तियां दी गई हैं;
- शक्ति का उपभोग करने वाले सरणियों, संरचनाओं आदि की रनटाइम प्रतिलिपि को रोकने के लिए "स्टेटिक कास्ट" वर्ग का यथासंभव उपयोग करें।
- पॉइंटर्स का उपयोग करें। वे शायद शुरुआती लोगों के लिए समझने के लिए सी भाषा का सबसे कठिन हिस्सा हैं, लेकिन वे संरचनाओं और यूनियनों तक कुशलता से पहुंचने के लिए सर्वश्रेष्ठ हैं।
- मोडुलो से बचें!
- वैश्विक चर पर स्थानीय चर जहां संभव हो। स्थानीय चर सीपीयू में निहित होते हैं जबकि वैश्विक चर राम में संग्रहीत होते हैं, सीपीयू स्थानीय चर तेजी से पहुंचता है।
- बिना डेटा वाले डेटा आपके सबसे अच्छे दोस्त हैं जहाँ संभव हो।
- जहां संभव हो, छोरों के लिए "उलटी गिनती" को अपनाएं।
- अहस्ताक्षरित पूर्णांक के लिए बिट फ़ील्ड के बजाय, बिट मास्क का उपयोग करें।
एक माइक्रोकंट्रोलर द्वारा खपत की गई बिजली की मात्रा को कम करने के लिए दृष्टिकोण उपरोक्त वर्णित सॉफ़्टवेयर आधारित दृष्टिकोणों तक सीमित नहीं हैं, कोर वोल्टेज नियंत्रण तकनीक जैसे हार्डवेयर आधारित दृष्टिकोण मौजूद हैं, लेकिन इस पद की लंबाई को एक उचित सीमा के भीतर रखने के लिए, हम बचाएंगे उन्हें एक और दिन के लिए।
निष्कर्ष
कम बिजली उत्पाद को लागू करना माइक्रोकंट्रोलर की पसंद से शुरू होता है और यह काफी भ्रामक हो सकता है जब आप बाजार में उपलब्ध विविध विकल्पों पर जाने की कोशिश करते हैं। के माध्यम से स्कैन करते समय, डेटा पत्रक MCUs के सामान्य प्रदर्शन को प्राप्त करने के लिए अच्छी तरह से काम कर सकता है, लेकिन पावर महत्वपूर्ण अनुप्रयोगों के लिए, यह एक बहुत महंगा दृष्टिकोण हो सकता है। एक माइक्रोकंट्रोलर की वास्तविक शक्ति विशेषताओं को समझने के लिए, डेवलपर्स को विद्युत विनिर्देशों और माइक्रोकंट्रोलर के लिए उपलब्ध कम पावर फंक्शंस को ध्यान में रखना चाहिए । डिजाइनरों को केवल MCU की डेटशीट द्वारा विज्ञापित पावर मोड में से प्रत्येक के वर्तमान उपभोग के बारे में चिंतित नहीं होना चाहिए, उन्हें वेक-अप समय, वेक-अप स्रोतों और बाह्य उपकरणों में देखना चाहिए कि कम बिजली मोड के दौरान उपयोग के लिए उपलब्ध हैं।
कम बिजली के कार्यान्वयन के लिए आपके पास जो विकल्प हैं, उनका पता लगाने के लिए आपके द्वारा उपयोग की जाने वाली माइक्रोकंट्रोलर की सुविधाओं की जांच करना महत्वपूर्ण है। माइक्रोकंट्रोलर प्रौद्योगिकी उन्नति के सबसे बड़े लाभार्थियों में से एक रहे हैं और अब कई अल्ट्रा-लो-पावर माइक्रोकंट्रोलर हैं जो सुनिश्चित करते हैं कि आपके पास आपके पावर बजट के भीतर रहने में मदद करने के लिए संसाधन हैं। उनमें से कई प्रभावी विश्लेषण सॉफ्टवेयर उपकरण भी प्रदान करते हैं जिनका आप लाभ उठा सकते हैं, प्रभावी डिजाइन के लिए। एक व्यक्तिगत पसंदीदा टेक्सास इंस्ट्रूमेंट से माइक्रोकंट्रोलर्स की MSP430 लाइन है।