DSP的机器周期是多少个时钟周期

DSP的机器周期是多少个时钟周期,第1张

DSP是流水线 *** 作,一个时钟周期可以并行执行很多指令,但是对于执行一条指令来说,指令周期(或者说机器周期)所用时间和时钟周期是一样的,比如F2812外面晶振用的是150MHz,它的机器周期就是1/150us。

然后在profiler菜单中选择Enable Clock和view clock,在view clock窗口中可以看到程序运行的时间/周期(时钟)数。在view clock窗口中第2行显示的时间就是程序从第1行所在位置到第2行位置的时间,也就是你要测定的时间。这是ti推荐的方法,但我发现数据不准确,比实际的要大。如果用profiler得到的数据比你的要求好要少的话,那就说明已经达到了要求,如果比你的大则比一定达不到要求。

用clock函数是可行的,尤其是优化以后的代码很难确定PROFILE的位置。你看一下.asm的输出就知道了,clock没有这个问题。有一点要注意,clock函数如果直接在DSP上跑时间是不准的,必须用load6x命令在DOS或命令行状态下加载,这样结果就准的多。当然,调用函数本身的开销也是要考虑的。

这个问题问得比较泛,但是一般来说不同的指令占的周期不同。以C6000系列定点指令为例,单周期指令占一个周期,乘法指令占2个周期,ST指令占三个周期,LD指令和分支转移指令占5个周期。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12020928.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存