حافظه ها

حافظه با هدف ذخيره سازي اطلاعات (دائم، موقت) در کامپيوتر استفاده مي گردد. از انواع متفاوتي حافظه درکامپيوتر استفاده مي گردد .
RAM
ROM
Cache
Dynamic RAM
Static RAM
Flash Memory
Virtual Memory
Video Memory
BIOS
استفاده از حافظه صرفا” محدود به کامپيوترهاي شخصي نبوده و در دستگاههاي متفاوتي نظير : تلفن هاي سلولي، PDA ، راديوهاي اتومبيل ، VCR ، تلويزيون و … نيز در ابعاد وسيعي از آنها استفاده بعمل مي آيد.هر يک از دستگاههاي فوق مدل هاي متفاوتي از حافظه را استفاده مي نمايند.

مباني اوليه حافظه

با اينکه مي توان واژه ” حافظه ” را بر هر نوع وسيله ذخيره سازي الکترونيکي اطلاق کرد، ولي اغلب از واژه فوق براي مشخص نمودن حافظه هاي سريع با قابليت ذخيره سازي موقت استفاده بعمل مي آيد. در صورتيکه پردازنده مجبور باشد براي بازيابي اطلاعات مورد نياز خود بصورت دائم از هارد ديسک استفاده نمائد، قطعا” سرعت عمليات پردازنده ( با آن سرعت بالا) کند خواهد گرديد. زمانيکه اطلاعات مورد نياز پردازنده در حافظه ذخيره گردند، سرعت عمليات پردازنده از بعد دستيابي به داده هاي مورد نياز بيشتر خواهد گرديد. از حافظه هاي متعددي بمنظور نگهداري موقت اطلاعات استفاده مي گردد.

انواع حافظه
حافظه ها را مي توان بر اساس شاخص هاي متفاوتي تقسيم بندي کرد . Volatile و Nonvolatile نمونه اي از اين تقسيم بندي ها است . حافظه هاي volatile بلافاصله پس از خاموش شدن سيستم اطلاعات خود را از دست مي دهند. و همواره براي نگهداري اطلاعات خود به منبع تامين انرژي نياز خواهند داشت . اغلب حافظه هاي RAM در اين گروه قرار مي گيرند. حافظه هاي Nonvolatile داده هاي خود را همچنان پس از خاموش شدن سيستم حفظ خواهند کرد. حافظه ROM نمونه اي از اين نوع حافظه ها است .

