Merigo78
18-04-2006, 17:33
Questo mio 3d non è una richiesta di aiuto ma tutto il contrario. Io ho questa scheda madre e fino a poco tempo fa andava malissimo soprattutto con il primo bios 0401 mentre adesso col nuovo 0511 va benone...
Veniamo al dunque: non so quanti di voi avranno quetsa mobo, ma voglio passarvi i settaggi giusti per il bios visto che me li ha dati un "guru" sul forum dell'Asus... :)
CLICCA E GUARDA!!! (http://www.michelefabbretti.com/download/bios.txt)
:)
P.S. E' tutto inglese, se volete la traduzione o info basta un pm!
Se avete tempo e siete dei "smanettoni", leggetevi anche questo:
Right, that's it. Set like this, you should be simply able to install any flavour windows without problems. If not, some things to consider:
- Make sure ANY expansion-bracket is connected correctly! Connecting to the wrong connector MIGHT SERIOUSLY DAMAGE your board!!!
- If you have unexplainable issues, like device-conflicts, video-cards showing corrupted graphics, etc. first make damn sure there's nothing metallic, like a loose screw, stuck under your board! Yes, you may laugh! It happened to me, it might have happened to you without knowing. Simply checking takes what? 5 minutes?
- If you're 100% sure your assembly is 100% okay, suspect your brand and type of memory as one of the first things. In other words, experiment with those first then, leave only the one nearest the CPU and take out the rest. See if your problems are gone.
- If you still have issues, strip everything except floppy, vdeo-card, one memory-stick Boot from floppy and see if that works first. If still problems, put video-card in second PCIex slot or try a PCI-video card if you can.
Windows:
- After installing any windows, first thing to do is getting and installing Intel INF-update Utility (Not Vista yet)
- After reboot, continue installing drivers for video, LAN, etc.
- After that, goto windows update and install all critical updates, additionally, select the extra updates if required and/or desired
- Be a little carefull selecting hardware-driver updates, usually, the original vendor has better/newer drivers with more complete functionality support
Memory:
This board has 4 slots, 2x2 banks.
This board supports DDR2-533, DDR2-667 and DDR2-800, however, only a few known types and brands. If you have anything not on the lists in the manual and you run into problems, suspect your memory first, ask questions later! Some DO NOT support dual-channel configuration, others DO NOT support dual-channel all 4 slots populated. Most do support single channel,
1 or 2 slots (one bank) though.
SPD:
Serial Presence Detect
On every memory-stick is an EEPROM containing the correct or default memory-timings for different frequencies in a table. The BIOS will select the timings out of that table, based on the frequency set for the memory. Some vendors neatly fill out every field, others do only the most necessary. Some do not at all, which makes it mostly unusable without knowing and correctly setting the timings manually. Read more on this here:
http://download.micron.com/pdf/technotes/TN_04_42.pdf
The following text is here to explain things in an understandable way, okay? It's not there to details all technical facts. So, things I'm gonna say here are technically incorrect in some places, but it's just to keep thngs easy and understandable, okay?
SD-RAM:
In the old days, there was SD-RAM. It ran till speeds around 200 Mhz.
DDR:
Next was DDR, Double Data Rate, which gave double data throughput with same frequency, so think of it like there's a multiplier x2 so max. frequency would then be around 400 Mhz.
DDR2:
Nowadays, DDR2 rules. Basically the same as DDR, but running on lower voltage of 1.8 volts and designed to reach much higher speeds (basically allowing higher latency-times and frequencies). For our story, think of it as QDR, Quadrouple Data Rate, so max. 800 mhz.
Dual-channel:
Next came dual-channel config, where two mem-sticks help each other out. Think of it as a RAID0 for memory... ;-) Hence, again, double speed. 800 becomes 1600.
DRAM CAS Latency
DRAM RAS# Precharge
DRAM RAS# to CAS# Delay
DRAM RAS# Activate to Precharge Delay
DRAM Write Recovery Time
These are the memory-timing settings. How to set largely depends on your memory and speed and depends even more on the speed you've set your memory to run on. Whether these will have a great impact on your memories performance depends largely on the type of memory used.
DRAM CAS Latency
In theory, take DDR2-800 memory.
It supports several speeds, each having a unique CAS-Latency. In general, the faster the speed, the higher the latency needed to keep up. The base frequncies come from SD-RAM and you should think of them as multipliers, not the actual freq. DDR2 is running on.
DDR2- 400 533 667 800
Base-freq. 100 133 166 200
CL CL2 CL3 CL4 CL5
So, for any memory-frequency, you should choose a corresponding CL. In this case, for xample, if you make this memory run as
DDR2-800 or faster: CL should be 5
DDR2-667 - DDR2-800: CL should be 4
DDR2-533 - DDR2-667: CL should be 3
DDR2-400 - DDR2-533: CL should be 2
Note I say "should be", because sometimes, with good memory, it's possible to make the memory run as DDR2-533 memory, but overclocked so much that it falls into the next range. In other words, you could try to overclock it so much as DDR2-533 that it would still be running with CL3, while the frequency is set to DDR2-700. However, this usually requires applying a well-dozed amount of overvoltage, which can shorten your memories lifetime, and also make your memory run much hotter than normal, heatspreaders highly recommended then... ;-)
Note though that not all memory supports all configs, for example my own DDR2-667 memory supports
Mhz 100 133 166
CL CL3 CL4 CL5
From this alone you can see my memory is not so great :-(
Most Corsair-667 and Crusial-667 memory for example can do this:
Mhz 100 133 166
CL CL2 CL3 CL4
Much better! Much more expensive too, unfortunately... :-(
Some DDR2-800 memory might look like this:
Mhz 200
CL CL4
In other words, SPD-tables are not complete. This will make it more difficult to run it at other speeds, but with extrapolation you should be able to figure it out, for example, this memory MIGHT run as DDR2-667 on CL3. Then again, it might simply refuse to run on other latencies all
together. Well, only one way to find out! LOL
Anyway, point I'm trying to make is that you should set your memory-frequency to something that can support the CL you're trying to set, and vice versa. With mem. frequency I mean anything that divide by these base-frequencies, so setting DDR2-600 (due to overclocking) means your memory might support it as OVERclocked DDR2-533 memory with CL set to the number corresponding the base-frequency, which is 133, so for our example memory, CL3. You can also configure it as DOWNclocked DDR2-667 memory with CL4. This little bit of calculating is required to find your best timings at a given memory-speed. Downclocking ofcourse is never desireable but most of the times necessary to combine the best setting for memory and CPU. It usually gives better performance though to lower your timings one step, set your memory-speed
divider one step lower and lower your CPU-speed to match, ie. in our example here, the OVERclocked DDR2-533 setting with CL3 gives better performance with lower CPU-speed than
DOWNclocked at 667Mhz. with slightly higher CPU-speed. However, you can only do so, if your memory stays stable at an overclocked frequency of 600 Mhz.
Ofcourse, Any memory-frequency setting above the default frequency you bought is overclocking, in which case the limit you can reach is really the top your memory will run at (And that's the first limit you should figure out). You cannot make DDR2-533 memory run as DDR2-800 memory with a frequency of 800. However, some good memory can do so, as long as you adjust your timings, which would be rediculously high CL-settings. The purpose of doing so
however can only be fun, because performance would suck. Idea of all this now is to make your memory run at the lowest CL with the highest memory-frequency possible closest matching your CPU-frequency (FSB-frequency). By the way, don't confuse your CPU-frequency with the FSB- frequency. The value you see at CPU-frequency is the actual original frequency that gets multiplied with the CPU-multiplier, which is mostly locked on most procs. Mine for example has a multiplier of 16, so 16x200 is stock CPU-frequency of 3200 Mhz. That 16 is fixed, so I can only raise the 200 to overclock. However, your FSB-speed (Speed between CPU and Memory-controller HUB) is also fixed to that base-frequency of 200, it's a x4 multiplier, bringing your stock FSB-speed to 4x200=800 Mhz. Overclocking your CPU thus means overclocking your
Memory-controller (Unless you're using a PD955 @ 1066Mhz FSB, this memory-contoller should have no problems running any FSB between 800-1066, since it's desinged to supoprt FSB1066!). In between is another multiplier (Divider actually) and that's your memory-divider, dividing the CPU-frequency (200 Mhz) with a divider to get the memory-speed. The memory-speed-settings you can choose are actually divider settings like 1/3, 2/3, 1/2, 1/1, etc. Your aim
now is to set the lowest divider giving you most of your overclocked frequency for as far as your memory can support it with the lowest possible CAS latency. In short:
mem-speed = CPU / mem-divider
CPU-internal freq. = CPU x CPU-multiplier
FSB = CPU x 4
DRAM RAS# Precharge
This value is mostly set to the same as CAS#, however, some memory has no problem lowering this down.
DRAM RAS# to CAS# Delay
This should in most cases be set the same as CAS#.
DRAM RAS# Activate to Precharge Delay
This can in most cases be set to CAS# x3. Some memory allows lower than that, some can do with CAS# x2, some even with CAS# x1!
DRAM Write Recovery Time
This should in most cases be set to CAS#+1, however, some memory has no problem lowering this down.
I actually wanted to explain each in detail, but I think it's more usefull to skip the technical details and come to the point of what is of importance setting these. I figured that would make more sense. Any detailed info on these can easily be found on the net using Google anyway. I tried to explain the CAS#-setting in detail however, because you can set the rest based on that one. As a rule of thumb, to start out with,
set your "CAS#",
set your "RAS# to CAS#" the same,
set your "RAS# Activate to Precharge" to x3 "CAS#",
set your "RAS# Precharge" to "CAS#",
set your "DRAM Write Recovery Time" to "CAS#"+1
example with CAS# Latency 5:
DRAM CAS# Latency: 5
DRAM RAS# Precharge: 5
DRAM RAS# to CAS# Delay: 5
DRAM RAS# Activate to Precharge Delay: 15
DRAM Write Recovery Time: 6
From here, just don't touch "DRAM CAS# Latency" and "DRAM RAS# to CAS# Delay" and simply try to lower the rest one by one. Memory-testing at each step/change is important
because just changing and seeing if you can boot back into the BIOS is NOT enough!!!
On each change, load Windows and do Prime95 mem-stresstesting to make sure your memory can handle it. The easiest however is, to do this phase (finetuning your individual memory-timings) as the last step.
An example:
You have DDR2-800, your base-frequency then is 200 Mhz.
your memory supports
Mhz 100 133 166 200
CL CL2 CL3 CL4 CL5
Your CL is then 5. If you set your memory-frequency-divider to DDR2-800 (1/2 @ FSB200), you are running stock. If you then raise your CPU-frequency you will push the memory beyond the 200 Mhz base-freq. At some point, your memory will give up, say this memory gives up at 883 Mhz, then your base-frequency is 883 x 1/2 mem-divider x 1/2 base-divider= 220.75 Mhz on CL5
Basically, you can then interpolate the max it will run on as DDR2-667 memory as 883/800 x 667 = 736 Mhz on CL4
Pushing it beyond 736 probably will give you the same result as pushing it beyond 883 Mhz: it gives up. Same running it as DDR2-533 as 883/800 x 533 = 588 Mhz on CL3.
Voltage:
You usually can succesfully push your memory further beyond it's design limit by adding overvoltage to it. Standard DDR2 needs 1.8 Volts according to spec., but in most cases you can push that as far as 2.2 Volts. Some even more, others have the max. voltage printed on the package or supplied manual, others you can find on the manufacturers website. If you can't find the max. voltage though (Unknown brand memory), be carefull and keep it safe by not pushing it beyond 2.0 volts max. !!! Just to be save. Memory has become alot cheaper, but still is expensive enough to keep it a little safe! For any component: If you apply over-voltage you ARE
really shortening it's lifetime, and the scale at which you shorten it's life is NOT a linear scale! A little overvoltage will still shorten the components life, but a life of 10 years or 6 years on a little overvoltage is tolerable in most cases, and that's why a little overvoltage doesn't really hurt.
ASUS has provided some safety while setting voltages, by color-coding the numbers. If it's getting riscy, numbers show purple. If it's getting dangerous, numbers get red. As a rule of thumb, stick with the white numbers.
Overclocking:
What should you do now?
Well, start overclocking ofcourse... ;-)
Note that these are just basic "rules of thumb" to apply for basic overclocking using stock equipment, and getting the most out of it usually takes a bit more finetuning than this, but hey, it's a start, ain't it?
Start with your memory-speed-setting set for the memory you really have. Set your memory-timings to the settings it should have (You can usually find that on the manufacturers website, or sometimes on a sicker on the stick. If you can't find it anywhere, try running it stock and using PC Wizard 2006 to find out about the timings. Choose Tools->Overclock information to see
what the timings are. Remember the CL Cas Latency setting is the most important one, and simply extrapolate to create a table of the unknown CAS-latencies at lower or higher frequencies like I did above. Now push it as far as it will go. It might be easier to turn off any bootroms like the ICH7R RAID so rebooting becomes quicker. You'll be raising your CPU-frequency, then save and reboot, go back, raise it some more, save and reboot, etc. At some point, the PC will stop
rebooting. Apply one step overvoltage to your memory and retry. Repeat until mem-voltage numbers get purple. If it boots again, repeat raising CPU-freq. one step at a time, until it stops rebooting again. Note the frequency you had set, and as a rule of thumb, round the number found down decimal numbers. If you found CPU-frequency 234 is the max., ronud it down
to 230. Write that down as your max. for your memory. Also write down your current mem-divider used and your mem-voltage. Remember you can calculate the other max. if you will need to run your memory at a different frequency later on.
Next thing to push is your CPU.
To do so, start with stock settings, set your memory-speed-setting to lowest setting possible, so it won't interfere. Now raise your CPU-frequency again little by little. At some point, again your PC will stop rebooting. Add one step voltage to your VCore setting and retry. Keep doing so, until you reach the red settings for your VCore. If it still doesn't boot with that, you've gone too far, lower your CPU-freq. back down until it boots. Round the found max. freq. down again the same way and write down as your max. CPU-speed. Note that with this "CPU- testing" it might happen that you succesfully reboot, then go back in the BIOS, and it starts hainging spontaneously. To test that, simply go in BIOS, and keep moving around with your cursor/
menus. If it doesn't hang within seconds, continue pushing. If it does, turn off your PC and back on. You'll get a message saying overclocking failed. Then add voltage or lower freq. as still possible. The idea is NOT to find a rock-stable freq. here, but to find the absolute limit of your CPU!
Now you have both max. speeds possible for your PC. All you have to do is combine these two into that one CPU-frequency setting. Pay attention to the fact that doing so can mean you need to run your memory at a different than default frequency. Usually, but not always, you'll find that you could push your CPU more than your memory, so take the lowest of the two. Interpolate the setting required for your VCore at that speed (which is than lower than your max. with known
VCore-setting). If for you it's the other way around, take the lowest freq. and interpolate the Overvoltage needed for your memory at the than lower than max. memory-setting with known voltage-setting. Set the memory-speed-setting to match with your found max. memory-speed and adjust your timings accordingly, based on information given above.
Congrats. Step 1 done.
Next step is to see if these settings actually work. Don't get disappointed, usually they don't. Getting in the BIOS is fairly simple stuff, but loading and running windows and everything on top of that is a different level of stress, I'm sure you agree. In other words, if you reboot and let it startup, windows will probably crash. Nasty thing about it is when it does so while it was writing to disk. Disk-corruption IS possible this way, so try at your own risc!!! Anyway, first of all set back any bootroms that you disabled before. While you're in the BIOS still, check in hardware-monitor screen for your CPU-temp. Leave it for a while and watch the temp. Stable and far under 60C? If close to 60C, too high VCore-setting, and useless for stable performance since temp. would go over 60C then at full load. Lower down your VCore, which means you also have to lower down your freq. a little to make it stable again. Keep doing so until safely under 60C.
Next, let it boot but keep pressing F8 until you get the windows startup-screen. If it doesn't even
get there, lower your frequency a few steps, your max. was to much! ;-) If it does, select Safe Mode. First let's see if it survives an "easy" boot. If all goes well, we reboot and try a "normal" startup.If things don't go well (likely) you'll get a blue screen. This screen tells you information on the problem. At the top it gives the reason for the crash. At the bottom, you'll find a STOP number, like STOP 0x000050... If this reads
"Bad Pool Header" or
"Page fault in non-paged area"
then your memory is not stable. Either lower down CPU- frequency more or add voltage if you're still below max. setting (which would show red, or is the value you found on package or elsewhere, or is under 2.0 volts if unknown). Consider switching your memory-divider
to let your memory run slower, especially if you know your max. CPU-speed was much higher than current setting. Then lower your memory-divider and up your CPU-speed again. If you get
IRQL NOT EQUAL
Stop 0x000050
Stop 0x00007E
Stop 0x00008E
Stop 0x00000A
And actually pretty much else, your CPU is not stable. Either lower CPU-freq. a little or add VCore if still possible without going in red numbers. There's one exception to this: If after the STOP number it lists a filename, like iastor.sys, or usb.sys, or pci.sys, or anything like that, it means your southbridge cannot keep up with this high overclock. Lower down your CPU-freq.
and try again. Note though, a much higher CPU-speed might overcome problems like these. These errors basically mean that at current settings your chipset has difficulty synchronizing data with memory/CPU. I've seen cases where it was unstable like this at CPU=260, while it WAS stable at CPU=260 because it was able to synchronize with the rest better at this freq.
In other words, if you get these, it's possibly because of too high freq., but if you have to lower your speed so much to get rid of these type of errors, you might get rid of it "jumping" over the "problem-speed".
When safe mode is succesfull, try normal startup. Just keep repeating this whole thing until windows boots (Adding voltage or lowering freq.), just pay attention and keep track of your memory-speed. If you, by now, had to drop your freq. so much lower than what you found as your max. memory-speed, consider calculating if you could make your memory run on a different frequency using a lower CAS Latency. When windows starts up okay, have something to keep an eye on your CPU-temp. Speedfan can do so. If around 60C, too high VCore-setting
and you have no choice than to lower your VCore, (or get better cooling) meaning you also have to lower your freq. to get stable again on less power. If far below 60C you can start stress-
testing. Start Prime95 or other stresstest util and let it run, keeping a close eye on your CPU-temp! Make sure you're getting a full load workout here, on dualcore, prime95 alone is not good enough. Start another copy using prime95 -a, or use two or more different programs like that.
most likely, your PC will crash or reboot. If it does, note the blue screens again and adjust.
Think about adjusting if you still can, considering your CPU-temp! If not, leave voltage-settings, but lower freq. settings a little. Keep repeating this until stresstesting keeps running longer than 5-10 minutes and nothing weird happens. Prime95 can stop, reporting something wrong happened. Mostly indicating your CPU is unstable, lower CPU-temp. or add VCore. When it survives all tests and CPU-temp. never came above 60C, you're almost done. For gaming, try a 3DMark 05 or 06 benchmark. Real stress? Run prime95 and then do the benchmark. The idea is stress-testing here, not benchmarking, forget the results for now. Kep an eye on your CPU-temp.! Try prime95 and start a game. Ofcourse, performance will be low, but that's okay as long as it survives for as long as you think necessary. 10 min. testing like this is usually enough to know if it's pretty stable or worthless... Watch your CPU-temp!!! May not get above 60C as long as you test!
When you've reached here, I would advice to go back in your BIOS, lower the CPU-freq. just a little bit more, and start finetuning your memory-timings as described above. Test it for a while like that to see how it goes under normal usage-conditions. If happy, leave it, if not happy (crashes?), lower it some more little by little. If you lower CPU-freq., consider lowering your VCore or mem.voltage accordingly, simply interpolate. This is important to improve thermal conditions, don't forget or ignore! As a matter of fact, as a final step, after you've found your best overclocking-speed and tested it completely stable, you might just lower your voltages one step at a time, until you lose stability. This will asure you you'll be running in the best possible
thermal conditions possible at those speeds.
Anyway, you cannot and should not consider your system to be running 100% stable. What is 100% stable anyway? If you can do anything you want to do without anything weird happening, well, isn't that defined as being stable? I mean, if it crashes because you're running prime95 and
another prime95 AND a 3DMark06 benchmark, then yes, you've proven it's not 100% stable, but are you going to do things like that in your normal usage-patterns? Highly unlikely. As long as prime95 x2 runs stable without errors (try all 3 tests) for prolonged times then you're pretty stable.
CPU-list, lists Voltages and such for each model:
http://images.tomshardware.com/2006/01/05/the_65_nm_pentium_d_900s_coming_out_party/cpu_table_intel_big.gif
Right, that's it for a while...
Any questions? Simply reply this post.
And remember, better safe and slower than sorry!
Push it too far and you might seriously damage your components, especially with the voltages.
Enjoy at your OWN RISC!!!
Good luck
:)
Veniamo al dunque: non so quanti di voi avranno quetsa mobo, ma voglio passarvi i settaggi giusti per il bios visto che me li ha dati un "guru" sul forum dell'Asus... :)
CLICCA E GUARDA!!! (http://www.michelefabbretti.com/download/bios.txt)
:)
P.S. E' tutto inglese, se volete la traduzione o info basta un pm!
Se avete tempo e siete dei "smanettoni", leggetevi anche questo:
Right, that's it. Set like this, you should be simply able to install any flavour windows without problems. If not, some things to consider:
- Make sure ANY expansion-bracket is connected correctly! Connecting to the wrong connector MIGHT SERIOUSLY DAMAGE your board!!!
- If you have unexplainable issues, like device-conflicts, video-cards showing corrupted graphics, etc. first make damn sure there's nothing metallic, like a loose screw, stuck under your board! Yes, you may laugh! It happened to me, it might have happened to you without knowing. Simply checking takes what? 5 minutes?
- If you're 100% sure your assembly is 100% okay, suspect your brand and type of memory as one of the first things. In other words, experiment with those first then, leave only the one nearest the CPU and take out the rest. See if your problems are gone.
- If you still have issues, strip everything except floppy, vdeo-card, one memory-stick Boot from floppy and see if that works first. If still problems, put video-card in second PCIex slot or try a PCI-video card if you can.
Windows:
- After installing any windows, first thing to do is getting and installing Intel INF-update Utility (Not Vista yet)
- After reboot, continue installing drivers for video, LAN, etc.
- After that, goto windows update and install all critical updates, additionally, select the extra updates if required and/or desired
- Be a little carefull selecting hardware-driver updates, usually, the original vendor has better/newer drivers with more complete functionality support
Memory:
This board has 4 slots, 2x2 banks.
This board supports DDR2-533, DDR2-667 and DDR2-800, however, only a few known types and brands. If you have anything not on the lists in the manual and you run into problems, suspect your memory first, ask questions later! Some DO NOT support dual-channel configuration, others DO NOT support dual-channel all 4 slots populated. Most do support single channel,
1 or 2 slots (one bank) though.
SPD:
Serial Presence Detect
On every memory-stick is an EEPROM containing the correct or default memory-timings for different frequencies in a table. The BIOS will select the timings out of that table, based on the frequency set for the memory. Some vendors neatly fill out every field, others do only the most necessary. Some do not at all, which makes it mostly unusable without knowing and correctly setting the timings manually. Read more on this here:
http://download.micron.com/pdf/technotes/TN_04_42.pdf
The following text is here to explain things in an understandable way, okay? It's not there to details all technical facts. So, things I'm gonna say here are technically incorrect in some places, but it's just to keep thngs easy and understandable, okay?
SD-RAM:
In the old days, there was SD-RAM. It ran till speeds around 200 Mhz.
DDR:
Next was DDR, Double Data Rate, which gave double data throughput with same frequency, so think of it like there's a multiplier x2 so max. frequency would then be around 400 Mhz.
DDR2:
Nowadays, DDR2 rules. Basically the same as DDR, but running on lower voltage of 1.8 volts and designed to reach much higher speeds (basically allowing higher latency-times and frequencies). For our story, think of it as QDR, Quadrouple Data Rate, so max. 800 mhz.
Dual-channel:
Next came dual-channel config, where two mem-sticks help each other out. Think of it as a RAID0 for memory... ;-) Hence, again, double speed. 800 becomes 1600.
DRAM CAS Latency
DRAM RAS# Precharge
DRAM RAS# to CAS# Delay
DRAM RAS# Activate to Precharge Delay
DRAM Write Recovery Time
These are the memory-timing settings. How to set largely depends on your memory and speed and depends even more on the speed you've set your memory to run on. Whether these will have a great impact on your memories performance depends largely on the type of memory used.
DRAM CAS Latency
In theory, take DDR2-800 memory.
It supports several speeds, each having a unique CAS-Latency. In general, the faster the speed, the higher the latency needed to keep up. The base frequncies come from SD-RAM and you should think of them as multipliers, not the actual freq. DDR2 is running on.
DDR2- 400 533 667 800
Base-freq. 100 133 166 200
CL CL2 CL3 CL4 CL5
So, for any memory-frequency, you should choose a corresponding CL. In this case, for xample, if you make this memory run as
DDR2-800 or faster: CL should be 5
DDR2-667 - DDR2-800: CL should be 4
DDR2-533 - DDR2-667: CL should be 3
DDR2-400 - DDR2-533: CL should be 2
Note I say "should be", because sometimes, with good memory, it's possible to make the memory run as DDR2-533 memory, but overclocked so much that it falls into the next range. In other words, you could try to overclock it so much as DDR2-533 that it would still be running with CL3, while the frequency is set to DDR2-700. However, this usually requires applying a well-dozed amount of overvoltage, which can shorten your memories lifetime, and also make your memory run much hotter than normal, heatspreaders highly recommended then... ;-)
Note though that not all memory supports all configs, for example my own DDR2-667 memory supports
Mhz 100 133 166
CL CL3 CL4 CL5
From this alone you can see my memory is not so great :-(
Most Corsair-667 and Crusial-667 memory for example can do this:
Mhz 100 133 166
CL CL2 CL3 CL4
Much better! Much more expensive too, unfortunately... :-(
Some DDR2-800 memory might look like this:
Mhz 200
CL CL4
In other words, SPD-tables are not complete. This will make it more difficult to run it at other speeds, but with extrapolation you should be able to figure it out, for example, this memory MIGHT run as DDR2-667 on CL3. Then again, it might simply refuse to run on other latencies all
together. Well, only one way to find out! LOL
Anyway, point I'm trying to make is that you should set your memory-frequency to something that can support the CL you're trying to set, and vice versa. With mem. frequency I mean anything that divide by these base-frequencies, so setting DDR2-600 (due to overclocking) means your memory might support it as OVERclocked DDR2-533 memory with CL set to the number corresponding the base-frequency, which is 133, so for our example memory, CL3. You can also configure it as DOWNclocked DDR2-667 memory with CL4. This little bit of calculating is required to find your best timings at a given memory-speed. Downclocking ofcourse is never desireable but most of the times necessary to combine the best setting for memory and CPU. It usually gives better performance though to lower your timings one step, set your memory-speed
divider one step lower and lower your CPU-speed to match, ie. in our example here, the OVERclocked DDR2-533 setting with CL3 gives better performance with lower CPU-speed than
DOWNclocked at 667Mhz. with slightly higher CPU-speed. However, you can only do so, if your memory stays stable at an overclocked frequency of 600 Mhz.
Ofcourse, Any memory-frequency setting above the default frequency you bought is overclocking, in which case the limit you can reach is really the top your memory will run at (And that's the first limit you should figure out). You cannot make DDR2-533 memory run as DDR2-800 memory with a frequency of 800. However, some good memory can do so, as long as you adjust your timings, which would be rediculously high CL-settings. The purpose of doing so
however can only be fun, because performance would suck. Idea of all this now is to make your memory run at the lowest CL with the highest memory-frequency possible closest matching your CPU-frequency (FSB-frequency). By the way, don't confuse your CPU-frequency with the FSB- frequency. The value you see at CPU-frequency is the actual original frequency that gets multiplied with the CPU-multiplier, which is mostly locked on most procs. Mine for example has a multiplier of 16, so 16x200 is stock CPU-frequency of 3200 Mhz. That 16 is fixed, so I can only raise the 200 to overclock. However, your FSB-speed (Speed between CPU and Memory-controller HUB) is also fixed to that base-frequency of 200, it's a x4 multiplier, bringing your stock FSB-speed to 4x200=800 Mhz. Overclocking your CPU thus means overclocking your
Memory-controller (Unless you're using a PD955 @ 1066Mhz FSB, this memory-contoller should have no problems running any FSB between 800-1066, since it's desinged to supoprt FSB1066!). In between is another multiplier (Divider actually) and that's your memory-divider, dividing the CPU-frequency (200 Mhz) with a divider to get the memory-speed. The memory-speed-settings you can choose are actually divider settings like 1/3, 2/3, 1/2, 1/1, etc. Your aim
now is to set the lowest divider giving you most of your overclocked frequency for as far as your memory can support it with the lowest possible CAS latency. In short:
mem-speed = CPU / mem-divider
CPU-internal freq. = CPU x CPU-multiplier
FSB = CPU x 4
DRAM RAS# Precharge
This value is mostly set to the same as CAS#, however, some memory has no problem lowering this down.
DRAM RAS# to CAS# Delay
This should in most cases be set the same as CAS#.
DRAM RAS# Activate to Precharge Delay
This can in most cases be set to CAS# x3. Some memory allows lower than that, some can do with CAS# x2, some even with CAS# x1!
DRAM Write Recovery Time
This should in most cases be set to CAS#+1, however, some memory has no problem lowering this down.
I actually wanted to explain each in detail, but I think it's more usefull to skip the technical details and come to the point of what is of importance setting these. I figured that would make more sense. Any detailed info on these can easily be found on the net using Google anyway. I tried to explain the CAS#-setting in detail however, because you can set the rest based on that one. As a rule of thumb, to start out with,
set your "CAS#",
set your "RAS# to CAS#" the same,
set your "RAS# Activate to Precharge" to x3 "CAS#",
set your "RAS# Precharge" to "CAS#",
set your "DRAM Write Recovery Time" to "CAS#"+1
example with CAS# Latency 5:
DRAM CAS# Latency: 5
DRAM RAS# Precharge: 5
DRAM RAS# to CAS# Delay: 5
DRAM RAS# Activate to Precharge Delay: 15
DRAM Write Recovery Time: 6
From here, just don't touch "DRAM CAS# Latency" and "DRAM RAS# to CAS# Delay" and simply try to lower the rest one by one. Memory-testing at each step/change is important
because just changing and seeing if you can boot back into the BIOS is NOT enough!!!
On each change, load Windows and do Prime95 mem-stresstesting to make sure your memory can handle it. The easiest however is, to do this phase (finetuning your individual memory-timings) as the last step.
An example:
You have DDR2-800, your base-frequency then is 200 Mhz.
your memory supports
Mhz 100 133 166 200
CL CL2 CL3 CL4 CL5
Your CL is then 5. If you set your memory-frequency-divider to DDR2-800 (1/2 @ FSB200), you are running stock. If you then raise your CPU-frequency you will push the memory beyond the 200 Mhz base-freq. At some point, your memory will give up, say this memory gives up at 883 Mhz, then your base-frequency is 883 x 1/2 mem-divider x 1/2 base-divider= 220.75 Mhz on CL5
Basically, you can then interpolate the max it will run on as DDR2-667 memory as 883/800 x 667 = 736 Mhz on CL4
Pushing it beyond 736 probably will give you the same result as pushing it beyond 883 Mhz: it gives up. Same running it as DDR2-533 as 883/800 x 533 = 588 Mhz on CL3.
Voltage:
You usually can succesfully push your memory further beyond it's design limit by adding overvoltage to it. Standard DDR2 needs 1.8 Volts according to spec., but in most cases you can push that as far as 2.2 Volts. Some even more, others have the max. voltage printed on the package or supplied manual, others you can find on the manufacturers website. If you can't find the max. voltage though (Unknown brand memory), be carefull and keep it safe by not pushing it beyond 2.0 volts max. !!! Just to be save. Memory has become alot cheaper, but still is expensive enough to keep it a little safe! For any component: If you apply over-voltage you ARE
really shortening it's lifetime, and the scale at which you shorten it's life is NOT a linear scale! A little overvoltage will still shorten the components life, but a life of 10 years or 6 years on a little overvoltage is tolerable in most cases, and that's why a little overvoltage doesn't really hurt.
ASUS has provided some safety while setting voltages, by color-coding the numbers. If it's getting riscy, numbers show purple. If it's getting dangerous, numbers get red. As a rule of thumb, stick with the white numbers.
Overclocking:
What should you do now?
Well, start overclocking ofcourse... ;-)
Note that these are just basic "rules of thumb" to apply for basic overclocking using stock equipment, and getting the most out of it usually takes a bit more finetuning than this, but hey, it's a start, ain't it?
Start with your memory-speed-setting set for the memory you really have. Set your memory-timings to the settings it should have (You can usually find that on the manufacturers website, or sometimes on a sicker on the stick. If you can't find it anywhere, try running it stock and using PC Wizard 2006 to find out about the timings. Choose Tools->Overclock information to see
what the timings are. Remember the CL Cas Latency setting is the most important one, and simply extrapolate to create a table of the unknown CAS-latencies at lower or higher frequencies like I did above. Now push it as far as it will go. It might be easier to turn off any bootroms like the ICH7R RAID so rebooting becomes quicker. You'll be raising your CPU-frequency, then save and reboot, go back, raise it some more, save and reboot, etc. At some point, the PC will stop
rebooting. Apply one step overvoltage to your memory and retry. Repeat until mem-voltage numbers get purple. If it boots again, repeat raising CPU-freq. one step at a time, until it stops rebooting again. Note the frequency you had set, and as a rule of thumb, round the number found down decimal numbers. If you found CPU-frequency 234 is the max., ronud it down
to 230. Write that down as your max. for your memory. Also write down your current mem-divider used and your mem-voltage. Remember you can calculate the other max. if you will need to run your memory at a different frequency later on.
Next thing to push is your CPU.
To do so, start with stock settings, set your memory-speed-setting to lowest setting possible, so it won't interfere. Now raise your CPU-frequency again little by little. At some point, again your PC will stop rebooting. Add one step voltage to your VCore setting and retry. Keep doing so, until you reach the red settings for your VCore. If it still doesn't boot with that, you've gone too far, lower your CPU-freq. back down until it boots. Round the found max. freq. down again the same way and write down as your max. CPU-speed. Note that with this "CPU- testing" it might happen that you succesfully reboot, then go back in the BIOS, and it starts hainging spontaneously. To test that, simply go in BIOS, and keep moving around with your cursor/
menus. If it doesn't hang within seconds, continue pushing. If it does, turn off your PC and back on. You'll get a message saying overclocking failed. Then add voltage or lower freq. as still possible. The idea is NOT to find a rock-stable freq. here, but to find the absolute limit of your CPU!
Now you have both max. speeds possible for your PC. All you have to do is combine these two into that one CPU-frequency setting. Pay attention to the fact that doing so can mean you need to run your memory at a different than default frequency. Usually, but not always, you'll find that you could push your CPU more than your memory, so take the lowest of the two. Interpolate the setting required for your VCore at that speed (which is than lower than your max. with known
VCore-setting). If for you it's the other way around, take the lowest freq. and interpolate the Overvoltage needed for your memory at the than lower than max. memory-setting with known voltage-setting. Set the memory-speed-setting to match with your found max. memory-speed and adjust your timings accordingly, based on information given above.
Congrats. Step 1 done.
Next step is to see if these settings actually work. Don't get disappointed, usually they don't. Getting in the BIOS is fairly simple stuff, but loading and running windows and everything on top of that is a different level of stress, I'm sure you agree. In other words, if you reboot and let it startup, windows will probably crash. Nasty thing about it is when it does so while it was writing to disk. Disk-corruption IS possible this way, so try at your own risc!!! Anyway, first of all set back any bootroms that you disabled before. While you're in the BIOS still, check in hardware-monitor screen for your CPU-temp. Leave it for a while and watch the temp. Stable and far under 60C? If close to 60C, too high VCore-setting, and useless for stable performance since temp. would go over 60C then at full load. Lower down your VCore, which means you also have to lower down your freq. a little to make it stable again. Keep doing so until safely under 60C.
Next, let it boot but keep pressing F8 until you get the windows startup-screen. If it doesn't even
get there, lower your frequency a few steps, your max. was to much! ;-) If it does, select Safe Mode. First let's see if it survives an "easy" boot. If all goes well, we reboot and try a "normal" startup.If things don't go well (likely) you'll get a blue screen. This screen tells you information on the problem. At the top it gives the reason for the crash. At the bottom, you'll find a STOP number, like STOP 0x000050... If this reads
"Bad Pool Header" or
"Page fault in non-paged area"
then your memory is not stable. Either lower down CPU- frequency more or add voltage if you're still below max. setting (which would show red, or is the value you found on package or elsewhere, or is under 2.0 volts if unknown). Consider switching your memory-divider
to let your memory run slower, especially if you know your max. CPU-speed was much higher than current setting. Then lower your memory-divider and up your CPU-speed again. If you get
IRQL NOT EQUAL
Stop 0x000050
Stop 0x00007E
Stop 0x00008E
Stop 0x00000A
And actually pretty much else, your CPU is not stable. Either lower CPU-freq. a little or add VCore if still possible without going in red numbers. There's one exception to this: If after the STOP number it lists a filename, like iastor.sys, or usb.sys, or pci.sys, or anything like that, it means your southbridge cannot keep up with this high overclock. Lower down your CPU-freq.
and try again. Note though, a much higher CPU-speed might overcome problems like these. These errors basically mean that at current settings your chipset has difficulty synchronizing data with memory/CPU. I've seen cases where it was unstable like this at CPU=260, while it WAS stable at CPU=260 because it was able to synchronize with the rest better at this freq.
In other words, if you get these, it's possibly because of too high freq., but if you have to lower your speed so much to get rid of these type of errors, you might get rid of it "jumping" over the "problem-speed".
When safe mode is succesfull, try normal startup. Just keep repeating this whole thing until windows boots (Adding voltage or lowering freq.), just pay attention and keep track of your memory-speed. If you, by now, had to drop your freq. so much lower than what you found as your max. memory-speed, consider calculating if you could make your memory run on a different frequency using a lower CAS Latency. When windows starts up okay, have something to keep an eye on your CPU-temp. Speedfan can do so. If around 60C, too high VCore-setting
and you have no choice than to lower your VCore, (or get better cooling) meaning you also have to lower your freq. to get stable again on less power. If far below 60C you can start stress-
testing. Start Prime95 or other stresstest util and let it run, keeping a close eye on your CPU-temp! Make sure you're getting a full load workout here, on dualcore, prime95 alone is not good enough. Start another copy using prime95 -a, or use two or more different programs like that.
most likely, your PC will crash or reboot. If it does, note the blue screens again and adjust.
Think about adjusting if you still can, considering your CPU-temp! If not, leave voltage-settings, but lower freq. settings a little. Keep repeating this until stresstesting keeps running longer than 5-10 minutes and nothing weird happens. Prime95 can stop, reporting something wrong happened. Mostly indicating your CPU is unstable, lower CPU-temp. or add VCore. When it survives all tests and CPU-temp. never came above 60C, you're almost done. For gaming, try a 3DMark 05 or 06 benchmark. Real stress? Run prime95 and then do the benchmark. The idea is stress-testing here, not benchmarking, forget the results for now. Kep an eye on your CPU-temp.! Try prime95 and start a game. Ofcourse, performance will be low, but that's okay as long as it survives for as long as you think necessary. 10 min. testing like this is usually enough to know if it's pretty stable or worthless... Watch your CPU-temp!!! May not get above 60C as long as you test!
When you've reached here, I would advice to go back in your BIOS, lower the CPU-freq. just a little bit more, and start finetuning your memory-timings as described above. Test it for a while like that to see how it goes under normal usage-conditions. If happy, leave it, if not happy (crashes?), lower it some more little by little. If you lower CPU-freq., consider lowering your VCore or mem.voltage accordingly, simply interpolate. This is important to improve thermal conditions, don't forget or ignore! As a matter of fact, as a final step, after you've found your best overclocking-speed and tested it completely stable, you might just lower your voltages one step at a time, until you lose stability. This will asure you you'll be running in the best possible
thermal conditions possible at those speeds.
Anyway, you cannot and should not consider your system to be running 100% stable. What is 100% stable anyway? If you can do anything you want to do without anything weird happening, well, isn't that defined as being stable? I mean, if it crashes because you're running prime95 and
another prime95 AND a 3DMark06 benchmark, then yes, you've proven it's not 100% stable, but are you going to do things like that in your normal usage-patterns? Highly unlikely. As long as prime95 x2 runs stable without errors (try all 3 tests) for prolonged times then you're pretty stable.
CPU-list, lists Voltages and such for each model:
http://images.tomshardware.com/2006/01/05/the_65_nm_pentium_d_900s_coming_out_party/cpu_table_intel_big.gif
Right, that's it for a while...
Any questions? Simply reply this post.
And remember, better safe and slower than sorry!
Push it too far and you might seriously damage your components, especially with the voltages.
Enjoy at your OWN RISC!!!
Good luck
:)