SMBus : कार्य, अंतर और इसके अनुप्रयोग

समस्याओं को खत्म करने के लिए हमारे साधन का प्रयास करें





SMBus को वर्ष 1995 में Intel द्वारा लॉन्च किया गया था और यह Philips के I²C सीरियल बस प्रोटोकॉल पर आधारित है। यह बस डेटा, सीएलके और निर्देशों को वहन करती है जहां घड़ी की आवृत्ति 10 kHz से 100 kHz तक होती है। SMBus का मुख्य उद्देश्य मदरबोर्ड पर उपकरणों से डेटा को नियंत्रित करने और प्राप्त करने के लिए एक सस्ती और शक्तिशाली विधि की अनुमति देना है। SMBus का उपयोग आमतौर पर पीसी में तापमान नियंत्रण, स्मार्ट बैटरी और अन्य कम बैंडविड्थ सिस्टम प्रबंधन संचार के लिए किया जाता है।


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



SMBus प्रोटोकॉल क्या है?

SMBus (सिस्टम मैनेजमेंट बस) एक 2-वायर इंटरफ़ेस है, जिसका उपयोग अक्सर कम गति वाले सिस्टम प्रबंधन संचार के लिए मदरबोर्ड पर विभिन्न उपकरणों के बीच किया जाता है। इस तरह की बस को द्वारा डिजाइन किया गया था I2C प्रोटोकॉल नींव। तो I2C और SMBus दोनों में कुछ समानताएं हो सकती हैं और वे समान बस में भी इंटर-ऑपरेट कर सकते हैं।

यह बस I2C संचालन सिद्धांतों पर काम करती है जो एक नियंत्रण बस प्रदान करती है, विशेष रूप से सिस्टम के लिए या डिवाइस से संदेशों को अनुमति देने के लिए सिस्टम वायर और पिन काउंट को कम करने के लिए अलग नियंत्रण लाइनों का उपयोग करने के बजाय।



एक एसएमबीस के साथ एक उपकरण निर्माण की जानकारी प्रदान कर सकता है, इसके हिस्से या मॉडल संख्या की प्रणाली को सूचित कर सकता है, विभिन्न प्रकार की त्रुटियों की रिपोर्ट कर सकता है, नियंत्रण पैरामीटर की अनुमति दे सकता है, और अपनी स्थिति को फिर से देख सकता है।

SMBus विशिष्टता

SMBus का विनिर्देश केवल 3 प्रकार के डिवाइस होस्ट, मास्टर और स्लेव को संदर्भित करता है।

  • एक होस्ट एक विशेष मास्टर होता है और यह सिस्टम के सीपीयू को मुख्य इंटरफ़ेस प्रदान करता है।
  • एक मास्टर डिवाइस जो निर्देश जारी करता है, घड़ियों को उत्पन्न करता है और स्थानांतरण को समाप्त करता है।
  • एक दास डिवाइस प्राप्त करता है अन्यथा एक आदेश पर प्रतिक्रिया करता है।

SMBus कैसे काम करता है?

SMBus संचार के भीतर 3 प्रकार के उपकरणों का उपयोग किया जाता है जैसे एक होस्ट, एक मास्टर और एक स्लेव डिवाइस जो निम्नलिखित आरेख में दिखाए गए हैं। इस बस में, होस्ट डिवाइस सिस्टम के सीपीयू के लिए एक विशिष्ट मास्टर वर्क-जैसे इंटरफ़ेस है; हालांकि, यह हमेशा जरूरी नहीं है। कुछ सिस्टम जैसे साधारण बैटरी चार्जिंग सिस्टम बिना होस्ट के हो सकते हैं।

एक मास्टर डिवाइस संचार शुरू करता है, सीएलके को चलाता है और स्थानांतरण को रोकता है। एक उपकरण को केवल एक मास्टर या एक मास्टर-दास होने के लिए चुना जा सकता है, जहां यह या तो एक मास्टर डिवाइस के रूप में काम कर सकता है अन्यथा एक गुलाम डिवाइस।

  एसएमबस आरेख
