Tuesday, May 22nd 2018, 6:12am UTC+2

You are not logged in.

  • Login
  • Register

Dear visitor, welcome to SEGGER Forum. If this is your first visit here, please read the Help. It explains how this page works. You must be registered before you can use all the page's features. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

Date of registration: Jun 25th 2015

Posts: 24

1

Friday, September 4th 2015, 12:43pm

Flashloader, Flash visible twice

In the Fujitsu/Spansion/Cypress FCR4 family chips the internal flash is visible twice:
once on the AXI "BUS" interface (0x01000000..0x017FFFFF), and once on the TCM interface (0x00800000..0x00FFFFFF).

We are linking the application to use the TCM addresses.
When using J-Link commander and JFlash.exe, we give a binary and tell to put them on the AXI addresses - works nice.

However when using IAR EW we would have to change and use the IAR flashloader or, write our own flashloader that remaps and uses the flashloader in JLinkARM.dll.

Is there any option in J-Link to re-route addresses for flash download?
Veit_Kannegieser has attached the following image:
  • fcr4_fcflash.png

SEGGER - Erik

Super Moderator

Date of registration: Dec 20th 2011

Posts: 400

2

Tuesday, September 8th 2015, 10:36am

Can you please specify what target device you are using?

Quoted

However when using IAR EW we would have to change and use the IAR flashloader or, write our own flashloader that remaps and uses the flashloader in JLinkARM.dll.
Wouldn't be changing the linker file an option for you? This would still allow you to use the SEGGER flash loader. Anyhow, we will check if we can add the mirror address in the J-Link DLL so that the mapping is done automatically by it. Basically this is no problem but according to the user manual, the AXI_FLASH_MEMORY_SMALL/LARGE sectors have a different offset in between as the TCM_FLASH_MEMORY_SMALL/LARGE sectors.

- Erik

Date of registration: Jun 25th 2015

Posts: 24

3

Tuesday, September 8th 2015, 6:30pm

Hello Erik,
Can you please specify what target device you are using?

We are using the "Atlas-L" MB9DF125 and "Titan" MB9EF226 currently.

Quoted

Wouldn't be changing the linker file an option for you? This would still allow you to use the SEGGER flash loader.

We changed from AXI to to tighly coupled memory interface in the hope running with with zero waits, but of course we can change that
for a debug configuration.

Quoted

Anyhow, we will check if we can add the mirror address in the J-Link DLL so that the mapping is done automatically by it.

This would be very nice!

Quoted

Basically this is no problem but according to the user manual, the AXI_FLASH_MEMORY_SMALL/LARGE sectors have a different offset in between as the TCM_FLASH_MEMORY_SMALL/LARGE sectors.

The offset is 8 MiB:
0x0080_0000..0x00FF_FFFF TCM
0x0100_0000..0x017F_FFFF AXI
the layout of the sectors on read is exactly the same on both interfaces - we flash the TCM linked application (big sectors) and bootloader (small sectors) with J-Link to the AXI addresses.
However it is just not possible to flash over the TCM interface.

So for the FCR4 family it would just a base address remap.

many thanks for investigating this.

SEGGER - Alex

Super Moderator

Date of registration: Dec 18th 2007

Posts: 1,516

4

Tuesday, September 8th 2015, 6:45pm

Hi,

There is already a possibility to do something like this which can be easily extended to achieve what you are looking for.
Let me check if we can squeeze something in short term.


Best regards
Alex