تمام آنچه که باید در مورد تایمینگ رم یا RAM Timing بدانیم!

تمام آنچه که باید در مورد تایمینگ رم یا RAM Timing بدانیم!

در این مقاله از فروشگاه پرسنتا قصد داریم به معرفی تایمینگ رم بپردازیم. حافظه های DDR, DDR2 و DDR3 مطابق با حداکثر سرعتی که با آن کار می کنند دسته بندی می شوند. RAM Timing اعدادی مانند”۸-۴-۴-۳” ، “۲۱-۷-۷-۷” است که هر چقدر پایین تر باشد بهتر است.

Whatever you must know about RAM Timing

حافظه های DDR, DDR2 و DDR3 دسته بندی DDRxxx/PCyyy را دنبال می کنند. به هر حال اگر شما علاقمند به دانستن تفاوت بین حافظه های DDR,DDR2 و DDR3 هستید آموزش ما را که در این مورد است بخوانید.

اولین رقم XXX نشان دهنده حداکثر سرعت کلاکی است که تراشه های حافظه پشتیبانی می کنند. به عنوان مثال، حافظه های DDR400 با حداکثر۴۰۰ مگاهرتز کار می کنند. DDR2-800 با ۸۰۰ مگاهرتز و DDR3-133 با حداکثر ۱۳۳۳ مگاهرتز کار می کنند. مهم است توجه داشته باشید که این سرعت کلاک واقعی حافظه نیست. کلاک واقعی حافظه های DDR,DDR2 و DDR3 نصف سرعت کلاک روی برچسب است. بنابراین DDR400 با ۲۰۰ مگاهرتز کار می کند و حافظه اهی DDR2-400 با ۴۰۰ مگاهرتز و حافظه های DDR3-1333 با ۶۶۶ مگاهرتز کار می کنند.

رقم دوم XXX نشان دهنده حداکثر سرعت انتقال است که حافظه به آن دست می یابد و براساس واحد MB/s ( مگابایت بر ثانیه) است. حافظه های DDR400 دارای سرعت انتقال حداکثر۳۲۰۰ مگابایت بر ثانیه هستند و با PC3200 هم نامگذاری می شوند. حافظه های DDR2-800 دارای سرعت  انتقال ۶۴۰۰ مگابایت برثانیه هستند که با PC6400 هم نامگذاری می شوند. حافظه های DDR3-133 هم دارای سرعت انتقال ۱۰۶۶۴ مگابایت بر ثانیه هستند که با PC3-10600 یا PC3-10666 هم نامگذاری می شوند.

همانطور که می بینید بعد از DDR یا PC از اعداد ۲ یا ۳ استفاده می کنیم تا نشان دهیم که در مورد حافظه DDR2 یا DDR3 صحبت می کنیم و نه در مورد DDR.

دسته بندی اول که DDRxxx است، استانداری است که برای دسته بندی تراشه های حافظه استفاده می شود در حالی که دسته بندی دوم که PCyyy است استانداری است که برای دسته بندی ماژول های حافظه استفاده می شود. در شکل زیر شما می توانید یک ماژول حافظه PC3-10666 را مشاهده کنید که از تراشه های حافظه DDR3-1333 استفاده می کند. به تایمینگ رم ۱۸-۷-۷-۷ و ولتاژ ۱٫۵ توجه کنید.

تایمینگ رم - http://persenta.com

حداکثر سرعت انتقال برای یک ماژول حافظه از طریق فرمول زیر محاسبه می شود:

Maximum Theoretical Transfer Rate = clock x number of bits / 8

از آنجا که ماژول های DIMM دارای سرعت انتقال ۶۴ بیت هستند، عبارت number of bits در فرمول بالا ۶۴ می شود که با جایگذاری در فرمول بالا به نتیجه زیر می رسیم:

Maximum Theoretical Transfer Rate = clock x 8

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

به عنوان مثال فرض کنید که یک جفت از حافظه های DDR3-2133/PC3-17000 خریداری کرده ایم. درست است که این حافظه با DDR3-2133 برچسب گذاری شده اند اما به طور خودکار در سیستم با ۲۱۳۳ مگاهرتز اجرا نخواهد شد. این حداکثر سرعت  کلاکی است که پشتیبانی می شود نه سرعت کلاکی که در آن اجرا خواهد شد. اگر شما آن را در سیستمی که از حافظه های DDR3 پشتیبانی می کند نصب کنید، آنها با ۱۳۳۳ مگاهرتز ( DDR3-1333) که حداکثر سرعت استاندارد DDR3 است اجرا می شود و اگر آنها در حالت دو کاناله اجرا شوند حداکثر سرعت انتقال به ۱۰۶۶۴ مگابایت بر ثانیه می رسد. بنابراین آنها به طور خودکار با ۲۱۳۳ مگاهرتز اجرا نخواهند شد و سرعت انتقال ۱۷۰۰۰ مگابایت بر ثانیه به دست نمی آید.

