इंटरलीव्ड मेमोरी

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

यह मल्टी-चैनल मेमोरी आर्किटेक्चर से अलग है, मुख्य रूप से इंटरलीव्ड मेमोरी मुख्य मेमोरी और स्मृति नियंत्रक  के बीच अधिक चैनल नहीं जोड़ती है। हालांकि, चैनल इंटरलीविंग भी संभव है, उदाहरण के लिए फ्रीस्केल i.MX6 प्रोसेसर में, जो इंटरलीविंग को दो चैनलों के बीच करने की अनुमति देता है।

सिंहावलोकन
इंटरलीव्ड मेमोरी के साथ, प्रत्येक मेमोरी बैंक को बदले में मेमोरी एड्रेस आवंटित किए जाते हैं। उदाहरण के लिए, दो मेमोरी बैंकों के साथ एक इंटरलीव्ड सिस्टम में ( शब्द-पता करने योग्य मेमोरी मानते हुए), यदि तार्किक पता 32 बैंक 0 से संबंधित है, तो तार्किक पता 33 बैंक 1 से संबंधित होगा, तार्किक पता 34 बैंक 0 से संबंधित होगा, और इसी तरह. एक इंटरलीव्ड मेमोरी को एन-वे इंटरलीव्ड कहा जाता है जब वहाँ होते हैं $n$ बैंक और स्मृति स्थान $i$ बैंक में रहता है $i mod n$.

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

इंटरलीव्ड DRAM
मुख्य मेमोरी ( रैंडम एक्सेस मेमोरी, RAM) आमतौर पर DRAM मेमोरी चिप्स के संग्रह से बनी होती है, जहाँ मेमोरी बैंक बनाने के लिए कई चिप्स को एक साथ समूहीकृत किया जा सकता है। यह तब संभव है, एक मेमोरी कंट्रोलर के साथ जो इंटरलीविंग का समर्थन करता है, इन मेमोरी बैंकों को बाहर करना ताकि मेमोरी बैंकों को इंटरलीव किया जा सके।

DRAM में डेटा पेजेस की यूनिट्स में स्टोर होता है। प्रत्येक DRAM बैंक में एक पंक्ति बफ़र होता है जो बैंक में किसी भी पृष्ठ तक पहुँचने के लिए कैश के रूप में कार्य करता है। डीआरएएम बैंक में किसी पृष्ठ को पढ़ने से पहले, इसे पहले डायनेमिक रैंडम-एक्सेस मेमोरी | पंक्ति-बफर में लोड किया जाता है। यदि पृष्ठ पंक्ति-बफर (या पंक्ति-बफर हिट) से तुरंत पढ़ा जाता है, तो इसमें एक मेमोरी चक्र में सबसे कम मेमोरी एक्सेस विलंबता होती है। यदि यह एक पंक्ति बफ़र मिस है, जिसे पंक्ति-बफ़र संघर्ष भी कहा जाता है, तो यह धीमा होता है क्योंकि नए पृष्ठ को पढ़ने से पहले पंक्ति-बफ़र में लोड करना पड़ता है। एक ही बैंक में अलग-अलग मेमोरी पेजों पर एक्सेस अनुरोध के रूप में रो-बफर मिस होते हैं। पंक्ति-बफ़र विरोध में स्मृति पहुँच के लिए पर्याप्त विलंब होता है। इसके विपरीत, विभिन्न बैंकों में मेमोरी एक्सेस एक उच्च थ्रूपुट के साथ समानांतर में आगे बढ़ सकता है।

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

जिस तरह से मेमोरी को संबोधित किया जाता है, उन मेमोरी स्थानों के लिए एक्सेस समय पर कोई प्रभाव नहीं पड़ता है जो पहले से ही सीपीयू कैश हैं, केवल उन मेमोरी स्थानों पर प्रभाव पड़ता है जिन्हें DRAM से पुनर्प्राप्त करने की आवश्यकता होती है।

इतिहास
आईबीएम 7030 स्ट्रेच कंप्यूटर के संबंध में 60 और 70 के दशक में इंटरलीव्ड मेमोरी में शुरुआती शोध आईबीएम में किया गया था। लेकिन आधुनिक कार्यान्वयन के लिए डिजाइन, लचीलापन और प्रदर्शन में सुधार के लिए दशकों तक विकास चलता रहा।

यह भी देखें

 * गैर-समान मेमोरी एक्सेस

बाहरी संबंध

 * Dale Adams on Interleaved Memory on Centris 650 & Quadra 800
 * Memory Systems and Pipelined Processors by Harvey G Cragon