حافظههای دائمی و غیردائمی دارای گسترهی وسیعی هستند که در سیستمهای کامپیوتری مورد استفاده قرار میگیرند. Dynamic Random Access Memory (DRAM) نسبت به Static Random-access Memory (SRAM) بیشتر مورد استفاده قرار میگیرند چرا که مقرون به صرفه هستند. این مطلب به بررسی تفاوتهای عمده میان انواع مختلف DRAM مثل Synchronous Dynamic Access Memory (SDRAM) و انواع مختلف توپولوژیهای DDRها، مثل DDR2, DDR3, DDR4 و … میپردازد.
DRAM (Dynamic Random Access Memory)
DRAM که معمولا dee-ram تلفظ میشود، مخفف عبارت Dynamic Random Access Memory است. DRAM مجموعهای از خازنها را به کار میگیرد که وظیفه ذخیره بیتهای مشخصی برای RAM را برعهده دارند. RAM نوعی حافظه است که میتواند به المانی از داده بدون توجه به موقعیتش در یک رشته دسترسی پیدا کند. بنابراین زمان مورد نیاز برای دسترسی به هر داده برای RAM یکسان است. طراحی بهینه ترانزیستورهای access و storage و خازنها و همچنین پیشرفتهایی در فرآیندهایی که در نیمهرساناها رخ میدهد، DRAM را به ارزانترین استوریج قابل دسترسی تبدیل کرده است. همانطور که پیشتر هم اشاره شد، از DRAM معمولا به عنوان حافظه اصلی سیستم کامپیوتری استفاده میشود چرا که در مقایسه با SDRAM بسیار مقرون به صرفه است. تکنولوژی DRAM طی دهههای اخیر تحت تغییرات اساسی قرار گرفته است که به شدت هزینه در واحد بیت را کاهش داده است. این تغییرات همچنین سبب افزایش clock rate و کاهش ابعاد کلی این قطعه شده است. این پیشرفتها میتواند با بسیاری از تغییرات دیگر همراه باشد. به عنوان مثال میتوان به معرفی سلولهای DRAM کوچکتر، معماری همگام (synchronous) DRAM و در نهایت توپولوژیهای DDR اشاره کرد.
ساختار سلولی DRAM
یک سلول DRAM با 3 ترانزیستور از دو ترانزیستور access و storage برای تعویض ظرفیت الکتریکی از ترانزیستور storage از روشن (بیت 1) به خاموش (بیت 0) استفاده میکند. آرایههای ترانزیستورها با همبستگی به هم برای خواندن و نوشتن columnlines و rowlines استفاده میشوند که به ترتیب با نامهای bitlines و wordlines هم شناخته میشوند. اجزا و خطوط داده طوری سازماندهی شدهاند که هر دو عملیات خواندن و نوشتن را با یک ترانزیستور storage منحصر به فرد ممکن میسازد.
برای مثال یک سلول متداول 3 ترانزیستوری یک دستور نوشتن را با ارسال ولتاژ به پایه gate ترانزیستور اکسس M1 میفرستد که سپس پایه gate ترانزیستور اکسس M3 را باردار میکند. سپس خطوط نوشتن به حالت صفر گرایش پیدا میکند و بار ذخیره شده در خازن M3 به آرامی تخلیه میشود. به دلیل همین چرخه به آنها Dynamic میگویند.
تکنولوژیهای ساخت امروزی معمولا از ساختار سلول حافظه با یک ترانزیستور- یک خازن (1T1C) برای تراشههای مموری فشردهتر استفاده میکنند. این معماری به رفرش یا نوسازی سلول DRAM پس از هر عملیات خوانش نیاز دارد.
SDRAM (Synchronous Dynamic Random Access Memory)
عبارت “Synchronous” به معنای همزمانی اشاره به نوعی رفتار تازه در نسل جدید DRAM اشاره دارد. در اواخر 1996، SDRAM در سیستمها ظهور پیدا کرد. برخلاف تکنولوژیها پیشین SDRAM برا همزمان ساختن خود با زمانبندی CPU طراحی شده بود. این به کنترلرهای حافظه این امکان را میدهد تا چرخه clock دقیق برای زمانیکه دادههای درخواستی آماده خواهد شد را بداند. در این حالت دیگر نیازی نیست تا CPU میان دسترسیهای حافظه منظر بماند. برای مثال PC66 SDRAM با سرعت 66، PC100 SDRAM با 100، PC133 SDRAM با 133 مگا انتقال بر ثانیه و … کار میکنند. به SDR SDRAM (Single Data Rate SDRAM) به طور خلاصه SDRAM میگویند. در این حافظهها، internal clock ،I/O و bus clock یکی است. برای مثال همهی مقادیر I/O ،internal clock و bus clock برای PC133 133 مگاهرتز است. Single Data Rate یا نرخ داده تکی به معنی آن است که یک SDR SDRAM در یک چرخه clock میتواند تنها یک بار بخواند و یا بنویسد. SDRAM باید برای انجام عملیات خواندن و نوشتن، تا پایان دستور عملیاتی قبلی صبر کند.
SDRAM و DRAM
یکی از بزرگ ترین تفاوتهای معماری SDRAM این است که حافظه به بخشهای کوچکتری با اندازه مساوی تقسیم شده است. این بانکهای حافظه دستورات دسترسی را به طور همزمان اجزا میکنند و همین موجب افزایش بسیار زیاد سرعت نسبت به DRAM میشود.
بخش عمدهای از افزایش سرعت SDRAMها مربوط به موضوع pipelining است. هنگامی که یک بانک داده در حالت پیششارژ قرار دارد و به تأخیر در دسترسی دچار میشود، کار خوانش میتواند از بانک دیگری از دادهها صورت پذیرد. در این صورت تراشه حافظه در حال ارسال خروجی به طور مستمر است. در واقع این معماری سبب دسترسی همزمان به ردیفهای مختلف میشود.
DDR ،DDR2 ،DDR3 ،DDR4؛ تفاوت در چیست؟
اجزای زیرساختی و کارایی عملیاتی برای نسلهای بعدی DDR مثل DDR3 ،DDR2 و DDR4 ثابت است با این تفاوت که clock speed در آنها متفاوت است. منظور از clock speed نرخی (سرعتی) است که یک پردازنده طی آن یک چرخه پردازش را کامل میکند. برای مثال یک DDR2 RAM با حفظ سرعت bus و دو برابر کردن نرخ انتقال داده، clock speed را نسبت به DDR دو برابر کرده است. این مموریها در نرخ prefetch buffer هم با هم متفاوتند و به مرور ارتقا پیدا کردهاند. buffer به معنی حافظهی کش جایگذاری شده روی RAMهای مدرن است که دادهها را پیش از آن که به آن نیازی باشد ذخیره میکند.
با این تفاوتها درحالی که هسته معماری DRAM ثابت مانده است، اما ظرفیت افزایش و هزینه به ازای واحد بیت بسیار کاهش یافته است. تحولات عمدهی بعدی در نسل DRAMها موجب pipelining دادهها و افزایش فرکانش I/O خواهد شد.
DDR SDRAM (Double Data Rate SDRAM)
نسل بعدی SDRAM، حافظههای DDR است. حافظههای DDR از پهنای باند بزرگتری نسبت به نرخهای پیشین انتقال داده در SDRAM برخوردار هستند. این کار با انتقال داده در لبههای صعودی و نزولی سیگنالهای clock است (double pumped). این روش به طور مؤثر نرخ داده را بدون افزایش فرکانس clock دو برابر میکند. نرخ انتقال داده در DDR SDRAM دو برابر SDR SDRAM بدون تغییر clock داخلی است. در این مموری prefetch buffer برابر با 2 بیت است. prefetch buffer به معنی حافظهی کش جایگذاری شده روی RAMهای مدرن است که دادهها را پیش از آن که به آن نیازی باشد ذخیره میکند. این نرخ دو برابر SDR SDRAM است. نرخ انتقال داده در DDR بین 266 تا 400 MT/s (مگا انتقال بر ثانیه) است. DDR266 و DDR400 از همین نوع هستند که اعداد به نرخ جابهجایی داده اشاره دارند.
DDR2 SDRAM (Double Data Rate Two SDRAM)
اولین مزیت DDR2 سرعت عملیاتی دو برابری external data bus نسبت به DDR SDRAM است. external data bus که با عنوان کلی data bus هم شناخته میشود، وظیفه برقراری ارتباط میان پردازنده و سایر اجزا مثل آداپتورها، هارد درایو و … را برعهده دارد. Prefetch buffer در DDR2 برابر با 4 بیت است که این مقدار دو برابر DDR SDRAM است. internal clock speed برای DDR2 مانند DDR بین 133 تا 200 مگاهرتز است. نرخ انتقال داده در DDR2 به 533 تا 800 مگا انتقال بر ثانیه میرسد که سیگنال I/O bus هم در آن بهبود پیدا کرده است. حافظههای DDR2 533 و DDR2 800 در بازار موجود است.
DDR3 SDRAM(Double Data Rate Three SDRAM)
حافظه DDR3 مصرف انرژی را تا 40 درصد نسبت به ماژولهای DDR2 امروزی کاهش میدهد. همین سبب کاهش ولتاژ و جریان عملیاتی میشود. این ولتاژ برای DDR3 مقدار 1.5 ولت است در حالیکه برای DDR2 برابر با 1.8 ولت و DDR برابر 2.5 ولت است. نرخ انتقال داده در DDR3 بین 800 تا 1600 مگا انتقال بر ثانیه است و prefetch buffer در آن 8 بیت است در حالیکه این رقم برای DDR2 چهار بیت و برای DDR دو بیت است. DDR3 همچنین دو قابلیت رفرش خودکار ASR (Automatic Self-Refresh) و رفرش دمای خودکار SRT (Self-Refresh Temperature) را با خود به همراه دارد. این دو قابلیت میتوانند به حافظه امکان کنترل نرخ رفرش بنا بر نوسانات دما را بدهند.
جهت خرید انواع رم DDR3 میتوانید به این بخش مراجعه فرمایید.
DDR4 SDRAM (Double Data Rate Fourth SDRAM)
DDR4 SDRAM دارای ولتاژ عملیاتی پایینتر (1.2 ولت) و نرخ انتقال داده بالاتر است. نرخ انتقال داده در DDR4 برابر با 2133 تا 3200 مگا انتقال بر ثانیه است. DDR4 تکنولوژی Bank Groups را با خود دارد. هر bank group مشخصهی یک عملیات را با خود دارد. DDR4 میتواند 4 داده را در طول یک چرخه clock مدیریت کند بنابراین بهرهوری DDR4 از DDR3 به وضوح بیشتر است. همچنین DDR4 برخی قابلیتها مثل DBI (Data Bus Inversion) و CRC (Cyclic Redundancy Check) را به نسلهای قبل افزوده است. این دو موجب افزایش همبستگی سیگنالهای مموری میشوند و پایداری دسترسی و انتقال داده را افزایش میدهند.
جهت خرید انواع رم DDR4 میتوانید به این بخش مراجعه فرمایید.
برای مطالعه بیشتر در مورد نسلهای نوین حافظه DDR مثل DDR5 و DDR6 میتوانید به این مطلب مراجعه کنید.