रेकॉन्फ़िगरेबल कंप्यूटिंग

रीकॉन्फ़िगर करने योग्य कंप्यूटिंग एक कंप्यूटर आर्किटेक्चर है जो FPGA|फ़ील्ड-प्रोग्रामेबल गेट एरेज़ (FPGAs) जैसे बहुत लचीले हाई स्पीड कंप्यूटिंग फैब्रिक्स के साथ हार्डवेयर के उच्च प्रदर्शन के साथ सॉफ़्टवेयर के कुछ लचीलेपन को जोड़ती है। सामान्य माइक्रोप्रोसेसरों का उपयोग करने की तुलना में मुख्य अंतर नियंत्रण प्रवाह के अतिरिक्त स्वयं डेटापथ में पर्याप्त परिवर्तन करने की क्षमता है। दूसरी ओर, कस्टम हार्डवेयर, यानी एप्लिकेशन-विशिष्ट एकीकृत सर्किट (एएसआईसी) से मुख्य अंतर पुन: कॉन्फ़िगर करने योग्य कपड़े पर एक नया सर्किट लोड करके रनटाइम के दौरान हार्डवेयर को अनुकूलित करने की संभावना है।

इतिहास
पुन: विन्यास योग्य कंप्यूटिंग की अवधारणा 1960 के दशक से अस्तित्व में है, जब गेराल्ड एस्ट्रिन के पेपर ने एक मानक प्रोसेसर से बने कंप्यूटर की अवधारणा और पुन: विन्यास योग्य हार्डवेयर की एक सरणी का प्रस्ताव रखा था। मुख्य प्रोसेसर पुन: संयोजन योग्य हार्डवेयर के व्यवहार को नियंत्रित करेगा। बाद वाले को एक विशिष्ट कार्य करने के लिए सिलवाया जाएगा, जैसे कि मूर्ति प्रोद्योगिकी  या पैटर्न मिलान, हार्डवेयर के एक समर्पित टुकड़े के रूप में जल्दी से। एक बार कार्य पूरा हो जाने के बाद, हार्डवेयर को किसी अन्य कार्य को करने के लिए समायोजित किया जा सकता है। इसका परिणाम हार्डवेयर की गति के साथ सॉफ्टवेयर के लचीलेपन को मिलाकर एक हाइब्रिड कंप्यूटर संरचना में हुआ।

1980 और 1990 के दशक में अनुसंधान के इस क्षेत्र में उद्योग और शिक्षा में विकसित कई प्रस्तावित पुनर्विन्यास योग्य आर्किटेक्चर के साथ पुनर्जागरण हुआ, जैसे: कोपाकोबाना, मैट्रिक्स, जीएआरपी, एलिक्सेंट, एनजीईएन, पोलिप, मेरेजेन, PACT XPP, सिलिकॉन हाइव, मोंटियम, प्लीएड्स, मॉर्फोसिस और PiCoGA। सिलिकॉन प्रौद्योगिकी की निरंतर प्रगति के कारण इस तरह के डिजाइन संभव थे, जिससे जटिल डिजाइनों को एक चिप पर लागू किया जा सके। इनमें से कुछ बड़े पैमाने पर समानांतर पुन: संयोजन योग्य कंप्यूटर मुख्य रूप से आणविक विकास, तंत्रिका या छवि प्रसंस्करण जैसे विशेष उप डोमेन के लिए बनाए गए थे। दुनिया का पहला वाणिज्यिक पुनः कॉन्फ़िगर करने योग्य कंप्यूटर, Algotronix CHS2X4, 1991 में पूरा हुआ था। यह एक व्यावसायिक सफलता नहीं थी, लेकिन पर्याप्त रूप से आशाजनक था कि Xilinx (FPGA|फील्ड-प्रोग्रामेबल गेट ऐरे, FPGA के आविष्कारक) ने तकनीक खरीदी और इसे किराए पर लिया। एल्गोट्रोनिक्स स्टाफ। बाद की मशीनों ने वैज्ञानिक सिद्धांतों के पहले प्रदर्शनों को सक्षम किया, जैसे कि MereGen के साथ आनुवंशिक कोडिंग का सहज स्थानिक स्व-संगठन।

