TI中文支持网
TI专业的中文技术问题搜集分享网站

28335 加法执行周期,汇编指令执行周期

我在测试程序的执行时间的过程中发现一个问题:

28335做加法的时候一条指令执行周期与资料上说的不一样:

汇编指令 ADD 说明上写的是1个周期.通过硬件IO 测试执行时间,通过连续10个加法,与20个加法的执行时间对比计算.发现 这里的ADD用两个机器周期(150M).

编译后的汇编代码

变量(int16)+立即数 

而两个寄存器的加法中的 ADD指令用同样的方法计算,所有的机器周期是1个.

变量(int16)+变量(int16)

.

资料SPRU430F 上写的ADD都是 N+1个cyc.不知道是我哪理解的不对还是测试的不对?哪位朋友知道其中原因,帮忙给讲解讲解,谢谢!

Annie Liu:

为更加有效地解决您的问题,我们建议您将问题发布在E2E英文技术论坛上https://e2e.ti.com/support/microcontrollers/c2000/f/171,将由资深的工程师为您提供帮助。我们的E2E英文社区有TI专家进行回复,并得到全球各地工程师的支持,分享他们的知识和经验。

我在测试程序的执行时间的过程中发现一个问题:

28335做加法的时候一条指令执行周期与资料上说的不一样:

汇编指令 ADD 说明上写的是1个周期.通过硬件IO 测试执行时间,通过连续10个加法,与20个加法的执行时间对比计算.发现 这里的ADD用两个机器周期(150M).

编译后的汇编代码

变量(int16)+立即数 

而两个寄存器的加法中的 ADD指令用同样的方法计算,所有的机器周期是1个.

变量(int16)+变量(int16)

.

资料SPRU430F 上写的ADD都是 N+1个cyc.不知道是我哪理解的不对还是测试的不对?哪位朋友知道其中原因,帮忙给讲解讲解,谢谢!

mangui zhang:我的理解是一个机器周期就完成一次加法运算你通过IO口测试肯定是不准确的
我记得CCS就有一个计算周期数的功能你找找

我在测试程序的执行时间的过程中发现一个问题:

28335做加法的时候一条指令执行周期与资料上说的不一样:

汇编指令 ADD 说明上写的是1个周期.通过硬件IO 测试执行时间,通过连续10个加法,与20个加法的执行时间对比计算.发现 这里的ADD用两个机器周期(150M).

编译后的汇编代码

变量(int16)+立即数 

而两个寄存器的加法中的 ADD指令用同样的方法计算,所有的机器周期是1个.

变量(int16)+变量(int16)

.

资料SPRU430F 上写的ADD都是 N+1个cyc.不知道是我哪理解的不对还是测试的不对?哪位朋友知道其中原因,帮忙给讲解讲解,谢谢!

yining zhang:

回复 Annie Liu:

谢谢,我试试看.

我在测试程序的执行时间的过程中发现一个问题:

28335做加法的时候一条指令执行周期与资料上说的不一样:

汇编指令 ADD 说明上写的是1个周期.通过硬件IO 测试执行时间,通过连续10个加法,与20个加法的执行时间对比计算.发现 这里的ADD用两个机器周期(150M).

编译后的汇编代码

变量(int16)+立即数 

而两个寄存器的加法中的 ADD指令用同样的方法计算,所有的机器周期是1个.

变量(int16)+变量(int16)

.

资料SPRU430F 上写的ADD都是 N+1个cyc.不知道是我哪理解的不对还是测试的不对?哪位朋友知道其中原因,帮忙给讲解讲解,谢谢!

yining zhang:

回复 mangui zhang:

感谢你的提示,我用IO翻转这个测试方法对比了NOP的执行速度,去掉延时等影响,还是可以比较准确的计算出执行周期的.用同样的方法对Add指令计算确实是这个结果.你说的CCS计算是软件仿真中的 clock工具吧,我用了,但是这个时钟貌似更不准,主要是我用的是6.X不支持28x的sim. sim是用的网上介绍的把5.X的文件复制过来后能用的.不知道是不是有问题.

我在测试程序的执行时间的过程中发现一个问题:

28335做加法的时候一条指令执行周期与资料上说的不一样:

汇编指令 ADD 说明上写的是1个周期.通过硬件IO 测试执行时间,通过连续10个加法,与20个加法的执行时间对比计算.发现 这里的ADD用两个机器周期(150M).

编译后的汇编代码

变量(int16)+立即数 

而两个寄存器的加法中的 ADD指令用同样的方法计算,所有的机器周期是1个.

变量(int16)+变量(int16)

.

资料SPRU430F 上写的ADD都是 N+1个cyc.不知道是我哪理解的不对还是测试的不对?哪位朋友知道其中原因,帮忙给讲解讲解,谢谢!

yining zhang:

回复 mangui zhang:

谢谢你的提示.我用的CCS6.X不支持28X的sim,我用的是5.X的相关文件复制到6X中,sim时用的clcok功能,但是从结果看貌似更不准确.所以才用的IO翻转.我实测了NOP的执行时间,通过刨除延时等因素,计算时间还是比较准确的.

赞(0)
未经允许不得转载:TI中文支持网 » 28335 加法执行周期,汇编指令执行周期
分享到: 更多 (0)