एसएमबस आरेख

एसएमबीस पर, एक मास्टर के ऊपर भी होता है, हालांकि किसी भी समय केवल एक ही बस को मास्टर कर सकता है। उदाहरण के लिए, जब दो डिवाइस एक साथ बस में महारत हासिल करते हैं, तो एसएमबीस एक मध्यस्थता तंत्र प्रदान करता है जो एसएमबीस डिवाइस के एसएमबीस के सभी इंटरफेस के वायर्ड-एंड कनेक्शन पर निर्भर करता है।

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

I2C प्रोटोकॉल के समान, इस बस में प्रत्येक दास को बस एक सात-बिट दास पते के साथ आवंटित किया जाता है, जहां इस पते पर पढ़ने या लिखने का बिट जोड़ा जाता है ताकि यह वर्णन किया जा सके कि डिवाइस बस में प्रसारित होने वाले संदेश को पढ़ या लिख ​​रहा है या नहीं।

उपकरणों को अपने स्वयं के पते को पहचानने की आवश्यकता होती है, इस प्रकार एक बार जब कोई उपकरण अपने पते की पहचान कर लेता है, तो वह कमांड पर प्रतिक्रिया करेगा।

जब इस बस के स्लेव एड्रेस का विरोध होता है, तो यह ARP या एड्रेस रेजोल्यूशन प्रोटोकॉल को सपोर्ट करता है। एक बार जब मेजबान समान दास पते वाले दो उपकरणों को नोटिस करता है, तो पता समाधान प्रोटोकॉल प्रक्रिया दासों को गतिशील रूप से एक नया अनूठा पता प्रदान करेगी। एड्रेस रिजॉल्यूशन प्रोटोकॉल सिस्टम को फिर से शुरू करने की आवश्यकता के बिना उपकरणों को तुरंत उपयोग करने की अनुमति देगा।

यह बस एसएमबीडीएटी तार और एसएमबीसीएलके तार जैसे संचार के लिए 2-तार का उपयोग करती है जहां एसएमबीडीएटी तार का उपयोग सीरियल डेटा को स्थानांतरित करने के लिए किया जाता है और एसएमबीसीएलके तार सीरियल घड़ी की तरह काम करता है। उपरोक्त SMBus में, मास्टर केवल SMBCLK चलाता है जो कि 10 से 100 kHz तक होता है, हालाँकि, कोई भी लाइन SMBDAT को चला सकती है।

ये दो तार द्विदिश हैं जो SMBALERT जैसे अलर्ट सिग्नल को शामिल करने का विकल्प प्रदान करते हैं जो उपकरणों को होस्ट से ध्यान आकर्षित करने की अनुमति देता है।

इस बस के डेटा पैकेट में एक स्टार्ट बिट, एक ACK या NACK बिट, 8 बिट डेटा और एक स्टॉप बिट होता है। SMBus का डेटा ट्रांसफर कुछ फ़ंक्शन का उपयोग करता है अन्यथा विभिन्न SMBus के प्रोटोकॉल जैसे संदेश भेजते समय बाइट, क्विक कमांड, रीड वर्ड, राइट बाइट, रीड बाइट, वर्ड लिखें, प्रोसेस कॉल, ब्लॉक राइट, ब्लॉक रीड, रीड प्रोसेस कॉल और ब्लॉक राइट-ब्लॉक।

यह बस संचार विश्वसनीयता में सुधार के लिए पीईसी (पैकेट त्रुटि जांच) का भी समर्थन करती है। तो यह प्रत्येक संदेश के अंत में एक पैकेट त्रुटि कोड शामिल करके किया जा सकता है।

कार्यों

