problems upgrade firmware online on sharc 21479.


    Our system is built by an ARM processor and Sharc 21479. The two processors communicate via SPI, and ARM connect to the second SPI on Sharc 21479.

   I set the Sharc 21479 boot mode  in SPI flash. Now I want to upgrade the 21479 firmware through ARM processor.  First of all, I  create a testing loader file by CCES,

 The  loader general setting is: 

                                boot mode -------- SPI flash

                               boot format --------- ASCII

                              output width -------- 32bits

After build the project I get the testing .ldr file. Secondly, I read the ldr file in ARM system, and transmit it word by word to the 21479 through SPI, I can get these data right in 21479.

I want to known after I can the ldr data in 21479, how can  I load it to the flash memory so  as to achieve to  upgrade the 21479 firmware? Or I want to known if  this is the right way to upgrade the 21479 firmware?  Thanks.

      Best wish.



  • 0
    •  Analog Employees 
    on Oct 9, 2020 10:54 AM 1 month ago


    I understand that you want to overwrite the flash with upgraded firmware. The Host is ARM and the slave device is ADSP-21479. Please correct if my understanding is wrong.

    If you want to write to flash and perform SPI master booting of ADSP-21479, you can simply program the flash by connecting to emulator.

    On the other hand, if you want to send ldr from ARM, I would suggest you to perform a SPI Slave boot method where an Host will send the application to slave device(ADSP-21479) and the slave will boot. For upgrading the firmware in flash, you can develop a flash read/write code that contains the actual firmware to be upgraded.

    1. Create a flash read/write code that contains the ldr data of the firmware upgrade application. The ldr of the firmware application must be in SPI master boot format.
    2. Create ldr for the flash read/write code as per SPI Slave boot format.
    3. Set ADSP-21479 in SPI Slave boot mode.
    4. Send the ldr from ARM to SHARC.
    5. After SPI Slave boot is successful, change the ADSP-21479 to master boot and reset the board. The flash will be overwritten with upgraded firmware and the processor will boot on reset.

    This is one of the methods. However, if you wish to use any other method you can use that as well.

    For more details regarding SPI Slave boot, please refer the application note(EE-177)

    Please let me know if anything is unclear.

    Anand Selvaraj.