ट्रेडनिक का वर्गीकरण
पुनर्संरचना योग्य कंप्यूटिंग मशीन प्रतिमान का मूलभूत मॉडल, डेटा-स्ट्रीम-आधारित एंटी मशीन को पहले पेश किए गए अन्य मशीन प्रतिमानों के अंतरों द्वारा अच्छी तरह से चित्रित किया गया है, जैसा कि निक ट्रेडेनिक की कंप्यूटिंग प्रतिमानों की निम्नलिखित वर्गीकरण योजना द्वारा दिखाया गया है (तालिका 1 देखें: निक) ट्रेडनिक का प्रतिमान वर्गीकरण योजना)।

हार्टनस्टीन का एक्सप्यूटर
कंप्यूटर वैज्ञानिक रेनर हार्टनस्टाइन एक एंटी-मशीन के संदर्भ में पुन: संयोजन योग्य कंप्यूटिंग का वर्णन करते हैं, जो उनके अनुसार, अधिक परंपरागत वॉन न्यूमैन वास्तुकला से दूर एक मौलिक प्रतिमान का प्रतिनिधित्व करता है। Hartenstein इसे Reconfigurable Computing Paradox कहते हैं, कि सॉफ़्टवेयर-टू-कॉन्फ़िगरवेयर (सॉफ़्टवेयर-टू-FPGA) माइग्रेशन के परिणामस्वरूप परिमाण के चार से अधिक ऑर्डर तक के स्पीड-अप कारकों के साथ-साथ बिजली की खपत में लगभग कमी हो जाती है। परिमाण के चार आदेश - हालांकि FPGAs के तकनीकी पैरामीटर परिमाण के लगभग चार आदेशों द्वारा मूर के नियम के पीछे हैं, और घड़ी की आवृत्ति माइक्रोप्रोसेसरों की तुलना में काफी कम है। इस विरोधाभास को आंशिक रूप से वॉन न्यूमैन टोंटी द्वारा समझाया गया है।

उच्च-प्रदर्शन कंप्यूटिंग
हाई-परफॉर्मेंस रिकंफिगरेबल कंप्यूटिंग (एचपीआरसी) एक कंप्यूटर आर्किटेक्चर है, जो सीपीयू या मल्टी-कोर प्रोसेसर | मल्टी-कोर माइक्रोप्रोसेसर के साथ क्षेत्र में प्रोग्राम की जा सकने वाली द्वार श्रंखला जैसे रीकॉन्फिगरेबल कंप्यूटिंग-आधारित एक्सेलेरेटर का संयोजन करता है।

एफपीजीए में तर्क की वृद्धि ने बड़े और अधिक जटिल एल्गोरिदम को एफपीजीए में प्रोग्राम करने में सक्षम बनाया है। पीसीआई एक्सप्रेस जैसी हाई स्पीड बस पर एक आधुनिक सीपीयू के लिए इस तरह के एफपीजीए के लगाव ने विन्यास योग्य तर्क को परिधीय के बजाय सह प्रोसेसर की तरह अधिक कार्य करने में सक्षम बनाया है। इसने पुन: कॉन्फ़िगर करने योग्य कंप्यूटिंग को उच्च-प्रदर्शन कंप्यूटिंग क्षेत्र में लाया है।

इसके अलावा, एक FPGA पर एक एल्गोरिथ्म की नकल करके या FPGAs की बहुलता के उपयोग से पुन: कॉन्फ़िगर करने योग्य SIMD सिस्टम को सक्षम किया जा सकता है, जहां कई कम्प्यूटेशनल डिवाइस अलग-अलग डेटा पर समवर्ती रूप से काम कर सकते हैं, जो अत्यधिक समानांतर कंप्यूटिंग है।

