NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.

Simulation Pipeline Modes (C2000 & C5000)

From Texas Instruments Wiki
Jump to: navigation, search

Simulation Pipeline Modes for C2000 and C5500 CA Simulators[edit]

C55x and C28x Cycle Accurate simulators support two modes of execution called Pipeline Flush mode and Pipelined mode.

  • In Pipeline Flush mode, when the simulation is halted, the execution pipeline is flushed. The watch window shows the correct values of local variables in this mode. Profile data may be skewed because of flushing the pipeline whenever the simulation halts. This skew is noticeable only if there are many breakpoints in the program.
    • The PC (program counter) corresponds to the address of the instruction that is about to enter the Decode phase of the pipeline.
  • In Pipelined mode, when the simulation is halted, the execution pipeline is not flushed. Pipline behavior is accurate in this mode. This mode provides accurate profile data. The watch window display may not show the correct values of local variables.
    • The PC corresponds to the address of the instruction that is about to enter the Execute phase of the pipeline.

Switching Between the Modes[edit]

Configuring in CCSv3.3[edit]

Pipeline Flush mode is the default simulation mode. The mode can be changed using the following mechanisms:

  • From the Code Composer Studio Debug Menu, by enabling/disabling Flush Pipeline on Halt.

Ccsv3 option.JPG 

  • From Tools-> Command Window plug-in - Command "EMU" will change to Pipeline Flush mode and command "SIM" will change to Pipelined mode.

Ccsv3 cmdwindow.JPG

Configuring in CCSv4[edit]

The Simulation mode can be configured using Target menu/debug option.

Ccsv4 debugoption.JPG

Clicking on the Debug button will pop up a debug window as shown below. Then click on the Target Tab and enable/disable the simulators will flush the pipeline on a haltto change the mode.

Ccsv4 debugwindow.JPG

Note: In CCSv3, the simulation mode can be changed at any point of time after launching the simulator. But in CCSv4, the simulation mode can be configured only before launching the simulator and can not be changed once the Simulator is launched.

Effects of Mode Switching[edit]

From Pipeline Flush mode to Pipelined mode:

  • Simulation advances the pipeline to bring the PC to the execution phase
  • After mode switching, the PC points to the instruction in the Execute phase of the pipeline

From Pipelined mode to Pipeline Flush mode

  • Simulation flushes the pipeline.
  • After mode switching, the PC points to the instruction in the Decode phase of the pipeline. However,this effect is hidden from the user unless the user does an Instruction Step after the mode change. If an Instruction Step is done after mode change, the user might see skid of a few instructions in the assembly window and PC changing in the register window.
  • Breakpoints that have been set at instructions which are being flushed out of the pipeline are ignored.

Recommendations on Simulation Mode[edit]

  • Use Pipelined Mode for Application Code Profiling and Tuning.
  • Use Pipeline Flush Mode for Application Debug.
E2e.jpg {{
  1. switchcategory:MultiCore=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Simulation Pipeline Modes (C2000 & C5000) here.

Keystone=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Simulation Pipeline Modes (C2000 & C5000) here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article Simulation Pipeline Modes (C2000 & C5000) here. DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article Simulation Pipeline Modes (C2000 & C5000) here. MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article Simulation Pipeline Modes (C2000 & C5000) here. OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Simulation Pipeline Modes (C2000 & C5000) here. OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Simulation Pipeline Modes (C2000 & C5000) here. MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article Simulation Pipeline Modes (C2000 & C5000) here. For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article Simulation Pipeline Modes (C2000 & C5000) here.

}}

Hyperlink blue.png Links

Amplifiers & Linear
Audio
Broadband RF/IF & Digital Radio
Clocks & Timers
Data Converters

DLP & MEMS
High-Reliability
Interface
Logic
Power Management

Processors

Switches & Multiplexers
Temperature Sensors & Control ICs
Wireless Connectivity