تبلیغات
دانش نامه کامپیوتر - حافظه کش چگونه کار میکند ؟
 

حافظه کش چگونه کار میکند ؟

نوشته شده توسط :امیر سبزلون
دوشنبه 26 اسفند 1387-12:59 ب.ظ

مقدمه
حافظه کش، یک حافظه سرعت بالای قابل دسترس درون CPU است که برای افزایش سرعت دسترسی به داده ها و دستورالعملهای ذخیره شده درون RAM است. در این مقاله ما میخواهیم با یک زبان ساده توضیح بدهیم که این مدار چگونه کار میکند.

یک کامپیوتر کاملا بی فایده است اگر شما نگویید پردازنده (به عبارت دیگر CPU) چه کاری انجام دهد. این بواسطه یک برنامه انجام میشود، که یک لیست از دستورالعملهایی است که میگوید CPU چه کاری انجام دهد.
CPU برنامه ها را از حافظه RAM واکشی میکند. مشکل با حافظه RAMاینست که با قطع جریان برقش، محتویاتش از بین میرود و این حافظه RAM را مانند یک رسانه فرار طبقه بندی میکند. بنابراین برنامه ها و داده ها باید در یک رسانه غیر فرار ذخیره بشوند (به عبارت دیگر، در جائی محتویات بعد از اینکه شما کامپوتر خودتان را خاموش میکنید از بین نروند) اگر شما بخواهید آنها را بعد از خاموش کردن کامپیوترتان داشته باشید، مثل درایو های هارددیسک، رسانه های نوری مانند CDها و DVDها.
هنگامیکه شما برروی یک آیکون ویندوز برای اجرای برنامه ای دابل کلیک میکنید، برنامه که معمولا برروی هاردیسک ذخیره شده است در حافظه RAM بارگذاری میشود و سپس بواسطه حافظه RAM، CPU برنامه را درون مداری که کنترلر حافظه نامیده میشود بارگذاری میکند، که در پردازنده های Intel درون چیپ ست (چیپ North Bridge) و یا در پردازنده های AMD درون CPU قرار دارد.

Image

شکل 1) چگونه داده های ذخیره شده به CPU اتقال داده میشوند.
CPU نمیتواند داده ها را بطور مستقیم از هارددیسک واکشی کند، چونکه آنها برایش خیلی کم سرعت هستند، حتی اگر شما فکر کنید که سریع ترین هارددیسک را دارید. فقط به شما چند ایده میدهد از چیزی که ما داریم درباره اش صحبت میکنیم، یک هاردیسک SATA-300 سریع ترین هاردیسک قابل دسترس برای کاربران معمولی در حال حاضر میباشد، که نرخ انتقال تئوریک آن 300 MB/s است و یک CPU که با فرکانس داخلی 2 GHz و 64 مسیر داده (Data Path) داخلی کار میکند، نرخ انتقال داده اش 16 GB/s میباشد، که حدود 50 برابر سریعتر است.
این یک محاسبه ناهنجار است، فقط برای اینکه به شما یک ایده داده باشد، زیرا CPU ها دارای چندن مسیر داده مختلف درون خودشان هستند و هریک دارای طول های مختلف هستند.برای مثال در پردازنده های AMD مسیر داده بین حافظه کش L2 حافظه کش L1 128 بیتی است، در صورتیکه این مسیر در CPU های کنونی Intel 256 بیتی است. اما شما نگران نباشید، این فقط برای اینست که توضیح بدهیم عددی که در بالا نوشتیم ثابت نیست، اما در هر حال CPU ها همیشه از هارددیسک ها خیلی سریعتر هستند.
اختلاف در سرعت از این ناشی میشود که هارددیسک ها سیستم های مکانیکی هستند، که کندتر از سیستم های الکترونیکی خالص میباشند، بطوریکه بخش های مکانیکی برای بازیابی شدن اطلاعات مجبورند داده ها را انتقال بدهند (که بمراتب کندتر از انتقال الکترونیکی است). در طرف دیگر حافظه RAM قرار دارد که 100% الکترونیکی است و همچنین از هاردیسک ها سریعتر و در بهترین حالت در حد سرعت CPU است.
در اینجا مشکلی وجود دارد. حتی سریع ترین حافظه های RAM به سرعت CPU نیستند. اگر شما حافظه های DRR-2 800 تهیه کنید، آنها داده را در نرخ 6400 MB/s و در صورت Dual Channel بودن با نرخ 12800 MB/s انتقال میدهند. ولو اینکه این عدد در مثال قبلی 16 GB/s بود، چونکه CPU های کنونی توانایی واکشی داده داده از حافظه کش L2 را در نرخ 128 بیت یا 256 بیت دارند، اگر CPU به طور داخلی در فرکانس 2 GHz کار کند ما داریم در مورد 32 GB/s یا 64 GB/s صحبت میکینم. در این رابطه نگران نباشید چونکه در حال حاضر "حافظه کش L2" وجود دارد، بعدا درباره اش توضیح میدهیم. خواسته ما اینست که شما به این ایده برسید که حافظه RAM از CPU کندتر است.
 ضمنا نرخ های انتقال میتوانند با فرمول زیر محاسبه بشوند (در تمام این مثال ها Data per Clock برابر یک میباشد)
