National Semiconductor SC/MP
सरल लागत प्रभावी माइक्रो प्रोसेसर के लिए राष्ट्रीय अर्धचालक का एससी/एमपी (उच्चारण स्कैंप), एक प्रारंभिक 8-बिट माइक्रोप्रोसेसर है जो अप्रैल 1976 में उपलब्ध हुआ। इसे अतिरिक्त समर्थन चिप्स की न्यूनतम संख्या के साथ प्रणालियों को लागू करने की अनुमति देने के लिए डिज़ाइन किया गया था। एस. सी./एम. पी. में एक डेज़ी-जंजीर वाला नियंत्रण पिन शामिल था जो तीन एस. सी./एम. पी. को एक एकल मुख्य स्मृति साझा करने की अनुमति देता था ताकि एक बहु-प्रोसेसर प्रणाली का उत्पादन किया जा सके, या एक अन्य मुख्य केंद्रीय प्रसंस्करण इकाई (सी. पी. यू.) के साथ एक प्रणाली में नियंत्रकों के रूप में कार्य किया जा सके। इसके जीवनकाल में तीन संस्करण जारी किए गए, एस. सी. एम. पी.-1 से 3 तक, बाद वाले दो को आई. एन. एस. 8060 और आई. एन. एस. 8070 के नाम से भी जाना जाता है। लागत को कम करने के लिए, प्रणाली ने एक बिट-सीरियल अंकगणितीय तर्क इकाई (ए. एल. यू.) का उपयोग किया और इस प्रकार इंटेल 8080 या एम. ओ. एस. 6502 जैसे समकालीन डिजाइनों की तुलना में काफी धीमा था, जिनमें समानांतर ए. एल. यू. थे। एक अन्य विषमता यह थी कि प्रोग्राम काउंटर केवल 16-बिट पते के निचले 12-बिट तक ही पहुंच सकता था, और ऊपरी 4-बिट को विशेष निर्देशों का उपयोग करके सेट करना पड़ता था। परिणाम यह हुआ कि निर्देशों ने मुख्य स्मृति को सोलह 4 के. बी. "पृष्ठों" के रूप में एक्सेस किया और उन पृष्ठों के बाहर स्मृति तक पहुंचने के लिए कई निर्देशों की आवश्यकता थी। धीमी गति और पृष्ठित स्मृति के संयोजन ने अंतर्निहित बाजारों के बाहर इसके आकर्षण को सीमित कर दिया, और इस बाजार में इसने फेयरचाइल्ड एफ8 के खिलाफ प्रतिस्पर्धा की, जिसमें कई उपयोगी अतिरिक्त विशेषताएं थीं। इस प्रणाली का उपयोग अपेक्षाकृत कम देखा गया। डिजाइन ए. एल. यू. और मुख्य रजिस्टर अंकगणितीय तर्क इकाई (ए. एल. यू.) संचायक-आधारित थी, जिसमें एकल 8-बिट संचायक, ए. सी. था। एक दूसरा 8-बिट रजिस्टर, "एक्सटेंशन", या ई, का उपयोग एसी के लिए बैकअप के रूप में किया जा सकता है। ई को अधिकांश निर्देशों द्वारा सीधे एक्सेस नहीं किया जा सकता था; उदाहरण के लिए कोई भी मेमोरी से डेटा को सीधे ई में लोड नहीं कर सकता था। इसके बजाय, एसी में मान ई से पढ़ा जा सकता है, या एसी और ई की अदला-बदली की जा सकती है। ई का उपयोग एएलयू द्वारा समर्थित सात तार्किक/अंकगणितीय संचालन के लिए स्रोत मूल्य के रूप में भी किया जा सकता है। यदि ई का उपयोग अन्य कार्यों के लिए नहीं किया जाता था, तो इसका उपयोग जिलॉग जेड80 जैसे डिजाइनों में देखे जाने वाले दर्पण रजिस्टरों के समान ही किया जा सकता था, जिसमें ई एक रुकावट के दौरान एसी के मूल्य को संग्रहीत करने के लिए एक त्वरित तरीके के रूप में कार्य करता है। ई का एक प्रमुख उद्देश्य अंतर्निहित क्रमिक आई/ओ प्रणाली के लिए एक बफर के रूप में कार्य करना था। यह एस. आई. ओ. निर्देश द्वारा संचालित था, जो बिट ने ई में सबसे कम महत्वपूर्ण बिट को एक कुंडी में स्थानांतरित कर दिया जो प्रोसेसर पर एस. ओ. यू. टी. पिन से जुड़ा था। एस. आई. ओ. को बार-बार कॉल करने पर आउटपुट में एक बार में 8-बिट ई मान के बिट्स प्रस्तुत किए जाते हैं, या एस. आई. एन. पिन से पढ़ने के लिए इस ऑपरेशन को उलट दिया जाता है। एक बार जब एक पूर्ण 8-बिट मान पढ़ा या लिखा जा चुका होता है, तो मान को ए के साथ मूल्य का आदान-प्रदान करके और फिर ए को मेमोरी में लोड या संग्रहीत करके मेमोरी में भेजा जा सकता है। ई का उपयोग एसी पर तार्किक संचालन के लिए स्रोत के रूप में भी किया जा सकता है, इसलिए उदाहरण के लिए, कोई भी सीरियल पोर्ट से एक स्थिति बाईट को पढ़ सकता है और फिर उस मान को एसी में एक मास्क के साथ पढ़ सकता है, ताकि बाहरी उपकरण से पढ़े गए विभिन्न स्थिति बिट्स की जांच की जा सके। अलग स्थिति रजिस्टर 8-बिट था। तीन सबसे कम महत्वपूर्ण-बिट, 0 से 2, सीधे पिन से जुड़े हुए थे, जो बाहरी उपकरण की स्थिति की जांच करने का एक आसान तरीका प्रदान करते थे। एक और दो पिन, सेंस ए और बी, बिट 4 और 5 से जुड़े हुए थे। सेंस ए का उपयोग आम तौर पर सर्विस इंटरप्ट के लिए किया जाता था (नीचे विवरण देखें)। इंटरप्ट को बिट 3 सेट करके, इंटरप्ट एनेबल (आई. ई.) को डिसेबल इंटरप्ट इंस्ट्रक्शन, डी. आई. एन. टी. के साथ 0 पर सेट करके और आई. ई. एन. के साथ सक्षम करके, या ए से मान को स्थानांतरित करके और वहां हेरफेर करके बंद किया जा सकता है। बिट 6 और 7 पारंपरिक अतिप्रवाह और कैरी फ्लैग थे, जैसा कि अधिकांश प्रोसेसर में देखा गया है। उस युग के अधिकांश 8-बिट माइक्रोप्रोसेसरों की तरह, एससी/एमपी 16-बिट पते और 8-बिट डेटा बस के आसपास आधारित है। पिन गिनती को कम करने के लिए, बाहरी पता बस में केवल 12 पिन होते हैं, जो एक पूर्ण 16-बिट पता बनाने के लिए डेटा बस से 4 पिन साझा करते हैं। आंतरिक रूप से, प्रोग्राम काउंटर बारह बिट चौड़ा है, और उच्च बिट में 8-बिट मूल्य की प्रतिलिपि बनाकर ऊपरी चार बिट सेट करने के लिए अलग-अलग निर्देश हैं। यह सोलह चार-किलोबाइट पृष्ठों का एक स्मृति मानचित्र प्रदान करता है, और प्रोग्राम कोड अपने स्वयं के पृष्ठ के बाहर कोड या तत्काल या पीसी-संबंधित डेटा को संदर्भित नहीं कर सकता है। इस प्रकार स्मृति को 4 के. बी. के 16 पृष्ठों के रूप में व्यवस्थित किया गया है। यह डिजाइन की जिज्ञासा की ओर ले जाता है; जब प्रोग्राम काउंटर किसी पृष्ठ के अंत तक पहुंचता है, तो यह अगले पृष्ठ पर नहीं जाता है, यह वर्तमान पृष्ठ की शुरुआत में लौटता है। यह दो-बिट निर्देश प्रारूप द्वारा और सीमित था, जिसमें ऑपकोड के लिए एक बाइट और दूसरे का उपयोग-128 और + 127 के बीच एक ऑफसेट को इंगित करने के लिए किया गया था, जिसे एक पूर्ण 16-बिट पता बनाने के लिए प्रोसेसर रजिस्टरों में एक मूल्य में जोड़ा गया था। उदाहरण के लिए, एक पता स्मृति में एक स्थान को यह कहकर संदर्भित कर सकता है कि यह प्रोग्राम काउंटर में मूल्य से + 10 स्थान है, या 16-बिट सूचकांक रजिस्टरों में से एक में मूल्य से + 10 है। उस सीमा के बाहर किसी स्थान तक पहुँचने के लिए, पते को सूचकांक रजिस्टरों में से एक में संग्रहीत किया जाना था, और फिर ऑफसेट को शून्य पर सेट करना था। चूँकि रजिस्टर 16-बिट हैं, और मूल्यों को लोड करने वाला संचायक 8-बिट है, इसलिए एक पूर्ण पता सेट करने के लिए कई निर्देशों की आवश्यकता होती है। चूंकि अनुक्रमणिकाएं संबोधन मॉडल के लिए महत्वपूर्ण थीं, एससी/एमपी में चार सूचकांक रजिस्टर शामिल थे, "सूचक रजिस्टर" पीआर0 से पीआर3 तक। PR0 प्रोग्राम काउंटर था, और आम तौर पर उपयोगकर्ता प्रोग्रामों द्वारा हेरफेर नहीं किया जाता था। परंपरा के अनुसार, पी. आर. 1 का उपयोग आम तौर पर रॉम में एक सूचक के रूप में किया जाता था, पी. आर. 2 का उपयोग रैम में किया जाता था, और पी. आर. 3 का उपयोग इंटरप्ट और सबरूटीन कॉल के दौरान एक पते को संग्रहीत करने के लिए किया जाता था। एससी/एमपी में एक ढेर नहीं था, जहां वापसी मूल्यों को आम तौर पर अधिकांश समकालीन डिजाइनों पर संग्रहीत किया जाता था। कार्यक्रमों को स्पष्ट कोड के साथ वापसी पते को सहेजना पड़ता था। चार प्राथमिक संबोधन मोड थे, पीसी-रिलेटिव, अनुक्रमित, तत्काल (जिसका अर्थ है एक ऑफसेट के विपरीत निर्देश के दूसरे बाइट में एक स्थिरांक), और स्वतः-अनुक्रमित। पी. सी.-संबंधित पता वास्तव में अनुक्रमित के समान था, सूचकांक रजिस्टर के रूप में पी. आर. 0 का चयन करना। स्वतः-अनुक्रमित का उपयोग लूप के निर्माण में सहायता के लिए किया जाता है। यदि विस्थापन शून्य से कम है, तो प्रभावी पते की सामग्री को लाने या संग्रहीत करने से पहले सूचक रजिस्टर की सामग्री विस्थापन द्वारा कम हो जाती है। यदि विस्थापन शून्य के बराबर या उससे अधिक है, तो सूचक रजिस्टर की सामग्री का उपयोग प्रभावी पते के रूप में किया जाता है, और प्रभावी पते की सामग्री को लाने या संग्रहीत करने के बाद सूचक रजिस्टर की सामग्री को विस्थापन द्वारा बढ़ाया जाता है। यह रजिस्टर में मूल्य को बदलने के लिए एक अलग निर्देश की आवश्यकता को दूर करता है, ताकि कोई व्यक्ति डेटा के एक ब्लॉक के प्रारंभिक मूल्य को एक पीआर में मेमोरी में संग्रहीत कर सके और फिर एक ही निर्देश को कॉल करके सभी डेटा के माध्यम से लूप कर सके। यदि ऑफसेट नकारात्मक है तो यह अंतिम मूल्य तक पहुँचने से पहले कमी करता है, यदि यह सकारात्मक है, तो यह वृद्धि के बाद करता है। इंटरप्ट हैंडलिंग सिस्टम में सेंस ए लाइन पर इंटरप्ट की स्वचालित हैंडलिंग शामिल है। जब एक व्यवधान प्राप्त होता है और आई. ई. उच्च (सक्षम) होता है, तो अगला निर्देश प्राप्त करना शुरू करने से पहले सिस्टम इसके बजाय एक और व्यवधान को रोकने के लिए आई. ई. को साफ़ कर देता है, और फिर पी. सी. और पी. एस. 3 में मूल्यों का आदान-प्रदान करता है। इसका प्रभाव रिटर्न पते को पी. आर. 3 में सहेजने और अगले निर्देश को पहले पी. आर. 3 में संग्रहीत इंटरप्ट हैंडलर प्रवेश बिंदु में भेजने पर पड़ता है। इस प्रणाली में व्यवधान से वापसी के बराबर शामिल नहीं है। इसे किसी अन्य एक्स. पी. पी. सी. के साथ किया जा सकता है, पी. आर. 3 में पहले से सहेजे गए पते को पी. सी. में वापस कॉपी किया जा सकता है और निष्पादन वहीं जारी रहता है जहां से उसने छोड़ा था। हालाँकि, यह PR3 में गलत पता छोड़ देता है, इंटरप्ट हैंडलर की शुरुआत नहीं, बल्कि अंत। इसे संबोधित करने के लिए, सामान्य समाधान एक्स. पी. पी. सी. को रखना है जो अंत के बजाय हैंडलर प्रवेश बिंदु के ऊपर मुख्य कोड एक निर्देश पर लौटता है। जब हैंडलर पूरा करता है, तो यह इस निर्देश पर वापस जाता है, इसलिए जब एक्स. पी. पी. सी. को कॉल किया जाता है, तो पी. सी. को उचित प्रवेश बिंदु से पहले एक स्थान पर इंगित किया जाता है। चूँकि सिस्टम किसी निर्देश को कॉल करने से पहले पीसी को बढ़ाता है, इसका मतलब है कि अगले इंटरप्ट के परिणामस्वरूप यह सही प्रवेश बिंदु पर प्रवेश करेगा। यह "एक्जिट हैंडलर" आम तौर पर इंटरप्ट को फिर से सक्षम करने के लिए आई. ई. को 1 पर रीसेट करता है। एस. सी./एम. पी. की एक विशेषता एक साझा डेज़ी-जंजीर नियंत्रण रेखा थी जो कई एस. सी./एम. पी., या अधिक सामान्य रूप से एक एकल एस. सी./एम. पी. और संबंधित डायरेक्ट मेमोरी एक्सेस (डी. एम. ए.) नियंत्रकों को एकल मुख्य स्मृति तक पहुंच साझा करने की अनुमति देती थी। जब बस में कोई भी चिप मेमोरी तक पहुंच चाहता है, तो यह ई. एन. ओ. यू. टी. पिन को ऊंचा कर देता है, जिससे दूसरे चिप के ई. एन. आई. एन. पिन को संकेत मिलता है कि उन्हें बस को छोड़ना होगा। अधिकांश अन्य प्रोसेसरों के साथ, इसके लिए आम तौर पर बोर्ड डिजाइनरों द्वारा सीपीयू को उसी छोर तक रोकने के लिए लागू किए गए बाहरी तर्क की आवश्यकता होती है, अक्सर आंतरिक निर्देश समय के कारण कुछ जटिलता के साथ जो बाहरी सर्किट को दिखाई नहीं देता था। एससी/एमपी में यह सब आंतरिक रूप से शामिल था इसलिए इस सुविधा को लागू करने के लिए सर्किट बोर्ड पर एक ही लाइन की आवश्यकता थी। मूल विचार एक एस. सी./एम. पी., एक या अधिक डी. एम. ए. नियंत्रक और एक साझा स्मृति वाले माइक्रोकंट्रोलर जैसे अनुप्रयोगों के निर्माण को आसान बनाना था। विशेष रूप से एक समग्र प्रणाली के संदर्भ में यथासंभव कम लागत के लिए डिज़ाइन किया गया, एससी/एमपी की लागत को कम करने की इच्छा ने बिट-सीरियल एएलयू के बारे में निर्णय लिया और एक अलग यूएआरटी की आवश्यकता को समाप्त करने के लिए सीरियल इनपुट/आउटपुट लाइनों को शामिल किया (इस सुविधा को बाद में एससी/एमपी III में हटा दिया गया था)। ओसबोर्न की प्रणाली की समीक्षा में कहा गया कि यह "किसी भी बहु-प्रोसेसर अनुप्रयोग में पसंद का माइक्रोप्रोसेसर" था, लेकिन यह बाजार सीमित प्रतीत होता है क्योंकि बिक्री कभी भी विशेष रूप से मजबूत नहीं थी। असामान्य विशेषताएँ एससी/एमपी में जंप-टू-सबरूटीन निर्देश शामिल नहीं था। इसके बजाय, असेंबलर भाषा में जेएस मैक्रो शामिल था जिसने इस कार्यक्षमता को लागू करने के लिए निर्देशों की एक श्रृंखला लिखी। मैक्रो ने पते के उच्च बाईट को एसी में लोड किया, और फिर इसे एक चयनित सूचक रजिस्टर के उच्च बाईट पर ले जाने के लिए एक्सपीएएच को बुलाया। इसके बाद इसने XPAL का उपयोग करते हुए लो बाइट के लिए इसे दोहराया। इसके बाद इसने पी. आर. से पी. सी. में परिणामी 16-बिट मूल्य को स्थानांतरित करने के लिए एक्स. पी. पी. सी. को बुलाया। चूँकि एक्स. पी. पी. सी. दो मूल्यों का आदान-प्रदान करता है, इस प्रकार पी. सी. का वर्तमान मूल्य चयनित पी. आर. में संग्रहीत किया जाता है, और मूल्य को वापस कॉपी करने के लिए एकल एक्स. पी. पी. सी. के साथ रिटर्न-फ्रॉम-सबरूटीन को लागू किया जा सकता है। एससी/एमपी निर्देश प्राप्त करने से पहले प्रोग्राम काउंटर को बढ़ाता है, ताकि रीसेट करने पर यह वास्तव में स्थान 0001 से निर्देशों को निष्पादित करना शुरू कर दे। विस्थापन की गणना के लिए भी इसे ध्यान में रखने की आवश्यकता है, क्योंकि ऑफसेट को प्रोग्राम काउंटर में जोड़ा जाएगा जो अभी भी विस्थापन के स्थान की ओर इशारा करेगा न कि अगले निर्देश की ओर। इस प्रणाली में एक विलंब निर्देश, डी. एल. वाई. शामिल था, जिसमें एक एकल पैरामीटर, पी. लिया गया था, यह 13 + (2 x पी) + (2 9 x पी) + (2 x एसी) सूक्ष्म चक्रों की अवधि के लिए संचालन बंद कर देता था, जो यह एसी में मूल्य को लगातार घटाकर करता था जब तक कि यह शून्य तक नहीं पहुंच जाता। इसका मतलब था कि यह 13 और 131,593 चक्रों के बीच देरी पैदा कर सकता है। यह आम तौर पर सीरियल पिन के साथ उपयोग किया जाता था; एक प्रोग्राम एसी में उस समय के मान को निर्धारित कर सकता है जब एक बिट को दी गई गति से प्रसारित करने में समय लगता है और फिर यह देखने के लिए कि क्या यह अगले के लिए तैयार है, फ्लैग पिन में से एक के मूल्य की जांच कर सकता है। प्रोसेसर समय के बारे में विशेष रूप से अछूता नहीं था, और कम गति वाले अनुप्रयोगों में इसे क्रिस्टल ऑसिलेटर का उपयोग करने की आवश्यकता नहीं थी और इसके बजाय इसे एक साधारण संधारित्र से बदला जा सकता था। कार्यान्वयन आई. एस. पी.-8ए/500 एस. सी./एम. पी.-1 1 मेगाहर्ट्ज पर घड़ी, पहला कार्यान्वयन (पी. चैनल एम. ओ. एस. प्रौद्योगिकी) आई. एन. एस. 8060 आई. एस. पी.-8ए/600 एस. सी./एम. पी.-2 4 मेगाहर्ट्ज पर घड़ी (आंतरिक रूप से 2 मेगाहर्ट्ज) पहला एन. चैनल एम. ओ. एस. संस्करण (एकल + 5वी आपूर्ति) आई. एन. एस. 807x एस. सी./एम. पी.-3 4 मेगाहर्ट्ज (आंतरिक रूप से 2 मेगाहर्ट्ज) पर घड़ी में 4 के. बी. रोम (वैकल्पिक ऑनबोर्ड बेसिक (एन. आई. बी. एल.) उपयोग एस. सी./एम. पी. का उपयोग साइंस ऑफ कैम्ब्रिज (बाद में सिनक्लेयर रिसर्च लिमिटेड) द्वारा निर्मित एकल बोर्ड माइक्रोकंट्रोलर के आधार के रूप में भी किया जाता था जिसे एम. के. 14 कहा जाता था। मोलीन आईएल (बाद में कोन, इंक द्वारा खरीदा गया) की मोंटगोमेरी लिफ्ट कंपनी ने 1975 में जारी अपने पहले माइक्रो प्रोसेसर आधारित लिफ्ट नियंत्रक के आधार के रूप में एससी/एमपी का उपयोग किया। इनमें से कई इकाइयाँ अभी भी यू. एस. ए. की इमारतों में चल रही हैं। नोट्स संदर्भ उद्धरण ग्रंथ सूची बाहरी लिंक अधिक जानकारी और एमुलेटर राष्ट्रीय अर्धचालक डेटाशीट एक एमुलेटर एम. के. 14 मूल मैनुअल सहित एस. सी./एम. पी. के बारे में जानकारी-जिसमें आई. एस. ए. विवरण ए. एस. सी./एम. पी. II एकल बोर्ड एम. सी. यू. एन. आई. बी. एल. बेसिक के साथ एन. आई. बी. एल. 807एक्स डेटाशीट एस. सी./एम. पी. विकास प्रणाली में सेंटर फॉर कम्प्यूटिंग हिस्ट्री में विभिन्न आई. एन. एस. 807x श्रृंखला पी. डी. एफ. फाइलें हाथ से तार वाले आई. एन. एस. 8073 एकल-बोर्ड कंप्यूटर स्रोत कोड एस. सी./एम. पी. 8-बिट माइक्रोप्रोसेसरों की असेंबली की जानकारी के साथ।