R4000

R4000 (आर4000) एक माइक्रोप्रोसेसर है जिसे एमआईपीएस संगणक प्रणाली के द्वारा विकसित किया गया है, जो एमआईपीएस III इंस्ट्रक्शन सेट आर्किटेक्चर (आईएसए) को लागू करता है। इसे 1 अक्टूबर 1991 को आधिकारिक रूप से घोषित किया गया था, यह पहले 64-बिट माइक्रोप्रोसेसरों में से एक था और पहला एमआईपीएस III कार्यान्वयन में से एक था। जब आरआईएससी माइक्रोप्रोसेसरों की अपेक्षा की जा रही थी कि वे इंटेल आई486 जैसे सीआईएससी माइक्रोप्रोसेसरों को परिवर्तित कर दिया जायेगा, तब विकसित संगणना परिसर (एडवांस्ड कंप्यूटिंग एनवायरनमेंट, एसीई) का माइक्रोप्रोसेसर बनाने के लिए R4000 का चयन किया गया। एसीई अंततः कई कारणों से असफल रहा, लेकिन R4000 को कार्यस्थल और सर्वर मार्केट में सफलता प्राप्त हुई।

मॉडल
R4000 के तीन संस्थिति (कॉन्फ़िगरेशन) होते हैं: R4000पीसी, एक प्रारंभिक स्तर का मॉडल जिसमें द्वितीयक कैश के लिए कोई समर्थन नहीं होता है; R4000एससी, एक मॉडल जिसमें द्वितीयक कैश होता है लेकिन मल्टीप्रोसेसर क्षमता नहीं होती है; और R4000एमसी, एक मॉडल जिसमें द्वितीयक कैश होता है और मल्टीप्रोसेसर सिस्टमों द्वारा आवश्यक कैश संसक्तता प्रोटोकॉल के लिए समर्थन होता है।

विवरण
R4000 स्केलर सुपरपाइपलाइन वाला माइक्रोप्रोसेसर है जिसमें आठ-चरण पूर्णांक पाइपलाइन होती है। प्रथम चरण (आईएफ) के दौरान, एक निर्देश के लिए एक आभासी एड्रेस उत्पन्न होता है और निर्देश ट्रांसलेशन लुकसाइड बफर (टीएलबी) एड्रेस का भौतिक एड्रेस पर ट्रांसलेशन आरम्भ करता है। दूसरे चरण (आईएस) में, ट्रांसलेशन पूर्ण हो जाता है और निर्देश आंतरिक 8 KB निर्देश कैश से प्राप्त किया गया है। निर्देश कैश को प्रत्यक्ष-मैप और आभासी इंडेक्स, फिजिकली टैग किया जाता है। इसकी लाइन का आकार 16- या 32-बाइट है। वास्तुकला की दृष्टि से इसे 32 KB तक बढ़ाया जा सकता है।

तीसरे चरण (आरएफ) के दौरान, निर्देश को डिकोड किया जाता है और रजिस्टर फ़ाइल पढ़ी जाती है। एमआईपीएस III दो रजिस्टर फाइलों को परिभाषित करता है, एक पूर्णांक इकाई के लिए और दूसरा फ्लोटिंग-पॉइंट के लिए। प्रत्येक रजिस्टर फ़ाइल 64 बिट्स विस्तृत (वाइड) है और इसमें 32 प्रविष्टियाँ हैं। पूर्णांक रजिस्टर फ़ाइल में दो रीड पोर्ट और एक राइट पोर्ट होता है, जबकि फ्लोटिंग-पॉइंट रजिस्टर फ़ाइल में दो रीड पोर्ट और दो राइट पोर्ट होते हैं। पूर्णांक और फ़्लोटिंग-पॉइंट निर्देशों दोनों के लिए निष्पादन चरण चार (ईएक्स) पर शुरू होता है; और चरण आठ (डब्ल्यूबी) में पूरा होने पर वापस रजिस्टर फ़ाइलों में लिखा जाता है। परिणामों को संभव होने पर बाइपास किया जा सकता है।