Transfer rate = width (number of bits) x clock rate x data per clock / 8
مشکل فقط نرخ انتقال یا به عبارت دیگر سرعت انتقال نیست بلکه تأخیر (Latency) نیز هست. Latency (به Access Time نیز مشهور است) مقدار زمانی است که حافظه در ارجاع داده هایی که CPU درخواست کرده تأخیر می اندازند- این آنی نیست. هنگامیکه CPU برای یک دستورالعمل (یا داده) که در یک آدرس معین ذخیره شده است درخواست میکندحافظه یک زمان تأخیر جزئی برای تحویل این دستورالعمل (یا داده) برگشتی ایجاد میکند. در حافظه های کنونی اگر نوشته باشد که دارای CL ( CAS Latency، تأخیری است که ما درباره اش داریم صحبت میکنیم) 5است، این معنا را میدهد که حافظه داده های درخواستی را بعد از پنج سیکل ساعت حافظه تحویل میدهد- معنی اش اینست که CPU باید منتظر بماند.
انتظار کارایی CPU ار پایین می آورد. اگر CPU بری دریافت دستورالعمل یا داده درخواستی اش 5 سیکل ساعت حافظه منتظر بماند، کارائی اش فقط 1/5 آن عملکردی خواهد بود که اگر از یک حافظه توانا در تحویل فوری داده استفاده میکرد. به عبارت دیگر، در هنگام دسترس بودن یک حافظه DRR-2 800 با CL5، کارایی CPU به همان مقدار کارکرد حافظه در 160 MHz (800 MHz/5) میرسد. در دنیای واقعی کاهش کارایی زیاد نیست چونکه حافظه تحت یک مد، که مد Burst نام دارد کار میکنند در جائیکه داده دوم درخواست میشود، داده میتواند بطور آنی تحویل داده شود اگر درون یک آدرس همجوار ذخیره شده باشد (معمولا دستورالعمل های یک برنامه معین در آدرس های متوالی ذخیره میشوند) این مانند "x-1-1-1" توضیح داده شده است (مثلا "5-1-1-1" برای حافظه مثال ما)، معنایش اینست که که داده اول بعد از پنج سیکل ساعت تحویل داده میشود اما از دومین داده درخواستی، دادها میتوانند تنها د یک سیکل ساعت تحویل داده بشوند- اگر مانند آنچه ما گفتیم در یک آدرس متوالی ذخیره شده باشد.
Dynamic RAM در مقابل Static RAM
دو نوع حافظه وجود دارد: دینامیک یا پویا (DRAM) و استاتیک (SRAM). RAM استفاده شده در PC از نوع دینامیک میباشد. در این نوع حافظه هر بیت از داده ها درون تراشه حافظه در یک خازن بسیار ریز ذخیره میشود. خازن ها اجزای خیلی کوچکی هستند، به این معنی که میلیون ها از آن میتواند در یک فضای خیلی کوچک ساخته بشود. این چگالی عالی یا High Density نام دارد. از طرف دیگر خازن ها بعد از مدتی شارژشان را از دست میدهند، بنابراین حافظه های دینامیک به یک عمل که نو سازی یا Refresh نام دارد، احتیاج دارند، که این هر چند وقت یکبار اتفاق می افتد. در طی این مدت داده ها نمیتوانند خوانده یا نوشته بشوند. حافظه های دینامیک از حافظه استاتیک ارزانتر نیز میباشند و همچنین نیروی برق به مراتب کمتری استفاده میکنند، اما همانطور که ما گفتیم در RAM دینامیک داده ها به آسانی در دسترس نیستند و نمیتواند به سرعت CPU کار کند.
از طرف دیگر حافظه استاتیک میتواند با سرعت CPU کار کند، زیرا هر بیت داده در یک مدار که فلیپ فلاپ نام دارد ذخیره میشود، که همچنین میتواند داده ها را با تأخیر صفر یا خیلی کوچک تحویل دهد، زیرا فلیپ فلاپ ها به Refresh نیازی ندارند. مشکل اینجاست که فلیپ فلاپ ها برای ساخته شدن به چندین ترانزیستور نیاز دارند، به عبارت دیگر آنها از یک خازن خیلی بزرگتر هستند. این به این معناست که در همان فضایی که در یک حافظه استاتیک یک فلیپ فلاپ وجود دارد، در یک حافظه دینامیک صدها خازن وجود دارد. بنابراین حافظه های های استاتیک یک چگالی پائین را فراهم میکنند- تراشه ها دارای ظرفیت کمی هستند. دو مشکل دیگر با حافظه های استاتیک: خیلی گران هستند و مصرف برق زیادی دارند- بنابراین حرارت بیشتری تولید میکنند.
در جدول زیر بطور خلاصه تفاوتهای DRAM و SRAM را بیان کرده ایم.
Image 

