संगणक वास्तुकला

From Vigyanwiki
(Redirected from कंप्यूटर वास्तुकला)
यूनिप्रोसेसर सीपीयू के साथ एक बुनियादी कंप्यूटर का ब्लॉक आरेख। काली रेखाएँ डेटा प्रवाह को दर्शाती हैं, जबकि लाल रेखाएँ नियंत्रण प्रवाह को दर्शाती हैं। तीर प्रवाह की दिशा का संकेत देते हैं।

संगणक वास्तुकला (कम्प्यूटर आर्किटेक्चर), कम्प्यूटर अभियांत्रिकी में कम्प्यूटर सिस्टम की कार्यक्षमता, व्यवस्था और कार्यान्वयन का वर्णन करने वाले नियमों और विधियों का एक समूह है। एक सिस्टम की आर्किटेक्चर, उसके अलग-अलग निर्दिष्ट घटकों और उनके अंतर्संबंधों के संदर्भ में इसकी संरचना को संदर्भित करने का कार्य करती है।[1]

आर्किटेक्चर की कुछ परिभाषायें, किसी विशेष कार्यान्वयन के रूप में परिभाषित करने के स्थान पर, इसे कंप्यूटर की क्षमताओं और प्रोग्रामिंग मॉडल का वर्णन करने के रूप में परिभाषित करती हैं।[2] अन्य परिभाषाओं के आधार पर, कंप्यूटर आर्किटेक्चर निर्देश समूह आर्किटेक्चर संरचना, सूक्ष्म आर्किटेक्चर संरचना, तर्क संरचना और कार्यान्वयन आदि को सम्मिलित करती है।[3]

इतिहास

प्रथम प्रलेखित कंप्यूटर आर्किटेक्चर, विश्लेषणात्मक इंजन का वर्णन करते हुए चार्ल्स बैबेज और एडा लवलेस के परस्पर सहयोग से निर्मित थी। वर्ष 1936 में कम्प्यूटर ज़ेड1 के निर्माण के समय, कोनराड ज़ुसे ने अपनी भविष्य की परियोजनाओं के लिए दो एकाधिकार (पेटेंट) आवेदनों में संग्रहण-प्रोग्राम संकल्पना का वर्णन किया, जिसके अनुसार डेटा के लिए उपयोग किए जाने वाले एक ही भंडारण में यन्त्र निर्देशों को भी संग्रहीत किया जा सकता है।[4][5] दो अन्य प्रारंभिक और महत्वपूर्ण उदाहरण हैं:

वर्ष 1959 में आईबीएम के मुख्य अनुसंधान केंद्र में यन्त्र संगठन विभाग के सदस्यों लाइल आर. जॉनसन और फ्रेडरिक पी. ब्रूक्स, जूनियर के कार्य से कंप्यूटर शास्त्र में "आर्किटेक्चर" शब्द के बारे में पता लगाया जा सकता है। जॉनसन को लॉस एलामोस राष्ट्रीय प्रयोगशाला (तत्कालीन लॉस एलामोस वैज्ञानिक प्रयोगशाला) के लिए आईबीएम द्वारा विकसित सुपर कंप्यूटर, स्ट्रेच के बारे में एक सांपातिक अनुसंधान संचार लिखने का अवसर मिला। शानदार ढंग से अलंकृत कंप्यूटर पर चर्चा के विस्तार के स्तर का वर्णन करने के लिए, उन्होंने पाया कि प्रारूपों, निर्देश प्रकार, हार्डवेयर प्राचलों और गति वृद्धि के उनके विवरण, "मशीन संगठन" शब्द से अधिक उपयोगी शब्द "सिस्टम आर्किटेक्चर" के स्तर पर थे। "[8]

इसके बाद, एक स्ट्रेच रचनाकार ब्रूक्स ने प्लानिंग ए कंप्यूटर सिस्टम: प्रोजेक्ट स्ट्रेच नामक पुस्तक का अध्याय 2 प्रारंभ किया, जिसमें कहा गया था, कि "कंप्यूटर आर्किटेक्चर भी, अन्य आर्किटेक्चरओं की तरह ही एक संरचना के उपयोगकर्ता की आवश्यकताओं को निर्धारित करने और फिर उन्हें आर्थिक और तकनीकी प्रतिबंधों के भीतर उन आवश्यकताओं को यथासंभव प्रभावी ढंग से पूरा करते हुए संरचित करने की कला है।"[9]

