आर्बिटर (इलेक्ट्रॉनिक्स): Difference between revisions
(Created page with "{{Short description|Electronic device that allocates access to shared resources}} मध्यस्थ इलेक्ट्रॉनिक उपकरण हैं जो...") |
No edit summary |
||
Line 1: | Line 1: | ||
{{Short description|Electronic device that allocates access to shared resources}} | {{Short description|Electronic device that allocates access to shared resources}} | ||
मध्यस्थ इलेक्ट्रॉनिक उपकरण हैं जो साझा संसाधनों तक पहुंच आवंटित करते हैं। | मध्यस्थ इलेक्ट्रॉनिक उपकरण हैं जो साझा संसाधनों तक पहुंच आवंटित करते हैं। | ||
'''एक साझा संसाधन तक पहुंच आवंटित करने के लिए आर्बिटर्स का उपयोग समकालिक संदर्भों में भी किया जाता है। एक [[वेवफ्रंट आर्बिटर]] एक सिंक्रोनस आर्बिटर का एक उदाहरण है जो एक प्रकार के बड़े [[ प्रसार बदलना | प्रसार बदलना]] में मौजूद होता है।मध्यस्थ इलेक्ट्रॉनिक उपकरण हैं जो साझा संसाधनों तक पहुंच आवंटित करते हैं।''' | |||
== बस मध्यस्थ == | == बस मध्यस्थ == | ||
Line 40: | Line 42: | ||
== अतुल्यकालिक मध्यस्थ == | == अतुल्यकालिक मध्यस्थ == | ||
अतुल्यकालिक अनुरोधों के बीच एक साझा संसाधन तक पहुंच के क्रम का चयन करने के लिए [[अतुल्यकालिक सर्किट]] में मध्यस्थ का एक महत्वपूर्ण रूप उपयोग किया जाता है। इसका कार्य दो कार्यों को एक साथ होने से रोकना है जब उन्हें नहीं करना चाहिए। उदाहरण के लिए, एक ऐसे कंप्यूटर में जिसमें कई CPU या [[स्मृति]] तक पहुँचने वाले अन्य डिवाइस हैं, और एक से अधिक [[ घड़ी ]] हैं, संभावना मौजूद है कि दो अनसिंक्रोनाइज़्ड स्रोतों से अनुरोध लगभग एक ही समय में आ सकते हैं। [[गुजरने]] रेंज में लगभग समय के बहुत करीब हो सकता है। मेमोरी आर्बिटर को तब तय करना होगा कि कौन सा अनुरोध पहले सेवा के लिए है। दुर्भाग्य से, एक निश्चित समय [एंडरसन 1991] में ऐसा करना संभव नहीं है। | अतुल्यकालिक अनुरोधों के बीच एक साझा संसाधन तक पहुंच के क्रम का चयन करने के लिए [[अतुल्यकालिक सर्किट]] में मध्यस्थ का एक महत्वपूर्ण रूप उपयोग किया जाता है। इसका कार्य दो कार्यों को एक साथ होने से रोकना है जब उन्हें नहीं करना चाहिए। उदाहरण के लिए, एक ऐसे कंप्यूटर में जिसमें कई CPU या [[स्मृति]] तक पहुँचने वाले अन्य डिवाइस हैं, और एक से अधिक [[ घड़ी ]] हैं, संभावना मौजूद है कि दो अनसिंक्रोनाइज़्ड स्रोतों से अनुरोध लगभग एक ही समय में आ सकते हैं। [[गुजरने]] रेंज में लगभग समय के बहुत करीब हो सकता है। मेमोरी आर्बिटर को तब तय करना होगा कि कौन सा अनुरोध पहले सेवा के लिए है। दुर्भाग्य से, एक निश्चित समय [एंडरसन 1991] में ऐसा करना संभव नहीं है। | ||
[[इवान सदरलैंड]] और [[हाँ एबरगेन]] ने अपने लेख कंप्यूटर्स विदाउट क्लॉक्स में आर्बिटर्स का वर्णन इस प्रकार किया है: | [[इवान सदरलैंड]] और [[हाँ एबरगेन]] ने अपने लेख कंप्यूटर्स विदाउट क्लॉक्स में आर्बिटर्स का वर्णन इस प्रकार किया है: | ||
Line 77: | Line 79: | ||
* D.J. Kinniment and J.V. Woods. [http://www.async.org.uk/David.Kinniment/Research/papers/IEE1976.pdf ''Synchronization and arbitration circuits in digital systems''.] Proceedings IEEE. October 1976. | * D.J. Kinniment and J.V. Woods. [http://www.async.org.uk/David.Kinniment/Research/papers/IEE1976.pdf ''Synchronization and arbitration circuits in digital systems''.] Proceedings IEEE. October 1976. | ||
* Carver Mead and Lynn Conway. ''Introduction to VLSI Systems'' Addison-Wesley. 1979. | * Carver Mead and Lynn Conway. ''Introduction to VLSI Systems'' Addison-Wesley. 1979. | ||
* {{Citation|first1=Ivan |last1=Sutherland |author1link=Ivan Sutherland |first2=Jo |last2=Ebergen |title=Computers without Clocks |journal=Scientific American |date=August 2002 |volume=287 |issue=2 |pages=62–69 |doi=10.1038/scientificamerican0802-62 |pmid=12140955 |bibcode=2002SciAm.287b..62S |url=http://research.sun.com/async/Publications/KPDisclosed/SciAm/SciAm.pdf |url-status=dead |archiveurl=https://web.archive.org/web/20041214110303/http://research.sun.com/async/Publications/KPDisclosed/SciAm/SciAm.pdf |archivedate=2004-12-14 }} | * {{Citation|first1=Ivan |last1=Sutherland |author1link=Ivan Sutherland |first2=Jo |last2=Ebergen |title=Computers without Clocks |journal=Scientific American |date=August 2002 |volume=287 |issue=2 |pages=62–69 |doi=10.1038/scientificamerican0802-62 |pmid=12140955 |bibcode=2002SciAm.287b..62S |url=http://research.sun.com/async/Publications/KPDisclosed/SciAm/SciAm.pdf |url-status=dead |archiveurl=https://web.archive.org/web/20041214110303/http://research.sun.com/async/Publications/KPDisclosed/SciAm/SciAm.pdf |archivedate=2004-12-14 }}{{dead link|date=November 2013}} | ||
* Ran Ginosar. "[http://webee.technion.ac.il/~ran/papers/Sync_Errors_Feb03.pdf Fourteen Ways to Fool Your Synchronizer]" ASYNC 2003. | * Ran Ginosar. "[http://webee.technion.ac.il/~ran/papers/Sync_Errors_Feb03.pdf Fourteen Ways to Fool Your Synchronizer]" ASYNC 2003. | ||
* J. Anderson and M. Gouda, "[http://www.cs.unc.edu/~anderson/papers/acta91.pdf A New Explanation of the Glitch Phenomenon] ", Acta Informatica, Vol. 28, No. 4, pp. 297–309, April 1991. | * J. Anderson and M. Gouda, "[http://www.cs.unc.edu/~anderson/papers/acta91.pdf A New Explanation of the Glitch Phenomenon] ", Acta Informatica, Vol. 28, No. 4, pp. 297–309, April 1991. |
Revision as of 16:54, 29 April 2023
मध्यस्थ इलेक्ट्रॉनिक उपकरण हैं जो साझा संसाधनों तक पहुंच आवंटित करते हैं।
एक साझा संसाधन तक पहुंच आवंटित करने के लिए आर्बिटर्स का उपयोग समकालिक संदर्भों में भी किया जाता है। एक वेवफ्रंट आर्बिटर एक सिंक्रोनस आर्बिटर का एक उदाहरण है जो एक प्रकार के बड़े प्रसार बदलना में मौजूद होता है।मध्यस्थ इलेक्ट्रॉनिक उपकरण हैं जो साझा संसाधनों तक पहुंच आवंटित करते हैं।
बस मध्यस्थ
बस आर्बिटर एक उपकरण है जिसका उपयोग मल्टी-मास्टर बस (कंप्यूटिंग) सिस्टम में किया जाता है ताकि यह तय किया जा सके कि किस बस मास्टर को प्रत्येक बस चक्र के लिए बस को नियंत्रित करने की अनुमति दी जाएगी। सिस्टम बस सिस्टम में सबसे आम प्रकार का बस आर्बिटर मेमोरी आर्बिटर है।
एक मेमोरी आर्बिटर एक साझा मेमोरी (इंटरप्रोसेस कम्युनिकेशन) सिस्टम में उपयोग किया जाने वाला एक उपकरण है, जो प्रत्येक मेमोरी चक्र के लिए तय करता है कि किस सीपीयू को उस साझा मेमोरी तक पहुंचने की अनुमति होगी।[1][2][3] कुछ परमाणु निर्देश मध्यस्थ पर निर्भर करते हैं ताकि अन्य सीपीयू को परमाणु पठन-संशोधित-लिखने के निर्देशों के माध्यम से आधे रास्ते में मेमोरी पढ़ने से रोका जा सके।
एक मेमोरी आर्बिटर आमतौर पर स्मृति नियंत्रक /डीएमए नियंत्रक में एकीकृत होता है।
कुछ प्रणालियाँ, जैसे कि पारंपरिक पीसीआई, में एक एकल केंद्रीकृत बस मध्यस्थता उपकरण होता है जिसे कोई बस मध्यस्थ के रूप में इंगित कर सकता है। अन्य प्रणालियाँ विकेंद्रीकृत बस मध्यस्थता का उपयोग करती हैं, जहाँ सभी उपकरण यह तय करने में सहयोग करते हैं कि आगे कौन जाएगा। [4][5] जब मेमोरी आर्बिटर से जुड़े प्रत्येक सीपीयू में मेमोरी एक्सेस साइकल को सिंक्रोनाइज़ किया जाता है, तो मेमोरी आर्बिटर को सिंक्रोनस आर्बिटर के रूप में डिज़ाइन किया जा सकता है। अन्यथा मेमोरी आर्बिटर को एसिंक्रोनस आर्बिटर के रूप में डिजाइन किया जाना चाहिए।
अतुल्यकालिक मध्यस्थ
अतुल्यकालिक अनुरोधों के बीच एक साझा संसाधन तक पहुंच के क्रम का चयन करने के लिए अतुल्यकालिक सर्किट में मध्यस्थ का एक महत्वपूर्ण रूप उपयोग किया जाता है। इसका कार्य दो कार्यों को एक साथ होने से रोकना है जब उन्हें नहीं करना चाहिए। उदाहरण के लिए, एक ऐसे कंप्यूटर में जिसमें कई CPU या स्मृति तक पहुँचने वाले अन्य डिवाइस हैं, और एक से अधिक घड़ी हैं, संभावना मौजूद है कि दो अनसिंक्रोनाइज़्ड स्रोतों से अनुरोध लगभग एक ही समय में आ सकते हैं। गुजरने रेंज में लगभग समय के बहुत करीब हो सकता है। मेमोरी आर्बिटर को तब तय करना होगा कि कौन सा अनुरोध पहले सेवा के लिए है। दुर्भाग्य से, एक निश्चित समय [एंडरसन 1991] में ऐसा करना संभव नहीं है।
इवान सदरलैंड और हाँ एबरगेन ने अपने लेख कंप्यूटर्स विदाउट क्लॉक्स में आर्बिटर्स का वर्णन इस प्रकार किया है:
- एक मध्यस्थ एक चौराहे पर एक यातायात अधिकारी की तरह होता है जो तय करता है कि आगे कौन सी कार गुजर सकती है। केवल एक अनुरोध को देखते हुए, एक आर्बिटर तुरंत कार्रवाई की अनुमति देता है, पहली कार्रवाई पूरी होने तक किसी भी दूसरे अनुरोध में देरी करता है। जब एक मध्यस्थ को एक साथ दो अनुरोध प्राप्त होते हैं, तो उसे यह तय करना होगा कि कौन सा अनुरोध पहले देना है। उदाहरण के लिए, जब दो प्रोसेसर लगभग एक ही समय में एक साझा मेमोरी तक पहुंच का अनुरोध करते हैं, तो आर्बिटर अनुरोधों को अनुक्रम में रखता है, एक समय में केवल एक प्रोसेसर तक पहुंच प्रदान करता है। आर्बिटर गारंटी देता है कि एक साथ कभी भी दो कार्य नहीं होते हैं, जैसे यातायात अधिकारी यह सुनिश्चित करके दुर्घटनाओं को रोकता है कि टकराव के मार्ग पर चौराहे से कभी भी दो कारें नहीं गुजरती हैं।
- हालांकि आर्बिटर सर्किट एक समय में एक से अधिक अनुरोध कभी नहीं देते हैं, फिर भी एक आर्बिटर बनाने का कोई तरीका नहीं है जो हमेशा एक निश्चित समय सीमा के भीतर एक निर्णय पर पहुंचेगा। वर्तमान समय के मध्यस्थ निर्णयों पर औसतन बहुत जल्दी पहुँचते हैं, आमतौर पर लगभग कुछ सौ पिकोसेकंड के भीतर। [...] जब करीबी कॉल का सामना करना पड़ता है, हालांकि, सर्किट कभी-कभी दोगुना समय ले सकता है, और बहुत ही दुर्लभ मामलों में निर्णय लेने के लिए आवश्यक समय सामान्य से 10 गुना अधिक हो सकता है।[6]
अतुल्यकालिक मध्यस्थ और मेटास्टेबिलिटी
मध्यस्थ संबंध तोड़ते हैं। फ्लिप-फ्लॉप (इलेक्ट्रॉनिक्स) | फ्लिप-फ्लॉप सर्किट की तरह, एक मध्यस्थ के पास दो विकल्पों के अनुरूप दो स्थिर अवस्थाएँ होती हैं। यदि दो अनुरोध एक दूसरे के कुछ पिकोसेकंड (आज, femtoseconds) के भीतर एक मध्यस्थ पर पहुंचते हैं, तो सर्किट इलेक्ट्रॉनिक्स में मेटास्टेबिलिटी बन सकता है। टाई को तोड़ने के लिए अपने स्थिर राज्यों में से एक तक पहुंचने से पहले मेटा-स्थिर। शास्त्रीय मध्यस्थों को विशेष रूप से मेटा-स्थिर होने पर बेतहाशा दोलन करने और मेटा-स्थिरता से जितनी जल्दी हो सके क्षय करने के लिए डिज़ाइन किया गया है, आमतौर पर अतिरिक्त शक्ति का उपयोग करके। इनपुट प्रदान किए जाने के बाद समय के साथ स्थिर स्थिति में न पहुंचने की संभावना तेजी से घट जाती है।
इस समस्या का एक विश्वसनीय समाधान 1970 के दशक के मध्य में खोजा गया था। यद्यपि एक मध्यस्थ जो एक निश्चित समय में निर्णय लेता है, संभव नहीं है, जो कभी-कभी कठिन मामले (करीब कॉल) में थोड़ा अधिक समय लेता है, उसे काम पर लगाया जा सकता है। इलेक्ट्रॉनिक्स सर्किट में मल्टीस्टेज मेटास्टेबिलिटी का उपयोग करना आवश्यक है जो यह पता लगाता है कि मध्यस्थ अभी तक स्थिर स्थिति में नहीं आया है। मध्यस्थ तब तक प्रसंस्करण में देरी करता है जब तक कि एक स्थिर स्थिति प्राप्त नहीं हो जाती। सिद्धांत रूप में, मध्यस्थ व्यवस्थित करने के लिए मनमाने ढंग से लंबा समय ले सकता है (ब्यूरिडान के सिद्धांत को देखें), लेकिन व्यवहार में, यह शायद ही कभी कुछ गेट विलंब समय से अधिक लेता है। क्लासिक पेपर [किनीमेंट एंड वुड्स 1976] है, जो इस समस्या को हल करने के लिए 3 स्टेट फ्लिप फ्लॉप बनाने का वर्णन करता है, और [गिनोसर 2003], आर्बिटर डिजाइन में सामान्य गलतियों पर इंजीनियरों के लिए एक चेतावनी है।
यह परिणाम काफी व्यावहारिक महत्व का है, क्योंकि मल्टी प्रोसेसर कंप्यूटर इसके बिना मज़बूती से काम नहीं करेंगे। पहला मल्टीप्रोसेसर कंप्यूटर 1960 के दशक के अंत से विश्वसनीय मध्यस्थों के विकास से पहले का है। प्रत्येक प्रोसेसर के लिए स्वतंत्र घड़ियों वाले कुछ शुरुआती मल्टीप्रोसेसर मध्यस्थ दौड़ की स्थिति से पीड़ित थे, और इस प्रकार अविश्वसनीयता। आज, यह अब कोई समस्या नहीं है।
तुल्यकालिक मध्यस्थ
एक साझा संसाधन तक पहुंच आवंटित करने के लिए आर्बिटर्स का उपयोग समकालिक संदर्भों में भी किया जाता है। एक वेवफ्रंट आर्बिटर एक सिंक्रोनस आर्बिटर का एक उदाहरण है जो एक प्रकार के बड़े प्रसार बदलना में मौजूद होता है।
संदर्भ
- ↑ Michael Fingeroff. "High-Level Synthesis Blue Book". 2010. p. 270. quote: "The bus or memory arbiter processes the request from the different processes and decides who gets access to the bus/memory."
- ↑ Arten Esa, Bryan Myers. "Design of an Arbiter for DDR3 Memory". 2013.
- ↑ Kearney, D.A.; Veldman, G. "A concurrent multi-bank memory arbiter for dynamic IP cores using idle skip round robin". 2003. DOI: 10.1109/FPT.2003.1275789.
- ↑ Tim Downey. "Bus Arbitration"
- ↑ Shun Yan Cheung. "Bus Arbitration"
- ↑ Sutherland, Ivan E.; Ebergen, Jo (August 2002). "Computers Without Clocks". Scientific American. 287 (2): 62–69. Bibcode:2002SciAm.287b..62S. doi:10.1038/scientificamerican0802-62. PMID 12140955.
- D.J. Kinniment and J.V. Woods. Synchronization and arbitration circuits in digital systems. Proceedings IEEE. October 1976.
- Carver Mead and Lynn Conway. Introduction to VLSI Systems Addison-Wesley. 1979.
- Sutherland, Ivan; Ebergen, Jo (August 2002), "Computers without Clocks" (PDF), Scientific American, 287 (2): 62–69, Bibcode:2002SciAm.287b..62S, doi:10.1038/scientificamerican0802-62, PMID 12140955, archived from the original (PDF) on 2004-12-14[dead link]
- Ran Ginosar. "Fourteen Ways to Fool Your Synchronizer" ASYNC 2003.
- J. Anderson and M. Gouda, "A New Explanation of the Glitch Phenomenon ", Acta Informatica, Vol. 28, No. 4, pp. 297–309, April 1991.