![]() | ||
|
|
Random Nonsense / Geek Stuff All those random tech ramblings you can't fit anywhere else! |
![]() |
Thread Tools |
![]() |
#1 |
Cooling Savant
Join Date: Mar 2003
Location: MO
Posts: 781
|
![]()
To all three or four people who care about the quest to measure CPU power usage, I finished building the new and improved ammeter.
It features 0.02% precision resistors, a gigantic improvement over the old 1% tolerance. It has on board a capacitive charge-pump, to eliminate the necessity of tapping into the -12 V line. Analog isolation has been replaced with superior digital isolation. Op-amp input offset voltage has been reduce 40 fold. Yeeha! Sadly, I messed up a bit on the assembly, and killed my ADC by feeding -9.2 volts into a pin rated for -0.3 to 6.0 volts. It really sucks to leave off one resistor. ![]() In mean time... Damn I make a nice circuit board! |
![]() |
![]() |
![]() |
#2 | |
Pro/Guru - Uber Mod
Join Date: Sep 2002
Location: Indiana
Posts: 834
|
![]() Quote:
Sorry to hear about the ADC. Looking forward to seeing the results. |
|
![]() |
![]() |
![]() |
#3 |
Cooling Savant
Join Date: Mar 2003
Location: MO
Posts: 781
|
![]()
I use the toner mask method. After drawing the relevant artwork on computer, one laser prints a mirror image of the circuit. There's fancy transfer paper available, but I use semi-gloss photo paper. Iron the paper onto a copper clad board, toss in water. After a couple hours the paper can be peeled away, leaving the toner on the board (stubborn paper remnants can be persuaded with a soft tooth brush). Then, all the board needs is a dip in ammonium persulfate - any copper not covered by toner is etched away.
20 mil tracks/spacings come out really well; things get tough at 10 mil. Using the transfer paper, 6 mil is possible. Some preliminary tests: shorting all the inputs together and applying a voltage is giving me a final output of ~0.8 mV per input volt. |
![]() |
![]() |
![]() |
#4 |
CoolingWorks Tech Guy Formerly "Unregistered"
Join Date: Dec 2000
Location: Posts: 2,371.493,106
Posts: 4,440
|
![]()
Groth
you guys are doing fine work, nice to watch but why post this in "geek stuff" ? had Since87 not posted I'd never have seen it |
![]() |
![]() |
![]() |
#5 |
Big PlayerMaking Big Money
Join Date: Aug 2001
Location: irc.lostgeek.com #procooling.com
Posts: 4,782
|
![]()
Maybe there should be a separate forum
"Shhh don't disturb the 3 or 4 people in there and DON'T touch anything" Or something. Very nice work Groth. You are fast turning into my hero. |
![]() |
![]() |
![]() |
#6 | |
Pro/Guru - Uber Mod
Join Date: Sep 2002
Location: Indiana
Posts: 834
|
![]() Quote:
Where'd you find the resistors? I wouldn't expect to be able to find 0.02% resistors of the right values without 8+ week lead time and a 2K piece minimum order. |
|
![]() |
![]() |
![]() |
#7 | ||
Cooling Savant
Join Date: Mar 2003
Location: MO
Posts: 781
|
![]() Quote:
Quote:
One of the difference amps seems to be the source of most of the common mode error, plus it has a slightly lower gain than the other two. Surgery. Anyone know a good/easy way to remove flux? Specifically, flux that has flowed underneath a 14 pin SOIC. I think some output error is flux leakage. |
||
![]() |
![]() |
![]() |
#8 | ||
Pro/Guru - Uber Mod
Join Date: Sep 2002
Location: Indiana
Posts: 834
|
![]() Quote:
Quote:
PM me with your address if you want me to send you a can of 1676. |
||
![]() |
![]() |
![]() |
#9 |
CoolingWorks Tech Guy Formerly "Unregistered"
Join Date: Dec 2000
Location: Posts: 2,371.493,106
Posts: 4,440
|
![]()
another vote for WACKO
spot on, new forum please |
![]() |
![]() |
![]() |
#11 |
Cooling Savant
Join Date: Mar 2003
Location: MO
Posts: 781
|
![]()
I'm much too impatient, so I removed my flux with automotive brake parts cleaner. It cleaned really well, not only removing the flux, but the writing on the ICs too.
Sadly, the flux leakage seems to have been in my favor - things are slightly worse now. In other news, two resistors have suffered soldering induced drift and are being replaced. WACKO forever! |
![]() |
![]() |
![]() |
#12 |
Put up or Shut Up
Join Date: Dec 2001
Location: Spokane WA
Posts: 6,506
|
![]()
This is pretty good stuff. What do you use as a display to read the values?
|
![]() |
![]() |
![]() |
#13 | |
Cooling Savant
Join Date: Mar 2003
Location: MO
Posts: 781
|
![]() Quote:
It does the whole voltage, fan RPM, and temperature monitoring thing, but I'm just using the voltage inputs here. Most importantly (since I have zero programming skill), it's recognized by Motherboard Monitor. Once everything is set up, MBM will display/log the CPU current (with ~0.2 amp resolution). With any luck, we should able to characterize the thermal power of a given AthXP core running specified software at a various Vcore, FSB, and multipliers. 'Twill be the end of silly power estimates. Edit: grammar Last edited by Groth; 07-01-2003 at 07:14 AM. |
|
![]() |
![]() |
![]() |
#14 | |
Put up or Shut Up
Join Date: Dec 2001
Location: Spokane WA
Posts: 6,506
|
![]() Quote:
|
|
![]() |
![]() |
![]() |
#15 | |
Responsible for 2%
of all the posts here. Join Date: May 2002
Location: Texas, U.S.A.
Posts: 8,302
|
![]() Quote:
|
|
![]() |
![]() |
![]() |
#16 | |
Pro/Guru - Uber Mod
Join Date: Sep 2002
Location: Indiana
Posts: 834
|
![]() Quote:
Access to the North Bridge is probably the only thing that can throw the die dissipation measurement off significantly. An ideal load program would operate in the CPU's internal cache only. Considering how little the die temperature fluctuates when running CPU Burn, and how clearly you can see the impact of cache size with Prime95, I think it's reasonable to believe that CPU Burn is not doing much North Bridge access. Maybe someone should contact the author(s) of CPU Burn and see what they say about this. |
|
![]() |
![]() |
![]() |
#17 | |
Cooling Savant
Join Date: Mar 2003
Location: MO
Posts: 781
|
![]() Quote:
Then there's 120 or so tri-state bidirectional lines. These are pulled up by external resistors to a reference voltage, nominally one half Vcore. When the CPU puts data on these line, it pulls them up to Vcore or down to ground through FETs that can source/sink a maximum of 6 mA. Absolute worst case (all lines continuously 1, or continuously 0), the CPU will source or sink no more than ~720 mA at a voltage of Vcore/2 -- less than three quarters of a Watt in or out. In reality, there will be a mix of 1's and 0's; the net will be tens of milli-Watts. Not a significant issue. |
|
![]() |
![]() |
![]() |
#18 |
Cooling Savant
Join Date: Mar 2003
Location: MO
Posts: 781
|
![]()
After a few days of playing, I've discovered a couple things.
My board layout is inadequate. I arranged the various components with more thought toward ease of etching and assembly. As it is, the various resistors that control gain and offset for a given amp are not grouped together. With even a small thermal gradient, I get changes in performance. Trimmers are a necessity. I had thought that using precision amps and resistors would eliminate the need for pots. Nope, difference amps are way too sensitive, and hand soldering is way too sloppy. Murphy's law reprised: any re-work will just make things worse. So, how bad is it? To test, I hooked up the CPU-ammeter to a spare ATX supply. Two case fans provided 12 V load and kept the thermal problems to a minimum. A (black-light) inverter powered from the 5 V line provided switching noise. A collection of pots and resistors allowed the application of variable voltage to the ammeter's inputs. With all three pairs of inputs shorted together, voltage was applied. Readings were taken at the output of each difference amp channel, and at the final amplified summed output. Error amounts to 1.2 mV + 2.2 mV/V. In our region of interest, output error runs 5 to 6 mV - roughly 0.15% percent of full scale output, or about 40% of the least-significant-bit value of the ADC. Thanks to it's linear nature, it should be possible to eliminate most of this error in software. |
![]() |
![]() |
![]() |
#19 |
Cooling Savant
Join Date: Mar 2003
Location: MO
Posts: 781
|
![]()
With the common mode and input offset quantified, I moved to gain. Each channel was tested by applying 2 volts to the non-inverting input and from 2.00 to 2.06 V to the inverting input, while the inputs of the other channels were grounded Measurements were again taken at the output of the difference amp and at the final output.
Visually, it's boringly linear. Statistically, well, no fireworks here either. Correcting for the previously determined common-mode/input-offset gave the following: Code:
Gain Non-linearity Channel 1 26.364 0.252% Channel 2 26.464 0.152% Channel 3 26.487 0.084% |
![]() |
![]() |
![]() |
#20 |
Responsible for 2%
of all the posts here. Join Date: May 2002
Location: Texas, U.S.A.
Posts: 8,302
|
![]()
Tell me again where you tap into the mobo?
|
![]() |
![]() |
![]() |
#21 | |
Cooling Savant
Join Date: Mar 2003
Location: MO
Posts: 781
|
![]() Quote:
Current sense shunts (resistors of a few milliOhms) need to be placed in series with the CPU voltage regulator's inductors. You'll need to unsolder the inductors, and solder the shunts to them, with sense wires coming off each end of each shunt. Depending on the available space, you may need to wind new wire around the torroidal cores to get long enough leads. Solder the combined units back in, with the shunt on the CPU of the coil. |
|
![]() |
![]() |
![]() |
#22 |
Pro/Guru - Uber Mod
Join Date: Sep 2002
Location: Indiana
Posts: 834
|
![]()
Groth,
Could you post a schematic of the analog section of what you have now? (Reference designators for components would be handy for discussion purposes.) It looks like the summing amplifier has an awfully high offset for some reason. |
![]() |
![]() |
![]() |
#23 | |
Cooling Savant
Join Date: Mar 2003
Location: MO
Posts: 781
|
![]() Quote:
![]() Page 12 of the opa227 pdf, input bias current cancellation - they specifically say not to use an external cancellation resistor. I did and it does make a difference. The power of re-reading. Also, I do need to switch to a ground plane on the back of the board. The trace feeding the former external cancellation resistor is very thin and shared with one of the diff-amps. Ground float perhaps? Grounding through vias should also allow tightening up the layout. I'm still using three difference amps feeding into a summing amp. I'll draw a schematic when I wake up this evening. |
|
![]() |
![]() |
![]() |
#24 | |
Pro/Guru - Uber Mod
Join Date: Sep 2002
Location: Indiana
Posts: 834
|
![]() Quote:
A bit extreme maybe, but you get the idea. The safest way to lay this out, is with every ground point going back to a single node. This avoids currents that you don't anticipate affecting things they shouldn't. Ground planes are good for high frequency digital stuff, but they can cause problems with high accuracy analog designs. Using the back side of the board, to hook up a 'star' of ground nets to a central node, might be a good way to maintain accuracy while clearing up congestion. |
|
![]() |
![]() |
![]() |
#25 |
Cooling Savant
Join Date: Mar 2003
Location: MO
Posts: 781
|
![]()
Star ground, I think I've run into that concept before. I think it's one of those thing that everyone believes doesn't apply to them until too late. Actually, I'm not terrible worried by a couple of mV, but, when in bedlam...
Well, the ground thing's a bit of drag. I had hoped I could avoid needing artwork for the back, hence groundplane. It appears I've reached the end of using Paint as my layout tool; I'll have to slog my way through the Vutrax tutorials. I've pulled the offending current cancellation resistor and added jumpers to give individual grounds. Qualitatively, it looks to be an improvement; numbers to be announced. In other developments, I've picked up a 150 W, 5 Ohm nichrome variable resistor. I'm hoping to better measure my shunt resistors with the aid of some large currents. The techspray works very well. It even cleaned off the bits of salty residue that the isopropanol and xylene left. Cool. Thank you kindly, Since. |
![]() |
![]() |
![]() |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|