حافظه RAM
حافظه (RAM(Random Access Memory شناخته ترين نوع حافظه در دنياي کامپيوتر است . روش دستيابي به اين نوع از حافظه ها تصادفي است . چون مي توان به هر سلول حافظه مستقيما” دستيابي پيدا کرد . در مقابل حافظه هاي RAM ، حافظه هاي(SAM(Serial Access Memory وجود دارند. حافظه هاي SAM اطلاعات را در مجموعه اي از سلول هاي حافظه ذخيره و صرفا” امکان دستيابي به آنها بصورت ترتيبي وجود خواهد داشت. ( نظير نوار کاست ) در صورتيکه داده مورد نظر در محل جاري نباشد هر يک از سلول هاي حافظه به ترتيب بررسي شده تا داده مورد نظر پيدا گردد. حافظه هاي SAM در موارديکه پردازش داده ها الزاما” بصورت ترتيبي خواهد بود مفيد مي باشند ( نظير حافظه موجود بر روي کارت هاي گرافيک ). داده هاي ذخيره شده در حافظه RAM با هر اولويت دلخواه قابل دستيابي خواهند بود.

مباني حافظه هاي RAM
حافظه RAM، يک تراشه مدار مجتمع (IC) بوده که از ميليون‌ها ترانزيستور و خازن تشکيل شده است. در اغلب حافظه‌ها با استفاده و بکارگيري يک خازن و يک ترانزيستور مي‌توان يک سلول را ايجاد کرد. سلول فوق قادر به نگهداري يک بيت داده خواهد بود. خازن اطلاعات مربوط به بيت را که يک و يا صفر است، در خود نگهداري خواهد کرد. عملکرد ترانزيستور مشابه يک سوييچ بوده که امکان کنترل مدارات موجود بر روي تراشه حافظه را بمنظور خواندن مقدار ذخيره شده در

خازن و يا تغيير وضعيت مربوط به آن، فراهم مي نمايد. خازن مشابه يک ظرف (سطل) بوده که قادر به نگهداري الکترون‌ها است. بمنظور ذخيره سازي مقدار “يک” در حافظه، ظرف فوق مي‌بايست از الکترونها پر گردد. براي ذخيره سازي مقدار صفر، مي بايست ظرف فوق خالي گردد. مسئله مهم در رابطه با خازن،

نشت اطلاعات است (وجود سوراخ در ظرف) بدين ترتيب پس از گذشت چندين ميلي‌ثانيه يک ظرف مملو از الکترون تخليه مي گردد. بنابراين بمنظور اينکه حافظه بصورت پويا اطلاعات خود را نگهداري نمايد، مي بايست پردازنده و يا “کنترل کننده حافظه” قبل از تخليه شدن خازن، مکلف به شارژ مجدد آن بمنظور نگهداري مقدار “يک” باشند. بدين منظور کنترل کننده حافظه اطلاعات حافظه را خوانده و مجددا” اطلاعات را بازنويسي مي نمايد. عمليات فوق (Refresh)، هزاران مرتبه در يک ثانيه تکرار خواهد شد. علت نامگذاري DRAM بدين دليل است که اين نوع حافظه ها مجبور به بازخواني اطلاعات بصورت پويا خواهند بود. فرآيند تکراري ” بازخواني / بازنويسي اطلاعات” در اين نوع حافظه ها باعث مي شود که زمان تلف و سرعت حافظه کند گردد.

سلول هاي حافظه بر روي يک تراشه سيليکون و بصورت آرائه اي مشتمل از ستون ها (خطوط بيت) و سطرها (خطوط کلمات) تشکيل مي گردند. نقطه تلاقي يک سطر و ستون بيانگر آدرس سلول حافظه است.

حافظه هاي DRAM با ارسال يک شارژ به ستون مورد نظر باعث فعال شدن ترانزيستور در هر بيت ستون، خواهند شد.در زمان نوشتن خطوط سطر شامل وضعيتي خواهند شد که خازن مي بايست به آن وضغيت تبديل گردد. در زمان خواندن Sense-amplifier ، سطح شارژ موجود در خازن را اندازه گيري مي نمايد. در صورتيکه سطح فوق بيش از پنجاه درصد باشد مقدار “يک” خوانده شده و در غيراينصورت مقدار “صفر” خوانده خواهد شد. مدت زمان انجام عمليات فوق بسيار کوتاه بوده و بر حسب نانوثانيه ( يک ميلياردم ثانيه ) اندازه گيري مي گردد. تراشه حافظه اي که داراي سرعت ۷۰ نانوثانيه است ، ۷۰ نانو ثانيه طول خواهد کشيد تا عمليات خواندن و بازنويسي هر سلول را انجام دهد.

سلول هاي حافظه در صورتيکه از روش هائي بمنظور اخذ اطلاعات موجود در سلول ها استفاده ننمايند، بتنهائي فاقد ارزش خواهند بود. بنابراين لازم است سلول هاي حافظه داراي يک زيرساخت کامل حمايتي از مدارات خاص ديگر باشند. مدارات فوق عمليات زير را انجام خواهند داد:
• مشخص نمودن هر سطر و ستون (انتخاب آدرس سطر و انتخاب آدرس ستون )

• نگهداري وضعيت بازخواني و باز نويسي داده ها ( شمارنده )
• خواندن و برگرداندن سيگنال از يک سلول ( Sense amplifier)

• اعلام خبر به يک سلول که مي بايست شارژ گردد و يا ضرورتي به شارژ وجود ندارد (Write enable)
• ساير عمليات مربوط به “کنترل کننده حافظه” شامل مواردي نظير : مشخص نمودن نوع سرعت ، ميزان حافظه و بررسي خطاء است .
حافظه هاي SRAM داراي يک تکنولوژي کاملا” متفاوت مي باشند. در اين نوع از حافظه ها از فليپ فلاپ براي ذخيره سازي هر بيت حافظه استفاده مي گردد. يک فليپ فلاپ براي يک سلول حافظه، از چهار تا شش ترانزيستور استفاده مي کند . حافظه هاي SRAM نيازمند بازخواني / بازنويسي اطلاعات نخواهند بود، بنابراين سرعت اين نوع از حافظه ها بمراتب از حافظه هاي DRAM بيشتر است .با توجه به اينکه حافظه هاي SRAM از بخش هاي متعددي تشکيل مي گردد،

فضاي استفاده شده آنها بر روي يک تراشه بمراتب بيشتر از يک سلول حافظه از نوع DRAM خواهد بود. در چنين مواردي ميزان حافظه بر روي يک تراشه کاهش پيدا کرده و همين امر مي تواند باعث افزايش قيمت اين نوع از حافظه ها گردد. بنابراين حافظه هاي SRAM سريع و گران و حافظه هاي DRAM ارزان و کند مي باشند . با توجه به موضوع فوق ، از حافظه هاي SRAM بمنظور افزايش سرعت پردازنده ( استفاده از Cache) و از حافظه هاي DRAM براي فضاي حافظه RAM در کامپيوتر استفاده مي گردد.

ماژول هاي حافظه تراشه هاي حافظه در کامييوترهاي شخصي در آغاز از يک پيکربندي مبتني بر Pin با نام (DIP(Dual line Package استفاده مي کردند. اين پيکربندي مبتني بر پين، مي توانست لحيم کاري درون حفره هائي برروي برداصلي کامپيوتر و يا اتصال به يک سوکت بوده که خود به برد اصلي لحيم شده است .همزمان با افزايش حافظه ، تعداد تراشه هاي مورد نياز، فضاي زيادي از برد اصلي را اشغال مي کردند.از روش فوق تا زمانيکه ميزان حافظه حداکثر دو مگابايت بود ، استقاده مي گرديد.

راه حل مشکل فوق، استقرار تراشه هاي حافظه بهمراه تمام عناصر و اجزاي حمايتي در يک برد مدار چاپي مجزا (Printed circut Board) بود. برد فوق در ادامه با استفاده از يک نوع خاص از کانکنور ( بانک حافظه ) به برد اصلي متصل مي گرديد. اين نوع تراشه ها اغلب از يک پيکربندي pin با نام Small Outline J-lead ) soj ) استفاده مي کردند . برخي از توليدکنندگان ديگر که تعداد آنها اندک است از پيکربندي ديگري با نام) Thin Small Outline Package ) tsop استفاده مي نمايند

. تفاوت اساسي بين اين نوع پين هاي جديد و پيکربندي DIP اوليه در اين است که تراشه هاي SOJ و TSOR بصورت surface-mounted در PCB هستند. به عبارت ديگر پين ها مستقيما” به سطح برد لحيم خواهند شد . ( نه داخل حفره ها و يا سوکت ) . تراشه‌هاي حافظه از طريق کارتهائي که “ماژول” ناميده مي شوند قابل دستيابي و استفاده مي باشند. شايد تاکنون با مشخصات يک سيستم که ميزان حافظه خود را بصورت ۳۲ * ۸ , يا ۱۶ * ۴ اعلام مي نمايد، برخورده کرده باشيد. اعداد فوق تعداد تراشه‌ها ضربدر ظرفيت هر يک از تراشه‌ها را که بر حسب مگابيت اندازه گيري مي‌گردند، نشان مي دهد. بمنظور محاسبه

ظرفيت، مي توان با تقسيم نمودن آن بر هشت ميزان مگابايت را بر روي هر ماژول مشخص کرد. مثلا” يک ماژول ۳۲ * ۴، بدين معني است که ماژول داراي چهار تراشه ۳۲ مگابيتي است. با ضرب ۴ در ۳۲ عدد ۱۲۸ (مگابيت) بدست مي آيد. اگر عدد فوق را بر هشت تقسيم نمائيم به ظرفيت ۱۶ مگابايت خواهيم رسيد. نوع برد و کانکتور استفاده شده در حافظه هاي RAM، طي پنج سال اخير تفاوت کرده است. نمونه‌هاي اوليه اغلب بصورت اختصاصي توليد مي گرديدند. توليد کنندگان متفاوت کامپيوتر بردهاي حافظه را بگونه‌اي طراحي مي‌کردند که صرفا” امکان استفاده از آنان در سيستم هاي خاصي وجود داشت. در ادامه (SIMM

(Single in-line memory مطرح گرديد. اين نوع از بردهاي حافظه از ۳۰ پين کانکتور استفاده کرده و طول آن حدود ۳/۵ اينچ و عرض آن يک اينچ بود ( يازده سانتيمتر در ۲/۵ سانتيمتر ). در اغلب کامپيوترها مي‌بايست بردهاي SIMM بصورت زوج هائي که داراي ظرفيت و سرعت يکسان باشند، استفاده گردد. علت اين است که پهناي گذرگاه داده بيشتر از يک SIMM است. مثلا” از دو SIMM هشت مگابايتي براي داشتن ۱۶ مگابايت حافظه بر روي سيستم استفاده مي‌گردد. هر SIMM قادر به ارسال هشت بيت داده در هر لحظه خواهد بود با توجه به اين موضوع که گذرگاه داده شانزده بيتي است از نصف پهناي باند استفاده شده و اين امر منطقي بنظر نمي آيد. در ادامه بردهاي SIMM بزرگتر شده و داراي ابعاد ۲۵ / ۴ * ۱ شدند (۱۱ سانتيمتر در ۲/۵ سانتيمتر) و از ۷۲ پين براي افزايش پهناي باند و امکان افزايش حافظه تا ميزان ۲۵۶ مگابايت بدست آمد.

بموازات افزايش سرعت و ظرفيت پهناي باند پردازنده‌ها، توليدکنندگان از استاندارد جديد ديگري با نام dual in-line memory module) DIMM) استفاده کردند. اين نوع بردهاي حافظه داراي ۱۶۸ پين و ابعاد ۱ * ۵/۴ اينچ (تقريبا” ۱۴ سانتيمتر در ۲/۵ سانتيمتر) بودند. ظرفيت بردهاي فوق در هر ماژول از هشت تا ۱۲۸ مگابايت را شامل و مي توان آنها را بصورت تک (زوج الزامي نيست) استفاده کرد. اغلب ماژول‌هاي حافظه با ۳/۳ ولت کار مي‌کنند. در سيستم هاي مکينتاش از ۵ ولت استفاده مي‌نمايند. يک استاندارد جديد ديگر با نام Rambus in-line memory module ، RIMM از نظر اندازه و پين با DIMM قابل مقايسه است ولي بردهاي فوق ، از يک نوع خاص گذرگاه داده حافظه براي افزايش سرعت استفاده مي نمايند.

اغلب بردهاي حافظه در کامپيوترهاي دستي (notebook) از ماژول هاي حافظه کاملا” اختصاصي استفاده مي نمايند ولي برخي از توليدکنندگان حافظه از استاندارد small outline dual in-line memory module) SODIMM استفاده مي نمايند. بردهاي حافظه SODIMM داراي ابعاد ۱* ۲ اينچ ( ۵ سانتيمنتر در ۵ /۲ سانتيمنتر ) بوده و از ۱۴۴ پين استفاده مي نمايند. ظرفيت اين نوع بردها ي حافظه در هر ماژول از ۱۶ مگابايت تا ۲۵۶ مگابايت مي تواند باشد.
انواع حافظه RAM
• Static random access memory)SRAM) . اين نوع حافظه ها از چندين ترانزيستور ( چهار تا شش ) براي هر سلول حافظه استفاده مي نمايند. براي هر سلول از خازن استفاده نمي گردد. اين نوع حافظه در ابتدا بمنظور cache استفاده مي شدند.

