معرفی انواع حافظه های رایانه و آشنایی با عملکرد آنها
حافظه محلي براي نگهداري داده هاست و زمينه ی پرداز شهاي لازم را روي داد ه هاي متفاوت به وسيله ی پردازنده فراهم مي كند. هر وسيله اي كه توانايي حفظ و نگهداري داد ه ها را به گونه اي داشته باشد كه اجزاي رايانه بتوانند در هر زمان به داده هاي آن دسترسي داشته باشند، حافظه نام دارد. حافظه در رايانه محل نگهداري و ذخيره ی داد ه هاست.
حافظه هاي رايانه به دو دسته ی كلي تقسيم مي شوند :
حافظه ی اصلي :اين نوع حافظه ها در داخل رايانه قرار دارند و براي اجراي برنامه به طور مستقيم به وسيله ی پردازنده مورد استفاده قرار مي گيرند. حافظه اصلی به دو بخش اصلی تقسیم می شود:
RAM( حافظه با دسترسی تصادفی ) : Random Access Memory
ROM (حافظه فقط خواندنی ) : Read Only Memory
یكي از مشخصه هاي بارز حافظه ي RAM قابليت خواندن و نوشتن در آن است. مشخصه ی مهم ديگر اين نوع حافظه، ماندگار نبودن اطلاعات آن است و اين يعني اينكه RAM ها همواره بايد به يك منبع تغذيه ی الكتريكي متصل باشند. هر زمان انرژي الكتريكي متوقف گردد، داد ه هاي اين حافظه از دست خواهند رفت. بنابراين RAM هميشه به عنوان يك ذخير ه ساز موقت به كار مي رود.
حافظه ی جانبي : اين نوع حافظه ها براي نگهداري داده ها و اطلاعات پرونده ها براي مدت زمان طولاني به كار مي روند و از طريق یک واسط یا کنترلر براي پردازنده قابل دسترس می باشند.
کامپیوترتان را روشن می کنید. کامپیوتر روی ROM طلاعاتی ذخیره می کند و تستی به نام POST را اجرا می کند. این تست برای اطمینان از سالم بودن اجزای اصلی ضروری است. در جریان این تست یک بیت روی هر کدام از حافظه ها ذخیره و خوانده می شود تا از کارکرد حافظه ها اطمینان حاصل شود.کامپیوتر BIOS را روی ROM ذخیره می کند. BIOS شامل اطلاعات ساده ای مثل آدرس هارد و سی.دی درایو، ترتیب بوت (BOOT) کردن و Plug and Play (شناسایی خودکار قطعات) است. سیستم عامل روی RAM ذخیره می شود. به این معنی که فقط اجزای اصلی سیستم عامل روی این حافظه ذخیره می شود. با این کار سرعت کار کامپیوتر بالا می رود.وقتی برنامه ای را اجرا می کنید، ابتدا اجزای اصلی آن روی RAM ذخیره می شود و در صورت نیاز اجزای دیگر آن ذخیره می شود. همچنین اگر این برنامه ها به فایلی دسترسی دارند این برنامه روی RAM ذخیره می شود. وقتی فایلی را بعد از مورد استفاده قرار گرفتن توسط برنامه ای دوباره ذخیره می کنید، از RAM پاک می شود و به حافظه دائمی منتقل می شود. در این پروسه فایل هایی که اجرا می شوند روی RAM یا حافظه غیر دائمی ذخیره می شود. به این ترتیب وقتی فایلی را باز یا برنامه ای را اجرا می کنید، پردازشگر کامپیوتر از RAM در خواست اطلاعات می کند و بعد از انجام پردازش روی اطلاعات آن را دوباره به RAM می فرستد. این کار به صورت یک چرخه ادامه پیدا می کند. در اکثر کامپیوتر ها وقتی برنامه ای بسته می شود تمام اطلاعات آن و تمام فایل های استفاده شده توسط آن ازRAM پاک می شود. به همین دلیل اگر اطلاعات روی حافظه دائمی ذخیره نشود از بین می رود.
براساس فناوري ساخت، حافظه ها به انواع مختلفي تقسيم مي شوند. هر فناوري داراي مزايا و معايب خاص خود است. هرم حافظه ها در شکل زیر تلاش كرده است كه حافظه ها را براساس سرعت دستيابي به داده، دسته بندي كند:
پردازنده به دليل سرعت بالايي كه در انجام کارهایش دارد بايد داده ها را با سرعت بالا و به مقدار زياد در اختيار داشته باشد. ذخيره سازهاي ثانويه مانند ديسك سخت و ديسك هاي نوري و... به دليل سرعت كمي كه دارند نمي توانند پاسخگوي نيازهاي پردازنده باشند و داده ی مورد نظر آن را با سرعت بالا تأمين كنند. به همین دلیل تلاش شده است تا تعدادي حافظه هاي موقت ولي با سرعت بيشتر و نزديك به سرعت پردازنده، طراحي و در اختيار پردازنده قرار دهند. در اين هرم هر چه قدر حافظه ی مورد نظر به پردازنده نزديك تر باشد، سرعت انتقال داده ی بيشتري دارد و به طور طبيعي اين سرعت بالا مستلزم هزينه ی بيشتري است .
ارزانترین حافظه متداول، هارد دیسك است . هارد دیسك یك رسانه ذخیره سازی ارزان قیمت با توان ذخیره سازی حجم بالائی از اطلاعات است . با توجه به ارزان بودن فضای ذخیره سازی اطلاعات بر روی هارد، اطلاعات مورد نظر بر روی آنها ذخیره و با استفاده از روش های متفاوتی نظیر : حافظه مجازی می توان به سادگی و به سرعت و بدون نگرانی از فضای فیزیكی حافظهRAM ، از آنها استفاده نمود.
حافظهRAM سطح دستیابی بعدی در ساختار سلسله مراتبی حافظه است . اندازه بیت یك پردازنده نشان دهنده تعداد بایت هائی از حافظه است كه در یك لحظه می توان به آنها دستیابی داشت. مثلا" یك پردازنده شانزده بیتی، قادر به پردازش دو بایت در هر لحظه است . مگاهرتز واحد سنجش سرعت پردازش در پردازنده ها است و معادل "میلیون در هر ثانیه" است . مثلا" یك كامپیوتر 32 بیتی پنتیومiii با سرعت 800-MHz، قادر به پردازش چهار بایت بصورت همزمان و 800 میلیون بار در ثانیه است . حافظهRAM به تنهائی دارای سرعت مناسب برای همسنگ شدن با سرعت پردازنده نیست . به همین دلیل است كه از حافظه هایCache استفاده می گردد. بدیهی است هر اندازه كه سرعت حافظهRAM بالا باشد مطلوب تر خواهد بود.اغلب تراشه های مربوطه امروزه دارای سرعتی بین 50 تا 70Nanoseconds می باشند. سرعت خواندن یا نوشتن در حافظه ارتباط مستقیم با نوع حافظه استفاده شده دارد .در این راستا ممكن است از حافظه هایDRAM,SDRAM,RAMBUS استفاده گردد. سرعتRAM توسط پهنا و سرعت Bus كنترل می گردد. پهنای Bus، تعداد بایتی كه می تواند بطور همزمان برای پردازنده ارسال گردد را مشخص و سرعتBUS به تعداد دفعاتی كه می توان یك گروه از بیت ها را در هر ثانیه ارسال كرد اطلاق می گردد. سیكل منظم حركت داده ها از حافظه به سمت پردازنده راBus Cycle می گویند. مثلا" یكBus با وضعیت : 100MHz و 32 بیت، بصورت تئوری قادر به ارسال چهار بایت به پردازنده و یكصد میلیون مرتبه در هر ثانیه است . در حالیكه یكBUS شانرده بیتی 66MHZ بصورت تئوری قادر به ارسال دو بایت و 66 میلیون مرتبه در هر ثانیه است . با توجه به مثال فوق مشاهده می گردد كه با تغییر پهنای BUS از شانزده به سی و دو و سرعت از 66MHz به 100MHz سرعت ارسال داده برای پردازنده سه برابر گردید.
رجیستر وCache:
با توجه به سرعت بسیار بالای پردازنده حتی در صورت استفاده ازBus عریض وسریع همچنان مدت زمانی طول خواهد كشید تا داده ها از حافظهRAM برای پردازنده ارسال گردند.Cache با این هدف طراحی شده است كه داده های مورد نیاز پردازنده را كه احتمال استفاده از آنان بیشتر است ، در دسترس بیشتری قرار دهد . عملیات فوق از طریق بكارگیری مقدار اندكی از حافظه Cache كهPrimary یاLevel 1 نامیده می شود صورت می پذیرد. ظرفیت حافظه های فوق بسیار اندك بوده و از دو كیلو بایت تا شصت و چهار كیلو بایت را شامل می گردد. نوع دومCache كهSecodray یاlevel 2 نامیده می شود بر روی یك كارت حافظه و در مجاورت پردازنده قرار می گیرد. این نوعCache دارای یك ارتباط مستقیم با پردازنده است. یك مدار كنترل كننده اختصاصی بر روی برد اصلی كه " كنترل كنندهL2 " نامیده می شود مسئولیت عملیات مربوطه را برعهده خواهد گرفت . با توجه به نوع پردازنده، اندازه حافظه فوق متغیر بوده و دارای دامنه ای بین 256Kb تا 2MB است. برخی از پردازنده های با كارائی بالا اخیرا" این نوعCache را به عنوان جزئی جداناپذیر در كنار خود دارند. ( بخشی از تراشه پردازنده ) در این نوع پردازنده ها با توجه به اینكه Cache بخشی از پردازنده محسوب می گردد، اندازه آن متغیر بوده و به عنوان یكی از مهمترین شاخص ها در كارائی پردازنده مطرح است.