बेलमैक 32: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
 
(20 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Short description|Microprocessor}}
{{Short description|Microprocessor}}
{{Cleanup bare URLs|date=September 2022}}
'''बेलमैक 32''' [[माइक्रोप्रोसेसर]] है जिसे 1980 में [[बेल लैब्स]] के एटी एंड टी कंप्यूटर सिस्टम्स द्वारा विकसित किया गया था, जिसे [[सीएमओएस]] पद्धति का उपयोग करके प्रदर्शित किया गया था और यह पहला माइक्रोप्रोसेसर था जो एक घड़ी चक्र में 32 बिट्स को स्थानांतरित कर सकता था। माइक्रोप्रोसेसर में 150,000 ट्रांजिस्टर होते हैं और <nowiki>''डोमिनो परिपथ''</nowiki> का उपयोग करके सीएमओएस डिजाइन की गति में सुधार हुआ है। इसे [[सी प्रोग्रामिंग भाषा]] को ध्यान में रखकर डिजाइन किया गया था। इसके निर्माण के बाद, '''बेलमैक 32A''' नामक उन्नत संस्करण का उत्पादन किया गया, फिर इसके अनुक्रमिक "हॉबिट" सी-लैंग्वेज रिड्यूस्ड इंस्ट्रक्शन सेट प्रोसेसर (सीआरआईएसपी) के साथ हटा दिया गया था।
'''बेलमैक 32''' [[माइक्रोप्रोसेसर]] है जिसे 1980 में [[बेल लैब्स]] के एटी एंड टी कंप्यूटर सिस्टम्स द्वारा विकसित किया गया था, जिसे [[सीएमओएस]] पद्धति का उपयोग करके प्रदर्शित किया गया था और यह पहला माइक्रोप्रोसेसर था जो एक घड़ी चक्र में 32 बिट्स को स्थानांतरित कर सकता था। माइक्रोप्रोसेसर में 150,000 ट्रांजिस्टर होते हैं और डोमिनो सर्किट का उपयोग करके सीएमओएस डिजाइन की गति में सुधार हुआ है। इसे [[सी प्रोग्रामिंग भाषा]] को ध्यान में रखकर डिजाइन किया गया था। इसके निर्माण के बाद, बेलमैक 32A नामक उन्नत संस्करण का उत्पादन किया गया, फिर इसके अनुक्रमिक "हॉबिट" सी-लैंग्वेज रिड्यूस्ड इंस्ट्रक्शन सेट प्रोसेसर (सीआरआईएसपी) के साथ हटा दिया गया था।


== इतिहास ==
== इतिहास ==
Bellmac 32 प्रोसेसर को AT&T इंजीनियरों द्वारा तीन अलग-अलग Bell Labs स्थानों में विकसित किया गया था: Naperville, इलिनोइस, Holmdel, न्यू जर्सी और मरे हिल, न्यू जर्सी।<ref name=kang />
बेलमैक 32 प्रोसेसर को एटी&टी इंजीनियरों द्वारा तीन अलग-अलग बेल लैब्स स्थानों : इंडियन हिल, होल्मडेल, और मुर्रे हिल में विकसित किया गया था।<ref name=kang />


जैसा कि डिजाइनरों के पास स्वचालन उपकरण नहीं थे, प्रत्येक चिप डिजाइनर को प्रारंभिक डिजाइन को पूरा करने के लिए रंगीन पेंसिल का उपयोग करना पड़ा।<ref name=kang />बाद में, स्टीव लॉ ने एक कंप्यूटर प्रोग्राम विकसित किया जो प्रारंभिक डिजाइनों के डिजिटलीकरण में सहायता करता था।
जैसा कि डिजाइनरों के पास ऑटोमेशन टूल नहीं थे, प्रत्येक चिप डिजाइनर को प्रारंभिक डिजाइन को पूरा करने के लिए रंगीन पेंसिल का उपयोग करना पड़ता था।<ref name=kang />बाद में, स्टीव लॉ ने कंप्यूटर प्रोग्राम विकसित किया जो प्रारंभिक डिजाइनों के डिजिटलीकरण में सहायता करता था।


बेलमैक 32 के विकास ने [[डोमिनोज़ लॉजिक]] नामक एक उपन्यास सर्किट डिजाइन तकनीक का उत्पादन किया, जिसे माइक्रोप्रोसेसर के उत्पादन के लिए एक सफलता माना गया। निर्माण के दौरान किए गए परीक्षणों ने संकेत दिया कि 4 मेगाहर्ट्ज लक्ष्य गति से भी अधिक घड़ी की आवृत्ति संभव थी। हालाँकि, नियंत्रण तर्क को लागू करना अप्रत्याशित रूप से जटिल साबित हुआ। इन जटिलताओं ने अंतिम गति को सीमित कर दिया, जब पूरी चिप समाप्त हो गई और परीक्षण किया गया, 2 मेगाहर्ट्ज तक।<ref name=kang />टीम ने इसे प्रगति के रूप में माना, लेकिन उतना सफल नहीं, क्योंकि यह शुरुआती एटी एंड टी डिजाइन लक्ष्यों को पूरा नहीं कर सका।
बेलमैक 32 के विकास ने [[डोमिनोज़ लॉजिक|डोमिनो लॉजिक]] नामक नए सर्किट डिजाइन तकनीक का उत्पादन किया, जिसे माइक्रोप्रोसेसर के उत्पादन के लिए सफलता माना जाता हैं। निर्माण के समय किए गए परीक्षणों ने संकेत दिया कि 4 मेगाहर्ट्ज लक्ष्य गति से भी अधिक घड़ी की आवृत्ति संभव थी। यद्यपि की, कंट्रोल लॉजिक को कार्यान्वित करना अप्रत्याशित रूप से कठिन सिद्ध हुआ था। इन जटिलताओं ने, जब पूरी चिप समाप्त हो गई और परीक्षण किया गया, 2 मेगाहर्ट्ज तक की अंतिम गति को सीमित कर दिया था।<ref name=kang />टीम ने इसे प्रगति के रूप में माना, लेकिन उतना सफल नहीं, क्योंकि यह प्रारंभिक एटी एंड टी डिजाइन लक्ष्यों को पूरा नहीं कर सका था।


