مطـالـب سـایـت

جستجو در سايت


 

   نحوه عملكرد رم Ram


RAM مخفف Random Access Memory به معنی دسترسی تصادفی به حافضه است . RAM به این دلیل تصادفی در نظر گرفته شده است که می تواند در صورت دانستن ردیف و ستونی که به یک سلول ختم می شوند به ان دسترسی پیدا کنید . نقطه مقابل RAM روش دستیابی ترتیبی( Serial Access Memory ) است که به ان SAM می گویند . SAM داده ها را به صورت ترتیبی از سلول های حافظه ذخیره می کند که تنها بتوان به طور متوالی به انها دسترسی داشت (مانند یک نوار کاست ) . اگر ان داده ها در سلول فعلی موجود نباشند سلول های حافطه بعدی کنترول میشوند تا جایی که داده مورد نیاز پیدا شود . SAM در مورد بافرها بسیا خوب عمل می کند . در حافطه های موقت داده ها به همان ترتیبی ذخیره می شوند که مورد استفاده قرار خواهند گرفت ( به عنوان مثال حافطه بافر متنی در کارت گرافیک ) اما از سوی دیگر می توانیم به داده های RAM به هر ترتیبی که می خواهیم دسترسی پیدا کنیم . یک تراشه حافطه همانند ریزپردازنده یک مدار یکپارچه ( IC )است که از میلیون ها ترانزیستور و خازن ساخته میشود . در حافطه دستیابی مستقیم پویا(DRAM (Dynamic Random Access Memory که معمولی ترین نوع حافطه کامپیوتر محسوب میشود . یک ترانزیستور در نقش یک سوییچ عمل می کند که اجازه می دهد مدار کنترول در تراشه حافطه اطلاعات است ( 0 یا 1 ) . ترانزیستور در نقش یک سوییچ عمل می کند که اجازه می دهد مدار کنترول تراشه حافطه اطلاعات خازن را خوانده یا در وضعیت انها را تغییر دهد .

روشن کردن به وسیله RAM

خازن مانند سطل کوچکی است که می تواند الکترون را در خود نگه دارد . برای ذخیره یک عدد در سلول حافظه این سطل مملو از الکترون می شود . برای ذخیره کردن 0 . سطل تهی از الکترون می شود . مشکل این سطل خازن ان است که گویا سوراخی در ان وجود دارد . به طوری که ممکن است در مدت زمان یک میلی ثانیه تخلیه شود . بنابراین عملکرد یک حافطه پویا منوط به این است که CPU یا کنترلگر حافظه وارد عمل شده و تمام خازن های حاوی 1 را پیش از تخلیه کامل دوباره شارژ کند . برای این کار کنترلگر حافظه ان را خوانده و بلافاصله بازنویسی می کند . این تازه سازی به طور خودکار هزاران بار در هر ثانیه انجام میشود .

عمل تازه سازی همان دلیلی است که باعث شده RAM پویا به این نام خوانده شود . RAM پویا به طور فعالانه و مداوم عمل تازه سازی را انجام می دهد . در غیر این صورت اطلاعات موجود را از دست خواهد داد . نکته منفی تمام این نوسازی ها ان است که نیاز به مصرف زمان داشته موجود کند شدن سرعت حافظه میشود .

در ادامه بیشتر در مورد RAM پویا و سلول های حافظه صحبت خواهد شد.

سلول های حافظه و DRAM

سلول های حافظه روی یک قطعه نازک سیلیکونی (ویفر ) در ارایه ای از ستون ها (bitlines ) و ردیفها (wordlines ) حک شده اند . محل تلاقی bitline و wordlines نمایانگر آدرس یک سلول حافظه است



حافظه تشکیل شده است از بیت هایی که در مختصات دو بعدی چیده شده اند . در این تصویر سلول های خاکستری نشانگر یک ها و سلول های آبی نشانگر صفرها هستند .

DRAM از طریق ارسال شارژ به ستون مناسب (CAS ) برای دستیابی به ترانزیستور موجود در هر بیت در ستون عمل می کند . در زمان ثبت داده ردیف ها وضعیتی که خازن باید داشته باشد را به خود می گیرند .

در زمان خواندن داده ها تقویت کننده حسی تعیین کننده سطح شارژ در خازن استاگر این سطح بیشتر ار 50 درصد باشد تقویت کننده ان را 1 در نظر می گیرد در غیر این صورت 0 خوانده می شود .

شمارشگر توالی تازه سازی را که ردیف ها بر اساس ترتیب ان قابل دستیابی هستند پیگیری می کند . مدت زمان لازم برای انجام تمام این کارها به قدری کم است که با مقیاسنانو ثانیه اندازه گیری می شود . یک تراشه حافظه با درجه 70 نانو ثانیه به این معناست که 70 نانو ثانیه طول می کشد تا هر سلول را به طور کامل خوانده و دوباره پر شود .

سلول های حافظه به تنهایی و بدون قابلیت وارد یا خارج کردن اطلاعات بی ارزش هستند . بنابراین سلول های حافظه از سوی مدارهای اختصاصی دیگر پشتیبانی زیر بنایی دارند . این مدارها دارای این وظایف هستند .

• شناسایی ردیف ها و ستون ها ( انتخاب آدرس ردیف و ستون )

• پیگیری توالی تازه سازی (شمارنده)

• خواندن و ذخیره یک علامت از یک سلول (تقویت کننده حسی )

• تعیین اینکه ایا یک سلول باید شارژ شود یا خیر ( می توان روی ان نوشت یا خیر )

• از جمله دیگر کاربردهای کنترول گر حافظه یک سری وظایف است که شامل شناسایی نوع

سرعت مقدار حافظه و کنترول خطاهاست .

عملکرد RAM ایستا با DRAM متفاوت است . در ادامه به چگونگی عملکرد ان می پردازیم .

RAM ایستا

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

به هر شکل از انجا که قطعات بیشتری در RAM ایستا وجود دارند . یک سلول حافظه ایستا نسبت به یک سلول حافظه پویا فضای بیشتری روی یک تراشه اشغال می کند . به همین دلیل روی هر تراشه حافظه کمتری وجود دارد و در نتیجه RAM ایستا بسیار گران تر است .

RAM ایستا سریع و گران است RAM پویا ارزان تر و کند تر بنابراین RAM ایستا برای حافظه cache حساس به سرعت CPU به کار می رود . در حالی که RAM پویا فضای RAM سیستم را افزایش می دهد .

تراشه های حافظه در کامپیوتر های دسک تاپ عمومآ از یک پیکربندی پین به نام Dual Inline Package = DIP
استفاده می کردند . این پیکربندی پین می تواند به حفرهای موجود در مادربورد کامپیوتر متصل شده یا اینکه روی یکی از سوکت های متصل به مادربرد وصل شود. این روش در موافعی که کامپیوتر ها متصل به مادربورد وصل شود . این روش در مواقعی که کامپیوتر ها مشخصآ با RAM چند مگابایتی یا کمتر کار می کنند نتیجه بهتری می دهد . اما با افزایش نیاز به حافظه به تعداد تراشه های نیازمند فضا روی مادربورد نیز افزوده می شود .

چاره این کار قرار دادن تراشه حافظه در کنار سایر قطعات پشتیبان روی یک برد مدار چاپی PCB است که بتواند داخل یک کانکتور ویژه memorybank روی مادربرد وصل شود . اغلب این تراشه ها از پیکربندی پین Small Outline J-lead = SOJ استفاده می کنند . تفاوت اصلی بین این نوع پین جدید با پیکربندی DIP اصلی در ان است که تراشه های SOJ و TSOP از نوع اتصال سطحی به برد مدار چاپی هستند . به عبارت دیگر پین ها مستقیمآ به سطح برد متصل شده اند و درون حفره یا سوکت قرار نمی گیرند .

تراشه های حافظه در شرایط طبیعی تنها به عنوان بخشی از یک کارت به نام ماجول قابل دسترسی هستند . ممکن است شما حافظه را به صورت 16x4 و 32x8 دیده باشید . اعداد نمایانگر تعداد تراشه ها هستند که در ظرفیت هر کدام از تزاشه ها ضرب شده و با معیار مگابیت یا میلیون بیت ارزیابی میشوند . اگر نتیجه این ضرب را به 8 تقسیم کنید تعداد مگابایت ان ماجول مشخص می گردد .

به عنوان مثال 32x4 به این معناست که ماجول چهار تراشه 32 مگابایتی دارد. حاصلضرب 4 در 32 برابر 128 مگابایت از انجا که می دانیم یک بایت دارای 8 بیت است باید نتیجه حاصل شده را به 8 تقسیم کنیم . حاصل تقسیم برابر 16 مگابایت می شود .

انواع RAM :

انواع رایج RAM عبارتند از :

SRAM : حافضه دسترسی تصادفی ایستا از ترانزیستورهای چندگانه استفاده می کند به عنوان مثال چهار یا شش ترانزیستورهای در ازای هر سلول حافظه اما بدون وجود خازن چهار یا شش ترانزیستور در ازای هر سلول حافظه اما بدون وجود خازن در هر سلول از این RAM اصولآ برای حافظه Cache استفاده می شود .

DRAM : حافظه دسترسی تصادفی پویا دارای سلول های حافظه ای است که هر کدام یک جفت ترانزیستور و خازن جهت تازه سازی دائمی دارند .

FPMDRAM : این حافظه شکل اولیه ای از حافظه های DRAM است . در این تراشه باید تا زمان تکمیل فرایند استقرار یک بیت داده توسط ستون و ردیف مورد نظر منتظر ماند تا بعد از ان بیت داده توسط ستون و ردیف مورد نظر منتظر ماند تا بعد از ان بیت خواند شود . انگاه به سراغ بیت بعدی می رود . حداکثر سرعت ارسال داده به L2 cache معادل 176 مگابایت در هر ثانیه است .

EDODRAM : حافظه دسترسی تصادفی پویای Extended data-out این حافظه منتظر تکمیل و اتمام پردازش های لازم برای اولین بیت نشده و عملیات مورد نظر خود را در رابطه با بیت بعدی بلافاصله اغاز می کند . به محض اینکه آدرس اولین بیت مشخص گردید EDODRAM جست وجو برای بیت بعدی را اغاز خواهد کرد. سرعت این کار تقریبآ 5 درصد بیشتر از حاظه های FPM است . حداکثر سرعت ارسال داده به L2 cache تقریبآ 264 مگابایت در ثانیه است .

SDRAM : حافظه دسترسی تصادفی پویای همزمان از ویژگی حالت پیوسته به منظور زمانی که سطر شامل داده مورد نظر باشد. به سرعت در بین ستون ها حرکت کرده و بلافاصله پس از تامین

داده ان را خواهد خواند .

با این روش داده های مورد نیاز CPU در دسترس خواهد بود. SDRAM دارای سرعتی معادل 5 درصد بیشتر از سرعت حافظه های EDO بوده و امروزه در اکثر کامپیوتر ها استفاده می شود . حداکثر سرعت ارسال داده به L2 cache معادل 528 مگابایت در ثانیه است .

DDRSDRAM : این حافظه دقیقآ مانند SDRAM عمل می کند . تنها با این تفاوت که از پهنای باند بیشتری برخوردار است . یعنی سرعت بیشتری دارد . حداکثر سرعت انتقال داده به L2 cache تقریبآ برابر 1064 مگابایت در ثانیه است ( در مورد DDRSDRAM 133 با سرعت مگاهرتز ) .

RDRAM : حافظه دسترسی تصادفی پویای Rambus که یک رویکرد کاملآ جدید نسبت به معماری

قبلی DRAM است . این نوع حافظه ها که توسط شرکت RAmbus طراحی شده و از RIMM

( Rambus in-line memory module ) استفاده می کند که از لحاظ اندازه و پیکربندی مشابه یک

DIMM استاندارد است .

وجه تمایز این نوع حافطه ها استفاده از یک گذرگاه داده با سرعت بالا به نام کانال Rambus است .تراشه های حافظه RDRAM به صورت موازی کار کرده تا بتوانند به سرعت 800 مگاهرتز یا 1600 مگابایت در ثانیه دست پیدا کند . گرمای بیشتری نیز نسبت به سایر تراشه ها تولید می کنند . برای جلوگیری از اتلاف گرمای مازاد . تراشه های Rambus از یک پخش کننده گرما بهره می برند که شبیه یک ویفر بلند و باریک است . دقیقآ همان طور که انواع کوچک تری از DIMM ها وجود دارد SO-RIMM هایی نیز وجود دارد که برای کامپیوترهای کیفی طراحی شده است .

Credit Card Memory : این حافظه یک نمونه کاملآ اختصاصی و شامل ماجول های DRAM بوده که یک نوع خاص شیار کامپیوتر های کیفی استفاده می گردد.

کارت های حافظه PCMCIA : نوع دیگری از حافظه شامل ماجول های DRAM بوده که در کامپیوتر کیفی استفاده می شود . این نوع کارت ها اختصاصی نبوده و با هر کامپیوتر کیفی که گذرگاه سیستم ان با پیکربندی کارت حافظه همخوانی داشته باشد کار می کند .

CMOSRAM : نامی است برای تکه های کوچک حافظه که در کامپیوتر و دیگر وسایلی که باید اطلاعاتی را در خود ثبت کنند مانند هارددیسک مورد استفاده قرار می گیرد این حافظه از یک باتری کوچک برای تامین نیروی الکتریکی مورد نیاز برای حفظ محتویات حاظه استفاده می کند .

VRAM : VideoRAM که از نام MPDRAM = Multiport Dynamic Random Access Memory نیز شناخته می شود . یک نوع خاص از RAM بوده که برای موارد خاص نظر : آداپتورهای تصویر و یا تصویر و یا شتاب دهندگان سه بعدی استفاده می شود . علت نام Multiport بدین دلیل است که VRAM در حالت عادی از دو پورت دسترسی مستقل به جای یک پورت استفاده می کند که این قضیه به CPU و پردازشگرهای گرافیکی این امکان را می دهد تا همزمان به RAM دسترسی داشته باشند . VRAM روی کارت گرافیک قرار داشته و دارای فرمت های متفاوتی است که اغلب انها اختصاصی هستند . میزان حافظه فوق به عوامل متفاوتی نظیر : وضوح تصویر وضعیت رنگ ها
بستگی دارد . از VRAM برای نگهدای اطلاعات خاص گرافیکی مانند داده های سه بعدی هندسی و نقشه های الگویی استفاده می شود. VRAM ها از نظر بسیاری افرادگران هستند به همین علت امروزه اکثر کارت های گرافیکی از synchronousgraphicsRAM = SGRAM استفاده می کنند . کارایی انها تقریبآ یکسان است ولی SGRAM ها ارزان تر هستند .

ماجول های حافظه :

نوع برد یا کانکتور مورد استفاده RAM در کامپیوتر های دکستاپ در طی چند سال گذشته نمود خاصی پیدا کرده است . انواع نخستین انحصاری بودند به این معنی که تولید کنندگان مختلف کامپیوتر هر کدام بردهای حافظه ای تهیه می کردند که تنها با سیستم مشخص خود آنها کار می کرد .

این بردهای حافظه از یک کانکتور 30 پین استفاده می کردند که حدود 9x2 سانتی متر اندازه ان بود . در اغلب کامپیوتر ها لازم بود که یک جفت از SIMM هایی که در ظرفیت و سرعت با هم یکسان باشند را نصب کنید . دلیل این امر ان است که عرض گذرگاه بیشتر از یک SIMM بود .به عنوان مثال برای دستیابی به مجموع 16 مگابایت RAM باید دو SIMM هشت مگابایتی را نصب نمایید . هر SIMM می تواند تنها هشت بیت داده را در یک زمان ارسال کند . در حالی که گذرگاه سیستم می تواند تا 16 بیت را در ان واحد پیشتیبانی کند . پس از ان بردهای SIMM که اندکی بزرگتر یعنی معادل 11x2/5 سانتی متر بودند . با استفاده از کانکتور 72 پین برای افزایش پهنای باند مورد بهره برداری قرار گرفته و امکان استفاده از RAM تا میزان 256 مگابایت را به وجود آوردند .

با ارتقا پیدا کردن پردازنده ها از نظر سرعت و پهنای باند صنعت تولید نیز یک استاندارد جدید در DIMM ها از کانکتورهای بزرگ 168 پین یا 184 پین استفاده کرده که اندازه انها به 14x2/5 سانتیمتر می رسد .

این DIMM ها براساس گنجایش از 8 مگابایت تا یک گیگابایت در هر ماجول دسته بندی شده و می توانند به صورت تکی نیز نصب شوند . اکثر ماجول های حافظه کامپیوترهای شخصی و ماجول های مورد استفاده در سیستم های G5 مکینتاش با 3/3 ولت کار می کنند .

Rambus In-line Memory = RIMM که یک استاندارد دیگر محسوب می شود . از نظر اندازه و پیکربندی پین با DIMM قابل مقایسه است ولی از یک گذرگاه حافظه اختصاصی برای افزایشسرعت استفاده می کند .



اکثر صاحبان مارک های تجاری کامپیوترهای کیفی از ماجول های حافظه انحصاری استفاده می کنند . اما تولیدکنندگان فراوانی نیز از RAM بر پایه پیکربندی Small Outline Dual In-line Memory Module = SODIMM
هره می گیرند .

اندازه کارت های SODIMM حدود 5x2/5 سانتی متر است و پین های 144 تایی یا 200 تایی یا 200 تایی دارد . گنجایش انها از 16 مگابایت تا یک گیگابایت دسته بندی می شود . برای صرفه جویی در فضا کامپیوتر های دکستاپ Apple iMac به جای DIMM های سنتی از SODIMM استفاده می کنند . کامپیوتر های کیفی جایگزین حتی از DIMM های کوچک تری به نام Micro DIMM استفاده می کنند که هم نوع 144 پین و هم نوع 172 پین ان موجود است .

اغلب حافظه هایی که امروزه در دسترس هستند کاملآ قابل اطمینانی می باشند . اکثر سیستم ها در زمان راهندازی کنترلگر حافظه خود را استفاده می کنند و به ان متکی هستند . تراشه های حافظه خود را استفاده می کنند و به ان متکی هستند . تراشه های حافظه که بررسی کننده خطایی درون خود دارند از روشی به نام بیت توازن ( Parity ) برای کنترول خطا استفاده می کنند .

تراشه های بیت توازن یک بیت اضافه برای هر 8 بیت داده در اختیار دارند . طرز بیت توازن بسیار آسان است . در ابتدا توازن زوج را بررسی می کنیم .

زمانی که 8 بیت موجود در یک بایت داده را دریافت می کنند . این تراشه مجموعه اعداد 1 را جمع می کند . اگر تعداد مجوع 1 ها فرد شود بیت توازن نیز 1 می شود .

اگر مجموع زوج باشد. بیت توازن 0 می شود . زمان که داده از بیت دوباره خوانی می شود تعداد 1ها را جمع می کند و با بیت توازن مقایسه می شود . اگر مجموعه فرد و بیت توازن 1 باشد در این صورت داده معتبر قلمداد شده و به CPU ارسال می گردد. اما اگر مجموع فرد و بیت توازن 0 باشد تراشه پی می برد که خطایی در جایی بین 8 بیت وجود دارد و از داده نخسه برداری می کند . توازن فرد نیز به همین شکل عمل می کند ولی زمانی که مجموع تعداد 1ها در بایت زوج باشد بیت توازن 1 می شود .

مشکل توازن این است که خطاها را کشف می کند ولی کاری برای اصلاح انها انجام نمی دهد اگر یک بایت داده با بیت توازنش همخوانی نداشته باشد . انها ان داده کنار گذاشته شده و سیستم مجددآ کار را انجام می دهد . کامپیوترهایی که در مرکز حساس مورد استفاده قرار می گیرند . به سطح بالاتری از مقاومت در برابر بروز خطا نیاز دارند . گران ترین سرورها اغلب نوعی کنترول خطا به نام Error-Connection Code = ECC دارند . مانند توازن ECC نیز از بیت های اضافه برای نمایش داده درون هر بایت استفاده می کند . تنها تفاوت موجود این است که ECC از
چندین بیت برای کنترل خطا استفاده می کند که تعداد انها به پهنای گذرگاه بستگی دارد .

حافظه های ECC از یک الگوریتم خاص نه تنها برای شناسایی خطای یک بیت بهره می گیرد بلکه به نوعی ان را اصلاح نیز می کند . حافظه ECC همچنین لحظه هایی که بیشتر از یک بیت در یک بایت با نقص مواجه می شود را نیز شناسایی می کند . این گونه نقص ها بسیار کم اتفاق می افتد و حتی با ECC نیز قابل اصلاح نیستند .

بیشتر کامپیوترهایی که امروزه به فروش می رسند از این ویژگی استفاده نمی کنند . این تراشه ها هیچ گونه کنترل گر خطایی درون خود ندارند ولی در عوض برای شناسایی خطا به کنترولگر حافظه بسنده می کنند .
 

پيام مدير

    به سایت صفر و یک خوش آمدید

    :Email

    Siroos.krooki@Gmail.com

خبر نامه سايت

     

تبليغات متني

تبليغات

تبليغات

 

All Rights Reserved 2009-2012 © by : www.Sefroyek.ueuo.com