RTXC File Translation Layer

Supports FAT file system
on resident FLASH memory

A common need in embedded systems is to save files on resident flash that can then be accessed from a laptop or PC. The problem is that NAND flash has particular characteristics that prevent it from being used as a simple, contiguous storage array: it may contain bad blocks; good blocks can develop bad bits; heavily used blocks will wear out. A file translation layer is required to manage the NAND flash while providing an appropriate interface to the host system.

RTXCftl has been designed to allow an array of NAND flash to be addressed as a set of standard 512 byte logical sectors. In addition, it includes wear-leveling algorithms to prevent over-use of blocks and fail-safe mechanisms to prevent data loss in the case of unexpected power loss.

Features
  • FAT on Flash Support – allows a PC-compatible FAT32 file system to address NAND flash memory by providing a simple, logical sector-based interface for the file system.
  • Wear Leveling – sophisticated wear leveling algorithms protect the lifespan of NAND flash memory devices. These ensure that all of the blocks in a NAND flash array are written to evenly within a configurable “maximum distance” value.
  • Safe from Unexpected Reset – The system may be stopped and restarted and no data will be lost; the previous completed state of the file system will be restored.
  • Supports up to 8 GB in a single wear-leveled array
  • Support for multiple arrays
  • Zero Copy Block read/write
  • Cache options
  • 528 byte page support
  • 2112 byte page support
  • Bad block management
  • Automatic garbage collection
  • Small code footprint
  • Support for all standard NAND devices
  • Sample drivers and ECC algorithms
  • C source code
File Translation Layer