caching - क्यों नहीं एक डाटा बस है जो कैश लाइन आकार के रूप में व्यापक है?




memory cpu-architecture (2)

मुझे लगता है कि डीआरएएम बस की चौड़ाई वर्तमान 64 बिट तक AMD64 के विस्तारित हुई है। यह संयोग है कि यह शब्द आकार से मेल खाता है। यह संयोग नहीं हो सकता है कि यह एक स्थानान्तरण में एक पते को प्रेषित करने की अनुमति देता है।

नीचे देखें: उच्च बैंडविड्थ मेमोरी व्यापक बसेस का इस्तेमाल करता है, क्योंकि आप कितनी ऊंची चीजें घड़ी कर सकते हैं, और कुछ बिंदु पर यह व्यापक रूप से समांतर बनाने के लिए फायदेमंद हो जाता है।

यह 64 बीटी चौड़ाई वाली बस के साथ बहुत तेज प्रतीत होता है, जो एक बार में पूरी कैश लाइन लाने की अनुमति देगा।

बस्ट ट्रांसफर आकार को बस चौड़ाई से सहसंबंधित नहीं करना पड़ता है। डीआरएएम में / से स्थानांतरण कैश-लाइन-आकार के फटने में होता है सीपीयू को प्रत्येक 64-बिट्स के लिए एक अलग कमांड भेजने की ज़रूरत नहीं है, बस पूरे कैश-लाइन (पढ़ना या लिखना) के फट ट्रांसफ़र सेट करने के लिए। यदि वह कम चाहता है, तो उसे वास्तव में एक गर्भपात-फट कमांड भेजना होगा; कोई "एकल बाइट" या "एकल शब्द" स्थानांतरण आदेश नहीं है। (और हां, SDRAM विकी लेख अभी भी DDR3 / DDR4 पर लागू होता है।)

क्या आप सोच रहे थे कि कमांड ओवरहेड को कम करने के लिए व्यापक बसेस आवश्यक थे? वे नहीं हैं।

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

एक अत्यंत विस्तृत बस आपको इसे ऊंचे रूप से देखने से रोक देगी , क्योंकि आप समान सहनशीलता प्राप्त नहीं कर पाए। SATA और PCIe दोनों ने उच्च गति धारावाहिक बसों के साथ समानांतर बसों (आईडीई और पीसीआई) को बदल दिया। (पीसीआई समानांतर में कई लेन का उपयोग करता है, लेकिन प्रत्येक लेन अपनी ही स्वतंत्र लिंक है, न कि केवल एक समानांतर बस का हिस्सा)।

यह सीपीयू सॉकेट से 512 डेटा लाइनों को डीआरएएम सॉकेट के प्रत्येक चैनल में उपयोग करने के लिए पूरी तरह से अव्यावहारिक होगा । विशिष्ट डेस्कटॉप / लैपटॉप सीपीयू दोहरे-चैनल मेमोरी नियंत्रकों का उपयोग करते हैं (इसलिए दो डीआईएमएम एक ही समय में अलग-अलग चीज़ें कर सकते हैं), इसलिए यह सीपीयू सॉकेट पर मदरबोर्ड पर 1024 निशान और पिन होगा। (यह नियंत्रण रेखा की एक निश्चित संख्या के शीर्ष पर है, जैसे कि आरएएस, सीएएस, और इसी तरह।)

सचमुच उच्च घड़ी की गति पर एक बाहरी बस चलाना समस्याग्रस्त हो जाता है, इसलिए चौड़ाई और घड़ी की गति के बीच एक नियंत्रण है

डीआरएएम के बारे में और अधिक जानने के लिए, अलेरीफ डीआरपीर के हर प्रोग्रामर को मेमोरी के बारे में पता होना चाहिए । यह डीआरएएम मॉड्यूल, एड्रेस लाइंस, और एमक्यू / डीमैक्सर्स के हार्डवेयर डिज़ाइन के बारे में आश्चर्यजनक रूप से तकनीकी हो जाता है।

ध्यान दें कि आरडीआरएएम (रैमबस) ने एक उच्च गति 16-बिट बस का इस्तेमाल किया, और पीसी -133 एसडीआरएएम (1600 एमबी / एस बनाम 1066 एमबी / एस) की तुलना में अधिक बैंडविड्थ था। (यह खराब विलंबता थी और गर्म था, और कुछ तकनीकी और कुछ गैर-तकनीकी कारणों के लिए बाजार में असफल रहा)।

मुझे लगता है कि यह एक व्यापक बस को एक चक्र में भौतिक DRAM चिप्स से पढ़ सकता है की चौड़ाई तक का उपयोग करने में मदद करता है, इसलिए आपको ज्यादा बफरिंग की आवश्यकता नहीं है (कम विलंबता)।

उलिरिच डेरेपर के पेपर (ऊपर लिखे गए) यह पुष्टि करते हैं:

2 और ए 3 पते लाइनों के आधार पर एक कॉलम की सामग्री को डीआरएएम चिप के डेटा पिन पर उपलब्ध कराया जाता है। यह डेटा बास की चौड़ाई के बराबर बिट की कुल संख्या का निर्माण करने के लिए DRAM चिप्स के कई पर समानांतर में कई बार होता है।

