cancel
Showing results for 
Search instead for 
Did you mean: 

Put boot Vect on RAM and the rest on FLASH ??

shinnlin
Associate II
Posted on July 15, 2005 at 07:10

Put boot Vect on RAM and the rest on FLASH ??

4 REPLIES 4
shinnlin
Associate II
Posted on March 09, 2005 at 13:55

Anyone know how to setup STR7 to put only boot VECT on RAM and the rest codes on FLASH ?

Under this condition, use RAM boot or FLASH boot ?

I failed to configure scatter file and boot mode setting for this..

Thanks in advance !!

ballball
Associate
Posted on March 10, 2005 at 07:16

Hi RISC

I m trying to understand the scatter file with the Realview. i have done some example and i need your confirmation.

Is it possible to do this only by Enabling ''GBLL remapping'' and ''GBLL remap_ram'' in the 71x_init.s file.

and with the following scatter file.

FLASH 0x40000000 0x4000

{

FLASH 0x40000000

{

71x_vect.o (Vect, +First)

71x_init.o(Init)

* (+RO)

}

RAM 0x20000100 0x1000

{

* (+RW, +ZI)

}

}

i think that with this scatter file only the exception vector table and the interrupt vecor tavle will be copied into RAM and not all the 71xvect.s

Is it possible to use the your scatter file in the case of the FLASH boot.

B.Rs

ballball
Associate
Posted on March 30, 2005 at 08:43

thanks Ibtiss for you help.

but what I want to do with the prposed scatter file is to put all the vector table in flash and using the 71x_init.s functionalities(''GBLL remapping'' and ''GBLL remap_ram) to remap RAM on address 0x0 and to copy vector table on RAM then when the program is executed and if an interrupt request is generated the PC will be at address 0x18 which will send him to the real address of the IRQ handler in FLASH.

For RISC , I used 0x20000100 rather than 0x20000000 because if using 0x20000000 and copy the vector table in the RAM i think that some RW and ZI data will be delated.

Ibtiss what do you think

Regards.

jkwon
Associate II
Posted on July 15, 2005 at 04:44

Hello!!!

I want to update user code program using serial(iap function).

- Bank0.Sector0 --- > IAP function

- Bank0,Sector1,2,3,4 --- > user code

Reference> Document : ''STR71x In-Application Programming using UART'' page7 --- > [user code must provide a software

remap of the RAM to the address 0x0 and copy the exception vectors to this same address.]

current action

1. iap pragramming by realview ice-- >ok

2. user code Program update by serial ---> ok

3. example1) Normal action after reset (interrupt disable)---> ok

example2) no action after reset(interrupt enable) -------> fail

i must use example2

1.scatter file(user code)

FLASH 0x40000000 0x40000

{

FLASH 0x40000000 0x40000

{

71x_init.o(Init)

* (+RO)

}

RAM 0x20000000 0x10000

{

71x_vect.o (Vect, +First) // interrupt vector

;71x_it.o (+RO)

* (+RW, +ZI)

}

}

-----

2. 71x_init.s(user code)

-----

; define remapping

; If you need to remap memory before entring the main program

; uncomment next ligne

GBLL remapping

; Then define which memory to remap to address 0x00000000

; Uncomment next line if you want to remap RAM

GBLL remap_ram

; Uncomment next line if you want to remap FLASH

; GBLL remap_flash

; Uncomment next line if you want to remap the external memory

; GBLL remap_ext

---

I send program source.

How must I do?

[ This message was edited by: jkwon on 15-07-2005 08:15 ]

[ This message was edited by: jkwon on 15-07-2005 08:17 ]

________________

Attachments :

flash_update.zip : https://st--c.eu10.content.force.com/sfc/dist/version/download/?oid=00Db0000000YtG6&ids=0680X000006HtP7&d=%2Fa%2F0X0000000aPY%2FMENYsHWkqvM7LQxExciMl_EqodPuCLnWSZ2T2xJHzMI&asPdf=false