यूएसबी सिस्टम डिजाइन
यूएसबी का डिज़ाइन आर्किटेक्चर अपनी टोपोलॉजी में असममित है, जिसमें एक होस्ट, कई डाउनस्ट्रीम यूएसबी पोर्ट और एक टियर-स्टार टोपोलॉजी में जुड़े कई परिधीय उपकरण शामिल हैं। अतिरिक्त यूएसबी हब को स्तरों में शामिल किया जा सकता है, जिससे पेड़ की संरचना में पाँच स्तरीय स्तरों तक शाखाएँ हो सकती हैं। एक यूएसबी होस्ट कई होस्ट नियंत्रकों को कार्यान्वित कर सकता है और प्रत्येक होस्ट नियंत्रक एक या अधिक यूएसबी पोर्ट प्रदान कर सकता है। यदि मौजूद हो तो हब डिवाइस सहित 127 डिवाइस तक, एक एकल होस्ट नियंत्रक से जुड़े हो सकते हैं। यूएसबी डिवाइस हब के माध्यम से श्रृंखला में जुड़े हुए हैं। होस्ट कंट्रोलर में निर्मित एक हब-रूट हब है।
एक भौतिक USB डिवाइस में कई तार्किक उप-डिवाइस शामिल हो सकते हैं जिन्हें डिवाइस फ़ंक्शन कहा जाता है। एक एकल डिवाइस कई फ़ंक्शन प्रदान कर सकता है, उदाहरण के लिए, एक अंतर्निर्मित माइक्रोफ़ोन (ऑडियो डिवाइस फ़ंक्शन) के साथ एक वेबकैम (वीडियो डिवाइस फ़ंक्शन)। इस प्रकार के उपकरण को मिश्रित उपकरण कहा जाता है। इसका एक विकल्प कंपाउंड डिवाइस है, जिसमें होस्ट प्रत्येक लॉजिकल डिवाइस को एक विशिष्ट पता निर्दिष्ट करता है और सभी लॉजिकल डिवाइस एक अंतर्निहित हब से कनेक्ट होते हैं जो भौतिक यूएसबी केबल से कनेक्ट होता है।
आरेख: एक उपकरण के अंदर कई समापन बिंदु होते हैं, जिनमें से प्रत्येक एक तार्किक पाइप द्वारा एक होस्ट नियंत्रक से जुड़ा होता है। प्रत्येक पाइप में डेटा एक दिशा में प्रवाहित होता है, हालाँकि होस्ट नियंत्रक तक और वहां से एक मिश्रण जाता रहता है।
USB डिवाइस संचार पाइप (लॉजिकल चैनल) पर आधारित है। एक पाइप होस्ट नियंत्रक से एक तार्किक इकाई के लिए एक कनेक्शन है, जो एक डिवाइस पर पाया जाता है, और इसे एक एंडपॉइंट नाम दिया जाता है। क्योंकि पाइप 1-टू-1 से अंतिम बिंदु के अनुरूप होते हैं, इसलिए कभी-कभी शब्दों का उपयोग परस्पर विनिमय के लिए किया जाता है। एक USB डिवाइस में 32 समापन बिंदु (16 IN, 16 OUT) तक हो सकते हैं, हालाँकि इतने अधिक होना दुर्लभ है। आरंभीकरण के दौरान डिवाइस द्वारा एक समापन बिंदु को परिभाषित और क्रमांकित किया जाता है (भौतिक कनेक्शन के बाद की अवधि जिसे "गणना" कहा जाता है) और इसलिए यह अपेक्षाकृत स्थायी है, जबकि एक पाइप खोला और बंद किया जा सकता है।
यूएसबी एंडपॉइंट वास्तव में कनेक्टेड डिवाइस पर रहते हैं: होस्ट के चैनल को पाइप कहा जाता है
पाइप दो प्रकार के होते हैं: स्ट्रीम और संदेश पाइप। एक संदेश पाइप द्वि-दिशात्मक है और नियंत्रण हस्तांतरण के लिए उपयोग किया जाता है। संदेश पाइप का उपयोग आम तौर पर डिवाइस के लिए छोटे, सरल आदेशों और स्थिति प्रतिक्रिया के लिए किया जाता है, उदाहरण के लिए, बस नियंत्रण पाइप नंबर 0 द्वारा उपयोग किया जाता है। एक स्ट्रीम पाइप एक यूनी-दिशात्मक पाइप है जो एक यूनी-दिशात्मक समापन बिंदु से जुड़ा होता है जो स्थानांतरण करता है आइसोक्रोनस, इंटरप्ट या बल्क ट्रांसफर का उपयोग कर डेटा:
• समकालिक स्थानांतरण: कुछ गारंटीकृत डेटा दर पर (अक्सर, लेकिन जरूरी नहीं, जितनी जल्दी संभव हो) लेकिन संभावित डेटा हानि के साथ (उदाहरण के लिए, रीयलटाइम ऑडियो या वीडियो)।
• अंतरायन स्थानान्तरण: वे डिवाइस जिन्हें गारंटीकृत त्वरित प्रतिक्रिया (बाध्य विलंबता) की आवश्यकता होती है (उदाहरण के लिए, पॉइंटिंग डिवाइस और कीबोर्ड)।
• थोक स्थानांतरण: सभी शेष उपलब्ध बैंडविड्थ का उपयोग करके बड़े छिटपुट स्थानांतरण, लेकिन बैंडविड्थ या विलंबता (उदाहरण के लिए, फ़ाइल स्थानांतरण) पर कोई गारंटी नहीं है।
एक पाइप का समापन बिंदु एक टपल (डिवाइस_एड्रेस, एंडपॉइंट_नंबर) के साथ पता योग्य होता है, जैसा कि टोकन पैकेट में निर्दिष्ट होता है जिसे होस्ट तब भेजता है जब वह डेटा ट्रांसफर सत्र शुरू करना चाहता है। यदि डेटा ट्रांसफर की दिशा होस्ट से एंडपॉइंट तक है, तो वांछित डिवाइस एड्रेस और एंडपॉइंट नंबर वाला एक OUT पैकेट (टोकन पैकेट का एक विशेषज्ञता) होस्ट द्वारा भेजा जाता है। यदि डेटा ट्रांसफर की दिशा डिवाइस से होस्ट तक है, तो होस्ट इसके बजाय एक IN पैकेट भेजता है। यदि गंतव्य समापन बिंदु एक यूनी-दिशात्मक समापन बिंदु है जिसकी निर्माता द्वारा निर्दिष्ट दिशा टोकन पैकेट से मेल नहीं खाती है (उदाहरण के लिए, निर्माता की निर्दिष्ट दिशा IN है जबकि टोकन पैकेट एक आउट पैकेट है), तो टोकन पैकेट को नजरअंदाज कर दिया जाता है। अन्यथा, इसे स्वीकार कर लिया जाता है और डेटा लेनदेन शुरू हो सकता है। दूसरी ओर, एक द्वि-दिशात्मक समापन बिंदु, IN और OUT दोनों पैकेट स्वीकार करता है।
एंडपॉइंट्स को इंटरफेस में समूहीकृत किया गया है और प्रत्येक इंटरफ़ेस एक एकल डिवाइस फ़ंक्शन से जुड़ा हुआ है। इसका एक अपवाद एंडपॉइंट शून्य है, जिसका उपयोग डिवाइस कॉन्फ़िगरेशन के लिए किया जाता है और यह किसी इंटरफ़ेस से संबद्ध नहीं है। स्वतंत्र रूप से नियंत्रित इंटरफेस से बने एकल डिवाइस फ़ंक्शन को समग्र डिवाइस कहा जाता है। एक मिश्रित डिवाइस में केवल एक ही डिवाइस पता होता है क्योंकि होस्ट किसी फ़ंक्शन को केवल एक डिवाइस पता निर्दिष्ट करता है।
कंप्यूटर के सामने दो यूएसबी मानक ए सॉकेट
जब कोई USB डिवाइस पहली बार USB होस्ट से कनेक्ट होता है, तो USB डिवाइस गणना प्रक्रिया शुरू हो जाती है। गणना USB डिवाइस पर रीसेट सिग्नल भेजकर शुरू होती है। USB डिवाइस की डेटा दर रीसेट सिग्नलिंग के दौरान निर्धारित की जाती है। रीसेट के बाद, यूएसबी डिवाइस की जानकारी होस्ट द्वारा पढ़ी जाती है और डिवाइस को एक अद्वितीय 7-बिट पता सौंपा जाता है। यदि डिवाइस होस्ट द्वारा समर्थित है, तो डिवाइस के साथ संचार करने के लिए आवश्यक डिवाइस ड्राइवर लोड किए जाते हैं और डिवाइस को कॉन्फ़िगर स्थिति पर सेट किया जाता है। यदि यूएसबी होस्ट को पुनरारंभ किया जाता है, तो सभी कनेक्टेड डिवाइसों के लिए गणना प्रक्रिया दोहराई जाती है।
होस्ट नियंत्रक ट्रैफ़िक प्रवाह को उपकरणों तक निर्देशित करता है, इसलिए कोई भी USB डिवाइस होस्ट नियंत्रक के स्पष्ट अनुरोध के बिना बस में कोई भी डेटा स्थानांतरित नहीं कर सकता है। यूएसबी 2.0 में, होस्ट नियंत्रक यातायात के लिए बस का सर्वेक्षण करता है, आमतौर पर राउंड-रॉबिन फैशन में। प्रत्येक यूएसबी पोर्ट का थ्रूपुट यूएसबी पोर्ट या पोर्ट से जुड़े यूएसबी डिवाइस की धीमी गति से निर्धारित होता है।
हाई-स्पीड यूएसबी 2.0 हब में ट्रांजेक्शन ट्रांसलेटर नामक उपकरण होते हैं जो हाई-स्पीड यूएसबी 2.0 बसों और पूर्ण और कम स्पीड बसों के बीच परिवर्तित होते हैं। जब एक हाई-स्पीड यूएसबी 2.0 हब को हाई-स्पीड यूएसबी होस्ट या हब में प्लग किया जाता है, तो यह हाई-स्पीड मोड में काम करता है। यूएसबी हब तब हब पर सभी पूर्ण और कम गति वाले उपकरणों के लिए रूट की गई एक पूर्ण/निम्न-गति वाली बस बनाने के लिए प्रति हब एक लेनदेन अनुवादक का उपयोग करता है, या एक अलग पूर्ण/निम्न-गति वाली बस बनाने के लिए प्रति पोर्ट एक लेनदेन अनुवादक का उपयोग करता है। हब पर पोर्ट.
चूँकि प्रत्येक USB 3.0 होस्ट में दो अलग-अलग नियंत्रक होते हैं, USB 3.0 डिवाइस USB 2.0 या उस होस्ट से जुड़े पुराने डिवाइसों की परवाह किए बिना USB 3.0 डेटा दरों पर संचारित और प्राप्त करते हैं। पुराने उपकरणों के लिए ऑपरेटिंग डेटा दरें विरासत तरीके से निर्धारित की गई हैं।