Technical Writing
FPGA 定点 FFT 设计前必须想清楚的五件事
从位宽、缩放、旋转因子到时序接口,整理定点 FFT 的设计检查项。
输入范围与 Q 格式
先明确输入是否归一化、整数位有多少、符号位如何表示。没有统一 Q 格式,后续乘法器和误差分析都没有可靠基准。
每级是否缩放
蝶形加法可能让幅值翻倍。可以逐级右移、块浮点缩放或保留增长位,不同策略对应不同信噪比和资源代价。
旋转因子的量化
旋转因子位宽既影响乘法器资源,也影响旁瓣和噪声底。应由 MATLAB 或 Python 生成定点表,并保留量化误差对照。
数据顺序
自然序输入、位反转输出和流式接口必须在顶层文档中写清。很多“FFT 结果错误”其实只是索引顺序不一致。
验证方法
使用冲激、单频正弦、双音和随机数据四组输入;把 RTL 输出还原为浮点后,与软件参考模型逐点比较误差。