CIC滤波器
CIC滤波器是滑动平均滤波器的非常高效的迭代实现,只需要一个减法和一个加法,而滑动平均需要N-1个加法。
cic滤波器相当于一个梳状滤波器y(n)=x(n)-x(n-D),H(z)=1-z-D,和一个积分滤波器y(n)=x(n)+y(n-1),H(z)=(1-z-1)-1的级联,两个级联后y(n)=x(n)-x(n-D)+y(n-1),H(z)=(1-z-D)/(1-z-1),和求和表达式y(n)=x(n)+x(n-1)+x(n-2)...+x(n-D),H(z)=(1-z-D)/(1-z-1)一样.
通常将comb部分放在低采样率步骤,可以减少存储器用于延时的Size,此乃精巧模式;an N-sample delay after decimation by R is equivalent to a D-sample delay before decimation by R。
问题
抽取后和抽取前的频域公式怎么变换?
x(n)=X(w)*ejwn,抽取后y(n)=x(Rn)=X(w)ejwRn=Y(w1)ejw1n;令w1=Rw,得到Y(w1)=X(w/R)。
抽取因子,差分因子改变对频域公式的影响?他们不一样对实际应用的影响?
抽取因子变化,对滤波器形状影响很小?同样的FIR滤波器可以用于变抽取因子的系统?
以上两个问题,可以回答为:H(z)=(1-z-RM)/(1-z-1),R倍抽取后变为H(z)=(1-z-M)/(1-z-1/R),系统的零点由分子决定,与R无关,因此R的变化不会改变滤波器的带宽,
梳妆滤波器和降采样颠倒后,差分因子变为N=D/R?
->
CIC怎么降低硬件要求的?减少存储器,减小时钟
运算过程中位数的变化?
积分器有可能不溢出,满足两个条件?
CIC滤波器的FPGA表达(精巧模式):
process(rst,clk)
begin
if rst=1 then
y(n-1)=0;
k=0;
x(n)=0;
if rising(clk) then
x(n)=x(n)+xin;
k=k+1;
if k=3 then
k=0;
endif;
if k=0 then
y(n-1)=x(n);
y(n)=y(n-1);
yout=y(n)-y(n-1);
endif;
end process
CIC滤波器的FPGA表达(粗犷模式):
process(rst,clk)
begin
if rst=1 then
y(n-1)=0;
k=0;
if rising(clk) then
x(n)="0000"+xin;
x(n-1)=x(n);
x(n-2)=x(n-1);
x(n-3)=x(n-2);
xd4=x(n)-x(n-3);
y(n)=xd4+y(n-1);
k=k+1;
if k=0 then
yout=y(n);
endif;
if k=3 then
k=0;
endif;
end process
最新文章
- Eclipse界面设置与常用技巧
- 命令行启动win7系统操作部分功能
- [CareerCup] 10.5 Web Crawler 网络爬虫
- 树形结构的数据库表Schema设计
- 多tab页框架的使用场合
- Linux学习——shell编程之环境变量配置文件
- python_求1-2+3-4+......-100的值
- Java 8 新特性:3-函数(Function)接口
- uname命令详解
- spring的IOC 的底层实现原理
- Python学习--12 异常处理、调试
- [转]hadoop新手错误解决方法
- Maven:浅析依赖(dependency)关系中 scope 的含义(转)
- 常用命名_html
- B2
- 执行composer install后报错:执行composer install后报错: d11wtq/boris v1.0.10 requires ext-pcntl * ->; the requested PHP extension pcntl is missing from your system.
- Codeforces Round #410 (Div. 2)A B C D 暴力 暴力 思路 姿势/随机
- 【BZOJ】4753: [Jsoi2016]最佳团体 01分数规划+树上背包
- spark-sql做ETL时遇到的两个问题
- C++防止文件重复包含