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.

"Reset" and "Reload"

Anonymous
Anonymous


Hi All,                 

 

I would like to ask a question on "reset": we have "Reset" button in CCS which allows:

 

  1. CPU Reset
  2. System Reset
  3. Emulator Reset

Which part(s) will be inflenced by each of these options/operations?

  1. Does CPU mean the arithmetic unit, or megamodule, or everything within the TI DSP chip?
  2. Does System mean every thing visible to the CPU, including all memory mapped registers of peripheral devices? Does "System Reset" clear all contents in DDR2 memory to zero?
  3. I haven't found once that "Emulator Reset" is available. What is its functionality and purpose?

Why are these reset's provided in debugging? If in the middle of running we reset the status of any of 1 or 2 or 3, do we get all the previous states/history lost? If the breakpoint is at the 100th line of a total of 1000 lines' code, do we get everything resulted from code lines 0-99 lost? And when we click the green button "Run", do we start from "nothing" and code line 100, and if without another breakpoint, all the way down to code line 1000?

If from the said new starting point line 100 we have nothing of the previous steps left, do we have to re-initialize the CPU and peripherals? Is it subsequent running (line 100 to 1000) still meaningful if we do not?

 

 

In addition to this "reset" question, there is also one on "reload":

I noticed that Cheet Sheet suggest "reload your program" instead of launching the program again. But:

             


                       
1. When launching a debug session as normal one can specify a .GEL file to be executed by CCS prior to really loading the binary code to the target. This .GEL file can do lots of initialization work here. But if one uses "reload", will the initialization by .GEL be performed?


2. And like in the questions for "reset":

Does "reload" clear all contents in DDR2 memory to zero?

 

 

Sincerely,
Zheng

 

 

  • Zheng,

    There is more information on what the resets do here: http://processors.wiki.ti.com/index.php/Emulation_Resets I believe that will answer most of your questions regarding reset behavior.

    For the questions on GEL.  There can be a number of special functions defined in a GEL startup file.  These functions will get run with different actions.  The Startup() function gets run when you launch the debugger.  The OnTargetConnect() function runs when you connect.  There are OnReset(), OnRestart() OnPreFileLoaded(), OnFileLoaded() and other functions as well.  If you go to the CCS help and type GEL in the search filter you should then be able to click on the list of built-in GEL functions.

    Thus when you perform a reload it is going to run the OnPreFileLoaded() function, do the load, and then run the OnFileLoaded() function.  There is also a debugger option to "Reset the target on a program load or restart" this is off by default but if that were enabled then you would get a CPU Reset performed followed by the OnReset() function.

    Regards,

    John

     

     

  • Anonymous
    0 Anonymous in reply to JohnS

    Dear John,

    Thanks, I will study them.

     

    Zheng