تالار گفتمان مانشت
سوال در ارتباط با روش direct map - نسخه‌ی قابل چاپ

سوال در ارتباط با روش direct map - jionelmessi - 02 تیر ۱۳۹۵ ۰۴:۰۵ ب.ظ

با سلام
ی موردی داخل این روش برای من نا مفهومه اونم قسمت tag است
اصلا واقعا دلیل استفاده از tag چیست

RE: سوال در ارتباط با روش direct map - Behnam‌ - ۰۳ تیر ۱۳۹۵ ۰۳:۴۰ ق.ظ

(۰۲ تیر ۱۳۹۵ ۰۴:۰۵ ب.ظ)jionelmessi نوشته شده توسط:  با سلام
ی موردی داخل این روش برای من نا مفهومه اونم قسمت tag است
اصلا واقعا دلیل استفاده از tag چیست

tag واسه این هست که برای بلوک‌های حافظه که به یک بلوک مشترک از کش نگاشت میشن، تمییز قائل بشیم.
فرض کنید ۱۰۰ تا بلوک حافظه دارید ولی کش ۱۰ تا بلوک داره. توو حالت direct map میاید میگید که خونه‌ای از حافظه که میخواد وارد کش بشه رو، باقی‌مانده به ۱۰ رو حساب کنیم و توو اون خونه بنویسیم. یعنی مثلاً خونه‌ی ۵۲ی حافظه به ۲ی کش میره، ۷۴ میره به ۴ و ...
حالا فرض کنید میخواید بدونید که خونه‌ی ۵۲ از حافظه، آیا داخل کش قرار داره یا نه. خب میدونید که باید به خونه‌ی ۲ کش نگاه کنید اما این خونه‌ی ۲، ممکن هست به ۱۲، ۳۲، ۹۲ و هر عددی از ۰ تا ۱۰۰ که باقی‌مانده‌ش به ۱۰، دو هست متعلق باشه. پس چنتا بیت دیگه هم برای تمییز قائل شدن میخواید. برای اینکار از tag استفاده می‌کنند. مثلاً شما میگید وقتی خونه‌ی ۵۲ رو وارد خونه‌ی ۲ از کش کردم، توو بیت‌های tag بنویسم ۵ که بعداً متوجه بشم این به ۵۲ متعلق هست و نه مثلاً به ۱۲ و ۳۲ و ... اینطوری وقتی درخواست به ۵۲ اومد، شما میدونید که به ۲ی کش باید نگاه کنید و علاوه بر اون، بیت‌های tag هم باید ۵ باشند.

RE: سوال در ارتباط با روش direct map - jionelmessi - 04 تیر ۱۳۹۵ ۰۳:۱۹ ب.ظ

بسیار عالی قشنگ فهمیدم مرسی