• Dynamic random access memory)DRAM) . در اين نوع حافظه ها براي سلول هاي حافظه از يک زوج ترانزيستورو خازن استفاده مي گردد .
• Fast page mode dynamic random access memory)FPM DRAM) . شکل اوليه اي از حافظه هاي DRAM مي باشند.در تراشه اي فوق تا زمان تکميل فرآيند استقرار يک بيت داده توسط سطر و ستون مورد نظر، مي بايست منتظر و در ادامه بيت خوانده خواهد شد.( قبل از اينکه عمليات مربوط به بيت بعدي آغاز گردد) .حداکثر سرعت ارسال داده به L2 cache معادل ۱۷۶ مگابايت در هر ثانيه است .

• Extended data-out dynamic random access memory)EDO DRAM) . اين نوع حافظه ها در انتظار تکميل و اتمام پردازش هاي لازم براي اولين بيت نشده و عمليات مورد نظر خود را در رابطه با بيت بعد بلافاصله آغاز خواهند کرد. پس از اينکه آدرس اولين بيت مشخص گرديد EDO DRAM عمليات مربوط به جستجو براي بيت بعدي را آغاز خواهد کرد. سرعت عمليات فوق پنج برابر سريعتر نسبت به حافظه هاي FPM است . حداکثر سرعت ارسال داده به L2 cache معادل ۱۷۶ مگابايت در هر ثانيه است .

