این تکنولوژی توسط توشیبا و فوجیتسو طراحی شده که برای حافظه بسیار سریع سرورها و پرینتر ها بکار رود . این تکنولوژی حرارت کمتر ایجاد می کند و سرعت دسترسی به سلولهای حافظه را افزایش می دهد .
SYNCLINK DRAM (SLD RAM):
این نوع Ram دیگر تولید نمی شود اما توسط کنسرسیومی از تولید کنندگان Dram بعنوان رقیب RAMBUS در سال 1990 ارائه شد .
Virtual Channel Memory (VCM): توسط NEC طراحی شده VCM اجازه می دهد هر بلوک حافظه بطور مستقل با کنترلر حافظه با Cache خاص ارتباط بر قرار کند . بدین وسیله هر Task از بلوک حافظه و Cache خود بدون درگیری با Task دیگر عمل می کند . این عمل باعث بهبود عملکرد کامپیوتر میگردد .
Fast Page Mode (FPM): نسبت به تکنولوژی های قبلی حافظه بسیار سریعتر بود .
Extended Data Out (EDO): مثل FPM می باشد و سرعت دسترسی به ردیف های سلولی بسیار سریعتر است . EDO باعث شد CPU بتواند 15 درصد سریعتر به اطلاعات نسبت به FPM دسترسی داشته باشد .
Synchronous DRAM (SD RAM): در این حافظه زمانبندی Ram با زمانبندی CPU به حالت Synchronize رسیده است : بهمین دلیل دیگر CPU منتظر اطلاعات نمی شود . درضمن SDRAM از تکنولوژی Interleave و Burst mode هم می توانند استفاده کنند . SDRAM ها در سرعتهای 133MHZ / 100MHZ / 66MHZ عرضه شده اند سرعتهای 200 و 266 مکاهرتز هم در راهند .
Double Data Rate Synchronous D Ram (DDR SD RAM): نسل جدیدی از SDRAM هاست که در دو نقطه اوج و فرود سیکل زمانی ( Time Cycle ) می تواند اطلاعات را رد وبدل کند بهمین دلیل در سرعت ها 100 و 133 مگاهرتز عملکردی معادل 200 و 266 مگاهرتز خواهد داشت .
Double Data Rate 2 Synchronous D Ram (DDR2 SD RAM): این نوعی DDR تا سرعت 800 مگا هرتز عملکرد با کاهش مصرف برق و کاهش حرارت قابل ملاحظه نسبت به DDR می باشد .
DDR3 (Double Data Rate 3 Synchronous Dynamic Random Access Memory) DDR3 حافظه ی جدیدی از سری حافظه های SDRAM هست که نام کامل آن (Double Data Rate 3 Synchronous Dynamic Random Access Memory) هست قرار است جایگزین حافظه های DDR2 شود که به تازگی مصرف زیادی پیدا کرده است. پهناي باند بالاتر و مصرف انرژي کمتر از جمله خصوصيات حافظههاي Ddr3 ميباشند حافظههاي Ddr3 در ابتداي عرضه بيش از 50% گرانتر از Ddr2 خواهند بود و کمتر از 10% سهم فروش بازار را شامل خواهند شد. در سال 2008 تقريبا هم قيمت با Ddr2 خواهند گرديد و حدود 20% سهم بازار را شامل خواهند شد و در سال 2009 بيش از نيمي از فروش بازار را تصاحب خواهند کرد. حافظههاي Ddr3 در سال 2007 به بازار عرضه خواهند شد.حافظههاي Ddr3-800 و Ddr3-1066 در نيمه اول سال 2007 و حافظههاي Ddr3-1333 و Ddr3-1600 در نيمه دوم سال 2007 عرضه خواهند گرديد.حافظههاي Ddr3 فرکانس و پهناي باندي تا دو برابر Ddr2 دارا ميباشند حافظههاي Ddr3 مصرف انرژي کمتري (حدودا 30% کمتر) نسبت به Ddr2 دارا هستند که نتيجه کاهش ولتاژ از 1.8 به 1.5 ولت ميباشد قرار است در حافظههاي Ddr3 سنسور حرارتي تعبيه گردد.
روشهای مختلفی برای چک کردن صحت اطلاعاتی ارسالی از طرف RAM وجود دارد (Error CHEKING): Error correction Parity CHECK PARITY
در ازای هر 8 بیت اطلاعات یک Bit دیگر بعنوان Parity وجود دارد اگر به طور مثال مجموع باینری 1,0 هر 8 بیت یک باشد بدان odd parity می گویند . با ارسال هر 8 بیت بین CPU , RAM این بیت چک میشود اگر تعداد 1 و 0 ها یکی بود علامت صحت اطلاعات است اجازه ادامه عملیات داده می شود و گرنه مجددا" از ابتدا اطلاعات ارسال می شود تا مشکل بر طرف شود . Parity می تواند علامت خطری برای خطای اطلاعات باشد ولی نمی تواند خطا را بر طرف کند . ECC = Error CORNECTION Code از این نوع Ram ها که ECC دارند برای سیستم های سرور استفاده می کنند . برخلاف Parity در مورد Ram هایی که تکنولوژی ECC را دارند نه تنها Bit خراب گزارش می شود بلکه آن Bit تصحیح میگردد . اگر چندین Bit خراب باشد ECC Bit در خواست Parity CHK نموده و از طریق Parity خطا بازرسی و تصحیح می شود . عمده تفاوت Parity و ECC این است که ECC پس از کشف خطا آن Bit غلط را تصحیح می کند . Access Time میزان زمانی که طول می کشد که یک ماژول Ram به درخواست اطلاعات پاسخ دهد . واحد آْنNARO – second میباشد زمانهای معمول 60ns و 70ns است هر چقدر زمان آن کمتر باشد سرعت حافظه شما بیشتر است . Bus Width هر 8 بیت یک بایت می باشد . پهنای باند خطوط اتصالی بین Ram , CPU امروزه 64 بیت است که معادل 8 بایت میگردد .
Bus Speed اگر سرعت Memory Bus 100 مگاهرتز باشد یعنی 100 میلیون Clock Cycle در ثانیه است یعنی هر بایت که 8 بیت است در یک دوره Clock Cycle حمل می شود . در سرعت 100 مگاهرتز با سیستم 64 بیتی مقدار 800 مگابایت در ثانیه حمل و رد و بدل میگردد . CAS Latency تعداد Clock Cycle هایی که طول می کشد یک ستون از RAM در چیپ DRAM آدرس دهی شود . Latency میزان تاخیر می باشد یعنی " CL3 " میزان تاخیر در دسترسی به ستونهای RAM حافظه را 3 Clock Cycle می داند و CL2 میزان تاخیر را Clock Cycle -2 پس حافظه CL2 بهتر از CL3 میباشد . حافظه Ram چگونه کار می کند؟ درک چگونگی کار Ram و روشهای تسریع آن در صنعت کامپیوتر در بخش زیر توضیح داده شده و چند اصطلاح مهم معرفی گردیده است: Cache level 1 میزان حافظه ای است که بر روی CPU کنار گذاشته شده و Level 2 برروی مادر برد است . Front Side Bus = FSB خطوط ارتباطی Data هستند که CPU را به حافظه اصلی Ram اتصال میدهند. Back side BUS = BSB خطوط ارتباطی که از Memory controller به Cache L2 اتصال مییابد. Chip ها Cache از نوع Static Ram بوده از لحاظ سایز بزرگترمی باشند ولی گرانتر نیز هستند معمولاً در cache دستور العملهای CPU که بطور متوالی درخواست میشوند قرار میگیرند. به انجام رساندن یک دستورالعمل CPU از روی رم 195 نانو ثانیه طول میکشد در صورتی که از INT – CACH زمان 45 نانو ثانیه خواهد بود . Level CACH بر اساس نزدیکی بر CPU لحاظ می شود . ماحتی می توانیم قسمتی cache روی ram سیستم کنار بگذاریم . چند روش برای تسریع عملکرد RAM توضیح داده می شود : INTERLEAVING به معنی پروسه ارتباطی CPU با هر بانک RAM میباشد هر بار CPU آدرس یک Bank را درخواست می کند یک سیکل بعد آن بانک Ram خود را Reset می کند . در ضمن که یک بانک Reset می شود CPU اطلاعات بانک بعدی را رد و بدل میکند این عمل باعث سرعت نقل و انتقال اطلاعات میگردد . Bursting روش دیگر تسریع رد و بدل کردن اطلاعات است. CPU به جای اینکه اطلاعات را تکه تکه دریافت کند یک بلوک بزرگ اطلاعاتی از آدرسهای مختلف را درخواست می کند. CPU بدون اینکه درخواست های متوالی بگذارد با یک درخواست یک بلوک شامل چندین سلول اطلاعات را انتقال میدهد. CPU های امروز 64 بیتی هستند (هر 8 بیت یک بایت می باشد). انتقال اطلاعات به CPU و حافظه را bus cycle مینامند. اکثر Ramهای امروز 168 پین دارند که 64 پین اطلاعاتی میباشد ram های سابق 72 پین با 32 بیت اطلاعات بودند که با CPU های 32 بیتی کار می کردند هر چه تعداد بیت های اطلاعاتی بیشتر شوند در هر واحد زمان تعداد بیشتری عملیات از طریق CPU انجام پذیرد.
SIMM Single Inline Memory ModuleSIMM
اولين نوع هشت بيتي بود كه به صورت كارت هاي كوچك 1 , 2 ,4 MB رم بودند كه توسط 30 پين به مادربرد متصل ميشوند چون اين مدل ها هشت بيتي بودند براي يك جفت ار اين دسته رم به يك پردازشگر 16 بيتي نيازدارند بنابراين به فضاي لازمه براي اين مدولها bank ميگويند .بعد از توليد شدن پردازشگر هاي 486 نياز براي افزايش رم احساس ميشد كه مدلهاي 32 بيتي توليد شدند . مادربرد 486 جاي چهار سوكت SIMM را داشت برروي مادربرد هاي از نوع پنتيوم وضعيت در حالت 64 بيتي بود بنابراين SIMM هاي 32 بيتي بطورت جفت نصب ميشدند كه مادربرد استاندارد با داشتن چهار جاي سوكت ويژه SIMM داراي دو بانك بود . بنابراين همانطور كه قبلا هم گفتم هيچ وقت در مادربرد هاي پنتيوم از دو نوع رم با سرعت متفاوت در يك بانك استفاده نكنيد . اما ميتوانيد مثلا بانك اول را با دو تا رم 16 مگابايتي پر كنيد و بانك دوم را با دو رم 32 مگابايتي پركنيد .
آخرين مدل رم كه بيشتر در بازار مد شده است اين نوع ميباشد كه SDRAM ها با 64 بيت پهنا اين قابليت را دارند كه داراي 168 پين براي اتصال هستند كه در اندازه هاي 8,16, 32, 64, 128, 256, 512 هستند كه داراي سرعت 6 , 8, 10, 12 ns هستند كه عموما سوكت هاي انها برروي مادربرد به صورت دو تايي يا چهارتايي ديده ميشوند . يكي از مزيتهاي SDRAM نسبت به قبلي ها بالطبع افزايش سرعت بود . كه باعث افزايش باس سيستم نيز ميشود مثلا با يك EDO-RAM شصت نانو ثانيه اي ميتوانيد ماكسيموم 75 MHz باس داشته باشيد در حاليكه SDRAM ميتواند تا 133 MHZ هم باس داشته باشد و همينطور SDRAM به صورت همزمان Synchronous با باس سيستم مطابق ميشود كه سبب افزايش سرعت ميشود . PC133 داراي سرعت 133 mhz اخرين ورژن SDRAM ميباشد كه توسط شركت هاي مختلفي ساخته شد . از وقتي در دهه گذشته سرعت CPU ها به 200 برابر افزايش يافت سرعت رم ها تنها 20 برابر شد بنابراين بايد نوع گونه اي از رم ساخته ميشد تا از سي پي يو عقب نماند اما كدام يك بهترين انتخاب بود ؟ خيلي از توليد كنندگان به سمت DDR رفتند جز اينتل كه مسير خود را به سمت RD RAM پيش برد به اين رم Ram Bus يا RDRAM يا همان Rambus Direct RAM ميگويند گرچه اين نوع رم زياد راه به جايي نبرد اما هم اكنون در Sony playstation 2 يا Nintendo 64 از اين نوع رم استفاده ميشود در پلي استيشن از نوع 32 مگابايتي با پهناي باند 3.2 گيگا هرتز استفاده ميشود . گرچه RDRAM هم ظاهرا از نوع DRAM گرفته شده است اما از آرشيتكت خاص هوشمند و كاملتري نسبت به ديگر رقباي خود استفاده ميگرد . و دسترسي به رم خيلي بهتر بود و باعث ميشد كه CPU به راحتي به كار خودش ادامه دهد . و ديتاها درسرعت كلاك فراواني خوانده ميشدند . يك مقايسه بين يكي از اين انواع ميتواند از قدرت rambus بگويد كه مثلا SDRAM با 64 بيت در 100 mhz بود حال انكه RDRAM در 16 بيت در 800 مگاهرتز عمل ميكرد . به هر حال ميتوان گفت كه علاوه بر ويژگيهاي بالايي كه گفتم ويژگيهاي ديگري نيز ار لحاظ ميزان ولتاژ دارد اما انچه سبب شكست اين نوع شد قيمت گران آن بود . و البته جز اين چيز ديگري نميتوانست باشد چون وقتي قرار بر ان شد كه از چيپست i815 به جاي i820 استفاده شود Rambus بايد به صورت Dual قرار ميگرفت حال انكه DDR خود هم به صورت dual بود . بنابراين قيمت گران دو برابر ميشد و اصلا مقرون به صرفه نبود ! در پايان مبحث رم كمي هم از رم محبوب DDR بگوييم كه در سال 2001 توليد شد . كه مخفف Double Data Rate كه تكنولوژي ان همانطور كه از نامش پيداست به اين صورت است كه از هر دو طرف سيگنال براي تبادل اطلاعات استفاده ميكند . بنابراين كارايي دو برابر ميشود . مثلا با اين تكنولوژي يك SDRAM 133 mhz به راحتي به يك DDR 266 mhz تبديل ميشود . اما تفاوتي كه باعث ميشود سوكت اين دو نوع رم تفادوت داشته باشد 16 پين اضافيه رم DDR ميباشد . البته نوع ديگري از رم هم در سال 2003 توليد شد كه به نام DDR II ياد ميشود . به هر حال هنوز اينتل در صدد پيدا كردن راهي براي روانه كردن RDRAM به بازار است .
RAM چگونه كار ميكند ؟Random Access Memory
Ram)) معروفترين حافظه مورد استفاده كامپيوتر است . به اين وسيله از انجايي كه دستيابي به سلول هاي حافظه آن بلافاصله قابل دسترسي هست random access ميگويند نقطه مقابل RAM را Serial Access Memory (SAM) مينامند همانطور كه از نامش پيداست ديتاها را بصورت سريال مانند نوار كاست نگهداري ميكند . در SAM اگر ديتايي در دسترس نباشد كليه ديتاها چك ميشوند تا به ديتاي مورد نظر برسد . كاربرد SAM در حافظه بصورت بافر بيشتر مورد استفاده است . اما در RAM در هر لحظه اي كه بخواهيد ميتوانيد به ديتاي مورد نظر دسترسي داشته باشيد . در اين مقاله سعي ميكنم تمامي چيزهايي كه لازمست تا بدانيد RAM چيست و چه ميكند را توضيح ميدهم . يك چيپ حافظه تقريبا شبيه به ميكروپروسسور همان IC (Integrated Circuit) هست در اين مدارات مجتمع ميليون ها ترانزيستور و خازن قرار دارد . در تقريبا تمامي كامپيوتر ها در حافظه dynamic random access memory (DRAM) ترانزيستور و خازن مجموعا با هم يك سلول از حافظه را تشكيل ميدهند كه نمايش دهنده يك بيت از حافظه هستند . خازن يك بيت از حافظه را نگهداري ميكند يا صفر يا يك . در مقابل ترانزيستور بصورت سوئيچي عمل ميكند كه وظيفه كنترل مدارات را روي چيپ حافظه دارد كه ايا خازن را بخواند يا اينكه موقعيت را براي نخواندن ان و تغيير موضع ايجاد كند . خازن را ميتوانيد مثل سطلي در نظر بگيريد كه الكترون ها در ان ذخيره ميشوند . براي ذخيره كردن 1 در سلول حافظه اين سطل پر از الكترون ميشود و براي 0 شدن خالي از الكترون ميشود . مشكلي كه اين خازنها دارند اينستكه پس از مرور زمان نشتي ميكنند و گرايش به خالي شدن دارند . اين اتفاقات در كمتر از ميلي ثانيه اتفاق مي افتد . بنابراين براي عملكرد درست حافظه پويا يا حتي CPU كنترل كننده حافظه بايد انها را شارژكند تا مقدار 1 را در خودشان نگه دارند . يعني كنترل كننده حافظه مدام حافظه را ميخواند و دوباره انرا مينويسد ! اين عمليات بصورت خودكار در يك ثانيه هزاران بار اتفاق مي افتد . براي تصور قضيه فوق در ذهنتان فرض كنيد سطل آبي داريم كه از زير سوراخ كوچكي دارد وقتي سطل را از اب پر ميكني و شير اب را قطع كردي اب ظرف رو به اتمام ميرود حالا براي اينكه ظرف هميشه پر از اب يا همان الكترون باشد يك شناور ميگذاريم كه با پايين امدن ان اب دوباره به ظرف بريزد . عمليات refresh شدن رم براي رم هاي پويا هست و عملا براي همين قضيه به اين نام ناميده شده اند . بنابراين رم هاي پويا مداوما بايد در حال refresh شدن باشند درغير اينصورت اطلاعات داخل خود را از دست ميدهند . بنابراين اين refresh شدن ها باعث ميشود از سرعت اين رم كم بشود . سلول هاي حافظه روي يك تخته سيليكوني قرار دارند كه بصورت ارايه اي از ستون ها و سطر ها هست به ستون ها bitline و به سطرها wordline ميگويند . محل تقاطع اين دو محدوده شناسايي ادرس هاي سلول حافظه ميباشد . DRAM ها مداوما ستونهايشان را شارژ ميكنند تا ترانزيستور هاي خود را بصورت فعال نگهدارند . وقتي قرار باشد كه مقدار يك را به خازن اختصاص دهد انرا شارژ ميكند اما وقتي ميخواهد ان مقدار را بخواند كه ايا مقدار يك را دارد يا نه يك امپلي فاير حساس مشخص ميكند كه ايا خازن ظرفيتش از الكترون باندازه بيش از 50% هست يا خير اگر هست مقدار يك دارد وگرنه بايد مقدار يك به ان داده ميشود . تحليل عملكرد DRAM تا همينجا بماند بنابراين يادتان باشد كه خازن ها به تنهايي نميتوانند كاري كنند بلكه RAS و CAS براي ادرس دهي خازنها لازمند . يك كنتور براي انكه لحظات رفرش شدن را بشمارد . يك امپلي فاير حساس براي خواندن مقدار خازن و اينكه ايا خازن قابل نوشتن هست يا خير . Static RAM (SRAM) از تكنولوژي متفاوتي استفاده ميكند . در رم از نوع ايستا نوعي flip-flop وجود دارد كه هر بيت از حافظه را نگهداري ميكند . يك فليپ فلاپ براي حافظه چهار تا شش ترانزيستور سيم كشي شده به هم دارد اما ديگر نيازي به تازه شدن و refresh شدن ندارند . و اين همان نقطه اي است كه باعث ميشود رم ايستا از رم پويا پيشي بگيرد . به هر حال از انجايي كه بخش هاي بيشتري نسبت به رم پويا در رم ايستا داريم بنابراين سلول هاي حافظه فضاي بيشتري نسبت به رم پويا اشغال ميكنند . بنابراين شما روي چيپ حافظه از حافظه كمتري برخوردار ميشويد كه باعث ميشود اين نوع حافظه گران شود . بنابراين رم ايستا سرعت بيشتري دارد اما گرانتر است اما رم پويا سرعت كمتري دارد در عوض ارزان تر است . لذا رم ايستا براي كش CPU بهتر است و رم پويا براي حافظه هاي بزرگتر پركاربرد تر است . چيپ هاي حافظه امروزه بصورت كارتهايي كه ماژول ميناميم هستند حتما شده كه روي اين حافظه ها اعدادي مثل 8*32 يا 4*16 را ديده باشيد اين اعداد تعداد چيپهاي موجود در ان چيپ را نمايش ميدهند و اينكه هر اما اينكه چه نوع رمي بر روي چه نوع پايه اي قرار بگيرد نيز نكته ايست كه نبايد از ان به اين سادگي رد شد . در مقالات قبلي درمورد نحوه اتصال رم با مادربرد توضيحاتي داده ام . اما نكاتي را باز هم ياداور ميشوم : SIMM single in-line memory module اين برد از حافظه از 30 پين براي اتصال با ابعاد 9*2 سانتيمتر دارد در اكثر كامپيوتر ها SIMM ها را بايد بصورت جفت نصب كنيد علاوه بران ميزان حافظه نيز در اين جفت بايد يكي باشد اين بان دليل است كه پهناي باند ارتباطي باس مادربرد شما بيش از يك SIMM ميباشد . يعني براي انكه شما از 16 مگابايت رم بهره مند شويد بايد دو رم 8 مگابايتي نصب كنيد . كه هر SIMM بفرض ميتواند 8 بيت ديتا منتقل كند . در حاليكه باس سيستم ميتواند 16 مگابايت منتقل كند . SIMM هاي اخير در ابعاد 11*2.5 سانتيمتر هستند كه از 72 پين براي اتصال استفاده ميكنند كه اين پينها براي افزايش پهناي باند است كه تا بيش از 256 مگابايت رم هم ميتوان برانها نصب كرد . اما همانطور كه ميدانيد SIMM ها قديمي شده و تكنولوژي جديد بنام Dual in-line Memory Module (DIMM) وجود دارد . كه داراي 164 يا 184 پين هستند با ابعاد تقريبا 14*2.5 سانتيمتر DIMM ها ميتوانند از 8 مگابايت تا 1 گيگابايت گنجايش براي رم داشته باشند و ديگر نيازي به اينكه بصورت جفت قرار بگيرند ندارند . نوع ديگري هم وجود دارد كه در مقاله مربوطه در مورد Rambus in-line Memory Module (RIMM) توضيح داده ام انواع رم هاي متداول SRAM Static RAM داراي چندين ترانزيستور به تعداد 8 تا 6 براي هر سلول حافظه اما بدون خازن در هر سلول كه بهتر است براي كش استفاده شود DRAM Dynamic RAM داراي سلول هاي حافظه با ترانزيستور و خازن كه نياز به refresh شدن دارد . Fast page mode Dynamic RAM FPM DRAM نوع اوليه DRAM بود ماكسيموم سرعت انتقال داده ها در كش از نوع لايه دو به 176 MBps ميرسيد EDO DRAM Extended data-output Dynamic RAM مثل ديگر رم ها صبر نميكند كه تمامي اعمال پردازش روي بيت اول انجام شود و سپس سراغ بيت بعدي برود بلكه همان وقتي كه ادرس بيت اول را شناسايي كرد بدنبال بيت بعدي ميرود تقريبا 5% سرعت بيشتري نسبت به FPM RAM دارد حداكثر سرعت براي كش لايه دو مقدار 264 MBps ميباشد . SD RAM Synchronous dynamic random access memory 5% سرعت بيشتري نسبت به EDO DRAM دارد و معمولتر از نسخه اخير است حداكثر سرعت ارتباط با كش لايه 2 به 528 MBps ميرسد DDR SDRAM Double Rate SDRAM همان SDRAM منتهي با پهناي باند بيشتر حداكثر سرعت ارتباط با كش لايه 2 مقدار 1064 MBps ميباشد البته براي باس 133 RDRAM Rambus DRAM سرعتي فوق العاده اي دارد اما قيمت زيادي هم دارد . CMOS RAM مقدار كمي از حافظه كه در كامپيوتر شما براي شناسايي ديگر اجزا به كار ميرود اين حافظه به يك باتري كوچك نيازمند است همان باطري كه وقتي در كيس را باز ميكنيد و انرا ميبينيد . VRAM video RAM حافظه اي كه روي كارت گرافيك يا ويدئويي شما نصب شده است .