बेलमैक माइक्रोप्रोसेसर की दूसरी पीढ़ी के रूप में फॉलोअप डिज़ाइन मीटिंग्स के परिणामस्वरूप बेलमैक 32ए प्रोजेक्ट हुआ। परियोजना ने एक बार फिर CMOS तकनीक का चयन किया और लक्ष्य घड़ी की आवृत्ति 6.2 मेगाहर्ट्ज तय की। विशिष्टताओं को पूरा करने में ट्रांजिस्टर और प्रतिरोधों के आकार को अधिकतम करने और इंटरकनेक्शन को कम करने के लिए समायोजन मौलिक थे। इंजीनियरों ने एक बड़े कमरे के फर्श पर चिप लेआउट का 20 फुट बाय 20 फुट का इंजीनियरिंग ड्राइंग रखा।<ref>http://greg.org/archive/2011/12/09/on_the_bellmac-32_and_perhaps_the_worlds_largest_plotter_pen_drawing.html</ref> पूर्ण सर्किट से उत्पादित चिप्स का परीक्षण डिजाइन की गति से अधिक हो गया, और 7, 8, और यहां तक ​​कि 9 मेगाहर्ट्ज की घड़ी आवृत्ति तक पहुंच गया।<ref name=kang>{{Cite web|url=https://ethw.org/First-Hand:The_AT%26T_BELLMAC-32_Microprocessor_Development|title = First-Hand:The AT&T BELLMAC-32 Microprocessor Development|website= Engineering and Technology History Wiki|author=Dr. Sung Mo (Steve) Kang|date = 13 January 2015}}</ref>
बेलमैक माइक्रोप्रोसेसर की दूसरी पीढ़ी के रूप में फॉलोअप डिज़ाइन मीटिंग्स के परिणामस्वरूप बेलमैक 32A प्रोजेक्ट हुआ था। परियोजना ने एक बार पुनः सीएम्ओएस तकनीक का चयन किया और लक्ष्य घड़ी की आवृत्ति 6.2 मेगाहर्ट्ज तय किया था। विशिष्टताओं को पूरा करने में ट्रांजिस्टर और प्रतिरोधों के आकार को अधिकतम करने और कम करने के लिए इंटरकनेक्शन मौलिक थे। इंजीनियरों ने एक बड़े कमरे के फर्श पर चिप लेआउट का 20 फुट बट्टा 20 फुट का इंजीनियरिंग ड्राइंग रखा था।<ref>http://greg.org/archive/2011/12/09/on_the_bellmac-32_and_perhaps_the_worlds_largest_plotter_pen_drawing.html</ref> पूर्ण सर्किट से उत्पादित चिप्स का परीक्षण डिजाइन की गति से अधिक हो गया, और 7, 8, और यहां तक ​​कि 9 मेगाहर्ट्ज की घड़ी आवृत्ति तक पहुंच गया था।<ref name=kang>{{Cite web|url=https://ethw.org/First-Hand:The_AT%26T_BELLMAC-32_Microprocessor_Development|title = First-Hand:The AT&T BELLMAC-32 Microprocessor Development|website= Engineering and Technology History Wiki|author=Dr. Sung Mo (Steve) Kang|date = 13 January 2015}}</ref>
एटी एंड टी के टूटने के बाद, बेल लैब्स [[ पश्चिमी इलेक्ट्रिक ]] का एक घटक बन गया। इस परिवर्तन के साथ, बेलमैक 32 का नाम बदलकर WE 32000 कर दिया गया। चिप के अद्यतन संस्करणों में WE 32100 शामिल था, जिसकी घोषणा जून 1984 में की गई थी।<ref name="microsystems198406_we32100">{{ cite magazine | url=https://archive.org/details/microsystems_84_06/page/n15/mode/1up | title=32-बिट माइक्रोप्रोसेसर आईसी समाचार| magazine=Microsystems | date=June 1984 | access-date=25 March 2023 | pages=12 }}</ref> और WE 32200।


== आर्किटेक्चर ==
एटी एंड टी के टूटने के बाद, बेल लैब्स[[ पश्चिमी इलेक्ट्रिक | पश्चिमी विद्युत्]] का घटक बन गया था। इस परिवर्तन के साथ, बेलमैक 32 का नाम बदलकर '''डब्ल्यू इ 32000''' कर दिया गया था। चिप के अद्यतन संस्करणों में '''डब्ल्यू इ 32100''' और '''डब्ल्यू इ 32200''' सम्मलित था, जिसकी घोषणा जून 1984 में की गई थी।<ref name="microsystems198406_we32100">{{cite magazine | url=https://archive.org/details/microsystems_84_06/page/n15/mode/1up | title=32-बिट माइक्रोप्रोसेसर आईसी समाचार| magazine=Microsystems | date=June 1984 | access-date=25 March 2023 | pages=12 }}</ref>
बेलमैक 32 में एक इंस्ट्रक्शन फेच यूनिट के साथ एक [[ निर्देश पाइपलाइन ]] है जो मुख्य मेमोरी तक पहुंच को नियंत्रित करने का काम करती है, और एक एक्जीक्यूशन यूनिट है जो प्रक्रिया की निगरानी और डेटा में हेरफेर करने का काम करती है।


निर्देश कतार मेमोरी से प्राप्त निर्देशों से भरी होती है। पता अंकगणितीय इकाई पता गणना के लिए कार्य करती है।
== संरचना ==
बेलमैक 32 में इंस्ट्रक्शन फेच यूनिट के साथ [[ निर्देश पाइपलाइन |पाइपलाइन संरचना]] है जो मुख्य मेमोरी तक एक्सेस को नियंत्रित करने का काम करती है, और एक एक्जीक्यूशन यूनिट है जो प्रक्रिया की निरिक्षण और डेटा में परिवर्तन करने का काम करती है।
 
निर्देश पंक्ति मेमोरी से प्राप्त निर्देशों से भरी होती है। एड्रेस अंकगणितीय इकाई एड्रेस गणना के लिए कार्य करती है।


=== प्रोग्रामिंग भाषा समर्थन ===
=== प्रोग्रामिंग भाषा समर्थन ===


बेलमैक 32 आर्किटेक्चर प्रोग्रामिंग लैंग्वेज इम्प्लिमेंटर्स के लिए कई तरह की सुविधाएं प्रदान करता है। प्रक्रिया मंगलाचरण में चार रजिस्टरों का हेरफेर शामिल है - प्रोग्राम काउंटर, स्टैक पॉइंटर, फ्रेम पॉइंटर और तर्क सूचक - प्रोग्राम प्रक्रियाओं के बीच नियंत्रण स्थानांतरित करने के लिए, प्रोग्राम स्टैक के उपयोग के साथ-साथ रजिस्टर सामग्री को संरक्षित करने और तर्कों को संप्रेषित करने और मूल्यों को वापस करने के लिए। इस तरह की प्रक्रिया लिंकेज का समर्थन करने के लिए चार निर्देश दिए गए हैं: कॉल रिटर्न एड्रेस और तर्क सूचक को स्टैक में सहेजता है, R3 से R8 समावेशी रेंज में चयनित रजिस्टरों को सहेजता है, किसी भी पहले से सहेजे गए रजिस्टरों को पुनर्स्थापित करता है, और रिटर्न से पहले स्टैक फ्रेम प्राप्त करता है आमंत्रण और सहेजे गए वापसी पते पर नियंत्रण लौटाता है। एड्रेसिंग मोड प्रदान किए जाते हैं जो आर्ग्युमेंट पॉइंटर और फ्रेम पॉइंटर के सापेक्ष स्टैक एक्सेस प्रदान करते हैं।<ref name="berenbaum1982">{{ cite journal | url=https://archive.org/details/tutorialsoftware0000unse_s5q2/page/143/mode/1up | title=The Operating System and Language Support Features of the BELLMAC-32 Microprocessor | journal=The Proceedings of the Symposium on Architectural Support for Programming Languages and Operating Systems | publisher=Association for Computing Machinery | date=March 1982 | access-date=24 March 2023 | last1=Berenbaum | first1=Alan D. | last2=Condry | first2=Michael W. | last3=Lu | first3=Priscilla M. | pages=30–38 }}</ref>
बेलमैक 32 संरचित प्रोग्रामिंग भाषा इम्प्लिमेंटर्स के लिए कई तरह की सुविधाएं प्रदान करता है। प्रक्रिया उत्क्रियण में चार रजिस्टरों - प्रोग्राम काउंटर, स्टैक पॉइंटर, फ्रेम पॉइंटर और आर्गुमेंट पॉइंटर - प्रोग्राम प्रक्रियाओं के बीच नियंत्रण स्थानांतरित करने के लिए, प्रोग्राम स्टैक के उपयोग के साथ-साथ रजिस्टर सामग्री को संरक्षित करने और आर्ग्यूमेंट्स को संप्रेषित करने और मूल्यों को वापस करने के लिए परिवर्तन सम्मलित है। इस तरह की प्रक्रिया लिंकेज का समर्थन करने के लिए चार निर्देश दिए गए हैं: कॉल रिटर्न एड्रेस और आर्ग्युमेंट पॉइंटर को स्टैक में संरक्षित करता हैं, R3 से R8 समावेशी रेंज में चयनित रजिस्टरों को संरक्षित करता हैं, किसी भी पहले से संरक्षित किये गए रजिस्टरों को पुनर्स्थापित करता है, और रिटर्न से पहले स्टैक फ्रेम प्राप्त करता है, उत्क्रियण और संरक्षित किये गए रिटर्न एड्रेस पर नियंत्रण ''रिटर्न'' करता हैं। एड्रेसिंग मोड प्रदान किए जाते हैं जो आर्ग्युमेंट पॉइंटर और फ्रेम पॉइंटर के सापेक्ष स्टैक एक्सेस प्रदान करते हैं।<ref name="berenbaum1982">{{ cite journal | url=https://archive.org/details/tutorialsoftware0000unse_s5q2/page/143/mode/1up | title=The Operating System and Language Support Features of the BELLMAC-32 Microprocessor | journal=The Proceedings of the Symposium on Architectural Support for Programming Languages and Operating Systems | publisher=Association for Computing Machinery | date=March 1982 | access-date=24 March 2023 | last1=Berenbaum | first1=Alan D. | last2=Condry | first2=Michael W. | last3=Lu | first3=Priscilla M. | pages=30–38 }}</ref>
 
 
=== प्रक्रिया प्रबंधन ===
=== प्रक्रिया प्रबंधन ===
<small>संरचना प्रक्रिया प्रबंधन के विशेष मॉडल का सहायता करता है, जहां एक प्रक्रिया एकल निष्पादन स्टैक को नियोजित करती है, और जहां एक प्रक्रिया नियंत्रण ब्लॉक (पीसीबी) प्रत्येक प्रक्रिया के निष्पादन संदर्भ को बनाए रखता है, प्रक्रिया के रजिस्टर मूल्यों की प्रतियां रखने के साथ-साथ ब्लॉक मूव प्रक्रिया की वर्चुअल मेमोरी कॉन्फ़िगरेशन डेटा का वर्णन करता है। ऑपरेटिंग सिस्टम कार्यान्वयनकर्ताओं के लिए सुविधा के रूप में, प्रक्रिया स्विचिंग के लिए संरचनात्मक सहायता में प्राचीन जंप-टू-सबरूटीन और रिटर्न-फ्रॉम-सबरूटीन निर्देशों के अनुरूप दो समर्पित निर्देश सम्मलित हैं। कॉल-प्रोसेस निर्देश विशेषाधिकार प्राप्त प्रक्रिया नियंत्रण ब्लॉक पॉइंटर (पीसीबीपी) रजिस्टर के माध्यम से उपयोगकर्ता और नियंत्रण रजिस्टरों को किसी दिए गए प्रक्रिया के पीसीबी में संगृहीत करता है, इस प्रकार करंट प्रोसेस की निष्पादन स्थिति को कैप्चर करता है और इसे समाप्त करने की अनुमति देता है, इसके बाद ऐसे रजिस्टरों को लोड किया जाता है। किसी अन्य प्रक्रिया के पीसीबी से, इस प्रकार दी गई प्रक्रिया की निष्पादन स्थिति को पुनर्स्थापित करता हैं। इस बीच, रिटर्न-टू-प्रोसेस निर्देश किसी दिए गए पीसीबी से प्रोसेस स्टेट को लोड करता है। ब्लॉक मूव्स कार्यान्वित करके, प्रक्रिया स्विचिंग निर्देश ऑपरेटिंग सिस्टम द्वारा आगे के इंटरप्ट के बिना सक्रिय वर्चुअल मेमोरी लेआउट को स्वचालित रूप से पुन: कॉन्फ़िगर करने में सक्षम होते हैं, और इस पुन: कॉन्फ़िगरेशन को प्रोसेसर रजिस्टरों के अपडेट के साथ जोड़कर, ये निर्देश प्रक्रिया के एक्सेक्यूशन एन्वॉयरॉन्मेंट को सरलता से कार्यान्वित करने की अनुमति देते हैं।<ref name="berenbaum1982" /></small>


आर्किटेक्चर प्रक्रिया प्रबंधन के एक विशेष मॉडल का समर्थन करता है, जहां एक प्रक्रिया एकल निष्पादन स्टैक को नियोजित करती है, और जहां एक प्रक्रिया नियंत्रण ब्लॉक (पीसीबी) प्रत्येक प्रक्रिया के निष्पादन संदर्भ को बनाए रखता है, प्रक्रिया के रजिस्टर मूल्यों की प्रतियां रखने के साथ-साथ ब्लॉक मूव डेटा का वर्णन करता है। प्रक्रिया की वर्चुअल मेमोरी कॉन्फ़िगरेशन। ऑपरेटिंग सिस्टम कार्यान्वयनकर्ताओं के लिए एक सुविधा के रूप में, प्रक्रिया स्विचिंग के लिए वास्तुशिल्प समर्थन में पारंपरिक जंप-टू-सबरूटीन और रिटर्न-फ्रॉम-सबरूटीन निर्देशों के अनुरूप दो समर्पित निर्देश शामिल हैं। कॉल-प्रोसेस निर्देश विशेषाधिकार प्राप्त प्रक्रिया नियंत्रण ब्लॉक पॉइंटर (पीसीबीपी) रजिस्टर के माध्यम से उपयोगकर्ता और नियंत्रण रजिस्टरों को किसी दिए गए प्रक्रिया के पीसीबी में सहेजता है, इस प्रकार वर्तमान प्रक्रिया की निष्पादन स्थिति को कैप्चर करता है और इसे निलंबित करने की अनुमति देता है, इसके बाद ऐसे रजिस्टरों को लोड किया जाता है। किसी अन्य प्रक्रिया के पीसीबी से, इस प्रकार दी गई प्रक्रिया की निष्पादन स्थिति को पुनर्स्थापित करना। इस बीच, रिटर्न-टू-प्रोसेस निर्देश किसी दिए गए पीसीबी से प्रोसेस स्टेट को लोड करता है। ब्लॉक चालें करके, प्रक्रिया स्विचिंग निर्देश ऑपरेटिंग सिस्टम द्वारा आगे के हस्तक्षेप के बिना सक्रिय वर्चुअल मेमोरी लेआउट को स्वचालित रूप से पुन: कॉन्फ़िगर करने में सक्षम होते हैं, और इस पुन: कॉन्फ़िगरेशन को प्रोसेसर रजिस्टरों के अपडेट के साथ जोड़कर, ये निर्देश प्रक्रिया के निष्पादन वातावरण को आसानी से बहाल करने की अनुमति देते हैं .<ref name="berenbaum1982"/>
=== '''इंटरप्ट हैंडलिंग''' ===
 
 
=== इंटरप्ट हैंडलिंग ===
 
PCBP रजिस्टर के साथ, इंटरप्ट स्टैक पॉइंटर (ISP) रजिस्टर का उपयोग एक सामान्य इंटरप्ट स्टैक पर स्थिति को संदर्भित करने के लिए किया जाता है, जिसका उपयोग बाधित प्रक्रियाओं की संग्रहीत स्थिति को संदर्भित करने वाले PCB पॉइंटर्स को रिकॉर्ड करने के लिए किया जाता है। जब एक बाधा पहुंचाई जाती है, तो चलने वाली प्रक्रिया को निलंबित करने के लिए समर्पित कॉल-प्रोसेस निर्देश नियोजित किया जाता है, जिसका पीसीबी पता इंटरप्ट स्टैक पर संग्रहीत होता है, और तालिका से चुने गए इंटरप्ट हैंडलर पर स्विच करने के लिए। व्यवधान अलग-अलग प्रक्रियाओं की तरह व्यवहार करते हैं और इसलिए उन्हें अपने स्वयं के विशिष्ट निष्पादन स्टैक के साथ प्रदान किया जाता है। इंटरप्ट हैंडलिंग के पूरा होने के बाद, रिटर्न-टू-प्रोसेस निर्देश का उपयोग निलंबित प्रक्रिया को फिर से शुरू करने के लिए किया जाता है। एक उपयुक्त इंटरप्ट हैंडलर के चयन में निश्चित वर्चुअल मेमोरी लोकेशन में पीसीबी पॉइंटर्स की एक तालिका शामिल होती है।<ref name="berenbaum1982"/>


पीसीबीपी रजिस्टर के साथ, इंटरप्ट स्टैक पॉइंटर (आईएसपी) रजिस्टर का उपयोग सामान्य इंटरप्ट स्टैक पर स्थिति को संदर्भित करने के लिए किया जाता है, जिसका उपयोग बाधित प्रक्रियाओं की संग्रहीत स्थिति को संदर्भित करने वाले पीसीबी पॉइंटर्स को रिकॉर्ड करने के लिए किया जाता है। जब इंटरप्ट पहुंचाई जाती है, तो रनिंग प्रोसेस को निलंबित करने के लिए समर्पित कॉल-प्रोसेस निर्देश नियोजित किया जाता है, जिसका पीसीबी एड्रेस इंटरप्ट स्टैक पर संग्रहीत होता है, और तालिका से चुने गए इंटरप्ट हैंडलर पर स्विच करता हैं। इंटरप्ट अलग-अलग प्रक्रियाओं की तरह व्यवहार करते हैं और इसलिए उन्हें अपने स्वयं के विशिष्ट निष्पादन स्टैक के साथ प्रदान किया जाता है। इंटरप्ट हैंडलिंग के पूरा होने के बाद, रिटर्न-टू-प्रोसेस निर्देश का उपयोग निलंबित प्रक्रिया को पुनः प्रारम्भ करने के लिए किया जाता है। एक उपयुक्त इंटरप्ट हैंडलर के चयन में निश्चित वर्चुअल मेमोरी लोकेशन में पीसीबी पॉइंटर्स की तालिका सम्मलित होती है।<ref name="berenbaum1982"/>
=== विशेषाधिकार, सिस्टम कॉल और एक्सेप्शन हैंडलिंग ===


=== विशेषाधिकार, सिस्टम कॉल और अपवाद हैंडलिंग ===
बेलमैक 32 संरचना द्वारा चार विशेषाधिकार स्तरों का समर्थन किया जाता है। विशेषाधिकार स्तरों के बीच स्विच करने के लिए, नियंत्रित स्थानांतरण तंत्र प्रदान किया जाता है, प्रोसेसर स्टेटस वर्ड (पीएसडब्ल्यू) रजिस्टर का उपयोग करके विशेषाधिकार स्तर को परिभाषित करने के लिए दो-स्तरीय तालिका पदानुक्रम पर निर्भर करता है और प्रत्येक प्रक्रिया या हैंडलर के स्थान को नियंत्रित कॉल द्वारा क्रियान्वित किया जाता है। इस प्रकार सिस्टम कॉल तंत्र प्रदान करता है। एक्सेप्शन हैंडलिंग इस नियंत्रित कॉल तंत्र को उपयुक्त हैंडलर के निष्पादन को निर्देशित करने के लिए नियोजित करती है, जो एक सामान्य एक्सेप्शन के लिए विशेष द्वितीय-स्तरीय तालिका के माध्यम से पाई जाती है, जिसकी प्रविष्टियाँ विशेष इंटरनल स्टेट कोड (आईएससी) से मिलती हैं, जिसे पीएसडब्ल्यू रजिस्टर में परिभाषित किया गया है। कार्य करने के लिए बेलमैक 32 की एक्सेप्शन-संबंधित सुविधाओं के लिए, एक ऑपरेटिंग सिस्टम कर्नेल को भी प्रत्येक प्रक्रिया के वर्चुअल एड्रेस स्पेस में रहने की आशा है क्योंकि एक्सेप्शन, एक नियंत्रित स्थानांतरण पर निर्भर, वर्चुअल मेमोरी कॉन्फ़िगरेशन को नहीं बदलता हैं।<ref name="berenbaum1982"/>
 
=== सी-लैंग्वेज का समर्थन करने वाले निर्देश ===
बेलमैक 32 आर्किटेक्चर द्वारा चार विशेषाधिकार स्तरों का समर्थन किया जाता है। विशेषाधिकार स्तरों के बीच स्विच करने के लिए, नियंत्रित स्थानांतरण तंत्र प्रदान किया जाता है, प्रोसेसर स्टेटस वर्ड (पीएसडब्ल्यू) रजिस्टर का उपयोग करके विशेषाधिकार स्तर को परिभाषित करने के लिए दो-स्तरीय तालिका पदानुक्रम पर निर्भर करता है और प्रत्येक प्रक्रिया या हैंडलर के स्थान को नियंत्रित कॉल द्वारा लागू किया जाता है। , इस प्रकार एक सिस्टम कॉल तंत्र प्रदान करता है। अपवाद हैंडलिंग इस नियंत्रित कॉल तंत्र को एक उपयुक्त हैंडलर के निष्पादन को निर्देशित करने के लिए नियोजित करती है, जो एक सामान्य अपवाद के लिए एक विशेष द्वितीय-स्तरीय तालिका के माध्यम से पाई जाती है, जिसकी प्रविष्टियाँ एक विशेष आंतरिक राज्य कोड (ISC) से मेल खाती हैं, जिसे PSW रजिस्टर में परिभाषित किया गया है। कार्य करने के लिए बेलमैक 32 की अपवाद-संबंधित सुविधाओं के लिए, एक ऑपरेटिंग सिस्टम कर्नेल को भी प्रत्येक प्रक्रिया के वर्चुअल एड्रेस स्पेस में रहने की उम्मीद है क्योंकि एक अपवाद, एक नियंत्रित हस्तांतरण पर निर्भर, वर्चुअल मेमोरी कॉन्फ़िगरेशन को नहीं बदलेगा।<ref name="berenbaum1982"/>
 
 
=== सी भाषा का समर्थन करने वाले निर्देश ===
 
हालांकि बेलमैक 32 आर्किटेक्चर द्वारा प्रदान किए गए विभिन्न ऑपरेशन आमतौर पर उच्च-स्तरीय भाषाओं का समर्थन करते हैं, विशिष्ट निर्देश प्रदान किए जाते हैं जो सी भाषा सम्मेलनों का समर्थन करते हैं, विशेष रूप से स्ट्रिंग कॉपी और स्ट्रिंग एंड निर्देश जो शून्य बाइट के साथ वर्ण स्ट्रिंग को समाप्त करने के सी भाषा प्रतिनिधित्व पर भरोसा करते हैं। एक सामान्य ब्लॉक कॉपी ऑपरेशन भी प्रदान किया जाता है जो स्थानों के बीच कॉपी किए जाने वाले डेटा की मात्रा को परिभाषित करने के लिए एक स्पष्ट ब्लॉक लंबाई पैरामीटर का उपयोग करता है।<ref name="berenbaum1982"/>
 


यद्यपि की बेलमैक 32 संरचना द्वारा प्रदान किए गए विभिन्न संचालन साधारण तौर पर उच्च-स्तरीय भाषाओं का समर्थन करते हैं, विशिष्ट निर्देश प्रदान किए जाते हैं जो सी भाषा प्रोग्राम्स का समर्थन करते हैं, विशेष रूप से स्ट्रिंग कॉपी और स्ट्रिंग एंड निर्देश जो शून्य बाइट के साथ वर्ण स्ट्रिंग को समाप्त करने के सी भाषा प्रतिनिधित्व पर निर्भर होते हैं। एक सामान्य ब्लॉक कॉपी संचालन भी प्रदान किया जाता है जो स्थानों के बीच कॉपी किए जाने वाले डेटा की मात्रा को परिभाषित करने के लिए स्पष्ट ब्लॉक लंबाई मानदंड का उपयोग करता है।<ref name="berenbaum1982"/>
== रजिस्टर ==
== रजिस्टर ==


{| class="infobox" style="font-size:88%"
{| class="infobox" style="font-size:88%"
|-
|-
|+ WE 32100 registers
|+ डब्ल्यूई 32100 रजिस्टर
|-
|-
|
|
Line 61: Line 51:
| style="width:60px; text-align:center"| ...
| style="width:60px; text-align:center"| ...
| style="width:10px; text-align:center"| <sup>0</sup><sub>0</sub>
| style="width:10px; text-align:center"| <sup>0</sup><sub>0</sub>
| style="width:100px; background:white; color:black" | ''(bit position)''
| style="width:100px; background:white; color:black" | ''(बिट पोजीशन)''
|-
|-
! colspan="10" | General registers
! colspan="10" | जनरल रजिस्टर
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R0
| style="text-align:center" colspan="9"| R0
| style="background:white; color:black" colspan="3"| Register 0
| style="background:white; color:black" colspan="3"| रजिस्टर 0
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R1
| style="text-align:center" colspan="9"| R1
| style="background:white; color:black"| Register 1
| style="background:white; color:black"| रजिस्टर 1
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R2
| style="text-align:center" colspan="9"| R2
| style="background:white; color:black"| Register 2
| style="background:white; color:black"| रजिस्टर 2
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R3
| style="text-align:center" colspan="9"| R3
| style="background:white; color:black"| Register 3
| style="background:white; color:black"| रजिस्टर 3
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R4
| style="text-align:center" colspan="9"| R4
| style="background:white; color:black"| Register 4
| style="background:white; color:black"| रजिस्टर 4
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R5
| style="text-align:center" colspan="9"| R5
| style="background:white; color:black"| Register 5
| style="background:white; color:black"| रजिस्टर 5
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R6
| style="text-align:center" colspan="9"| R6
| style="background:white; color:black"| Register 6
| style="background:white; color:black"| रजिस्टर 6
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R7
| style="text-align:center" colspan="9"| R7
| style="background:white; color:black"| Register 7
| style="background:white; color:black"| रजिस्टर 7
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R8
| style="text-align:center" colspan="9"| R8
| style="background:white; color:black"| Register 8
| style="background:white; color:black"| रजिस्टर 8
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R9 / FP
| style="text-align:center" colspan="9"| R9 / FP
| style="background:white; color:black"| Frame Ptr
| style="background:white; color:black"| फ्रेम पिटीआर
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R10 / AP
| style="text-align:center" colspan="9"| R10 / AP
| style="background:white; color:black"| Argument Ptr
| style="background:white; color:black"| आर्गुमेंट पिटीआर
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R11 / PSW (See below)
| style="text-align:center" colspan="9"| R11 / PSW (See below)
| style="background:white; color:black"| Processor Status Word
| style="background:white; color:black"| प्रोसेसर स्टेटस वर्ड
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R12 / SP
| style="text-align:center" colspan="9"| R12 / SP
| style="background:white; color:black"| Stack Ptr
| style="background:white; color:black"| स्टैक पिटीआर
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R13 / PCBP
| style="text-align:center" colspan="9"| R13 / PCBP
| style="background:white; color:black"| Process Control Bock Ptr
| style="background:white; color:black"| प्रोसेस कंट्रोल ब्रोक पिटीआर
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R14 / ISP
| style="text-align:center" colspan="9"| R14 / ISP
| style="background:white; color:black"| Interrupt Stack Ptr
| style="background:white; color:black"| इन्ट्रप्ट स्टैक पिटीआर
|- style="background:silver;color:black"
|- style="background:silver;color:black"
| style="text-align:center" colspan="9"| R15 / PC
| style="text-align:center" colspan="9"| R15 / PC
| style="background:white; color:black"| Program Counter
| style="background:white; color:black"| प्रोग्राम काउंटर
|}
|}
|}
|}


बेलमैक 32 में सोलह 32-बिट रजिस्टर हैं। इनमें से तीन (ISP, PCBP, PSW) विशेषाधिकार प्राप्त हैं, जिनका उपयोग ऑपरेटिंग सिस्टम का समर्थन करने के लिए किया जाता है और केवल तभी लिखा जा सकता है जब माइक्रोप्रोसेसर कर्नेल मोड में हो। तीन अन्य रजिस्टर (एसपी, एपी, एफपी) हैं जिनका उपयोग कुछ निर्देशों द्वारा स्टैक पॉइंटर्स के रूप में किया जाता है। निष्पादन स्तर, प्रोसेसर स्थिति शब्द में निर्धारित, चार अवस्थाओं में से एक हो सकता है: कर्नेल, कार्यकारी, पर्यवेक्षक, उपयोगकर्ता।<ref>{{cite web |title=WE 32100 Microprocessor Information Manual |url=http://www.bitsavers.org/pdf/westernElectric/WE_32100_Microprocessor_Information_Manual_Jan85.pdf |publisher=AT&T | date=January 1985}}</ref>
बेलमैक 32 में सोलह 32-बिट रजिस्टर हैं। इनमें से तीन (आईएसपी, पीसीबीपी, पीएसडब्ल्यू) विशेषाधिकार प्राप्त हैं, जिनका उपयोग ऑपरेटिंग सिस्टम की सहायता करने के लिए किया जाता है और केवल तभी लिखा जा सकता है जब माइक्रोप्रोसेसर कर्नेल मोड में होता हैं। तीन अन्य रजिस्टर (एसपी, एपी, एफपी) हैं जिनका उपयोग कुछ निर्देशों द्वारा स्टैक पॉइंटर्स के रूप में किया जाता है। निष्पादन स्तर, प्रोसेसर स्थिति शब्द में निर्धारित, चार अवस्थाओ : कर्नेल, एग्जीक्यूटिव, सुपरवाइजर, यूजर में से एक हो सकता है।<ref>{{cite web |title=WE 32100 Microprocessor Information Manual |url=http://www.bitsavers.org/pdf/westernElectric/WE_32100_Microprocessor_Information_Manual_Jan85.pdf |publisher=AT&T | date=January 1985}}</ref>
WE 32200 में अतिरिक्त सोलह रजिस्टर हैं,<ref name=attaug87 />इन्हें आठ रजिस्टरों के दो समूहों में विभाजित किया जा रहा है: R16 से R23 उपयोगकर्ता रजिस्टर होने के नाते, किसी भी प्रोसेसर मोड में पढ़ने योग्य और लिखने योग्य, वैश्विक चर और अस्थायी भंडारण के लिए अभिप्रेत है; R24 से R31 कर्नेल, या विशेषाधिकार प्राप्त होने के नाते, रजिस्टर करता है जो केवल कर्नेल मोड में लिखने योग्य हैं, किसी अन्य मोड में पढ़ने योग्य हैं। इन अतिरिक्त रजिस्टरों को उच्च-स्तरीय भाषा संकलक को कोड उत्पन्न करने की अनुमति देने के लिए पेश किया गया था जो उन्हें अक्सर उपयोग किए जाने वाले डेटा को संग्रहीत करने के लिए उपयोग कर सकता है, इस प्रकार ऐसी भाषाओं के निष्पादन प्रदर्शन में सुधार होता है।<ref name="ieeemicro198904_we32200">{{ cite magazine | url=https://archive.org/details/ieee_micro_v9n2_apr_89/page/n15/mode/2up | title=एटी एंड टी WE32200 डिजाइन चैलेंज| magazine=IEEE Micro | date=April 1989 | access-date=19 March 2023 | last1=Huang | first1=Victor K. L. | last2=Seery | first2=James W. | last3=Wu | first3=William S. | last4=Altabet | first4=Saul K. | last5=Killian | first5=Michael J. | last6=Aymeloglu | first6=Simeon | last7=Gabara | first7=Thaddeus J. | last8=Fisher | first8=Aaron L. | last9=Hwang | first9=Inseok S. | last10=Thompson | first10=David W. | pages=14–25 }}</ref>
 
WE 32200 में अतिरिक्त सोलह रजिस्टर हैं,<ref name="attaug87" />इन्हें आठ रजिस्टरों के दो समूहों में विभाजित किया जा रहा है: R16 से R23 उपयोगकर्ता रजिस्टर होने के कारण, किसी भी प्रोसेसर मोड में पढ़ने योग्य और लिखने योग्य, वैश्विक चर और अस्थायी भंडारण के लिए अभिप्रेत है; R24 से R31 कर्नेल, या विशेषाधिकार प्राप्त होने के कारण, रजिस्टर करता है जो केवल कर्नेल मोड में लिखने योग्य हैं, किसी अन्य मोड में पढ़ने योग्य हैं। इन अतिरिक्त रजिस्टरों को उच्च-स्तरीय भाषा संकलक को कोड उत्पन्न करने की अनुमति देने के लिए प्रदर्शित किया गया था जो उन्हें प्रायः उपयोग किए जाने वाले डेटा को संग्रहीत करने के लिए उपयोग कर सकता है, इस प्रकार ऐसी भाषाओं के निष्पादन प्रदर्शन में सुधार होता है।<ref name="ieeemicro198904_we32200">{{cite magazine | url=https://archive.org/details/ieee_micro_v9n2_apr_89/page/n15/mode/2up | title=एटी एंड टी WE32200 डिजाइन चैलेंज| magazine=IEEE Micro | date=April 1989 | access-date=19 March 2023 | last1=Huang | first1=Victor K. L. | last2=Seery | first2=James W. | last3=Wu | first3=William S. | last4=Altabet | first4=Saul K. | last5=Killian | first5=Michael J. | last6=Aymeloglu | first6=Simeon | last7=Gabara | first7=Thaddeus J. | last8=Fisher | first8=Aaron L. | last9=Hwang | first9=Inseok S. | last10=Thompson | first10=David W. | pages=14–25 }}</ref>


== प्रोसेसर स्थिति शब्द ==
== प्रोसेसर स्थिति शब्द ==
Line 122: Line 113:
{| class="infobox" style="font-size:88%"
{| class="infobox" style="font-size:88%"
|-
|-
|+ Processor Status Word
|+ प्रोसेसर स्थिति शब्द
|-
|-
|
|
Line 154: Line 145:
| style="width:10px"| <sup>0</sup><sub>1</sub>
| style="width:10px"| <sup>0</sup><sub>1</sub>
| style="width:10px"| <sup>0</sup><sub>0</sub>
| style="width:10px"| <sup>0</sup><sub>0</sub>
| style="width:100px; background:white; color:black" | ''(bit position)''
| style="width:100px; background:white; color:black" | ''(बिट पोजीशन)''
|- style="background:silver; color:black; text-align:center"
|- style="background:silver; color:black; text-align:center"
| style="text-align:center" colspan="3" | Unused
| style="text-align:center" colspan="3" | Unused
Line 177: Line 168:
|}
|}


प्रोसेस स्टेटस वर्ड रजिस्टर फ़ाइल का हिस्सा है और इसे R11 के रूप में अलिया किया गया है।
प्रोसेस स्टेटस वर्ड रजिस्टर फ़ाइल का भाग है और इसे R11 के रूप में उपनाम दिया गया