ब्रूक्स ने आईबीएम सिस्टम/360 (अब आईबीएम ज़ेड-श्रृंखला) कंप्यूटर की लाइन विकसित करने में मदद की, जिसमें "आर्किटेक्चर" एक संज्ञा बन गया जो "उपयोगकर्ता की आवश्यकताओं को जानना" को परिभाषित करता है।[10] कंप्यूटर उपयोगकर्ता बाद में इस शब्द का प्रयोग बहुत कम स्पष्ट तरीकों से करने लगे।[10]

प्रारंभिक कंप्यूटर आर्किटेक्चर को कागज पर संरचित किया गया था और फिर सीधे अंतिम हार्डवेयर रूप में बनाया गया था।[11] कंप्यूटर आर्किटेक्चर के मूलरूप को बाद में भौतिक रूप से एक ट्रांजिस्टर-ट्रांजिस्टर तार्किक (टीटीएल) कंप्यूटर के रूप में बनाया गया था - जैसे कि 6800 और PA-RISC के मूलरूप, फिर इनका परीक्षण किया गया, और अंतिम हार्डवेयर प्रारूप के लिए प्रतिबद्ध होने से पहले ट्वीक किया गया। नई कंप्यूटर आर्किटेक्चरयें 1990 के दशक तक सामान्यतः "निर्मित" थीं, और इनका कंप्यूटर आर्किटेक्चर सिम्युलेटर में किसी अन्य कंप्यूटर आर्किटेक्चर के अंदर या एफपीजीए के अंदर एक सॉफ्ट माइक्रोप्रोसेसर के रूप में या दोनों के लिए अंतिम हार्डवेयर प्रारूप के लिए प्रतिबद्ध होने से पहले परीक्षण और ट्वीक किया जाता था।[12]

उपश्रेणियाँ

कंप्यूटर आर्किटेक्चर के विषय में तीन मुख्य उपश्रेणियाँ हैं:[13]

