MicroSD True Power Consumption

Hi Everybody, my first thread in this forum.

Has anyone experience of measuring microSDHC read power consumption in a real implementation (SPI mode)?

Specifically I need to know: Average current drain of a microSD given average read Stream in Kbps, MCU RAM, and given nominal current supply "Iread" and max read Speed from the card datasheet.

I am tempted to simply multiply Iread * (Stream/Speed), but I am not sure how to account for the RAM and block size.

My target is to read a stream of 300 to 700 kbps at a card power consumption

Reply to
mscand1
Loading thread data ...

I've tested current on a number of SDHC cards, and I find that the faster cards have higher read and write currents. That makes sense, since they need faster internal processors.

If you're counting the milliWatts, make sure that you specifically send the Idle command, otherwise the card may keep its processor cranked up for about 250mSec. If you're doing intermittent reads, that extra time at higher power can be a significant power drain.

The max read speed from the data sheet won't be much help, as it isn't the speed you get in SPI mode. You need to figure your SPI transfer rate and get an estimate on overhead. Then you can figure out the Read/Idle duty cycle and work out a power estimate.

A rough estimate might be: 25MBITS SPI = 20MBITS data rate

for 700kbps, your duty cycle will be 0.7/20

0.7/20 * 20mA = 0.7mA average current

0.7mA * 3.3V = 2.3mW.

You'll probably need a fast current sensor and a scope to find the actual power consumption. At least reading is better than writing----where you get a longer burst of high current while the card erases the next 32KB block of flash.

Mark Borgerson

Reply to
Mark Borgerson

a

MCU

the

sure

Mark, Thank you for the feedback. I have read your interesting posts about microSD consumption in write mode.

Would you have any recommendation for the MCU RAM buffer size I should use in my application?

I have just obtained a datasheet from SanDisk and it quotes a typical read Access Time of 1.5ms. From the signal timing diagrams published in the physical layer specifications I understand the card needs to go through 1x Access Time before sending any 512B data block even in multiple block read. So this would translate to 512B / 1.5ms = 341KB/sec. This sounds very slow.

Marco

--------------------------------------- Posted through

formatting link

Reply to
mscand1

not that slow, 341KBps = 2728Kbps (1 byte = 8 bits) or more than 3x your target of 700Kpbs.

hope this helps,

yg

--
http://ygdes.com / http://yasep.org
Reply to
whygee

read

1x

read.

Yg thanks. I agree that's about 3x my data stream target, but it is too slow for low power applications. Every second the card will be in read mode for 1/3 sec and in idle state for the remaining 2/3 sec. Under this duty cycle a 30mA card will need about 30mW at 3V. This is too much power for my application.

Marco

--------------------------------------- Posted through

formatting link

Reply to
mscand1

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.