سؤال

أحاول أن أحصل على رأسي حول هذا (حسناً ، تحشر TBH ليلة قبل الامتحانات :) لكن لا يمكنني معرفة (ولا أجد نظرة عامة جيدة على الشبكة) من هذا:

"يمكن تعيين إدخالات جدول الصفحة لأكثر من إدخال TLB .. على سبيل المثال ، إذا تم إدخال جدول صفحة على سبيل المثال إلى إدخالين TLB ، فهذا يعرف باسم TLB ثنائي الاتجاه TLB"

سؤالي هو ، لماذا نريد أن نرسم هذا أكثر من مرة؟ من المؤكد أننا نريد أن يكون لدينا الحد الأقصى لعدد الإدخالات المحتملة الممثلة في TLB ، والازدواجية هل تضيع مساحة الصحيح؟ ماذا ينقصني؟

شكرا جزيلا

هل كانت مفيدة؟

المحلول

هذا لا يعني أنك ستقوم بتحميل نفس الإدخال إلى مكانين في الجدول - فهذا يعني أنه يمكن تحميل إدخال معين إليه أيضاً من مكانين في الطاولة. البديل حيث يمكنك فقط تعيين إدخال إلى مكان واحد في الجدول هو TLB تم تعيينه المباشر.

ينشأ العيب الأساسي لـ TLB المباشر المسموح به إذا كنت تقوم بالنسخ من جزء من الذاكرة إلى آخر ، و (بأي مخطط رسم مباشر تستخدمه وحدة المعالجة المركزية) ، يجب تعيين الترجمات لكلاهما على نفس المكان في TLB . في هذه الحالة ، ينتهي بك الأمر إلى إعادة تحميل إدخال TLB في كل مرة ، وبالتالي فإن TLB لا يفعل سوى القليل أو لا يفيد على الإطلاق. من خلال وجود TLB الترابطية ثنائية الاتجاه ، يمكنك ضمان أن أي اثنين من الإدخالات يمكن أن يكونا في TLB في نفس الوقت لذلك (على سبيل المثال) انتقال كتلة من النقطة A إلى النقطة B لا يمكن أن تدمر يومك-ولكن إذا تقرأ من منطقتين ، ودمجهما ، وكتابة النتائج إلى الثلث ، (إذا كانت جميع الترجمات الثلاثة تستخدم خريطة خريطة إلى نفس مجموعة إدخالات TLB).

إن القصور المتمثل في وجود TLB متعددة الممرات (مثل أي ذاكرة التخزين المؤقت متعددة الممرات) هو أنه لا يمكنك حساب مباشرة أيّ قد يحمل الموضع إدخالًا معينًا في وقت معين - فأنت تبحث بشكل أساسي عبر طرق العثور على الإدخال الصحيح. في اتجاهين ، نادراً ما تكون هذه مشكلة-لكن أربع طرق تدور حول الحد المفيد ؛ 8-Way Set Assist (TLBS | Caches) ليست شائعة على الإطلاق ، ويرجع ذلك جزئيًا إلى أن البحث عبر 8 مواقع محتملة للبيانات يبدأ في أن يصبح مفرطًا.

بمرور الوقت ، فإن عدد الطرق المنطقية للاستخدام في ذاكرة التخزين المؤقت أو TLB يميل إلى الارتفاع. يستمر التفاضل في السرعة بين الذاكرة والمعالجات في الارتفاع. كلما زادت الفرق ، كلما زادت الدورات التي يمكن أن تستخدمها وحدة المعالجة المركزية ولا تزال تنتج نتيجة في دورة ساعة ذاكرة واحدة (أو عدد محدد من دورات ساعة الذاكرة ، حتى لو كان أكثر من واحد).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top