傅里叶级数、傅里叶变换、Z变换、数字滤波器

FPGA开发这么多年,哪怕是已经在项目中拥有完整的Matlab定点化仿真、FPGA算法移植和仿真调试经验,但是对于数字信号处理的核心知识点,仍然是两眼一抹黑,更别提如何去设计和实用数字滤波器。

最近补习数字信号处理的基础知识,对于几种傅里叶、Z变换以及数字滤波器的设计,也算是有了一些新的认识,这里会陆续做一下总结和记录,温故而知新。

1 傅里叶级数与傅里叶变换

1.1 基本概念

|---------------------|---------------------------|--------------|---------------------|
| ++名称++ | ++时域++ | ++频域++ | ++使用场景++ |
| 傅里叶级数(FS) | 连续、周期 | 非周期、离散 | 数学、工程基础 |
| 傅里叶变换(FT) | 连续、非周期 | 非周期、连续 | 一般非周期信号 |
| 离散时间傅里叶变换(DTFT) | 离散、非周期 | 周期、连续 | 采样信号理论 |
| 离散傅里叶变换(DFT) | 离散、有限长**(可视为无限长里面的周期信号)** | 周期、离散 | 计算机实现 (FFT,快速傅里叶变换) |

1.2 傅里叶级数(FS)

对于连续的周期信号,可以拆分成无穷个正弦波(谐波)的叠加

周期为T的信号,其FS的公式:

其中

  • 是直流分量
  • 是振幅
  • 是基频
  • 是谐波频率(基频的整数倍)

使用欧拉公式,可以得到更加简洁的FS:

注意,这里原始的FS的n是从0~无穷(0为),使用欧拉公式化简后n从负无穷~无穷,这里可以再做计算:

1.3 傅里叶变换(FT)

如果连续非周期信号,此时傅里叶级数FS无法使用,这里就得请出傅里叶变换FT:

傅里叶反变换:

1.4 推导快速傅里叶变换(FFT)

2 Z变换

3 数字滤波器

相关推荐
j7~7 小时前
【Linux】二十二.《Linux 信号机制完全指南:表示、捕捉与处理》
linux·信号处理·volatile·可入重函数·保存信号
X7x511 小时前
跨厂商路由引入(重发布)实战指南:华为、华三、思科的逻辑差异与配置避坑
网络协议·信息与通信·信号处理·实施路由引入
仲南音16 小时前
Xilinx FPGA——时钟IP核MMCM、PLL
fpga开发
I'm a winner1 天前
基于Xilinx FPGA的LVDS高速串行通信系统(三)--数据训练及握手机制【文末源码】
fpga开发
upper20201 天前
coremark移植坑之-nostartfiles -nostdlib参数
学习·fpga开发·coremark移植·riscv设计
nnerddboy2 天前
脑电信号处理实战 07|被试级泛化评估:心算状态解码、交叉验证泄漏对照与置换检验
信号处理
Eloudy2 天前
Vivado 纯命令行构建 FPGA 项目教程
fpga开发
Rambo.xia2 天前
AXI跨时钟域与数据一致性——CDC FIFO深度不够、写后读冒险、多Master仲裁、乱序返回,出了Bug根本查不出来
fpga开发·bug
upper20202 天前
FPGA部署卷积神经网络识别MINST图片
fpga开发·卷积神经网络·minst·minst识别·部署神经网络·神经网络识别图片
TechEdu2026062 天前
[通信与计算]离散时间信号处理:理论、算法与工程实践
信号处理·通信系统·信息通信