माइक्रोसीक्वेंसर

कंप्यूटर आर्किटेक्चर और अभियांत्रिकी, सीक्वेंसर या माइक्रोसीक्वेंसर नियंत्रण स्टोर के माइक्रोप्रोग्राम के माध्यम से चरण उठाने के लिए उपयोग किए जाने वाले एड्रैस उत्पन्न करता है। इस प्रकार से इसका उपयोग सेंट्रल प्रोसेसिंग यूनिट की नियंत्रण इकाई के भाग के रूप में या एड्रेस रेंज के लिए स्टैंड-अलोन जनरेटर के रूप में किया जाता है।

सामान्यतः एड्रैस काउंटर के कुछ संयोजन, माइक्रोअनुदेश से क्षेत्र और निर्देश रजिस्टर के कुछ उप समूह द्वारा उत्पन्न होते हैं। विशिष्ट स्थिति के लिए काउंटर का उपयोग किया जाता है, जिसे निष्पादित करने के लिए अगला सूक्ष्म निर्देश होता है। माइक्रोअनुदेश से क्षेत्र का उपयोग जंप, या अन्य तर्क के लिए किया जाता है।

चूंकि सीपीयू निर्देश समूह को लागू करते हैं, इसलिए सीपीयू के निर्देशों को निष्पादित करने के लिए माइक्रोअनुदेश के समूह का चयन करने के लिए निर्देश के बिट्स को प्रत्यक्षतः सीक्वेंसर में डीकोड करने में सक्षम होना बहुत उपयोगी है।

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

अतः पहले एकीकृत माइक्रोकोडेड प्रोसेसर में से एक ऐसा आईबीएम पाम प्रोसेसर था, जो माइक्रोकोड में प्रोसेसर के सभी निर्देशों का अनुकरण करता था, और आईबीएम 5100 पर उपयोग किया गया था, जो पहले पर्सनल कंप्यूटरों में से एक था।

इसी प्रकार के ओपन-सोर्स्ड माइक्रोसेक्वेंसर-आधारित प्रोसेसर के वर्तमान उदाहरण माइक्रोकोर लैब्स एमसीएल 86, एमसीएल 51, और एमसीएल 65 कोर हैं, जो पूर्ण रूप से माइक्रोकोड में इंटेल 8086/8088, 8051 और एमओएस 6502 निर्देश समूह का अनुकरण करते हैं।

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


 * शाखा (कंप्यूटर विज्ञान) माइक्रोअनुदेश सप्रतिबंध या बिना प्रतिबंध अगले निर्देश का एड्रैस निर्दिष्ट करता है। लॉजिकल इंडेक्स (IX) विकल्प 16-बिट लिंक रजिस्टर को शाखा एड्रैस में तार्किक विच्छेद का कारण बनता है, इस प्रकार सरल अनुक्रमित शाखा क्षमता प्रदान करता है।


 * सभी अंकगणित/तार्किक निर्देश जंप (जे) संशोधक की अनुमति देते हैं, जो निष्पादन को लिंक रजिस्टर द्वारा संबोधित माइक्रोअनुदेश पर पुनर्निर्देशित करता है।


 * सभी अंकगणित/तार्किक निर्देश डिक्रीमेंट काउंटर (डी) और जंप (जे) संशोधक दोनों की अनुमति देते हैं। इस स्थिति में, 8-बिट लूप काउंटर रजिस्टर कम हो गया है। अतः यदि यह शून्य नहीं है, तो शाखा को लिंक रजिस्टर की सामग्री में ले जाया जाता है। यदि यह शून्य है, तो निष्पादन अगले निर्देश के साथ जारी रहता है।

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

जटिल उदाहरण
आईबीएम सिस्टम/360 1964 में प्रस्तुत किए गए संगत कंप्यूटरों की श्रृंखला थी, जिनमें से कई माइक्रोप्रोग्राम किए गए थे। इस प्रकार से आईबीएम सिस्टम/360 मॉडल 40 या सिस्टम/360 मॉडल 40 जटिल माइक्रोसीक्वेंसिंग वाली माइक्रोप्रोग्राम्ड मशीन का स्पष्ट उदाहरण है।

अतः माइक्रोस्टोर में 4,096 56-बिट माइक्रोनिर्देश होते हैं जो क्षैतिज माइक्रोप्रोग्रामिंग शैली में कार्य करते हैं। स्टोर को 12-बिट रीड-ओनली एड्रेस रजिस्टर (ROAR) द्वारा संबोधित किया जाता है। S/360 आर्किटेक्चर में अधिकांश रजिस्टरों के विपरीत, ROAR में बिट्स को दाईं ओर बिट 0 से बाईं ओर बिट 11 तक क्रमांकित किया जाता है। ++ | ROAR ++ 11             0 मॉडल 40 माइक्रो अनुदेश का कोई क्रमिक निष्पादन नहीं करता है और इसलिए माइक्रोसीक्वेंसर वस्तुतः पारंपरिक अर्थों में शाखा नहीं करता है। इसके अतिरिक्त, प्रत्येक माइक्रोनिर्देश निष्पादित होने वाले अगले निर्देश का एड्रैस निर्दिष्ट करता है। इस प्रकार से माइक्रोअनुदेश में चार क्षेत्र नवीन एड्रैस में योगदान करते हैं।


 * सीए, 4 बिट्स: अन्य क्षेत्र के आधार पर, अगले एड्रैस का भाग।
 * सीबी, 4 बिट: अगले एड्रैस का बिट 1 निर्धारित करता है।
 * CC, 4 बिट: अगले एड्रैस का बिट 0 निर्धारित करता है।
 * सीडी, 2 बिट्स: नियंत्रित करता है कि अगला एड्रैस कैसे एकत्रित किया जाता है (अतिरिक्त जब सीबी क्षेत्र में 15 हो)।