इस विषम प्रणाली तकनीक का उपयोग कंप्यूटिंग अनुसंधान और विशेष रूप से सुपर कम्प्यूटिंग  में किया जाता है। 2008 के एक पेपर ने परिमाण के 4 से अधिक आदेशों के गति-अप कारकों और परिमाण के लगभग 4 आदेशों तक ऊर्जा बचत कारकों की सूचना दी। कुछ सुपरकंप्यूटर कंपनियां त्वरक के रूप में FPGAs सहित विषम प्रसंस्करण ब्लॉकों की पेशकश करती हैं। एक अनुसंधान क्षेत्र ऐसी विषम प्रणालियों के लिए प्राप्त जुड़वां-प्रतिमान प्रोग्रामिंग टूल फ्लो उत्पादकता है। यूएस राष्ट्रीय विज्ञान संस्था  के पास उच्च-प्रदर्शन पुन: उपयोग योग्य कंप्यूटिंग (CHREC) के लिए एक केंद्र है। अप्रैल 2011 में यूरोप में चौथा बहु-कोर और पुन: संयोजन योग्य सुपरकंप्यूटिंग सम्मेलन आयोजित किया गया था। IBM द्वारा अपने IBM पावर माइक्रोप्रोसेसरों के साथ FPGAs को एकीकृत करने की घोषणा के साथ वाणिज्यिक उच्च-प्रदर्शन पुनर्विन्यास योग्य कंप्यूटिंग सिस्टम उभरने लगे हैं।

आंशिक पुन: विन्यास
आंशिक पुन: विन्यास पुन: संयोजन योग्य हार्डवेयर सर्किटरी के एक हिस्से को बदलने की प्रक्रिया है जबकि दूसरा भाग अपने पूर्व विन्यास को बनाए रखता है। क्षेत्र में प्रोग्राम की जा सकने वाली द्वार श्रंखला को अक्सर आंशिक पुनर्संरचना के समर्थन के रूप में उपयोग किया जाता है।

इलेक्ट्रॉनिक हार्डवेयर, सॉफ़्टवेयर  की तरह, मॉड्यूलर रूप से डिज़ाइन किया जा सकता है, उप-घटक बनाकर और फिर उच्च-स्तरीय घटकों को तत्काल बनाने के लिए। कई मामलों में एफपीजीए अभी भी काम कर रहा है, जबकि इनमें से एक या कई उप-घटकों को स्वैप करने में सक्षम होना उपयोगी होता है।

आम तौर पर, एक एफपीजीए को पुन: कॉन्फ़िगर करने के लिए इसे रीसेट में रखने की आवश्यकता होती है जबकि बाहरी नियंत्रक उस पर एक डिज़ाइन पुनः लोड करता है। आंशिक पुनर्विन्यास डिज़ाइन के महत्वपूर्ण भागों को संचालन जारी रखने की अनुमति देता है जबकि एक नियंत्रक या तो FPGA पर या इसके बाहर आंशिक डिज़ाइन को पुन: कॉन्फ़िगर करने योग्य मॉड्यूल में लोड करता है। आंशिक पुनर्संरचना का उपयोग केवल उन आंशिक डिज़ाइनों को संग्रहीत करके कई डिज़ाइनों के लिए स्थान बचाने के लिए किया जा सकता है जो डिज़ाइनों के बीच बदलते हैं। एक संचार उपकरण का मामला जब आंशिक पुन: संयोजन उपयोगी होगा, इसके लिए एक सामान्य उदाहरण है। यदि डिवाइस कई कनेक्शनों को नियंत्रित कर रहा है, जिनमें से कुछ को कूटलेखन  की आवश्यकता होती है, तो पूरे नियंत्रक को नीचे लाए बिना विभिन्न एन्क्रिप्शन कोर लोड करने में सक्षम होना उपयोगी होगा।

