۰
subtitle
ارسال: #۱
  
سوال کنکور فناوری اطلاعات سال ۸۶(حافظه کش)
یک حافظه کش دستوربا گنجایش ۲۵۶ بایت را در نظربگیرید که هر بلوک آن حاوی یک کلمه۳۲بیتی است فرض کنید یک حلقه حاوی ۶۵دستور متوالی برای ۳ بار اجرا می شود با فرض اینکه حافظه در شروع کا رخالی باشدHIT RATEدر حالت زیر چقدر است؟(هر دستور ۳۲ بیت است)
۱/از کش direct mappingاستفاده شود.
۲/اگر کش به صورتFully associative باسیاست جایگزینی LRUباشد.
مممنون میشم روش حل اینجور سوالات رو برام کامل باز کنید چون حل اینجور مدل سوالاتو بلد نیستم و متوجه نمیشم.
پیشاپیش از همه دوستان ممنون.
۱/از کش direct mappingاستفاده شود.
۲/اگر کش به صورتFully associative باسیاست جایگزینی LRUباشد.
مممنون میشم روش حل اینجور سوالات رو برام کامل باز کنید چون حل اینجور مدل سوالاتو بلد نیستم و متوجه نمیشم.
پیشاپیش از همه دوستان ممنون.
۰
ارسال: #۲
  
فناوری اطلاعتت۸۶_حافظه کش
ما ۶۵ دستور داریم درسته؟چون روش دایرکت هست پس دفعه اول که ۶۴ تا بلاک با دستورات یک تا ۶۴ پر میشه برای ۶۵ باید از بلاک اول بزاریم پس اینم میشه miss. حالا برای بار دوم دستورای ۲تا ۶۴ که سر جاشون هستن فقط اول نیست که جایگزین میشه و آخری هم که چون دستور اول الان جاشه باد جایگزین شه.
در الگوریتم LRU هر دفعه توی بلاکی جایگزین میشه که نسبت به بقیه قدیمی تره.مثلا برای دستور ۶۵ از دور اول اجرا ما اونو جایگزین اولین بلاک میکنیم که آدرس دستور اول هست چون از همه قدیمی تره.حالا دور دوم اجرا دستور اول توی بلاک دومی جایگزین میشه چون حالا اون قدیمی ترینه و الی آخر.هر دفعه جایگزین قدیمی ترین میشه.
در الگوریتم LRU هر دفعه توی بلاکی جایگزین میشه که نسبت به بقیه قدیمی تره.مثلا برای دستور ۶۵ از دور اول اجرا ما اونو جایگزین اولین بلاک میکنیم که آدرس دستور اول هست چون از همه قدیمی تره.حالا دور دوم اجرا دستور اول توی بلاک دومی جایگزین میشه چون حالا اون قدیمی ترینه و الی آخر.هر دفعه جایگزین قدیمی ترین میشه.
ارسال: #۳
  
RE: فناوری اطلاعتت۸۶_حافظه کش
(۲۴ بهمن ۱۳۹۰ ۰۹:۰۱ ب.ظ)zzsnowdrop نوشته شده توسط: ما ۶۵ دستور داریم درسته؟چون روش دایرکت هست پس دفعه اول که ۶۴ تا بلاک با دستورات یک تا ۶۴ پر میشه برای ۶۵ باید از بلاک اول بزاریم پس اینم میشه miss. حالا برای بار دوم دستورای ۲تا ۶۴ که سر جاشون هستن فقط اول نیست که جایگزین میشه و آخری هم که چون دستور اول الان جاشه باد جایگزین شه.
در الگوریتم LRU هر دفعه توی بلاکی جایگزین میشه که نسبت به بقیه قدیمی تره.مثلا برای دستور ۶۵ از دور اول اجرا ما اونو جایگزین اولین بلاک میکنیم که آدرس دستور اول هست چون از همه قدیمی تره.حالا دور دوم اجرا دستور اول توی بلاک دومی جایگزین میشه چون حالا اون قدیمی ترینه و الی آخر.هر دفعه جایگزین قدیمی ترین میشه.
ممنون دوست عزیز این نکته خیلی مهمی بود که من بهش دقت نکردم.انشالله انجایی که می خواهی قبول بشی و موفق باشی در پناه حق
-۱
ارسال: #۴
  
