NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.
TI FEE
Contents
- 1 Description
- 2 Features
- 3 Requirements
- 4 Configuration using HALCoGen
- 4.1 Step 1: Enable FEE Driver
- 4.2 Step 2: Configuring General FEE items
- 4.3 Step 3: Configuring FEE Blocks
- 4.4 Step 4: Configuring FEE Virtual Sectors
- 4.5 Step 5: Generate the code
- 4.6 Step 6: Create CCS project
- 4.7 Step 7: Include Corresponding F021 library and necessary include files from F021.
- 4.8 Step 8: Build the project and flash the software
- 5 Recommended Application Usage of FEE Driver
- 6 Release History
Description[edit]
TI FEE(Flash EEPROM Emulation) is a software driver used to read/write/erase data in embedded Flash memory based on TI's 65nm Flash process (F021). This driver emulates serial EEPROM on existing Flash memory. TI FEE uses F021 Flash API Library to perform required actions on Flash. For TI FEE to work correctly, projects should use F021 Flash API, version 2.0.0 or greater (http://www.ti.com/tool/f021flashapi).
Features[edit]
API's to Write, Read, Erase, Format on EEPROM bank of F021 Flash.
Requirements[edit]
Software[edit]
- Requires F021 v2.0.0 or later version
- HALCoGen 3.05.00 Release or later version
Hardware[edit]
- TMS570x/RMx
Configuration using HALCoGen[edit]
HALCoGen GUI can be used to generate configuration for TI FEE. Following are details steps to create & configure a new configuration using HALCoGen.
Step 1: Enable FEE Driver[edit]
Step 2: Configuring General FEE items[edit]
Step 3: Configuring FEE Blocks[edit]
In HALCOGen, it is possible to only configure 16 blocks. If project needs more blocks, add manually. Do not forget to change the macro TI_FEE_NUMBER_OF_BLOCKS in ti_fee_cfg.h.
Step 4: Configuring FEE Virtual Sectors[edit]
Step 5: Generate the code[edit]
Step 6: Create CCS project[edit]
Step 7: Include Corresponding F021 library and necessary include files from F021.[edit]
Step 8: Build the project and flash the software[edit]
Recommended Application Usage of FEE Driver[edit]
- Have TI_FEE_USEPARTIALERASEDSECTOR as STD_OFF
- Call TI_Fee_Mainfunction() once in 2 to 10 millisecond periodically.
- Classify FEE data Blocks based on Data criticality and the Rate of update and use TWO EEPROM approach.
- Have a Backup of FEE Data in Main Flash memory incase of missed block recovery
Release History[edit]
Version | Release Date | Additions/Modifications/Deletions |
1.0.1 | 11-Dec-2012 | First version |
1.0.9 | 17-May-2013 | Changes after internal testing |
1.13.00 | 15-Feb-2014 | Support for RM devices. Production Release. |
1.17.02 | 16-Feb-2015 | FLEE errata fix for SPNZ215A.Applicable for TMS570LS04xx, RM42x, TMS570LC43xx, RM57x, TMS570LS07xx, TMS570LS09xx, TMS570LS05xx, RM44Lx devices. |
1.18.02 | 03-Mar-2016 | Bugfix for "If sector copy operation is interrupted, during next initialization, FEE does not read the block offset address correctly". This problem is reported on TMS570LS07xx device but is also applicable for other devices.It is recommended to update FEE driver software to this version, if projects are using older versions. |
1.19.01 | 14-Oct-2016 | CRC wording changed Checksum since driver uses checksum algorithm.
Bug fix for "If FEE used a partially erased sector, FEE can read from unimplemented memory location. Code changes done to not to use a partially erased sector. Option “Check EEPROM Address Range” is removed from HALCoGen GUI. Address range will always be checked during read/write." Synchronous Write API updated to not to copy the block which is already copied. Format API modified to erase all configured sectors, if multiple sectors are combined to form a larger virtual sector. TI_FeeInternal_FeeManager modified to update block copy status of unconfigured blocks correctly. TI_FeeInternal_UpdateBlockOffsetArray modified to update write addresses correctly, if FEE did not find a valid write address. TI_FeeInternal_WriteDataF021 API updated for LE MCU’s for updating correct ECC. |