Media Types
FAT is designed to interface to any standard DOS-compatible device through standard interface routines (read_sector(), write_sector(), etc.). A set of reference drivers is provided for quick and risk free integration.
This is probably the simplest method to add DOS-compatible file media to an embedded device. HCC provides a range of drivers for interfacing to SD, SDHC 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. HCC provides proven hardware reference designs to aid the developer.
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. HCC also provides hardware design information and CPLD logic where appropriate.

Sample driver and reference designs have been created for interfacing an IDE HDD to a FAT file system. Also provided in the file system are 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 simple driver that does a direct mapping of DataFlash pages to the logical disk is provided as standard.
A more complex driver (DFML) that handles the DataFlash in a more reliable way may be ordered separately.
HCC offers a complete Flash Translation Layer product (SafeFTL) that provides a complete, reliable interface for NAND flash. It may be ordered with FAT.
The package includes a sample driver for interfacing to HCC's USB host stack.
This allows USB pendrives to be accessed as standard file system devices.
EUSBD-MTP is HCC’s implementation of the Media Transfer Protocol. It allows any HCC file system to be seen as a standard drive on a host system that supports the Media Transfer Protocol, such as Windows Vista or Windows Media Player.
Using MTP as an alternative to USB MST (Mass Storage) confers many advantages, including these primary ones:
-
It allows connection of a failsafe file system to a host
-
It provides access to the target file system through an API
-
It allows simultaneous access to the file system by the host and target
EUSBD-RFI (Reliable File Interface) is a USB Windows driver that is an alternative to MTP and Mass Storage. It is available for Windows XP and Windows Vista. This driver implements an NFS-like protocol over USB for connecting remote drives to Windows Explorer.
From a practical point of view this yields several advantages to the embedded device developer:
-
The host accesses the file system as any other user on the target. Thus all access is synchronized and there is no need to disconnect the local drive when the host is connected.
-
Any file system can be used on the target. The logic and reliability of the file system is determined on the target, not by the system running on the host.
-
RFI is designed specifically with small-scale embedded systems in mind.
A RAM drive is provided as standard and is particularly useful in getting a system up and running without any hardware dependencies.
HCC is always adding to its list of supported devices and will also develop specific drivers upon request. Contact HCC-Embedded to discuss your requirements. HCC also provides bespoke development services.
