Post Go back to editing

Questions about Programming Code into SPI Flash with ADSP21479

Hi

After my code (work with ADSP21479) passed debug, I programmed the code into the SPI Flash Mem by the generated .ldr file in which I configured as followed:

https://ez.analog.com/cfs-file/__key/communityserver-discussions-components-files/397/bfc1bae0d746c87afc9c362d38a34b2f.html

After I programmed the code and tested the DSP boards, I got some questions as followed:

1. I used ADZS-USB-ICE/VisualDSP++ or a 3rd Party Programmer(JTAG port) to program the same Loader file generated by VisualDSP, but only part of the programmed DSPs work, say, about 50%.

2. When I ran the failed DSP under ADZS-USB-ICE and VisualDSP, and when build a project, it always ran by itself but not ran the code part. And some times I got following information:

https://ez.analog.com/cfs-file/__key/communityserver-discussions-components-files/397/3010.bfc1bae0d746c87afc9c362d38a34b2f.html

3. I found the good programmed DSP always work well, but the bad ones could work very few times during multiple running (Power On and DSP Reset). I checked one of the bad DSP board with a simple testing code that just generates pulses at Flag0; it worked only two times when I ran it for tens of times. Followed pictures show the same DSP board at the cases of work and not work after the DSP Reset:

(In the diagrams: the Yellow trace is DSP Reset, the Blue one is SPI Flash Data-out, the Purple one is SPI Clock, and the Green one is the Flag0 output.)

https://ez.analog.com/cfs-file/__key/communityserver-discussions-components-files/397/4137.bfc1bae0d746c87afc9c362d38a34b2f.html

Work case after the DSP Reset

https://ez.analog.com/cfs-file/__key/communityserver-discussions-components-files/397/5100.bfc1bae0d746c87afc9c362d38a34b2f.html

No work case after the DSP Reset.

4. When I built the Loader file, if I choose Release for the Settings for Configuration, the programmed DSP running got different result with ones under the emulator(ADSZ-USB-ICE)/VisualDSP.

Would you please check my questions and the attached files to findout the possible reasons that make the issue?

(I am not sure if you could see the pictures when I post, I also attached the posted pictures).

Please let me know should you need other information about my questions.

Thank you,

Ning

attachments.zip
Parents
  • Hi Ning,

    I understand that you are facing some booting issue in the ADSP-21479 processor. In order to assist you better with this issue please provided the details given below.

    1. Can you please clarify that you are using EZ-Kit or custom board?
    2. You mentioned, “When I ran the failed DSP under ADZS-USB-ICE and VisualDSP, and when build a project, it always ran by itself but not ran the code part. And sometimes I got following information:”. I can see that you have embedded an image here, but unfortunately I can’t able to view it. Can you please attach the image again?
    3. I can see in your “Loader Config1.png” that you are not using the default kernal while generating the ‘Loader(.ldr)’ file. Can you please provide the details about the modified Kernal file that you have used?
    4. Can you please try booting the processor using the Loder file which generated in ‘debug’ active configuration mode (In ‘Release’ mode VDSP builds a project with optimization enabled.)

    If you are using custom board, so in order to investigate this issue can you please do the following debugging steps.

    1. Boot Configuration Select pins (BOOT_CFG2–0) select the boot mode for the processor. The BOOT_CFG pins must be valid before RESET (hardware and software) is de-asserted. Please check  the custom board to make sure that the boot configuration pins are set properly for SPI master booting. The Boot Mode Selection table is given below.                                                                                                                   
    2. Ensure that the /TRST signal of the JTAG ICE is connected to board ground. Do not leave this signal floating. Letting this signal float may cause boot failures or other memory access failures.
    3. Ensure that you have selected the correct parameters while generating the .LDR file. Selecting an inappropriate parameter may cause the boot to fail. Ensure that the correct boot kernel is used before generating the loader (.LDR) file. If you are using a modified boot kernel, try using the default boot kernel supplied with VisualDSP++ together with an example application (like flag toggle) to confirm basic boot-loading.
    4. Verify the Power-Up Sequencing timing diagram which is mentioned in the ADSP-21479 datasheet. And make sure that is the processor is properly coming out of RESET.
    5. Make sure that the PLL is configured correctly. The default boot kernel may have the PLL configuration as per the EZ-KIT Lite board. This need to be changed if your application uses a different CLKIN. Check the CLKCFG signals and ensure that the PLL is not overdriven. Ensure that the ratio selected in combination with the CLKIN frequency does not exceed the core clock to a value greater than specified.

    Thanks & Regards
    Jithul

Reply
  • Hi Ning,

    I understand that you are facing some booting issue in the ADSP-21479 processor. In order to assist you better with this issue please provided the details given below.

    1. Can you please clarify that you are using EZ-Kit or custom board?
    2. You mentioned, “When I ran the failed DSP under ADZS-USB-ICE and VisualDSP, and when build a project, it always ran by itself but not ran the code part. And sometimes I got following information:”. I can see that you have embedded an image here, but unfortunately I can’t able to view it. Can you please attach the image again?
    3. I can see in your “Loader Config1.png” that you are not using the default kernal while generating the ‘Loader(.ldr)’ file. Can you please provide the details about the modified Kernal file that you have used?
    4. Can you please try booting the processor using the Loder file which generated in ‘debug’ active configuration mode (In ‘Release’ mode VDSP builds a project with optimization enabled.)

    If you are using custom board, so in order to investigate this issue can you please do the following debugging steps.

    1. Boot Configuration Select pins (BOOT_CFG2–0) select the boot mode for the processor. The BOOT_CFG pins must be valid before RESET (hardware and software) is de-asserted. Please check  the custom board to make sure that the boot configuration pins are set properly for SPI master booting. The Boot Mode Selection table is given below.                                                                                                                   
    2. Ensure that the /TRST signal of the JTAG ICE is connected to board ground. Do not leave this signal floating. Letting this signal float may cause boot failures or other memory access failures.
    3. Ensure that you have selected the correct parameters while generating the .LDR file. Selecting an inappropriate parameter may cause the boot to fail. Ensure that the correct boot kernel is used before generating the loader (.LDR) file. If you are using a modified boot kernel, try using the default boot kernel supplied with VisualDSP++ together with an example application (like flag toggle) to confirm basic boot-loading.
    4. Verify the Power-Up Sequencing timing diagram which is mentioned in the ADSP-21479 datasheet. And make sure that is the processor is properly coming out of RESET.
    5. Make sure that the PLL is configured correctly. The default boot kernel may have the PLL configuration as per the EZ-KIT Lite board. This need to be changed if your application uses a different CLKIN. Check the CLKCFG signals and ensure that the PLL is not overdriven. Ensure that the ratio selected in combination with the CLKIN frequency does not exceed the core clock to a value greater than specified.

    Thanks & Regards
    Jithul

Children
No Data