SMBus कार्य प्रोटोकॉल भी कहलाते हैं। तो SMBus के मुख्य प्रोटोकॉल हैं क्विक कमांड, सेंड बाइट, रिसीव बाइट, राइट बाइट, रीड बाइट, प्रोसेस कॉल, ब्लॉक राइट/रीड ब्लॉक राइट-ब्लॉक रीड प्रोसेस कॉल, SMBus होस्ट नोटिफाई प्रोटोकॉल, राइट -32 प्रोटोकॉल, रीड -32 प्रोटोकॉल, 64-प्रोटोकॉल लिखें और 64 प्रोटोकॉल पढ़ें।

SMBUS संदेश प्रारूप

START की स्थिति के बाद, मास्टर स्लेव डिवाइस के 7-बिट पते का पता लगाएगा और उसे बस में पता करना होगा। तो, पते की लंबाई 7 बिट लंबी है और उसके बाद 8-बिट डेटा स्थानांतरण दिशा (आर/डब्ल्यू) को दर्शाता है; एक रीड (डेटा) के लिए एक अनुरोध निर्दिष्ट करता है और एक शून्य एक राइट (ट्रांसमिशन) निर्दिष्ट करता है।

  संदेश प्रारूप
संदेश प्रारूप

डेटा का स्थानांतरण हमेशा मास्टर के माध्यम से उत्पन्न STOP शर्त द्वारा समाप्त किया जाता है।

प्रत्येक बाइट में 8 बिट शामिल होते हैं और प्रत्येक बाइट को SMBus पर स्थानांतरित किया जाता है और एक पावती बिट के माध्यम से इसका पालन किया जाना चाहिए। बाइट्स को पहले MSB (सबसे महत्वपूर्ण बिट) के माध्यम से प्रेषित किया जाता है।

एक विशिष्ट SMBus डिवाइस में कमांड का एक सेट शामिल होता है जिसके माध्यम से डेटा को आसानी से पढ़ा और लिखा जा सकता है। इन सभी आदेशों की लंबाई 1 बाइट लंबी है, जबकि उनके तर्क, साथ ही वापसी मान, लंबाई के भीतर बदल सकते हैं।

किसी आदेश को अनुमति देना मौजूद नहीं है अन्यथा यह समर्थित नहीं है, इसलिए यह एक त्रुटि स्थिति का कारण बन सकता है। SMBus विनिर्देश के अनुपालन में, MSB को पहले स्थानांतरित किया जाता है।

सबसे पहले, सभी कमांड बस के ऊपर एक स्टार्ट कंडीशन सेट करते हैं, उसके बाद डेटा या कमांड ट्रांसमिट करके ट्रांसमिशन शुरू करते हैं, पूरे डेटा या कमांड ट्रांसमिशन में स्लेव डिवाइस से स्वीकृति की प्रतीक्षा करते हैं, फिर बस पर स्टॉप कंडीशन सेट करते हैं।

SMBus प्रोटोकॉल के लिए प्रारंभ और बंद शर्तें

किसी संदेश की START और STOP स्थिति को दो विशिष्ट बस स्थितियों द्वारा परिभाषित किया जाएगा जो उच्च से निम्न और निम्न से उच्च तक होती हैं।

  प्रारंभ और बंद शर्तें
प्रारंभ और बंद शर्तें

हाई टू लो एसएमबीडीएटी लाइन ट्रांजिशन में, जब एसएमबीसीएलके हाई होता है तो यह मैसेज की START कंडीशन को दर्शाता है।

LOW से High SMBDAT लाइन ट्रांजिशन में, जब SMBCLK हाई होता है तो यह मैसेज की STOP कंडीशन को परिभाषित करता है। तो ये दो स्थितियां हमेशा बस के मालिक द्वारा उत्पन्न की जाती हैं। START की स्थिति के बाद बस व्यस्त हो जाती है। स्टॉप की शर्त के बाद एक निश्चित समय के बाद बस फिर से बेकार हो जाएगी।

SMBus हार्डवेयर आवश्यकताएँ

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

