Go Down

Topic: Teensy 3.0 (Read 37 times) previous topic - next topic


Thanks to Paul's help, I have first results for SdFat with large reads and writes.

Writes are slow since I am not using the full TX fifo yet.

Here are results for 4096 byte writes and reads using the SdFat bench.ino example.


Type is FAT16
File size 5MB
Buffer size 4096 bytes
Starting write test.  Please wait up to a minute
Write 723.07 KB/sec
Maximum latency: 21609 usec, Minimum Latency: 4929 usec, Avg Latency: 5625 usec

Starting read test.  Please wait up to a minute
Read 1255.56 KB/sec
Maximum latency: 3874 usec, Minimum Latency: 3204 usec, Avg Latency: 3260 usec

I think I know how to speedup writes by using all four bytes of the SPI fifo.

DMA may be required to achieve maximum speed since using the fifo has a bit more overhead than I first assumed.


I don't know much about sdcards and read and write speeds but those read figures look impressive to me. :smiley-eek:
Best regards
Do not PM me a question unless you are prepared to pay for consultancy.
Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -


What does the S in sin.S stand for? I googled it but it is to close to sin to find something relevant quickly.

The GCC compiler passes .S files through the C preprocessor, so that you can use #ifdef and #define within assembly files (because of the #ifdef, you can have one .S file that has code for several different targets, and the defines are set based on the -m<xxx> options on the command line).  If the file is .s (lowercase), it is passed directly to the assembler and does not go through the preprocessor.


Oct 17, 2012, 05:18 am Last Edit: Oct 17, 2012, 12:51 pm by fat16lib Reason: 1
Teensy 3.0 is great.  The hardware is a little gem and the way Paul did the software makes development really easy.

I now have optimized native SPI running in programmed I/O mode and performance is really good.  Here are my latest results for SdFat.


Free RAM: 4219
Type is FAT16
File size 10MB
Buffer size 8192 bytes
Starting write test.  Please wait up to a minute
Write 1801.74 KB/sec
Maximum latency: 80495 usec, Minimum Latency: 4398 usec, Avg Latency: 4543 usec

Starting read test.  Please wait up to a minute
Read 2017.82 KB/sec
Maximum latency: 4473 usec, Minimum Latency: 4048 usec, Avg Latency: 4057 usec

This is with the CPU overclocked at 96 MHz.  I used an industrial SD designed for embedded use.


Great board.

Is there any news when we get buy one? Are there any European distributors stocking it?

Go Up