赛灵思官方文档中在讲乘累加器(MAC)(也就是在这篇博文中的乘累加器:【 FPGA 】FIR 滤波器的架构)时,有一段话是对系数填充的简单叙述,当时我没有写进那篇博文中去,我觉得放到那里会让我的博文变得难以理解。
这篇博文我仍然不想放进去,因为我不是太明白,还是塞进这一块,供大家参考吧:
实现滤波器所需的乘法器数量是通过滤波计算过程所需的乘法次数(考虑对称和半带系数结构和采样率变化),通过除以可用时钟频率来处理输入采样。 可用的时钟周期值总是向下取整,乘数器的数量则要向上取整。 如果存在非零余数,则部分MAC引擎要针对较少的滤波器系数进行计算,并且用零填充系数以适应过量周期。
如果在系数矢量中补充一些零值,则影响输出采样,即在指定的冲激响应输出之前会有一定数目的零输出。FIR编译器IP核根据系统时钟速率,采样率,抽头和通道数以及速率变化自动生成满足用户定义的性能要求的实现。 FIR编译器IP核插入一个或多个乘法器以满足总体吞吐量要求。
进入今天的正题:
When implementing a filter with symmetric c