कंप्यूटर आर्किटेक्चर में अन्य प्रौद्योगिकियाँ भी हैं। इंटेल जैसी बड़ी कंपनियों में निम्नलिखित तकनीकों का उपयोग किया जाता है, और वर्ष 2002 में यह अनुमान लगाया गया था[13] कि इनकी गणना सभी कंप्यूटर आर्किटेक्चरओं के 1% के लिए की जाती है:

  • मैक्रोआर्किटेक्चर: आर्किटेक्चर परतें सूक्ष्म-आर्किटेक्चर की तुलना में अधिक सारगर्भित हैं।
  • एकत्रण निर्देश सेट आर्किटेक्चर: एक स्मार्ट एकत्रक अलग-अलग कार्यान्वयन के लिए यंत्रों के समूह के लिए सामान्य एकत्रण भाषा को थोड़ा अलग यांत्रिक भाषा में परिवर्तित कर सकता है।
  • प्रोग्रामर-दृश्यमान मैक्रोआर्किटेक्चर: यह उच्च-स्तरीय भाषा उपकरण जैसे कि संकलक प्रोग्रामर्स के लिए एक सुसंगत इंटरफ़ेस या अनुबंध को परिभाषित कर सकता है, जो अंतर्निहित आईएसए, यूआईएसए और माइक्रोआर्किटेक्चर के बीच अंतर को अमूर्त करते हैं। उदाहरण के लिए, सी (प्रोग्रामिंग भाषा), सी ++ , या जावा (प्रोग्रामिंग भाषा) मानक विभिन्न प्रोग्रामर-दृश्यमान मैक्रोआर्किटेक्चर को परिभाषित करते हैं।
  • माइक्रोकोड: माइक्रोकोड एक ऐसा सॉफ्टवेयर है जो एक चिप पर संचालित होने के लिए निर्देशों का अनुवाद करता है। यह हार्डवेयर के चारों ओर एक आवरण की तरह कार्य करता है, जो हार्डवेयर के निर्देश सेट इंटरफ़ेस का पसंदीदा संस्करण प्रस्तुत करता है। यह निर्देश अनुवाद सुविधा चिप रचनाकारों को लचीले विकल्प प्रदान करती है: उदा 1. चिप का एक नया उन्नत संस्करण पुराने चिप संस्करण के समान सटीक निर्देश सेट को प्रस्तुत करने के लिए माइक्रोकोड का उपयोग कर सकता है, इसलिए निर्देश सेट को लक्षित करने वाले सभी सॉफ़्टवेयर बिना किसी बदलाव के नए चिप पर चल सकते हैं। उदा. 2. माइक्रोकोड एक ही अंतर्निहित चिप के लिए विभिन्न प्रकार के निर्देश सेट प्रस्तुत कर सकता है, जिससे यह व्यापक प्रकार के सॉफ़्टवेयर को संचालित करने की अनुमति प्रदान करता है।
  • उपयोगकर्ता निर्देश सेट आर्किटेक्चर (यूआइएसए): यह पावरपीसी आरआईएससी (RISC) प्रोसेसर द्वारा प्रदान किए गए आरआईएससी सीपीयू निर्देशों के तीन उपसमूहों में से एक को संदर्भित करता है। यूआईएसए उपसमूह आरआईएससी निर्देश, एप्लिकेशन विकासकों के लिए रुचिकर हैं। अन्य दो उपसमुच्चय आभासी वातावरण आर्किटेक्चर निर्देश (वीईए) और संचालित वातावरण आर्किटेक्चर (ओईए) हैं, जिनमें से वीईए का उपयोग आभासीकरण सिस्टम विकासकों द्वारा और ओईए का उपयोग संचालन सिस्टम विकासकों द्वारा किया जाता है।[15]
  • पिन आर्किटेक्चर: ये हार्डवेयर के वे कार्य हैं, जो एक माइक्रोप्रोसेसर को हार्डवेयर प्लेटफॉर्म को प्रदान करना चाहिए, उदाहरण के लिए, x86 पिन A20M, FERR/IGNNE, या FLUSH। साथ ही ये ऐसे संदेश भी होते हैं, जो प्रोसेसर को उत्सर्जित करना चाहिए ताकि बाहरी कैश को खाली किया जा सके। पिन आर्किटेक्चर कार्य, आईएसए कार्यों की तुलना में अधिक लचीले होते हैं क्योंकि बाहरी हार्डवेयर नए एन्कोडिंग के अनुकूल हो सकते हैं, या पिन से संदेश में बदल सकते हैं। इसके लिए शब्द "आर्किटेक्चर" उचित है, क्योंकि कार्यों को विस्तृत विधि बदल जाने पर भी संगत सिस्टम के लिए प्रदान किया जाना चाहिए।

भूमिकाएँ

परिभाषा

कंप्यूटर आर्किटेक्चर, कंप्यूटर सिस्टम के प्रदर्शन, दक्षता, लागत और विश्वसनीयता के संतुलन से सम्बंधित है। इन प्रतिस्पर्धी कारकों के संतुलन को स्पष्ट करने के लिए निर्देश सेट आर्किटेक्चर के मुद्दे का उपयोग किया जा सकता है। अधिक जटिल निर्देश सेट, प्रोग्रामकर्ता को अधिक स्थान कुशल प्रोग्राम लिखने में सक्षम बनाता है, क्योंकि एक ही निर्देश एक्स86 लूप निर्देश जैसे कुछ उच्च-स्तरीय पृथक्करण (जैसे) को एन्कोड कर सकता है।[16] हालांकि, लंबे और अधिक जटिल निर्देश, प्रोसेसर को डीकोड करने में अधिक समय लेते हैं और प्रभावी ढंग से प्रयुक्त करने के लिए अधिक महंगे हो सकते हैं। जब निर्देश अप्रत्याशित तरीके से परस्पर प्रभावित करते हैं, तो बड़े निर्देश सेट से बढ़ी हुई जटिलता भी अविश्वसनीयता के लिए अधिक स्थान बनाती है।

एकीकृत परिपथ संरचना, पैकेजिंग, विद्युत और शीतलन आदि क्रियायें इसके कार्यान्वयन में सम्मिलित है। संरचना के अनुकूलन के लिए संकलक (कंपाइलर), तार्किक संरचना के लिए ऑपरेटिंग सिस्टम और पैकेजिंग के बारे में जानकारी की आवश्यकता होती है।[17]

