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.

Booting the DSP after the ARM

We have a design that has a unique booting scheme.  Right now, we are only using the ARM side of the DaVinci.  But, we are looking at the possiblity of using the DSP side for some of our image processing needs to offload the ARM (some examples of this would be appreciated, by the way).  Our board contains six DaVinci DM6446 processors.  One is the master and the other 5 are slaves.  The master processor boots from NAND flash into DDR2 RAM.  The other processors are set to boot via HPI and the master copies the main program directly into DDR2 memory on the slaves.  My question is this. Can the slave processors then boot their DSPs from DDR2 memory since they don't contain FLASH or other EMIF device using the DSPBOOTADDR register?

  • I am not too familiar with HPI boot mode or HPI in general (disclaimer), but in general in there is the necesary hardware connection to HPI interfaces and the ARM master can do the necessary boot hand-shaking (I do not see why not), then this should be possible.  I imagine this should be similar to serial boot mode. 

  • BMillikan said:
    But, we are looking at the possiblity of using the DSP side for some of our image processing needs to offload the ARM (some examples of this would be appreciated, by the way).

    For examples you may want to take a look at the Codec Engine examples in dvsdk_1_30_01_41\codec_engine_2_00_01\examples as these provide a good starting point for using the DSP from the ARM over Codec Engine. You can also find additional examples in dvsdk_1_30_01_41\demos\dm6446 which are the demos that run out of the box, however the source to the DSP side codecs is not included with these.

    BMillikan said:
    Can the slave processors then boot their DSPs from DDR2 memory since they don't contain FLASH or other EMIF device using the DSPBOOTADDR register?

    Certainly, you do not need to have a flash or AEMIF device attached to the DM6446 to boot the DSP, even in a typical case where you boot Linux from flash on the DM6446 the DSP still gets booted out of DDR2 by the ARM. For example you can still use the DSP when booting the DM6446 over TFTP and NFS which does not use the flash at all (apart from U-Boot, which could be loaded other ways such as serially as Juan mentioned).