पूर्णांक निष्पादन
R4000 में पूर्णांक निर्देशों को निष्पादित करने के लिए अर्थमैटिक लॉजिक यूनिट (एएलयु), एक शिफ्टर, गुणक (मल्टीप्लायर) और विभाजक (डिवाइडर) और लोड एलाईनर होता है। एएलयु में 64-बिट कैरी-सेलेक्ट ऐडर और लॉजिक यूनिट होती है और यह पाइपलाइन होती है। शिफ्टर 32-बिट बैरल शिफ्टर होता है। यह दो चक्रों में 64-बिट शिफ्ट करता है, जिसके परिणामस्वरूप पाइपलाइन में  विलम्बन होता है। यह डिज़ाइन डाई रीजन सेव करने के लिए चयनित किया गया था। गुणक और विभाजक पाइपलाइन नहीं होती हैं और सार्थक विलंबता (लटेंसी) होती है: गुणन के लिए 32-बिट या 64-बिट पूर्णांकों के लिए 10 या 20 चक्रों की विलंबता होती है, जबकि विभाजन के लिए 32-बिट या 64-बिट पूर्णांकों के लिए 69 या 133 चक्रों की लटेंसी होती है। अधिकांश निर्देशों की एक चक्र विलंबता होती है। एएलयु ऐडर का उपयोग भी लोड, स्टोर और शाखाओं के लिए आभासी एड्रेस की गणना करने के लिए किया जाता है।

लोड और स्टोर निर्देश पूर्णांक पाइपलाइन द्वारा निष्पादित किए जाते हैं, और ऑन-चिप 8 KB डेटा कैश प्राप्त करते हैं।

फ़्लोटिंग-पॉइंट निष्पादन
R4000 में ऑन-डाई आईईईई 754-1985-संगत फ्लोटिंग-पॉइंट यूनिट (एफपीयु) होता है, जिसे आर4010 के नाम से जाना जाता है। एफपीयु एक प्रकार का कोप्रोसेसर होता है और सीपी1 के रूप में निर्दिष्ट किया गया है (एमआईपीएस आईएसए ने सीपी0 से सीपी3 तक चार कोप्रोसेसरों को परिभाषित किया है)। एफपीयु दो मोड में कार्य कर सकता है, 32-या 64-बिट, जो सीपीयु स्टेट्स रजिस्टर में बिट, एफआर बिट सेट करके चयनित किए जाते हैं। 32-बिट मोड में, 32 फ्लोटिंग-पॉइंट रजिस्टर एकल-प्रिसिजन फ्लोटिंग-पॉइंट संख्याओं को धारण करने के लिए 32 बिट वाइड हो जाते हैं। डबल-प्रिसिजन संख्याओं को धारण करने के लिए, 16 फ्लोटिंग-पॉइंट रजिस्टर होते हैं (रजिस्टरों को युग्मित किया जाता है)।

एफपीयू एएलयू के साथ समानांतर में कार्य कर सकता है, जब तक कि डेटा या संसाधन आपेक्षिकता होने के कारण यह अवरुद्ध होता है। इसमें तीन उप-यूनिट होती हैं: एक योजक (ऐडर), एक गुणक और एक विभाजक। गुणक और विभाजक योजक के साथ समानांतर में एक निर्देश को क्रियान्वित कर सकते हैं, लेकिन वे अपने कार्य के अंतिम चरण में योजक का उपयोग करते हैं, इस प्रकार ओवरलैपिंग निष्पादन पर सीमाएं लगाते हैं। इस प्रकार, निश्चित शर्तों के अंतर्गत, यह किसी भी समय तीन निर्देशों को क्रियान्वित कर सकता है, प्रत्येक यूनिट में एक। एफपीयू प्रति चक्र एक निर्देश को सेवानिवृत्त करने में सक्षम होता है।