निर्देश सेट आर्किटेक्चर

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

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

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

आईएसए गुणवत्ता और पूर्णता में भिन्न हैं। एक उत्तम आईएसए प्रोग्रामर सुविधा (कोड को समझना कितना आसान है), कोड का आकार (किसी विशिष्ट क्रिया को करने के लिए कितना कोड आवश्यक है), निर्देशों की व्याख्या करने के लिए कंप्यूटर की लागत (अधिक जटिलता का अर्थ है निर्देशों को डीकोड और निष्पादित करने के लिए अधिक हार्डवेयर की आवश्यकता है), और कंप्यूटर की गति (अधिक जटिल डिकोडिंग हार्डवेयर के साथ डिकोड करने में अधिक समय लगता है) के साथ समझौता करता है। मेमोरी संगठन यह परिभाषित करता है कि निर्देश मेमोरी के साथ और मेमोरी स्वयं के साथ कैसे अंतःक्रिया करती है।

अनुकरणकर्ता (एम्युलेटर) संरचना अनुकरण के दौरान प्रस्तावित निर्देश सेट में लिखित प्रोग्राम संचालित कर सकते हैं। आधुनिक अनुकरणकर्ता किसी विशेष आईएसए द्वारा उसके लक्ष्यों को पूरा करने की स्थिति निर्धारित करने के लिए आकार, लागत और गति को माप सकते है।

कंप्यूटर संगठन

कंप्यूटर संगठन प्रदर्शन-आधारित उत्पादों के अनुकूलन में सहायता प्रदान करता है। उदाहरण के लिए, सॉफ्टवेयर अभियंताओं को प्रोसेसर की प्रोसेसिंग क्षमता जानने की आवश्यकता है। उन्हें न्यूनतम कीमत पर अधिकतम प्रदर्शन प्राप्त करने हेतु सॉफ़्टवेयर को अनुकूलित करने की आवश्यकता हो सकती है। इसके लिए कंप्यूटर संगठन के काफी विस्तृत विश्लेषण की आवश्यकता हो सकती है। उदाहरण के लिए, एक एसडी कार्ड में, रचनाकारों को कार्ड को इस प्रकार व्यवस्थित करने की आवश्यकता हो सकती है, जिससे अत्यधिक डेटा को अति तीव्र संभव तरीके से संसाधित किया जा सके।

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

कार्यान्वयन

एक निर्देश सेट और माइक्रो-आर्किटेक्चर संरचना किए जाने के बाद एक व्यावहारिक मशीन विकसित की जानी चाहिए। इस संरचना प्रक्रिया को कार्यान्वयन कहा जाता है। कार्यान्वयन को सामान्यतः वास्तुशिल्प संरचना नहीं, बल्कि हार्डवेयर संरचना अभियांत्रिकी माना जाता है,और इसे आगे कई चरणों में तोड़ा जा सकता है:

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

पूरी कार्यान्वयन प्रक्रिया को सीपीयू के लिए अलग तरीके से व्यवस्थित किया जाता है, और इसे प्रायः सीपीयू संरचना के रूप में जाना जाता है।

संरचना लक्ष्य

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

सबसे सामान्य योजना एक गहन शक्ति का विश्लेषण करती है, और यह जानकारी करती है कि पर्याप्त प्रदर्शन को बनाए रखते हुए बिजली की खपत को कैसे कम रखा जाए।

प्रदर्शन

आधुनिक कंप्यूटर प्रदर्शन को प्रायः निर्देश प्रति चक्र (आईपीसी) में वर्णित किया जाता है, जो किसी भी घड़ी आवृत्ति पर आर्किटेक्चर की दक्षता को मापता है; तेज आईपीसी दर का मतलब होता है कि कंप्यूटर तेज है। पुराने कंप्यूटरों में आईपीसी की संख्या 0.1 जितनी कम थी जबकि आधुनिक प्रोसेसर सरलता से आईपीसी की संख्या 1 के करीब पहुँच जाते हैं। सुपरस्केलर प्रोसेसर प्रति घड़ी चक्र में कई निर्देशों को निष्पादित करके तीन से पांच आईपीसी तक पहुंच सकते हैं।

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

