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

CODE MEMORY OVERLAP

I'm usig a SiLabs 'F065 in a project, and on the same board, I have a sensor that has an expiration date. I have a space way up at the end of the CODE area reserved to hold the date that the sensor was put in service:

Global code unsigned char inserv[5+1] _at_ 0xFBF0;  /* holds my inservice date */

One the unit is flashed, when the sensor is replaced, I simply reflash over that memory with the new in service date, using a simple console app that connects to the board using my jtag programmer. The problem is, now I get MEMORY OVERLAP errors down low in my CODE space:
            CODE    0000H     0003H     ABSOLUTE
* OVERLAP * CODE    0000H     0006H     ABSOLUTE
* OVERLAP * CODE    0000H     0006H     ABSOLUTE
* OVERLAP * CODE    0000H     0006H     ABSOLUTE
* OVERLAP * CODE    0000H     0006H     ABSOLUTE
* OVERLAP * CODE    0000H     0006H     ABSOLUTE
* OVERLAP * CODE    0000H     0006H     ABSOLUTE
* OVERLAP * CODE    0000H     0006H     ABSOLUTE
* OVERLAP * CODE    0000H     0006H     ABSOLUTE
* OVERLAP * CODE    0003H     0003H     ABSOLUTE
            CODE    0006H     0001H     UNIT         ?PR?UART2_ISR?UNUSED_ISR
            CODE    0007H     0001H     UNIT         ?PR?EXT_INT1_ISR?UNUSED_ISR
            CODE    0008H     0001H     UNIT         ?PR?TIMER1_ISR?UNUSED_ISR
            CODE    0009H     0001H     UNIT         ?PR?TIMER2_ISR?UNUSED_ISR
            CODE    000AH     0001H     UNIT         ?PR?SMB_ISR?UNUSED_ISR

These are interrupt handlers for all the unused interrupt vectors on my MCU. I make it a practive to handle all interrupts that should not be occuring with a dummy isr. I have all these dummy isr's banked on bank 3.

Why does a reserved block of CODE at 0xFBF0 overlap CODE at 0x001?

0