• Synchronous dynamic random access memory)SDRM) از ويژگي “حالت پيوسته ” بمنظور افزايش و بهبود کارائي استفاده مي نمايد .بدين منظور زمانيکه سطر شامل داده مورد نظر باشد ، بسرعت در بين ستون ها حرکت و بلافاصله پس از تامين داده ،آن را خواهد خواند. SDRAM داراي سرعتي معادل پنج برابر سرعت حافظه هاي EDO بوده و امروزه در اکثر کامپيوترها استفاده مي گردد.حداکثر سرعت ارسال داده به L2 cache معادل ۵۲۸ مگابايت در ثانيه است .

• Rambus dynamic random access memory )RDRAM) يک رويکرد کاملا” جديد نسبت به معماري قبلي DRAM است. اين نوع حافظه ها از Rambus in-line memory module)RIMM) استفاده کرده که از لحاظ اندازه و پيکربندي مشابه يک DIMM استاندارد است. وجه تمايز اين نوع حافظه ها استفاده از يک گذرگاه داده با سرعت بالا با نام “کانال Rambus ” است . تراشه هاي حافظه RDRAM بصورت موازي کار کرده تا بتوانند به سرعت ۸۰۰ مگاهرتز دست پيدا نمايند.
Credit card memory: يک نمونه کاملا” اختصاصي از توليدکنندگان خاص بوده و شامل ماژول هاي DRAM بوده که دريک نوع خاص اسلات ، در کامپيوترهاي noteBook استفاده مي گردد .

