۱
subtitle
ارسال: #۱
  
حافظه ها + میزان سربار اضافه شده به Cache
سلام . ممنون میشم یه نفر این سوال رو واسم توضیح بده.
میزان سربار اضافه شده به Cache یعنی چی؟
اندازه مجموعه رو چطوری پیدا میکنه؟
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
میزان سربار اضافه شده به Cache یعنی چی؟
اندازه مجموعه رو چطوری پیدا میکنه؟
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
۱
ارسال: #۲
  
RE: حافظه ها + میزان سربار اضافه شده به Cache
(۱۷ بهمن ۱۳۹۲ ۱۲:۱۷ ب.ظ)kati نوشته شده توسط: سلام . ممنون میشم یه نفر این سوال رو واسم توضیح بده.
میزان سربار اضافه شده به Cache یعنی چی؟
اندازه مجموعه رو چطوری پیدا میکنه؟
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
یعنی tag و valid. هر آنچه که دیتا نیست.
۴ way داریم پس کل کش تقسیم بر ۴ ===> 64k/4=16k کلمه داریم.
هر set چهار بلاک داره پس ۱۶k/4=4k ست هم داریم. و باقیه ماجرا...
ارسال: #۳
  
RE: حافظه ها + میزان سربار اضافه شده به Cache
(۱۷ بهمن ۱۳۹۲ ۱۲:۳۹ ب.ظ)unicornux نوشته شده توسط:(17 بهمن ۱۳۹۲ ۱۲:۱۷ ب.ظ)kati نوشته شده توسط: سلام . ممنون میشم یه نفر این سوال رو واسم توضیح بده.
میزان سربار اضافه شده به Cache یعنی چی؟
اندازه مجموعه رو چطوری پیدا میکنه؟
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
یعنی tag و valid. هر آنچه که دیتا نیست.
۴ way داریم پس کل کش تقسیم بر ۴ ===> 64k/4=16k کلمه داریم.
هر set چهار بلاک داره پس ۱۶k/4=4k ست هم داریم. و باقیه ماجرا...
قسمت بولد شده فکر نمی کنم ربطی به ۴ راهه بودنش داشته باشه.به نظرم وقتی اندازه ی کلمه مشخص نمی شه باید ۴ بایت در نظر بگیریمش. درست می گم؟
ارسال: #۴
  
RE: حافظه ها + میزان سربار اضافه شده به Cache
(۱۷ بهمن ۱۳۹۲ ۰۳:۱۷ ب.ظ)hosein_khoshdel نوشته شده توسط:(17 بهمن ۱۳۹۲ ۱۲:۳۹ ب.ظ)unicornux نوشته شده توسط:(17 بهمن ۱۳۹۲ ۱۲:۱۷ ب.ظ)kati نوشته شده توسط: سلام . ممنون میشم یه نفر این سوال رو واسم توضیح بده.
میزان سربار اضافه شده به Cache یعنی چی؟
اندازه مجموعه رو چطوری پیدا میکنه؟
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
یعنی tag و valid. هر آنچه که دیتا نیست.
۴ way داریم پس کل کش تقسیم بر ۴ ===> 64k/4=16k کلمه داریم.
هر set چهار بلاک داره پس ۱۶k/4=4k ست هم داریم. و باقیه ماجرا...
قسمت بولد شده فکر نمی کنم ربطی به ۴ راهه بودنش داشته باشه.به نظرم وقتی اندازه ی کلمه مشخص نمی شه باید ۴ بایت در نظر بگیریمش. درست می گم؟
با فرض شما حل کنیم طول هر خونه کش میشه ۳۲ بیت. یعنی ۱۲ بیت ایندکس بره بیرون باید ۱۱ بیت برای بلاک آفست بزاریم که در مجموع tag+index=20 بشه! درست میگم؟
من شکلی که از کش دارم با شکلی که شما دارین فرق داره. همشم تقصیر کتابِ پترسونِ. اما همیشه درست در میاد.
۱
ارسال: #۵
  
RE: حافظه ها + میزان سربار اضافه شده به Cache
راستش منم متوجه ربطه اینکه ست رو به ۴ تقسیم کردید نشدم!!
من خودم فکر میکردم باید به قول دوستمون اندازه ی یک word رو ، چهار بایت در نظر بگیریم!!
در آخر من هنوز متوجه نشدم ! یاری برسانید !
من خودم فکر میکردم باید به قول دوستمون اندازه ی یک word رو ، چهار بایت در نظر بگیریم!!
در آخر من هنوز متوجه نشدم ! یاری برسانید !
۰
ارسال: #۶
  
