4791|4

62

帖子

1

TA的资源

一粒金砂(中级)

楼主
 

TI的IQmath问题 [复制链接]

本帖最后由 张锋 于 2016-7-26 09:06 编辑

我感觉在GLOBAL_Q是24时,_IQmpy(a,b);这个函数好像如果a是Q0格式,b是Q24格式的话,计算出来的东西好像是Q0格式的,不知道理解的对不对

temp1.JPG (44.6 KB, 下载次数: 0)

temp1.JPG

temp2.JPG (34.81 KB, 下载次数: 0)

temp2.JPG

最新回复

不知道你留意过iq变量的定义没有,从本质上讲,iq是一个int32型的量,只是根据q值的不同,对这个int32型的量的不同位赋予不同的含义。 “GLOBAL_Q是24时,_IQmpy(a,b);这个函数好像如果a是Q0格式,b是Q24格式的话,计算出来的东西好像是Q0格式的” _IQmpy并不会检查a或b是不是Q24,它直接把它当成GLOBAL_Q型,然后做乘法。乘出来的结果仍然是GLOBAL_Q型的。 为什么你认为它是q0型的呢? 以你这个为例,计算时,先要q0->q24,相当于*2^(-24),然后与b相乘;这样算完之后,得到一个q24型的数,而q24->q0,相当于*2^24,这样的话a*b=>{[a*2^(-24)]*b}*2^24。看出来了吧,中间的转化抵消掉了。 注意里面的两次转换(q0->q24,q24->q0)是由于你认为是他们q0型带来的。虽然你定义了a就是q0型,但_IQmpy并不知道。 我是这样理解的。  详情 回复 发表于 2016-8-19 22:57
 
点赞 关注

回复
举报

140

帖子

0

TA的资源

版主

沙发
 
GLOBAL_Q是24时,_IQmpy(a,b)如果没有特别说明输出的应Q24格式。IQ math是有源代码的你可以看一下

点评

那上面的怎么解释,如果写成a*b;//a是Q0,b是Q24,那这样的结果是Q24,但写成_IQmpy(a,b);我就糊涂了,按理说,括号里面的数据都应该是Q24格式,这样才符合文档里面的要求啊  详情 回复 发表于 2016-7-26 09:42
 
 

回复

62

帖子

1

TA的资源

一粒金砂(中级)

板凳
 
bkn1860 发表于 2016-7-26 09:35
GLOBAL_Q是24时,_IQmpy(a,b)如果没有特别说明输出的应Q24格式。IQ math是有源代码的你可以看一下

那上面的怎么解释,如果写成a*b;//a是Q0,b是Q24,那这样的结果是Q24,但写成_IQmpy(a,b);我就糊涂了,按理说,括号里面的数据都应该是Q24格式,这样才符合文档里面的要求啊

点评

不知道你留意过iq变量的定义没有,从本质上讲,iq是一个int32型的量,只是根据q值的不同,对这个int32型的量的不同位赋予不同的含义。 “GLOBAL_Q是24时,_IQmpy(a,b);这个函数好像如果a是Q0格式,b是Q24格式的  详情 回复 发表于 2016-8-19 22:57
 
 
 

回复

32

帖子

0

TA的资源

一粒金砂(中级)

4
 
张锋 发表于 2016-7-26 09:42
那上面的怎么解释,如果写成a*b;//a是Q0,b是Q24,那这样的结果是Q24,但写成_IQmpy(a,b);我就糊涂了,按 ...


不知道你留意过iq变量的定义没有,从本质上讲,iq是一个int32型的量,只是根据q值的不同,对这个int32型的量的不同位赋予不同的含义。

“GLOBAL_Q是24时,_IQmpy(a,b);这个函数好像如果a是Q0格式,b是Q24格式的话,计算出来的东西好像是Q0格式的”
_IQmpy并不会检查a或b是不是Q24,它直接把它当成GLOBAL_Q型,然后做乘法。乘出来的结果仍然是GLOBAL_Q型的。

为什么你认为它是q0型的呢?
以你这个为例,计算时,先要q0->q24,相当于*2^(-24),然后与b相乘;这样算完之后,得到一个q24型的数,而q24->q0,相当于*2^24,这样的话a*b=>{[a*2^(-24)]*b}*2^24。看出来了吧,中间的转化抵消掉了。

注意里面的两次转换(q0->q24,q24->q0)是由于你认为是他们q0型带来的。虽然你定义了a就是q0型,但_IQmpy并不知道。

我是这样理解的。

点评

谢谢您的回答,这个问题我已经弄清楚了  详情 回复 发表于 2016-8-22 09:52
 
 
 

回复

62

帖子

1

TA的资源

一粒金砂(中级)

5
 
rjqsd 发表于 2016-8-19 22:57
不知道你留意过iq变量的定义没有,从本质上讲,iq是一个int32型的量,只是根据q值的不同,对这个int32 ...

谢谢您的回答,这个问题我已经弄清楚了
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表