सीपीयू के अंदर, बसों बहुत व्यापक हैं । कोर 2 टू आईवी ब्रिज ने कैश के विभिन्न स्तरों के बीच 128-बिट डेटा पथ का उपयोग किया, और निष्पादन इकाइयों से एल 1 तक। हैसवेल ने 256 बी (32 बी) को चौड़ा कर दिया, जिसमें एल 1 और एल 2 के बीच एक 64 बी मार्ग था

उच्च बैंडविड्थ मेमोरी को जो कुछ भी नियंत्रित किया जा रहा है, उसे अधिक कसकर युग्मित किया गया है, और 8 चैनलों के साथ प्रत्येक चैनल के लिए 128-बिट बस का उपयोग करता है। (128GB / s के कुल बैंडविड्थ के लिए) एचबीएम 2 एक ही चौड़ाई के साथ दो बार तेजी से चला जाता है।

एक 1024b बस के बजाय, 128b के 8 चैनल एक बहुत ही व्यापक बस के बीच एक नियंत्रण है जो सिंक में रखना मुश्किल है, बनाम एक अलग चैनल (जैसे पीसीआईई) पर प्रत्येक बिट से अधिक होने पर। एक अलग चैनल पर प्रत्येक बिट अच्छा है अगर आपको मजबूत सिग्नल और कनेक्टर्स की जरूरत है, लेकिन जब आप चीजों को बेहतर ढंग से नियंत्रित कर सकते हैं (जैसे जब मेमोरी सॉकेट नहीं है), तो आप विस्तृत फास्ट बसेस का उपयोग कर सकते हैं।

शायद दो अलग-अलग डेटा बस की चौड़ाई हो सकती है, मानक कैश लाइन फ़ेचिंग के लिए एक और बाहरी हार्डवेयर (डीएमए) के लिए जो केवल शब्द आकार मेमोरी एक्सेस के साथ काम करता है

यह पहले से ही मामला है। डीआरएएम नियंत्रकों को सीपीयू में एकीकृत किया जाता है, इसलिए सिस्टम उपकरणों जैसे SATA नियंत्रकों और नेटवर्क कार्डों से संचार उनसे एक बस (पीसीआईई) पर सीपीयू तक जाता है, फिर राम (डीडीआर 3 / डीडीआर 4) के लिए। सीपीयू आंतरिक स्मृति वास्तुकला से शेष सिस्टम को सिस्टम एजेंट कहा जाता है। चिप्ससेट नॉर्थब्रिज इसके साथ कुछ पीसीआईई गलियों में संचार करता है जो इसे प्रदान करता है।

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

जब एक कैश मिसाल होती है, तो CPU कैश पदानुक्रम में मुख्य मेमोरी से पूरी कैश लाइन लाता है। (x86_64 पर आमतौर पर 64 बाइट्स)

यह एक डेटा बस के माध्यम से किया जाता है, जो आधुनिक 64 बिट सिस्टम पर केवल 8 बाइट चौड़ा है। (क्योंकि शब्द का आकार 8 बाइट है)

संपादित करें: "डेटा बस" का अर्थ है इस संदर्भ में सीपीयू मरने और डीआरएएम मॉड्यूल के बीच की बस। यह डेटा बस चौड़ाई शब्द आकार के साथ सहसंबंधित नहीं है।

रणनीति के आधार पर वास्तव में अनुरोधित पते को पहले प्राप्त किया जाता है, और फिर बाकी कैश लाइन को क्रमिक रूप से प्राप्त किया जाता है

यह 64 बीटी चौड़ाई वाली बस के साथ बहुत तेज प्रतीत होता है, जो एक बार में पूरी कैश लाइन लाने की अनुमति देगा। (यह शब्द आकार से आठ गुना बड़ा होगा)

शायद दो अलग-अलग डेटा बस की चौड़ाई हो सकती है, मानक कैश लाइन फ़ेचिंग के लिए एक और बाहरी हार्डवेयर (डीएमए) के लिए जो केवल शब्द आकार मेमोरी एक्सेस के साथ काम करता है

डेटा बस के आकार को सीमित करने वाली सीमाएं क्या हैं?


मुझे लगता है कि भौतिक / लागत मुसीबत है डेटा लाइनों (64) के अतिरिक्त एक पता पंक्तियाँ (15+) और bank_select लाइन (3) हैं। प्लस अन्य लाइनें (सीएस, सीएएस, आरएएस ...) उदाहरण के लिए 6 वीं जनरेशन इंटेल ® कोर ™ प्रोसेसर परिवार डेटा पत्रक देखें सामान्य तौर पर, केवल एक बस के लिए 90 लाइनें और दो के लिए 180 अन्य लाइनें हैं (पीसीआई, डिस्प्ले ...) अगले पहलू पढ़ने में फट है। बैंक / चयन के साथ हम 8 बैंकों में से एक का चयन कर सकते हैं। सभी बैंकों पर एक पाठ के पते के साथ फट मोड में हम सभी बैंकों से टिक टिकने के लिए बैंक द्वारा डेटा पढ़ रहे हैं।





micro-architecture