Project Description

Let us talk now about the process to create FRBs and about the various operations that can be performed. In this article, some issues that could arise during the creation would be explained, together with study cases that a user could face when dealing with FRBs.


Combining multiple source files

An FRB can be a composition of different source files:

– There is no need that these file have the same format (they can be a mix of .bin, .hex, .srec…)

– No overlapping is admitted among different source files

This allows the user to have a single FRB file for different source files.

In practice, when dealing with an ISP target, most of the time the customer needs to flash different memory areas with different firmware.

There is no need to create multiple FRBs for the different areas; it is possible to combine the different source files in a single FRB, and through the correct flashing operations, the FlashRunner programming system will know where to place the different source files, combined in a single FRB.

Let us imagine an ISP target with multiple memory areas:

In the image above, you can see MEMMAP F (FLASH), MEMMAP D (DATA), and MEMMAP O (OTP).

Let us imagine a customer has three different source files for each MEMMAP.

It is possible to combine them in a single FRB and proceed by doing:


Editing source files

This functionality present in the advanced FRB manager is particularly useful when handling raw binary files (.bin) or already created FRBs.

Intel Hex and Motorola SREC files already have overhead inside that tells where data needs to be flashed, the size of them, and so on; the binary file instead is just a stream of data.

The edit button is useful to place the binary file where desired in the ISP target memory.

A window like the one below will appear when editing a source file uploaded in the advanced FRB manager:

At the end of the window, we have the memory areas of the ISP target. Let us suppose we want to place it at the beginning of DataFlash. The beginning address is 0x40100000, then let us modify the Target Address Setup section with this new address.

The size admitted for this area is 8KB as said in the Target Size Setup section: let us assume we want to program 4KB (h1000); let us put this in the window.

The window will appear now like this:

After the edit, the FRB will be generated from the binary file and will contain 4KB of data to be flashed into the DataFlash of the ISP target from address 0x40100000.


Cropping, duplicating and removing source files

There are other operations that are very useful when handling raw binary files or already created FRBs:

– Crop: it allows the user to cut and maintain only a certain size of data contained in the source file

– Duplicate: it allows the user to duplicate a block of data

– Remove: it allows the user to remove a block of data


User cases

The most frequent issues arising while creating an FRB file are:

– Source files are too big for the ISP target memory or source file is mapped in areas that are not present in the ISP memory

– Overlapping areas in the source files

First case is in red:

The source files are wrong: then create the right source file

The ISP target chosen is wrong; then select the right ISP target

ISP target and source file are ok: contact SMH support team

The second case is in yellow:

The source file is wrong: then create the right source file

One of the source files is the updated version: remove the older source file

It is the customer’s responsibility to choose the right data block to be flashed in that case; this means that different block of data is mapped into the same memory area and FlashRunner programming system cannot choose which is the correct one.