अतः इस प्रकार से इन क्षेत्रों के मूलतः तीन संयोजन या प्रारूप हैं।

कार्यात्मक शाखा प्रारूप
जब सीबी क्षेत्र में 15 होता है, तो कार्यात्मक शाखा उत्पन्न होती है। अतः ROAR में नवीन माइक्रोस्टोर एड्रैस के बिट्स निम्नानुसार निर्धारित किए जाते हैं।
 * बिट्स 11-10: सीडी क्षेत्र।
 * बिट्स 9-6: सीए क्षेत्र।
 * बिट 5: सदैव 0।
 * बिट्स 4-1: क्यू रजिस्टर के उच्च-क्रम 4 बिट्स, जो 8-बिट एएलयू के लिए उचित इनपुट है।
 * बिट 0: सीसी क्षेत्र द्वारा निर्दिष्ट परीक्षण का परिणाम।

इस प्रकार से CC क्षेत्र मशीन की स्थिति के विभिन्न परीक्षण निर्दिष्ट कर सकता है। यह बिना प्रतिबंध बिट के लिए स्थिरांक 0 या 1 भी निर्दिष्ट कर सकता है।

यह प्रारूप माइक्रोस्टोर के 64-शब्द कक्ष के कम 32 शब्दों के भीतर 16 निर्देश जोड़े में से 1 में नियंत्रण के प्रवाह को परिवर्तित करता है (क्योंकि बिट 5 सदैव 0 होता है)। सीसी क्षेत्र तब निर्धारित करती है कि युग्म के किस निर्देश को नियंत्रण प्राप्त होता है।

सीडी = 0, 1, 3 प्रारूप
जब सीडी क्षेत्र 0, 1, या 3 है, तो नियंत्रण का प्रवाह वर्तमान 64-शब्द कक्ष के भीतर एक निर्देश की ओर निर्देशित होता है। नवीन माइक्रोस्टोर एड्रैस के बिट्स निम्नानुसार निर्धारित किए जाते हैं।
 * बिट्स 11-6: वही शेष हैं।
 * बिट्स 5-2: सीए क्षेत्र।
 * बिट 1: यदि सीडी = 0, सीबी क्षेत्र द्वारा निर्दिष्ट परीक्षण का परिणाम; अन्यथा 0।
 * बिट 0: सीसी क्षेत्र द्वारा निर्दिष्ट परीक्षण का परिणाम।

सीए क्षेत्र वर्तमान 64-शब्द कक्ष के भीतर 16 4-शब्द समूहों में से 1 का चयन करता है। सीबी और सीसी क्षेत्र तब निर्धारित करते हैं कि 4 में से कौन सा निर्देश नियंत्रण प्राप्त करता है।

सीडी = 2 प्रारूप
जब सीडी क्षेत्र 2 होती है, तो नियंत्रण का प्रवाह एक गैर-स्पष्ट विधि से निर्देशित होता है। इस प्रकार से नवीन माइक्रोस्टोर एड्रैस के बिट्स निम्नानुसार निर्धारित किए गए हैं:
 * बिट्स 11-10: शेष हैं।
 * बिट्स 9-6: सीए क्षेत्र।
 * बिट्स 5-2: शेष हैं।
 * बिट 1: सीबी क्षेत्र द्वारा निर्दिष्ट परीक्षण का परिणाम।
 * बिट 0: सीसी क्षेत्र द्वारा निर्दिष्ट परीक्षण का परिणाम।

अतः अगला निर्देश वर्तमान निर्देश के समान 1K-शब्द क्षेत्र में है, क्योंकि बिट्स 11-10 समान रहते हैं। सीए क्षेत्र क्षेत्र के भीतर 64-शब्द कक्ष निर्धारित करता है। निर्देश नवीन कक्ष के भीतर उसी 4-शब्द समूह में है क्योंकि वर्तमान निर्देश वर्तमान कक्ष के भीतर है, क्योंकि बिट्स 5-2 समान रहते हैं। सीबी और सीसी क्षेत्र तब निर्धारित करते हैं कि 4 में से कौन सा निर्देश नियंत्रण प्राप्त करता है।

सरलीकरण
इस प्रकार से इस विवरण को सरल बनाया गया है। यह निम्नलिखित सुविधाओं को अनदेखा करता है।
 * मॉडल 40 सीपीयू मोड या चैनल मोड में चल सकता है। विवरण मात्र सीपीयू मोड को संबोधित करता है।
 * यदि माइक्रोअनुदेश कार्यात्मक शाखा प्रारूप में नहीं है और सीडी क्षेत्र 1 या 3 है, तो अगले एड्रैस का बिट 1 सदैव 0 होता है। इस स्थिति में, सीडी और सीबी क्षेत्र के मान नियंत्रण रेखाओं के एक समूह को बढ़ाने के लिए निर्धारित करते हैं।