आंशिक पुनर्विन्यास सभी FPGAs पर समर्थित नहीं है। मॉड्यूलर डिजाइन पर जोर देने के साथ एक विशेष सॉफ्टवेयर प्रवाह की आवश्यकता होती है। आमतौर पर डिज़ाइन मॉड्यूल FPGA के अंदर अच्छी तरह से परिभाषित सीमाओं के साथ बनाए जाते हैं जिनके लिए डिज़ाइन को आंतरिक हार्डवेयर के लिए विशेष रूप से मैप करने की आवश्यकता होती है।

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

कंप्यूटर अनुकरण
किफायती एफपीजीए बोर्डों के आगमन के साथ, छात्रों और शौकियों की परियोजनाएं पुराने कंप्यूटरों को फिर से बनाने या अधिक उपन्यास आर्किटेक्चर को लागू करने की तलाश करती हैं।  इस तरह की परियोजनाओं को पुनर्विन्यास योग्य हार्डवेयर (FPGAs) के साथ बनाया गया है, और कुछ उपकरण एकल पुनर्विन्यास योग्य हार्डवेयर (C-One) का उपयोग करके कई पुराने कंप्यूटरों के अनुकरण का समर्थन करते हैं।

कोपाकोबाना
एक पूरी तरह से FPGA-आधारित कंप्यूटर COPACOBANA, कॉस्ट ऑप्टिमाइज्ड कोडब्रेकर और एनालाइजर और इसका उत्तराधिकारी RIVYERA है। जर्मनी में बोचुम और कील विश्वविद्यालयों के COPACOBANA-Project की एक स्पिन-ऑफ कंपनी SciEngines GmbH पूरी तरह से FPGA- आधारित कंप्यूटरों का विकास जारी रखे हुए है।

मिट्रियोनिक्स
मित्रियोनिक्स ने एक एसडीके विकसित किया है जो एफपीजीए-आधारित कंप्यूटरों पर संकलित और निष्पादित होने के लिए एकल असाइनमेंट भाषा का उपयोग करके लिखे गए सॉफ़्टवेयर को सक्षम बनाता है। Mitrion-C सॉफ्टवेयर लैंग्वेज और Mitrion प्रोसेसर सॉफ्टवेयर डेवलपर्स को FPGA- आधारित कंप्यूटरों पर उसी तरह से एप्लिकेशन लिखने और निष्पादित करने में सक्षम बनाता है, जैसे अन्य कंप्यूटिंग तकनीकों के साथ, जैसे कि ग्राफिकल प्रोसेसिंग यूनिट ("GPUs"), सेल-आधारित प्रोसेसर, समानांतर प्रसंस्करण। इकाइयाँ ("पीपीयू"), मल्टी-कोर सीपीयू और पारंपरिक सिंगल-कोर सीपीयू क्लस्टर। (कारोबार से बाहर)

राष्ट्रीय उपकरण
नेशनल इंस्ट्रूमेंट्स ने कॉम्पैक्टरियो नामक एक हाइब्रिड एम्बेडेड कंप्यूटिंग सिस्टम विकसित किया है। इसमें यूजर-प्रोग्रामेबल FPGA, हॉट स्वैपेबल I/O मॉड्यूल, नियतात्मक संचार और प्रसंस्करण के लिए रीयल-टाइम कंट्रोलर, और रैपिड RT और FPGA प्रोग्रामिंग के लिए ग्राफिकल लैबव्यू सॉफ्टवेयर को पुन: कॉन्फ़िगर करने योग्य चेसिस हाउसिंग शामिल है।

Xilinx
Xilinx ने FPGA उपकरणों के आंशिक पुन: विन्यास की दो शैलियाँ विकसित की हैं: मॉड्यूल-आधारित और अंतर-आधारित। मॉड्यूल-आधारित आंशिक पुनर्विन्यास डिजाइन के अलग-अलग मॉड्यूलर भागों को फिर से कॉन्फ़िगर करने की अनुमति देता है, जबकि अंतर-आधारित आंशिक पुनर्संरचना का उपयोग तब किया जा सकता है जब एक डिज़ाइन में एक छोटा परिवर्तन किया जाता है।

