z变换中封闭形式和开放形式有什么区别

信息处理 有限脉冲响应
2022-02-02 15:29:12

我是 DSP 的新手,我需要对下面的例子有一个明确的了解。考虑以下h[n]作为系统的脉冲响应:

h[n]=an(u[n]u[nN])

因此打开的 z 变换可以表示为:

H(z)=1+a1z1+a2z2++aN1z(N1)
其封闭形式表示为:
H(z)=1zN1zNaNza
显然,对于硬件实现而言,封闭形式比开放形式要好,因为如下所示,封闭形式可以在时域中写成这样:
y[n]=x[n]aNx[nN]+ay[n1]

现在封闭形式和开放形式之间的唯一区别是零和极点 z=a. 实际上,在我看来,通过添加零和极点,我们获得了更好的表示。但我的问题是,

在系统中添加零和极点的缺点是什么z=a.

我们如何分析封闭式和开放式之间的利弊?

我将不胜感激您能提供的任何帮助。

1个回答

一个可能的差异出现在单位圆之外的极点上。请注意,原始系统是一个截断的 IIR 滤波器。因此,它是一个 FIR 滤波器,对于任何有限的滤波器都没有稳定性问题a.

然而,封闭形式表示包括极点,并实现极点零消除。尽管理论上(使用无限精度算术)这不会造成问题,对于有限长度算术和较大的值N,并且对于|a|>1,您最终可能会遇到数字问题。

具体来说,瞬时动态范围(浮点表示的尾数长度)将足够大,以能够准确地表示分子中指示的算术差异。事实上,这也可能是有限长度实现的问题,当aN太大而无法添加ax[n1], 这可能发生在|a|>1. 那么哪一个对这个数字问题更敏感呢?你最好自己测试。此外,封闭式版本可能会给那些人带来额外的问题a1FIR 滤波器并非如此。

作为 te 封闭形式的一个优点,请注意 FIR 形式和 IIR 形式需要相同数量的内存(将过去的输入值保存到延迟N样本),但是与大 N 的 FIR 版本相比,封闭形式(截断的 IIR)需要更少的计算 MACS。