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

定点型DSP28027使用IQmath的问题

大家好,

本人在使用IQmath进行除法运算时,参考文档C28x IQmath Library Module user’s Guide(v1.6.0)的使用步骤:(由于使用的是CCS3.3,所以不用添加GEL文件)

1)包含IQmathLib.h头文件

2)添加IQmath.lib库文件

接着直接使用_IQ12div进行两个long数的除法运算,但是单步运行的时候,提示

请问知道的朋友告诉一下,这是为什么?谢谢!

mangui zhang:

忽略不管执行不会影响结果的       但是还没找到解决办法

有人说按照IQmath的PDF文档中的说明将相应的库添加,貌似需要在Build Option中的linker下添加两个库

你确认一下

大家好,

本人在使用IQmath进行除法运算时,参考文档C28x IQmath Library Module user’s Guide(v1.6.0)的使用步骤:(由于使用的是CCS3.3,所以不用添加GEL文件)

1)包含IQmathLib.h头文件

2)添加IQmath.lib库文件

接着直接使用_IQ12div进行两个long数的除法运算,但是单步运行的时候,提示

请问知道的朋友告诉一下,这是为什么?谢谢!

Hank Zhao:

这个IQNdiv.asm看起来应该是IQmath.lib的一个源文件,由于你使用的是库文件,所以在单步的时候会找不到这个源文件,不影响程序正常运行。

大家好,

本人在使用IQmath进行除法运算时,参考文档C28x IQmath Library Module user’s Guide(v1.6.0)的使用步骤:(由于使用的是CCS3.3,所以不用添加GEL文件)

1)包含IQmathLib.h头文件

2)添加IQmath.lib库文件

接着直接使用_IQ12div进行两个long数的除法运算,但是单步运行的时候,提示

请问知道的朋友告诉一下,这是为什么?谢谢!

zhen zhang5:

回复 Hank Zhao:

是的,我在这条除法指令下面一条指令处设置断点,然后连续运行,这样就没有问题了,而且结果也是正确的,说明这条除法指令执行正常。

另外,我想请教一下,使用定点型DSP,如果操作数都是整型的,这种情况下,使用乘法“ * ”、除法“ / ”和使用_IQNmpy、_IQNdiv哪个执行时间更短,效率更高?

本人测试了一下,发现使用IQmath的执行时间要比相应的乘法“ * ”、除法“ / ”的执行时间长的多,我的测试代码如下:

long w,x,y,z;

GpioDataRegs.GPBSET.bit.GPIO32 = 1;

w=_IQ12div(_IQ12(100),_IQ12(9));

x=_IQ12mpy(_IQ12(100),_IQ12(9));

GpioDataRegs.GPBCLEAR.bit.GPIO32 = 1;

GpioDataRegs.GPBSET.bit.GPIO33 = 1;

y=100 / 9;

z=100 * 9;

GpioDataRegs.GPBCLEAR.bit.GPIO33 = 1;

然后,使用示波器观察GPIO32和GPIO33的高电平的时间,结果显示使用IQmath的执行时间要长的多,那么请问,IQmath在什么情况下,才会相对于普通算法而提高效率?(当然了,使用IQmath的结果精度要高)

通道1测试GPIO32,通道1测试GPIO33

谢谢

大家好,

本人在使用IQmath进行除法运算时,参考文档C28x IQmath Library Module user’s Guide(v1.6.0)的使用步骤:(由于使用的是CCS3.3,所以不用添加GEL文件)

1)包含IQmathLib.h头文件

2)添加IQmath.lib库文件

接着直接使用_IQ12div进行两个long数的除法运算,但是单步运行的时候,提示

请问知道的朋友告诉一下,这是为什么?谢谢!

Hank Zhao:

回复 zhen zhang5:

定点算法没必要使用IQmath,IQmath是使用定点数据的形式来表示浮点数,使用定点指令来完成浮点算法。所以,通常在进行浮点计算的时候才会用到IQmath。

赞(0)
未经允许不得转载:TI中文支持网 » 定点型DSP28027使用IQmath的问题
分享到: 更多 (0)