۱
subtitle
همانطوری که دوستمون گفتن در نگاشت ۲-way جا برای همه آدرس ها هست!
دفعه اول که با آدرس FF00 کار داریم، miss اتفاق می افته و به دلیل اینکه هر بلوک ۱۶ بایت هست پس از آدرس FF00 تا FF0F را در یک حرکت به cache می آوریم و در set0 میگذاریم، آدرسهای بعدی در کش هست تا به آدرس ۵F00 میرسیم و دوباره miss اتفاق می افته، اینبار بلوک ۱۶ بایتی از اطلاعات از حافظه به کش آورده میشه یعنی از ۵F00 تا ۵F0F. اینبار به دلیل اینکه آدرس دهی ۲-way هست و یه set خالی داریم اینبار این بلوک در set1 گذاشته میشود. در تکرارهای بعدی این دستورات، همگی در کش هستند و دیگر miss اتفاق نمی افتد. یعنی از ۱۰۰ آدرس در تکرار حلقه ها فقط ۲ نقص صفحه خواهیم داشت.
دقت کنید که در حالت direct مجموعه ها (set) ها وجود ندارند . دفعه اول که در برخورد با FF00 نقص صفحه اتفاق می افته، آدرس های FF00-FF0F به کش آورده میشه و آدرس های بعدی در کش هست تا به ۵F00 میرسیم و اینبار هم دوباره بلاک ۱۶تایی از حافظه به کش آورده میشه ولی در همان بلاک صفر قرار می گیرد، یعنی آدرس های ۵F00-5F0F جایگزین آدرس های FF00-FF0F میشه. پس در دور اول ۲ تا نقص داشتیم، در دور دوم هم به دلیل نبود آدرس ff00 این روند ادامه داره و در هر تکرار آدرسها، ۲ نقص صفحه داریم. در مجموع ۲ * ۱۰ = ۲۰ نقص که با نسبت ۱۰۰ دستور کل، درصد نقص صفحه میشه ۲۰ %
شکلش رو هم کشیدم واستون.
دفعه اول که با آدرس FF00 کار داریم، miss اتفاق می افته و به دلیل اینکه هر بلوک ۱۶ بایت هست پس از آدرس FF00 تا FF0F را در یک حرکت به cache می آوریم و در set0 میگذاریم، آدرسهای بعدی در کش هست تا به آدرس ۵F00 میرسیم و دوباره miss اتفاق می افته، اینبار بلوک ۱۶ بایتی از اطلاعات از حافظه به کش آورده میشه یعنی از ۵F00 تا ۵F0F. اینبار به دلیل اینکه آدرس دهی ۲-way هست و یه set خالی داریم اینبار این بلوک در set1 گذاشته میشود. در تکرارهای بعدی این دستورات، همگی در کش هستند و دیگر miss اتفاق نمی افتد. یعنی از ۱۰۰ آدرس در تکرار حلقه ها فقط ۲ نقص صفحه خواهیم داشت.
دقت کنید که در حالت direct مجموعه ها (set) ها وجود ندارند . دفعه اول که در برخورد با FF00 نقص صفحه اتفاق می افته، آدرس های FF00-FF0F به کش آورده میشه و آدرس های بعدی در کش هست تا به ۵F00 میرسیم و اینبار هم دوباره بلاک ۱۶تایی از حافظه به کش آورده میشه ولی در همان بلاک صفر قرار می گیرد، یعنی آدرس های ۵F00-5F0F جایگزین آدرس های FF00-FF0F میشه. پس در دور اول ۲ تا نقص داشتیم، در دور دوم هم به دلیل نبود آدرس ff00 این روند ادامه داره و در هر تکرار آدرسها، ۲ نقص صفحه داریم. در مجموع ۲ * ۱۰ = ۲۰ نقص که با نسبت ۱۰۰ دستور کل، درصد نقص صفحه میشه ۲۰ %
شکلش رو هم کشیدم واستون.