I want to run an application from ROM, that means pull out the JTAG plug, reset the device and it runs on itself. This should be no problems, since many documentation papers of this procedure are available. But in many points the documentation differ: 1) Which binaries do I have to download? Ok, for the bootloader, it’s the rom.bin file (romImage\rom.bin). But for the application, is it image.bin or rom.bin? The BSP Porting Guide says rom.bin, the ‘NET+OS - Getting Started.PDF’ says image.bin. 2) In what order do I have to proceed? First, download the bootloader binary. The ‘NET+OS - Getting Started.PDF’ tells me to re-run naftpapp after that and download the application binary. But if i do so, the bootloader in Flash will be overwritten (I stepped through naftpapp to check this). 3) When debugging, the valid bit of CS0 is inactive. How can the application run from flash, when the flash’s chip select is not valid? Thanks for any hint! stef
I try to answer some of my questions myself, absolutely not sure I’m right: 1) The application’s rom.bin is for execution out of the Flash when I don’t use Flash as NVRAM. The image.bin is the compressed image of rom.bin. That’s why image.bin has a header, and rom.bin has not. The header contains information about where to place the decompressed application. 2) The application’s rom.bin runs for its own, without any bootloader. It’s placed at the start of the Flash memory. The image.bin needs the bootloader to decompress it. The bootloader’s rom.bin is placed at the start of the Flash memory. The image.bin is placed at the address specified in its header. 3) Question three is still unanswered… But I noticed some other srange behaviour: I expect the data in RAM at Address 0x08004000 to be the same as in rom.bin because: rom.bin -> is compressed to image.bin image.bin -> is downloaded to Flash Sector 4, address 0x02010000 (since flashAddress in the image header is 0x00010000) Flash 0x02010000 -> is decompressed to RAM 0x08004000 (since ramAddress in the image header is 0x08004000) The first 64 byte of the RAM correspond with the rom.bin but then they differ and there’s no similarity between them. I watched the Memory when the execution stops at Reset_Handler. My setup: - I am using the development board with the Net+50 BGA. - The software I am trying to download is the template application with the net50bga_a BSP. I didn’t make any changes on these files, except building them. Either the linker scripts and target setup script net5032b.ocd. - After downloading image.bin and reset (by the board’s reset button), the green led goes on. Same behaviour if I reset again and again. But when I turn off power for some seconds, it don’t do nothing anymore. Do I do anything the wrong way? Do I have to make any changes in the linker scripts or the target setup script?