COP400
सी. ओ. पी. 400 या सी. ओ. पी. II एक 4-बिट माइक्रोकंट्रोलर परिवार है जिसे 1977 में राष्ट्रीय अर्धचालक द्वारा उनके मूल पी. एम. ओ. एस. सी. ओ. पी. माइक्रोकंट्रोलर के अनुवर्ती उत्पाद के रूप में पेश किया गया था। सी. ओ. पी. 400 परिवार के सदस्य पूर्ण माइक्रोकम्प्यूटर होते हैं जिनमें आंतरिक समय, तर्क, आर. ओ. एम., आर. ए. एम. और समर्पित नियंत्रकों को लागू करने के लिए आवश्यक आई/ओ होता है। कुछ COP400 उपकरणों को वेस्टर्न डिजिटल द्वारा WD4200 परिवार के रूप में दूसरा स्रोत दिया गया था। सोवियत संघ में कई सी. ओ. पी. 400 माइक्रोकंट्रोलरों का निर्माण 1820 श्रृंखला के रूप में किया गया था। COP402 पदनाम के साथ KR1820VE1)। सी. ओ. पी. 400 को सी. एम. ओ. एस. या एन-चैनल सिलिकॉन गेट एम. ओ. एस. प्रौद्योगिकी में लागू किया गया है। यह आम तौर पर 24-या 28-पिन डी. आई. पी. पैकेजों में पैक किया जाता था। तेज़ परिवार के सदस्यों का निर्देश चक्र समय 4 माइक्रोसेकंड है। COP400 परिवार ने कई मेमोरी और पिनआउट कॉन्फ़िगरेशन की पेशकश की। सीओपी400-परिवार चिप्स का उपयोग करने वाले उल्लेखनीय उत्पादों में एप्पल लिसा, मिल्टन ब्रैडली और मैटल इलेक्ट्रॉनिक गेम, कोलेको हेड टू हेड बास्केटबॉल, ग्रंडी न्यूब्रेन और अन्य शामिल हैं। मेमोरी सीओपी400 रोम और रैम के लिए अलग-अलग मेमोरी स्पेस का उपयोग करता है। रोम पते अधिकतम 11-बिट होते हैं, जबकि डेटा पते अधिकतम 7-बिट होते हैं। रॉम प्रोग्राम मेमोरी में 512,1024 या 2048 × 8-बिट रॉम होता है। रॉम बाइट्स प्रोग्राम निर्देश, प्रोग्राम डेटा या जंप एड्रेस पॉइंटर्स हो सकते हैं। जे. पी. और जे. एस. आर. पी. निर्देशों से जुड़ी विशेष विशेषताओं के कारण, रॉम को अक्सर 64 बाइट्स के पृष्ठों में व्यवस्थित माना जाना चाहिए। इसके अलावा, एल. क्यू. आई. डी. और जे. आई. डी. निर्देशों द्वारा किए गए अद्वितीय संचालन के कारण, रोम पृष्ठों को कभी-कभी 256 बाइट्स के ब्लॉकों में व्यवस्थित माना जाना चाहिए। रैम डेटा मेमोरी में 32,64, या 128 × 4-बिट रैम होती है, जिसे 16 4-बिट अंकों के कई डेटा रजिस्टरों के रूप में व्यवस्थित किया जाता है। रैम एड्रेसिंग को 6-या 7-बिट बी रजिस्टर द्वारा लागू किया जाता है जिसका उपयोग सूचक के रूप में किया जाता है। बी रजिस्टर के ऊपरी 2 या 3 बिट (बी. आर.) 4 या 8 डेटा रजिस्टरों में से एक का चयन करते हैं और निचले 4 बिट (बी. डी.) चयनित डेटा रजिस्टर में 16 4-बिट अंकों में से एक का चयन करते हैं। बी रजिस्टर द्वारा इंगित रैम अंक की 4-बिट सामग्री को आमतौर पर ए रजिस्टर में लोड किया जाता है, उसके साथ आदान-प्रदान किया जाता है या उस पर काम किया जाता है। सीपीयू रजिस्टर्स आरेखमे देखायल गेल रजिस्टर विन्यास अधिकतम रोम (2048 × 8 बिट) आ रैम (128 × 4 बिट) वला सीओपी400 परिवारक सदस्य सभक लेल छैक। केवल 512 या 1024 बाइट्स रोम वाले परिवार के सदस्यों के पास केवल 9-या 10-बिट पीसी होगा। जिनके पास 64 या 32 स्थान की रैम होगी, उनके पास केवल 2-बिट बी. आर. रजिस्टर होगा। कुछ निचले स्तर के परिवार के सदस्य एससी स्टैक रजिस्टर को छोड़ देते हैं। 4-बिट ए रजिस्टर (संचायक) अधिकांश अंकगणितीय, तर्क और डेटा मेमोरी अभिगम संचालन के लिए स्रोत और गंतव्य रजिस्टर है। इसका उपयोग बी रजिस्टर के बीआर और बीडी भागों को लोड करने, 8-बिट क्यू लैच डेटा के 4 बिट्स को लोड करने और इनपुट करने, 8-बिट एल पोर्ट के 4 बिट्स को इनपुट करने और एसआईओ रजिस्टर के साथ डेटा एक्सचेंज करने के लिए भी किया जा सकता है। एक 4-बिट ए. एल. यू. अंकगणितीय और तर्क कार्यों को करता है, ए. ए. एस. सी. और सी. ए. एस. सी. संचालन आउटपुट में परिणामों को संग्रहीत करता है जो 1-बिट सी रजिस्टर तक ले जाता है, जिसे अक्सर अंकगणितीय अतिप्रवाह को इंगित करने के लिए नियोजित किया जाता है। सभी रॉम संबोधन 9-, 10-, या 11-बिट पीसी रजिस्टर के माध्यम से पूरा किया जाता है। इसका द्विआधारी मान रॉम में निहित बाइट्स में से एक का चयन करता है, आमतौर पर अगला प्रोग्राम निर्देश। पीसी का मूल्य स्वचालित रूप से वर्तमान निर्देश के निष्पादन से पहले अगले अनुक्रमिक रोम स्थान को इंगित करने के लिए 1 से बढ़ जाता है, जब तक कि वर्तमान निर्देश नियंत्रण निर्देश का हस्तांतरण न हो। बाद के मामले में, पीसी को नियंत्रण संचालन के हस्तांतरण को लागू करने के लिए उपयुक्त गैर-अनुक्रमिक मूल्य के साथ लोड किया जाता है। पीसी स्वचालित रूप से अगले 64 बाईट पृष्ठ या प्रोग्राम मेमोरी के 256 बाईट ब्लॉक को इंगित करने के लिए लुढ़क जाता है। पीसी के ऊपरी 1,2 या 3 बिट का उपयोग जे. आई. डी. और एल. क्यू. आई. डी. निर्देशों में भी किया जाता है। सबरूटीन के तीन स्तर सबरूटीन सेव रजिस्टर, एसए, एसबी और एससी द्वारा लागू किए जाते हैं, जो एक लास्ट-इन, फर्स्ट-आउट (एलआईएफओ) हार्डवेयर सबरूटीन स्टैक प्रदान करते हैं। कुछ कार्यान्वयनों में एससी नहीं है। आई/ओ रजिस्टर और पोर्ट सीओपी400 आई/ओ उपकरणों से जुड़े कोई पोर्ट नंबर या मेमोरी पते नहीं हैं। सभी भौतिक आई/ओ रजिस्टरों और बंदरगाहों को सी. ओ. पी. 400 असेंबली भाषा द्वारा सीधे नाम से संदर्भित किया जाता है। आधार रेखा लगभग सभी सी. ओ. पी. 400 परिवार के उपकरण निम्नलिखित को लागू करते हैंः चार सामान्य-उद्देश्य इनपुट, आई. एन. 0-आई. एन. 3, प्रदान किए जाते हैं। 24-पिन पैकेज में IN0-IN3 नहीं होता है। डी रजिस्टर चार सामान्य प्रयोजन आउटपुट प्रदान करता है और बी. डी. की 4-बिट सामग्री के लिए गंतव्य रजिस्टर है। डी रजिस्टर बी रजिस्टर द्वारा इंगित रैम से जुड़े 16 बाहरी उपकरणों को सिंक्रनाइज़ करने के लिए उपयोगी है। जी रजिस्टर में 4 सामान्य प्रयोजन द्विदिश आई/ओ पोर्ट हैं। क्यू रजिस्टर एक आंतरिक, जालीदार, 8-बिट रजिस्टर है जिसका उपयोग रैम (बी) और ए से या उससे लोड किए गए डेटा के साथ-साथ रोम से 8-बिट प्रोग्राम डेटा को रखने के लिए किया जाता है। इसकी सामग्री एल पोर्ट में आउटपुट होती है जब एल ड्राइवर प्रोग्राम नियंत्रण के तहत सक्षम होते हैं। इसके अलावा, एल की सामग्री को सीधे ए और रैम (बी) में पढ़ा जा सकता है। एस. आई. ओ. रजिस्टर 4-बिट सीरियल-इन/सीरियल-आउट शिफ्ट रजिस्टर के रूप में या ई. एन. रजिस्टर की सामग्री के आधार पर द्विआधारी काउंटर के रूप में कार्य करता है। इसकी सामग्री को ए के साथ आदान-प्रदान किया जा सकता है, जिससे यह एक निरंतर क्रमिक डेटा स्ट्रीम को इनपुट या आउटपुट कर सकता है। ई. एन. रजिस्टर एल. ई. आई. निर्देश द्वारा प्रोग्राम नियंत्रण के तहत लोड किया गया एक आंतरिक 4-बिट रजिस्टर है। इस रजिस्टर के प्रत्येक बिट की स्थिति ई. एन. रजिस्टर के प्रत्येक बिट से जुड़ी विशेष विशेषता का चयन या अपसरण करती है। हालांकि सॉफ्टवेयर के साथ सीधे सुलभ नहीं है, 10-बिट आधार समय काउंटर निर्देश चक्र आवृत्ति को 1,024 से विभाजित करता है, जो अतिप्रवाह पर एक पल्स प्रदान करता है। एस. के. टी. निर्देश इस पल्स की घटना के लिए परीक्षण करता है, जिससे प्रोग्रामर को टाइमर दिनचर्या को लागू करने की अनुमति मिलती है। कुछ निम्न-स्तरीय सी. ओ. पी. 400 परिवार के सदस्यों के पास इस समय आधार काउंटर नहीं है और न ही एस. के. टी. निर्देश है। कुछ उच्च-स्तरीय COP400 उपकरण टाइमर के ऊपरी आठ बिट्स को पढ़ और लिख सकते हैं। उच्च अंत COP400 परिवार के कुछ उच्च अंत सदस्य हैं जैसे कि COP440 और COP2440 जिनमें 40-पिन हैं। इनमें अतिरिक्त रजिस्टर और पोर्ट होते हैंः आर पोर्ट एक अतिरिक्त आठ-बिट द्विदिशात्मक आई/ओ पोर्ट है, जो क्यू के समान है। आर पोर्ट में लैच और ड्राइवर होते हैं। आउटपुट होने वाले डेटा को आर रजिस्टर में रखा जाता है। इनपुट पथ पिन से संचायक और रैम तक है। आर पिन पर इनपुट डेटा को किसी भी बाहरी संकेत द्वारा आर रजिस्टर में नहीं रखा जाता है। यह अप्रत्यक्ष रूप से कार्यक्रम द्वारा किया जाना चाहिए। एल ड्राइवरों की तरह आर ड्राइवरों को उच्च प्रतिबाधा स्थिति में रखा जा सकता है। इन उपकरणों में एक अतिरिक्त द्विदिश चार-बिट पोर्ट, एच पोर्ट होता है। एच पोर्ट अनिवार्य रूप से जी पोर्ट का एक डुप्लिकेट है सिवाय इसके कि एच का सीधे परीक्षण नहीं किया जा सकता है। चार अतिरिक्त निवेश, आई. एन. 4-आई. एन. 7, प्रदान किए जाते हैं। उन्हें आईएन0-आईएन3 की तरह नहीं पढ़ा जा सकता है लेकिन वे अन्य उद्देश्यों के लिए हैं। एन4-आई. एन. 5 इंटरप्ट स्रोतों का चयन करें। आईएन6 टी काउंटर के स्रोत का चयन करता है। आईएन7 आर पोर्ट के आउटपुट ड्राइवरों को नियंत्रित करता है। निर्देश सेट सीओपी400 परिवार को बहुत ही संक्षिप्त कोड के लिए डिज़ाइन किया गया है। सबसे अधिक उपयोग किए जाने वाले निर्देश एक बाइट हैं। कुछ मामलों में दो बाईट निर्देशों के विशेष एक-बाईट रूप होते हैं। ऑब्जेक्ट कोड को और अधिक संक्षिप्त बनाने के लिए उपयोग की जाने वाली कुछ विशेषताएँ हैंः एल. बी. आई. निर्देश सात-बिट बी रजिस्टर को तत्काल मूल्य के साथ लोड करता है। सामान्य-रूप निर्देश में दो बाइट्स लगते हैं। एल. बी. आई. का एक-बिट रूप है जो केवल बी. आर. को 0,1,2 और 3 पर सेट कर सकता है और केवल बी. डी. को 9,10,11,12,13,14,15 और 0 (दशमलव) पर सेट कर सकता है। एकल बाईट एल. बी. आई. केवल 32 रैम स्थानों तक पहुँच सकता है। कई एल. बी. आई. निर्देशों को श्रृंखला में रखा जा सकता है। केवल पहले एल. बी. आई. को निष्पादित किया जाएगा। बाद के एल. बी. आई. निर्देश एन. ओ. पी. के रूप में निष्पादित होंगे। यह एक साझा दिनचर्या के लिए अलग-अलग शुरुआती पतों के साथ कई प्रवेश बिंदुओं की अनुमति देता है। जे. एस. आर., सामान्य सबरूटीन शाखा रूप में, दो बाइट्स होते हैं और किसी भी स्मृति स्थान तक सीधे पहुँच सकते हैं। जे. एस. आर. पी. सबरूटीन शाखा का एक एकल बाईट रूप है जो केवल तीसरे 64-बाईट पृष्ठ में स्थानों तक पहुँच सकता है। इस पृष्ठ को शून्य से क्रमांकित उप-नियमित पृष्ठ या पृष्ठ 2 कहा जाता है। जे. एस. आर. पी. को पृष्ठ 2 या 3 के अंदर से कूटबद्ध नहीं किया जा सकता है। जे. एम. पी., सामान्य शाखा रूप में, दो बाइट्स होते हैं और किसी भी स्मृति स्थान तक सीधे पहुँच सकते हैं। जेपी शाखा का एक एकल बाईट रूप है जो वर्तमान 64-बाईट पृष्ठ में किसी भी स्थान तक पहुँच सकता है। पीसी के ऊपरी भाग अपरिवर्तित रहते हैं। यदि जे. पी. निर्देश पृष्ठ 2 या 3 के भीतर निष्पादित किया जाता है, तो यह पृष्ठ 2 और 3 में 128 पतों में से किसी को भी प्राप्त कर सकता है। यह पृष्ठ 2 में एक बिट जे. एस. आर. पी. प्रविष्टि बिंदु बनाने के लिए उपयोगी है जो फिर एक बिट जे. पी. के साथ पृष्ठ 3 पर एक सबरूटीन में शाखा बना सकता है। बी रजिस्टर का उपयोग कम ओवरहेड के साथ चार रैम स्ट्रिंग्स तक इंगित करने के लिए किया जा सकता है। एल. डी., एक्स., एक्स. आई. एस. और एक्स. डी. एस. स्मृति अभिगम निर्देश दो-बिट तत्काल के साथ एक्सक्लूसिव या बी. आर. के निचले दो बिट्स कर सकते हैं। यह बी (बी. आर.) के रजिस्टर भाग को एक ही अंक (बी. डी.) पते को साझा करने वाले अन्य अंकों के तारों में से एक पर फ़्लिप करने की अनुमति देता है। बी. डी. रजिस्टर भाग का उपयोग मेमोरी पॉइंटर और लूप काउंटर के रूप में एक साथ किया जा सकता है। XIS निर्देश छोड़ देगा यदि Bd, वृद्धि के बाद, लूप के माध्यम से गिरते हुए, शून्य तक बह जाता है। इसी तरह एक्स. डी. एस. निर्देश छोड़ दिया जाएगा यदि बी. डी., घटाने के बाद, 15 (दशमलव) तक नीचे चला जाता है। उदाहरण कोड यह उदाहरण कोड निर्देश सेट पर कई स्थान बचत सुविधाओं को प्रदर्शित करता हैः एकल-बिट एल. बी. आई. निर्देश श्रृंखला में कई एल. बी. आई. निर्देश कई प्रवेश बिंदु एकल बाइट जे. पी. एल. डी. एक्स. ओ. आर. आई. बी. आर. बनाते हैं ताकि बी. को गंतव्य पर फ़्लिप किया जा सके और एक्स. आई. एस. में स्किप फ़ंक्शन के माध्यम से बी. डी. साझा करने वाले सूचक और लूप काउंटर कर्तव्यों पर बी. को वापस फ़्लिप किया जा सके और सभी सी. ओ. पी. 400 उपकरण जिनमें 28 पिन या उससे अधिक हैं, एक एकल व्यवधान का समर्थन करते हैं। आई. एन. 1 लाइन का उपयोग इंटरप्ट इनपुट के रूप में किया जाता है। इंटरप्ट को एल. ई. आई. निर्देश के साथ ई. एन. रजिस्टर के बिट 1 को 1 पर सेट करके सक्षम किया जाता है। आई. एन. 1 पर कम से कम दो निर्देश चक्रों की धीमी गति के जवाब में, जे. पी. जैसे नियंत्रण निर्देशों के सभी हस्तांतरण पूरे हो जाते हैं और सभी अनुक्रमिक एल. बी. आई. निर्देशों को निष्पादित किया जाता है। पी. सी. को फिर सबरूटीन स्टैक पर धकेल दिया जाता है और नियंत्रण को 0xFF पते पर इंटरप्ट हैंडलर को स्थानांतरित कर दिया जाता है। इंटरप्ट सर्विस रूटीन में किसी भी सबरूटीन को नहीं बुलाया जा सकता है। हालांकि अधिकांश COP400 उपकरणों को निम्न-अंत अनुप्रयोगों पर लक्षित किया गया था, वास्तुकला के कई विस्तार अधिक मांग वाले अनुप्रयोगों को संबोधित करने के लिए बनाए गए थे। 1985 तक कुछ उपकरणों में दोहरे सीपीयू, रैम में एक गहरा ढेर और बड़े पते वाले स्थान जोड़े गए थे। 1981 में राष्ट्रीय अर्धचालक द्वारा सीओपी400 के दोहरे सीपीयू "दोहरे सीपीयू" संस्करणों की घोषणा की गई थी। इन एकल-चिप बैरल प्रोसेसरों में दो स्पष्ट रूप से स्वतंत्र सीपीयू होते हैं जो निर्देश, स्मृति और अधिकांश आईओ उपकरणों को साझा करते हैं। वास्तव में, सीपीयू पूरी तरह से स्वतंत्र नहीं हैं और हाइपर-थ्रेडिंग टेक्नोलॉजी (एचटीटी) के साथ इंटेल प्रोसेसर के समान हार्डवेयर संसाधनों को साझा करते हैं। एचटीटी की तरह, दोहरा सीपीयू संस्करण प्रोसेसर के कुछ वर्गों को डुप्लिकेट करके काम करता है-जो वास्तुशिल्प स्थिति को संग्रहीत करते हैं-लेकिन एएलयू, बसों और मेमोरी जैसे मुख्य निष्पादन संसाधनों को डुप्लिकेट नहीं करते हैं। दो आभासी प्रोसेसरों में से प्रत्येक के लिए अलग-अलग वास्तुशिल्प अवस्थाएँ डुप्लिकेट ए (संचायक), बी (सूचक रजिस्टर), सी (कैरी फ्लैग), एन (स्टैक पॉइंटर्स) और पीसी (प्रोग्राम काउंटर) के साथ स्थापित की गई हैं। जब रीसेट को निष्क्रिय कर दिया जाता है, तो दोनों प्रोसेसर स्थान 0 से शुरू होते हैं जिसमें सी. एल. आर. ए. निर्देश होता है, फिर एक प्रोसेसर स्थान 401 (हेक्स) पर कूदता है और बाद में दूसरे प्रोसेसर द्वारा स्थान 1 को निष्पादित करने के लिए एक निर्देश चक्र का पालन करता है। इसके बाद प्रोसेसर बारी-बारी से प्रत्येक कोड का एक-एक बिट निष्पादित करेंगे। अधिकतम घड़ी आवृत्ति पर, प्रत्येक प्रोसेसर के लिए निर्देश निष्पादन समय (एकल बाईट निर्देश) 4 माइक्रोसेकंड है, इसलिए, किसी भी प्रोसेसर के लिए निर्देश चक्र समय उस राशि का दोगुना है, 8 माइक्रोसेकंड। कुछ दोहरे सीपीयू संस्करणों में 40-पिन सीओपी2440एन, 28-पिन सीओपी2441एन और 24-पिन सीओपी2442एन शामिल हैं। रैम में रिटर्न स्टैक पहले के COP400 उपकरणों में दो या तीन स्तर का समर्पित हार्डवेयर रिटर्न स्टैक शामिल था। बाद के उपकरणों जैसे कि सीओपी440 में 2-बिट स्टैक पॉइंटर और रैम के साथ 4-स्तरीय रिटर्न स्टैक लागू किया गया है। दोहरे सीपीयू संस्करणों में दो अलग-अलग 4-स्तरीय रिटर्न स्टैक होते हैं जिन्हें दो 2-बिट स्टैक पॉइंटर्स और दो अलग-अलग रैम क्षेत्रों के साथ लागू किया जाता है। बड़ा पता स्थान मूल COP400 निर्देश सेट 11-बिट (2,048 बाइट्स) तक के ROM पतों का समर्थन करता है, जबकि डेटा पते 7-बिट अधिकतम (128 स्थान) हैं। तथाकथित समूह 4 उपकरणों ने अधिक पता बिट्स के साथ तीन-बिट जे. एम. पी., जे. एस. आर. और एल. बी. आई. निर्देशों को जोड़कर स्मृति सीमा को बढ़ाया। ये अधिकतम 15-बिट (32,768 बाइट्स) के रोम पते का समर्थन करते हैं, जबकि डेटा पते अधिकतम 9-बिट (512 स्थान) हैं। इन निर्देशों का समर्थन करने वाले उपकरणों में COP408, COP484, COP485, C0P409 शामिल हैं। यह स्पष्ट नहीं है कि इनमें से किसी भी समूह 4 उपकरण का उत्पादन किया गया था या नहीं। ऐप्पल लिसा ने कीबोर्ड, माउस, आरटीसी और सॉफ्ट पावर स्विच को नियंत्रित करने के लिए एक सीओपी 421 का उपयोग किया। एक दूसरा COP421 विजेट हार्ड डिस्क ड्राइव के स्पिंडल मोटर को नियंत्रित करता है। कई निर्माताओं ने अपने शुरुआती इलेक्ट्रॉनिक खेलों में COP400 का उपयोग कियाः COP410 और COP411,512 बाईट ROM, 32 x 4 RAM: मैटेल के फंट्रोनिक्स जैक, रेड लाइट ग्रीन लाइट, टैग और प्लस वन। COP420 और COP421,1024 बाईट ROM, 64 x 4 RAM: मिल्टन ब्रैडली लाइटफ़ाइट, आइंस्टीन और इलेक्ट्रॉनिक बैटलशिप 1982। कोलेको हेड टू हेड बास्केटबॉल। नेशनल सेमीकंडक्टर क्विज किड रेसर। COP444,2048 बाईट ROM, 128 x 4 RAM: एंटेक्स स्पेस इनवेडर। मैटल डल्ला $। वेस्टर्न डिजिटल ने अपनी दिन की घड़ी के डब्ल्यू. डी. 2412 समय के आधार के रूप में डब्ल्यू. डी. 4200 (सी. ओ. पी. 420) का उपयोग किया। ग्रंडी न्यूब्रेन कंप्यूटर अपने कीबोर्ड, टेप I/O और इसके अंतर्निर्मित 16 वर्ण VF अल्फान्यूमेरिक प्रदर्शन को प्रबंधित करने के लिए एक COP420 का उपयोग करता है। एमुलेटर सी. ओ. पी. 400 परिवार के लिए एक ओपन-सोर्स एम. ए. एम. ई. एमुलेटर है और कई हाथ से पकड़े जाने वाले खेल और विशेष कैलकुलेटर हैं। राष्ट्रीय अर्धचालक सीओपी8 संदर्भ माइक्रोकंट्रोलर भी देखें।