This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Data not being written at proper location at flash using IAP

Dear Developers,
I am facing problems with IAP, on LPC2138 with Keil compiler. I have two problems with my system.

1)Problem of displacement: [Top priority problem]

I am having 4k Array (say RamArray[11][352] )which is stored at on chip SRAM, I want to copy this data at on chip Flash at sector no 8 [address 0x8000], I am passing values of source and destination pointers, after completion of flash write operation I found data being written at 0x8005 rather then 0x8000 .

2) Speed/Time:
Another issue is I found high flash write time, as per Philips data sheet it requires 1 ms to write 256 bytes. So it should require 208 mili sec to write 100 k data.

But in my system , it requires more then 400 mili sec to write 100 k data. How I can optimize this time?

Regards and thanks in advance,
Saurabh Pandya

Parents Reply Children
  • Dear Hans,
    Thanks for kind reply,

    Re# 1: I have gone through whole keil site, they have mentioned soem limitations of eval tools.

    few of them are..
    A] "The RealView Linker does not accept scatter- loading description files for sophisticated memory layouts."

    B] "The RealView Linker restricts the base address for code/constants to to 0xXX000000, 0xXX800000, or 0x00080000 where XX is 00, 01, ..., FF. This allows memory start address like 0x00000000 and 0x12800000."

    C] "It is not possible to generate position independent code or data"

    I have checked whole code, i dont think i am missing something of basic level. If you want to reviw i glad to put my code here.

    IS IT POSSIBLE THAT LIMITATIONS OF eval version of KEIL_ARM TOOL, are here, as i am using eval version of u vision 3.

    RE # 2: Yea, thats was my mistake, thanks.

    Please reply of query # 1