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.

Understanding Core Grouping on 6670 DSP

Hi,

I am working on 6670 Multi core FFT test project using EVM6670LE. I can run the project successfully in synchronous mode by grouping all the cores as shown below(CCSv6). Same code is loaded into the four cores. I am trying to understand the execution order of the cores. Core 0 is responsible for enabling power for FFT co-processor. So Core 0 should run first in order for the other cores to execute the FFTC code.

1. So can someone explain me the sequence in which the cores run when I run the entire group ?

2. Is there a way to configure the order of execution of cores ?

Thanks

Hari

  • Hi Hari,

    Please refer below wiki for execution order,

    Thank you.

  • Hi Raja,

    I looked at the wiki referred by you. I did not find any information specific related to the execution order of cores. I found that debug context switches to first core listed in the debug view but not anything specific to order of execution.

    Thanks
    Hari
  • Hi Hari,
    If the target supports synchronous execution (C6670 does) and the cores are in a fixed group, then the all cores should execute at the same time. Otherwise, synchronous execution cannot be guaranteed and same with the order of which cores are executed (cannot be controlled). If you wish to ensure the first core executes before the others, then you should exclude that core from the group and execute it first, then execute the group.

    Thanks
    ki

  • Hi Ki,
    Thank you for the answer.



    I could see that from CCS5 onwards, there is no option to enable " enable synchronous mode". i.e.,

    "CCSv5 does not have a button to enable synchronous operations on all CPUs in debug view. User can create synchronous groups by selecting more than one (or all) cpus, right clicking and selecting "group". This action will create a grouping of CPUs. Selecting the group node and executing load program,run, halt, step will issue the command to all cpus that belong to that group."

    And for creating fixed groups, I could not see "Set Debug Scope" feature when we press right click with mouse among cores. So, can we assume that they are in fixed groups in CCS5.5?



    Could you please comment here on the above question from another e2e customer?

    Thank you.
  • Hi Raja
    My apologies, there was some issue with the wiki page where it was redirecting to some old content. I updated it. It should have the correct information for v5 now.

    Thanks
    ki
  • Hi Ki,
    Thank you.
  • Hi Ki,

    I see two different options for grouping the cores 1. Group core(s) and 2. Sync group core(s) on CCSv6.1. I don't see Sync group core(s) option in the above wiki.

    Above ccsv5 wiki link says a 'Fixed Group' is preferred to ensure synchronous execution of the group. Here Group core(s) option is used to create a fixed group.

    So on CCSV6 what is the difference between 1. Group core(s) and 2. Sync group core(s) ? Is there a wiki for CCSv6 as well ?

    Here is the screencapture.



    Thanks
    Hari