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.