This guide is for those who want to implement a SafeFLASH NOR driver for Serial Peripheral Interface Flash Interface (SPIFI) devices. This is for use with HCC's SafeFLASH file system. SPIFI provides an interface to external serial flash memory. The serial flash appears in the microcontroller’s address space and can be accessed in standard RAM fashion.

This diagram shows the structure of the file system software:

This diagram shows:

  • The main SafeFLASH package – this provides the file API and intermediate file system. This is described in the the HCC SafeFLASH File System User Guide.
  • The NOR flash driver – the generic device driver for NOR flash, provided by the base NOR package. This driver handles issues of FAT maintenance, wear leveling, and so on. It is described in the HCC SafeFLASH File System NOR Drive User Guide.
  • The NOR physical handler – provided by this module, this performs the translation between the driver and the physical flash hardware. This guide shows how to add this to the build. Using the available sample drivers as a model, you can create a driver that meets your specific needs.
  • The serial flash – this can be accessed in the standard random access way.


  • In similar HCC products the physical driver is the specific flash chip driver which includes the physical interface handler. However, here this is separated out because the microcontroller manufacturer has provided a special software library for interfacing these devices.
  • HCC Embedded offers hardware and firmware development consultancy to assist developers with the implementation of flash file systems.