योजक और गुणक को पाइपलाइन किया गया है। गुणक में चार चरण वाली गुणक पाइपलाइन होती है। पर्याप्त कार्यव्यान के लिए इसे माइक्रोप्रोसेसर की क्लॉक आवृत्ति से दोगुनी गति पर क्लॉक किया जाता है और उच्च क्लॉक आवृत्ति प्राप्त करने के लिए डायनामिक लॉजिक का उपयोग किया जाता है। विभाजन में एकल या डबल-प्रिसिजन संचालन के लिए 23- या 36-चक्र विलंबता होती है और वर्ग-रूट में 54- या 112-चक्र विलंबता होती है। विभाजन और वर्गमूल एसआरटी एल्गोरिदम का उपयोग करता है।

मेमोरी मैनेजमेंट
मेमोरी मैनेजमेंट यूनिट (एमएमयू) आभासी एड्रेस का अनुवाद करने के लिए 48-एंट्री ट्रांसलेशन लुकसाइड बफर का उपयोग करता है। R4000 64-बिट आभासी एड्रेस का उपयोग करता है, लेकिन 64 बिट्स में से केवल 40 बिट्स को लागू करता है, 1 TB आभासी मेमोरी की अनुमति देता है; यह सुनिश्चित करने के लिए शेष बिट्स की जाँच की जाती है कि उनमें शून्य है। R4000 36-बिट फिजिकल एड्रेस का उपयोग करता है, इस प्रकार 64 GB की फिज़िकल मेमोरी को संबोधित करने में सक्षम होता है।

द्वितीयक कैश
R4000 (केवल एससी और एमसी कॉन्फ़िगरेशन) 128 केबी से 4 एमबी की क्षमता वाले बाहरी माध्यमिक कैश का समर्थन करता है। कैश एक निर्धारित 128-बिट डेटा बस के माध्यम से उपलब्ध होता है। द्वितीयक कैश को एकीकृत कैश के रूप में या विभाजित अनुदेश और डेटा कैश के रूप में कॉन्फ़िगर किया जा सकता है। उत्तरार्द्ध कॉन्फ़िगरेशन में, प्रत्येक कैश में 128 KB से 2 MB की क्षमता हो सकती है। द्वितीयक कैश को भौतिक रूप से अनुक्रमित किया जाता है, भौतिक रूप से टैग किया जाता है और इसमें 128, 256, 512 या 1,024 बाइट्स का प्रोग्राम लाइन आकार होता है। कैश कंट्रोलर ऑन-डाई होता है। कैशे स्टैण्डर्ड स्टैटिक रैंडम एक्सेस मेमोरी (एसआरएएम) से बनाया गया है। डेटा और टैग बसों को ईसीसी-संरक्षित किया जाता है।

सिस्टम बस
R4000 में SysAD बस के रूप में 64-बिट सिस्टम बस का उपयोग होता है। SysAD बस एक एड्रेस और डेटा मल्टीप्लेक्स्ड बस है, अर्थात यह डेटा और एड्रेस को स्थानांतरित करने के लिए एक ही वायर सेट का उपयोग करता है। हालाँकि यह बैंडविड्थ कम करता है, लेकिन सिस्टम की जटिलता को बढ़ाने वाले एड्रेस बस की तुलना में कम लागतग्रस्त होता है, जिसमें अधिक पिन की आवश्यकता होती है। SysAD बस को आंतरिक क्लॉक फ्रिक्वेंसी का आधा, तिहाई या चौथाई रूप में कार्यान्वित करने के लिए कॉन्फ़िगर किया जा सकता है। SysAD बस अपने क्लॉक सिग्नल को आपरेटिंग आवृत्ति से विभाजित करके उत्पन्न करता है।

