cycle count  / CW10.6 for S12Z

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

cycle count  / CW10.6 for S12Z

跳至解决方案
1,138 次查看
hiroyoshisuzuki
NXP Employee
NXP Employee

Hi,

I'm sensor FAE but supporting about customer's question about CW10.6, now.

Customer would like to check a performance of S12Z CPU by CW10.6. I mean, cpu time.

 

Easy way is to count clock cycle by assembler list file. Is there any feature which can count the cycle counts?

I know, there is a disassembler function by right click the source file. But, the cycle count is always zero.

Do you know the way to show the cycle number?

 

   25: u64Test++;
00000058 08E030             [0]LEA   X,(48,S)
0000005B 09E020             [0]LEA   Y,(32,S)
0000005E 1F4050             [0]MOV.L (0,X),(0,Y)
00000061 1F4454             [0]MOV.L (4,X),(4,Y)
00000064 BB000000           [0]JSR   0

 

And, It is good if there is calculation function of sum of specific code.

 

 

Best regardfs.

Hiroyoshi Suzuki

标签 (1)
标记 (1)
0 项奖励
回复
1 解答
805 次查看
trytohelp
NXP Employee
NXP Employee

Hi Hiroyoshi-san,

Now, the Update 6 has been released.

To install it you need to launch Eclipse and click on Help + Install New Software ...

Select the generic:

    FSL MCU Eclipse Update Site - http://freescale.com/lgfiles/updates/Eclipse/MCU10_6_4/com.freescale.mcu.updatesite

pastedImage_0.png

to be sure you can run it 2 times.

After that you can launch the Help + Check for Updates too.

Under the installation, at then end you will see release notes under \CW MCU v10.6.4\MCU.

for instance:

pastedImage_1.png


Have a great day,
Pascal
NXP Technical Support

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

在原帖中查看解决方案

0 项奖励
回复
2 回复数
806 次查看
trytohelp
NXP Employee
NXP Employee

Hi Hiroyoshi-san,

Now, the Update 6 has been released.

To install it you need to launch Eclipse and click on Help + Install New Software ...

Select the generic:

    FSL MCU Eclipse Update Site - http://freescale.com/lgfiles/updates/Eclipse/MCU10_6_4/com.freescale.mcu.updatesite

pastedImage_0.png

to be sure you can run it 2 times.

After that you can launch the Help + Check for Updates too.

Under the installation, at then end you will see release notes under \CW MCU v10.6.4\MCU.

for instance:

pastedImage_1.png


Have a great day,
Pascal
NXP Technical Support

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 项奖励
回复
805 次查看
trytohelp
NXP Employee
NXP Employee

Hi,

I'm using CW for MCU v10.6.4 + patch V10.6.5.

With this version I've created a project based on mc9s12zvml128.

In the project properties for the S12Z Disassembler you can select the Output options:

    Show Cycle Count for Each Instruction.

On my side it seems to be working.

Extract of my file:

++++++++++++++++

Decoder V-5.0.35 Build 15175, Jun 25 2015

Options: -A -ArgFileSources/main_c.args -C -Env"GENPATH=E:/Temp_bis/Community/375733/MCU_10.6.5/test_s12Z/Project_Headers;E:\Freescale\CW MCU v10.6.4\eclipse\../MCU/S12lisa_Support/s12lisac/include;E:\Freescale\CW MCU v10.6.4\eclipse\../MCU/S12lisa_Support/s12lisac/src;E:\Freescale\CW MCU v10.6.4\eclipse\../MCU/S12lisa_Support/s12lisac/lib_small" -EnvOBJPATH=. -EnvTEXTPATH=. -OSources\main_c.lst -T -ViewHidden -WmsgFob%f%e:%l:%k:%d:%m\n

Decoding File: 'Sources\main_c.obj'

File format: ELF/DWARF

DISASSEMBLY OF: '.text' FROM 2048 TO 2064 SIZE 16 (0X10)

Opening source file 'E:\Temp_bis\Community\375733\MCU_10.6.5\test_s12Z\Sources\main.c'

    8: void main(void) {

main:

00000000 CEEF                  [0.0]  CLI    

  16:    __RESET_WATCHDOG();    /* feeds the dog */

00000002 0C5506CF              [3.0]  MOV.B    #85,1743

00000006 0CAA06CF              [3.0]  MOV.B    #-86,1743

  17:    asm nop;

0000000A 01                    [1.0]  NOP    

  18:    i++;

0000000B 9F0000                [4.0]  INC.L    i

  15:  for(;;) {

0000000E 2074                  [1.5]  BRA      *-12      ;abs = 0x000002

++++++++++++++++


Have a great day,
Pascal
Freescale Technical Support
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 项奖励
回复