هر آنچه باید درباره عملکرد ماژولهای حافظه رم بدانید؟
مهمترین مشخصههای حافظههای رم دسکتاپ شامل فرکانس، تأخیر و تایمینگ آنها است که در انتخاب و خرید حافظه نقش اساسی دارد. در این مقاله به بررسی این مفاهیم خواهیم پرداخت.
خرید حافظه برای کامپیوتر شخصی برای برخی کاربران فرایند پیچیده و دشواری نخواهد بود. آنهایی که درگیری ذهنی زیادی دربارهی جزئیات حافظه ندارند، به آسانی یک محصول را برای کامپیوتر خود انتخاب میکنند. فرایند انتخاب برای آنها تنها شامل انتخاب ظرفیت حافظهی رم میشود. دربرخی موارد نیز تنها به مشورتهای فروشنده یا افراد دیگر اعتماد میکنند. از لحاظ تشخیص میزان حافظهی رم مورد نیاز هم منابع متعددی در دستری کاربران قرار دارد، اما بهتر است بدانید اکثر کاربران حرفهای و گیمرها، بهصورت میانگین ۱۶ گیگابایت حافظه را پیشنهاد میکنند.
کاربران بسیار حرفهای همیشه بهدنبال بالاترین سطح کارایی و سرعت هستند. البته آنها نیز همین نیازها را با قیمت مناسب طلب میکنند. درنتیجه بررسیهای عمیقتری روی محصولات خواهند داشت. دراینمیان برندهایی همچون پاتریوت، کورسیر، جیاسکیل، ایدیتا و دیگرانی که قیمت مناسب با کارایی بالا ارائه میدهند، مشتریان و طرفداران بیشتری دارند.
دستهای از کاربران دنیای کامپیوتر هستند که بهدنبال اطلاعات کاملتر و جزئیتر دربارهی تجهیزات سختافزاری میروند. آنها برای انتخاب بهتر، نیاز به شناسایی فاکتورها و اصطلاحهای دنیای سختافزار دارند. با چنین اطلاعاتی میتوان تفاوت عملکرد، قیمت و بهصرفه بودن محصولات را نیز تشخیص داد. در این مطلب به بررسی مفاهیمی در دنیای حافظه کامپیوترهای شخصی میپردازیم که برای انتخاب بهتر محصولات هم مفید هستند.
اصول اولیه
برای بررسی و تشریح مفاهیم حافظه در دنیای کامپیوتر روی انواع حافظههای DDR4 و اصطلاحات مربوطه متمرکز میشویم DDR4 .امروز بهنوعی به استاندارد صنعتی در بخش حافظه تبدیل شده است و در چهار یا پنج سال گذشته عموما شاهد حافظههایی از این نوع بودهایم. البته اکثر اصطلاحاتی که در مطلب کنونی استفاده میشوند، برای نسلهای گذشته نیز کاربرد دارند. بههرحال کاربر امروزی عموما با حافظههای DDR4 کار میکند، مگر آنکه کامپیوتری بسیار قدیمی داشته باشد. در ادامه به معرفی و تشریح اصطلاحات پایهای حافظههای کامپیوتری میپردازیم:
DIMM: این کلمه مخفف برای عبارت Dual Inline Memory Module یا «ماژول حافظهی همردیف دوگانه» است. انواع DIMM امروزه با دو رابط دادهی ۶۴ بیتی در دو سوی ماژول عرضه میشوند. از لحاظ اصطلاح فروش نیز با دو دستهبندی ماژولهای UDIMM برای کامپیوترهای دسکتاپ و SODIMM برای لپتاپها روبهرو هستیم. البته برخی از مادربوردهای کامپکت دسکتاپ هم از SODIMM استفاده میکنند. این راهکار برای جا دادن چهار ماژول در چنین مادربوردی به کار گرفته میشود، چون در غیر آن صورت احتمالا مادربورد مذکور تنها از دو ماژول پشتیبانی خواهد کرد.
SDRAM: مخفف عبارت Synchronous Dynamic Random-Access Memory یا «حافظهی موقت با دسترسی تصادفی دینامیکی» است. ساختار این حافظهها سطرها و ستونهایی از سلولهای ذخیرهسازی داده، شبیه صفحههای گسترده دارند. حافظهی دسترسی تصادفی میتواند به دادههای هر سلول طبق دستور صادر شده از کنترلر حافظه دسترسی پیدا کند. عبارت «تصادفی» در تعریف فوق به این معنا است که کنترلر برای دسترسی به دادههای یک سلول خاص نیازی به خواندن دادههای کل سطر آن ندارد و مستقیما به سراغ آدرس موردنظر میرود. عبارت «دینامیک» یعنی هر سلول باید بهصورت منظم تازهسازی شود تا دادههای آن از دست نرود. درمقابل، حافظههای استاتیک هستند که عموما عملکرد آهستهتری دارند. کل حافظهی موجود در سیستم نیز توسط بخش مولد کلاک خارجی با فرکانس موردنظر همگامسازی میشود.
Data Rate: نرخ انتقال داده، تعداد مرتبههایی است که ماژول در واحد ثانیه (فرکانس) داده ارسال کرده و دریافت میکند. سیگنالهای کلاک یک موج مربعی ایجاد میکنند. دراینجا اصطلاحی بهنام Double Data Rate مطرح میشود که بهمعنای انتقال داده در هر دو حالت خیز و افت سیگنال است. دوبرابر شدن نرخ انتقال داده به این معنا خواهد بود که یک موج ۱۶۰۰ مگاهرتزی توانایی جابهجایی داده با نرخ ۳۲۰۰ بار در ثانیه را خواهد داشت. درنتیجه اکنون میدانیم که فرکانس دادهی DDR دوبرابر فرکانس کلاک است. برای مفهوم فوق از عبارت MT/s استفاده میشود.
DDR4: نسل چهارم حافظههای Double Data Rate که امروز به استانداردی جامع در میان محصولات حافظهی کامپیوتر شخصی تبدیل شدهاند. در هر نسل فرکانس، ظرفیت و برخی مشخصههای دیگر حافظهها به مرور بهبود یافتهاند.
IC:
شاید آشناترین اصطلاح این مجموعه را بتوان مدار مجتمع نامید. مدارهای مجتمع عموما توسط کاربران نهایی بهنام تراشه شناخته میشوندIC در DRAM عموما رابط هشت بیتی دارد، اما نمونههای ۱۶ بیتی هم وجود دارند.
Data Rate: هرچه بیشتر، بهتر
طبق تعریف میدانیم که بالاتر بودن نرخ انتقال داده بهمعنای انتقال دادههای بیشتر در واحد زمان خواهد بود. البته در بحث پشتیبانی کنترلر حافظه، محدودیتهایی وجود دارد. اکثر پردازندههای حرفهای امروزی توانایی کار با حافظههایی از نوع DDR4 با فرکانس ۳۶۰۰ مگاهرتز (DDR4-3600) را دارند. البته برخی از محدودیتهای سرعت بهصورت مصنوعی تغییر کرده و افزایش یافتهاند که تنها با هدف توسعهی بازار بوده است. بهبیاندیگر در چنین وضعیتی یک شرکت تولید تراشه مانند اینتل میخواهد به بهانهی پشتیبانی از سرعت حافظهی بیشتر، هزینهی بیشتری را برای یک پردازندهی اورکلاک نشدهی سری K از مشتری دریافت کند که بهمعنای نیاز به مادربورد حرفهایتر هم خواهد بود. در ادامه مثالهایی از همین افزایش مصنوعی را بررسی میکنیم.
خانوادهی پردازندههای سری ۳۰۰۰ رایزن AMD توانایی کار با حافظههای سریعتر از DDR4-3600 را دارد؛ اما شرکت سازنده در فیرمور اصلی این پردازندهها محدودیتهایی را درج کرده است که در صورت تجاوز از فرکانس تعریفشدهی DDR4-3600، موجب انجام عملیات با نصف سرعت در کنترلر و کاهش سرعت با نسبتی در دیگر واحدهای I/O در پردازندهی مرکزی میشود. آزمایشهای عملی روی یک نمونه پردازندهی رایزن با ماژول حافظهی G.Skill Trident Z RGB DDR4-3600 همین کاهش سطح عملکرد را در صورت فعال بودن محدودیتهای پردازنده تأیید میکنند. در آزمایش اول، محدودیتهای تعریفشده باعث افت پارامترهای مورداشاره در فرکانس ماژول ۳۷۳۳ مگاهرتز شد، اما هنگامی که محدودیتهای یادشده لغو شدند، سطح عملکرد با سرعت ۳۷۳۳ مگاهرتز در ماژول حافظه بهبود یافت.
اولین اعضای خانوادهی سری ۲۰۰۰ رایزن فرکانس ماژول DDR4-3467 را بدون اشکال عملکردی میپذیرند، اما فرکانسهای بالاتر قطعا در عملکرد اخلال ایجاد کرده و باعث القای نویز (بهویژه در کراستالک سیگنال) میشود. بهعلاوه مسیرهای اتصالی بین سوکت پردازنده و DIMM در برخی از مادربوردها، آمادهی چنین افزایشی در فرکانس نیستند. بههرحال اگر از چنین پردازندههایی با مادربوردی پایینتر از مدل X470 کار میکنید، افزایش نرخ داده بیش از DDR4-2933 پیشنهاد نمیشود.
نرخ انتقال دادهی بیشتر بهمعنای انتقال دادهی بیشتر در هر سیگنال کلاک و در واحد زمان است
خانوادهی پردازندههای Intel LGA 1151 کنترلرهای حافظهای دارند که در نرخ بالاتر از DDR4-3600 هم عملکرد با ثباتی از خود نشان میدهند. البته اینتل تراشههای غیر از سری Z را بهگونهای طراحی کرد که هر پردازندهی مرکزی (حتی سری K)، برای نرخهای بالاتر محدودیت ایجاد کنند. آزمایشهای عملی تامزهاردور با پردازندهی Core i3-8350K با تراشهی Z370 هم محدودیت در نرخهای بالاتر را نشان داد. درنهایت آسانترین راه برای عبور از محدودیت DDR4-2666 استفاده از تراشههای سری Z همراهبا پردازندههای سری K از نوع Core i5 یا بالاتر است.
کنترلر حافظهی اینتل در فرکانس ۱۰۰ یا ۱۳۳ مگاهرتز فعالیت میکند و گاه به ضرایب بالاتر فرکانس ۲۰۰ یا ۲۶۶.۶ مگاهرتز میرسد. ضرایب پایینتر حافظه، پایداری بیشتری دارند و همچنین پایداری آنها در پلتفرمهای قدیمیتر بیشتر به چشم میآید. بهعنوان مثال در طراحیهای Z270 پایداری بیشتری دیده میشود. بدین ترتیب DDR4-3467 با ساختار 13x 266.6 MHz پایداری بیشتری نسبت به DDR4-3400 با ساختار 17x 200 MHz خواهد داشت و عملکرد آن هم بهتر است.
بهطور خلاصه با توجه به اطلاعات بالا به این نتیجه میرسیم که پردازندههای خانوادهی سری ۳۰۰۰ رایزن در صورت آماده بودن مادربورد بهخوبی از DDR4-3600 پشتیبانی میکنند. ازطرفی پردارندههای Core i5 یاCore i7 از سری K در صورت نصب روی مادبورد مناسب Z390 یا Z370 توانایی مدیریت چنین نرخ دادهای را دارند. دربارهی هماهنگی و محدودیتهای دیگر ترکیبهای پردازنده و مادربورد، باید به انجمنهای سختافزاری و خصوصا گروههای اورکلاک رجوع کنید.
تأخیر، هرچه کمتر، بهتر
تأخیر یا Latency به مدت زمانی گفته میشود که برای آغاز اجرای یک عملیات (مثل خواندن و نوشتن) در حافظه سپری میشود. جالب است بدانید این فاکتور از دههها پیش تغییر زیادی نداشت. سیستم PC-100 قدیمی و ترکیب جدید و حرفهای DDR4-3200 هردو تأخیر CAS برابر با ۱۰ نانوثانیه دارند. چرا در این زمینه پیشرفتی رخ نداد؟ برای درک بهتر زمانبندی ابتدایی عملیات باید به مفهوم قرارگیری سلولهای حافظه بهصورت سطر و ستون رجوع کنیم. درنتیجه باید عبارتهای زیر شرح داده شوند:
CAS یا Column Address Strobe: تعداد سیکلهای کلاک که در زمان باز بودن سطر صحیح، برای دسترسی به داده در ستون جدید نیاز خواهد بود.
tRCD یا تأخیر RAS به CAS: حداقل سیکلهایی که کنترلر حافظه باید منتظر بماند تا سطری جدید باز شود.
tRP یا: Row Precharge حداقل سیکلهایی که کنترلر حافظه باید منتظر بماند تا سطر کنونی باز شود.
tRAS یا: Row Active Time حداقل سیکلهایی که کنترلر حافظه باید بین باز شدن یک سطر و بسته شدن سطر دیگر منتظر بماند.
CMD یا: Command Rate تعداد سیکلهایی که دستورالعملی به حافظه ارائه میشود تا از خوانده شدن آن توسط حافظه اطمینان حاصل شود. عموما مقدارهای 1T یا 2T بهمعنای یک سیکل کلاک و ۲ سیکال کلاک دارد.
اگر تصور کنیم که سطر صحیحی از حافظه باز شده است، CAS زمانی خواهد بود که برای دسترسی به بیت بعدی در حافظه نیاز داریم. اگر همهی سطرها بسته شده باشند، برای دسترسی به یک سلول ابتدا باید یک سطر باز شده و سپس ستون صحیح فعال شود (tRCD+tCAS). اگر سطر اشتباهی باز باشد (سطری که دادهی مورد نظر در آن نیست)، برای دسترسی به سلول داده باید ابتدا سطر کنونی بسته، سطر صحیح باز شده و ستون صحیح در سطر جدید پیدا شود (tRAS+tRCD+tCAS). درنهایت وقتی CMD از 1T به 2T افزایش پیدا میکند، برای هر دستور حافظه نیاز به یک سیکل کلاک اضافه خواهد بود.
در تعاریف تأخیر از عبارتهای زمان و سیکل کلاک استفاده میشود
در تعاریف بالا ابتدا از عبارت «زمان» استفاده شد، اما در تعریف انواع تأخیر از مفهوم سیکلهای کلاک استفاده میکنیم. در حقیقت زمان تأخیر برحسب سیکل کلاک تعریف میشود. مجددا این سؤال مطرح میشود که چگونه PC-100 قدیمی و DDR4-3200 مدرن، تأخیر برابری دارند؟ مدت زمان یک سیکل کلاک ۱۰۰ مگاهرتزی ۱۰ نانوثانیه است. درنتیجه PC-100 CAS 1 (با تأخیر CAS برابر با یک سیکل کلاک) برای دسترسی به داده ۱۰ نانوثانیه زمان میخواهد. درمقابل، DDR4-3200 در کلاک ۱۶۰۰ مگاهرتزی فعالیت میکند و یک سیکل کلاک ۱۶۰۰ مگاهرتزی تنها ۰/۶۲۵ نانوثانیه به طول میانجامد. درنهایت DDR4-3200 CAS 16 برای دسترسی به داده ۱۶ برابر زمان مذکور را طلب میکند که مجددا تأخیر با ۱۰ نانوثانیه برابر میشود.
از آنجایی که زمان سیکل کلاک با فرکانس نسبت عکس دارد، هرچه حافظه سریعتر باشد، سیکلهای کلاک بیشتری برای رسیدن به تأخیر استاندارد متعادل ۱۰ نانوثانیهای نیاز خواهد بود. DDR4-3600 این فعالیت را در ۱۸ سیکل انجام میدهد. DDR4-4000 تاخیری معادل ۲۰ سیکل کلاک دارد. درنهایت کاهش زمان به مقداری کمتر از استاندارد ۱۰ نانوثانیه نیاز به سیکلهای کمتر تأخیر در هر فرکانس دارد. درنتیجه DDR4-3200 C14 با ۸/۷۵ نانوثانیه و DDR4-3600 C16 با تأخیر ۸/۸۹ نانوثانیه، رکورد استاندارد بالا را میشکنند.
افزایش رنک، کاهش تأخیر
در فرایندهای پردازندهی مرکزی، انتظار برای تمام شدن هر فرایند نوشتن یا خواندن پیش از اجرای فرایند بعدی، فرایندها را به مقدار زیادی کند میکند. دراین میان عبارتی بهنام Interleaving مطرح میشود که امکان شروع یک دستور را در حالی که اجرای دستور دیگر رو به اتمام است، ایجاد میکند. کاربران میتوانند توانایی CPU در انجام این فرایند را با افزایش تعداد رنک (Rank) در هر کانال از یک به دو افزایش دهند. برای این منظور باید دو DIMM تک رنک یا یک DIMM دو رنک در هر کانال نصب شود. برای این منظور، اطلاعات زیر کاربرد خواهند داشت:
-
اکثر حافظههای تولیدشده از سال ۲۰۱۷ به بعد، از ICهای حافظهی هشت گیگابیتی استفاده میکنند.
-
اکثر ICهای حافظه رابط هشت بیتی دارند.
-
هشت IC هشتبیتی برای پر کردن یک رنک ۶۴ بیتی نیاز خواهد بود.
-
ظرفیت مجموع برای هشت IC هشت گیگابیتی، هشت گیگابایت است.
-
درنتیجهی اطلاعات بالا، اکثر کیتهای حافظهی ۳۲ گیگابایتی، چهار رنک دارند.
ساختارهای متشکل از چهار رنک، فرایند اضافه کردن دو رنک در هر کانال را در مادربوردهای دو کاناله انجام میدهند. اگر به اطلاعات بالا دقت کرده باشید، اصطلاح «اکثرا» به دفعات تکرار شده است. درنتیجه استثناهایی هم در این مباحث وجود دارند که در ادامه بررسی میکنیم:
-
تقاضا برای ICهای ۱۶ گیگابیتی اکنون بسیار زیاد است و شرکتها نمیتوانند این تراشهها را برای ساختن ماژولهای تکی ۱۶ گیگابیتی هدر دهند. درنتیجه ماژولهای ۱۶ گیگابایتی با استفاده از دو رنک IC هشت گیگابیتی ساخته میشوند.
-
ماژولهای ۳۲ گیگابایتی مخصوص مصرفکننده از دو رنک IC با ساختار ۱۶ گیگابیتی استفاده میکنند. درنتیجه دو عدد DIMM با ساختار ۳۲ گیگابایتی یک کیت دو کانالهی ۶۴ گیگابایتی ایجاد میکنند که چهار رنک دارد.
-
ماژولهای کنونی چهار گیگابایتی از چهار عدد IC با ساختار هشت گیگابیتی استفاده میکنند که هرکدام رابط ۱۶ بیتی دارند. چهار عدد از این ماژولها برای ساختن چهار رنک نیاز خواهد بود.
-
ICهای قدیمیتر چهار گیگابیتی تقاضای زیادی ندارند. البته خریدارانی که برای دسترسی به چهار رنک نیاز به ۱۶ گیگابایت حافظه دارند، از آنها استفاده میکنند. بههرحال شناسایی چنین ICهایی دشوار خواهد بود.
برای تشخیص وجود هشت IC در هر سمت، میتوان به لبهی پایینی هیتسینک ماژول حافظه دقت کرد. البته باز هم استثناهایی در این زمینه وجود دارند که برای شناسایی آنها تنها میتوان به منابع و انجمنهای آنلاین رجوع کرد.
نتیجهگیری
نرخ دادهی بالاتر بهمعنای افزایش کارایی خواهد بود. البته همیشه محدودیتهای پردازندهی مرکزی و مادربورد باید در نظر گرفته شوند. تأخیر پایین نیز بدون افزایش نرخ داده، کارایی را افزایش میدهد. چهار رنک، عملکرد بهتری نسبت به دو رنک دارد؛ در نتیجه ۳۲ گیگابایت DDR4-3200 عملکرد بهتری نسبت به ۱۶ گیگابایت DDR4-3600 دارد.
با توجه به اطلاعات بالا، در زمان خرید حافظههای مخصوص کامپیوتر شخصی، جزئیات بیشتری را از آنها درک میکنیم. البته بههرحال میتوان به پیشنهادهای فروشندهها و کارشناسان آنلاین هم توجه کرد، اما درنهایت باید مراقب باشید تا حافظهی خریداری شده، بیشتر از توان پردازش و مدیریت پردازندهی مرکزی نباشد. دراینمیان در خرید کیتهای تکرنک باید دقت بالایی داشته باشید، چون درنهایت موجب کاهش سرعت و کارایی مجموع میشوند.