Flash memory drivers, known as memory technology devices in Linux, provide the interface between a file system and the raw NAND or NOR flash devices provided by the hardware. A simple flash memory driver will only provide simple read, write and erase functions whereas for greatest system reliability bad block management and wear levelling are also required.
Bad Block Management
Bad block management (BBM) is a critical component of NAND flash drivers to improve the reliability and endurance of the flash. NAND is shipped from the factory with “mostly good” cells, meaning there are some cells that are non-functional even when the flash is new.
Blocks can also go bad over time, causing loss of data stored in the flash memory and potentially the risk of a device that will no longer boot. To prevent flash memory corruption the flash memory driver should employ bad block management technology to map bad sectors and avoid storing data in those areas.
Wear levelling is a process by which the flash memory driver attempts to use the flash blocks at a more even rate to minimise the risk of blocks wearing out over time. Wear levelling algorithms for flash memory vary greatly in effectiveness.
Basic wear levelling only concentrates on the dynamically used areas of flash, those containing data files which change, and not on the static areas of the flash used for system resources such as the operating system files.
Tuxera Flash Memory Drivers
SDC Systems have partnered with Tuxera to bring their best in class file system and flash memory driver products to the UK mobile, industrial, medical and embedded markets.
FlashFX Tera is a high performance flash memory driver that handles wear levelling, bad block management, and other vulnerabilities of NAND flash memory. Versatility allows fast integration with over 300 NOR, SLC and MLC NAND flash chips supported from major flash manufacturers including Intel, Micron, Samsung, Toshiba and Spansion.
Dynamic chip detection provides the run-time flexibility of using just one driver image, saving money and lowering supply-line risks during production when multiple flash devices are used as part of the hardware production.
The Tuxera products are provided in source code or object code format, and run in a variety of embedded and real time operating system (RTOS) environments. More details…
Find out more…
For more information on high performance flash memory drivers please complete the form below.