这两天在弄CIC滤波器,在调试自己搭建的CIC滤波器过程中,发现自己搭建的CIC滤波器和mfilter.cicdecim的结果总是不一致。
最后在同事的帮助下找到了问题所在,需要对CIC中间计算结果进行溢出处理,最后才能得到想要的结果。
问题来了,我搭建的CIC滤波器参与运算的数据类型都是double的,我也统计了中间计算结果最大的也就5e18,远远没有达到运算溢出。那为什么还是要对中间运算结果进行类似定点补码运算的溢出处理呢?
而且如果进行溢出处理的阈值设置的太大或者太小也会造成信号严重失真。
比如我给的激励中最大值为0.2086,CIC为5级2倍抽取,那么就CIC的增益来说:运算中的最大值为0.2086*2^5 = 6.6656。
如果我的溢出阈值的绝对值小于6.6656,经过CIC之后的信号就会存在比较明显的失真。
另外当溢出阈值大于2^32以后,经过CIC之后的信号也会渐渐开始失真,越大失真越严重。

有没有哪位大神能解释一下为什么会有这样的现象出现,溢出阈值取多大是最合适的?

回答1: CIC 抽取滤波器仿真计算最大的增益  (D*M)^N;中间的位宽需要限制在Bin+[LOG2((D*M)^N)]

CIC滤波器溢出处理相关推荐

  1. 基于MATLAB FDATOOL的CIC滤波器设计

    级联积分梳状(CIC)滤波器是一种被广泛应用于软件无线电中,可以实现抽取或者插值的高效滤波器.它主要用于降低或提高采样率.CIC滤波器的主要特点是,仅利用加法器.减法器和寄存器,占用资源少,实现简单且 ...

  2. m基于FPGA的积分梳状CIC滤波器verilog设计

    目录 1.算法描述 2.仿真效果预览 3.verilog核心程序 4.完整FPGA 1.算法描述 积分梳状滤波器,是指该滤波器的冲激响应具有如下形式: 其物理框图如图所示: 可见,CIC滤波器是由两部 ...

  3. 滑动平均滤波器与CIC滤波器

    文章目录 前言 一.传递函数 1.什么是传递函数 2.FIR与IIR在传递函数上的区别(FIR) 3.FIR与IIR在传递函数上的区别(IIR) 4.FIR的抽头系数/FIR的阶数 5.FIR滤波器的 ...

  4. 如何利用CIC滤波器、CIC补偿滤波器和半带滤波器设计一个高频数字抽取滤波器

    设计了采样频率为640 MHz.过采样率为64的高频数字抽取滤波器.该数字抽取滤波器由CIC(Cascaded Integrator Comb)滤波器(降16倍).CIC补偿滤波器(降2倍)和半带滤波 ...

  5. Matlab调用函数实现CIC滤波器

    matlab里设计cic滤波器的函数有以下两种: 1. fdesign.decimator 例如:设定好采样频率Fs, 信号带宽Fp, 阻带衰减As, 差分时延m及降采样比D就可以得到cic滤波器的传 ...

  6. 关于CIC滤波器中积分器和梳状器的作用

    关于CIC滤波器中积分器和梳状器的作用 当时我也被这个问题困绕好久,然后去网上查找,关于这个问题的回复几乎是乱回答的,所以写了这篇博客,希望对研究这方面的有所帮助 CIC滤波器的作用 值得一提的是ci ...

  7. CIC滤波器的Matlab仿真与FPGA实现

    CIC滤波器 1.单级CIC滤波器: CIC滤波器的冲激响应为: h(n)=1,[0,M-1] h(n)=0,其他 可见CIC滤波器在时域上是一个矩形窗,是一个累加器(积分器). 用MATLAB仿真不 ...

  8. matlab 级联cic,Matlab中CIC滤波器的应用

    CIC滤波器基本原理 CIC(积分梳状级联)滤波器是工程上经常用的滤波器,因为CIC滤波器不需要乘法,CIC滤波器往往在级联抽取滤波器的第一级和级联插值滤波器的最后一级.这一节我们以CIC抽取滤波器为 ...

  9. 【CIC滤波器】基于MATLAB/FPGA的数字CIC滤波器的设计

    FPGA代码: module down(i_clk,//输入时钟i_rst,//输入复位信号i_M, //抽取值i_data,//输入信号o_data,//输出信号r_clk);input i_clk ...

最新文章

  1. 某大厂女程序员哀叹:还不到三十岁,父母竟让自己和一个离异有娃的男人相亲!
  2. 对文件中的行,单词和字符进行迭代
  3. linux gdb#039;查找寄存器地址,【Linux跟踪和调试】gdb
  4. 安川交流伺服电机的驱动
  5. 广州的11个辖区_避开人潮,广州7月展览指南,有11个免费
  6. 3/5 MySQL入门总结:数据库(DATABASE)操作
  7. 网络自己发 sip invite_IP话机网页配置SIP账号
  8. JSP基础之九九乘法表(利用JSP脚本段制作一张九九乘法表)
  9. java 学生签到考勤系统_学生考勤管理系统 用了ecplise编程实现Java+jsp+mysql数据库实现对学生的考勤管理签到和教师查看登陆注册以及一套完整的增删改查 - 下载 - 搜珍网...
  10. 谷歌“Adobe Flash Player已被屏蔽”的解决办法
  11. html 多选框获取值数组,前端获取checkbox复选框的值 通过数组形式传递
  12. 云刷工具q币android版,交流电app下载2021-交流电交友手机版v3.2.4最新版-游吧乐下载...
  13. ALL_TAB_COLS
  14. NO.3 微信第三方平台代创建小程序审核发布以及小程序信息(头像,名称,简介)修改 以及微信错误码 返回信息
  15. ubuntu16.04 鼠标右键没有压缩/解压 选项
  16. 向身边优秀的人学习,让自己变得优秀
  17. 手把手教你玩转 Excel 数据透视表
  18. MFC如何在单文档下添加背景图片
  19. 《沉思录卷八》灵魂先于肉体屈服是可耻的
  20. 用Zebra打印机制作一个节日贺卡

热门文章

  1. 关于三岔路口双车接力,这位同学把问题总算问清楚了
  2. 第十六届全国大学生智能汽车竞赛安徽赛区赛事指南
  3. 2020年智能车竞赛由预赛赛道拼接成决赛赛道的方案
  4. resultmap为list_MyBatis源码:原来 resultMap 解析完是这样
  5. python lambda 逻辑_Python之lambda表达式和内置函数
  6. python 结束进程 terminate_python – 如果已存在浏览器窗口,则process.terminate()不适用于chrome / firefox子进程...
  7. C 语言 cgi 程序简单总结
  8. 更换ip软件安卓_2019十大手机读书软件排行榜
  9. VS Code关联vivado并安装Verilog插件
  10. 从MATLAB帮助文档上学习 chirp