FAT is designed to interface to any standard DOS-compatible device through standard interface routines (read_sector()
, write_sector()
, etc.).
Compatible media includes:
This is probably the simplest method to add DOS-compatible file media to an embedded device. Code Time Technologies provides a range of drivers for interfacing to SD, SDHC, SDXC and MMC cards. Included are standard SPI, which is implemented in either hardware or software, and 4-bit data interfaces for controllers that support them.
Compact Flash cards are more complex, but they offer performance advantages. This is due to the wider data bus, resulting in higher throughput, and in many cases reduced CPU loads.
The file system provides caching options, which are essential when using an HDD. The caching mechanisms, combined with the inherent efficiency of FAT and its mainly zero-copy reads and writes, provide the best possible performance when implementing an HDD on an embedded system.
Two driver types are provided for use with all types of Atmel DataFlash:
A complete Flash Translation Layer provides a complete, reliable interface to NAND flash, and may be combined with FAT.
This allows USB pendrives to be accessed as standard file system devices.
A RAM drive is provided as standard and is particularly useful in getting a system up and running without any hardware dependencies.