ट्रांजिस्टर काउंट, डाई डायमेंशन्स और प्रक्रिया विवरण
R4000 में 1.2 मिलियन ट्रांजिस्टर होता हैं। इसे 1.0 μm दो-परत धातु पूरक धातु-ऑक्साइड-अर्धचालक (सीएमओएस) प्रक्रिया के लिए डिज़ाइन किया गया था। चूँकि एमआईपीएस एक फ़ेबलेस कंपनी थी, R4000 को सहभागियों द्वारा अपनी प्रक्रियाओं में निर्मित किया गया था, जिसका न्यूनतम फीचर साइज 0.8 μm था।

क्लॉकिंग
R4000 बाह्‍यतः उत्पन्न एक मास्टर क्लॉक सिग्नल से विभिन्न क्लॉक सिग्नल उत्पन्न करता है। ऑपरेटिंग फ़्रीक्वेंसी के लिए, R4000 ऑन-डाई फेज़-लॉक लूप (पीएलएल) के उपयोग से मास्टर क्लॉक सिग्नल को दो से गुणा करता है।

पैकेजिंग
R4000पीसी को 179-पिन सिरेमिक पिन ग्रिड ऐरे (सीपीजीए) में पैकेज किया जाता है। R4000एससी और R4000एमसी को 447-पिन सिरेमिक स्टैगर्ड पिन ग्रिड ऐरे (एसपीजीए) में पैकेज किया जाता है। R4000एमसी का पिन आउट R4000एससी से भिन्न होता है, जहां R4000एससी पर अप्रयोगित कुछ पिन R4000एमसी पर कैश समन्वय को कार्यान्वित करने के लिए सिग्नल के लिए उपयोग किए जाते हैं। R4000पीसी का पिन आउट पीजीए-पैकेज आर4200 और आर4600 माइक्रोप्रोसेसर के समान होता है। यह विशेषता एक योग्य डिज़ाइन किए गए सिस्टम को किसी भी तीन माइक्रोप्रोसेसर का उपयोग करने की संभावना प्रदान करती है।

आर4400
आर4400, R4000 का अग्रिम के अन्य विकास का उदाहरण है। इसे नवंबर 1992 के पहले सप्ताह में घोषित किया गया था। माइक्रोप्रोसेसर के प्रतिदर्श जनवरी 1993 में सामान्य उपलब्धता के साथ चयनित ग्राहकों को भेज दिए गए थे। आर4400 की क्लॉक आवृत्तियाँ 100, 133, 150, 200 और 250 MHz होती हैं। R4000 से केवल मुख्य कैश में बड़ा संशोधन होता है, जिनकी क्षमता 8 KB से प्रत्येक 16 KB तक दोगुनी कर दी गई। इसमें 2.3 मिलियन ट्रांजिस्टर्स होते हैं।

आर4400 को इंटीग्रेटेड डिवाइस टेक्नोलॉजी (आईडीटी), एलएसआई लॉजिक, एनईसी, परफॉर्मेंस सेमीकंडक्टर, सीमेंस एजी और तोशीबा द्वारा लाइसेंस प्राप्त था। आईडीटी, एनईसी, सीमेंस और तोशिबा ने माइक्रोप्रोसेसर का निर्माण और विपणन किया। एलएसआई लॉजिक ने कस्टम उत्पादों में आर4400 का उपयोग किया। परफॉर्मेंस अर्धचालक ने अपना लॉजिक डिवीजन साइप्रस अर्धचालक को बेच दिया जहां एमआईपीएस माइक्रोप्रोसेसर उत्पादों को संवृत कर दिया गया।

