همه چیز درباره حافظههای DDR؛ تشریح فرکانس، تأخیر و تایمینگ رم
در این مقاله با انواع حافظههای DDR ، مشخصات فنی و نحوهی کار آنها بیشتر آشنا میشویم و نسلهای مختلفشان (DDR تاDDR4 ) را بررسی و با یکدیگر از جنبههای گوناگون مقایسه خواهیم کرد. گذری هم بر اصطلاحات تخصصی مانند سرعت کلاک، نرخ انتقال داده، تاخیر و تایمینگ نیز خواهیم زد.
حافظهی DDR SDRAM یا به اختصار «DDR»، نوعی حافظهی موقت با دسترسی تصادفی دینامیکی (SDRAM) است که در هر سیکل کلاک به جای یک واحد داده، دو واحد داده را جابهجا می کند و لذا به آنها Double Data Rate یا همان «DDR» گفته می شود. این حافظهها جایگزین حافظههای قدیمی SDR SDRAM هستند که در آنها در هر سیکل کلاک یک بیت داده منتقل میشد.
در حافظههای DDR یک واحد داده در هر خیز (Rise) کلاک و یک واحد داده در هر افت (Down) کلاک جابهجا میشود؛ از این رو نرخ انتقال دادهی این حافظهها نسبت به حافظه های فاقد این ویژگی، در سرعت کلاک یکسان دو برابر خواهد شد. بنابراین سرعت اعلامی توسط شرکتها، دو برابر سرعت کلاک واقعی آن حافظه است. برای مثال، یک حافظهی DDR4-2133 با سرعت کلاک واقعی ۱۰۶۶ مگاهرتز کار میکند، اما شرکت سازنده سرعت کلاک آن را ۲۱۳۳ مگاهرتز اعلام میکند.
گاه به سرعت درج شده بر روی ماژولِ حافظهی DDR سرعت موثر نیز میگویند. در این مقاله نیز برای سادگی، سرعت درج شده بر روی ماژول فیزیکی حافظهی DDR را سرعت موثر و سرعت کلاکی که حافظه با آن کار میکند را سرعت واقعی خواهیم خواند.
سرعت کلاک قید شده برای هر حافظهی DDR، حداکثر سرعت آن بوده و هیچ تضمینی برای فعالیت خودکار و پایدار حافظه با آن سرعت وجود ندارد. برای مثال اگر یک حافظهی DDR2-1066 را بر روی سوکتی با ظرفیت کلاک واقعی ۴۰۰ مگاهرتز یا ۸۰۰ مگاهرتز نصب کنیم، حداکثر سرعت موثر قابل دستیابی برای این ماژول حافظه ۸۰۰ مگاهرتز میشود؛ چرا که سیگنال کلاک توسط کنترلر حافظهای که در داخل پردازنده و در خارج از ماژول قرار گرفته پیشبینی و تامین میشود. این کنترلر حداکثر توانایی پردازش دادهها با نرخ کلاک ۴۰۰ مگاهرتز در خروجی ماژول را دارد. عموماً کنترلرهای حافظهی DRAM یا به صورت یکپارچه داخل پردازنده قرار داشته یا در تراشهی موسوم به پل شمالی مادربرد مستقر شده اند. و در هر سیکل کلاک، ۲ بیت داده در حافظههای DDR رد و بدل میشود که با ضرب سرعت واقعی کلاک در عدد ۲، تعداد دادهی انتقال یافته (Transfer) در هر ثانیه به دست میآید که واحد آن «میلیون انتقال بر ثانیه (MT/s) است و گاه این عدد به عنوان جایگزین سرعت کلاک موثر حافظهی DDR اعلام میشود.
روش نامگذاری حافظههای DDR
برای نامگذاری تراشههای حافظهی یک ماژول از عبارت DDRx-yyyy استفاده می شود که حرف «X» نشاندهندهی نسل حافظه (DDR4) و «YYYY» بیانگر سرعت کلاک موثر حافظه است. اما برای نامگذاری خود ماژولهای حافظه (DIMM) از عبارت PCx-zzzz استفاده میشود که در آن هم حرف «X» نسل حافظه را نشان داده و «ZZZZ» حداکثر نرخ انتقال دادهی آن ماژول حافظه را بیان می کند.
برای محاسبهی حداکثر نرخ انتقال دادهی یک ماژول حافظه، سرعت موثر را در عدد ۶۴ ضرب و سپس برای تبدیل به بایت، بر ۸ تقسیم میکنند. عدد ۶۴ در این رابطه، بیانگر پهنای باس ماژولهای حافظهی DIMM است، ماژولهای DIMM دادهها را در بستههای ۶۴ بیتی انتقال میدهند). به بیان سادهتر، اگر نرخ کلاک موثر یک حافظهی DDR را در ۸ ضرب کنیم، حداکثر نرخ انتقال دادهی آن بدست خواهد آمد که در فصل مشترک کنترلر حافظه و ماژول میتوان آن را پهنای باند در نظر گرفت.)
حداکثر نرخ انتقال دادهی ماژول حافظه = سرعت موثر ماژول × ۸
برای مثال، اگر بر روی ماژول حافظه عبارت DDR3-1333 درج شده باشد، این حافظه از نسل سوم بوده و سرعت کلاک موثر آن ۱۳۳۳ مگاهرتز است. بنابراین، حداکثر نرخ انتقال دادهی آن از ضرب عدد ۱۳۳۳ در ۸ به دست میآید که حاصل 10666 مگابایت/ثانیه خواهد بود، لذا حافظه با نام PC3-10666 تعریف شده و این عبارت همراه با نام تراشه مورد استفاده (DDR3-1333) بر روی برچسب ماژول درج می شود. گاه عدد به دست آمده رند شده و به جای عدد ۱۰۶۶۶، ماژول با عنوان PC3-10600 شناسایی میشود.
باید توجه داشت که سرعت و نرخ انتقال دادهی بیان شده بر روی برچسبهای حافظهی DDR، حداکثر سرعت و نرخ انتقال داده است و ممکن است دسترسی به این اعداد به لحاظ محدودیتهای مادربرد امکانپذیر نباشد. برای محاسبهی این اعداد و ارقام، فرض بر این است که در هر سیکل کلاک میان تراشه و کنترلرِ حافظه، دادههایی رد و بدل شود که معمولا چنین نمیشود؛ چرا که در برخی سیکلها به جای انتقال داده، دستورالعملها و فرامینی میان کنترلر و تراشه جابهجا میشود. برای مثال گاه فرمانی از سوی کنترلر در برخی سیکلها به ماژول ارسال میشود تا داده های ذخیره شده در محل خاصی از حافظه را تحویل کنترلر دهد، اما در این موارد دادهای بین کنترلر و تراشه جابهجا نمیشود.
مقایسه انواع حافظههای DDR
سرعت کلاک و نرخ انتقال داده
تا به امروز چهار نسل از حافظه های DDR ارائه شده است. تفاوت اصلی میان نسلهای مختلف، حداکثر نرخ انتقال دادهای است که در هر نسل از این تراشهها قابل دستیابی است. برای مثال، حداکثر نرخ انتقال دادهی حافظه DDR3 برابر با 12800MB/s است و این عدد برای یک ماژول DDR2 مساوی است با 8533MB/s. .
باید توجه داشت که امکان دارد برخی از سازندگان ماژولهایی با سرعتهای بالاتر از حد استاندارد در هر نسل ارائه دهند که تنها در هنگام اوورکلاک قابل دستیابی باشد که به طور عادی مادربرد، خروجی ماژول حافظه را روی آن سرعت تنظیم نمیکند. به بیان سادهتر، اگر یک ماژول حافظهی DDR3-2133 یا PC3-17064 خریداری و آن را بر روی سوکت DDR3 سیستم خود نصب کردهاید. عدد ۲۱۳۳ حداکثر سرعت کلاک موثر و فرکانس کلاکی که این ماژول در شرایط عادی با آن کار میکند، عددی کوچکتر است.
ماژولهای DDR3 عموماً با سرعت موثر استاندارد ۱۳۳۳ مگاهرتز (سرعت واقعی ۶۶۶ مگاهرتز) کار میکند و برای رسیدن به سرعت موثر ۲۱۳۳ مگاهرتز ( سرعت واقعی 1066 مگاهرتز در صورت پشتیبانی مادربرد) باید به صورت دستی حافظهی رم را اورکلاک کرد. برای اورکلاک هم باید از پشتیبانی مادربرد از آن میزان فرکانس هدف اطمینان حاصل کرد و حتیالامکان از حافظههایی استفاده کرد که توانایی دفع حرارت مازاد را در صورت خنک سازی داشته باشند. محدودهی سرعت کلاک موثر در نسل های مختلف DDR به اضافهی محدوده قابل دستیابی طی اورکلاک در شکل زیر بهتر دیده میشود.
در جدول شماره (۱) نسلهای مختلف حافظههای DDR از نظر سرعت کلاک، نرخ انتقال داده با یکدیگر مقایسه شده است. دقت کنید که در جدول زیر محدودهی استاندارد برای سرعت و نرخ انتقال دادهی انواع حافظههای DDR درج شده و ممکن است حافظههایی با سرعتهای خارج از این محدوده در بازار در دسترس باشد.
جدول شماره (۱): مشخصات نسلهای مختلف استاندارد حافظهی DDR
ولتاژ کاری
تفاوت دیگری که حافظه های DDRx با هم دارند، در میزان ولتاژ کاری تراشهها است. عموماً با پیشرفت تراشهها در نسلهای بالاتر، ولتاژ کاری آنها کاهش یافته و تراشهی حافظهای که با ولتاژ کمتری کار میکند در نهایت توان مصرفی کمتری را به دست خواهد داد. معمولاً تراشههای DDR با ولتاژ ۲.۵ ولت، تراشه های DDR2 با ولتاژ ۱.۸ ولت و تراشه های DDR3 با ولتاژ ۱.۳۵ تا ۱.۵ ولت کار کرده و ولتاژ کاری تراشههایDDR4 فقط ۱.۲ ولت است؛ بنابراین ولتاژ هر نسل نسبت به نسل قبل کمتر میشود. در آخرین ستون جدول شماره (۱) ولتاژ کاری هر نسل ارائه شده است.
واکشی (Prefetch)
حافظههای دینامیک، دادهها را در ماتریسی از خازنها ذخیره میکند. در تمامی حافظههای DDR ، در هر سیکل کلاک دو واحد داده میان بافر و کنترلر تبادل میشود، اما میزان دادهی منتقل شده در نسلهای مختلف تفاوت دارد؛ به انتقال تعداد مشخصی از دادهها از تراشه به بافر حافظه واکشی میگویند.
بافر یا Memory Buffer Register قسمتی از ماژول حافظه است که دادهها قبل از انتقال به تراشه یا پیش از تحویل به کنترلر موقتاً در آن ذخیره میشود، در واقع واسطهی میان تراشههای حافظهی رم و پردازندهی اصلی است. هنگام صحبت دربارهی سرعت کلاک یک ماژول، عمدتاً منظور سرعت خارجی آن، یعنی سرعت کلاک در فصل مشترک ماژول و کنترلر حافظه است و سرعت کلاک داخلی یا سرعت کلاک در خروجی تراشههای DDR کسری از این سرعت است.
آرایهی تراشههای DDR در هر سیکل کلاک دو واحد داده را به بافر ماژول منتقل میکند، به این روش واکشی دوبیتی می گویند. در حافظهی DDR2 تعداد دادههای منتقل شده از تراشهها به بافر ۴ بیت و در DDR3 تعداد دادههای انتقالی به بافر ۸ بیت است. در DDR4 علیرغم تکنولوژی بالاتر، همچنان تعداد واحدهای واکشی شده هشت بیت است.
برای انطباق سرعت کلاک در خروجی تراشه (فصل مشترک تراشه DDR و بافر) و خروجی ماژول (فصل مشترک بافر و کنترلر حافظه) و پرهیز از ایجاد گلوگاه، سرعت کلاک واقعی در خروجی تراشه به نحوی تنظیم میشود که با ضرب آن در تعداد دادهی واکشی شده، سرعت کلاک موثر در خروجی بافر به دست آید. در شکل زیر این مسئله به وضوح ترسیم شده است؛ در هر نسل با ضرب کردن سرعت کلاک واقعی خروجی تراشه در تعداد دادههای منتقل شده به بافر در هر سیکل کلاک، سرعت کلاک DDR (موثر) در خروجی بافر محاسبه میشود. سرعت کلاک واقعی در خروجی بافر نیمی از آن مقدار است (بافر در هر سیکل کلاک دو واحد داده به کنترلر منتقل میکند).
پس بر طبق شکل بالا در یک حافظهی DDR2 که سرعت کلاک DDR خروجی بافر آن ۴۰۰ مگاهرتز است، سرعت کلاک ۱۰۰ مگاهرتز در خروجی تراشه، برای انطباق سرعت کلاک داخلی و خارجی کافی خواهد بود و چنانچه تراشهای از نوع DDR۳ داشته باشیم که سرعت در خروجی ماژول ۴۰۰ مگاهرتز باشد، سرعت کلاک خروجی تراشه ۵۰ مگاهرتز برای دستیابی به این انطباق کفایت میکند.
بنا بر موراد فوق، در هر سه مدل حافظهی DDR2-800، DDR-400 و DDR3-1600 سرعت کلاک داخلی ماژول حافظه (سرعت در خروجی تراشه) بر روی ۲۰۰ مگاهرتز تنظیم شده، اما سرعت موثر خروجی بافر (در فصل مشترک ماژول و کنترلر یا مقدار xxx) به ترتیب ۴۰۰، ۸۰۰ و ۱۶۰۰ مگاهرتز است. این همان شگرد افزایش نسل به نسل سرعت کلاک در حافظههای رم است. در جدول شماره (۱) جزییات سرعت کلاک داخلی، تعداد دادهی واکشی شده و تعداد دادهی انتقال یافته به کنترلر در هر سیکل کلاک در نسلهای مختلف DDR ارائه شده است.
تاخیر (Latency)
به مدت زمان صرف شده در هنگام ارسال درخواست دادهی معین توسط کنترلر حافظه به ماژول تا تحویل آن داده از طریق ماژول به کنترلر، تاخیر میگویند. به بیان ساده، تاخیر همان مدت زمانی است که کنترلر حافظه پس از درخواست، منتظر دریافت داده خواسته شده است. عبارات مخفف CAS یا CL نیز اشاره به تأخیر در حافظههای رم دارد.
میزان تاخیر در حافظه، برحسب تعداد سیکل کلاک بیان میشود. برای مثال حافظهی CL3 حافظهای است که در آن از زمان درخواست دادهی معین توسط کنترلر حافظه تا تحویل آن دادهها به کنترلر ۳ سیکل کلاک سپری میشود. برای حافظهای با تاخیر CL5 این زمان طولانیتر و مساوی با ۵ سیکل کلاک است. بنابراین هر چه زمان تاخیر CL کمتر باشد، توانایی ماژول حافظه و تراشههای آن در اجرای دستورات رسیده از کنترلر و بازیابی دادهها از سطر و ستون مورد نظر در حافظه و تحویل آن به کنترلر بیشتر بوده و این ماژول سریعتر عمل میکند. پس در هنگام خرید، بهتر است به دنبال حافظههای DDR باشیم که تاخیر CAS کمتری دارد.
حافظههای DDR3 میزان تاخیر بیشتری نسبت به DDR2 داشته و این میزان تاخیر برای DDR4 باز هم بیشتر است. برای مثال، تاخیر در یک حافظه DDR3-1333 برابر با ۶ سیکل کلاک و در یک حافظه DDR4-2666 مساوی با ۱۸ است. از طرفی در هر نسل از این حافظهها با افزایش فرکانس کلاکِ ماژول، میزان تاخیر در حافظه بیشتر میشود. مثلاً در DDR4 با فرکانس کلاک ۲۱۳۳ مگاهرتز میزان تاخیر CAS هجده سیکل کلاک بوده و چنانچه فرکانس به ۳۲۰۰ مگاهرتز برسد، میزان تاخیر به ۲۴ سیکل کلاک افزایش خواهد یافت.
گاهی میزان تاخیر حافظه را با واحد زمان بیان میکنند؛ برای مثال در یک حافظهی DDR4-2600 هر سیکل کلاک ۰.۷۵ نانو ثانیه به طول می انجامد (برای محاسبهی زمان هر سیکل کلاک، عدد ۱ بر فرکانس کلاک واقعی حافظه تقسیم میشود، مثلا در مورد حافظهی فوق با سرعت کلاک واقعی ۱۳۳۳ مگاهرتز، مدت زمان هر سیکل کلاک برابر است با ۱/1،333،000،000). پس اگر در این حافظه میزان تاخیر ۱۸ سیکل کلاک باشد، مدت زمان تاخیر به سادگی ۱۳.۵ نانو ثانیه محاسبه می شود.
درنتیجه میتوان گفت اگرچه با افزایش فرکانس یک تراشه میزان تاخیر بر حسب تعداد سیکل کلاک افزایش مییابد؛ اما افزایش تعداد سیکل کلاک لزوماً به معنای طولانی شدن زمان تاخیر CAS نخواهد بود؛ چرا که مدت زمان هر سیکل کلاک با افزایش فرکانس حافظه کاهش مییابد. برای مثال زمان انتظار برای تحویل داده به کنترلر (تاخیر CAS) در یک حافظهی DDR3-1333 با ۶ سیکل کلاک تاخیر، ۱۳.۵ نانوثانیه و برای حافظه سریعتر DDR4-2666 با میزان تاخیر ۱۸ سیکل کلاک، باز هم زمان انتظار کنترلر همان ۱۳.۵ نانو ثانیه خواهد بود. همچنین یک حافظه DDR2-800 با تاخیر CL5 تاخیری به مدت ۱۲.۵ نانوثانیه دارد که بیشتر از میزان تاخیر حافظه DDR3-1333 با CL7 و و مدت زمان تاخیر ۱۰.۵ نانو ثانیه است.
به طور کلی زمان تاخیر تابعی از فرکانس کلاک ماژول حافظه است؛ هرچه فرکانس کلاک حافظه بیشتر باشد، زمان تحویل داده به کنترلر کوتاهتر خواهد بود.
زمانبندی (Timing) حافظه
سازندگان حافظه معمولا زمانبندی یک ماژول حافظه را با رشتهای از اعداد که با خط فاصله از یکدیگر جدا شده، بیان میکنند. به عنوان مثال رشتههای اعداد 5-5-5-5 یا 10-10-10-7 دو نوع زمانبندی متفاوت حافظههای DDR است. در این سری اعداد، اولین عدد همان تاخیر CAS است. این اعداد معمولا بر روی برچسب ماژولهای حافظه DDR درج میشود. در فرکانس کلاک یکسان هر چه اعداد در این سری کوچکتر باشد با حافظه قدرتمندتری روبهرو هستیم.
برای کاربران عادی تنها پارامتر حائز اهمیت نوع حافظههای DDR یعنی DDR3 ،DDR2 و... است. اما برای کاربران حرفهای، مسائل دیگری مثل تایمینگ حافظه و میزان تأخیر آن قابل چشم پوشی نیست. اگر دو ماژول DDR با نرخ انتقال دادهی یکسان اما با تایمینگ متفاوت داشته باشیم، سطح عملکرد این دو یکسان نخواهد بود؛ اگرچه هر دو با سرعت کلاک یکسانی کار می کنند.
سری اعداد بیان شده در تایمینگ یک حافظه گویای زمان تاخیر آن حافظه در انجام کارهای متفاوت است. مثلا اولین عدد در این سری میزان تاخیر CAS را بیان میکند. برای دانستن مفهوم اعداد دیگر این سری در ابتدا باید بدانیم که داده ها در تراشههای حافظه DRAM به صورت ماتریسی سازماندهی میشود؛ یعنی دادهها در محل تقاطع سطرها و ستونهای مختلف نگهداری میشود. نامگذاری هر کمیت به صورت زیر است:
CL-tRCD-tRp-tRAS-CMD
هر کدام از این اعداد زمان مورد نیاز برای انجام کاری متفاوت در حافظه را بیان میکند که در ادامه به بررسی هر یک از آنها میپردازیم.
تاخیر CL یا CAS
نشاندهندهی زمانی است که از ارسال یک فرمان از سوی کنترلر به تراشهی حافظه تا پاسخگویی تراشه به آن فرمان به طول میانجامد. این عدد در واقع تعداد سیکل کلاک سپری شده از درخواست پردازنده برای دریافت دادههای مشخص تا تحویل آن داده ها توسط تراشه به پردازنده است که قبلاً به طور کامل در مورد آن توضیح دادیم.
طبق شکل، در حافظهی CL7 از ارسال دستور Read از سوی کنترلر برای خواندن دادهای مشخص در قسمتی از حافظه تا تحویل دادهی مورد نظر به کنترلر توسط ماژول، ۷ سیکل کلاک طول کشیده و این میزان برای حافظهی Cl9 مساوی با ۹ سیکل کلاک است.
تاخیر tRCD (تاخیر RAS به CAS)
مدت زمانی است که برای فعال سازی سطر و ستونی از ماتریس که داده در آن ذخیره شده است، سپری میشود. هر تراشهی حافظه در درون خود به صورت یک ماتریس سازماندهی شده است و در محل تقاطع هر سطر و ستون، یک خانهی الکترونیکی یا خازنی کوچک وجود دارد که مقادیر ۰ و ۱ را در صورت شارژ و دشارژ به خود میگیرد. فرایند دسترسی به دادههای ذخیره شده با اولین فعالسازی سطر و ستون مربوطه که داده صفر یا یک در آن قرار گرفته انجام میگیرد.
این فعالسازی سطر و ستون مورد نظر با دو سیگنال کنترلی با نامهای RAS یا Row Address Strobe و CAS یا Column Address Strobe یکی پس از دیگری محقق میشود. هرچه فاصله میان ارسال این دو سیگنال کوتاهتر باشد با حافظه بهتری روبرو هستیم و دادهها زودتر خوانده می شود.
طبق نمودار فوق، تاخیر RAS به CAS را میتوان تعداد سیکلهای کلاک از صدور فرمان فعالسازی یک خانه الکترونیکی در تراشه تا صدور فرمان بعدی خواندن یا نوشتن داده انگاشت، این میزان تاخیر، مانند تاخیر CAS مبتنی بر کلاک واقعی ماژول حافظه است. هر چه کمتر باشد با حافظه سریعتری روبهرو هستیم و سرعت خواندن یا نوشتن حافظه بیشتر است.
تاخیر tRp (یا RAS Precharge)
مدت زمانی است که برای غیرفعالسازی دسترسی به سطری از داده و فعال کردن دسترسی به سطر دیگر داده سپری میشود. در شکل زیر این تاخیر بر حسب تعداد سیکل کلاک ترسیم شده است.
پس از دستیابی به دادهای از حافظه، نیاز به صدور فرمانی به نام PRECHARGE است. با صدور این فرمان سطری از حافظه که اخیراً مورد استفاده قرار گرفته غیرفعال و سطر دیگری فعال میشود. زمان RAS PRECHARGE مدت زمانی است که از صدور فرمان PRECHARGE تا صدور فرمان فعالسازی بعدی به طول میانجامد. فرمان فعالسازی نیز همانطور که گفته شد، منجر به خواندن یا نوشتن دادهای از قسمت مشخص حافظه می شود. این پارامتر هم مثل CAS و RAS به CAS بر پایهی کلاک واقعی تراشه کار میکند و نه کلاک درج شده بر روی برچسب حافظه. هرچه این پارامتر کوچکتر باشد، حافظهی DDR سریعتر است و فرمان فعالسازی بعدی زودتر صادر می شود.
با در نظر گرفتن مقادیر تاخیر فوق، میزان کلی تاخیر ماژول برابر است با tRp+tRCD+CL.
تاخیر tRAS
عبارت است از مدت زمان انتظار پردازنده برای ایجاد دسترسی بعدی به حافظه. به عبارت دیگر پس از صدور فرمان فعالسازی، صدور فرمان PRECHARGE دیگری تا سپری شدن زمان tRAS ممکن نخواهد بود. پس این پارامتر محدود کنندهی خواندن یا نوشتن ردیف دیگری از داده است.
تاخیر CMD
زمانی است که از شروع فعالسازی تراشه تا ارسال فرمان بعدی به حافظه سپری میشود. در برخی موارد از بیان این مقدار صرف نظر می شود؛ چرا که معمولا از دو سیکل کلاک تجاوز نخواهد کرد. میزان این پارامتر با حرف T به صورت 1T به معنای یک سیکل کلاک یا 2T به معنی ۲ سیکل کلاک معین میشود.
دو پارامتر اخیر tRAS و CMD نیز با کلاک واقعی حافظه کار می کند و هر چه میزان آنها کمتر باشد حافظهی DDR سریعتر عمل خواهد کرد.
در مورد حافظههای DDR4 بیشتر بدانیم
چهارمین نسل از حافظههای DRAM مورد استفاده در کامپیوترهای دسکتاپ حافظههای DDR4 هستند. این حافظهها سرعت کلاک و حداکثر نرخ انتقال دادهی بالاتری نسبت به نسل های قبلی دارد. از سویی با توجه به رابط فیزیکی متفاوت این حافظهها و سطح ولتاژ کاری پایینتر، با سوکتهای حافظهی نسلهای قبلی از جمله DDR3 سازگاری ندارد. حافظهها DDR4 با عرضهی پردازندههای Haswell سری E که برای کار با DDR4 بهینهسازی شده بود، به طور رسمی در سهماههی سوم سال ۲۰۱۴ پا به بازار سختافزار گذارد.
چگالی حافظه در این تراشهها بالاتر است؛ در حالی که چگالی حافظه DIMM در استاندارد DDR3 بالغ بر ۸ گیگابایت (۱۶ تراشهی ۴ گیگابیتی) بود؛ یعنی در هر ماژول حداکثر امکان دسترسی به ۸ گیگابایت حافظهی رم وجود دارد، چگالی تراشه در استاندارد DDR4 بالاتر و در هر ماژول امکان تعبیهی تا ۱۶ گیگابایت (۱۶ تراشهی ۸ گیگابیتی) حافظه وجود دارد.
الیته تلاشهایی برای افزایش چگالی تراشه در DDR3 صورت گرفته است، مثلا ماژولهایی با ظرفیت ۱۶ گیگابایت برای کاربردهای سازمانی و سرور تولید شد، اما تنها پردازندههای AMD امکان پشتیبانی از این ماژولها را داشت و پردازندههای اینتل محدود به ماژولهایی با ظرفیت ۸ گیگابایت بود. برای همین ماژولهای بالاتر از ۸ گیگابایت در استاندارد DDR3 هیچگاه عمومیت پیدا نکرد.
الزامات ولتاژ مصرفی حافظههای DDR4 نسبت به نسلهای قبلی پایینتر بوده و از سویی نرخ انتقال دادهی بالاتری با ماژولهای نسل جدید قابل دسترسی است؛ همانطور که گفته شد مهمترین تفاوت ماژولهایDDR نسلهای مختلف، در نرخ انتقال دادهی آنهاست. اگرچه تعداد دادههای واکشیشده توسط بافر در DDR4 نسبت به DDR3 تغییری نکرده، اما با صدور و پاسخگویی به تعداد بیشتری از دستورات خواندن و نوشتنِ داده با دستهبندی بهتر تراشهها، امکان دستیابی به نرخ بالاتر انتقال داده در این حافظهها وجود دارد.
برای برقراری چنین سازوکاری در استاندارد DDR4، تراشههای DRAM به چهار گروه بانک که هر گروه متشکل از چهار بانکِ حافظهی داخلی قابل آدرسدهی است، تقسیمبندی میشود و بدین ترتیب امکان انتقال داده به هر یک از این گروه بانکهای مختلف (در مجموع ۱۶ بانک) با تکرار بیشتر و البته سریعتر از قبل وجود دارد. در استاندارد DDR3 و DDR2 آرایهی تراشهها متشکل از ۸ بانک داخلی بود.
با توجه به اینکه با افزایش سرعت کلاک، توان مصرفی نیز بیشتر میشود، ضمن کاهشِ سطح ولتاژ کاری تراشههای DDR4 امکان دسترسی به سرعتهای بالاتر بدون الزامات توان و خنک کنندگی غیرمنطقی فراهم می شود.
حافظههای DDR4 با ولتاژ ۱.۲ تا ۱.۴ ولت (طبق استاندارد ۱.۲ ولت) و با فرکانس کلاک واقعی 1066 تا ۲۱۳۳ مگاهرتز (DDR4-2133 تا DDR4-4266) کار میکند. این در حالی است که نسل قبلی این حافظهها یعنی DDR3 با ولتاژ ۱.3۵ تا ۱.5 ولت و در محدودهی فرکانس واقعی ۴۰۰ تا ۱۰۶۷ مگاهرتز کار میکند.
در نسل چهارم حافظههای DDR آیندهنگری تحسینبرانگیزی در نظر گرفته شده است. استاندارد DDR4 اولین استاندارد حافظهای است که در آن امکان انباشت تراشههای DRAM به صورت سهبعدی پیشبینی شده است. در این روش، امکان انباشت ۸ تراشهی Slave بر روی یک تراشهی Master وجود دارد و آدرسدهی هر یک از این تراشهها به صورت مستقل و از طریق تراشهی Master قابل اجراست.
آخرین نکته در مورد حافظههای DDR4 این است که با افزایش چگالی تراشه و امکان کاشت ICهای کوچکتر اما با ظرفیت بیشتر نسبت به استاندارد DDR3 هزینه تولید کاهش یافته و در نتیجه سطح قیمتها منطقیتر خواهد شد. برای مثال برای ایجاد ظرفیت ۸ گیگابایت در یک ماژول DDR3 به تعبیهی ۱۶ تراشهی ۴ گیگابیتی در آن نیاز است، در حالی که در استاندارد جدید با کاشت ۸ تراشهی ۸ گیگابیتی در فضایی کمتر همان میزان ظرفیت قابل دستیابی است.
تفاوتهای فیزیکی ماژولهای DDR
ماژولهای حافظهی DDR از نظر فیزیکی نیز با هم تفاوتهایی دارند. ماژولهای حافظه، بردهای الکترونیکی هستند که تراشههای DRAM به آنها متصل میشود. این ماژولها در قسمت زیرین تعدادی پین دارند که از طریق این پینها ارتباط ماژول با منابع مادربرد برقرار میشود. حافظههای DDR۲ و DDR3 هر یک با ۲۴۰ پین به سوکت مادربرد متصل میشود و فقط محل بریدگی (Notch) در ماژول متفاوت است.
در حافظههای DDR4 تعداد پینهای ماژول 288 است و محل قرار گیری بریدگی نیز با DDR3 متفاوت است. لذا امکان نصب حافظههای DDR4 بر روی سوکتهای DDR3 وجود ندارد.
در حافظههای DDR2 به بعد تراشههای DRAM به روش لحیمکاری (Ball Grid) به برد الکترونیکی متصل میشود. اما در حافظههای نسل اول DDR این اتصال از طریق پایههای فرو رونده در برد برقرار میشد. با توجه به تفاوتهای فیزیکی موجود میان نسلهای مختلف حافظههای DDR، امکان استفاده از یک حافظه بر روی سوکت حافظهی قدیمیتر وجود ندارد و لذا برای استفاده از حافظههای جدیدتر نیاز به ارتقای مادربرد و احتمالاً ارتقای پردازنده خواهد بود.
این مطلب با رعایت کپی رایت از وب سایت شهر سخت افزار برداشته شده و کلیهی حقوق معنوی آن متعلق به تیم شهر سخت افزار است.