3427|7

1059

帖子

0

TA的资源

纯净的硅(高级)

楼主
 

说这个..FPGA上面设计个FIR滤波器又遇到问题了.. [复制链接]

需要做个DBPSK非相干解调,原理非常简单,延迟一个码元,相乘,滤波就行了.用matlab先做了下,感觉还行,如下:


设计滤波器用的是:
h_low=fir1(50,0.01,'low');  %低通滤波器

然后输出了测试信号数据和滤波器数据:
fid=fopen('BPSK_data.txt','w');
count= fprintf(fid,'%x \n',BPSK);
fclose(fid);

fid1=fopen('bit_data.txt','w');
count1= fprintf(fid1,'%d \n',a);
fclose(fid1);

fid2=fopen('fir_coef.txt','w');
count2= fprintf(fid2,'%f \n',h_low);
fclose(fid2);



然后用quartus的FIR ip核生成工具弄了个FIR:



然后跑一下modelsim,就这个diao样子了


之前没什么数字信号处理的经验,从模拟的角度来看好像是自激了,不过一点也分析不出来为嘛会这样,标准的设计流程是这个样子么?
望大家帮帮忙,给点思路什么的
此帖出自FPGA/CPLD论坛

最新回复

楼主工程可否共享下~~~  详情 回复 发表于 2013-12-23 09:45
点赞 关注
 

回复
举报

581

帖子

0

TA的资源

五彩晶圆(初级)

沙发
 
1、Simulink里有Altera的工具箱可以直接仿真FIR
2、定点数位宽问题有没有考虑
此帖出自FPGA/CPLD论坛
个人签名Net:Wxeda.taobao.com
QQ:1035868547
Blog:https://home.eeworld.com.cn/space-uid-390804.html
 
 

回复

1059

帖子

0

TA的资源

纯净的硅(高级)

板凳
 

回复 沙发kdy 的帖子

终于把您盼来了

1.马上去试simulink的设计工具,不过估计和FDAtools一个意思,

2.目前是这样的,matlab产生的BPSK调制信号数据在-1到1之间,我的AD是12位的,除去一位符号位,再去掉一位,所以*1024然后fix了用作测试数据,FIR内部位宽是8位(默认),输出用的也是默认(19位).
我不太清楚这个位宽能有多大的影响,在我看来,参数的影响应该不是很大吧?(我的意思是主要应该是阶数影响).


这种滤波器设计一般您都是怎么做的啊?
此帖出自FPGA/CPLD论坛
 
 
 

回复

10

帖子

0

TA的资源

一粒金砂(中级)

4
 

响应KDY的召唤

还是先检查一下代码吧,信号好像很强,随便用个低通滤波器都应该是可以的。建议调试的时候先不要加噪声,一步步调吧。定点运算有没有溢出,时序有没有错误,等等。
此帖出自FPGA/CPLD论坛
 
 
 

回复

1059

帖子

0

TA的资源

纯净的硅(高级)

5
 
xiaoIN 发表于 2013-12-22 20:41
还是先检查一下代码吧,信号好像很强,随便用个低通滤波器都应该是可以的。建议调试的时候先不要加噪声,一 ...

信噪比高的时候还可以,无噪声matlab仿真:



simulink:




这个正负出现了颠倒是不是由于滤波器系数大部分都是负的造成的?

然后是SNR=30的情况,效果就不咋样了,如图:





放大看了下,滤波之后的信号里面噪声好像是在2-3MHz,想不太出来为什么会这样..

如果SNR=10,那就是帖子正文里的样子了.按说这个低通滤波器应该是不难.可是为啥用FIR IP核效果和matlab仿真差那么多呢?



此帖出自FPGA/CPLD论坛
个人签名博客:http://www.ysgh.net/
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

6
 
楼主工程可否共享下~~~
此帖出自FPGA/CPLD论坛
 
 
 

回复

1059

帖子

0

TA的资源

纯净的硅(高级)

7
 
sonic1007 发表于 2013-12-23 09:45
楼主工程可否共享下~~~

这个恐怕是真不行..公司的东西,而且我还指着这玩意毕业呢 :P
此帖出自FPGA/CPLD论坛
个人签名博客:http://www.ysgh.net/
 
 
 

回复

1059

帖子

0

TA的资源

纯净的硅(高级)

8
 
问题基本解决了..
mega向导中,导入参数文件步骤,参数文件必须放在工程目录,当然是quartus工程不是matlab工程,要不也能读入,都好好的,就是你apply之后关了再开文件就找不到了,然后按默认的37阶低通滤波器给你生成一个...

我说怎么任我换参数,出来基本都是一个样子,我把参数都换的那么极限了,还是那个样子...


多谢kdy和xiaoIN,祝圣诞快乐
此帖出自FPGA/CPLD论坛
个人签名博客:http://www.ysgh.net/
 
 
 

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

开源项目 更多>>
    随便看看
    查找数据手册?

    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
    快速回复 返回顶部 返回列表