OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7221|回复: 12

关于例程中FFT IP核调用的一些问题,寻求大家的解答!

[复制链接]

3

主题

11

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-7-17
在线时间
7 小时
发表于 2019-8-2 20:33:34 | 显示全部楼层 |阅读模式
7金钱
在学习例程中的FFT。问题1:图中的信号分别是FFT FFT_u中的source_imag和source_real,data_modulus u_data_modulus中的source_imag和source_real以及data_real,data_imag,以及根据data_real和data_imag算出来的平方和source_data,source_data开根号得到的data_modulus,但是所示的波形很奇怪,先是没有正常的求得原码data_real和data_imag,由此算出来的平方和和开根号出来的数也都不对
问题2:在用FFT IP核的时候,是一次输入一个数据,然后就输出一个数据,这样一次次循环直至把所有的数据都输一遍是吗?求FFT的时候在不清楚之后完整的波形的时候为什么可以正常求得呢
问题3:调用FFT IP核的时候,冒出来这样的弹窗,根据视频教程中提到说应该是没有完全破解,但是时间为什么是unlimited呢,这意思是不是只要不点掉cancel就可以一直使用呢,可以烧到板子里正常使用吗,如果不是的话,请问应该如何完全破解呢?

波形.png
代码.png
弹窗.png

最佳答案

