- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
视频监控系统中快速实现ARM和DSP的通信和协同工作
B.ARM应用程序跑起来后,用仿真器连上CCS调试DSP侧程序,参考:http://wiki.davincidsp.com/index.php?title=Debugging_the_DSP_side_of_a_CE_application_on_DaVinci_using_CCS
C.用Soc Analyzer可以做系统调试之外,还可以统计具体函数运行(ARM和DSP侧)时间(benchmark)。请参考:http://tiexpressdsp.com/wiki/index.php?title=SoC_Analyzer
6)因为Codec Engine是介于ARM 应用程序和编解码算法中间的软件模块,很多工程师非常想知道它的开销(overhead),请参考:http://wiki.davincidsp.com/index.php?title=Codec_Engine_Overhead
7)如何在Linux环境下编DSP的汇编或线性汇编程序?
在Codec Engine安装路径下/packages/config.bld文件里
var C6?P = xdc.useModule(‘ti.targets.C6?P’);
之后添加:
C6?P.extensions[".sa"] = {
suf: ".sa", typ: "asm:-fl"
}
或
C6?P.extensions[".asm"] = {
suf: ".asm", typ: "asm:-fa"
}
8)DSP侧如何统计具体函数运行时间?
TI DSPC6?x+内核有一个6?位的硬件定时器(Time Stamp Counter),它的频率和CPU频率一致。最简单的办法是使用TSC的低32位TSCL。注意在DM6?4x中,TSCH用于ARM。
#include
void main (){
…
TSCL=0;
…
t1=TSCL;
my_code_to_benchmark();
t2=TSCL;
printf("# cycles == %dn", (t2-t1));
}
6.结语
以上针对如何上手TI的Codec Engine做了简单的归纳,还有很多具体细节的问题没有涉及到。还请各位工程师从自己要用的软件模块发布说明文档开始找到相关的文档并研究。
来源:电子发烧友
上一篇:正弦信号发生器的设计与实现
下一篇:精确时钟同步确保IP网“电信级”特性


