雷达 · 通信 · 电子战 / 基础精学 007
线性卷积描述有限长离散时间系统对非周期序列的响应,其输出长度通常大于任一输入长度。DFT 则把一个 N 点数据块与 N 周期序列对应起来。DFT 域中的逐频点乘法经反变换后产生的不是无限索引上的线性卷积,而是 N 点循环卷积。
两种卷积只有在周期折叠不引起样本重叠时才相同。
循环卷积是频域快速滤波、周期系统分析和块处理的基础。其关键约束是变换长度与有效卷积长度之间的关系。若只执行 FFT 乘法而忽略补零或块边界,输出首尾会发生回绕,形成确定性的时域混叠。
报告集中处理 N 点循环卷积的定义、DFT 乘法定理、与线性卷积的对应条件以及有限精度数字实现,不展开 FFT 蝶形结构、随机过程谱估计或具体作战处理流程。
主要结论采用以下假设:
时间索引 n,m,r 和周期偏移 ℓ 均为整数,DFT 长度 N 为正整数;
两个 N 点序列在基本区间 0,1,…,N−1 给出,并按 N 周期延拓;
序列可为复数,正 DFT 不含比例因子,反 DFT 含 1/N;
比较线性卷积时,原有限长序列的长度分别为 Lx 与 Lh,区间外样本为零;
数值验证采用双精度浮点运算,硬件示例采用二进制补码有符号整数。
n,m,r:一个周期内的离散时间索引(0,…,N−1)
N:DFT 长度和循环卷积周期(正整数)
(q)N:整数 q 除以 N 的非负余数(0,…,N−1)
x[n],h[n]:两个 N 点输入序列及其周期延拓(复数)
yN[n]:N 点循环卷积输出(复数)
ylin[n]:两个有限长序列的线性卷积(复数)
X[k],H[k],Y[k]:相应序列的 N 点 DFT(复数)
WN:N 次单位根(e−j2π/N)
Ch:由 h[n] 构成的循环矩阵(N× N)
对基本区间内给出的 N 点序列 x[n],其周期延拓定义为
模 N 索引把任意整数映射到一个周期内。
对固定的 m,映射
在集合 {0,1,…,N−1} 上是一一对应的置换。该性质保证循环移位不会遗漏或重复一个周期内的样本,也是卷积定理换元的基础。
两个 N 点序列的循环卷积定义为
每个输出样本由 N 个乘积组成。
与线性卷积不同,超出基本区间的索引不取零,而是回绕到同一周期内。通过变量替换可验证交换律
循环移位冲激 δN[(n−n0)N] 与 x[n] 卷积,只产生 x[(n−n0)N],因此其作用是周期移位而非截断移位。
令
并构造
则循环卷积可写为
Ch 的第一列为 h,其余各列是前一列的循环下移。
矩阵结构表明,每个输出使用相同的一组系数,只是系数与输入的配对位置随输出索引循环改变。
采用
对 yN[n] 执行 N 点 DFT:
对固定 m 令 r=(n−m)N。
因该换元是一个周期内的双射,并且指数中增加任意 N 的整数倍不改变 WNkn,故
因此
该等式对实序列和复序列均成立,不要求 N 为 2 的整数次幂。
N 的因子结构只影响 FFT 算法的计算组织,不影响循环卷积定理。
利用 N 点反 DFT 可直接得到
计算流程由两次正向 DFT、N 次复数逐点乘法和一次反 DFT 组成。
直接循环卷积需要 N2 量级乘加;采用 FFT 时,变换部分通常降为 Nlog2N 量级,但还需要数据搬移、旋转因子、缩放和缓冲存储。
定义 DFT 矩阵
由上一节对任意 x 成立的关系
可得
循环矩阵因此被 DFT 基完全对角化,其特征值为 H[k]。
循环卷积在时域表现为各样本耦合,在 DFT 基下则分解为 N 个互不耦合的标量乘法。这一结构解释了频域逐点乘法的代数来源。
长度分别为 Lx 和 Lh 的有限长序列从索引 0 开始,其线性卷积非零支撑最多覆盖
输出长度为
若将两个输入都补零到 N 点,并满足
则线性卷积的全部非零样本可落在单个 N 点周期内,不同周期副本不重叠。
此时
该条件是使用 FFT 计算一次完整线性卷积时最直接的长度规则。
当两个输入本身均能放入 N 点区间,但 N<Lx+Lh−1 时,N 点循环卷积等于线性卷积的周期求和:
因 ylin[n] 为有限长序列,实际只有有限项非零。
该式表明时域混叠不是随机误差,而是相隔 N 点的线性卷积样本按确定位置相加。仅有循环卷积输出时,一般无法分离这些已叠加的分量。
长数据流不能无限补零后一次处理,通常采用重叠相加或重叠保留方法。重叠相加把输入分块,每块与长度为 Lh 的冲激响应共同补零到满足 N≥ L+Lh−1 的长度,再把相邻块的线性卷积重叠区相加。
重叠保留则让相邻输入块共享 Lh−1 个样本,执行 N 点循环卷积后舍弃每块中受回绕影响的前 Lh−1 个输出。两种方法均利用 DFT 乘法,同时通过明确的补零或丢弃规则消除周期折叠对有效输出的影响。
循环卷积对应一个定义在有限周期网格上的移不变系统。输入循环移动一个样本,输出也循环移动一个样本,边界处没有终止状态,而是首尾相接。DFT 复指数在循环移动后只改变相位比例,因此成为该系统的特征向量。每个频点 H[k] 表示系统对相应周期复指数模式的复增益。
线性卷积假定区间外为零,循环卷积假定区间外按 N 周期重复。二者的差异实质上是边界条件不同。补零并不改变原有限长样本,却在周期副本之间插入足够的零区间,使一个周期内的卷积结果不与相邻周期重叠。
欠补零时,尾部样本回绕到周期起点,这正是 FFT 快速滤波中常见的首尾污染来源。
MATLAB 程序固定使用
两序列的线性卷积长度为 8,结果为
程序先补零到 N=8,分别按循环卷积定义、FFT 逐点乘法和循环矩阵计算输出;
随后取不足长度 N=5,检查线性卷积的周期折叠。程序还验证
MATLAB R2026a 的实际运行结果列于表 2。
| 验证项目 | 结果 |
|---|---|
| 8 点时域定义与 FFT 计算最大误差 | 8.88×10−16 |
| 8 点循环卷积与线性卷积最大误差 | 0 |
| DFT 乘法定理最大复误差 | 9.93×10−16 |
| 循环矩阵乘法最大误差 | 0 |
| 循环矩阵 DFT 对角化最大复误差 | 2.07×10−15 |
| 5 点时域定义与 FFT 计算最大误差 | 1.78×10−15 |
| 5 点循环卷积与周期折叠最大误差 | 0 |
| 8 点与 5 点循环卷积向量 | 见正文 |

