Sign in

username:

password:



Not a member?

Search c6x



Search tips

Subscribe to c6x



c6x by Keywords

AD535 | BIOS | Booting | Bootloader | C621 | C6211 | C6415 | C671 | C6711 | C6711DSK | C6713 | CCS | Chassaing | COFF | DAT | DM64 | DM642 | DMA | DSK671 | DSK6711 | EDM | EDMA | EMIF | Emulator | EVM | EVM620 | FFT | FIR | GPIO | Halting | HPI | HWI | IDK | JTAG | LDB | LDH | LDW | Linker | LMS | LOG_printf | Matlab | McBSP | MEM_alloc | MIPS | PCI | PCM3003 | Pipeline | Profiling | QDM | Reset | ROM | RTDX | Sampling | SDRAM | Stack | TEB | THS1206 | TMS320C621 | TMS320C6416 | TMS320C6711 | TMS320C6713 | UART | Vector Table | XBUS | XDS560

Ads

Discussion Groups

Discussion Groups | TMS320C6x | Fw: Break Points

Technical discussions about the TI C6000 DSPs (including the c62x, c64x and c67x DSPs).

  

Post a new Thread

Fw: Break Points - Ganesh Vijayan - Jul 2 12:13:00 2003



 
----- Original Message -----
From: Bhooshan iyer
To: g...@emuzed.com
Sent: Wednesday, July 02, 2003 5:35 PM
Subject: Re: [c6x] Break Points

Omer,
         Why are you doing this to get a function profile? that can be got from the profiler without using any break point...refer the tutorial on function profile or refer rulph chassaings c6x dsk book 1st chapter for more info on function profiling...anyways...
 
         One thing you might want to keep in your mind abt breakpoints is that they are not actually done at C level but rather at assembly level in the sense the break-points are actually set on a particular (single) assembly language statement.
 
 So you have to stop placing the break point from the C source view,instead use the mixed/source asm mode under the view menu...now you will know which are the valid lines(find out the invalid lines for break-points placing) in which the break point can be placed...
 
the break point manager is actually moving your break point to the next valid line in the assembly code...
 
because break point manager will not allow you to place a Bkpoint in between two pipelined instructions(quite obviously this will ruin the pipeline...)and so forth...dont be fooled into thinking that you are actually placing the break point on the c statement say,
 
sum += a[i] * b[i];
 
you are actually placing the break point at the first line of the assembly equivalent of the above line say,

LDH .D2T2 *+SP(20),B6 ; |22|

LDW .D2T2 *+SP(8),B5 ; |22|

LDW .D2T2 *+SP(4),B9 ; |22|

LDH .D2T2 *+SP(20),B4 ; |22|

LDH .D2T2 *+SP(20),B7 ; |22|

LDW .D2T2 *+SP(16),B8 ; |22|

NOP 2

LDH .D2T2 *+B5[B6],B5 ; |22|

LDH .D2T2 *+B9[B4],B4 ; |22|

|| ADD .S2 1,B7,B6 ; |22|

STH .D2T2 B6,*+SP(20) ; |22|

LDW .D2T2 *+SP(12),B7 ; |22|

LDH .D2T2 *+SP(20),B6 ; |22|

NOP 4

CMPLT .L2 B6,B7,B0 ; |22|

[ B0] B .S1 L1 ; |22|

MPY .M2 B5,B4,B4 ; |22|

NOP 2

ADD .D2 B4,B8,B4 ; |22|

STW .D2T2 B4,*+SP(16) ; |22|

; BRANCH OCCURS ; |22|

 

Bhooshan



Attention NRIs! Send money home in a jiffy. Find out how here.



(You need to be a member of c6x -- send a blank email to c6x-subscribe@yahoogroups.com )