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.

C6455 boot options for 32-bit boot from FLASH

In the TMS320C645x DSP External Memory Interface (EMIF) documentation is appears that the device powers up wanting to boot via 8-bit mode on the EMIF when booting from NOR FLASH.  In this application we would like to boot with a NOR FLASH at 32-bit bus width. Is this possible? If not, would the best alternative be to partially boot from an I2C EEPROM, put the DSP into 32-bit FLASH mode then proceed with a full boot at 32-bit bus width?

 

Bryan Busacco.

  • Bryan Busacco said:
    In this application we would like to boot with a NOR FLASH at 32-bit bus width. Is this possible?

    Since the EMIFA boot mode defaults to 8 bit, you cannot boot out of a 32 bit wide device, at least not by using 32 bit wide boot code. You could also argue that this is possible by simply writing into the NOR flash like it is an 8 bit device for at least the initial boot loader that needs to execute, i.e. you use every fourth byte in the NOR for the code you need to be able to run at first. This has the down side of wasting 3/4 of the space that contains your initial boot loader (the rest of your code can use the full 32 bits), and lowering the loading performance, but in most systems these trade offs are acceptable.

    Bryan Busacco said:
    If not, would the best alternative be to partially boot from an I2C EEPROM, put the DSP into 32-bit FLASH mode then proceed with a full boot at 32-bit bus width?

    This is certainly an alternative, and would work fine, though it may be more effective to simply put the initial boot code that puts the DSP into 32 bit EMIFA mode into every fourth byte of the beginning of the NOR, unless your design happens to have an I2C EEPROM in place already.