Flash and EEPROM Memory

The EM510 has 512KBytes of internal flash memory and 2048 bytes of EEPROM memory (see Specifications and Ordering Info).

A portion of the internal flash memory is used to store the TiOS firmware. When you are performing a firmware upgrade it is this memory you are saving the firmware binary into.

The rest of this flash memory is available to your Tibbo BASIC/C application. The internal flash memory cannot be used as a flash disk. On the E510, the fd. object (see TIDE, TiOS, Tibbo BASIC, and Tibbo C Manual) requires an external flash IC.

As shown on the schematic diagram below, this flash IC is ATMEL AT45DB041. When connected, this flash IC is used exclusively by the flash disk (fd.) object and provides 1MB of storage. When the flash disk (fd.) object is enabled, GPIO1, GPIO3, and GPIO4 are automatically handled by TiOS and your application should not attempt to manipulate these lines at the same time. The fd. object is enabled in the Project Settings dialog of Tibbo IDE software. To enable, click on the Customize button (of the Project Settings dialog) and set "Flash disk (fd.) object" to "Enabled."


The EEPROM is almost fully available to your application, save for a small 32-byte area called "special configuration area". The EEPROM is accessed through the stor. object (see TIDE, TiOS, Tibbo BASIC, and Tibbo C Manual). Details on the special configuration area are provided in the Platform-dependent Programming Information section inside the EM510 platform documentation (same manual).

note_warning-wtOn the advice of one of our customers we are giving you the following reminder: Like all other EEPROMs on the market, EEPROM ICs used in Tibbo devices allow for a limited number of write cycles. As the Wikipedia article on EEPROMs (https://en.wikipedia.org/wiki/EEPROM) states, the EEPROM " ...has a limited life for erasing and reprogramming, now reaching a million operations in modern EEPROMs. In an EEPROM that is frequently reprogrammed while the computer is in use, the life of the EEPROM is an important design consideration ." When planning to use the stor. object, please carefully consider if the planned mode of EEPROM use will allow the EEPROM to work reliably through the entire projected life of your product. For more information see Prolonging and Estimating EEPROM Life.

Like all other flash memory devices on the market, flash ICs used in Tibbo products only allow for a limited number of write cycles. As the Wikipedia article on flash memory (https://en.wikipedia.org/wiki/Flash_memory) explains, modern flash ICs still suffer from comparatively low write endurance. In Tibbo devices, this endurance is around 100'000 write cycles per sector. When you are using the flash memory for file storage, the fd. object employs sector wear leveling to maximize the life of the flash IC (but the life still remains limited). If your application employs direct sector access, then it is your job to plan the application around the life limitations of the flash memory. For data that changes often, consider using the EEPROM memory instead. EEPROMs have much better endurance.