इंटेल
इंटेल उनके FPGA उपकरणों के 28 एनएम उपकरणों जैसे कि Stratix V, पर आंशिक पुन: विन्यास का समर्थन करता है और 20 एनएम एरिया 10 डिवाइस पर। Arria 10 के लिए Intel FPGA आंशिक पुनर्संरचना प्रवाह क्वार्टस प्राइम प्रो सॉफ़्टवेयर में पदानुक्रमित डिज़ाइन पद्धति पर आधारित है जहाँ उपयोगकर्ता FPGA के भौतिक विभाजन बनाते हैं जिन्हें पुन: कॉन्फ़िगर किया जा सकता है रनटाइम पर जबकि शेष डिज़ाइन काम करना जारी रखता है। क्वार्टस प्राइम प्रो सॉफ्टवेयर भी पदानुक्रमित आंशिक पुनर्विन्यास और आंशिक पुनर्विन्यास के अनुकरण का समर्थन करता है।

सिस्टम का वर्गीकरण
एक उभरते हुए क्षेत्र के रूप में, पुनः विन्यास योग्य आर्किटेक्चर का वर्गीकरण अभी भी विकसित और परिष्कृत किया जा रहा है क्योंकि नए आर्किटेक्चर विकसित किए गए हैं; आज तक किसी एकीकृत वर्गीकरण का सुझाव नहीं दिया गया है। हालाँकि, इन प्रणालियों को वर्गीकृत करने के लिए कई आवर्ती मापदंडों का उपयोग किया जा सकता है।

ग्रेन्युलैरिटी
रीकॉन्फिगरेबल लॉजिक की ग्रैन्युलैरिटी को सबसे छोटी फंक्शनल यूनिट (कॉन्फिगरेबल लॉजिक ब्लॉक, सीएलबी) के आकार के रूप में परिभाषित किया गया है जिसे मैपिंग टूल्स द्वारा संबोधित किया जाता है। उच्च ग्रैन्युलैरिटी, जिसे फाइन-ग्रेन्ड के रूप में भी जाना जा सकता है, अक्सर हार्डवेयर में एल्गोरिदम को लागू करते समय अधिक लचीलेपन का अर्थ होता है। हालांकि, प्रति गणना आवश्यक रूटिंग की अधिक मात्रा के कारण बढ़ी हुई शक्ति, क्षेत्र और देरी के मामले में इसके साथ जुर्माना जुड़ा हुआ है। फाइन-ग्रेन्ड आर्किटेक्चर बिट-लेवल मैनीपुलेशन लेवल पर काम करते हैं; जबकि मोटे दाने वाले प्रसंस्करण तत्व (पुन: कॉन्फ़िगर करने योग्य डेटापथ इकाई, rDPU) मानक डेटा पथ अनुप्रयोगों के लिए बेहतर अनुकूलित हैं। मोटे दाने वाले आर्किटेक्चर की कमियों में से एक यह है कि वे अपने कुछ उपयोग और प्रदर्शन को खो देते हैं यदि उन्हें अपनी ग्रैन्युलैरिटी प्रदान करने की तुलना में छोटी संगणना करने की आवश्यकता होती है, उदाहरण के लिए चार बिट चौड़ी कार्यात्मक इकाई पर एक बिट जोड़ने से तीन बिट बर्बाद हो जाएंगे।. एक ही चिप पर मोटे अनाज की सरणी (पुन: कॉन्फ़िगर करने योग्य डेटापथ सरणी, rDPA) और एक FPGA होने से इस समस्या को हल किया जा सकता है।