查看完整内容[请看2#楼]

第一个signaltap数据错误的问题,可能是由于你设置的signaltap采样时钟不对导致的。 第二个,FFT IP核并不是进一个数据出一个数据。而是以数据包为单位,视频里也对这个数据包的时序作了介绍,sop和eop分别是包头和包尾,一包数据输入完成之后,才输出对应的结果。 第三个,根据经验,不点Cancel的话,运行一个小时之后就挂了。具体的破解方法,你百度一下就能找到,也比较简单。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

9

主题

202

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
839
金钱
839
注册时间
2018-7-29
在线时间
128 小时
发表于 2019-8-2 20:33:35 | 显示全部楼层
第一个signaltap数据错误的问题,可能是由于你设置的signaltap采样时钟不对导致的。
第二个,FFT IP核并不是进一个数据出一个数据。而是以数据包为单位,视频里也对这个数据包的时序作了介绍,sop和eop分别是包头和包尾,一包数据输入完成之后,才输出对应的结果。
第三个,根据经验,不点Cancel的话,运行一个小时之后就挂了。具体的破解方法,你百度一下就能找到,也比较简单。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165186
金钱
165186
注册时间
2010-12-1
在线时间
2106 小时
发表于 2019-8-3 01:24:53 | 显示全部楼层
帮顶
回复

使用道具 举报

3

主题

11

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-7-17
在线时间
7 小时
 楼主| 发表于 2019-8-3 09:52:37 | 显示全部楼层
有哪位大神能帮忙挑一两个问题解决也可以哇,感激不尽_(:з」∠)_
回复

使用道具 举报

3

主题

11

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-7-17
在线时间
7 小时
 楼主| 发表于 2019-8-5 10:12:24 | 显示全部楼层
SunML 发表于 2019-8-5 09:34
第一个signaltap数据错误的问题,可能是由于你设置的signaltap采样时钟不对导致的。
第二个,FFT IP核并不 ...

很感谢您的解答!第一个的确是因为signaltap采样时钟的问题。关于第二个问题,signaltap中出现了这样的波形,数据包传进FFT是正常的,但是做完运算之后传出来的数据确没有按照source_sop和source_eop顺序传出来,而是在source_sop发出来之前就开始传输运算结果出来了,请问这是为什么呢?D:\Life\diansai\FPGA\波形2.png
回复

使用道具 举报

3

主题

11

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-7-17
在线时间
7 小时
 楼主| 发表于 2019-8-5 10:13:46 | 显示全部楼层
SunML 发表于 2019-8-5 09:34
第一个signaltap数据错误的问题,可能是由于你设置的signaltap采样时钟不对导致的。
第二个,FFT IP核并不 ...

很感谢您的解答!第一个的确是因为signaltap采样时钟的问题。关于第二个问题,signaltap中出现了这样的波形,数据包传进FFT是正常的,但是做完运算之后传出来的数据确没有按照source_sop和source_eop顺序传出来,而是在source_sop发出来之前就开始传输运算结果出来了,请问这是为什么呢?
波形2.png
回复

使用道具 举报

9

主题

202

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
839
金钱
839
注册时间
2018-7-29
在线时间
128 小时
发表于 2019-8-5 12:12:17 | 显示全部楼层
听风者111 发表于 2019-8-5 10:13
很感谢您的解答!第一个的确是因为signaltap采样时钟的问题。关于第二个问题,signaltap中出现了这样的波 ...

你要看FFT输出端口的SOP和EOP信号,图里面的两相SOP/EOP跟FFT输出的数据对不上,应该是你抓错信号了
回复

使用道具 举报

3

主题

11

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-7-17
在线时间
7 小时
 楼主| 发表于 2019-8-5 20:23:54 | 显示全部楼层
SunML 发表于 2019-8-5 12:12
你要看FFT输出端口的SOP和EOP信号,图里面的两相SOP/EOP跟FFT输出的数据对不上,应该是你抓错信号了

我又试了试,结果发现不只是FFT端口的sop和eop对不上,跟valid也对不上,而且FFT的结果在信号输入完成之前就产生了,请问这是为什么呢?
波形3.png
回复

使用道具 举报

9

主题

202

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
839
金钱
839
注册时间
2018-7-29
在线时间
128 小时
发表于 2019-8-5 23:57:19 来自手机 | 显示全部楼层
听风者111 发表于 2019-8-5 20:23
我又试了试,结果发现不只是FFT端口的sop和eop对不上,跟valid也对不上,而且FFT的结果在信号输入完成之 ...

你从哪看出来对不上的,数据包是连续的,上一包的数据输出的时候,当前数据并不会停止输入。不要把输入跟输出混在一起
回复

使用道具 举报

3

主题

11

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-7-17
在线时间
7 小时
 楼主| 发表于 2019-8-6 00:48:15 | 显示全部楼层
SunML 发表于 2019-8-5 23:57
你从哪看出来对不上的,数据包是连续的,上一包的数据输出的时候,当前数据并不会停止输入。不要把输入跟 ...

不不不,我的意识是指直接从FFT输出端口接出来的source_sop和source_eop没有和source_valid信号对应上,按照时序图的话应该是SOP在valid的开头,EOP在valid的结尾才对,但是这个时序好像不是这个样子的,请问是为什么呢?
回复

使用道具 举报

3

主题

11

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-7-17
在线时间
7 小时
 楼主| 发表于 2019-8-6 00:48:45 | 显示全部楼层
SunML 发表于 2019-8-5 23:57
你从哪看出来对不上的,数据包是连续的,上一包的数据输出的时候,当前数据并不会停止输入。不要把输入跟 ...

不不不,我的意识是指直接从FFT输出端口接出来的source_sop和source_eop没有和source_valid信号对应上,按照时序图的话应该是SOP在valid的开头,EOP在valid的结尾才对,但是这个时序好像不是这个样子的,请问是为什么呢?
回复

使用道具 举报

9

主题

202

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
839
金钱
839
注册时间
2018-7-29
在线时间
128 小时
发表于 2019-8-6 09:43:17 | 显示全部楼层
听风者111 发表于 2019-8-6 00:48
不不不,我的意识是指直接从FFT输出端口接出来的source_sop和source_eop没有和source_valid信号对应上, ...

“按照时序图的话应该是SOP在valid的开头,EOP在valid的结尾才对”,Avalon-ST协议中并没有这个说法,SOP和EOP的位置与Valid信号没有关系。Valid信号只代表数据有效,它的开始和结束并不代表数据包的开始和结束位置。SOP在的地方才是数据的开始,EOP是数据的结束。
回复

使用道具 举报

4

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
97
金钱
97
注册时间
2019-8-28
在线时间
12 小时
发表于 2020-11-23 22:30:03 | 显示全部楼层
老哥,你这是基于 FFT IP 核 的音频频谱仪的例程?感觉不是,可以分享一下你的例程嘛?我最近也在学FFT  ip core
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-10-3 16:40

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表