۰
subtitle
ارسال: #۱
  
محاسبه حافظه لازم برای کش
سلام دوستان
در یک سیستم که یک حافظه اصلی و یک کش با ساختار direct-mapped دارد,اندازه قسمت داده مربوط به کش برابر ۶۴Kbyte می باشد.تعداد خطوط آدرس ۳۰ تا است و اندازه هر بلاک کش ۳۲ بیت است.حافظه لازم برای کل کش چقدر است؟؟(بیت Valid نیز موجود است.)
۲^۱۴ kbit
۱۶kbyte
۷۵۲kbit
۹۴kbit
در یک سیستم که یک حافظه اصلی و یک کش با ساختار direct-mapped دارد,اندازه قسمت داده مربوط به کش برابر ۶۴Kbyte می باشد.تعداد خطوط آدرس ۳۰ تا است و اندازه هر بلاک کش ۳۲ بیت است.حافظه لازم برای کل کش چقدر است؟؟(بیت Valid نیز موجود است.)
۲^۱۴ kbit
۱۶kbyte
۷۵۲kbit
۹۴kbit
۰
ارسال: #۲
  
Re: محاسبه حافظه لازم برای کش
اندازه قسمت داده کش ۱۶کیلوبایت هس.اندازه هر بلاک هم ۳۲بیت یا همون ۴بایت هس. پس اگه ۱۶کیلوبایت رو تقسیم رر ۴بایت اندازه هر بلاک کنیم تعداد بلاکهای کشمون بدست میاد که میشه دو به توان ۱۴/ اینکه واضحه چرا اینطوری بدست میاد. برا خودمم یبار توضیح میدم که چون کل داده مون ۱۶کیلوبایته و هر ۴بایت ازین مقدار کل داده، بلاکمون رو نشون میده که درکل میشه دو به توان ۱۴تا بلاک.
چون تعداد بلاکها دو به توان ۱۴تاست پس تعداد بیتهای ایندکس میشه ۱۴تا. قسمتword هم تعداد بیتهاش ۲تاس چون اندازه هر بلاک ۴بایته.
گفته کل بیتهای آدرس ۳۰تاس پس اگه ۱۴ و۲ رو از ۳۰ کم کنیم ۱۴ تا بیت میمونه واسه قسمت tag.
برای هر بلاک ۱۴بیتtag و یه بیتvalid داریم.
حالا کل حافظه لازم برای کش رو اینطوری میتونیم بدست بیاریم که: اندازه دیتا + دو به توان ۱۴ در تعداد بیتهای tag + دو به توان ۱۴ تا valid یک بیتی.
که همرو جمع کنیم میشه ۷۵۲کیلو .
چون تعداد بلاکها دو به توان ۱۴تاست پس تعداد بیتهای ایندکس میشه ۱۴تا. قسمتword هم تعداد بیتهاش ۲تاس چون اندازه هر بلاک ۴بایته.
گفته کل بیتهای آدرس ۳۰تاس پس اگه ۱۴ و۲ رو از ۳۰ کم کنیم ۱۴ تا بیت میمونه واسه قسمت tag.
برای هر بلاک ۱۴بیتtag و یه بیتvalid داریم.
حالا کل حافظه لازم برای کش رو اینطوری میتونیم بدست بیاریم که: اندازه دیتا + دو به توان ۱۴ در تعداد بیتهای tag + دو به توان ۱۴ تا valid یک بیتی.
که همرو جمع کنیم میشه ۷۵۲کیلو .
ارسال: #۳
  
RE: محاسبه حافظه لازم برای کش
(۱۱ دى ۱۳۹۲ ۰۱:۳۶ ب.ظ)Arshad93 نوشته شده توسط: اندازه قسمت داده کش ۱۶کیلوبایت هس.اندازه هر بلاک هم ۳۲بیت یا همون ۴بایت هس. پس اگه ۱۶کیلوبایت رو تقسیم رر ۴بایت اندازه هر بلاک کنیم تعداد بلاکهای کشمون بدست میاد که میشه دو به توان ۱۴/ اینکه واضحه چرا اینطوری بدست میاد. برا خودمم یبار توضیح میدم که چون کل داده مون ۱۶کیلوبایته و هر ۴بایت ازین مقدار کل داده، بلاکمون رو نشون میده که درکل میشه دو به توان ۱۴تا بلاک.
چون تعداد بلاکها دو به توان ۱۴تاست پس تعداد بیتهای ایندکس میشه ۱۴تا. قسمتword هم تعداد بیتهاش ۲تاس چون اندازه هر بلاک ۴بایته.
گفته کل بیتهای آدرس ۳۰تاس پس اگه ۱۴ و۲ رو از ۳۰ کم کنیم ۱۴ تا بیت میمونه واسه قسمت tag.
برای هر بلاک ۱۴بیتtag و یه بیتvalid داریم.
حالا کل حافظه لازم برای کش رو اینطوری میتونیم بدست بیاریم که: اندازه دیتا + دو به توان ۱۴ در تعداد بیتهای tag + دو به توان ۱۴ تا valid یک بیتی.
که همرو جمع کنیم میشه ۷۵۲کیلو .
ممنون دوست عزیز از اینکه وقت گذاشتید
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close