对零点的一些理解

来源:互联网 发布:js只允许数字和小数点 编辑:程序博客网 时间:2024/04/29 02:57
 对零点的一些理解

 

    在数字信号处理中,通常用系统函数来描述一个系统:

 

                              H(z)=A(z)/B(z)       (1)

    上式中分子为零时得到的解是为系统的零点,分母为零时得到的解是为系统的极点。可以说,一个系统零极点确定之后,这个系统的特性就完全确定了。或者说,用式(1)描述的系统与用零极点描述的系统是完全等价的。

       在数字信号处理的分析和应用中,对极点的讨论更多,因为极点事关系统的稳定性。一个不稳定的系统是无法使用的。但对零点的讨论则比较少。零点到底起什么样的作用呢?为什么最小相位系统要求零极点都在单位圆内?

       实际上,零点最大的作用就是控制系统的相位延迟。如何理解呢?假定某个系统为全零点的一阶系统,比如一阶的FIR滤波器,其系统函数为:

                            H(z)=1+0.5z-1     (2)

这个公式表示的如下的信号处理过程:系统的输出是当前的输入加上0.5倍的前一个时刻输入之和。显然,如果当前的输出等于当前输入的话,系统没有任何延迟,这时系统函数为H(z)=1,的确也没有零点。如果系统的输出还和前一个时刻的输出有关的话,至少在时间上,输出相对输入必定有滞后,这在相位上就表现为延迟。因此可以顺理成章地推断,零点越大,也即是前一个时刻在输出中所占的权重越大,相位延迟越大。而且还可以顺理成章地推断,零点越多的话,系统的延迟越厉害。因为根据多项式分解的理论,任何一个多项式总可以分解为多个低阶多项式的乘积。也就是说,一个高阶的FIR滤波器可以看做是多个一阶FIR滤波器串接而成。每个一阶的FIR滤波器都会造成延迟,则阶数越多的话,延迟越多。

       由此也可以很好理解,为什么最小相位系统实际上是最小相位延迟系统,因为根据上述的理解,单位圆外的零点导致的相位延迟必定大于单位圆内的零点。