शब्द-चौड़ाई डेटा पथ (आरडीपीयू) की आवश्यकता वाले एल्गोरिदम के कार्यान्वयन के लिए मोटे अनाज वाले आर्किटेक्चर (आरडीपीए) का इरादा है। चूंकि उनके कार्यात्मक ब्लॉक बड़ी संगणनाओं के लिए अनुकूलित हैं और आम तौर पर शब्द विस्तृत अंकगणितीय तर्क इकाइयां (एएलयू) शामिल हैं, वे इन संगणनाओं को अधिक तेज़ी से और अधिक शक्ति दक्षता के साथ परस्पर छोटी कार्यात्मक इकाइयों के सेट की तुलना में निष्पादित करेंगे; यह कनेक्टिंग वायर के छोटे होने के कारण होता है, जिसके परिणामस्वरूप वायर कैपेसिटेंस कम होता है और इसलिए तेज़ और कम पावर डिज़ाइन होता है। बड़े कम्प्यूटेशनल ब्लॉक होने का एक संभावित अवांछनीय परिणाम यह है कि जब ऑपरेंड का आकार एल्गोरिथम से मेल नहीं खा सकता है, तो संसाधनों का अक्षम उपयोग हो सकता है। चलाने के लिए अक्सर अनुप्रयोगों के प्रकार पहले से ज्ञात होते हैं जिससे तर्क, मेमोरी और रूटिंग संसाधनों को डिवाइस के प्रदर्शन को बढ़ाने के लिए तैयार किया जा सकता है, जबकि अभी भी भविष्य के अनुकूलन के लिए एक निश्चित स्तर का लचीलापन प्रदान करता है। इसके उदाहरण डोमेन विशिष्ट सरणियाँ हैं जिनका उद्देश्य उनके लचीलेपन को कम करके उनके अधिक सामान्य महीन दाने वाले FPGA चचेरे भाइयों की तुलना में शक्ति, क्षेत्र, थ्रूपुट के मामले में बेहतर प्रदर्शन प्राप्त करना है।

पुनर्विन्यास की दर
इन पुन: विन्यास योग्य प्रणालियों का विन्यास तैनाती के समय, निष्पादन चरणों के बीच या निष्पादन के दौरान हो सकता है। एक विशिष्ट पुनर्विन्यास योग्य प्रणाली में, तैनाती के समय डिवाइस को प्रोग्राम करने के लिए बिट स्ट्रीम का उपयोग किया जाता है। अधिक तत्वों को संबोधित करने और प्रोग्राम करने की आवश्यकता के कारण सूक्ष्म कणों वाले सिस्टम को अपने स्वयं के स्वभाव से अधिक मोटे अनाज वाले आर्किटेक्चर की तुलना में अधिक कॉन्फ़िगरेशन समय की आवश्यकता होती है। इसलिए, अधिक मोटे अनाज वाले आर्किटेक्चर संभावित कम ऊर्जा आवश्यकताओं से लाभान्वित होते हैं, क्योंकि कम जानकारी स्थानांतरित और उपयोग की जाती है। सहज रूप से, पुनर्संरचना की धीमी गति से बिजली की खपत कम होती है क्योंकि पुनर्संरचना की संबंधित ऊर्जा लागत समय की लंबी अवधि में परिशोधित होती है। आंशिक पुन: कॉन्फ़िगरेशन का उद्देश्य डिवाइस के हिस्से को फिर से प्रोग्राम करने की अनुमति देना है, जबकि दूसरा भाग अभी भी सक्रिय संगणना कर रहा है। आंशिक पुन: कॉन्फ़िगरेशन छोटे पुन: कॉन्फ़िगर करने योग्य बिट स्ट्रीम की अनुमति देता है इस प्रकार बिट स्ट्रीम में अनावश्यक जानकारी प्रसारित करने पर ऊर्जा बर्बाद नहीं होती है। बिट स्ट्रीम का संपीड़न संभव है लेकिन यह सुनिश्चित करने के लिए सावधानीपूर्वक विश्लेषण किया जाना चाहिए कि छोटी बिट स्ट्रीम का उपयोग करके बचाई गई ऊर्जा डेटा को डीकंप्रेस करने के लिए आवश्यक गणना से अधिक न हो।

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

