में माइक्रोप्रोसेसर चिप, नई सर्किटरी को विशेष कार्यों को प्राप्त करने के लिए जोड़ा जाता है और सीपीयू कोर कार्य को ऑफलोड करने के लिए संख्याओं पर संचालन भी किया जाता है ताकि, सीपीयू बहुत तेजी से कार्य कर सके। ग्राफिकल डिस्प्ले प्रोसेसिंग और व्यापक अंकगणितीय गणना जैसे विशेष कार्यों को प्राप्त करने के लिए मुख्य रूप से कंप्यूटर में एक पूरक प्रोसेसर जैसे कि कोप्रोसेसर का उपयोग किया जाता है। इस प्रोसेसर को ऐसे कार्यों को सीपीयू की तुलना में बहुत कुशलता से करने के लिए डिज़ाइन किया गया है, इस प्रकार समग्र कंप्यूटर की गति को बढ़ाया जा सकता है। यह आलेख एक के अवलोकन पर चर्चा करता है सह प्रोसेसर -आर्किटेक्चर, कार्य और इसके अनुप्रयोग।
कोप्रोसेसर क्या है?
एक प्रोसेसर जो कंप्यूटर के मुख्य प्रोसेसर के साथ-साथ सीपीयू की तरह काम करता है, को कोप्रोसेसर के रूप में जाना जाता है। इस प्रोसेसर को एक पूरक कंप्यूटर प्रोसेसर के रूप में भी जाना जाता है। इस प्रोसेसर का उपयोग करके, कुछ कठिन गणितीय गणनाएँ की जा सकती हैं जैसे स्क्रीन पर प्रदर्शित ग्राफिक्स, सिग्नल प्रोसेसिंग, स्ट्रिंग प्रोसेसिंग, फ्लोटिंग-पॉइंट अंकगणित, इनपुट-आउटपुट इंटरफेसिंग, आदि।
कोप्रोसेसर आर्किटेक्चर
8087 आर्किटेक्चर जैसा कोप्रोसेसर नीचे दिखाया गया है। आम तौर पर, यह सह-प्रोसेसर समानांतर रूप से माइक्रोप्रोसेसर के साथ काम करता है। यह कोप्रोसेसर इंटेल द्वारा विकसित किया गया था और 16-बिट 8086 पारिवारिक माइक्रोप्रोसेसरों के साथ प्रयोग किया गया था। जब प्रोसेसर माइक्रोप्रोसेसर के संयोजन में कार्य करता है, तो गणना भाग को प्रोसेसर द्वारा नियंत्रित किया जाता है और यह सीपीयू को विभिन्न अन्य गतिविधियों को निष्पादित करने के लिए संसाधनों का उपयोग करने की अनुमति देता है।
निम्नलिखित आंकड़ा 8087 कोप्रोसेसर की वास्तुकला का प्रतिनिधित्व करता है। इस आर्किटेक्चर में दो मुख्य यूनिट जैसे कंट्रोल यूनिट और एक न्यूमेरिक एक्जीक्यूशन यूनिट शामिल है जिसे NEU भी कहा जाता है।
कंट्रोल यूनिट में डेटा बफर, कंट्रोल एंड स्टेटस वर्ड रजिस्टर, शेयर्ड ऑपरेंड क्यू, एक्सेप्शन पॉइंटर और एड्रेसिंग और बस ट्रैकिंग यूनिट जैसी कई यूनिट होती हैं। न्यूमेरिक एक्ज़ीक्यूशन यूनिट या NEU में मुख्य रूप से एक माइक्रोकोड कंट्रोल यूनिट, रजिस्टर स्टैक, प्रोग्रामेबल शिफ्टर, अस्थायी शामिल हैं रजिस्टरों , अंकगणितीय मॉड्यूल, एक्सपोनेंट मॉड्यूल और साझा ऑपरेंड कतार।
कोप्रोसेसर में कंट्रोल यूनिट इंस्ट्रक्शन एक्जीक्यूशन (IE) को नियंत्रित करने के लिए है, जिसके लिए न्यूमेरिक एक्ज़ीक्यूशन यूनिट जिम्मेदार है। अधिकतर, न्यूमेरिक एक्ज़ीक्यूशन यूनिट की माइक्रोकोड कंट्रोल यूनिट (CU) कोप्रोसेसर की कंट्रोल यूनिट से न्यूमेरिक निर्देश प्राप्त करती है। इस सहसंसाधक के पास 80 बिट्स के पूर्ण 8-रजिस्टर हैं और इनमें से प्रत्येक का उपयोग LIFO स्टैक में किया जाता है। ऑपरेंड जिस पर सह-प्रोसेसर निर्देश होंगे, रजिस्टर स्टैक में मौजूद हैं।
मौजूदा स्टैक को 3-बिट एसपी (स्टैक पॉइंटर) के माध्यम से इंगित किया गया है जो 8 स्टैक रजिस्टरों को दिखाने के लिए 000 - 111 से लेकर बाइनरी मान रखता है। यह LIFO मोड में एक सर्कुलर स्टैक तरीके से काम करता है। लेकिन, एक बार रीसेट कार्रवाई होने के बाद पॉइंटर को बाइनरी वैल्यू '000' द्वारा इनिशियलाइज़ किया जा सकता है।
संख्यात्मक डेटा तीन वर्गीकरण जिस पर सह-प्रोसेसर फ़ंक्शन दशमलव संख्या, वास्तविक संख्या और बाइनरी पूर्णांक पैक किए जाते हैं। बाइनरी पूर्णांक तीन प्रकार के होते हैं 16-बिट शब्द पूर्णांक, 32-बिट छोटा पूर्णांक और 64-बिट लंबा पूर्णांक। 80-बिट बीसीडी प्रारूप पैक्ड दशमलव संख्याओं को दर्शाता है जबकि वास्तविक संख्याएँ 3 प्रकार की होती हैं; 32-बिट छोटा वास्तविक, 64-बिट लंबा वास्तविक और 80-बिट अस्थायी वास्तविक।
कोप्रोसेसर में न्यूमेरिक डेटा ट्रांसफर करने के लिए या तो a 16-बिट एक्सपोनेंट बस या 64-बिट मंटिसा बस का उपयोग किया जाता है . सहसंसाधक में 16-बिट नियंत्रण शब्द और 16-बिट स्थिति शब्द शामिल होता है।
कंट्रोल शब्द को कंट्रोल रजिस्टर में लिखा जाता है और यह इस तरह से होता है कि कोप्रोसेसर शुरू में मेमोरी के स्थान के भीतर कंट्रोल शब्द लिखता है। उसके बाद, सहसंसाधक केवल स्मृति स्थान का उपयोग करके नियंत्रण शब्द को पढ़ता है और इसे नियंत्रण रजिस्टर में संग्रहीत करता है।
इसी प्रकार, स्थिति शब्द इस तरह से पढ़ता है कि प्रोसेसर स्थिति रजिस्टर में डेटा को मेमोरी के स्थान पर भेजता है। इसके अलावा, यह सहसंसाधक स्मृति के उस विशिष्ट स्थान से स्थिति रजिस्टर पढ़ता है। तो इसका मतलब है, प्रोसेसर और माइक्रोप्रोसेसर मुख्य मेमोरी द्वारा एक दूसरे के साथ संवाद करते हैं।
कोप्रोसेसर कैसे काम करता है?
कोप्रोसेसर को मुख्य रूप से 8086 और 8088 दोनों प्रोसेसर के साथ काम करने के लिए डिज़ाइन किया गया है। विशिष्ट CPU कार्यों को ऑफ़लोड करके सिस्टम को अधिक शक्तिशाली रूप से चलाने में मदद करने के लिए कोप्रोसेसर का उपयोग किया जाता है। एक बार जब यह प्रोसेसर माइक्रोप्रोसेसर के साथ मिलकर काम करता है तो प्रोग्राम लिखते समय माइक्रोप्रोसेसर और कोप्रोसेसर दोनों के निर्देश एकीकृत होते हैं। असेंबली लैंग्वेज प्रोग्राम में निर्देशों की शुरुआत में एक 'एफ' होता है जो कोप्रोसेसर के निर्देशों का प्रतिनिधित्व करता है जबकि 'एफ' उपसर्ग के बिना निर्देश माइक्रोप्रोसेसर के निर्देश दिखाते हैं।
सबसे पहले, निर्देश माइक्रोप्रोसेसर द्वारा मेमोरी के स्थान से प्राप्त किए जाते हैं और क्रमिक रूप से उन्हें कतार में लोड करते हैं, उसी समय, 8087 कोप्रोसेसर भी एक अंदर की कतार के भीतर निर्देशों को पढ़ता और संग्रहीत करता है। तो इसका मतलब है, हर एक निर्देश को कोप्रोसेसर और प्रोसेसर दोनों के माध्यम से पढ़ा जा सकता है, हालांकि निष्पादन के समय, कोप्रोसेसर और माइक्रोप्रोसेसर दोनों अपने विशेष निर्देशों के निष्पादन को निष्पादित कर सकते हैं। इसका मतलब है कि निर्देश पढ़ा और डिकोड किया गया है। यदि माइक्रोप्रोसेसर जाँचता है कि एक कोप्रोसेसर का इंस्ट्र है तो उस निर्देश को नो-ऑपरेशन माना जाता है। इसी तरह, यदि यह सह-प्रोसेसर माइक्रोप्रोसेसर के किसी भी निर्देश के पास पहुंचता है तो इसे नो-ऑपरेशन माना जाएगा।
कोप्रोसेसर के प्रकार
निम्नलिखित जैसे निर्माताओं के आधार पर विभिन्न कोप्रोसेसर उपलब्ध हैं।
इंटेल 8087 कोप्रोसेसर
Intel 8087 एक विशेष रूप से डिज़ाइन किया गया सह-प्रोसेसर है जिसका उपयोग गणितीय गणना करने के लिए किया जाता है जिसमें फ़्लोटिंग-पॉइंट और पूर्णांक मान शामिल होते हैं। कभी-कभी, इसे न्यूमेरिक डेटा प्रोसेसर और मैथ प्रोसेसर के रूप में भी जाना जाता है। यह इंटेल 80188, 8086, 80186 और 8088 प्रोसेसर के लिए एक न्यूमेरिक को-प्रोसेसर है। 8087 कोप्रोसेसर में आठ 80-बिट सामान्य रजिस्टर शामिल हैं जिन्हें स्टैक के रूप में निष्पादित किया जाता है। इसलिए, सभी फ़्लोटिंग पॉइंट ऑपरेशंस केवल स्टैक और बाहरी मेमोरी से डेटा के साथ किए जाते हैं।
Intel 8087 सह-प्रोसेसर केवल BCD, पूर्णांक, सिंगल और डबल सटीक फ़्लोटिंग-पॉइंट नंबरों का समर्थन करता है और साथ ही सटीक फ़्लोटिंग-पॉइंट नंबरों का विस्तार करता है। एक बार जब 8087 प्रोसेसर मेमोरी से डेटा लोड करता है तो यह सटीक संख्या बढ़ाने के लिए आंतरिक रूप से परिवर्तित हो जाता है और इस संख्या के माध्यम से आगे की सभी गणना की जाती है।
इसलिए डबल-प्रिसिजन नंबर से सिंगल-प्रिसिजन नंबर पर स्विच करना अन्यथा 64-बिट पूर्णांक - 32-बिट / 16-बिट पूर्णांक संख्या से कोई महत्वपूर्ण बूस्ट परफॉर्मेंस नहीं देता है। 8087 सहसंसाधक न केवल इंटेल द्वारा निर्मित किए गए थे बल्कि एएमडी, साइरिक्स और आईबीएम भी इन सहसंसाधकों का निर्माण करते हैं।
मोटोरोला 68881
Motorola 68881 एक सहसंसाधक है जो मुख्य रूप से Motorola 68K की दूसरी पीढ़ी के साथ उपयोग किया जाता है माइक्रोप्रोसेसरों मोटोरोला 68030 और 68020 की तरह। सैद्धांतिक रूप से, इस कोप्रोसेसर का उपयोग पहले के 68000 या 68010 सीपीयू के साथ एक परिधीय उपकरण के रूप में किया जाता है।
Motorola 68881 सह-प्रोसेसर बस मेमोरी-मैप्ड डिवाइस की तरह काम करता है। एक बार जब मुख्य CPU सह-प्रोसेसर के निर्देश को लोड कर देता है, तो यह CIR (Co-प्रोसेसर इंटरफ़ेस रजिस्टर) में निर्देश कोड लिखता है, जिसे CPU के एड्रेस स्पेस के भीतर मैप किया जाता है, और उसके बाद, यह की प्रतिक्रिया को पढ़ता है। सीआईआर रजिस्टरों में से एक से सह-प्रोसेसर।
Motorola 68881/68882 कोप्रोसेसरों का उपयोग IBM RT PC वर्कस्टेशन, Sun Microsystems Sun-3 वर्कस्टेशन, NeXT कंप्यूटर, Apple Computer Macintosh II परिवार, Amiga 3000, Sharp X68000, Convergent Technologies MightyFrame, TT, Atari Mega STE और Falcon में किया गया था। ये प्रोसेसर कुछ तृतीय-पक्ष अटारी और अमिगा उत्पादों में भी उपयोग किए जाते हैं जैसे 68000 के लिए मेमोरी-मैप्ड डिवाइस।
Apple मोशन कोप्रोसेसर
Apple के M-सीरीज़ सहसंसाधकों को गति सहसंसाधकों के रूप में जाना जाता है जिनका उपयोग Apple मोबाइल उपकरणों में किया जाता है। पहला सहसंसाधक 2013 में डिज़ाइन किया गया था, जिसका उपयोग सम्मिलित गायरोस्कोप, एक्सेलेरोमीटर और कम्पास से सेंसर डेटा एकत्र करने और मुख्य सीपीयू का उपयोग करके एकत्रित सेंसर डेटा को ऑफ़लोड करने के लिए किया गया था।
एम-सीरीज़ ऐप्पल कोप्रोसेसर केवल प्रक्रिया को इकट्ठा करते हैं और सेंसर के डेटा को स्टोर करते हैं, भले ही डिवाइस सो रहा हो और डिवाइस को फिर से संचालित करने के बाद एप्लिकेशन डेटा को पुनर्प्राप्त कर सकते हैं। तो यह डिवाइस से खींची गई शक्ति को कम कर देता है और बैटरी के जीवन को बचाता है।
प्रोसेसर और कोप्रोसेसर के बीच अंतर
प्रोसेसर और कोप्रोसेसर के बीच अंतर में निम्नलिखित शामिल हैं।
प्रोसेसर |
सह प्रोसेसर |
प्रोसेसर कंप्यूटर में मुख्य प्रसंस्करण इकाई है जो निर्देशों के आधार पर विभिन्न अंकगणितीय, तर्क और नियंत्रण कार्यों को निष्पादित करता है। | कोप्रोसेसर एक विशेष प्रोसेसर है जो मुख्य प्रोसेसर को सपोर्ट करता है।
|
प्रोसेसर सभी मुख्य कार्यों का ख्याल रखता है
|
सहसंसाधक केवल ग्राफिक्स और अंकगणितीय गणना जैसी कुछ अन्य बातों का ध्यान रखता है। |
यह तार्किक संचालन और गणितीय गणनाओं को संभालता है और कार्यों को सिंक्रनाइज़ करने के लिए अन्य घटकों को नियंत्रण संकेत उत्पन्न करता है। | यह प्रकार के आधार पर सिग्नल प्रोसेसिंग, गणितीय संचालन, नेटवर्किंग और क्रिप्टोग्राफी करता है। |
प्रोसेसर पूरे कंप्यूटर के उचित कामकाज को बनाए रखता है। | यह प्रोसेसर सिस्टम के प्रदर्शन को बढ़ाने में मदद करता है और सीपीयू से गंभीर कार्यों को ऑफलोड करता है। |
लाभ
एक कोप्रोसेसर के फायदों में निम्नलिखित शामिल हैं।
- कोर सीपीयू की तुलना में सह-प्रोसेसर केवल अधिक विशिष्ट कार्यों को तेजी से संभालता है
- ये प्रोसेसर उपयोग में आसान और सबसे लोकप्रिय हैं।
- यह CPU से विशेष प्रोसेसिंग कार्यों को लेकर माइक्रोप्रोसेसर के तनाव को कम करता है जिससे यह अधिक गति से चलता है।
- यह प्रोसेसर निर्देश सेट का विस्तार करके या कॉन्फ़िगरेशन रजिस्टरों की पेशकश करके सीपीयू की प्रसंस्करण सुविधाओं को बढ़ाने में सहायक होता है।
नुकसान
कोप्रोसेसरों के नुकसान में निम्नलिखित शामिल हैं।
- सहसंसाधक मेमोरी से निर्देश पुनर्प्राप्त करने, सीधे निर्देश निष्पादित करने, मेमोरी प्रबंधित करने, I/O संचालन करने में सक्षम नहीं है
- यह सहसंसाधक निर्देशों को पुनः प्राप्त करने के लिए मुख्य प्रोसेसर पर निर्भर करता है और सहसंसाधक से संबंधित अन्य सभी कार्यों का ध्यान रखता है।
- यह सिस्टम का प्रमुख प्रोसेसर नहीं है।
- कोप्रोसेसर मुख्य माइक्रोप्रोसेसर के बिना काम नहीं कर सकता।
अनुप्रयोग
सहसंसाधकों के अनुप्रयोगों में निम्नलिखित शामिल हैं।
- सह-प्रोसेसर का उपयोग कुछ अधिक विशिष्ट कार्यों जैसे ग्राफिकल डिस्प्ले प्रोसेसिंग या जटिल गणितीय गणना करने के लिए किया जाता है।
- कंप्यूटर के सीपीयू पर बोझ को कम करने के लिए सह-प्रोसेसर का उपयोग किया जाता है।
- यह प्रोसेसर कंप्यूटर के सीपीयू के साथ-साथ काम करता है।
- यह प्रोसेसर मुख्य प्रोसेसर जैसे रूट्स, लॉगरिदम, त्रिकोणमिति फ़ंक्शंस आदि की तुलना में बहुत तेजी से उच्च-स्तरीय गणितीय कार्य करता है।
- एक सहसंसाधक प्राथमिक प्रोसेसर के कार्यों को बढ़ाता है।
- कोप्रोसेसर सिग्नल प्रोसेसिंग, फ्लोटिंग-पॉइंट अंकगणित, स्ट्रिंग प्रोसेसिंग, ग्राफिक्स, परिधीय उपकरणों के माध्यम से I/O इंटरफेसिंग, क्रिप्टोग्राफी आदि जैसे विभिन्न ऑपरेशन करता है।
- ये प्रोसेसर पहले के डेस्कटॉप कंप्यूटरों में स्टैंड-अलोन चिप्स हैं जो मदरबोर्ड से जुड़े थे।
- समग्र प्रदर्शन को बढ़ाने के लिए एक कोप्रोसेसर CPU कार्यों को संभालता है।
इस प्रकार, यह है सहसंसाधक का अवलोकन - काम और उसके अनुप्रयोग। इस प्रोसेसर को मैथ प्रोसेसर के नाम से भी जाना जाता है। कोर सीपीयू की तुलना में एक कोप्रोसेसर अलग-अलग कार्यों को बहुत तेजी से करता है। इस प्रकार, कंप्यूटर सिस्टम की समग्र गति बढ़ जाती है। इस प्रोसेसर को एआरएम प्रोसेसर से जोड़ा जा सकता है। एक बार इसे जोड़ने के बाद हमें कोर सीपीयू के इंस्ट्रक्शन सेट को बढ़ाने या प्रोसेसिंग पावर बढ़ाने के लिए कॉन्फ़िगर करने योग्य रजिस्टरों को शामिल करने की आवश्यकता है। यहाँ आपके लिए एक प्रश्न है, माइक्रोप्रोसेसर क्या है?