پس چرا این ماژول ها را می خریم؟ افرادی که کار اورکلاک انجام می دهد این ماژول ها را خریداری می کند. از آنجا ه سازنده این ماژول ها تضمین می کند که این ماژول ها تا ۲۱۳۳ مگاهرتز کار می کنند و شما می دانید که می توانید برای دستیابی به عملکرد بالاتر در سیستم تان، کلاک باس حافظه را حداکثر به ۱۰۶۶۶ مگاهرتز برسانید. با این حال مادربرد شما باید از این نوع اورکلاک پشتیبانی کند. بنابراین اگر شما قصد ندارید سیستم خود را کلاک کنید خریدن یک ماژول حافظه که سرعت کلاک بالاتری از سیستم شما دارد بی فایده است.

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

تایمینگ رم

چرا تایمینگ رم دو ماژول حافظه با حداکثر انتقال تئوری مشابه، سطوح عملکردی مختلفی می تواند بدست آورد؟

تایمینگ زمان تاخیر تراشه حافظه هنگامی که به صورت داخلی کارها انجام می شوند را اندازه گیری می کند. به عنوان مثال معروفترین پارامتر که تاخیر CAS ( یا CL یا زمان دسترسی) نامیده می شود را در نظر بگیرید. این پارامتر به ما می گوید که ما چند سیکل ساعت طول می کشد تا داده های درخواست شده توسط CPU اجرا شوند. یک ماژول حافظه با CL9 نه (۹) سیکل ساعت طول می کشد تا یک داده درخواست شده را تحویا دهد در حالی که یک ماژول حافظه با CL7 هفت سیکل ساعت لازم دارد. در صورتی که دو ماژول سرعت کلاک مشابهی داشته باشند ماژولی بهتر است که CL کمتری داشته باشد ( در اینجا CL7) چونکه داده ها را زودتر تحویل می دهد. این مسئله به عنوان تاخیر یا Latency شناخته می شودک همانطور که در شکل بالا مشاهده می کنید این ماژول دارای CL7 است.

تایمینگ رم از طریق یک سری اعداد نمایش داده می شود برای مثال ۱۵-۵-۵-۵ این اعداد نشان دهنده تعداد سیکل های ساعتی است که در حافظه برای اجرای عملیات خاص صرف می شود. حافظه های سریعتر دارای عدد کوچکتر هستند. ماژول حافظه ای که در شکل بالا مشاهه می کنید دارای تایمینگ ۱۸-۷-۷-۷ است در حالی که تایمینگ ماژول حافظه شکل زیر دارای تایمینگ ۲۴-۸-۸-۸ است.

تایمینگ رم - http://persenta.com

این اعداد نشان دهنده CL-tRCD-tRp-tRAS-CMD است. برای درک این اعداد به خاطر داشته باشید که حافظه به صورت ماتریس سازماندهی شده است. هر جایی که داده ها ذخیره شده اند تقاطی از خطوط و ستون است.

  • تاخیر CL یا  CAS – معادل مدت زمانی است که یک دستور به حافظه ارسال می شود و حافظه به این دستور پاسخ می دهد. مدت زمانی است که پردازنده برخی از داده ها را از حافظه درخواست و سپس آنها را اجرا می کند.

  • تاخیر CAS برای RAS یا tRCD –زمان مابین فعال سازی خط ( RAS) و ستون (CAS) است که داده ها به صورت ماتریسی ذخیره می شوند.

  • تاخیر tRP یا RAS Precharge – زمانی که دسترسی به خط داده را غیر فال می کنیم و دسترسی به خط دیگر داده را شروع می کنیم.

  • tRAS یا Active to Precharge Delay – چه مدت زمان حافظه باید صبر کند تا دسترسی بعدی به حافظه آغاز شود.

  • CMD یا Command Rate – مدت زمانی که تراشه حافظه فعال می شود و اولین دستور به حافظه ارسال می شود. گاهی اوقات این عدد اعلام نمی شود. CMD معمولا T1 ( یک سیکل ساعت) یا T2 ( دو سیکل ساعت) است.

معمولا شما دو گزینه پیش رو دارید :

  1. برای پیکربندی سیستم خود از تایمینگ استاندارد حافظه استفاده کنید که معمولا پیکربندی حافظه در setup مادربرد به Auto تنظیم شده است

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

توجه داشته باشید که تمام مادربردها به شما امکان تغییر تایمینگ رم را نمی دهند. به علاوه بعضی از مادربردها ممکن است قادر به اجرای تایمینگ های خیلی کم نباشند.

تایمینگ رم - http://persenta.com

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

این یکی دیگر از مزایای ماژول های حافظه ای که قابلیت اورکلاک دارند این است که سازنده علاوه بر تضمین اینکه ماژول حافظه شما را به سرعتی که روی برچسب است می رساند، تضمین می کند که شما قادر به نگهداری حداکثر تایمینگ برجسب گذاری شده تا حداکثر کلاک برچسب گذاری شده هستید.