SMBus डेटा ट्रांसफर सेंड बाइट, क्विक कमांड, राइट बाइट, रीड बाइट, रीड वर्ड, रीड वर्ड, ब्लॉक रीड, प्रोसेस कॉल, ब्लॉक राइट आदि जैसे संदेशों को ट्रांसफर करते समय विभिन्न प्रोटोकॉल या फ़ंक्शन का उपयोग करता है। यह पीईसी या पैकेट त्रुटि जाँच का भी समर्थन करता है। प्रत्येक संदेश के अंत में केवल एक पैकेट त्रुटि कोड शामिल करके संचार विश्वसनीयता बढ़ाना।

SMBus हार्डवेयर केवल सीरियल ट्रांसफर के लिए उपयोग किए जाने वाले समय और स्थानांतरण नियंत्रण प्रदान करता है। इसलिए SMBus का हार्डवेयर अलग-अलग स्वतंत्र एप्लिकेशन कार्य करता है जैसे समय नियंत्रण, सीरियल डेटा ट्रांसफर और स्लेव एड्रेस की पहचान।

एसएमबीस बनाम I2C

SMBus और I2C के बीच अंतर निम्नलिखित शामिल हैं।

एसएमबस

2सी

SMBus शब्द का अर्थ 'सिस्टम मैनेजमेंट बस' है। I2C शब्द का अर्थ 'इंटर-इंटीग्रेटेड सर्किट' है।
SMBus एक 2-तार नियंत्रण बस है जिसका उपयोग ऊर्जा और सिस्टम प्रबंधन कार्यों में किया जाता है। I2C एक ऑन-बोर्ड संचार प्रोटोकॉल है जिसका उपयोग कम बैंडविड्थ और कम दूरी के लिए किया जाता है।
एक सिस्टम इस बस का उपयोग व्यक्तिगत नियंत्रण लाइनों को सक्रिय करने के बजाय संदेशों को और उपकरणों से रूट करने के लिए कर सकता है।

I2C आमतौर पर कम गति-आधारित बाह्य उपकरणों जैसे माइक्रोकंट्रोलर और सेंसर को एक IC में कम दूरी से ऊपर के प्रोसेसर से जोड़ने के लिए उपयोग किया जाता है।
अधिकतम सीएलके गति 100 किलोहर्ट्ज़ है। अधिकतम सीएलके गति 400 किलोहर्ट्ज़ है।
न्यूनतम सीएलके गति 10 किलोहर्ट्ज़ है। कोई न्यूनतम सीएलके गति नहीं।
35ms कम CLK टाइमआउट। कोई टाइमआउट नहीं है।
इसमें निश्चित तर्क स्तर हैं। इसका तर्क स्तर VDD पर निर्भर करता है।
इसमें विभिन्न पता प्रकार हैं जैसे आरक्षित, गतिशील, आदि। इसमें अलग-अलग एड्रेस टाइप होते हैं जैसे जनरल कॉल स्लेव एड्रेस, 7-बिट और 10-बिट।
इसमें विभिन्न बस प्रोटोकॉल हैं जैसे प्रोसेस कॉल, क्विक कमांड आदि। इसमें बस प्रोटोकॉल नहीं है।

एसएमबीस बनाम पीएमबस

SMBus और Pmbus के बीच अंतर में निम्नलिखित शामिल हैं।

एसएमबस

पीएमबस