रूटिंग/इंटरकनेक्ट
पुनः विन्यास योग्य उपकरणों में लचीलापन मुख्य रूप से उनके रूटिंग इंटरकनेक्ट से आता है। FPGAs के विक्रेताओं, Xilinx और Altera द्वारा लोकप्रिय इंटरकनेक्ट की एक शैली द्वीप शैली लेआउट है, जहां ऊर्ध्वाधर और क्षैतिज रूटिंग के साथ एक सरणी में ब्लॉक व्यवस्थित किए जाते हैं। अपर्याप्त रूटिंग वाला एक लेआउट खराब लचीलेपन और संसाधन उपयोग से ग्रस्त हो सकता है, इसलिए सीमित प्रदर्शन प्रदान करता है। यदि बहुत अधिक इंटरकनेक्ट प्रदान किया जाता है तो इसके लिए आवश्यकता से अधिक ट्रांजिस्टर की आवश्यकता होती है और इस प्रकार अधिक सिलिकॉन क्षेत्र, लंबे तार और अधिक बिजली की खपत होती है।

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

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

अमूर्तता के अलावा, अंतर्निहित हार्डवेयर घटकों का संसाधन प्रबंधन आवश्यक है क्योंकि ऑपरेटिंग सिस्टम द्वारा प्रक्रियाओं और थ्रेड्स को प्रदान किए गए वर्चुअल कंप्यूटर को उपलब्ध भौतिक संसाधनों (प्रोसेसर, मेमोरी और डिवाइस) को स्थानिक और अस्थायी रूप से साझा करने की आवश्यकता होती है।

यह भी देखें

 * मेमोरी के साथ कम्प्यूटिंग
 * पुनः विन्यास योग्य कंप्यूटिंग की शब्दावली
 * आईलैंड परियोजना
 * एम-लैब्स
 * 1chipMSX
 * पाइपरेंच
 * पीएसओसी
 * स्प्रिंटर (कंप्यूटर)

अग्रिम पठन

 * Cardoso, João M. P.; Hübner, Michael (Eds.), Reconfigurable Computing: From FPGAs to Hardware/Software Codesign, Springer, 2011.
 * S. Hauck and A. DeHon, Reconfigurable Computing: The Theory and Practice of FPGA-Based Computing, Morgan Kaufmann, 2008.
 * J. Henkel, S. Parameswaran (editors): Designing Embedded Processors. A Low Power Perspective; Springer Verlag, March 2007
 * J. Teich (editor) et al.: Reconfigurable Computing Systems. Special Topic Issue of Journal it — Information Technology, Oldenbourg Verlag, Munich. Vol. 49(2007) Issue 3
 * T.J. Todman, G.A. Constantinides, S.J.E. Wilton, O. Mencer, W. Luk and P.Y.K. Cheung, "Reconfigurable Computing: Architectures and Design Methods", IEEE Proceedings: Computer & Digital Techniques, Vol. 152, No. 2, March 2005, pp. 193–208.
 * A. Zomaya (editor): Handbook of Nature-Inspired and Innovative Computing: Integrating Classical Models with Emerging Technologies; Springer Verlag, 2006
 * J. M. Arnold and D. A. Buell, "VHDL programming on Splash 2," in More FPGAs, Will Moore and Wayne Luk, editors, Abingdon EE & CS Books, Oxford, England, 1994, pp. 182–191. (Proceedings,International Workshop on Field-Programmable Logic, Oxford, 1993.)
 * J. M. Arnold, D. A. Buell, D. Hoang, D. V. Pryor, N. Shirazi, M. R. Thistle, "Splash 2 and its applications, "Proceedings, International Conference on Computer Design, Cambridge, 1993, pp. 482–486.
 * D. A. Buell and Kenneth L. Pocek, "Custom computing machines: An introduction," The Journal of Supercomputing, v. 9, 1995, pp. 219–230.

बाहरी संबंध

 * Lectures on Reconfigurable Computing at Brown University
 * Introduction to Dynamic Partial Reconfiguration
 * ReCoBus-Builder project for easily implementing complex reconfigurable systems
 * DRESD (Dynamic Reconfigurability in Embedded System Design) research project