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.

Properties of C674x ROM!

Hi!

The CPU specs mention 1024 Kbytes of ROM memory to be present on C6747. Is this is strict read-only firmware and used to drive the chip or can this memory also be used to store user data? Could it be used to store the program to run on the CPU or is external flash of some kind necessary?

Thanks!
Atmapuri

 

  • The ROM memory is used to store the DSP bootloader code.  It cannot be used to store customer code.  There are several places you can store your code.  You can have your code in NAND flash, NOR flash, I2C EEPROM, or an SPI Flash/EEPROM.  You can also have another processor load your code directly (HPI boot), or you can have load the code through a serial port using the UART boot.  See "Boot Modes" in the device data sheet.

  • Dear Gus,

    Thank you for the clarification. Can any of the other flash systems be memory address mapped?

    Thanks!
    Atmapuri

  • By "memory address mapped" I assume you mean mapped directly to the CPU instruction or data memory space.  If so, you can only do this with NOR flash.  Meaning, the CPU can execute instructions directly out of NOR flash (assuming you use the "direct boot" option).  For the other flash types you need SW to transfer code to internal memory or volatile external memory.

  • Hi!

    I see. I would like to use the flash like this to simplify the storage of data in my application. Namely, when simple assignment of variable writes to flash, this can really save some time writing and debugging code. The reason why I started looking at ROM is exactly because of this feature. Executing code directly from flash would seem slow. I also feel a little disappointed that ROM is not usable for other purposes. I cant think of a special reason, why the bootloader should be hard wired, and we have an application where the ability to avoid the need for additonal flash would make a difference in price noteworthy. Considering the size of this ROM and features provided, it must be 95% empty also.

    About bootloaders. There is the built-in booloader, then there is flash writer, then there is U-Boot and finally there is user program. It took me quite a while to figure out what is booting where and what. I think there should be some preliminary information about how this works putting things in to perspective for newcomers.

    Thanks!
    Atmapuri

  • I'm surprised that you mentioned u-boot. That is used to boot Linux which should not be the case in DSP-only device.  For a DSP-only device you should be able to load your program directly using the ROM bootloader.  Your program will be stored in flash as either a direct image or encoded using the AIS format described in the bootloader app note.  It is true, that you will need a flash writer to load your code (AIS format or not) in external flash. For information on the bootloader refer to the following C6747 doc (if you haven't already): http://focus.ti.com/general/docs/litabsmultiplefilelist.tsp?literatureNumber=sprab04c.