Hi all.
I'm currently using a Freescale MC9S08JM32 8 bit processor running at about 5MIPS to read and write data from/to an SD card. I'm using a bought in FAT16/32 filing system. I need to achieve at least 32kB/sec write speed to the card and have found that my current system takes about 6ms to do a sector write but takes 100mS to 200mS when it gets to a cluster boundary. The system uses one 512 byte buffer for everything. This periodic slowdown only gives me an average of 22kB/sec write speed which is not enough!
I have seen reference to people using the FatFs and TinyFatFs systems on this forum so wanted some idea of the speed of writing to card of these systems. I gather that the FatFs uses separate buffers for file handling and data. My existing system has to read FAT data every time it assigns a new cluster to the file and it is this searching for the next cluster (with reads from the card) that seems to slow things down. How does FatFs handle this? I would be grateful if any forum members have details of write speeds. I am attempting to record a .wav file at 16kHz 16 bit mono. Do I need to go to a better (16 bit) processor?
I'm currently using a Freescale MC9S08JM32 8 bit processor running at about 5MIPS to read and write data from/to an SD card. I'm using a bought in FAT16/32 filing system. I need to achieve at least 32kB/sec write speed to the card and have found that my current system takes about 6ms to do a sector write but takes 100mS to 200mS when it gets to a cluster boundary. The system uses one 512 byte buffer for everything. This periodic slowdown only gives me an average of 22kB/sec write speed which is not enough!
I have seen reference to people using the FatFs and TinyFatFs systems on this forum so wanted some idea of the speed of writing to card of these systems. I gather that the FatFs uses separate buffers for file handling and data. My existing system has to read FAT data every time it assigns a new cluster to the file and it is this searching for the next cluster (with reads from the card) that seems to slow things down. How does FatFs handle this? I would be grateful if any forum members have details of write speeds. I am attempting to record a .wav file at 16kHz 16 bit mono. Do I need to go to a better (16 bit) processor?