图 1 固定输入序列、充分补零时的 8 点循环卷积、欠补零时的 5 点周期折叠,以及 DFT 域乘积与输出 DFT 的幅度一致性。
充分补零时,8 点循环卷积为
与线性卷积逐点一致。取 N=5 时得到
其中前三项分别由 2+5、3+(−1) 和 −1+1 形成,直接对应
![y_5[n]=y_{\mathrm{lin}}[n]+y_{\mathrm{lin}}[n+5]](http://mmo.508mallsys.com/image/loading/transparent.png)
其余两项没有可折叠的非零尾部样本。
DFT 乘法定理适用于长度相同且采用一致索引约定的 N 点序列。利用该定理计算有限长线性卷积时,两个输入必须先补零到至少 Lx+Lh−1 点;
若选择更长的 FFT 长度,额外输出样本应为数值零或有限精度下的近零值。周期序列本身需要循环卷积时,则不应把回绕解释为误差。
在公开的通信、雷达和电子测量基础处理中,该关系可用于 FIR 滤波的块 FFT 实现、周期相关运算、循环前缀条件下的数据块模型以及有限记录的快速匹配滤波。
所有应用都需明确保存 DFT 长度、有效输入长度、补零位置、归一化方式和频点排列。缺少这些信息时,相同的频域乘积可能被错误解释为线性卷积或循环卷积。
当冲激响应固定而输入数据块连续到达时,可预先计算并保存 H[k],每个数据块只需计算输入 DFT、逐点乘法和反变换。采用重叠相加或重叠保留时,还应记录块长、重叠长度和有效输出区间,以保证相邻数据块拼接后与直接线性卷积一致。
边界条件:循环卷积默认周期延拓,线性卷积默认区间外为零;未声明边界条件会导致结果含义不确定。
变换长度:计算线性卷积时若 N<Lx+Lh−1,尾部必然折叠到周期起点;仅增加 FFT 运算精度不能消除该结构性误差。
输入长度:若任一原序列本身长于 N,形成 N 点序列前还会先发生周期求和或截断,必须与卷积后的折叠区分。
归一化约定:不同 DFT 实现可把比例因子放在正变换、反变换或两端;频域乘积和幅度比较必须使用一致约定。
有限精度:浮点 FFT 存在舍入误差;定点实现还受乘积截断、累加溢出、旋转因子量化和级间缩放影响。
复数数据通路:一般 DFT 域乘法需要四个实乘法和两个实加法,或等价的三乘法结构;资源与时序取决于器件映射。
块边界:重叠长度、丢弃区间或输出相加位置错误会产生块间不连续,即使每个 FFT 数据块内部计算正确。
并行结构时序:配套 4 点模块未插入寄存器,最高工作频率取决于乘法器与加法树的综合映射,不能由功能公式单独确定。
采样系统非理想:量化噪声、时钟抖动、模拟前端带宽和非线性会改变输入样本,不包含在理想卷积模型中。
N 点循环卷积在模 N 索引下对两个周期序列求和,其 DFT 等于两个输入 DFT 的逐频点乘积。换元 r=(n−m)N 在一个周期内的双射性质给出该定理;循环矩阵的 DFT 对角化进一步表明,频域乘法是循环移位系统在特征向量基下的标量表示。
有限长线性卷积与循环卷积是否一致取决于周期副本是否重叠。将两个输入补零到 N≥ Lx+Lh−1 时,一个周期包含完整线性卷积;长度不足时,循环输出等于线性卷积样本按 N 点间隔的周期求和。
MATLAB 实际运行在双精度误差范围内验证了时域定义、FFT 乘法、循环矩阵分解、充分补零和欠补零折叠。SystemVerilog 文件以 2W+2 位输出实现 4 点并行循环卷积;
动态 HDL 结论仍以可用仿真器上的自检运行为边界。
内容依据:每日精学第 07 课《N 点循环卷积与 DFT 乘法关系》。图表沿用原课固定参数数值结果,属于数值验证,不代表设备实测。