با اینکه RAM استاتیک سریعتر از RAM دینامیک است، ولی شرایط نامساعدش از استفاده شدن آن در مدارهای اصلی RAM جلوگیری میکند. 
راه حل موجود برای کاهش اثر استفاده از حافظه RAM که کندتر از CPU است، استفاده از مقدار کمی RAM استاتیک مابین CPU و حافظه RAM بود. این روش حافظه کش نام دارد و امروزه این مقدار کم از حافظه استاتیک درون CPU قرار دارد.
حافظه کش اغلب داده هایی را که به تازگی مورد دسترسی RAM بودهاند ار به حافظه استاتیک کپی میکند و سعی میکن حدس بزند چه داده هایی را CPU بعدا درخواست میکن و آنها را در حافظه استاتیک بارگذاری می نماید قبل از اینکه CPU در عمل به آنها نیاز داشته باشد. هدف از ایجاد دسترسی CPU به حافظه کش در عوض دسترسی مستقیم CPU به RAM است، چونکه میتواند داده را فورا یا تقریبا فورااز حافظه کش بازیابی کند، در صورتیکه، هنگامی که داده های مورد دسترسی در RAM قرار داشته باشند باید منتظر بماند. بیشتر CPU به جای RAM به حافظه کش دسترسی دارد، چونکه سیستم سریعتر خواهد بود. ما بطور صحیح فقط در یک دقیقه توضیح دادیم که حافظه کش چگونه کار میکند.
ضمنا، در اینجا ما داریم از واژه های "داده " و "دستورالعمل" قابل تعویض را استفاده میکنیم، زیرا هرچیزی که درون هر آدرس حافظه ذخیره میشود هیچ تغیییری در حافظه ایجاد نمیکند.
تاریخچه حافظه کش در کامپوترهای شخصی
این بخش فقط برای آنهایی است که به وجه گذشته حافظه کش علاقه دارندریال اگر شما به این بخش علاقه ندارد میتوانید به بخش بعدی بروید.
حافظه کش اولین بار در کامپیوترهای 386DX استفاده شد. ولو اینکه CPU حافظه کشی درون خودش نداشت، آنرا بصورت مداراتی پشتیبانی میکرد، بهعبارت دیگر چیپ ست یک کنترلر حافظه کش داشت. پس در آن زمان حافظه کش خارج از CPU قرار داشت. بنابراین انتخابی بود و یا به نحوی دیگر میتوان گفت که سازنده مادربورد میتوانست آنرا اضافه کند یا نه. اگر شما یک مادربورد بدون حافظه کش داشتید کامپوترتان از کامپوتر دارای این مدار خیلی کندتر می بود.
مقدار حافظه کش قابل دسترس متفاوت بود و بعلاوه به مدل مادربورد وابسته بود و نوع قیمتها، برای زمانیکه 64 کیلوبایتی و 128 کیلو بایتی بودند. در این هنگام کنترلر حافظه کش از یک معماری، معروف به “write-through” برای عملیات نوشتن استفاده میکرد- به عبارت دیگر هنگامیکه CPU میخواست داده ها را حافظه ذخیره کند- کنترلر حافظه فورا حافظه RAM را آپدیت میکرد.
با پردازنده های 486DX اینتل یک مقدار کوچک (8KB) از حافظه کش را درون CPU اضافه کرد. این حافظه کش داخلی L1 (Level 1) یا توکار نامیده شد. در صورتیکه حافظه کش خارجی L2 (Level 2) یا خارجی نامیده شد.مقدار و موجودیت کش خارجی به مدل مادربورد وابسته بود. انواع مقادیری که در آن زمان موجود بود، 128 کیلو بایتی و 256 کیلو بایتی. بعد از مدل 486 معماری کش “write back” اضافه شد، که حتی تا امروزه نیز استفاده میشود، به طوریکه برای عملیات های نوشتن، حافظه RAM فورا آپدیت نمیشود، CPU داده ها را در حافظه کش ذخیره میکند و کنترلر حافظه فقط هنگامیکه حافظه RAM را آپدیت میکند که یک کمبود کش اتفاق بیافتد.
پس زا آن Intel در اولین پردازنده های پنتیوم، دو حافظه کش توکار مجزا ایجاد نمود، یکی برای دستورالعمل و یکی برای داده (در آن زمان هر کدام 8 کیلو بایت بودند). این معماری هنوز تا امروزه استفاده میشود و این که چرا شما بعضی اوقات می بینید که حافظه کش L1 به صورت 64KB+64KB نمایش داده میشود، چونکه یک کش دستورالعمل L1 64 کیلوبایتی و یک کش داده L1 64 کیلو بایتی وجود دارد. البت ما بعدا توضیح میدهیم که چرا مابین این دو تفاوت وجود دارد. در آن هنگام حافظه کش L2 در مادربورد جای داشت، پس بنابراین مقدار و موجودیتش به مدل مادربورد وابسته بود، البته داشتن ک سستم بدون حافظه کش دیوانگی بود. انواع موجود در آن زمان 256KB و 512KB بودند.
در پردازنده های AMD نسل K5، K6 و K6-2 از همین معماری استفاده شده اس، بعلاوه K6-III دارای یک حافظه کش سوم (L3, Level 3) میباشد.
مشکل حافظه کش L2 است که با یک نرخ کلاک پایین تر مورد دسترسی قرار میگیرد، چونکه در 486DX نرخ کلاک داخلی CPU از نرخ کلاک خارجی متفاوت است. بطوریکه برای مثال یک Pentium-200 با سرعت 200MHz کار میکندو به حافظه کش خود با سرعت 66MHz دسترسی دارد.
سپس Intel با معماری P6 حافظه کش را از مادربورد به داخل CPU انتقال داد، که اجازه میداد CPU به آن با نرخ کلاک داخلی خود دسترسی پیدا کند، به جز Pentium II که حافظه کش درون CPU قرارنداشت ولی در همان مدار چاپی که CPU بود لحیم شده بود (این مدار چاپی درون یک کارتریج قرار داشت) تا در نصف کلاک داخلی CPU کار کند، در Celeron-266 و Celeron-300 هیچ کدام حافظه کش L2 نداشتند (بنابراین آنها بد عملکردترین CPU ها در تاریخ کامپیوترهای شخصی هستند).
این معماری حتی تا امروزه مورد استفاده است: هردوی حافظه های کش L1 و L2 درون CPU قرار دارندو با نرخ کلاک داخلی CPU کار میکنند، بنابراین مقدار حافظه کشی که شما میتوانید داشته باشید به مدل CPU ای که دارید وابسته است.هیچ راهی برای افزایش مقدار حافظه کش بدون تعویض CPU وجود ندارد





