تالار گفتمان مانشت
سوال ۷۵ کنکور مهندسی کامپیوتر سال ۸۹ - نسخه‌ی قابل چاپ

سوال ۷۵ کنکور مهندسی کامپیوتر سال ۸۹ - miladdn13 - 04 دى ۱۳۹۰ ۰۷:۴۲ ب.ظ

۲way set
۸block 4wordi
adress:12f,23f,12b,23b,12c,23c,67d,69d,69f,69c
mis rate?

RE: کنکور ۸۹ سوال۷۵ - homa - 04 دى ۱۳۹۰ ۰۸:۲۵ ب.ظ

(۰۴ دى ۱۳۹۰ ۰۷:۴۲ ب.ظ)miladdn13 نوشته شده توسط:  ۲way set
۸block 4wordi
adress:12f,23f,12b,23b,12c,23c,67d,69d,69f,69c
mis rate?
جواب ۶۰% میشه؟؟

RE: کنکور ۸۹ سوال۷۵ - miladdn13 - 04 دى ۱۳۹۰ ۱۰:۳۵ ب.ظ

are ama chera?

RE: کنکور ۸۹ سوال۷۵ - homa - 04 دى ۱۳۹۰ ۱۱:۵۵ ب.ظ

(۰۴ دى ۱۳۹۰ ۰۷:۴۲ ب.ظ)miladdn13 نوشته شده توسط:  ۲way set
۸block 4wordi
adress:12f,23f,12b,23b,12c,23c,67d,69d,69f,69c
mis rate?
اول خصوصیات کش که داریم رو مشخص میکنیم:
۱/کش از نوع انجمنی -مجموعه ایی است
۲/در هر مجموعه ۲ بلاک داریم با توجه به----->2way set
۳/هر بلاک دارای ۴ کلمه است
۴/کلا ۸ بلاک داریم پس تعداد مجموعه های ۲بلاکی تو حافظه برابر ۴ تا میشه

خصوصیت مهم حافظه های انجمنی-مجموعه ایی اینه که هر آدرس تنها میتونه در یک مجموعه قرار بگیره اما وقتی وارد مجموعه شد میتونه در هر یک از بلاک های داخل مجموعه قرار بگیره.
ما ۴ مجموعه داریم پس به ۲ بیت برای مشخص کردن مجموعه در هر آدرس نیاز داریم و چون هر بلاک دارای ۴ کلمه هست ۲ بیت هم برای مشخص کردن کلمه‌ی بلاک در واقع منظور افست هست
۲ بیت کم ارزش مربوط به کلمه میشه و ۲ بیت بالاتر مربوط به مجموعه.
این رو هم باید توجه کرد که همیشه اطلا عات از /به کش به صورت بلاک میباشد یعنی اگه درخواست برای یک کلمه باشد تمام کلمات مربوط به بلاکی که کلمه‌ی درخواستی در آن قرار دارد به کش آورده میشود
حالا با توجه به توضیحات بالا اگر آدرس‌ها رو به صورت دودویی بنویسیم داریم:
۱۲f--->0001,0010,1111
آدرس بالا کلمه ۱۱ (چهارم)و مجموعه‌ی ۱۱ را نشان میدهد.مجموعه‌ی ۱۱ (مجموعه شماره ۴)شامل ۲ بلاک هست چون کش همیشه از ابتدا خالی فرض میشود پس ما miss خواهیم داشت و بعد از آن بلاک شامل آن آدرس را به داخل کش منتقل میکنیم.۴ کلمه که شروع آدرس از ۰۰ است:
۰۰۰۱,۰۰۱۰,۱۱۰۰--->12c
۱۲d<----0001,0010,1101
۱۲e<----0001,0010,1110
۱۲f<--- 0001,0010,1100
اگر فرض کنیم آدرس بعدی ۱۲e بود ما دیگر miss نداشتیم.
آدرس بعدی که ۲۳f هست هم به مجموعه‌ی ۱۱ (چهارم) اشاره دارد اما ما ۲ بلاک در مجموعه داریم که یکی پر است و دیگری خالی و بلاک مربوط به آن را در بلاک خالی قرار میدهیم
به همین ترتیب برای آدرس های بعدی
که ۶ تا miss در ۱۰ مراجعه اتفاق میافتد
(۰۴ دى ۱۳۹۰ ۱۱:۲۹ ب.ظ)mjjoon نوشته شده توسط:  من هم درآوردم ۰/۶ . خانم هما شما اگه راه حلتون کوتاه یا راه حل تستی واسه این دارید بگید . ممنون.