PCMCIA memory card .نوع ديگر از حافظه شامل ماژول هاي DRAM بوده که در notebook استفاده مي شود.
FlashRam نوع خاصي از حافظه با ظرفيت کم براي استفاده در دستگاههائي نظير تلويزيون، VCR بوده و از آن به منظور نگهداري اطلاعات خاص مربوط به هر دستگاه استفاده مي گردد. زمانيکه اين نوع دستگاهها خاموش باشند همچنان به ميزان اندکي برق مصرف خواهند کرد. در کامپيوتر نيز از اين نوع حافظه ها براي نگهداري اطلاعاتي در رابطه با تنظيمات هارد ديسک و … استفاده مي گردد.

VideoRam)VRAM) يک نوع خاص از حافظه هاي RAM بوده که براي موارد خاص نظير : آداپتورهاي ويدئو و يا شتا ب دهندگان سه بعدي استفاده مي شود. به اين نوع از حافظه ها multiport dynamic random access memory) MPDRAM) نيز گفته مي شود.علت نامگذاري فوق بدين دليل است که اين نوع از حافظه ها داراي امکان دستيابي به اطلاعات، بصورت تصادفي و سريال مي باشند . VRAM بر روي کارت گرافيک قرار داشته و داراي فرمت هاي متفاوتي است. ميزان حافظه فوق به عوامل متفاوتي نظير : ” وضوح تصوير ” و ” وضعيت رنگ ها ” بستگي دارد.