نظرات() 


아이돔토토 토토사이트
چهارشنبه 3 بهمن 1397 04:27 ق.ظ
Some opine why these subtle references have grown to be a
tradition in the film studios. The instrument comprises of different materials like metal,
wool, buckskin and wood. For the record, Mariah Carey has secured a whooping $18 million and it is considered the
very best paid judge the truth is television.
토토
چهارشنبه 3 بهمن 1397 04:19 ق.ظ
Remember to use keywords which might be accurate and, and also this ought to do the trick.
In many cases (especially instrumentals), it's unaffected by language differences as well.
Get started, with great variety of vintage posters which are available at reasonable rates and revel in your journey along the memory lane.
Terri
چهارشنبه 3 بهمن 1397 03:50 ق.ظ
I like the valuable information you supply to your articles.
I will bookmark your weblog and test again here regularly.
I'm relatively certain I'll be told many new
stuff proper here! Good luck for the next! http://slayzone.co.uk/forum/memberlist.php?mode=viewprofile&u=32025
Aja
چهارشنبه 3 بهمن 1397 02:44 ق.ظ
Having read this I believed it was rather informative.
I appreciate you taking the time and energy to put this article together.
I once again find myself personally spending way too much time both
reading and commenting. But so what, it was still worthwhile!
http://88u5.com/home.php?mod=space&uid=909951
Nigel
چهارشنبه 3 بهمن 1397 02:43 ق.ظ
There is certainly a lot to know about this subject. I love all the points you
made. http://sy1b.zzcn.org/home.php?mod=space&uid=103665
Andreas
چهارشنبه 3 بهمن 1397 02:42 ق.ظ
Hello, after reading this remarkable post i am as well cheerful to
share my experience here with friends. http://salvohotelshanghai.cn/home.php?mod=space&uid=14113
Bev
چهارشنبه 3 بهمن 1397 02:37 ق.ظ
Scissor Elevate Capacities variety from 227 kg (500 lbs) to 1134 kg (2500 lbs).
As a result there exists a perfect interpretation of the was authored by the composer,
an amazing fusion of both technique and emotion, the true musical masterpiece.

