How to erase Flash in ADSP21489 Sharc processor

Hi All,

I am using ADSP21489 processor I loaded the code in flash using the below command

cldp -proc ADSP-21489 -emu ICE-2000 -driver "C:\Analog Devices\ADSP-21489_EZKIT-Rel1.0.0\21489_EZ-Board\Examples\Device_Programmer\serial\21489_m25p16_dpia.dxe" -cmd prog -erase affected -format hex -file D:\Karthik\BDL_ACU_140519\BDL_ACU_140519\Debug\BDL_ACU_140519.ldr"

here the file name is  D:\Karthik\BDL_ACU_140519\BDL_ACU_140519\Debug\BDL_ACU_140519 this is path of project.

Using the above command i loaded the hex file now I want to erase the Flash

Please assist me how to erase flash what is the process for erasing and how to check the flash is erased or not.

regards,

eswar.

Parents
  • 0
    •  Analog Employees 
    on May 24, 2019 2:55 PM


    Hi Eswar,

    Regarding," how to erase flash what is the process for erasing"

    cldp -proc ADSP-21489 -emu ICE-2000 -driver "C:\Analog Devices\ADSP-21489_EZKIT-Rel1.0.0\21489_EZ-Board\Examples\Device_Programmer\serial\21489_m25p16_dpia.dxe" -cmd prog -erase affected -format hex -file D:\Karthik\BDL_ACU_140519\BDL_ACU_140519\Debug\BDL_ACU_140519.ldr"

    In order to erase the flash, you can use "erase all" instead of "erase affected" while loading the code. The "erase all" will erase the flash completely.

    Regarding," how to check the flash is erased or not."

    Can you please have a look at the example available in the ADSP-21489 Board support package(BSP) to check the DSP. Please download and install the board support package for ADSP-21489 in the below download.analog.com/.../ADI_ADSP-21489_EZKIT-Rel1.0.0.exe

    Once you installed, you can find the example code in the below path.
    [Installation directory]:\Analog Devices\ADSP-21489_EZKIT-Rel1.0.0\21489_EZ-Board\Examples\Power_On_Self_Test\src

    Regards,
    Lalitha.S

  • Hi latha,

    thanks for your reply but you have not mentioned clearly the command.

    cldp -proc ADSP-21489 -emu ICE-2000 -driver "C:\Analog Devices\ADSP-21489_EZKIT-Rel1.0.0\21489_EZ-Board\Examples\Device_Programmer\serial\21489_m25p16_dpia.dxe" -cmd prog -erase all 

    this above command is enough to erase the flash or any thing is there.

    please let me know what is the full command to erase.

    regards,

    eswar 

  • 0
    •  Analog Employees 
    on May 30, 2019 11:47 AM in reply to Eswar@2019

    Hi Eswar,

    Can you please confirm are you trying to erase the flash before loading your application? If yes, please use the below command to erase and load the application into the flash.

    cldp -proc ADSP-21489 -emu ICE-2000 -driver "C:\Analog Devices\ADSP-21489_EZKIT-Rel1.0.0\21489_EZ-Board\Examples\Device_Programmer\serial\21489_m25p16_dpia.dxe" -cmd prog -erase all -format hex -file "D:\Karthik\BDL_ACU_140519\BDL_ACU_140519\Debug\BDL_ACU_140519.ldr"

    Please let us know if there any queries on this.

    Regards,
    Lalitha.S

  • Hi latha,

    thanks for your reply.

    But my problem when i am loading this command to processor it is telling below thing.

    Here what i understood when it is trying to load it is unable to create .ldr file,how to overcome from this issue.

    please assist me with any example to load the program with pictures or any document.

    will you please tell me that .ldr file it will generate automatically or not.

    regards,

    eswar.

  • 0
    •  Analog Employees 
    on Jun 8, 2019 10:47 AM in reply to Eswar@2019

    Hi Eswar,

    Please note that you have to generate a loader file(.ldr) file for your application. Once the loader file is generated you can load the LDR. In order to program the flash, please refer the “Using Loader Files” section in the “readme.html” available in the ADSP-21489 board support package. You can download and install the BSP (Board support package) for ADSP-21489 in the below link.
    download.analog.com/.../ADI_ADSP-21489_EZKIT-Rel1.0.0.exe

    Once you installed you can find the “readme.html” in the below mentioned path.
    [Installation directory]:\Analog Devices\ADSP-21489_EZKIT-Rel1.0.0\21489_EZ-Board\Examples\Power_On_Self_Test\readme.html

    For your reference, we copied the below procedure mentioned in "readme.html".

    1) Create a loader (.LDR) file that can be programmed into a flash device.
                1) Assuming your project is already loaded into CCES, go to the "Project" menu and choose "Properties", then "C/C++ Build", then "Settings", then "Build Artifact" tab.
                2) There you will see "Artifact Type". From the dropdown menu select "Loader File".
                3) Click on the "Tool Settings" tab and select "CrossCore SHARC Loader" then "General".
                4) For "Boot mode" choose "SPI flash" for serial or "Prom" for parallel.
                5) For "Boot format" choose "Intel hex".
                6) For "Output width" choose "8-bits".
                7) "Prom start address" should be blank.
                8) "No kernel" should be unchecked.
                9) "Use default kernel" should be checked.
               10) Click "OK".
               11) Rebuild the project to generate the LDR file.
           
    2) Download the LDR file into flash using the Command Line Device Programmer (CLDP) application.
    >> Please refer to the CLDP help for more information. Note, there are many options when using the CLDP (including defining your connection type, driver file, loader file, etc. Here is a sample command line to program the POST loader file to the parallel flash on the EZ-Board using an HPUSB-ICE emulator:
    cldp -proc ADSP-21489 -emu hpusb -driver "C:\21489_EZ-Board\Examples\Device_Programmer\parallel\21489_m29w320_dpia.dxe" -cmd prog -erase affected -format hex -file "C:\21489_EZ-Board\Examples\Power_On_Self_Test\Debug\21489_post.ldr"

    We also recommend to refer the "FAQ: How do I program flash on my target board using CrossCore Embedded Studio" which might be helpful.
    ez.analog.com/.../faq-how-do-i-program-flash-on-my-target-board-using-crosscore-embedded-studio

    Hope this helps!

    Regards,
    Lalitha.S

Reply
  • 0
    •  Analog Employees 
    on Jun 8, 2019 10:47 AM in reply to Eswar@2019

    Hi Eswar,

    Please note that you have to generate a loader file(.ldr) file for your application. Once the loader file is generated you can load the LDR. In order to program the flash, please refer the “Using Loader Files” section in the “readme.html” available in the ADSP-21489 board support package. You can download and install the BSP (Board support package) for ADSP-21489 in the below link.
    download.analog.com/.../ADI_ADSP-21489_EZKIT-Rel1.0.0.exe

    Once you installed you can find the “readme.html” in the below mentioned path.
    [Installation directory]:\Analog Devices\ADSP-21489_EZKIT-Rel1.0.0\21489_EZ-Board\Examples\Power_On_Self_Test\readme.html

    For your reference, we copied the below procedure mentioned in "readme.html".

    1) Create a loader (.LDR) file that can be programmed into a flash device.
                1) Assuming your project is already loaded into CCES, go to the "Project" menu and choose "Properties", then "C/C++ Build", then "Settings", then "Build Artifact" tab.
                2) There you will see "Artifact Type". From the dropdown menu select "Loader File".
                3) Click on the "Tool Settings" tab and select "CrossCore SHARC Loader" then "General".
                4) For "Boot mode" choose "SPI flash" for serial or "Prom" for parallel.
                5) For "Boot format" choose "Intel hex".
                6) For "Output width" choose "8-bits".
                7) "Prom start address" should be blank.
                8) "No kernel" should be unchecked.
                9) "Use default kernel" should be checked.
               10) Click "OK".
               11) Rebuild the project to generate the LDR file.
           
    2) Download the LDR file into flash using the Command Line Device Programmer (CLDP) application.
    >> Please refer to the CLDP help for more information. Note, there are many options when using the CLDP (including defining your connection type, driver file, loader file, etc. Here is a sample command line to program the POST loader file to the parallel flash on the EZ-Board using an HPUSB-ICE emulator:
    cldp -proc ADSP-21489 -emu hpusb -driver "C:\21489_EZ-Board\Examples\Device_Programmer\parallel\21489_m29w320_dpia.dxe" -cmd prog -erase affected -format hex -file "C:\21489_EZ-Board\Examples\Power_On_Self_Test\Debug\21489_post.ldr"

    We also recommend to refer the "FAQ: How do I program flash on my target board using CrossCore Embedded Studio" which might be helpful.
    ez.analog.com/.../faq-how-do-i-program-flash-on-my-target-board-using-crosscore-embedded-studio

    Hope this helps!

    Regards,
    Lalitha.S

Children
  • Hi,

    I am using ADSP21489 with 400MHz pll clock speed at this time I am trying generate 20MHz SPI clock but output of SPI slave data is corrupting when low clock speed lessthan 15Mhz slave is giving correct data.

    Again I configured PLL to 350MHz at this time SPI slave data is courrepting in less speed that means <5MHz.

    But in ADSP21489 datasheet SPI clock speed is 25MHz.I  am using SPI slave is AD7266 it supports 25MHz clock speed.

    I am confusing how to configure SPI clock in different clock rate.

    will you please assist me how to set SPI clock with different speeds.

    Below example code is initializing of SPI and PLL is 400MHz

    void SPI_InitForADC(unsigned int SPI_Flag)
    {
    /* Disable SPI so that earlier SPI configuration will be erased then below configure SPI as required for New SPI-ADC Device */
    Disable_SPI();
    *pSPIBAUD = 8;        //BNaud rate 12.5Mhz   /* Setup the baud rate 25MHz =400Mhz/(4*4)
    *pSPIFLG = (SET_DSXEN_BITS | SPI_Flag);  /* Setup the SPI Flag register using the Flag specified in the call */
    *pSPICTL = (AUTOSDS | SPIEN | SPIMS | WL32 | MSBF | TIMOD1 | SMLS | GM );// | CLKPL);// | GM); /*CPHASE | CLKPL | TIMOD2 |*/ /* Now setup the SPI Control register */
    }
    regards,
    eswar
  • 0
    •  Analog Employees 
    on Dec 27, 2019 12:47 PM in reply to Eswar@2019

    Hi Eswar,

    Please refer the following link, ez.analog.com/.../what-is-the-maximum-speed-of-spi-clock-with-different-pll-in-adsp21489

    Regards,
    Anand Selvaraj.