فناوری اطلاعتت۸۶_حافظه کش
کش ۲۵۶ بایت هست و کلمات هم ۳۲ بیتی یعنی ۴ بایتی. پس تهداد بلاک هاب کش میشه ۲۵۶ تقسیم بر ۴ که میشه ۶۴ بلاک.
توی روش direct اینطور هست:اول اینکه دستورات متوالی هستن پس آدرساشون پشت سر هم هست و اولین توی اولین بلاک دومی بلاک دوم و الی آخر قرار میگیره. حالا ما ۶۴ تا بلاک داریم و ۶۵ دستور.در بار اول که اجرا میشه چون آدرس هیچکدوم توی کش نیست به ازایهر ۶۴ بلاک miss رخ میده حالا آدرس دستور ۶۵ هم جایگزین آدرس توی بلاک اول میشه پس کلا برای بار اول ۶۵ بار missداریم. دفعهی دوم و سوم فقط به ازاری دستور اول و آخر miss رخ میده.چون اولین دستور باید آدرسش توی بلاک اول قرار بگیره که بعد اجرای قبلی آدرس آخرین دستور توشه و یک بار هم به ازای آخری چون باید توی بلاک اول قار بگیره.پس در کل شد ۶۹ تا miss.
حالا اگه به ازای همه miss داشته باشیم میشه ۶۵ * ۳ پس Hitمیشه
(۶۵*۳)-۶۹=۱۲
در LRU صفحه ای جایگزین میشه که در گذشتهی اخیر استفاده نشده.یعنی بعد از اینکه ۶۴ بلوک پر شد برای ۶۵ بلوک اول که قدیمی تره استفاده میشهوبرای بار دوم اجرای دستورات به ترتیب برای دستور اول بلوک دوم دستور دوم بلوک سه و الی آخر.
یعنی جایگزین قدیمی تره میشه .پس هیچی Hit نداریم.
توی روش direct اینطور هست:اول اینکه دستورات متوالی هستن پس آدرساشون پشت سر هم هست و اولین توی اولین بلاک دومی بلاک دوم و الی آخر قرار میگیره. حالا ما ۶۴ تا بلاک داریم و ۶۵ دستور.در بار اول که اجرا میشه چون آدرس هیچکدوم توی کش نیست به ازایهر ۶۴ بلاک miss رخ میده حالا آدرس دستور ۶۵ هم جایگزین آدرس توی بلاک اول میشه پس کلا برای بار اول ۶۵ بار missداریم. دفعهی دوم و سوم فقط به ازاری دستور اول و آخر miss رخ میده.چون اولین دستور باید آدرسش توی بلاک اول قرار بگیره که بعد اجرای قبلی آدرس آخرین دستور توشه و یک بار هم به ازای آخری چون باید توی بلاک اول قار بگیره.پس در کل شد ۶۹ تا miss.
حالا اگه به ازای همه miss داشته باشیم میشه ۶۵ * ۳ پس Hitمیشه
(۶۵*۳)-۶۹=۱۲
در LRU صفحه ای جایگزین میشه که در گذشتهی اخیر استفاده نشده.یعنی بعد از اینکه ۶۴ بلوک پر شد برای ۶۵ بلوک اول که قدیمی تره استفاده میشهوبرای بار دوم اجرای دستورات به ترتیب برای دستور اول بلوک دوم دستور دوم بلوک سه و الی آخر.
یعنی جایگزین قدیمی تره میشه .پس هیچی Hit نداریم.
ارسال: #۵
  
RE: فناوری اطلاعتت۸۶_حافظه کش
(۲۴ بهمن ۱۳۹۰ ۰۳:۱۸ ب.ظ)zzsnowdrop نوشته شده توسط: کش ۲۵۶ بایت هست و کلمات هم ۳۲ بیتی یعنی ۴ بایتی. پس تهداد بلاک هاب کش میشه ۲۵۶ تقسیم بر ۴ که میشه ۶۴ بلاک.
توی روش direct اینطور هست:اول اینکه دستورات متوالی هستن پس آدرساشون پشت سر هم هست و اولین توی اولین بلاک دومی بلاک دوم و الی آخر قرار میگیره. حالا ما ۶۴ تا بلاک داریم و ۶۵ دستور.در بار اول که اجرا میشه چون آدرس هیچکدوم توی کش نیست به ازایهر ۶۴ بلاک miss رخ میده حالا آدرس دستور ۶۵ هم جایگزین آدرس توی بلاک اول میشه پس کلا برای بار اول ۶۵ بار missداریم. دفعهی دوم و سوم فقط به ازاری دستور اول و آخر miss رخ میده.چون اولین دستور باید آدرسش توی بلاک اول قرار بگیره که بعد اجرای قبلی آدرس آخرین دستور توشه و یک بار هم به ازای آخری چون باید توی بلاک اول قار بگیره.پس در کل شد ۶۹ تا miss.
حالا اگه به ازای همه miss داشته باشیم میشه ۶۵ * ۳ پس Hitمیشه
(۶۵*۳)-۶۹=۱۲
در LRU صفحه ای جایگزین میشه که در گذشتهی اخیر استفاده نشده.یعنی بعد از اینکه ۶۴ بلوک پر شد برای ۶۵ بلوک اول که قدیمی تره استفاده میشهوبرای بار دوم اجرای دستورات به ترتیب برای دستور اول بلوک دوم دستور دوم بلوک سه و الی آخر.
یعنی جایگزین قدیمی تره میشه .پس هیچی Hit نداریم.
ممنون از توضیحاتتون.متوجه شدم اما ۱سوال:
در روش مستقیم بعد از اینکه بار اول تموم شد و برای دومین بار دستورات اجرا بشن دوباره از همون بلاک اول شروع کردین ،و تو دور دوم که فقظ به ازای بلاک اول و آخر MISSداریم اما درروش انجمنی کامل شما توی دور دوم هم از همون بلوک قبلی شروع به اجرا کردین و گفتین هیچ HIT نداریم!!چرا؟من اینجاشو متوجه نمیشم از کجا باید اینو بدونم که از بلاک بعد از اجرای قبلی باید شروع به اجرا کنم یا از بلاک اول!!!
ممنون میشم اگر کامل برام توضیح بدین چون با این نوع مسایل خیلی مشکل دارم!!!
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close