原来在小端模式下,我定义两个参数,如下:
CSL_Uint64 begin_time;
CSL_Uint64 total_time;
CSL_tscEnable();
然后在模块入口处:begin_time = CSL_tscRead();
{
模块………………
}
在模块出口出处:total_time += (CSL_tscRead()-begin_time);
这样我就能大概知道这个模块用了多少cycle数。
但是,现在我将环境改为大端模式,当然我编译路径处的lib库函数也改为了大端。同样使用用以上的代码,为什么出来的begin_time和total_time是一个随机的值,感觉好像是超过了CSL_Uint64的范围了一样,求解?
Andy Yin1:
TSC寄存器对大小端模式的使用没啥区别,可以参考如下STK例程中对TSC的使用。
http://www.deyisupport.com/question_answer/dsp_arm/c6000_multicore/f/53/t/47664.aspx