Go Down

Topic: Any interest in an ARM version of SdFat (Read 4553 times) previous topic - next topic

fat16lib

Apr 17, 2012, 09:43 pm Last Edit: Apr 17, 2012, 09:53 pm by fat16lib Reason: 1
I am playing with a number of ARM development boards and looking at porting SdFat to various ARM processors.  

Others have ported older versions of SdFat to ARM but I have not published a version of SdFat since Elm-ChaN's FatFs http://elm-chan.org/fsw/ff/00index_e.html is used in many ARM projects.

Would SdFat be useful for Due and other Arduino like ARM boards?

pito

#1
Apr 17, 2012, 10:31 pm Last Edit: Apr 17, 2012, 10:33 pm by pito Reason: 1
What would be the difference between SdFat and FatFs for ARMs? (or the differentiator)

fat16lib

pito,

FatFs is a C program with a older style API.  SdFat has standard C++ support.

FatFs is not supported on Ardunio.  Maybe the Arduino group will make a wrapper for it on Due.

SdFat has support for high speed write to contiguous files.  This makes very fast data logging possible.

I plan to support SDIO which is about four times faster than SPI since it is a 4-bit bus.  SDIO plus multi-block write to contiguous files could be ten times faster than FatFs.


Graynomad

Yes.

I am current designing an ARM board (PCB just finished) using a 4-bit interface and the HSMCI on a SAM3U4E.

I am certainly interested in having your library running on that (and maybe you can advise if I got the hardware right). Details available if you want.

FWIW the SAM3U4E was the chip they originally said the Due would use, that may or may not be the case now but I doubt that makes much difference to a peripheral driver like this.

______
Rob
Rob Gray aka the GRAYnomad www.robgray.com

robtillaart

maybe post this question on the mbed platform? - http://mbed.org/handbook/mbed-Developer-Website -

Rob Tillaart

Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -
(Please do not PM for private consultancy)

Mr_arduino


I plan to support SDIO which is about four times faster than SPI since it is a 4-bit bus.  SDIO plus multi-block write to contiguous files could be ten times faster than FatFs.

You do not realize how awesome it would be for sdfatlib to support sdio there are no words to express how much I want sdio Please do have it support sdio.

Graynomad

Just to be clear Mr_Arduino, you want support for sdio :)

______
Rob
Rob Gray aka the GRAYnomad www.robgray.com

fat16lib

Graynomad,

Quote
Just to be clear Mr_Arduino, you want support for sdio


Good point, SDIO is not simple and not supported on many micro-controllers.  The SDIO protocol is totally separate from the SPI protocol.  Most SD modules/breakouts can't be used with SDIO since only the SPI lines are connected.

SDIO should be very fast if implemented correctly since more effort goes into the SDIO controller in an SD card because it is used in most consumer devices, PCs, and Macs.

I plan to change the SdFat architecture so it can be ported to a number of micro-controllers.

I will port SdFat to STM32/SPI first since that should be easy if I start without DMA.  An old version of SdFat already has been ported to Maple.  Next I will do SPI/DMA.

The STM32 processor used in Maple does not support SDIO so I will likely use the this board http://www.st.com/internet/evalboard/product/252419.jsp.  I have several SD breakout boards that bring out all SD lines for SDIO.

The STM32F4 is really fast and I understand it.  I will look at SAM3U4E and whatever is used in Due later.

Graynomad

Quote
bring out all SD lines for SDIO.

Can you advise what these are, it may not be too late to change something if it means not loosing SDIO functionality.

______
Rob
Rob Gray aka the GRAYnomad www.robgray.com

fat16lib

If all the SAM3U4E HSMCI line are available you should be fine. 

The problem is SD modules and breakout boards.  Most of these are designed for SPI so only bring out MISO, MOSI, SCK, and CS.

I have found breakouts on ebay from Asia that support SDIO.

The SAM3U4E supports 8-bit MMC.  I don't expect to try that soon since it requires all 13 MMC pins.

Graynomad

I can only afford the HSMCI control and 4 data signals, so 4-bit should be OK but not 8-bit.

______
Rob
Rob Gray aka the GRAYnomad www.robgray.com

Mr_arduino

I was interested in using sdio with this interface chip using an nxp chip http://www.nxp.com/documents/data_sheet/SDIO101.pdf
but it uses some weird mount and I can not find a dip adapter for it and also Graynomad I do want support for sdio and your comment made me laugh!

fat16lib

Mr_arduino,

Why do you want to use this part?  It may be great in some product but maybe not in the Arduino hobby world.

Why are you laughing at Graynomad?  His question is reasonable.

A DIP adapter for a 60-pin SDIO part could make some people laugh but not me.

Mr_arduino


Mr_arduino,

Why do you want to use this part?  It may be great in some product but maybe not in the Arduino hobby world.

Why are you laughing at Graynomad?  His question is reasonable.

A DIP adapter for a 60-pin SDIO part could make some people laugh but not me.


I want to use this part to improve transfer rate by using a hardware sdio controller and that is what the sdio ic does.
I am laughing with Graynomad because as far as I am aware he was joking with me and the simily face to me signifies that he is joking.
And no if I do make a shield it will not just be a dip adapter but I just want an adapter to prototype it to see how much faster it is and how well it works with the arduino.

fat16lib

An SDIO shield for an AVR Arduino?  Tell us more.

I think I may hear laughter in the distance but lets wait

Go Up