Feature #1199

Second life for dead VGA cards - using as high-power power supply

Added by tin about 4 years ago. Updated over 2 years ago.

Status:PlanningStart date:26/06/2015
Priority:NormalDue date:
Assignee:tin% Done:

0%

Category:Article
Target version:-

Description

Before we start any soldering and testing lets take some tour into typical VRM (Voltage-Regulation Module).

This unit is DC-DC converter that provides a load the appropriate supply voltage, converting input voltage (usually +12V from PCI-E or extra cable) to a much smaller voltage required by the load. Load here means GPU chip (or CPU if we talk about motherboard). From powersupply point of view it doesn't matter what is used as load. Task or VRM is just to push power into load with converted voltage. VRMs of videocard or motherboard are soldered as part of PCB. But it's not always true, sometimes VRM are installed in an dedicated slot (like VRM modules in rack servers).

Some voltage regulators provide a fixed supply voltage to load, but most of them sense the required supply voltage from the load using specially designed method, like VID signals, or analogue feedback curcuitry. Most advanced VRM use digital bus to get necessary settings for operation (Like I2C-manned VRMs from Volterra, CHIL, uPI Semi).

But VRM controller needs it's own power supply voltage to operate. This is usually system aux voltage, +3.3V. This voltage is used for digital domain of VRM, like PWM controller, clock generation and A/D D/A control curcuits inside chip. Also +3.3V is used for small aux chips present onboard, like BIOS chip, General Purpose I/O's, Thermal sensing and managment onboard. That's why we need to hook PCI-Express slot power with +3.3V and +12V to bootup videocard.

Also advanced VRM controllers usually have extra monitoring GPIO lines dedicated to "ON/OFF" or "VR_Enable" or just simple "Enable" signal and "VR_RDY" or "PWR_OK".

Purpose of first signal is to have VRM controlled by our load or smart monitoring curcuitry onboard. This signal is input direction for VRM. Let's take simple example in term of videocard 8800GTX. G80 have GPIO pin hooked to VR_ENABLE signal on PWM. During startup I/O block of G80 chip pulls this signal high, thus giving command for VRM to enable it's outputs and fully power-up. VRM begin to operate at nominal level, e.g. 1.05V output. Then critical overheat to GPU event occur for example. VRM still feeding G80 with it's voltage, it can't know anything about fault, chips don't have telepathy :). But soon after overheat event G80 pulls VR_ENABLE pin to low, and VRM now see this, immideately shutting down output voltage. Do not confuse this software-controlled shutdown to OCP or OVP trip. Protection trips occur in VRM are internal to VRM controller, and are not related to external :\:\:\:\:\ directly. In contra - digital VR_ENABLE signal allows external :\:\:\:\:\ to enable/disable VRM remotely. Thats the theory. In pracrice often this signal is hardwired via simple detector curcuitry based on small SOT-23-3 NPNs or NFETs to input +12V or +3.3V rail voltage from PCI-Express slot. So if you dont have power on PCI-E slot - then VRM will be permanently disabled no matter which voltage we give to PCI-E 6-pin power connectors.

Now few words about VR_RDY (Voltage regulator Ready) or PWR_OK signal. It's like some kind inverse meaning of VR_ENABLE. This signal is output direction from VRM. It tells that VRM operating fully normal, at rated voltages, current and temperature. This is often used in high-end cards to monitor state of VRM to detect faults and assert shutdown before critical failures progress further. For example if FET in phase blow, then VRM see that phase failed and reports failure to system dropping VR_RDY. Similar method is used in usual ATX PSUs btw, by signal Power Good. Also do not confuse this to external 6-pin PCI-Express presence signals. These are made just with simple discrete transistors in SOT-23-3 package. Actually only 5 of pins in power socket are used for power. These are three +12V rail inputs and TWO of ground returns. Center "ground" one is not ground, but detection pin if there is ground connection present. If this pin left floating - then curcuitry reports to VGA that no power connector present. Same with 8-pin. 1 extra pin is for real return cable, second - for detection.

Here is fast pic describing above in example of VGA card:

[img]http://xdevs.com/kpc/zombie/gpukpc.png[/img]

[b]Now time to do some homework for zombie-builders :)[/b]

I have three simple quiestions here now, answer them using data above :)

1. What do we need to power on videocard standalone (without computer motherboard)? Powering mean here having all voltages present on GPU, mems etc.

2. Can we use GPU VRM to power CPU? Or can we use motherboard VRM to power GPU? If yes, why?

3. Somebody cut VRM (non-damaged, working one) from videocard. He hooked VRM to PCI-E 6-pin connector, applied voltage, but had zero V output. Why?

