您的位置  > 互联网

多通道CIC抽取滤波器CICIP核实现(3)

之前写过CIC滤波器原理实现仿真、CIC抽取滤波器仿真及FPGA实现(一)

及FPGA代码实现 CIC抽取滤波器仿真及FPGA实现(2)

在实际应用中使用CIC(4.0)更加灵活,但在使用IP核之前需要进行仿真分析,然后才能有的放矢地使用。

配置IP核时,需要了解各个选项的功能核作用。 CIC的IP配置主要集中在第一个接口,如下图

该图包含丰富的信息。 左半部分的三个选项卡分别显示接口、过滤器性能和端口数据结构。 右侧主要包含滤波器参数设置、界面设置、滤波器参数设置汇总。

首先设置滤波器的基本参数( )

滤波器类型(Type):设置CIC滤波器模式为提取或插值; 级联数(Of):设置级联CIC滤波器级数;

微分延迟(Delay):设置微分延迟。 IP核只能设置为1或2;

通道数(Of):设置多通道滤波器。

上述参数设置可参考GUI手册,如下所示: R系数在数据速率部分设置。

采样率设置(rate)

在这里您可以选择可编程配置和固定参数类型。 提取或插入系数对应于R值。 这里设置为6,即提取的6倍。

硬件采样处理规范( )选项卡主要配置输入数据速率和CIC处理速率。

输入采样率(input)是输入信号的采样频率。

时钟频率(clock)是执行操作的频率。

接口参数设置选项卡主要包含输入位宽、是否全精度计算、是否使用DSP48模块、是否使用流接口等参数。

完成以上设置后,CIC滤波器参数设置完成。 然后可以通过左侧选项卡查看过滤器性能参数。

在这一部分中,您可以看到滤波器的滤波性能,例如通带纹波、第一级旁瓣衰减等信息。

N个滤波器不同级联数的性能对比:

级联位数相同提取数不同时的滤波器性能比较:

通过以上设置完成IP核的配置。

仿真时,通过DDS产生两个频率为1.5K和42K的正弦信号,叠加作为滤波器的输入信号。 42K滤波器的信号衰减为-39dB。

从下面的仿真中我们可以看到多通道数据的输入输出时序。 由于采用16路输入,因此在IP进行计算的整个时间段内DSP并不工作。 因此,在消耗相同硬件资源的情况下,可以增加输入通道的数量来提高数据处理能力。 一个周期内的时序如下:

通过CIC滤波器核的使用可以看出,在多通道处理资源消耗方面,通道数越多,单通道消耗的资源越少,但相应需要的时间也越长。

说实话,不使用IP核,使用自己的编码方式来实现CIC滤波器更加灵活,也节省资源。