数字信号处理(DSP)涉及开发可用于以特定方式增强信号或从中提取一些有用信息的算法。
最简单的模拟信号处理示例可能是图1所示的熟悉的RC电路。
该电路用作低通滤波器。 它去除或滤除高于电路截止频率的频率分量,并以很小的衰减通过较低频率的分量。 在本例中,信号处理的目的是消除高频噪声并提取所需的信号部分。
请注意,输入和输出均为模拟形式。 这是一个很大的优势,因为对科学和工程感兴趣的信号本质上是模拟的。 因此,对于模拟信号处理,信号处理模块的输入和输出端不需要接口电路(ADC和DAC)。
模拟信号处理的一个主要缺点是电气元件值的变化。 模拟电路依赖于有源和无源元件(电阻、电容、电感和放大器)的精度。 例如,截止频率(fC) 的上述低通滤波器由下式给出:
如您所见,筛选器响应是组件值的函数。 由于电气元件无法以完美的精度制造,因此模拟电路的精度受到限制。 由于元件公差,性能不是100%可重复的,我们预计不同电路参数会有一些板对板的变化。
另一个缺点是模拟电路不灵活。 例如,要修改上述滤波器的频率响应,我们需要调整组件的值(硬件需要修改)。 数字信号处理并非如此。 使用DSP,甚至可以通过简单地改变一些可编程系数将低通滤波器转换为高通滤波器。
此外,模拟电路不适合实现数学函数(乘法、除法等)。 这与数字领域形成鲜明对比,在数字领域,甚至可以轻松实现更复杂的数学运算。
数字电路不受上述限制。 例如,虽然元件值和寄生效应的变化会略微改变CMOS逆变器栅极的延迟,但栅极的整体功能将保持不变。 因此,与模拟电路不同,数字电路不太容易受到元件变化和寄生效应的影响。 数字电路也更加灵活,适合实现数学功能。
剩下的问题是,我们需要哪些基本组件来处理数字域中的信号。
如图2所示,我们需要在信号处理模块的输入和输出端安装模数(A/D)和数模(D/A)转换器,以便将数字电路与实际模拟信号连接起来。
A/D转换器定期对模拟输入进行采样,如图3所示。
然后,它量化每个样本的振幅。 图4显示了4位ADC如何量化模拟输入。
在此图中,模拟输入(蓝色曲线)在ADC的输入范围内取不同的值。 考虑4位ADC,有16个离散电平来量化输入信号的幅度。 这些水平由图中LSB的倍数表示。 因此,LSB(最低有效位)规定了ADC可以检测到的模拟输入值的最小变化。 换句话说,输入的最小变化会导致ADC输出代码的变化。
让我们看看 ADC 如何为每个样本生成二进制代码。 ADC 将模拟输入信号的幅度与其 16 个离散电平进行比较。 基于这种比较,生成输入的数字表示。 例如,对于图 4 中所示的蓝色曲线,将输入信号与 ADC 的 16 个离散电平进行比较的过程可能会导致所描绘的红色曲线。 然后,ADC使用二进制代码来表示所获得的阶梯近似的每一级。 例如,当红色曲线的值等于 LSB 的 4 倍时,我们的四位 ADC 的输出就是 0100。
需要注意的一点是,图 2 中的“数字信号处理器”块接收离散时间序列,因为 ADC 以预先指定的采样间隔的倍数进行采样。 并且,每个样本的幅度被量化。 这与模拟信号处理形成对比,在模拟信号处理中,输入是连续时间信号,可以取指定范围内的任何值。
信号经过“数字信号处理器”块处理后,我们通常需要将其转换为等效的模拟信号。 这是通过 D/A 转换器实现的。 图 5 描述了一个音频处理应用程序。
在这种情况下,使用数字信号处理系统来添加回声或调整声音的速度和音高以获得完美的声音。 然后,处理后的信号被传送到DAC,以产生可由扬声器输出的模拟信号。 请注意,有些DSP应用不需要DAC。 例如,雷达中采用的数字信号处理算法可能会为我们提供飞机的位置和速度。 这些信息可以简单地打印在纸上。
DSP 算法由许多数学运算组成。 例如四阶有限脉冲响应 (FIR)滤波器需要五个数字乘法器,四个加法器以及一些延迟元素,如下所示。
因此,数字信号处理器实际上是一个计算引擎。 该计算引擎可以是通用处理器、FPGA,甚至是专用DSP芯片。 每个选项在灵活性、速度、易于编程和功耗方面都有自己的优点和缺点。
由于计算资源非常有价值,数字信号处理试图为我们提供工具和技术,以实现快速、计算高效的算法。 例如,有可用于实现给定FIR滤波器的几种不同结构.
DSP概念和工具可用于任何需要在数字域中操纵输入信号的应用。 这包括但不限于音频和视频压缩、语音处理和识别、数字图像处理和雷达应用。
在这些领域追求职业都需要掌握广泛的专业DSP算法,数学和技术。 事实上,任何一个人似乎都不太可能掌握所有已经开发的DSP技术。 然而,几乎所有DSP应用都使用一些常见的DSP概念,如滤波、相关和频谱分析。 因此,DSP教育的第一步是掌握基本概念,然后专注于特定兴趣领域需要的专业技术。
全部0条评论
快来发表一下你的评论吧 !