[h=1][/h] حافظه RAM، یک تراشه مدار مجتمع (IC) بوده که از میلیونها ترانزیستور و خازن تشکیل شده است. در اغلب حافظهها با استفاده و بکارگیری یک خازن و یک ترانزیستور میتوان یک سلول را ایجاد کرد. سلول فوق قادر به نگهداری یک بیت داده خواهد بود. خازن اطلاعات مربوط به بیت را که یک و یا صفر است، در خود نگهداری خواهد کرد. حافظه (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 دارای ابعاد ۱* ۲ اینچ ( ۵ سانتیمنتر در ۵ /۲ سانتیمنتر ) بوده و از ۱۴۴ پین استفاده می نمایند. ظرفیت این نوع بردها ی حافظه در هر ماژول از ۱۶ مگابایت تا ۲۵۶ مگابایت می تواند باشد. ● بررسی خطاء اکثر حافظه هائی که امروزه در کامپیوتر استفاده می گردند دارای ضریب اعتماد بالائی می باشند.در اکثر سیستم ها ،" کنترل کننده حافظه " درزمان روشن کردن سیستم عملیات بررسی صحت عملکرد حافظه را انجام می دهد. تراشه های حافظه با استفاده از روشی با نام Parity ، عملیات بررسی خطاء را انحام می دهند. تراشه های Parity دارای یک بیت اضافه برای هشت بیت داده می باشند.روشی که Parity بر اساس آن کار می کند بسیار ساده است . در ابتداParity زوج بررسی می گردد. زمانیکه هشت بیت ( یک بایت) داده ئی را دریافت می دارند، تراشه تعداد یک های موجود در آن را محاسبه می نماید.در صورتیکه تعداد یک های موجود فرد باشد مقدار بیت Parity یک خواهد شد. در صورتیکه تعداد یک های موجود زوج باشد مقدار بیت parity صفر خواهد شد. زمانیکه داده از بیت های مورد نظر خوانده می شود ، مجددا" تعداد یک های موجود محاسبه و با بیت parity مقایسه می گردد.درصورتیکه مجموع فرد و بیت Parity مقدار یک باشد داده مورد نظر درست بوده و برای پردازنده ارسال می گردد. اما در صورتیکه مجموع فرد بوده و بیت parity صفر باشد تراشه متوجه بروز یک خطاء در بیت ها شده و داده مورد نظر کنار گذاشته می شود. parity فرد نیز به همین روش کار می کند در روش فوق زمانی بیت parity یک خواهد شد که تعداد یک های موجود در بایت زوج باشد. مسئله مهم در رابطه با Parity عدم تصحیح خطاء پس از تشخیص است . در صورتیکه یک بایت از داده ها با بیت Parity خود مطابقت ننماید داده دور انداخته شده سیستم مجددا" سعی خود را انجام خواهد داد. کامپیوترها نیازمند یک سطح بالاتربرای برخورد با خطاء می باشند.برخی از سیستم ها از روشی با نام به error correction code)ECC) استفاده می نمایند. در روش فوق از بیت های اضافه برای کنترل داده در هر یک از بایت ها استفاده می گردد. اختلاف روش فوق با روش Parity در این است که از چندین بیت برای بررسی خطاء استفاده می گردد. ( تعداد بیت های استفاده شده بستگی به پهنای گذرگاه دارد ) حافظه های مبتنی بر روش فوق با استفاده از الگوریتم مورد نظر نه تنها قادر به تشخیص خطا بوده بلکه امکان تصحیح خطاهای بوجود آمده نیز فراهم می گردد. ECCهمچنین قادر به تشخیص خطاها در مواردی است که یک یا چندین بیت در یک بایت با مشکل مواجه گردند . ● انواع حافظه RAM ▪ Static random access memory)SRAM) . این نوع حافظه ها از چندین ترانزیستور ( چهار تا شش ) برای هر سلول حافظه استفاده می نمایند. برای هر سلول از خازن استفاده نمی گردد. این نوع حافظه در ابتدا بمنظور cache استفاده می شدند. ▪ Dynamic random access memory)DRAM) . در این نوع حافظه ها برای سلول های حافظه از یک زوج ترانزیستورو خازن استفاده می گردد . ▪ Fast page mode dynamic random access memory)FPM DRAM) . شکل اولیه ای از حافظههای DRAM می باشند.در تراشه ای فوق تا زمان تکمیل فرآیند استقرار یک بیت داده توسط سطر و ستون مورد نظر، می بایست منتظر و در ادامه بیت خوانده خواهد شد.( قبل از اینکه عملیات مربوط به بیت بعدی آغاز گردد) .حداکثر سرعت ارسال داده به L۲ cache معادل ۱۷۶ مگابایت در هر ثانیه است . ▪ Extended data-out dynamic random access memory)EDO DRAM) . این نوع حافظه ها در انتظار تکمیل و اتمام پردازش های لازم برای اولین بیت نشده و عملیات مورد نظر خود را در رابطه با بیت بعد بلافاصله آغاز خواهند کرد. پس از اینکه آدرس اولین بیت مشخص گردید EDO DRAM عملیات مربوط به جستجو برای بیت بعدی را آغاز خواهد کرد. سرعت عملیات فوق پنج برابر سریعتر نسبت به حافظه های FPM است . حداکثر سرعت ارسال داده به L۲ cache معادل ۱۷۶ مگابایت در هر ثانیه است . ▪ Synchronous dynamic random access memory)SDRM) از ویژگی "حالت پیوسته " بمنظور افزایش و بهبود کارائی استفاده می نماید .بدین منظور زمانیکه سطر شامل داده مورد نظر باشد ، بسرعت در بین ستون ها حرکت و بلافاصله پس از تامین داده ،آن را خواهد خواند. SDRAM دارای سرعتی معادل پنج برابر سرعت حافظه های EDO بوده و امروزه در اکثر کامپیوترها استفاده می گردد.حداکثر سرعت ارسال داده به L۲ 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 بر روی کارت گرافیک قرار داشته و دارای فرمت های متفاوتی است. میزان حافظه فوق به عوامل متفاوتی نظیر : " وضوح تصویر " و " وضعیت رنگ ها " بستگی دارد. ● به چه میزان حافظه نیاز است؟ حافظه RAM یکی از مهمترین فاکتورهای موجود در زمینه ارتقاء کارآئی یک کامپیوتر است. افزایش حافظه بر روی یک کامپیوتر با توجه به نوع استفاده میتواند در مقاطع زمانی متفاوتی انجام گیرد. در صورتیکه از سیستمهای عامل ویندوز ۹۵ و یا ۹۸ استفاده میگردد حداقل به ۳۲ مگابایت حافظه نیاز خواهد بود. (۶۴ مگابایت توصیه میگردد). اگر از سیستم عامل ویندوز ۲۰۰۰ استفاده میگردد حداقل به ۶۴ مگابایت حافظه نیاز خواهد بود. (۱۲۸ مگابایت توصیه میگردد) سیستم عامل لینوکس صرفا" به ۴ مگابایت حافظه نیاز دارد. در صورتیکه از سیستم عامل اپل استفاده می گردد به ۱۶ مگابایت حافظه نیاز خواهد بود.( ۶۴ مگابایت توصیه می گردد) میزان حافظه اشاره شده برای هر یک از سیستم های فوق بر اساس کاربردهای معمولی ارائه شده است. دستیابی به اینترنت، استفاده از برنامههای کاربردی خاص و سرگرم کننده، نرمافزارهای خاص طراحی، انیمیشن سه بعدی و ... مستلزم استفاده از حافظه بمراتب بیشتری خواهد بود.
پاسخ : حافظه RAM [h=1]آشنایی با RAM[/h] حافظه RAM : حافظه (RAM (Random Access Memory شناخته ترين نوع حافظه در دنيای کامپيوتر است . روش دستيابی به اين نوع از حافظه ها تصادفی است . چون می توان به هر سلول حافظه مستقيما" دستيابی پيدا کرد . در مقابل حافظه های RAM ، حافظه های(SAM(Serial Access Memory وجود دارند. حافظه های SAM اطلاعات را در مجموعه ای از سلول های حافظه ذخيره و صرفا" امکان دستيابی به آنها بصورت ترتيبی وجود خواهد داشت. ( نظير نوار کاست ) در صورتيکه داده مورد نظر در محل جاری نباشد هر يک از سلول های حافظه به ترتيب بررسی شده تا داده مورد نظر پيدا گردد. حافظه های SAM در موارديکه پردازش داده ها الزاما" بصورت ترتيبی خواهد بود مفيد می باشند ( نظير حافظه موجود بر روی کارت های گرافيک ). داده های ذخيره شده در حافظه RAM با هر اولويت دلخواه قابل دستيابی خواهند بود. مبانی حافظه های RAM : حافظه RAM ، يک تراشه مدار مجتمع (IC) بوده که از ميليون ها ترانزيستور و خازن تشکيل شده است .در اغلب حافظه ها با استفاده و بکارگيری يک خازن و يک ترانزيستور می توان يک سلول را ايجاد کرد. سلول فوق قادر به نگهداری يک بيت داده خواهد بود. خازن اطلاعات مربوط به بيت را که يک و يا صفر است ، در خود نگهداری خواهد کرد.عملکرد ترانزيستور مشابه يک سوييچ بوده که امکان کنترل مدارات موجود بر روی تراشه حافظه را بمنظور خواندن مقدار ذخيره شده در خازن و يا تغيير وضعيت مربوط به آن ، فراهم می نمايد.خازن مشابه يک ظرف ( سطل) بوده که قادر به نگهداری الکترون ها است . بمنظور ذخيره سازی مقدار" يک" در حافظه، ظرف فوق می بايست از الکترونها پر گردد. برای ذخيره سازی مقدار صفر، می بايست ظرف فوق خالی گردد.مسئله مهم در رابطه با خازن، نشت اطلاعات است ( وجود سوراخ در ظرف ) بدين ترتيب پس از گذشت چندين ميلی ثانيه يک ظرف مملو از الکترون تخليه می گردد. بنابراين بمنظور اينکه حافظه بصورت پويا اطلاعات خود را نگهداری نمايد ، می بايست پردازنده و يا " کنترل کننده حافظه " قبل از تخليه شدن خازن، مکلف به شارژ مجدد آن بمنظور نگهداری مقدار "يک" باشند.بدين منظور کنترل کننده حافظه اطلاعات حافظه را خوانده و مجددا" اطلاعات را بازنويسی می نمايد.عمليات فوق (Refresh)، هزاران مرتبه در يک ثانيه تکرار خواهد شد.علت نامگذاری DRAM بدين دليل است که اين نوع حافظه ها مجبور به بازخوانی اطلاعات بصورت پويا خواهند بود. فرآيند تکراری " بازخوانی / بازنويسی اطلاعات" در اين نوع حافظه ها باعث می شود که زمان تلف و سرعت حافظه کند گردد. سلول های حافظه بر روی يک تراشه سيليکون و بصورت آرائه ای مشتمل از ستون ها ( خطوط بيت ) و سطرها ( خطوط کلمات) تشکيل می گردند. نقطه تلاقی يک سطر و ستون بيانگر آدرس سلول حافظه است . حافظه های DRAM با ارسال يک شارژ به ستون مورد نظر باعث فعال شدن ترانزيستور در هر بيت ستون، خواهند شد.در زمان نوشتن خطوط سطر شامل وضعيتی خواهند شد که خازن می بايست به آن وضغيت تبديل گردد. در زمان خواندن Sense-amplifier ، سطح شارژ موجود در خازن را اندازه گيری می نمايد. در صورتيکه سطح فوق بيش از پنجاه درصد باشد مقدار "يک" خوانده شده و در غيراينصورت مقدار "صفر" خوانده خواهد شد. مدت زمان انجام عمليات فوق بسيار کوتاه بوده و بر حسب نانوثانيه ( يک ميلياردم ثانيه ) اندازه گيری می گردد. تراشه حافظه ای که دارای سرعت 70 نانوثانيه است ، 70 نانو ثانيه طول خواهد کشيد تا عمليات خواندن و بازنويسی هر سلول را انجام دهد. سلول های حافظه در صورتيکه از روش هائی بمنظور اخذ اطلاعات موجود در سلول ها استفاده ننمايند، بتنهائی فاقد ارزش خواهند بود. بنابراين لازم است سلول های حافظه دارای يک زيرساخت کامل حمايتی از مدارات خاص ديگر باشند.مدارات فوق عمليات زير را انجام خواهند داد : -- مشخص نمودن هر سطر و ستون (انتخاب آدرس سطر و انتخاب آدرس ستون ) -- نگهداری وضعيت بازخوانی و باز نويسی داده ها ( شمارنده ) -- خواندن و برگرداندن سيگنال از يک سلول ( 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 هستند. به عبارت ديگر پين ها مستقيما" به سطح برد لحيم خواهند شد . ( نه داخل حفره ها و يا سوکت ) . تراشه ها ی حافظه از طريق کارت هائی که " ماژول " ناميده می شوند قابل دستيابی و استفاده می باشند.. شايد تاکنون با مشخصات يک سيستم که ميزان حافظه خود را بصورت 32 * 8 , يا 16 * 4 اعلام می نمايد ، برخورده کرده باشيد.اعداد فوق تعداد تراشه ها ضربدر ظرفيت هر يک از تراشه ها را که بر حسب مگابيت اندازه گيری می گردند، نشان می دهد. بمنظور محاسبه ظرفيت ، می توان با تقسيم نمودن آن بر هشت ميزان مگابايت را بر روی هر ماژول مشخص کرد.مثلا" يک ماژول 32 * 4 ، بدين معنی است که ماژول دارای چهار تراشه 32 مگابيتی است .با ضرب 4 در 32 عدد 128 ( مگابيت) بدست می آيد . اگر عدد فوق را بر هشت تقسيم نمائيم به ظرفيت 16 مگابايت خواهيم رسيد. نوع برد و کانکتور استفاده شده در حافظه های RAM ، طی پنج سال اخير تفاوت کرده است . نمونه های اوليه اغلب بصورت اختصاصی توليد می گرديدند . توليد کنندگان متفاوت کامپيوتر بردهای حافظه را بگونه ای طراحی می کردند که صرفا" امکان استفاده از آنان در سيستم های خاصی وجود داشت . در ادامه (SIMM (Single in-line memory مطرح گرديد. اين نوع از بردهای حافظه از 30 پين کانکتور استفاده کرده و طول آن حدود 3/5 اينچ و عرض آن يک اينچ بود ( يازده سانتيمتر در 2/5 سانتيمتر ) .در اغلب کامپيوترها می بايست بردهای SIMM بصورت زوج هائی که دارای ظرفيت و سرعت يکسان باشند، استفاده گردد. علت اين است که پهنای گذرگاه داده بيشتر از يک SIMM است . مثلا" از دو SIMM هشت مگابايتی برای داشتن 16 مگابايت حافظه بر روی سيستم استفاده می گردد. هر SIMM قادر به ارسال هشت بيت داده در هر لحظه خواهد بود با توجه به اين موضوع که گذرگاه داده شانزده بيتی است از نصف پهنای باند استفاده شده و اين امر منطقی بنظر نمی آيد.در ادامه بردهای SIMM بزرگتر شده و دارای ابعاد 25 / 4 * 1 شدند( 11 سانتيمتر در 2/5 سانتيمتر ) و از 72 پين برای افزايش پهنای باند و امکان افزايش حافظه تا ميزان 256 مگابايت بدست آمد. بموازات افزايش سرعت و ظرفيت پهنای باند پردازنده ها، توليدکنندگان از استاندارد جديد ديگری با نام dual in-line memory module)DIMM) استفاده کردند.اين نوع بردهای حافظه دارای 168 پين و ابعاد 1 * 5/4 اينچ ( تقريبا" 14 سانتيمتر در 2/5 سانتيمتر ) بودند.ظرفيت بردهای فوق در هر ماژول از هشت تا 128 مگابايت را شامل و می توان آنها را بصورت تک ( زوج الزامی نيست ) استفاده کرد. اغلب ماژول های حافظه با 3/3 ولت کار می کنند. در سيستم های مکينتاش از 5 ولت استفاده می نمايند. يک استاندارد جديد ديگر با نام Rambus in-line memory module ، RIMM از نظر اندازه و پين با DIMM قابل مقايسه است ولی بردهای فوق ، از يک نوع خاص گذرگاه داده حافظه برای افزايش سرعت استفاده می نمايند. اغلب بردهای حافظه در کامپيوترهای دستی (notebook) از ماژول های حافظه کاملا" اختصاصی استفاده می نمايند ولی برخی از توليدکنندگان حافظه از استاندارد small outline dual in-line memory module) SODIMM استفاده می نمايند. بردهای حافظه SODIMM دارای ابعاد 1* 2 اينچ ( 5 سانتيمنتر در 5 /2 سانتيمنتر ) بوده و از 144 پين استفاده می نمايند. ظرفيت اين نوع بردها ی حافظه در هر ماژول از 16 مگابايت تا 256 مگابايت می تواند باشد. بررسی خطا: اکثر حافظه هائی که امروزه در کامپيوتر استفاده می گردند دارای ضريب اعتماد بالائی می باشند.در اکثر سيستم ها ،" کنترل کننده حافظه " درزمان روشن کردن سيستم عمليات بررسی صحت عملکرد حافظه را انجام می دهد. تراشه های حافظه با استفاده از روشی با نام Parity ، عمليات بررسی خطاء را انحام می دهند. تراشه های Parity دارای يک بيت اضافه برای هشت بيت داده می باشند.روشی که Parity بر اساس آن کار می کند بسيار ساده است . در ابتداParity زوج بررسی می گردد. زمانيکه هشت بيت ( يک بايت) داده ئی را دريافت می دارند، تراشه تعداد يک های موجود در آن را محاسبه می نمايد.در صورتيکه تعداد يک های موجود فرد باشد مقدار بيت Parity يک خواهد شد. در صورتيکه تعداد يک های موجود زوج باشد مقدار بيت parity صفر خواهد شد. زمانيکه داده از بيت های مورد نظر خوانده می شود ، مجددا" تعداد يک های موجود محاسبه و با بيت parity مقايسه می گردد.درصورتيکه مجموع فرد و بيت Parity مقدار يک باشد داده مورد نظر درست بوده و برای پردازنده ارسال می گردد. اما در صورتيکه مجموع فرد بوده و بيت parity صفر باشد تراشه متوجه بروز يک خطاء در بيت ها شده و داده مورد نظر کنار گذاشته می شود. parity فرد نيز به همين روش کار می کند در روش فوق زمانی بيت parity يک خواهد شد که تعداد يک های موجود در بايت زوج باشد. مسئله مهم در رابطه با Parity عدم تصحيح خطاء پس از تشخيص است . در صورتيکه يک بايت از داده ها با بيت Parity خود مطابقت ننمايد داده دور انداخته شده سيستم مجددا" سعی خود را انجام خواهد داد. کامپيوترها نيازمند يک سطح بالاتربرای برخورد با خطاء می باشند.برخی از سيستم ها از روشی با نام به error correction code)ECC) استفاده می نمايند. در روش فوق از بيت های اضافه برای کنترل داده در هر يک از بايت ها استفاده می گردد. اختلاف روش فوق با روش Parity در اين است که از چندين بيت برای بررسی خطاء استفاده می گردد. ( تعداد بيت های استفاده شده بستگی به پهنای گذرگاه دارد ) حافظه های مبتنی بر روش فوق با استفاده از الگوريتم مورد نظر نه تنها قادر به تشخيص خطا بوده بلکه امکان تصحيح خطاهای بوجود آمده نيز فراهم می گردد. ECCهمچنين قادر به تشخيص خطاها در مواردي است که يک يا چندين بيت در يک بايت با مشکل مواجه گردند . انواح حافظه RAM : Static random access memory)SRAM) . اين نوع حافظه ها از چندين ترانزيستور ( چهار تا شش ) برای هر سلول حافظه استفاده می نمايند. برای هر سلول از خازن استفاده نمی گردد. اين نوع حافظه در ابتدا بمنظور cache استفاده می شدند. Dynamic random access memory)DRAM) . در اين نوع حافظه ها برای سلول های حافظه از يک زوج ترانزيستورو خازن استفاده می گردد . Fast page mode dynamic random access memory)FPM DRAM) . شکل اوليه ای از حافظه های DRAM می باشند.در تراشه ای فوق تا زمان تکميل فرآيند استقرار يک بيت داده توسط سطر و ستون مورد نظر، می بايست منتظر و در ادامه بيت خوانده خواهد شد.( قبل از اينکه عمليات مربوط به بيت بعدی آغاز گردد) .حداکثر سرعت ارسال داده به L2 cache معادل 176 مگابايت در هر ثانيه است . Extended data-out dynamic random access memory)EDO DRAM) . اين نوع حافظه ها در انتظار تکميل و اتمام پردازش های لازم برای اولين بيت نشده و عمليات مورد نظر خود را در رابطه با بيت بعد بلافاصله آغاز خواهند کرد. پس از اينکه آدرس اولين بيت مشخص گرديد EDO DRAM عمليات مربوط به جستجو برای بيت بعدی را آغاز خواهد کرد. سرعت عمليات فوق پنج برابر سريعتر نسبت به حافظه های FPM است . حداکثر سرعت ارسال داده به L2 cache معادل 176 مگابايت در هر ثانيه است . Synchronous dynamic random access memory)SDRM) از ويژگی "حالت پيوسته " بمنظور افزايش و بهبود کارائی استفاده می نمايد .بدين منظور زمانيکه سطر شامل داده مورد نظر باشد ، بسرعت در بين ستون ها حرکت و بلافاصله پس از تامين داده ،آن را خواهد خواند. SDRAM دارای سرعتی معادل پنج برابر سرعت حافظه های EDO بوده و امروزه در اکثر کامپيوترها استفاده می گردد.حداکثر سرعت ارسال داده به L2 cache معادل 528 مگابايت در ثانيه است . Rambus dynamic random access memory )RDRAM) يک رويکرد کاملا" جديد نسبت به معماری قبلی DRAM است. اين نوع حافظه ها از Rambus in-line memory module)RIMM) استفاده کرده که از لحاظ اندازه و پيکربندی مشابه يک DIMM استاندارد است. وجه تمايز اين نوع حافظه ها استفاده از يک گذرگاه داده با سرعت بالا با نام "کانال Rambus " است . تراشه های حافظه RDRAM بصورت موازی کار کرده تا بتوانند به سرعت 800 مگاهرتز دست پيدا نمايند. Credit card memory يک نمونه کاملا" اختصاصی از توليدکنندگان خاص بوده و شامل ماژول های DRAM بوده که دريک نوع خاص اسلات ، در Laptop ها استفاده می گردد . PCMCIA memory card .نوع ديگر از حافظه شامل ماژول های DRAM بوده که در Laptop استفاده می شود. FlashRam نوع خاصی از حافظه با ظرفيت کم برای استفاده در دستگاههائی نظير تلويزيون، VCR بوده و از آن به منظور نگهداری اطلاعات خاص مربوط به هر دستگاه استفاده می گردد. زمانيکه اين نوع دستگاهها خاموش باشند همچنان به ميزان اندکی برق مصرف خواهند کرد. در کامپيوتر نيز از اين نوع حافظه ها برای نگهداری اطلاعاتی در رابطه با تنظيمات هارد ديسک و ... استفاده می گردد. VideoRam)VRAM) يک نوع خاص از حافظه های RAM بوده که برای موارد خاص نظير : آداپتورهای ويدئو و يا شتا ب دهندگان سه بعدی استفاده می شود. به اين نوع از حافظه ها multiport dynamic random access memory) MPDRAM) نيز گفته می شود.علت نامگذاری فوق بدين دليل است که اين نوع از حافظه ها دارای امکان دستيابی به اطلاعات، بصورت تصادفی و سريال می باشند . VRAM بر روی کارت گرافيک قرار داشته و دارای فرمت های متفاوتی است. ميزان حافظه فوق به عوامل متفاوتی نظير : " وضوح تصوير " و " وضعيت رنگ ها " بستگی دارد. به چه ميزان حافظه نياز است ؟ حافظه RAM يکی از مهمترين فاکتورهای موجود در زمينه ارتقاء کارآئی يک کامپيوتر است . افزايش حافظه بر روی يک کامپيوتر با توجه به نوع استفاده می تواند در مقاطع زمانی متفاوتی انجام گيرد. در صورتيکه از سيستم های عامل ويندوز 95 و يا 98 استفاده می گردد حداقل به 32 مگابايت حافظه نياز خواهد بود. ( 64 مگابايت توصيه می گردد) .اگر از سيستم عامل ويندوز 2000 استفاده می گردد حداقل به 64 مگابايت حافظه نياز خواهد بود.( 128 مگابايت توصيه می گردد) در ويندوز ايكس پي ميزان نياز به حافظه رم به 128 مگابايت افزايش يافته است ..سيستم عامل لينوکس صرفا" به 4 مگابايت حافظه نياز دارد. در صورتيکه از سيستم عامل اپل استفاده می گردد به 16 مگابايت حافظه نياز خواهد بود.( 64 مگابايت توصيه می گردد). ميزان حافظه اشاره شده برای هر يک از سيستم های فوق بر اساس کاربردهای معمولی ارائه شده است . دستيابی به اينترنت ، استفاده از برنامه های کاربردی خاص و سرگرم کننده ، نرم افزارهای خاص طراحی، انيميشن سه بعدی و... مستلزم استفاده از حافظه بمراتب بيشتری خواهد بود .