Extra electric batteries as well as rechargers in addition to memory charge cards locate the action plus hard drive part from the photographic camera.
Hilfe zur Autoradio installation
چهارشنبه 3 بهمن 1397 02:04 ق.ظ
After going over a number of the blog articles on your blog, I really appreciate your way of
writing a blog. I bookmarked it to my bookmark website list and will
be checking back soon. Please check out my website as well
and tell me how you feel.
built-in accessories
چهارشنبه 3 بهمن 1397 01:54 ق.ظ
I've been exploring for a bit for any high-quality articles or blog
posts on this kind of space . Exploring in Yahoo I eventually stumbled
upon this web site. Studying this info So i'm happy to convey that I have an incredibly just right uncanny feeling I came upon exactly what I needed.
I so much definitely will make sure to do not put
out of your mind this website and provides it a glance
regularly.
best sound quality
چهارشنبه 3 بهمن 1397 01:33 ق.ظ
Please let me know if you're looking for a writer for your blog.
You have some really good articles and I believe I would
be a good asset. If you ever want to take some of the load off, I'd really like to write some content for your blog in exchange for a
link back to mine. Please blast me an email if interested.
Cheers!
www.midasuser.cn
چهارشنبه 3 بهمن 1397 01:18 ق.ظ
So, find out if you'll need those features in the package of Sacramento wedding photographers or not.
Raphael transformed the look of Madonna inside the religious themes in a secular and graceful human mother successfully.
However, even now, there are lots of people across
America, who prefer letting their relatives and buddies click photographs
and then try to capture memorable moments with their
wedding day.
http://www.szybkie-odchudzanie-tabletki.eu/jak-szybko-schudnac/
چهارشنبه 3 بهمن 1397 12:29 ق.ظ
Truly, this is a handy internet site.
stereo system in the car
سه شنبه 2 بهمن 1397 11:28 ب.ظ
Everyone loves it whenever people get together and share views.
Great website, continue the good work!
sport tvp program tv
سه شنبه 2 بهمن 1397 10:54 ب.ظ
And it's no wonder that women are buying!
your own installation
سه شنبه 2 بهمن 1397 10:17 ب.ظ
whoah this blog is magnificent i like studying your articles.
Keep up the good work! You realize, lots of persons
are hunting around for this info, you could help them greatly.
Autoradio
سه شنبه 2 بهمن 1397 09:39 ب.ظ
Keep this going please, great job!
the original equipment
سه شنبه 2 بهمن 1397 09:35 ب.ظ
Hey I am so excited I found your blog page, I really found you by mistake, while I was looking on Yahoo for something else, Regardless I am here now and would just like to say
many thanks for a incredible post and a all round thrilling blog (I also love the
theme/design), I don't have time to browse it all at the
moment but I have saved it and also included your RSS feeds,
so when I have time I will be back to read a lot more, Please do keep up the superb work.
world of car accessories
سه شنبه 2 بهمن 1397 09:19 ب.ظ
My spouse and I stumbled over here from a different website and thought I
should check things out. I like what I see so i am just following you.
Look forward to finding out about your web page again.
ISO Kabelbaum
سه شنبه 2 بهمن 1397 07:18 ب.ظ
Very quickly this web page will be famous amid all blogging and site-building people,
due to it's pleasant articles or reviews
choosing a head unit
سه شنبه 2 بهمن 1397 07:11 ب.ظ
Your style is so unique compared to other folks I've read stuff from.
Thank you for posting when you've got the opportunity, Guess I'll just bookmark this site.
Neue Boxen ins Auto einbauen
سه شنبه 2 بهمن 1397 05:11 ب.ظ
Spot on with this write-up, I really feel this amazing site
needs a lot more attention. I'll probably be back again to read more,
thanks for the info!
Nora
سه شنبه 2 بهمن 1397 04:44 ب.ظ
Hey there, You have done an excellent job. I will certainly
digg it and personally suggest to my friends. I am sure they'll be benefited from this site.
http://tabletkinapotencje2017.ovh/problemy-z-potencja.html
سه شنبه 2 بهمن 1397 02:34 ب.ظ
You're a very useful internet site; could not make it without ya!
안전놀이터 토토
سه شنبه 2 بهمن 1397 01:49 ب.ظ
Some opine the subtle references have become a tradition with the film studios.
She started out looking to use her powers to oppose the Wizard of Oz,
but destiny had other pursuits up for grabs for her. It was an action which
was primarily made by Inuit women however, there are actually
some men performing it as well.
simplify your experience
سه شنبه 2 بهمن 1397 12:17 ب.ظ
I read this post completely concerning the comparison of most up-to-date and
preceding technologies, it's remarkable article.
quan thun nam
سه شنبه 2 بهمن 1397 10:22 ق.ظ
I could not resist commenting. Perfectly written!
Olejki konopne CBD
سه شنبه 2 بهمن 1397 08:14 ق.ظ
Fine way of explaining, and nice post to take data about my
presentation subject matter, which i am going to deliver in institution of higher education.
the following features
سه شنبه 2 بهمن 1397 08:09 ق.ظ
What's Happening i am new to this, I stumbled upon this I've discovered It absolutely useful and
it has helped me out loads. I am hoping to give a contribution & assist different
customers like its helped me. Great job.
installation of car stereos
سه شنبه 2 بهمن 1397 08:01 ق.ظ
Touche. Outstanding arguments. Keep up the good work.
cheap canada goose
سه شنبه 2 بهمن 1397 07:36 ق.ظ
What's up, this weekend is good in favor of me, since
this time i am reading this enormous educational article here at my home.
 
لبخندناراحتچشمک
نیشخندبغلسوال
قلبخجالتزبان
ماچتعجبعصبانی
عینکشیطانگریه
خندهقهقههخداحافظ
سبزقهرهورا
دستگلتفکر


درباره وبلاگ:



آرشیو:


طبقه بندی:


آخرین پستها:


نویسندگان:


نظرسنجی:


آمار وبلاگ:







The Theme Being Used Is MihanBlog Created By ThemeBox