The Flash Memory Block (FB) Builder in SmartGen enables you to configure the entire flash memory block. You can:
Add analog system initialization data
Add initialization clients
Add Fusion RAM clients that require initialization
Partition non-volatile memory for data access
Specify the sizes of the partitions
Specify the memory contents for partitions
Flash Memory Block Builder
The Flash Memory Block Builder supports the following clients:
Each client spans a minimum of one page (128 bytes) and can go up to 2048 pages, based on the number of free pages available. The analog system itself does not take any of the regular pages; it is stored entirely in the reserved pages.
The System Grid provides an overview of the system.
Client Type - The type of the client that is added to the system.
Client Name - The name of the client. It must be unique across the system.
Start Address - The address at which the client starts. It must be on a page boundary. Clients cannot have overlapping start addresses.
Word Size -
Page Start - This is the page on which the start address begins or ends. You can modify either the start address or the start page.
Page End- This is computed based on the word size and the number of words in the client.
Initialization Order - The order in which the clients' required initialization is written with the data from NVM. If an analog system is present, it will be initialized first. If any clients must save their data to the NVM, the save order is the same as the Initialization Order.
Initialization Cost - The number of Initialization Enables used by a given client. An Analog System client has an Init Cost of 4. A RAM client has an Init Cost equal to the number of RAM blocks. A regular initialization client has an Init Cost of 1. The data storage client has no Init Cost.
The total init cost must be less than or equal to 64.
Lock Start Address - You can specify this option if you do not want the system to change your start address for any reason.
Optimize - Click this button to resolve the conflicts on overlapping base addresses for clients. This operation will not modify the base addresses for any clients that have their base address locked. It also de-fragments the memory.