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.

write boot-image to NOR on custom board

Hello,

I am designing a custom board using a C5515 DSP. We would like to load our boot image from NOR memory. However, I do not know how to burn the boot image into the NOR memory on our board. With the EVM, I used the instructions at: http://processors.wiki.ti.com/index.php/C5515_Boot-Image_Programmer#How_to_program_a_boot_image_onto_C5515_EVM. However, I don't know what resources are needed to do this on a custom board. How do I replicate this functionality?

Thank you

  • You should be able to use the same programmer program from the link to program your NOR. Also, refer to C5515 Bootloader Apps Note - SPRABD7 for more info on NOR booting.

    Regards.

  • Steve,

    thanks for the answer. However, that does not really address the issue, since i am not using the EVM; I am designing a custom board. The programmer tool uses a usb interface. What hardware does my board need to get the boot image from my PC to the NOR chip? Do I need a JTAG? I am drawing up the schematics for my device, so I need to know what I need to use to burn the image. I am basing this off of the C5515 ezDsp and EVM schematics available from Spectrum Digital.

    Thanks!

  • Adam,

    Download the source code for the TI programmer from here:  http://code.google.com/p/c5505-ezdsp/downloads/detail?name=programmer_c5515evm_ccs4.zip

    Modify the NOR flash parameters in the source code, as necessary, to match the NOR flash on your custom board.  Note that if your flash part is different from the one on the EVM, you may find it easier to use the 'nor_flash.h/.c' file instead of the 'norflash_c5515evm.h/c' files, since the former uses CFI to detect your flash part.  Change the 'nor_flash_init()' function, as needed.  Here's the code to use it:

          /* Initialize the device */
          nor_flash_init(ChipSelect);
          flashGetDeviceData(&NorBootFlashDeviceData);
          printf("NOR Flash Mfgr ID: 0x%02x\n", NorBootFlashDeviceData.MfrId);
          printf("NOR Flash Dev ID:  0x%04x 0x%04x 0x%04x\n", NorBootFlashDeviceData.DevId[0],
                                                              NorBootFlashDeviceData.DevId[1],
                                                              NorBootFlashDeviceData.DevId[2]);
          printf("NOR Flash Sector Map: \n");
          for (i = 0; i < FLASH_NUM_SECTOR_MAP_ENTRIES; i++)
          {
          	printf("    %3ld  0x%04lx\n", NorBootFlashDeviceData.SectorMap[i].NumSectors,
          	                              NorBootFlashDeviceData.SectorMap[i].SectorSize);
          }
          
          READ_N_WORDS = nor_flash_read_n_words;
          WRITE_N_WORDS = nor_flash_write_n_words;

    Recompile and run the programmer project from CCS using your JTAG debugger.

    -Jeremy

  • Other than the SW modification pointed out by Jeremy, the HW you need is JTAG.

    If you refer to C5515 ezDSP schematic from Spectrum Digital, there is the USB/JTAG on page 3 and page 13. C5515 is on page 3 and 4.

    Regards.