SMBus एक 2-तार, सिंगल-एंडेड बस है जिसका उपयोग हल्के संचार के लिए किया जाता है। SMBus का विस्तार Pmbus है और यह एक कम लागत वाला प्रोटोकॉल है जिसका उपयोग मुख्य रूप से बिजली-प्रबंधन उपकरणों के बीच संचार के लिए किया जाता है।
इस बस का स्लेव मोड डेटा दर मान जैसे 10kbps, 50 kbps, 100 kbps और 400 kbps की अनुमति देता है। इस बस का स्लेव मोड केवल 100 केबीपीएस और 400 केबीपीएस जैसे डेटा दर मानों की अनुमति देता है।
इस प्रकार की बस I2C हार्डवेयर के साथ काम करती है, हालांकि इसमें सिस्टम को पुनरारंभ किए बिना उपकरणों को गर्म स्वैप करने की अनुमति देकर दूसरे स्तर के सॉफ़्टवेयर शामिल हैं। यह बस डिवाइस के कमांड के एक सेट को परिभाषित करके SMBus का विस्तार करती है और इसे विशेष रूप से पावर कन्वर्टर्स को संभालने के लिए डिज़ाइन किया गया है, जो डिवाइस की विशेषताओं जैसे मापा करंट, वोल्टेज, तापमान आदि को उजागर करता है।
SMBus I2C . का सुपरसेट है PMBus SMBus का सुपरसेट है
इस बस में नेटवर्क और डेटा लिंक लेयर दोनों शामिल हैं। इस बस में ट्रांसपोर्ट लेयर और कमांड का एक सेट शामिल है।

समय आरेख

SMBus समय आरेख नीचे दिखाया गया है।

  SMBus का समय आरेख
SMBus का समय आरेख

TLOW.SEXT स्लेव डिवाइस है जो START से STOP तक एक ही संदेश के भीतर CLK चक्रों का विस्तार करता है। तो यह संभव है कि, मास्टर या कोई अन्य गुलाम डिवाइस भी CLK चक्र का विस्तार करेगा, जिससे संयुक्त CLK का कम विस्तारित समय TLOW.SEXT से अधिक हो जाएगा। इस प्रकार, इस पैरामीटर को केवल पूर्ण गति वाले मास्टर के एकल लक्ष्य की तरह स्लेव डिवाइस के माध्यम से मापा जाता है।

TLOW.MEXT एक मास्टर डिवाइस है जो किसी संदेश के प्रत्येक बाइट में CLK चक्रों का विस्तार करता है। इसलिए यह संभव है कि कोई अन्य मास्टर या स्लेव डिवाइस भी CLK का विस्तार करे जिससे कि संयुक्त CLK का कम समय एक निर्दिष्ट बाइट पर TLOW.MEXT की तुलना में अधिक हो। इस प्रकार, मापदंडों को केवल मास्टर के एकल लक्ष्य की तरह पूर्ण गति वाले स्लेव डिवाइस के माध्यम से मापा जाता है।

अनुप्रयोग

SMBus के अनुप्रयोग निम्नलिखित को शामिल कीजिए।

  • SMBus का उपयोग सिस्टम घटक चिप के रूप में किया जाता है जिसका उपयोग सिस्टम के भीतर संचार करने के लिए किया जाता है। विशेष रूप से, यह बैटरी को सिस्टम के अन्य घटकों जैसे बिजली से संबंधित घटकों और सीपीयू के साथ संचार करने की अनुमति देता है।
  • इसका उपयोग हल्के संचार के लिए किया जाता है।
  • इस बस का उपयोग महत्वपूर्ण मापदंडों की निगरानी के लिए किया जाता है अंतः स्थापित प्रणालियाँ और पीसी के मदरबोर्ड पर।
  • टेक्सास इंस्ट्रूमेंट्स के उन्नत ईंधन गेज के लिए यह सबसे सामान्य प्रकार का संचार है।
  • इसका उपयोग कम बैंडविड्थ-आधारित सिस्टम प्रबंधन संचार में किया जाता है।

इस प्रकार, यह सब के बारे में है एक SMBus का अवलोकन - अनुप्रयोगों के साथ काम करना। यह एक सरल और सिंगल-एंडेड टू-वायर बस है जिसका उपयोग हल्के संचार के लिए किया जाता है। इस बस का उपयोग कंप्यूटर के मदरबोर्ड में चालू या बंद निर्देशों के लिए बिजली स्रोत के साथ संचार के लिए किया जाता है। यहाँ आपके लिए एक प्रश्न है, I2C प्रोटोकॉल क्या है?