Post Go back to editing

[AD21489 sigma studio for sharc] update entire ssn won't work

Category: Software
Product Number: AD21489

Hi Everyone,

i'm trying to update a ssn after the dsp has been successfully boot and working normally. According the document <<SigmaStudio_for_SHARC_HostControllerGuide>> 7.2 Sending Schematic Code, i should do the following work:

1. Send Reset parameter: This prepares the SHARC Target for receiving the code
2. Send Version Information: This ensures compliance between the SHARC Target and the SigmaStudio Host.
3. Send Schematic Code: Algorithm code for the SHARC Target
4. Send Parameters: Parameters for the code to work with.
Once the entire data is sent to the SHARC Target running SigmaStudio, the SHARC Target can start processing the data.

but it doesn't work as expected, the new schematic has sine tone output, but there is no sound coming out.

i tried to capture the spi data of the SigmaStudio Tool in the (dev board + usbi) environment, and copy it to arrays, write these arrays from my controller, it still doesn't work. since the raw spi data is the same, i'm not sure what esle can be the problem. some info here:

  • i can switch from one ldr (the first sigmastudio project) to another ldr (the second sigmastudio project) to change schematic code, that works
  • but  7.2 Sending Schematic method  doesn't work for me
  • the spi raw data captured from (dev+usbi) environment match the document discription, i have two block schematic designed in my sigmastudio project, i should update these two ssn. the spi data shows it use  10 segment to update ssn
    • 1   reset of first ssn
    • 2   version of first ssn
    • 3   program data of first ssn , partial end
    • 4  program data of first ssn , end
    • 5  param data of first ssn
    • 6  reset of second ssn
    • 7  version of second ssn
    • 8   program of second ssn ,  partial end
    • 9  program of second ssn, end
    • 10 param of second ssn


this is the spi data capture, i tried to send the same data from my controller, but there is no effect. what should i do to debug or solve the problem? 

many thanks

  • Hi,

    The data to the target should be in "big endian".
    did you changed the endianness of the data before sending the data over SPI?
    Please refer "10.2 Endian Changes".

    You may also verify the data in target memory using corresponding SSn buffer allocated in target framework.
    The default demo example has,

    Code memory:
    uint32_t pm adi_ss_mem1[ADI_SS_SIZE_BLOCK_1];   

    Parameter memory:
    float32_t pm adi_ss_mem5[ADI_SS_SIZE_BLOCK_5];

    If the data for code and parameter copied properly to the target, then there wont be any issue. You can cross verify with SigmaStudio code and parameter data on the target memory. 

    The total packet length should be with in "1152" word.