बहुत से लोग कंप्यूटर की गति को घड़ी की दर (सामान्यतः मेगाहर्ट्ज या गीगाहर्ट्ज में) से मापते थे। यह सीपीयू की मुख्य घड़ी के प्रति सेकंड के चक्र को संदर्भित करता है। हालांकि, यह मापन-प्रणाली कुछ हद तक भ्रामक है, क्योंकि उच्च घड़ी दर वाली मशीन के पास प्रदर्शन अधिक नहीं हो सकता है। फलस्वरूप, इसके निर्माता घड़ी की गति को प्रदर्शन की माप के रूप में अस्वीकार करते हैं।

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

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

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

बेंचमार्क परीक्षण, कार्यक्रमों की एक श्रृंखला के माध्यम से कंप्यूटर को चलाने में लगने वाले समय को मापकर, इन सभी कारकों को ध्यान में रखता है। हालांकि बेंचमार्किंग शक्ति-प्रदर्शन करती है, लेकिन ऐसा नहीं होना चाहिए कि आप कंप्यूटर का चयन कैसे करते हैं। प्रायः मापी गई मशीनें अलग-अलग मापों पर विभाजित हो जाती हैं। उदाहरण के लिए, एक सिस्टम वैज्ञानिक अनुप्रयोगों को शीघ्रता से संभाल सकता है, जबकि दूसरा वीडियो गेम को अधिक सुचारू रूप से प्रस्तुत कर सकता है। इसके अतिरिक्त, ये अपने उत्पादों में संरचित हार्डवेयर या सॉफ़्टवेयर के माध्यम से विशेष सुविधाओं को जोड़ और लक्षित कर सकते हैं, जो एक विशिष्ट बेंचमार्क को शीघ्रता से निष्पादन करने की सुविधा देते हैं लेकिन सामान्य कार्यों के समान लाभ प्रदान नहीं करते हैं।

शक्ति दक्षता

शक्ति दक्षता, आधुनिक कंप्यूटरों में एक और महत्वपूर्ण माप होती है। प्रायः निम्न गति या उच्च लागत के लिए एक उच्च शक्ति दक्षता का व्यापार किया जा सकता है। कंप्यूटर आर्किटेक्चर में विद्युत की खपत का जिक्र करते समय एमआईपीएस/डब्ल्यू (प्रति सेकंड प्रति वाट लाखों निर्देश (MIPS/W)) सबसे सामान्य माप है।

प्रति चिप ट्रांजिस्टरों की संख्या बढ़ने के साथ ही आधुनिक परिपथों में एक ट्रांजिस्टर में कम शक्ति की आवश्यकता होती है।[18] ऐसा इसलिए होता है क्योंकि एक नई चिप में लगाये गए प्रत्येक ट्रांजिस्टर को स्वयं की विद्युत आपूर्ति की आवश्यकता होती है और इसे विद्युत आपूर्ति के लिए नए मार्ग बनाने की आवश्यकता होती है। हालाँकि प्रति चिप ट्रांजिस्टरों की संख्या धीमी गति से बढ़ने लगी है। इसलिए, एक चिप में अधिक से अधिक ट्रांजिस्टर स्थापित करने से अधिक महत्वपूर्ण नहीं होने पर, शक्ति दक्षता उतनी ही महत्वपूर्ण हो गई है। हाल की प्रोसेसर संरचनाओं ने इस तथ्य पर बल दिया है क्योंकि वे एक चिप में अधिक से अधिक ट्रांजिस्टर को स्थापित करने के स्थान पर शक्ति दक्षता पर अधिक ध्यान केंद्रित करते हैं।[19] प्रवाह क्षमता और विलंबता के बाद शक्ति दक्षता एम्बेडेड कंप्यूटरों की दुनिया में लंबे समय से एक महत्वपूर्ण लक्ष्य रहा है।

बाजार की माँग में बदलाव

