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

Sponsor

Industry's highest performing at the lowest power DSPs now as low as $5.00*
Start development today!
*volume pricing for 10ku

Discussion Groups

See Also

Embedded SystemsFPGAElectronics

Discussion Groups | TMS320C6x | [Fwd: BIOS profiling not matching cycle counts]

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

  

Post a new Thread

[Fwd: BIOS profiling not matching cycle counts] - Jeff Brower - Oct 8 22:27:34 2010

All-

Forgot to mention:  we read the PLL1 multiplier control register and verified
that BIOS had set a multiplier of 28 (25
MHz onboard osc x 28 = 700 MHz).  The divider is not enabled.

-Jeff

--------------- Original Message --------------
Subject: BIOS profiling not matching cycle counts
From:    "Jeff Brower" <j...@signalogic.com>
Date:    Fri, October 8, 2010 9:35 pm
To:      c...@yahoogroups.com
-----------------------------------------------

All-

We're using Clock_getTicks() BIOS API to profile code.  Results do not match
cycle counts by a factor of 10:  about 50
sec vs. expectation of 5 sec (cycle counts determined by looking at generated
.asm).  We're using CCS 4.2, BIOS6, and
EVM C6472.  All code and data is in onchip RAM, the only interrupt enabled is
TIMER0 for BIOS.

A few questions:

1) Is there any reason not to use BIOS APIs for C64x+ profiling?  For example we
could disable interrupts, read TIMER0
directly, then re-enable interrupts...

2) In CCS 4.2 there doesn't appear to be a Free Run option (as in CCS 3.x). 
What is the best way to verify that CCS
is not "doing something" over JTAG during the measurement?

3) If pipeline stalls are occurring for any reason, what is the best way to
determine and/or measure?

-Jeff

_____________________________________

______________________________
New Code Sharing Section now Live on DSPRelated.com. Learn about the Reward Program for Contributors here.



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