Yahoo Groups archive

AVR-Chat

Index last updated: 2026-04-28 22:41 UTC

Message

Re: [AVR-Chat] SD or CF read speed?

2008-09-18 by David Kelly

On Thu, Sep 18, 2008 at 03:07:12PM -0400, David VanHorn wrote:
> On Thu, Sep 18, 2008 at 1:36 PM, David Kelly <dkelly@hiwaay.net> wrote:
> > Anyone have an idea as to how fast an AVR can read an SD card or CF
> > card? Am in need of sustaining 10E6 bits/sec. At first glance this gives
> > me 16 clock cycles per byte at 20 MHz. This could work if the timing on
> > the memory card is deterministic without periodic pauses, that I don't
> > have to buffer in AVR memory, and have interrupts disabled.
> 
> 
> Well... Define "read"..  :)

Ideally, "read a 400 MB file sequentially from start to end, then stop."

Less ideal, sequentially read the first 400 MB off the card, raw. This
means I'll have to provide a utility for placing the data on the card.

> In that video project, I had to stream 30 fps to a color LCD display.
> I only actually looked at 16 words of the data from the nandflash, for
> the rest of it, I set up the hardware so that the low edge of the read
> pin was a read pulse to the nandflash and the high edge of the same
> pulse was the write to the display.  So, to do a frame, all I had to
> do was cbi and sbi 20,000 times.  While that's tedious to write in
> straightline code, it's blisteringly fast.

20,000 times 30 frames per second is 600,000 bytes per second. Am
thinking 600,000 * 16 * 2 bytes/word is a bit beyond advertised SD
speeds.

But back to my original question, during that read there wasn't any
period where the SD was non-responsive? The way DRAM might have wait
states during refresh?

-- 
David Kelly N4HHE, dkelly@HiWAAY.net
========================================================================
Whom computers would destroy, they must first drive mad.

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.