تالار گفتمان مانشت

نسخه‌ی کامل: سوال 67 آزمون پارسه جامع دوم
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
چرا تعداد set ها 16 تا میشه که واسش 4 بیت گرفته.
من هرچی حساب میکنم 8 تا set داریم.

[تصویر:  327622_CVAR.jpg]
سلام . همون 3 تا گرفته ، دقت کنید تو هر set ، چهار بلوک داریم ،از آدرس 0020 تا 0323 هر چهار آدرس set شماره 2 هستن اما چون tagشون فرق داره هرکدوم به ترتیب تو یه بلوک set شماره 2 جا میگیرن ، حالا با اومدن آدرس 0424 ، چون باز شماره ست 2 هست اما بلاک خالی نداریم (هر 4 تا پر شدن)باز miss رخ میده وبلاک اول (با آدرس 0020) خالی میشه و 0424 اونجا میشینه و همونجور به ترتیب تا آخرین آدرس هر آدرس جدید براش miss رخ میده ، به این ترتیب ما هیچ برخوردی نخواهیم داشت.
پاسخ نامه که گفته چهار بیت برای انتخاب set.
مشکل من با این سوال فقط قسمت بیت های انتخاب set نیست ، مشکل بعدی خود آدرسان که معلوم نیست چطوری اون رو در نظر گرفته آدرسه ها ده دهی داده شدن یا hex معلوم نیست.

پاسخ نامه خیلی ابتدایی با سوال برخورد کرده در صورتی که میشه برداشت های دیگه ای از سوال کرد.
در صورت سوال نوع ارتباط کش و حافظه و پردازنده اصلا معلوم نیست.
(27 دى 1393 09:26 ب.ظ)moloodi نوشته شده توسط: [ -> ]پاسخ نامه که گفته چهار بیت برای انتخاب set.
مشکل من با این سوال فقط قسمت بیت های انتخاب set نیست ، مشکل بعدی خود آدرسان که معلوم نیست چطوری اون رو در نظر گرفته آدرسه ها ده دهی داده شدن یا hex معلوم نیست.

پاسخ نامه خیلی ابتدایی با سوال برخورد کرده در صورتی که میشه برداشت های دیگه ای از سوال کرد.
خب گفته حافظه اصلی 64kکلمه هستش پس تعداد بیت آدرس فیزیکی ما میشه 16 بیت ، تو این سوال مثلا آدرس 0020 میشه 0000000000100000 که چهار بیت اول یعنی این آدرس کلمه صفرم هستش (هر بلوک 16 کلمه ) سه بیت بعد میگه در ست شماره 2 جا میگیره و 9 بیت بعد هم تگ هستش.فکر نمیکنم مشکلی داشته باشه.فقط به هیچ وجه تعداد بیت ست 4 بیت نمیشه . حجم حافظه کش 9^2 هستش و حجم بلاکها 16 کلمه پس 5^2 بلاک داریم که چون 4 راهه هست 3^2 تعداد مجموعه های ما خواهد بود.
مگه نباید هر محتویات هر ادرسی که میره توی بلاک طبق لوکالیتی 15 تا دیگه از هم بلاکیهاشم ببره؟ اونارو چطوری حساب کرین؟خب باید شماره ورد راهم برای هرکدوم بدست بیاریم که
با استفاده از تگ شون اصل لوکالیتی چک میشه ، در واقع اونایی ک تگشون یکسانه در یک بلوک هستند

ضمنا سوال به نظرم مشکل داره و ب میل طراح پاسخ داده شده چون اگر شما نسبت حافظه اصلی به حافظه کش رو لگاریتم بگیری به علاوه لگاریتم ۴ کنی باید سایزه تگ بدست بیاد ! ک اگر اینکارو انجام بدیم اونوقت میشه ۹ و ست میشه ۳ بیت ( چون حافظه ۵۱۲ و بلاک ها ۱۶ تایی هستن و ۴ راهه است ) و به این ترتیب غلط در میاد Smile
البته من با هر دو روش چک کردم جواب باز به همونی ک تو پاسخ نامه بود میرسید فقط نحوه ی تخصیص بیت تو پاسخنامه اشتباس
لینک مرجع