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

مثال نگاشت مستقیم -پوران - mosaferkuchulu - 25 آذر ۱۳۹۰ ۰۱:۳۵ ب.ظ

بچه‌ها مثال اول ص ۱۹۷ پوران چرا ۱۶ رو از ۳۲ کم کرده؟؟؟باید ۱۴ رو کم می کرد!!!
اصلا این ۲ ای که با ۱۴ جمع کرده رو از کجا آورده؟؟؟مگر نباید (m-c) باشه؟؟Huh

RE: مثال نگاشت مستقیم -پوران - homa - 25 آذر ۱۳۹۰ ۰۳:۴۳ ب.ظ

(۲۵ آذر ۱۳۹۰ ۰۱:۳۵ ب.ظ)mosaferkuchulu نوشته شده توسط:  بچه‌ها مثال اول ص ۱۹۷ پوران چرا ۱۶ رو از ۳۲ کم کرده؟؟؟باید ۱۴ رو کم می کرد!!!
اصلا این ۲ ای که با ۱۴ جمع کرده رو از کجا آورده؟؟؟مگر نباید (m-c) باشه؟؟Huh
به نظر من هم باید از ۱۴ کم میکرد ولی میخواسته قسمت بیت اعتبار که بازای هر بلاک ۱bit هست رو جدا از بیت های مربوط به tag حساب کنه ولی اگه توجه کنیم می بینیم که اون محاسباتی که انجام داده جمع کل بیت های که در نظر گرفته میشه ۳۱ بیت یعنی یا باید به جای ۱bit بذاره ۲ یا اینکه بیت های tag رو ۱۷ بیت در نظر بگیره و محاسباتش غلطه

ولی در مورد ۲ که با ۱۴ جمع کرده من تو کتاب دیگه خوندم که غیر از فیلد tag دو بیت داریم که یک بیت مربوط به بیت اعتبار و یک بیت مربوط به بیت آلوده است (یعنی آیا لازم است داده‌ی مربوط به آن در سطوح دیگر حافظه باز نویسی شود یا نه)
شاید منظورش همین بوده ولی با توجه به این هم محاسباتش غلطه باید به جای ۱۶k *1bit بنویسه ۱۶k*2bit

مثال نگاشت مستقیم -پوران - MSZ - 25 آذر ۱۳۹۰ ۰۶:۴۰ ب.ظ

اون سوال درست حل شده
اون ۲ مربوط به Byte Offset هست. اگر دقت کنین نوشته هر کلمه ۴ بایت هست و این دو بیت برای مشخص کردن این هست که کدوم یکی از اون ۴ بایت مد نظر هست
اگر هر کلمه شامل ۸ بایت بود، اونوقت ۳ بیت رو کنار میزاشت و به همین ترتیب
پس حلشون درسته ولی متاسفانه چون هیچ توضیحی بابت اون قسمت ندادن، باعث غافلگیری اکثر خواننده‌ها شدن!!!

RE: مثال نگاشت مستقیم -پوران - homa - 25 آذر ۱۳۹۰ ۰۸:۰۸ ب.ظ

(۲۵ آذر ۱۳۹۰ ۰۶:۴۰ ب.ظ)MSZ نوشته شده توسط:  اون سوال درست حل شده
اون ۲ مربوط به Byte Offset هست. اگر دقت کنین نوشته هر کلمه ۴ بایت هست و این دو بیت برای مشخص کردن این هست که کدوم یکی از اون ۴ بایت مد نظر هست
اگر هر کلمه شامل ۸ بایت بود، اونوقت ۳ بیت رو کنار میزاشت و به همین ترتیب
پس حلشون درسته ولی متاسفانه چون هیچ توضیحی بابت اون قسمت ندادن، باعث غافلگیری اکثر خواننده‌ها شدن!!!

دقیقا همین که میگین درسته،
یه لحظه به ذهنم اومد ولی فکر کردم شاید اشتباه باشه ولی الان که فکر میکنم کاملا درسته
ببخشید من خوب توجه نکردم
ولی هنوز میگم که جوابی که بدست آورده اشتباهه چون به ازاء هر کلمه یک offset دو بیتی داریم چون ۱۶K کلمه داریم پس ۱۶K *2bit مقدار ظرفیتی که واسه offset داخل کش وجود داره.

مثال نگاشت مستقیم -پوران - MSZ - 25 آذر ۱۳۹۰ ۰۸:۳۹ ب.ظ

(۲۵ آذر ۱۳۹۰ ۰۸:۰۸ ب.ظ)homa نوشته شده توسط:  هنوز میگم که جوابی که بدست آورده اشتباهه چون به ازاء هر کلمه یک offset دو بیتی داریم چون ۱۶K کلمه داریم پس ۱۶K *2bit مقدار ظرفیتی که واسه offset داخل کش وجود داره.

ببینید، مقدار offset دز هنگام محاسبه اندازه Tag کنار گذاشته شده، و تا جایی که من میدونم نباید تو محاسبات دوباره لحاظ بشه. البته من به چند تا کتاب دیگه هم سر زدم و همه اونها همین کار رو کرده بودنو نتیجه این شد که هر چند بین برای offset نیاز باشه موقع محاسبه Tag Size کنار گذاشته میشه و محاسبه تعداد بیت‌ها صورت گرفته میشه

البته من در حدی نیستم که بخوام رو مباحث این درس خیلی نظر بدم ولی چون چند روزی هست دارم این مباحث رو از چند تا کتاب مختلف مطالعه می کنم نتیجه گیری های خودم رو عرض کردم که البته ممکنه من در اشتباه باشم که خوشحال میشم دوستان گوشزد کنن