MIC-1
एम. आई. सी.-1 एक प्रोसेसर वास्तुकला है जिसका आविष्कार एंड्रयू एस. टैननबॉम ने अपनी शिक्षण पुस्तक स्ट्रक्चर्ड कंप्यूटर ऑर्गनाइजेशन में एक सरल लेकिन पूर्ण उदाहरण के रूप में किया है। इसमें एक बहुत ही सरल नियंत्रण इकाई होती है जो 512 शब्दों के स्टोर से माइक्रोकोड चलाती है। माइक्रो-असेंबली लैंग्वेज (एम. ए. एल.) को आई. जे. वी. एम. दुभाषिया के सरल लेखन की अनुमति देने के लिए तैयार किया गया है, और ऐसे दुभाषिया के लिए स्रोत कोड पुस्तक में पाया जा सकता है। हार्डवेयर डेटा पथ डेटा पथ एम. आई. सी.-1 का मूल है। इसमें 32-बिट रजिस्टर, बसें, एक एएलयू और एक शिफ्टर शामिल हैं। बसें 32 लाइनों (या 32 बिट) की 2 मुख्य बसें हैंः बी बसः रजिस्टरों के आउटपुट और ए. एल. यू. के इनपुट से जुड़ी होती हैं। सी बसः शिफ्टर के आउटपुट और रजिस्टरों के इनपुट से जुड़ा हुआ है। रजिस्टर रजिस्टरों का चयन 2 नियंत्रण लाइनों द्वारा किया जाता हैः एक बी बस को सक्षम करने के लिए और दूसरा सी बस को सक्षम करने के लिए। बी बस को एक समय में केवल एक रजिस्टर द्वारा सक्षम किया जा सकता है, क्योंकि एक ही समय में 2 रजिस्टरों से डेटा का हस्तांतरण इस डेटा को असंगत बना देगा। इसके विपरीत, सी बस को एक ही समय में 1 से अधिक रजिस्टर द्वारा सक्षम किया जा सकता है; वास्तव में, सी बस में मौजूद वर्तमान मूल्य को बिना किसी समस्या के 1 से अधिक रजिस्टर पर लिखा जा सकता है। पढ़ना और लिखना 1 घड़ी चक्र में किया जाता है। एमबीआर रजिस्टर एक केवल पढ़ने योग्य रजिस्टर है, और इसमें 2 नियंत्रण लाइनें हैं। चूँकि यह एक 8-बिट रजिस्टर है, इसलिए इसका आउटपुट बी बस के सबसे कम महत्वपूर्ण 8 बिट्स से जुड़ा हुआ है। इसे 2 तरीकों से अपने आउटपुट प्रदान करने के लिए सेट किया जा सकता हैः 2 का पूरक (एमबीआर): बी बस के सभी शेष 24 बिट्स को 1 पर सेट किया जाता है, यदि यह एक नकारात्मक संख्या है, या उन्हें 0 पर सेट किया जाता है, यदि यह एक सकारात्मक संख्या है (संकेत विस्तार)। पूरक (एमबीआरयू) के बिनाः शेष 24 बिट्स (कुल 32 में से) को 0 पर सेट किया जाता है। एएलयू (या अंकगणितीय तर्क इकाई) में निम्नलिखित इनपुट, आउटपुट और नियंत्रण लाइनें होती हैंः 2 32-बिट इनपुट लाइनेंः एक बी बस के लिए और एक बस के लिए जो सीधे एच रजिस्टर से जुड़ी होती है। 1 32-बिट आउटपुट लाइन, जो सीधे शिफ्टर से जुड़ी होती है। 6 नियंत्रण लाइनों का उद्देश्य यह चुनना था कि कौन सा संचालन करना है। स्थिति फ्लैग एन (नकारात्मक) और जेड (शून्य) के लिए 2 अन्य आउटपुट लाइनें। शिफ्टर शिफ्टर में 32-बिट इनपुट और आउटपुट होता है। आउटपुट सीधे सी बस से जुड़ा हुआ है। शिफ्टर का उपयोग तार्किक और अंकगणितीय बदलाव संचालन करने के लिए किया जाता है, केवल क्रमशः नियंत्रण संकेत एस. एल. एल. 8 (शिफ्ट लेफ्ट लॉजिकल) और एस. आर. ए. 1 (शिफ्ट राइट अर्थमेटिक) को सेट करके। बाहरी लिंक वीएचडीएल माइक1 में एक माइक-1 वर्चुअल मशीन को लागू करने के बारे में लेख, एक ओपन सोर्स एमआईसी-1 सिम्युलेटर, जिसमें एमएएल और आईजेवीएम असेंबलर शामिल हैं, एमयूएमआईसी ओपन सोर्स, मुफ्त और एनिमेटेड एमआईसी-1 इम्युलेटर, जिसे कैटेनिया विश्वविद्यालय (विंडोज, मैक और लिनक्स के लिए) के छात्रों द्वारा विकसित किया गया है, माइक1एमएमवी, एमआईसी-1 सिम्युलेटर जिसे एंड्रयू एस. टैननबॉम माइक1 द्वारा "स्ट्रक्चर्ड कंप्यूटर ऑर्गनाइजेशन" के 5वें संस्करण में शामिल किया गया है, एक अन्य ओपन सोर्स एमआईसी-1 सिम्युलेटर है जिसे यूमास लोवेल के छात्रों द्वारा लिखा गया है, जिसमें एक असेंबलर और माइक्रोकोड कंपाइलर इंस्ट्रक्शन सेट आर्किटेक्चर शैक्षिक अमूर्त मशीनें शामिल हैं।