A different measurement: Using the LPC2106 at 4 * 14.7456 MHz,
portions of the WinAVR FAT12/16/32 library and a Kingston 64MB CF, I
can read 350 KB/s.
The timing was measured while perfoming 10 loops of:
open_file
read_entire_file (6,198,940 bytes)
close file
It took 2m 57s
I haven't looking at the byte transfer timing to see if it can be
kicked up but I would think it wouldn't go much faster. After all,
I haven't implemented any 'wait' state:
void ataReadDataBuffer(unsigned char *Buffer, unsigned short
numBytes)
{
unsigned short i;
// set up device
IOCLR = ADDR_MASK;
IODIR &= DB_INPUT;
CS(CS_CF);// select device
// read data from drive
for (i=0; i < numBytes; i++)
{
IOCLR = OEn_MASK;// set OEn low
*Buffer++ = IOPIN >> DATA_SHIFT;
IOSET = OEn_MASK;// set OEn high
}
CS(CS_NONE);// deselect device
}
I also haven't reviewed the Kingston spec or tried any of
the 'faster' CF devices. About the only thing that 'could' improve
would be seek time.
For my MP3 application I need to transfer about 1 MB/minute and I am
about 20 times faster than required.
RichardMessage
Re: MMC filesystem speed
2005-11-27 by rtstofer
Attachments
- No local attachments were found for this message.