ما فقط با ۴ بیت آخر کار داریم واین به نظرم سریعترین باشه
ولی راه حل تستی به اون صورت رو نمیدونم

کنکور ۸۹ سوال۷۵ - miladdn13 - 05 دى ۱۳۹۰ ۰۱:۱۲ ق.ظ

۴-way cache
۶۴مجموعه
گنجایش کش ۶۴kB
خطوط ادرس ۳۲بیتی
اندازه فیلد tag
جواب ۱۷بیت کسی می تونه یه راه حل خوب بده؟

کنکور ۸۹ سوال۷۵ - narges_r - 05 دى ۱۳۹۰ ۰۴:۴۶ ق.ظ

ولی من تعداد بیتهای tag برابر ۱۸تا بدست میارم به این شکل که تعداد بیتهای tag = تعداد بیتهای خطوط ادرس-تعداد بیتهای مورد نیاز برای ادرس دهی set ها- تعداد بیتهای مورد نیاز برای ادرس دهی word ها
تعداد بیتهای مورد نیار برای ادرس درهی set‌ها => 64=6^2=6تا
تعداد word های هر setبرابر با ۴*۶۴ / ۶۴k برابر ۸^۲ پس به هشت خط ادرس برای ادرس دهی word احتیاج داریم پس
تعداد بیتهای tag برابر با ۶-۸-۳۲ که برابر با ۱۸تاست

RE: کنکور ۸۹ سوال۷۵ - homa - 05 دى ۱۳۹۰ ۰۸:۵۳ ق.ظ

(۰۵ دى ۱۳۹۰ ۱۲:۴۳ ق.ظ)mjjoon نوشته شده توسط:  خانم هما من ۱ سوال برام پیش اومد .
اینجا بیان شده کش ۸ بلاک داره و ۲ -way هست .
شما اومدین ۸ بلوک رو تقسیم بر دو کردین و گفتید ۴ ایندکس وجود داره . ولی من فرض کردم ۸ بلوک وجود داره و هر ایندکس خودش ۱ مجموعه دوتایی هست .
جواب‌ها هر دو تصادفاً یکی شد . اما سوال اینجاست واقعا منظور این جور سوال کدوم حالت هست ؟ شایدم ایشون سوال رو خیلی خلاصه کرده.
معمولا تو کش های انجمنی از تعداد مجموعه های سخن گفته میشه . نه بلاک. اما شما نظرتون چیه ؟
ببخشید منظور سوالتون رو متوجه نشدمBlush

RE: کنکور ۸۹ سوال۷۵ - nina - 05 دى ۱۳۹۰ ۰۹:۲۸ ق.ظ

(۰۵ دى ۱۳۹۰ ۰۸:۵۳ ق.ظ)mjjoon نوشته شده توسط:  منم ۱۸ بیت درآوردم. لطف کنید آقای میلاد سایر گزینه‌ها رو هم بزارید .

منم ۱۸ بدست آوردم گزینه‌ها‌: ۷ بیت ۱۲ بیت ۱۹ بیت ۱۷ بیت

کنکور ۸۹ سوال۷۵ - Mojtaba - 05 دى ۱۳۹۰ ۰۹:۵۲ ق.ظ

سلام
فکر نکنم با این داده‌ها به طور قطعی بتونی بگی که tag مون ۱۷ بیتی هستش . چطوری با داده های فوق میتونی تعداد کلمات و اندازه کلمات را بدست بیاری؟
(۶۴ kB گنجایش کش شامل فیلد tag , v میشه واندازه بلاک در کش با احتساب به آنها بدست میاد و حالا اگه هم بخواهیم فرض کنیم که منظور از ۶۴ kB داده هاشه باز هم اندازه بلاک بدست آمده ولی تعداد کلمات در بلاک را چی کار کنیم).
نظر بنده این بود لطفا دوستان هم نظراتشون را اعلام کنن.