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.

DSP Algorithm Development in CCS

Other Parts Discussed in Thread: TVP5147

Hi, all

I've got some questions about the DSP algorithm development in CCS.

 

I have a DM6467.

I read some documents. It seems in the dual core platform, Arm usually controls peripherals while DSP implements algorithm like encoders or decoders. Usually, we develop algorithm in CCS, get the .lib file or .ax64p, make it compliant to XDAIS or XDM, get the DSP Server (.x64P or .out). Then ARM assigns tasks to DSP via Codec Engine and gets the result back.

My question is about algorithm development phase in CCS.

In this phase, is it possible for DSP to control the peripherals? like Dual Video Decoder TVP5147 and HD/SD Video Encoder?

I'd like to set some breakpoints in my program in CCS. It's better to get real signals, instead of local files. e.g, in pattern recognition, I may set a breakpoint when sth is found. Is it possible?

Actually, I'm quite used to single-DSP platform, on which DSP controls everything in CCS.

 

thanks.

  • Vincent,

    We can try to help with the breakpoint question and then move the thread back for the other question.  

    "is it possible for DSP to control the peripherals? like Dual Video Decoder TVP5147 and HD/SD Video Encoder?"

    Are you asking if you can have a breakpoint trigger based on a signal having a certain pattern?  Could you determine the pattern by reading memory locations?  If so maybe a conditional breakpoint would do the trick?  You could have a breakpoint set with its condition as a GEL expression.  That GEL expression would be a function you define in a file, it could go off and read the necessary memory locations and see if they match the pattern you are looking for, if they match you have the function return true and CCS will stay halted, if it returns false CCS will start up the DSP again.

     

    John

  • thank you for your reply.

    My idea would be:

     

    //main.c

    void main()

    {

        bool found=false;

         configure_all_needed_peripherals();

         while(1)

         {

                  read_memory();

                  found=My_own_pattern_recognition();

                  fi(found)

                      stop_here;      //breakpoint set here.

        }

    }

    Actually, My_own_pattern_recognition() is written in C. Are you suggesting main.c be converted to a GELfile? and use a GEL expression to call the c function My_own_pattern_recognition()?  Is it possible to implement my idea with C?

     

    Is there any example I can refer to? Spectrumdigital provides some useful ARM based test codes. But i couldn't find any based on DSP.

     

    thanks.

     

     

  • Vincent,

    You could implement things the way you have.  That would run a lot more real-time than my proposal.  For my proposal you would have a breakpoint after read_memory().  The condition of that breakpoint would be a GEL function that would do the same as your "My_own_pattern_recognition()" function.  The disadvantage of my way is that the CPU will be halting each time the breakpoint is hit and the condition is evaluated, the advantage is that you don't have to change any application code.

    As far as getting some example DSP code I would check out the product folder for the device you are using as well as other DSP devices like DM6437 (http://focus.ti.com/docs/toolsw/folders/print/demoapp-dm6437.html)

    John