Make your Propeller dissipate 1.5W all by itself!
cgracey
Posts: 14,206
Paul Baker was characterizing Propeller current consumption·today and he·was using·several small test programs to set up various cases. We modified one program to cause the Propeller to consume as much current as possible. It enables all cogs and PLLs and swings all 32 I/O pins at 160MHz. This causes the chip to dissipate ~1.5 Watts, which makes it quite hot. You can try it yourself:
'' This is a silly little program which starts all 8 cogs
'' and makes each cog enable both of its CTRs so that 4
'' pins will be outputting 160MHz. This results in all 32
'' I/O pins outputting 160MHz. This creates ~1.5 watts of
'' power dissipation, ~75% of which is a result of driving
'' so many pins so fast. Note how hot the chip gets. It
'' gradually sags the Demo Board's 3.3V regulated supply
'' until a brown-out reset occurs. Be sure to use F10 to
'' run (not F11).
CON
· _clkmode······· = xtal1 + pll16x
· _xinfreq······· = 5_000_000
VAR
· long stack[noparse][[/noparse]80]
PUB go | i
· repeat i from 7 to 0
··· coginit(i, crank_plls(i<<2), @stack[noparse][[/noparse]i*10])
PUB crank_plls(i)
· ctra := $0F800000 | i | (i+1) << 9
· frqa := $20000000
· ctrb := $0F800000 | (i+2) | (i+3) << 9
· frqb := $20000000
· dira := $FFFFFFFF
· repeat
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chip Gracey
Parallax, Inc.
'' This is a silly little program which starts all 8 cogs
'' and makes each cog enable both of its CTRs so that 4
'' pins will be outputting 160MHz. This results in all 32
'' I/O pins outputting 160MHz. This creates ~1.5 watts of
'' power dissipation, ~75% of which is a result of driving
'' so many pins so fast. Note how hot the chip gets. It
'' gradually sags the Demo Board's 3.3V regulated supply
'' until a brown-out reset occurs. Be sure to use F10 to
'' run (not F11).
CON
· _clkmode······· = xtal1 + pll16x
· _xinfreq······· = 5_000_000
VAR
· long stack[noparse][[/noparse]80]
PUB go | i
· repeat i from 7 to 0
··· coginit(i, crank_plls(i<<2), @stack[noparse][[/noparse]i*10])
PUB crank_plls(i)
· ctra := $0F800000 | i | (i+1) << 9
· frqa := $20000000
· ctrb := $0F800000 | (i+2) | (i+3) << 9
· frqb := $20000000
· dira := $FFFFFFFF
· repeat
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chip Gracey
Parallax, Inc.
Comments
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Who says you have to have knowledge to use it?
I've killed a fly with my bare mind.
I wonder if it would be possible to draw even more... hmmm...
what if the video shift registers were also going full blast, being fed by tight asm code on all eight cogs?
Bill
- Reset due to overcurrent voltage sag, initiated by the Propeller.
- Reset due to overcurrent, initiated by the regulator.
- Reset due to overtemperature, initiated by the regulator.
I feel the evidence is inconclusive as to which occurs, it's basically a chicken and the egg scenario: Did the Propeller brown out because the regulator reset, or did the regulator reset because the Propeller browned out.Because of this, care should be used when using this program on any non-demoboard setup. With a beefier supply, or supplies which don't have shutdown protection,·this program can easily cause a thermal runaway condition and release the smoke, considered yourself warned.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
We definitely saw the supply sagging lower and lower until the Propeller reset. With an adequate current supply, the Propeller might run indefinitely without things getting so hot that the chip slowed beneath the clock requirements. Could you please dig up an old Rev A Demo Board (with the HUGE regulators), and run this program again? It will either keep running, or the silicon will slow enough from the heat that it won't be able to keep up with the clock, and then maybe it will just hang, zeroing the current. My guess is that the cog processors will hang, but the CTRs, having been configured, will keep running. Either way, I bet the·Propeller will be unscathed. Maybe months at that temperature could hurt it, but I bet it's not a practical problem.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chip Gracey
Parallax, Inc.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chip Gracey
Parallax, Inc.
Now we just need to put a heat sink on it and overclock it with overvoltage. Give a prize to the first person to break 1000 milliamps.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chip Gracey
Parallax, Inc.
With a nice, solid solder bead between VCC and VSS, you could probably break an amp right now.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
I've been thinking about your serious problem noted in this thread.
I've come up with the solution using the Prop Stick USB.· See attachment.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--Jeff Martin
· Sr. Software Engineer
· Parallax, Inc.
I also think that it's very important to use·one of these...
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Beau Schwabe
IC Layout Engineer
Parallax, Inc.
FYI, I've overclocked an Intel Core 2 Duo E6400 to 3.64GHz (from 2.13GHz), rock solid, air cooled with a Noctua 12 cooled by two 12cm 63cfm fans [noparse]:)[/noparse] [noparse]:)[/noparse] [noparse]:)[/noparse]
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Cheers,
Simon
www.norfolkhelicopterclub.co.uk
You'll always have as many take-offs as landings, the trick is to be sure you can take-off again ;-)
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Steve, N5AC