This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello DSP's people I have a question.
In the past I worked with C6416.
About DSP's boot (C6416) from flash: there are the limit of 1Kbytes (on firmware) and so it's necessary a secondary boot: DSP downloads 1Kbytes from flash, this is the secondary boot loader written by the user. When this secondary boot loader is in internal RAM, DSP starts and execute this secondary boot loader that downloads the entire firmware from flash (without limit of 1 kbytes).
Ok, no problem, I worked with that.
Now I work with C6455 and we have to do boot from flash.
In C6544 we have internal ROM (from 0x0010.0000 to 0x007f.ffff) with code for boot.
1) It's necessary in this DSP a secondary boot loader when my firmware is greater than 1kbytes?
2) There are some limitation like in C6416?
3) the code in internal ROM is protected? Can I overwrite this code? I think no....
Thanks for every response ti my questions and for every suggestion about boot on C6455.
Bye Stefano
Booting on the 6455 is described in the Bootloader User's Guide. What boot mode are you using? If you're still booting from parallel NOR flash then it's slightly different as described in the doc. The boot ROM simply branches to the start of NOR flash and your code would start executing directly from there. Generally it would be assumed that you would have a bootloader residing in the start of NOR flash to initialize the PLL and DDR interfaces and then copy your code from flash to RAM for execution. Although it is possible to run your application code directly from NOR flash I would not recommend it as it will be slower than DDR.
The internal ROM is not programmable. It is manufactured into the device.
Ciao Brad
thanks for your replay.
Now I'm working with DSK of C6455, here we have DSP with flash. I would understand the boot procedure in this configuration: boot from FLASH.
1) In this configuration it's necessary the use of a secondary boot loader like in C6416?
2) Is there some limitation of my firmware (1 Kbytes like in C6416)?
Thanks!
Stefano
Stefano said:1) In this configuration it's necessary the use of a secondary boot loader like in C6416?
It's not strictly required but I recommend it.
Stefano said:2) Is there some limitation of my firmware (1 Kbytes like in C6416)?
No.
Ok, Brad, your response is clear.
Last question, sorry.
I have a project: I compile this project with a secondary boot loader and I generate .hex file (with hex6x utility).
Can I make this for C6416 (boot from Flash) and for C6455 (boot from Flash) in same manner?
The only difference is about addressing of Flash: 0x6400.0000 for C6416 and 0xB0000000 for C6455 (I have to change the .cmd file for hex6x utility).
It's right?
Thanks
S.
Stefano said:Can I make this for C6416 (boot from Flash) and for C6455 (boot from Flash) in same manner?
Yes, it would be very similar. The boot loader itself would need to be linked to run at address 0xB0000000 since it executes directly from flash. In the 6416 the first 1k bytes were copied to address 0 and so it was assumed to run from address 0.