एनईसी ने अपने संस्करण को वीआर4400 के रूप में विपणन किया। प्रथम संस्करण, 150 MHz भाग, नवंबर 1992 में घोषित किया गया था। प्रारंभिक संस्करण 0.6 μm प्रक्रिया में निर्मित किए गए थे। 1995 के मध्य में, 250 MHz भाग का प्रतिदर्श लेना शुरू किया गया। इसे 0.35 μm चार-परत-धातु प्रक्रिया में निर्मित किया गया था। एनईसी ने एमआर4401, सिरेमिक मल्टी-चिप मॉड्यूल (एमसीएम) भी तैयार किया, जिसमें दस 1 Mbit एसआरएएम चिप्स के साथ वीआर4400एससी सम्मिलित था, जो 1 MB सेकेंडरी कैश को लागू करता था। एमसीएम आर4x00पीसी के साथ पिन-संगत था। प्रथम संस्करण, 150 MHz भाग की घोषणा 1994 में की गई थी। 1995 में, 200 MHz भाग की घोषणा की गई थी।

तोशिबा ने अपना संस्करण टीसी86आर4400 के रूप में विपणन किया। 200 MHz भाग जिसमें 2.3 मिलियन ट्रांजिस्टर हैं और 0.3 μm प्रक्रिया में निर्मित 134 mm2 माप है, 1994 के मध्य में प्रस्तुत किया गया था। 10,000 की मात्रा में आर4400पीसी की लागत $1,600, आर4400एससी की लागत $1,950, और आर4400एमसी की लागत $2,150 थी।

उपयोग
आर4400 का उपयोग निम्न द्वारा किया जाता है:


 * कैरेरा कंप्यूटर्स ने अपने विंडोज एनटी पर्सनल कंप्यूटर और वर्कस्टेशन में उपयोग किया।
 * संयुक्त कंप्यूटर कॉर्पोरेशन अपने रीयल-टाइम मल्टीप्रोसेसर मैक्सियन सिस्टम में
 * उनके विंडोज़ एनटी पर्सनल कंप्यूटर और डेस्कस्टेशन टाइन वर्कस्टेशन में डेस्कस्टेशन प्रौद्योगिकी
 * डिजिटल इक्विपमेंट कॉर्पोरेशन अपने डीईसीस्टेशन 5000/260 वर्कस्टेशन और सर्वर में उपयोग किया।
 * एनईसी कॉर्पोरेशन अपने आरआईएससीस्टेशन वर्कस्टेशन, आरआईएससीसर्वर सर्वर और सेनजू-3 सुपरकंप्यूटर में
 * अपने विंडोज एनटी वर्कस्टेशन और सर्वर में NeTPower
 * पिरामिड प्रौद्योगिकी ने अपने नाइल सीरीज सर्वर में आर4400एमसी का उपयोग किया
 * सीमेंस निक्सडॉर्फ इंफॉर्मेशन सिस्टम (एसएनआई) अपने आरएम-सीरीज यूनिक्स सर्वर और एसआर2000 मेनफ़्रेम में
 * उनके ओनेक्स, इंडिगो, इंडिगो2 और इंडी वर्कस्टेशन में सिलिकॉन ग्राफिक्स; और उनके चैलेंज सर्वर में
 * टेंडेम कंप्यूटर्स अपने नॉनस्टॉप हिमालय फॉल्ट-टॉलरेंट सर्वर में उपयोग किया।

चिपसेट
R4000 और आर4400 माइक्रोप्रोसेसरों को कस्टम एएसआईसी या व्यावसायिक रूप से उपलब्ध चिपसेट द्वारा सिस्टम में इंटरफ़ेस किया गया था। एसजीआई जैसे सिस्टम विक्रेताओं ने अपने सिस्टम के लिए अपने स्वयं के एएसआईसी विकसित किए। तोशिबा जैसी कंपनियों द्वारा अपने टाइगर शार्क चिपसेट के साथ वाणिज्यिक चिपसेट विकसित, निर्मित और विपणन किए गए, जो आई486-संगत बस प्रदान करते थे।

संदर्भ

 * Heinrich, Joe. MIPS R4000 Microprocessor User's Manual, Second Edition.
 * Sunil Mirapuri, Michael Woodacre, Nader Vasseghi, "The Mips R4000 Processor," IEEE Micro, vol. 12. no. 2, pp. 10–22, March/April 1992