[Tfug] Interchangeability of VRM's?

Adrian choprboy at dakotacom.net
Wed Dec 12 13:09:14 MST 2012


On Wednesday 12 December 2012 10:39, Bexley Hall wrote:

> > They could be changed dynamically, but presumably the processor would
> > have to be halted during the change to prevent corruption.
>
> Does their state affect *performance*?  I.e., does tweaking the
> core voltage buy you anything -- or is it "this core *requires*
> this supply voltage"?
>
> (e.g., the performance of "classic" CMOS devices could be significantly
> varied by altering their operating voltage)

Yes, not directly affecting performance by itself (other than causing the 
processor to run hotter/out of voltage spec). But if you were a hardware 
tweaker trying to overclock the processor you would manually bump up the core 
voltage, say from 1.3V to 2.0V (beyond the processor spec), to increase the 
internal processor transistor response/decrease switching time to try and 
give yourself a better chance of getting that 200MHz CPU to run at a 500MHz 
system clock. This was also when people were pouring LN2 over their CPUs and 
such. Either it worked... or it went "poof" in a cloud of magic smoke...


> > On a user-configurable
> > board it could typically only be done from the BIOS setup screen. Usually
> > it was set on POST before the CPU was active.
>
> OK, so it seems to be a fixed setting (any adjustment is just
> to allow a MB to support a greater variety of CPUs).  And,
> it is not the CPU doing the tweaking but something else, on
> its behalf (or even unbeknownst to the CPU)

> Your comments suggest the VRM isn;t dynamically controlled like
> this (though perhaps used when the processor goes to sleep/hibernate?)

Yes, it was meant to be a fixed setting once running as far as I know. I don;t 
know that the design spec sheets ever required any particular performance 
spec to be met when switching voltages. You would have to read thru the specs 
to find out, I don;t really remember seeing anything about that when I read 
them 10 years ago... CPUs back then didn;t really have sleep/hibernate 
either, it was either running, executing a NoOP loop (which was slightly 
better but not much), in HALT waiting for an interrupt (which did provide 
significant power savings), or core powered off by some external source.


> > CPU required a different core voltage, changing the core voltage profiles
> > was as simple as updating the firmware.
>
> ... in the BMC?

Yes, though usually the BIOS firmware/BMC firmware was one indistinguishable 
package to the end user. Some motherboards (like the SC450NX) did break it 
out, you would have to upgrade both your BIOS and the BMC firmware to 
run/upgrade particular CPU combinations.


> > point the CPUs are "on". Alternatively, you could have the VRM lines held
> > with pull-up/down resistors at power-on and then later have the CPU
> > twiddle them
>
> But, they would still have to be pulled to their "nominal" levels.
> I.e., you can't just arbitrarily pull them all high/low as this would
> tell the VRM to supply a particular voltage to the core -- that it
> might not be capable of tolerating (?)

Correct, you would pull them to some nominal level that would work with the 
CPUs you had designed your motherboard to run with... Some other CPUs may not 
function correctly because the core voltage would be wrong initially, but 
hey.. your motherboard was never "certified" to run that processor anyways 
right?


Adrian





More information about the tfug mailing list