Those who answer will have....will have.... :)

Wow, so much activity. Me likes, it's like alive now, not a usual tomb of dead :D

I'll answer one by one :)

[B]Quake[/B]

[QUOTE]broken 2900xt[/QUOTE]

Very nice. Because I have same card thanks to Vinbo, and it's based on real beffy VRM.
But... It's quite a task to do proper zombie from it. There are next things to know about:

1. It's volterra-based. With all it's pro's (high-power, compact design, digital control) and con's (NDA specs, CSP packages for power slave's). You will need to trace with DMM all connections and draw schematics of VRM here. I want to do that long time already, but no free time :(

2. 2900XT uses quite complex PCB board with buried via's and blind interconnections between layers. So lots of DMM work to trace everything, and need of desoldering parts to get full schematics.

So if you are really want to use it fully - you will need to spend few days to draw schematics with it. It's not hard work, rather boring, to check every solder joint with DMM in diode buzzer mode.

Non soldered parts on right - is for transient response vendor testing.

[QUOTE]But how can I know which pin is for vr_enable? :/[/QUOTE]

This is a good question. You will need to do some brainwork. When we have schematics of VRM - you will see that 98% of all wires-traces are interconnected to some resistors, slave power units, and some to output inductors to monitor current. And only few wires (like three or five, usually not more!) go somewhere unknown. And it's quite easy just to guess applying 0V or +3.3V to that signals and seeing what happen. Two of signals are for example I2C bus for digital control/monitoring. :)

[QUOTE]to solder a wire for vr_enable from your donor vrm to the card you are going to use[/QUOTE]

Why to complicate things more that it's needed? We need VRM to be ON always, yes?
So just pull-up Enable signal to +3.3V with regular 10-47kohm resistor. Or if Enable signal is active low - then pull-down with same resistor to ground. On low-cost and middle-cost videocards this signal is often managed just with few SOT-23 transistors, with their bases connected to comparators or raw resistor dividers to monitor +12V input power, without even connection to GPU or GPIO.

First step for you if you want to go with all these - is to power card with PCI-E power hook described earlier, without PC and to check if output volts for GPU and VMEM are ok. This way you will know that VRM is ok, and ready to research.

One more note - if you reverse schematics of this VT1165MF-based card VRM - you will have just done for rest of VT1165MF cards - like GTX260,280,4870,4870X2,9800GX2 and so on, so on. So it's not just 2900XT VRM reverse, it's whole serie ;) I would recommend exact this way - draw schematics (enough with just package schematic with pins + wirings, no need to find datasheet for every every part like thansistors etc.).
This is slow but rewarding task ;)

And you will get respect from community :P

After reverse I have plans to do our own PCB's for these Volterras, I've already collected near 30 VT1195SF 40A slaves and few 1165MF masters ready to solder and burn :D

Quake, for GTX with uPI -first - power up card without PC, with just PCI-E power and aux power. Check volts. If everything is ok, then we will follow further.

To use external power successfully you need to meet next rules:

1. Think about what you want, carefully and in detail. It will work only if done properly, it will not work by "half", or "almost normally". Electronics is kind of thing where single tiny mistake will easily ruin whole system, instantly after power on, or during a week of "seems ok working".

2. Every power wire should have return path wire for current. I'd like actually to have two return wires for every power wire. Electricity is fed by TWO wires, forward and return. This is why you have two contacts in your home mains sockets, not one, but two (i don't count earth shielding, it carry current only in critical failure cases).

3. Keep things simple. Do not do stuff you dont understand completely. Get something easy before starting complex things :)

4. Keep high-power path SHORTEST possible. More length - more voltage drop, more EMI pickup, more noise. So lots of headache with long wires. This is why all power connection on VGA,motherboard,cpu boards whatever are made with solid copper planes, to have shortest path possible for all that bunch of AMPs. I would not use anything less than AWG14 for low-voltage VRMs. This rule also suggest to connect wires as close to load as possible. Usually nearest comfortable spot to connect is original VRM choke contact, from load side. You will anyway have to desolder chokes, so you have nice solder point there anyway.

5. Remember, electronics is firstly science about contacts. No contact where it should be - failure. Contact where it should not be - failure. Recheck and check every step you did to get successive results. I did never power on anything until fully checked every component and every connection. These checks looks like time consuming, and delay overclocking session by hours, sometimes even days, but it's actually saving time, money and hardware (not by burning it, or making awful results).

Good example of using 8800GTX VRM as Zombie
Conversion 2900XT into Zombie

Also available in: Atom PDF