RE: حافظه ها + میزان سربار اضافه شده به Cache
سوالای معماری متاسفانه هیچ استانداردی برای حلشون وجود نداره ظاهرا!
اگه اندازه هر بلاک رو ۴ بایت در نظر بگیریم باز یه مشکلی هست. اگه ۴ بایت برای هر بلاک باشه ۲ بیت بایت آفست خواهیم داشت. تعداد ست هامون هم ۴k هست پس ۱۲ بیت برای تعیین ست میخوایم. یعنی اینجوری ۶ بیت برای tag باقی میمونه. یعنی ۷بیت سربار داریم. ۱۶k*7=112k سربار!
ظاهرا اینجا هر بلاک رو ۴ بایت در نظر گرفته ولی بایت آفست رو در نظر نگرفته!!!!
اگه اندازه هر بلاک رو ۴ بایت در نظر بگیریم باز یه مشکلی هست. اگه ۴ بایت برای هر بلاک باشه ۲ بیت بایت آفست خواهیم داشت. تعداد ست هامون هم ۴k هست پس ۱۲ بیت برای تعیین ست میخوایم. یعنی اینجوری ۶ بیت برای tag باقی میمونه. یعنی ۷بیت سربار داریم. ۱۶k*7=112k سربار!
ظاهرا اینجا هر بلاک رو ۴ بایت در نظر گرفته ولی بایت آفست رو در نظر نگرفته!!!!
۰
ارسال: #۷
  
RE: حافظه ها + میزان سربار اضافه شده به Cache
توی کتاب پوران دکتر یوسفی یک فرمت برای آدرس نگاشت های set-associative ارائه دادن که من تا حالا به تناقضی باهاش برنخوردم.
درصورتی که:
تعداد کلمات حافظه اصلی = دو به توان m
تعداد کلمات cache = دو به توان c
تعداد بلاک در هر set = دو به توان t
تعداد کلمات در هر بلاک = دو به توان w
m-c+t بیت برای tag
c-w-t بیت برای index
w بیت Block offset
در این سوال هم اگر در نظر بگیریم که یک کلمه ۴ بایت هست، cache شامل ۱۶k کلمه خواهد بود. که یعنی دو به توان ۱۴ و c=14.
حافظه هم که آدرس ۲۰ بیتی داره یعنی دو به توان ۲۰ کلمه درش جا میشه و m=20.
نگاشت ۴ راهه هست یعنی در هر set تعداد ۴ یا دو به توان ۲ بلاک داریم و t=2.
==> تعداد بیت برای tag میشه m-c+t = 20 - 14 + 2 = 8. بنابراین tag نیاز به ۸ بیت داره.
۸ + یک بیت برای valid میشه ۹ بیت سربار برای هر بلاک.
حالا با توجه به گزینه ها فقط گزینه ۴ بر ۹ بخش پذیره و اونم با ضریب ۱۶kb. این یعنی در سوال هر کلمه یه بلاک در نظر گرفته شده و به ازای هر بلاک یک tag و یک valid داریم.
درصورتی که:
تعداد کلمات حافظه اصلی = دو به توان m
تعداد کلمات cache = دو به توان c
تعداد بلاک در هر set = دو به توان t
تعداد کلمات در هر بلاک = دو به توان w
m-c+t بیت برای tag
c-w-t بیت برای index
w بیت Block offset
در این سوال هم اگر در نظر بگیریم که یک کلمه ۴ بایت هست، cache شامل ۱۶k کلمه خواهد بود. که یعنی دو به توان ۱۴ و c=14.
حافظه هم که آدرس ۲۰ بیتی داره یعنی دو به توان ۲۰ کلمه درش جا میشه و m=20.
نگاشت ۴ راهه هست یعنی در هر set تعداد ۴ یا دو به توان ۲ بلاک داریم و t=2.
==> تعداد بیت برای tag میشه m-c+t = 20 - 14 + 2 = 8. بنابراین tag نیاز به ۸ بیت داره.
۸ + یک بیت برای valid میشه ۹ بیت سربار برای هر بلاک.
حالا با توجه به گزینه ها فقط گزینه ۴ بر ۹ بخش پذیره و اونم با ضریب ۱۶kb. این یعنی در سوال هر کلمه یه بلاک در نظر گرفته شده و به ازای هر بلاک یک tag و یک valid داریم.
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close