我用的DSP6455,是公司自己制的板子,我是初学者,现在用的是CCS3.3
最近测试6455的程序发现一个很简单的for循环就会花费十几毫秒,我想单片机也不过如此吧。我怀疑是不是我的DSP开发环境还有一些配置信息不对。昨天做了一个查表的除法算法由于各种需要代码写成如下的方式
for ( y = 0; y < VIO_HEIGHT; y++ )
{
for ( x = 0; x < VIO_WIDTH; x++ )
{
divisor=(Uint16)buf_in[VIO_WIDTH * y + x];
dividend=(Uint16)(buf_in[VIO_WIDTH * y + x]>>16);
source=(buf_in[VIO_WIDTH * y + x])|((buf_in[VIO_WIDTH * y + x]<<8));
buf_out[VIO_WIDTH * y + x]=0;//source|(Uint32)divtab[divisor][dividend];
}
}代码很简单但是却花费了115ms。而且有一个问题就是我单独的执行for循环里的任何一个语句仅仅要10ms,四个顺序执行却要花费115ms。问题出在哪了呢?
请帮忙看看是什么问题我的邮箱是luotuoxiangzi3@yahoo.cn这个问题比较棘手希望得到帮助!·····