Timing چیست ؟
Timing از اساسي ترين مواردي است كه كاربران حرفه اي و خصوصا OverClocker ها به آن توجه مي كنند . اين مسئله باعث مي شود حتي دو ماژول رم با سرعت انتقال يكسان , كارآيي متفاوتي داشته باشند . در مقاله سعی می شود توضیحات و معرفی تایمینگ و تاثیر آنم صحبت شود ...
به شكل زير دقت كنيد :
تايمينگ معمولا عددي است به شكل : 2-2-2-5-T1
و هر كدام از اين اعداد داراي تعريفي هستند و بر اساس Clock Cycle محاسبه مي شوند .
( مقدار Clock Cycle هايي را نشان مي دهد كه حافظه براي انجام يك عمليات خاص مصرف مي كند )
اين اعداد به ترتيب از چپ به راست CL – tRCD – tRP – tRAS - CMD ناميده ميشوند . براي فهميدن اساس كار اين ارقام بهتر است در ذهن خود چنين تصور كنيد كه داده ها در يك تقاطع بصورت سطري و ستوني قرار گرفته اند ( چيزي شبيه ماتريس )
ابتدا تعريف كلي از اين اصطلاحات خواهيم داشت و سپس موارد اصلي را بطور كامل بررسي خواهيم كرد :
CAS Latency ( CL ) : مدت زمان تاخير بين دستور داده شده از طرف CPU تا هنگام ارسال جواب است . ( زمان بين درخواست CPU و ارسال داده از طرفحافظه )
tRCD : تاخير RAS to CAS – زمان بين فعالسازي سطر ( RAS ) تا فعالسازي ستون ( CAS ) . جايي كه داده در ماتريس ذخيره شده است .
tRP : RAS Precharge زماني كه طول مي كشد تا دسترسي به سطر فعلي غير فعال شود و دسترسي به سطر ديگر فعال شود .
tRAS : Active To Prechare Delay : مدت زماني است كه حافظه بايد صبر مي كند تا دسترسي بعدي به حافظه بتواند آغاز شود .
CMD : Command Rate : مدت زماني است بين فعال شدن Memory Chip و فرستادن واولين دستور به حافظه . معمولا در اكثر موارد اين عدد ناديده گرفته مي شود .
( مقدار آن يا T1 است به معناي 1 Clock Cyle يا T2 به معناي 2 Clock Cycle )
تا اينجا بطور كوتاه بررسي كرديم كه اصولا تايمينگ چيست و چه كاري انجام مي دهد . در اكثر موارد در سيستم خود 2 حالت را پيش رو داريد . يا با انتخاب حالت اتوماتيك سيستم را در حالتي قرار مي دهيد كه بصورت اتوماتيك تايمينگ را تنظيم كند يا با تنظيم دستي Timing را كاهش مي دهيد تا كارآيي بهتري را بدست آوريد . البته بايد بدانيد همه مادربورد ها امكان تغيير تايمينگ را ندارند بنابراين ممكن است بطور پيش فرض ان را در بالاترين حالت قرار دهند !
نكته ديگر اينكه در Over Clocking با افزايش تايمينگ مي توان به Clock بالاتري رسيد اما در اكثر موارد كارايي كل كاهش مي يابد . اما اگر دقت كتيد حافظه هايي هستند كه در بازار مخصوص Over Clock به فروش مي رسند . اين حافظه ها با داشتن تايميگ بالا اين امكان را مي دهند كه بدون تغيير تايمينگ Clock را تا حداكثر مقدار ممكن بالا برد .
حال به توضيح تك تك پارامتر هاي تايمينگ مي پردازيم :
همانطور كه قبلا اشاره شد CL معروفترين پارامتر تايمينگ است . اين پارامتر به ما مي گويد كه چه تعداد Clock ycle تاخير خواهد داشت تا داده درخواستي را باز گردند . براي مثال يك حافظه با CL=3 تاخيري برابر 3 Clock Cycle براي ارايه داده خواهد داشت . يا CL=5 كه در مقايسه با اولي ( هر دو با Clock Rate يكسان ) كند تر است . بايد دانست كه در اين تعريف منظور از Clock همان كلاك واقعي است كه ماژول حافظه مي تواند با آن كار كند .
( كلاك واقعي : نصف مقداري كه بر روي ماژول هاي رم نوشته شده : DDR400 à 200 Mhz )
با توجه به اينكه حافظه هاي DDR/DDR2 در واحد زمان دو بار داده ارسال مي كنند , كلاك واقعي انها دو برابر شده و بر روي آنها نوشته مي شود .
شكل فوق گوياي اين مطلب است كه پس از درخواست بيروني ( دستور Read ) چه تعداد Clock Cycle تا ارايه داده تاخير خواهيم داشت .
مي دانيم كه T=1/F كه F كلاك واقعي است . براي مثال :
DDR2-533 à 266 Mhz real Clock
در نتيجه : T=1/266 كه برابر با 3.75 نانو ثانيه است .
حال با CL هاي متفاوت خواهيم داشت :
CL=33 * 3.75 = 11.75 ns
CL=55 * 3.75 = 18.75 ns
با مثال فوق به راحتي مي توان تاخير رم را با توجه به تايمينگ متفاوت متوجه شد .
نكته بسيار مهم اين است كه حافظه هاي SD – DDR – DDR2 بصورت مد پشت سرهم ( Burst Mode )
عمل مي كنند . يعني اگر آدرس داده بعدي ( پس از دريافت اولين داده ) درست پس از داده فعلي بر روي خط ادرس قرار گيرد آنگاه داده براي خروج تنها يك سيكل تاخير خواهد داشت . بنابراين اگر چه داده درخواستي اوليه به اندازه CL تاخير خواهد داشت اما داده بعدي درست به اندازه يك سيكل تاخير داشته و ارايه خواهد
شد . بايد توجه داشت اين حالت زماني اتفاق مي افتد كه آدرس داده بعد درست پس از داده فعلي در خط ادرس قرر گيرد .
RAS to CAS Delay ( tRCD )
هر چيپ حافظه بصورت يك ماتريس سازماندهي شده است . در تقاطع هر سطر و ستون يك خازن خواهيم داشت كه وظيفه نگه داري 0 يا 1 را داراست . در داخل هر چيپ حافظه پروسه دسترسي به داده ذخيره شده توسط فعالسازي سطر و ستوني كه داده در انجا قرار گرفته است , صورت مي پذيرد . اين Activation
با دو دستور كنترلي با نام هاي RAS ( سيگنال فعالسازي سطر ) و CAS ( سيگنال فعالسازي ستون ) انجام خوهد شد . زمان كمتر بين فعالسازي اين دو دستور سبب افزايش سرعت دسترسي مي شود و داده سريعتر خوانده مي شود .
شكل فوق نيز نمايانگر تاخير بين فعالسازي دو سيگنال كنترلي RAS و CAS است . هنگامي كه فعالساي CAS كامل شود داده خوانده خواهد شد .
همانطور كه در بحث CL مطرح شد اينجا نيز تعداد تاخيز بر مبناي Cock واقعي محاسبه خواهد شد . هر چه اين پارامتر كمتر باشد سرعت خواندن و نوشتن در حافظه بيشتر خواهد شد .
بعد از اينكه داده از حافظه گرفته شد يك دستور احتياج است تا سطر فعال فعلي را كه براي داده استفاده شده است ببندد وحافظه را براي فعالسازي بعدي آماده كند . RAS Precharge در واقع زمان مصرفي بين دستور Precharge تا دستور Active بعدي است . ( دستور Active را در شكل قبل دقت كنيد )
قبلا دانستيم كه دستور Active يك عمليات خواندن يا نوشتن را آغاز مي كند .
شكل فوق زمان تاخير بين دستور Precharge تا دستور Active بعدي است .
ديگر پارامتر ها ...
بهتر است به دو مورد آخر نيز نگاهي بياندازيم :
1 ) tRas يا Active to Precharge Delay : بعد از اينكه يك دستور Active ايجاد شد يك دستور Precharge ديگر نمي تواند ايجاد شود تا زمانيكه tRAS بگذرد . لذا اين پارامتر زماني را كه حافظه
مي تواند سطر ديگري را بخواند يا بنويسد محدود مي كند .
2 ) Command Rate زماني است بين فعال شدن يك چيپ حافظه ( از طريق پايه Chip Select ) تا زمان ارسال اولين دستور خارجي . بطور معمول اين پارامتر بصورت زير است :
T1 : تاخير 1 سيكل .
T2 : تاخير 2 سيكل .