पिछले कुछ वर्षों में घड़ी की आवृत्ति में वृद्धि, विद्युत कटौती में सुधार की तुलना में धीमी गति से बढ़ी है। यह मूर के नियम के समापन, लंबे बैटरी जीवनकाल की माँग और मोबाइल प्रौद्योगिकी के आकार में कमी से प्रेरित है। उच्च घड़ी दरों के लिए विद्युत की खपत और लघुकरण पर ध्यान केंद्रित करने में यह परिवर्तन विद्युत की खपत (लगभग 50%) में उल्लेखनीय कमी से प्रदर्शित किया जा सकता है, जो इंटेल द्वारा हैसवेल सूक्ष्म-आर्किटेक्चर के प्रदर्शन में दर्ज किया गया था; जहां उन्होंने अपने विद्युत खपत के बेंचमार्क को 30-40 वाट से घटाकर 10-20 वाट कर दिया।[20] इसकी तुलना 3 गीगाहर्ट्ज़ से 4 गीगाहर्ट्ज़ (वर्ष 2002 से 2006)[21] की प्रसंस्करण गति में वृद्धि से करते हुए यह देखा जा सकता है कि अनुसंधान और विकास में ध्यान घड़ी की आवृत्ति से हटकर कम विद्युत की खपत और कम स्थान लेने की ओर बढ़ रहा है।

यह भी देखें

संदर्भ

  1. Dragoni, Nicole (n.d.). "Introduction to peer to peer computing" (PDF). DTU Compute – Department of Applied Mathematics and Computer Science. Lyngby, Denmark.
  2. Clements, Alan. Principles of Computer Hardware (Fourth ed.). p. 1. Architecture describes the internal organization of a computer in an abstract way; that is, it defines the capabilities of the computer and its programming model. You can have two computers that have been constructed in different ways with different technologies but with the same architecture.
  3. Hennessy, John; Patterson, David. Computer Architecture: A Quantitative Approach (Fifth ed.). p. 11. This task has many aspects, including instruction set design, functional organization, logic design, and implementation.
  4. Williams, F. C.; Kilburn, T. (25 September 1948), "Electronic Digital Computers", Nature, 162 (4117): 487, Bibcode:1948Natur.162..487W, doi:10.1038/162487a0, S2CID 4110351, archived from the original on 6 April 2009, retrieved 2009-04-10
  5. Susanne Faber, "Konrad Zuses Bemuehungen um die Patentanmeldung der Z3", 2000
  6. Neumann, John (1945). First Draft of a Report on the EDVAC. p. 9.
  7. Reproduced in B. J. Copeland (Ed.), "Alan Turing's Automatic Computing Engine", Oxford University Press, 2005, pp. 369-454.
  8. Johnson, Lyle (1960). "A Description of Stretch" (PDF). p. 1. Retrieved 7 October 2017.
  9. Buchholz, Werner (1962). Planning a Computer System. p. 5.
  10. Hellige, Hans Dieter (2004). "Die Genese von Wissenschaftskonzeptionen der Computerarchitektur: Vom "system of organs" zum Schichtmodell des Designraums". Geschichten der Informatik: Visionen, Paradigmen, Leitmotive. pp. 411–472.
  11. ACE underwent seven paper designs in one year, before a prototype was initiated in 1948. [B. J. Copeland (Ed.), "Alan Turing's Automatic Computing Engine", OUP, 2005, p. 57]
  12. Schmalz, M.S. "Organization of Computer Systems". UF CISE. Retrieved 11 May 2017.
  13. 13.0 13.1 John L. Hennessy and David A. Patterson. Computer Architecture: A Quantitative Approach (Third ed.). Morgan Kaufmann Publishers.
  14. Laplante, Phillip A. (2001). Dictionary of Computer Science, Engineering, and Technology. CRC Press. pp. 94–95. ISBN 0-8493-2691-5.
  15. Frey, Brad (2005-02-24). "PowerPC Architecture Book, Version 2.02". IBM Corporation.
  16. Null, Linda (2019). The Essentials of Computer Organization and Architecture (5th ed.). Burlington, MA: Jones & Bartlett Learning. p. 280. ISBN 9781284123036.
  17. Martin, Milo. "What is computer architecture?" (PDF). UPENN. Retrieved 11 May 2017.
  18. "Integrated circuits and fabrication" (PDF). Retrieved 8 May 2017.
  19. "Exynos 9 Series (8895)". Samsung. Retrieved 8 May 2017.
  20. "Measuring Processor Power TDP vs ACP" (PDF). Intel. April 2011. Retrieved 5 May 2017.
  21. "History of Processor Performance" (PDF). cs.columbia.edu. 24 April 2012. Retrieved 5 May 2017.

स्रोत

बाहरी संबंध