Originally Posted by ENTERPRISE
Just a quick question. I am currently running my Corsair Vengeance RAM at 3200Mhz as it seemed the most reliable speed. I am not tightening my timing and I am at 16-18-18-36. Now I copied those timings from another set of Corsair RAM, but I would like to go tighter but not sure what the rule is with reducing timings, do I just decrease each number set by 1 value and then retest ? For Exampl, the first number set is 16, can I just bring that down to 15 ?
I honestly have not played with timings all that much hence not knowing the rules to reducing them in a sensible manner.
Timings can be calculated when you have the datasheet of your RAM which can downloaded from the memory die manufacturer (Hynix, Micron...etc.). This is how I calculate memory primary and sub-timings to keep them synced so the RAM operates correctly, even at RAM voltage below specification.
Calculating the timings is easy and is as follows:
2 parameters are needed here:A.
RAM speed that you want your RAM timings to be based on converted to nanoseconds.
Using RAM speed of 2133MT/s here as an example will result the speed of: (1000/(2133/2)) = 0.938ns
Other RAM speeds can be calculated in the same way, 2400MT/s is 0.833ns, 2666MT/s is 0.750ns ...etc. Some datasheets have RAM speeds calculated.B.
RAM timings of the desired speed that you want your RAM to run at.
Looking at some sub-timings here using Micron datasheet as an example.
Warning: Spoiler! (Click to show)
Using converted speed of 2133MT/s with desired timings for 3200MT/s here will result following timings (rounding up):
tRRD_S(1/2KB) = 2.5ns/0.938ns = 3CK or 4CK (as minimum according to datasheet)
tRRD_S(1KB) = 2.5ns/0.938ns = 3CK or 4CK (as minimum according to datasheet)
tRRD_S(2KB) = 5.3ns/0.938ns = 6CK
tRRD_L(1/2KB) = 4.9ns/0.938ns = 6CK
tRRD_L(1KB) = 4.9ns/0.938ns = 6CK
tRRD_L(2KB) = 6.4ns/0.938ns = 7CK
tFAW(1/2KB) = 10ns/0.938ns = 11CK or 16CK (as minimum according to datasheet)
tFAW(1KB) = 21ns/0.938ns = 23CK
tFAW(2KB) = 30ns/0.938ns = 32CK
tWR = 15ns/0.938ns = 16CK
tWR_S = 2.5ns/0.938ns = 3CK
tWR_L = 7.5ns/0.938ns = 8CK
That is looking at some timings and how they can be calculated. There is not that much of timings guessing as you can see. Some timings can be tightened further while other timings can't, because the RAM dies can/can't maintain stability while the cells are being charged (write and refresh) and discharged (read) which needs time (delays or operation windows). As I wrote earlier, this is the method I use to calculate and sync timings on my C6H. I hope you will find it useful.
Note: To set page size (1/2KB, 1KB and 2KB) look under AMD CBS / DF settings / Memory Interleaving size.