برای مثال اگر شما با ماژول های DDR3-1333/PC3-10600 بتوانید به ۱۶۰۰ مگاهرتز ( ۸۰۰ مگاهرتز * ۲) دست یابید، در این ماژول ها ممکن است نیاز به افزایش تایمینگ رم داشته باشید در حالی که در DDR3-1600/PC3-12800 سازنده تضمین می کند که شما قادر به دستیابی به ۱۶۰۰ مگاهرتز با تایمینگ برچسب گذاری شده خواهید بود.

حالا ما یک قدم جلوتر می رویم و هر یک از پارامترهای تایمینگ را با جزئیات توضیح می دهیم.

تاثیر CAS Latency) CL) بر سرعت رم

همانطور که قبلا گفتیم CAS Latency یکی از شناخته شده ترین پارامترهای حافظه است. این پارامتر به ما می گوید که چند سیکل ساعت طول می کشد تا حافظه داده های درخواست شده را برگرداند. یک حافظه با CL=7 هفت سیکل ساعت برای تحویل داده تاخیر دارد در حالی که یک حافظه با CL=9 نه سیکل ساعت برای اجرای همین عملیات تاخیر دارد. بنابراین برای دو ماژول حافظه که سرعت کلاک مشابهی دارند ماژولی که CL کمتری دارد سریعتر خواهد بود.

در شکل زیر شما می توانید نحوه کار CL را مشاهده کنید. ما دو مثال به شما نشان می دهیم یک ماژول حافظه با CL=7 و یک ماژول با CL=9. مربع آبی یک دستور خواندن است.

تایمینگ رم - http://persenta.com

حافظه با CL=7 ، بیست و دو ممیز دو (۲۲٫۲) درصد تاخیر حافظه بهتری نسبت به حافظه با CL=9 دارد. با توجه به اینکه هر دو با سرعت کلاک یکسانی کار می کنند. شما حتی می توانید زمان تاخیر حافظه را محاسبه کنید. دوره هر سیکل ساعت می تواند از طریق فرمول زیر محاسبه شود:

 T=1/f

بنابراین دوره هر سیکل ساعت حافظه DDR3-1333 با فرکانس ۱۳۳۳ مگاهرتز ( ۶۶۶٫۶۶ مگاهرتز ساعت) کار خواهد کرد که ۱٫۵ نانو ثانیه خواهد شد. به خاطر داشته باشید که شما باید سرعت کلاک واقعی را استفاده کنید که نصف سرعت کلاک روی برچسب است. بنابراین این حافظه DDR3-1333 تاخیر ۱۰٫۵ نانوثانیه ای خواهد داشت البته اگر Cl=7 باشد. برای CL=9 تاخیر این مثال ۱۳٫۵ خواهد شد.

تاثیر tRCD روی سرعت رم

هر تراشه حافظه به عنوان یک ماتریس سازماندهی می شود. در تقاطع هر سطر و ستون ما یک خازن کوچک داریم که مسئول ذخیره داده ۱ یا ۰ است.  در داخل حافظه، فرایند دسترسی به داده های ذخیره شده با فعال شدن سطر و سپس ستونی که در آن واقع شده است انجام می شود. این فعال سازی توسط دو سیگنال RAS  ( که مخفف Row Address Strobe) و CAS ( که مخفف Column Address Strobe) انجام می شود. هر چه زمان ما بین این دو سیگنال کمتر باشد بهتر است چونکه داده زودتر خوانده می شود.  درشکل زیر ما حافظه ای با tRCD=3 را نشان می دهیم. همانطور که مشاهده می کنید RAS to CAS Delay تعداد سیکل های مابین دستور Active و Read یا Write است. هر چقدر تعداد این سیکل ها کمتر باشد بهتر است چونکه خواندن یا نوشتن داده زودتر شروع می شود.

تاثیر tRP روی سرعت رم

بعد از اینکه داده از حافظه جمع آوری شد یک دستور به نام Precharge نیاز داریم تا این داده ها را ارسال کند، سطر حافظه ای که از آن استفاده می کردیم بسته می شود و یک سطر جدید فعال می شود. tRP مدت زمانی است که یک دستور Precharge ارسال و دستور Active بعدی ارسال می شود. در شکل زیر ما یک حافظه با tRP=3 استفاده می کنیم.

 

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

طبق مطالب گفته شده مدت زمانی که سپری می شود تا دستور Precharge ارسال و داده ها واقعا بدست بیایند برابر خواهد بود با

RP + tRCD + CL

تاثیر پارامترهای دیگر روی تایمیتگ رم

tRAS و CD دو پارامتر دیگری هستند که با سرعت کلاک واقعی حافظه کار می کنند. این پارامترها هر چه کمتر باشند بهتر است. بعد از اینکه یک دستور Active ارسال شد دستور دیگر Precharge نمی تواند ارسال شود تا tRAS سپری شود. بنابراین پارامتر tRAS زمانی که حافظه می تواند شروع به خواندن یک سطر دیگر بکند را محدود می کند.

پارامتر CMD مدت زمانی است تا تراشه حافظه فعال شود و دستورات می توانند به حافظه ارسال شوند.