专利名称:一种级联积分梳状滤波器的制作方法
技术领域:
本发明涉及通信领域,尤其涉及一种级联积分梳状滤波器。
背景技术:
在软件无线电中频处理单元中,级联积分梳状(CIC)滤波器将A/D(模数转换器)转换后输出的高速数字信号进行抽取,输出低速率的数字信号。设p为CIC滤波器的阶数,M为抽取率,则CIC滤波器的转移函数为HCIC(z)=(1-z-M1-z-1)p]]>CIC滤波器可实现整数倍抽取。它通常被应用于窄带信号系统多级抽取的第一级设计。CIC滤波器的优点是系数全部为1,因此应用其在实现滤波时无需进行乘法运算,只是进行简单的累加运算即可。目前在多级抽取系统中,将速率最高的第一级用CIC滤波器实现,极大的降低了运算量,获得了最佳的效果。
与本发明相关的现有技术提供了一种CIC滤波器,其实现结构图如图1所示,包括积分单元、梳状单元以及在积分单元和梳状单元间设置的抽取单元,积分单元在主时钟的节拍下工作,梳状单元的工作时钟由外界生成提供。输入信号的频率为fs,积分单元的工作频率也为fs。在积分单元和梳状单元之间,进行抽取,降频为fs/R,则梳状单元的工作频率为fs/R。
现有技术存在如下的缺点由于现有技术中输入数据的频率必须和主时钟同频,因此对输入数据的频率有限制,而且不能动态控制可变抽样率和抽样相位,不能实现抽样阶数的可变。
发明内容
本发明的目的是提供一种级联积分梳状滤波器,通过本发明,避免了现有技术中输入数据的频率必须与主时钟同频的限制而导致的输入数据的频率受限的问题。
本发明的目的是通过以下技术方案实现的本发明提供一种级联积分梳状滤波器,其包括积分单元、抽取单元和梳状单元,其中所述所述积分单元、抽取单元和梳状单元中分别设置有数据端口和同步信号端口;所述同步信号端口,用于传输同步信号;所述数据端口,用于根据同步信号输入数据,并通过同步信号对输出的数据进行控制。
其中,所述积分单元包括至少一级积分子单元,并且每一级积分子单元包括第一寄存器和第二寄存器;所述第一寄存器,用于存储所述同步信号,输出所述同步信号给下级单元,以及提供给同一级的第二寄存器;所述第二寄存器,用于存储数据端口输入的数据,并通过所述同步信号控制输出数据给下级单元。
其中,所述积分单元还包括第一选择器和第二选择器;所述第一选择器,用于接收不同阶数的积分子单元输出的数据,并根据配置信号选择对应阶数的数据并输出;所述第二选择器,用于接收对应所述阶数的积分子单元输出的同步信号,并根据配置信号选择对应阶数的同步信号并输出。
其中,所述抽取单元包括第一固定计数器和第一比较器;所述第一固定计数器用于根据每输入一个同步信号产生一次计数累加,并将计数值传送给所述第一比较器;所述第一比较器,用于接收第一固定计数器输出的计数值,并将其与用户设置的最大固定抽取相位进行比较,当二者相等时,输出控制信号用来控制数据的输出,以及作为梳状单元的同步信号的输入。
其中,所述抽取单元包括可变计数器和计数终点寄存器;所述计数终点寄存器,用于根据用户的指示输入用户配置的计数终点给可变计数器;所述可变计数器,用于根据所述计数终点控制计数范围,并根据输入的同步信号输出相应的计数值。
其中,所述抽取单元还包括第二比较器和第一抽取相位寄存器;所述第一抽取相位寄存器,用于存储用户配置的相位值,并输出所述相位值给所述第二比较器;所述第二比较器,用于将接收到的所述相位值与所述可变计数器输出的计数值进行比较,并当二者相等时,输出控制信号用来控制数据的输出,以及作为所述梳状单元的同步信号的输入。
其中,所述抽取单元包括第二抽取相位寄存器、第二固定计数器和第三比较器;所述第二抽取相位寄存器,用于存储配置的抽取相位,并根据需要输出相应的抽取相位给所述第三比较器;所述第二固定计数器,用于根据同步信号的控制进行计数值的累加,并将计数值输出给所述第三比较器;所述第三比较器,用于将接收到的计数值与抽取相位进行比较,当二者相等时,输出控制信号用来控制数据的输出,以及作为梳状单元的同步信号的输入。
其中,所述梳状单元包括至少一级梳状子单元,并且每一级梳状子单元包括第三寄存器、第四寄存器和第五寄存器;所述第三寄存器,用于通过同步信号控制对输入到其内的数据进行微分处理,并将处理后的数据传送给同一级的第五寄存器;所述第四寄存器,用于存储所述同步信号,并输出所述同步信号给下级单元,以及提供给同一级的第五寄存器;所述第五寄存器,用于存储处理后的数据,并通过所述同步信号控制输出数据给下级单元。
其中,所述梳状单元还包括第三选择器和第四选择器;所述第三选择器,用于接收不同阶数梳状子单元输出的数据,并根据配置信号选择对应阶数的数据并输出;所述第四选择器,用于接收对应所述阶数的梳状子单元输出的同步信号,并根据配置信号选择对应阶数的同步信号并输出。
由上述本发明提供的技术方案可以看出,本发明中所述CIC滤波器包括积分单元、抽取单元和梳状单元,其中所述所述积分单元、抽取单元和梳状单元中分别设置有数据端口和同步信号端口;所述同步信号端口,用于传输同步信号;所述数据端口,用于根据同步信号输入数据,并通过同步信号对输出的数据进行控制。通过本发明,能够通过同步信号端口传输同步信号,并通过所述同步信号控制数据从数据端口的输入,解决了现有技术中数据输入的频率必须与主时钟同频而导致的输入数据的频率受限的问题,而且本发明易于实现流水处理流程,并能够减少处理时延。
另外,本发明通过在抽取单元设置的可变计数器和比较器等还能够动态控制可变抽样率和/或可变抽样相位,从而易于滤波器的扩展。
另外,本发明通过设置在积分单元或梳状单元中的选择器还能够动态控制控制可变阶数。
图1为现有技术中提供的CIC滤波器的实现结构图;图2为本发明提供的第一实施例的方框图;图3为本发明提供的第一实施例中数据周期等于时钟周期时的输入关系图;图4为本发明提供的第一实施例中数据周期多倍于时钟周期时的输入关系图;图5为本发明提供的第一实施例中积分单元的实现结构图;图6为本发明提供的第一实施例中实现可变抽取率、可变抽取相位时的抽取单元实现逻辑结构图;图7为本发明提供的第一实施例中N级梳状单元的实现逻辑结构图;图8为本发明提供的第二实施例中积分单元实现可变阶数部分的实现逻辑结构图;图9为本发明提供的第二实施例中梳状单元中实现可变阶数部分的实现逻辑结构图。
具体实施例方式
针对本发明所述的CIC滤波器,本发明提供的第一实施例,其结构如图2所示,包括积分单元、梳状单元以及在积分单元和梳状单元之间设置的抽取单元,以及分别在所述积分单元、抽取单元与梳状单元中设置的数据端口和同步信号端口;所述数据端口,用于输入数据data_in;所述同步信号端口,用于输入同步信号data_sync,并通过所述同步信号对积分单元、抽取单元和梳状单元的数据端口输入的数据进行控制。
在本发明提供的第一实施例中,对控制输入数据时的同步信号data_sync进行了配置,具体如下由于本发明中同步信号可以通过同步信号端口从外部输入,所以所述同步信号可以根据时钟周期(系统时钟主频率的周期)进行灵活地配置所述同步信号可以等于时钟周期,也可以多倍于时钟周期。
通过同步信号控制数据从数据端口输入和输出时,CIC滤波器支持的数据周期可以等于时钟周期(也就是说,可以与现有技术一样与系统主时钟同频),也可以多倍于时钟周期。当数据周期等于时钟周期时,同步信号data_sync和数据端口的输入数据data_in的关系如图3所示,在数据端口输入数据data_in有效时,data_sync一直为高电平,表示此时每一个时钟周期内送入的数据都有效。
当数据周期多倍于时钟周期时,同步信号data_Sync和数据端口输入数据data_in的关系如图4所示,同步信号data_sync在数据端口输入数据有效时的第一个时钟周期内为高电平,其它时钟周期内为低电平。
由上述可以看出,如果数据按照上述格式送入后,可用同步信号控制数据的运算过程。下面分别描述第一实施例中的各个单元的实现结构。
一、积分单元基于按照上述格式从数据端口输入的数据,在本发明提供的第一实施例中,积分单元的实现结构如图5所示所述积分单元包括至少一级积分子单元,并且每一级积分子单元包括第一寄存器即图5中的reg2和第二寄存器即图5中的reg1;所述第一寄存器,用于存储所述同步信号,输出所述同步信号给下级单元,以及提供给第二寄存器;所述第二寄存器,用于存储数据端口输入的数据,并通过所述同步信号控制输出数据给下级单元。这里的下级单元的具体含义为如果所述积分单元仅仅包括一级积分子单元时,所述下级单元指所述抽取单元;当所述积分单元包括多级积分子单元,并且所述积分子单元不是最后一级时,所述下级单元指下一级积分子单元;当所述积分子单元为最后一级积分子单元时,所述下级单元指抽取单元。具体实现过程如下同步信号data_sync作为数据端口输入数据data_in的有效指示信号,在data_sync为高电平时,对第一级的积分子单元中的第一寄存器reg2进行积分操作,并将同步信号data_sync送入第一级的积分子单元中的第二寄存器reg1。在下一个时钟,从第一级积分子单元输出的同步信号intg1_sync为高电平,它使能第二级积分子单元的积分操作。依次类推,完成第N级的积分操作,最后输出积分数据intgN和同步信号intgN_sync。
二、抽取单元当仅仅实现固定抽取率和抽取相位的情况下,所述抽取单元包括第一固定计数器和第一比较器。
所述第一固定计数器根据每输入一个同步信号产生一次计数累加,并将计数值传送给所述第一比较器;所述第一比较器接收第一固定计数器输出的计数值,并将其与用户设置的最大固定抽取相位进行比较,当二者相等时,输出控制信号用来控制数据的输出,以及作为所述梳状单元的同步信号的输入;当二者不相等时,不输出控制信号。
上述抽取单元中也可以在第一比较器后设置与单元,其用于将第一比较器比较比较第一固定计数器输出的计数值以及与用户设置的最大固定抽取相位二者相等时输出的控制信号,与输入到所述抽取单元的同步信号进行与操作处理,并将结果输出用来控制控制数据的输出,以及作为所述梳状单元的同步信号的输入。
由上述可以看出,当在仅仅实现固定抽取率和抽取相位的情况下,计数器为固定计数器,随着输入的同步信号的作用,每一个同步信号产生一次累加,当计数值达到最大值时就抽取此时同步信号送来的一个数据,完成固定抽取的目的。抽取相位也为默认抽取相位。此种方式下,同步信号做计数器的使能信号。
当为了实现抽取率和抽取相位的不同时,所述抽取单元的结构如图6所示,在抽取单元中设置了计数终点寄存器1、可变计数器2、第一抽取相位寄存器3和第二比较器4。所述计数终点寄存器1根据用户的指示输入用户配置的计数终点给可变计数器2,以便控制所述可变计数器2的计数范围。所述可变计数器2根据所述计数终点控制计数范围,并根据输入到该可变计数器2的同步信号intg_sync,使能所述可变计数器2开始计数,并将计数值输入到第二比较器4。所述第一抽取相位寄存器3存储用户配置的相位值,并输出所述相位值给所述第二比较器4;所述第二比较器4将接收到的所述相位值与所述可变计数器输出的计数值进行比较,并当二者相等时,输出控制信号,然后通过与单元5将所述控制信号与输入进来的同步信号进行相与,并将相与处理得到的控制信号用来控制数据的输出,以及作为所述梳状单元的同步信号的输入;当二者不相等时,不输出控制信号。
图6中也可以不设置与单元5,这时第二比较器4比较接收到的所述相位值与所述可变计数器输出的计数值二者相等时,直接将输出的控制信号用来控制数据的输出,以及作为所述梳状单元的同步信号的输入。
下面结合图6举例进行说明抽取单元的具体处理情况例如,假设要配置抽取率为6,可变相位为3的滤波器。首先需要配置可变计数器2计数终点,并将其保存在计数终点寄存器1中,以便当可变计数器2被输入的同步信号使能后,根据计数终点寄存器1中的计数终点控制其计数范围在0,1,2,3,4,5之间。其次需要配置抽取相位为3,并将其保存到第一抽取相位寄存器3中。抽取率为6,可变相位为3的滤波器的工作原理如下通过输入到可变计数器2中的同步信号intg_sync,使能所述可变计数器2开始计数,并据计数终点寄存器1中的计数终点控制其计数范围在0,1,2,3,4,5之间,并将计数值输入到第二比较器4,所述第二比较器4将所述计数值与第一抽取相位寄存器3输入到比较器的抽取相位值3进行比较,当计数数值达到3以后,输出控制信号,并通过与单元5将所输出的控制信号与输入的同步信号intg_sync进行相与操作,如果intg_sync的电平为高电平,则输入到梳状单元的comb_i数据等于intg_o数据,输入到梳状单元的同步信号intg_sync(即图中的comb_sync信号)的电平就等于电平“1”。
上述描述了抽取单元实现可变抽取率和可变抽取相位时的实现结构,当抽取单元仅仅能够实现可变抽取率时,所述抽取单元中不需要设置第一抽取相位寄存器3和第二比较器4。此时可变计数器2输出的计数值直接输出,并通过与单元5与所述同步信号intg_sync相与处理后输出,然后分为两路,一路输入到梳状单元作为梳状单元的同步控制信号,另一路用来控制数据的输出。当然,可变计数器2输出的计数值也可以不经过与单元5处理,直接输出后分为两路,一路输入到梳状单元作为梳状单元的同步控制信号,另一路用来控制数据的输出。
当抽取单元仅仅能够实现可变抽取相位时,所述抽取单元包括第二抽取相位寄存器、第二固定计数器和第三比较器。
所述第二抽取相位寄存器存储用户配置的抽取相位,并根据需要输出相应的抽取相位给所述第三比较器。所述第二固定计数器根据输入到其同步信号的控制进行计数值的累加,并将计数值传送给所述第三比较器。所述第三比较器将接收到的计数值与抽取相位进行比较,当二者相等时,输出控制信号用来控制数据的输出,以及作为所述梳状单元的同步信号的输入;当二者不相等时,不输出控制信号。同上述抽取单元,也可以在第三比较器后设置与单元,具体处理过程不再描述。
由上述可以看出,当抽取单元仅仅能够实现可变抽取相位时,所述抽取单元中需要设置可配置的寄存器用来存储需要抽取的位置,根据需要可以灵活的改变其数值、固定计数器以及比较器;所述固定计数器在输入进来的同步信号的作用下,抽取率的计数值随着同步信号的节奏进行累加,当达到寄存器输出的抽取相位值时,就取出需要的数据给比较器,这样实现可变抽取相位功能。
三、梳状单元所述梳状单元的实现结构如图7所示,可以看出,其与积分部分的实现结构类似,即保存每一级的数据和同步信号,不断向下一级进行推动。所述梳状单元至少包括一级梳状子单元,并且每一级梳状子单元包括第三寄存器,如图7中的reg3、第四寄存器,如图7中的reg2和第五寄存器,如图7中的reg1。
所述第三寄存器通过同步信号控制对输入到其内的数据进行微分处理,并将处理后的数据传送给第五寄存器。所述第四寄存器存储所述同步信号,并输出所述同步信号给下级单元,以及提供给第五寄存器。所述第五寄存器,用于存储处理后的数据,并通过所述同步信号控制输出数据给下级单元。这里的下级单元的含义为如果所述梳状单元仅仅包括以及梳状子单元时,所述下级单元指所述CIC滤波器后的信号处理设备;当所述梳状单元包括多级梳状子单元,并且没有处理到最后一级梳状子单元时,所述下级单元指下一级梳状子单元;当所述梳状单元包括多级梳状子单元,并且处理完最后一级梳状子单元时,所述下级单元指所述CIC滤波器后的信号处理设备。
具体工作原理与积分单元类似,在这里不再详细描述。
针对本发明所述的CIC滤波器,本发明提供了第二实施例,其在第一实施例的基础上实现了滤波器阶数可变。
本发明提供的第二实施例中的积分单元在第一实施例的基础上还设置了MUX选择器,并将与可变阶数对应的数据和同步信号引到该MUX选择器,并通过控制可配置的step_control信号来控制该MUX选择器选择积分的阶数,从而达到阶数可配的目的。
下面以实现4阶或5阶为例进行说明,其可变阶数实现逻辑结构图如图8所示设置第一选择器(如图8中的mux1)和第二选择器(如图8中的mux2),并在图5所述的实现结构图中第4阶积分子单元输出的数据intg4和第5阶积分子单元输出的数据intg5引到第一选择器的接口上,以及将第4阶积分子单元输出的对应的同步信号intg4_sync和第5阶积分子单元输出的对应的同步信号intg5_sync引到第二选择器的接口上,当用户需要第4阶积分子单元输出的数据时,通过可配置的step_control信号控制选择器动作选择出与第4阶积分子单元对应的输出数据。同样当用户需要第5阶积分子单元输出的对应的数据时,通过可配置的step_control信号控制选择器动作选择出与第5阶积分子单元输出的对应的输出数据。此实施例中需要事先配置所述step_control信号处于什么状态时可以控制MUX选择器选择第4阶积分子单元输出的数据或第5阶积分子单元输出的数据。
当实现可变阶数时,本发明提供的第二实施例的梳状单元的结构是在上述如图7的结构的基础上还设置了两个选择器,即第三选择器(如图9中的mux3)和第四选择器(如图9中的mux4),并将与可变阶数对应的数据和同步信号分别引到这两个选择器,并通过控制可配置的step_control信号来控制该选择器选择梳状的阶数,从而达到阶数可配的目的。
以实现4阶或5阶可变为例进行说明,其可变阶数实现逻辑结构图如图9所示,其包括了两个选择器,即第三选择器(如图9中的mux3)和第四选择器(如图9中的mux4),并分别将与梳状单元中的第4阶梳状子单元对应的输出数据comb_4和与第5阶梳状子单元对应的输出数据comb_5引入到其中第三选择器的连接接口上,将与梳状单元中的第4阶梳状子单元对应的同步信号comb4_sync和与第5阶梳状子单元对应的同步信号comb5_sync引入到第四选择器的连接接口上。
当用户需要第4阶梳状子单元对应的数据时,通过可配置的step_control信号控制第三选择器动作选择出与第4阶梳状子单元对应的输入数据输出,并控制第四选择器动作选择出与第4阶梳状子单元对应的同步信号输出。同样当用户需要第5阶梳状子单元对应的数据时,通过可配置的step_control信号控制第三选择器动作选择出与第5阶梳状子单元对应的输入数据,并控制第四选择器动作选择出与第5阶梳状子单元对应的同步信号输出。此实施例中需要事先配置所述step_control信号处于什么状态时可以控制MUX选择器选择第4阶梳状子单元或第5阶梳状子单元的数据。
本发明也可以采用独立的模块控制积分单元的工作或者梳状单元的工作,以分别实现控制积分和控制微分的目的。
由上述本发明的具体实施方案可以看出,本发明中,通过本发明可以做到抽取率、相位、阶数这些主要参数的灵活配置,从而易于滤波器的扩展;而且当采用流水的数据处理流程时,处理延时少;另外本发明结构简单,易于硬件实现。
以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
权利要求
1.一种级联积分梳状滤波器,包括积分单元、抽取单元和梳状单元,其特征在于所述积分单元、抽取单元和梳状单元中分别设置有数据端口和同步信号端口;所述同步信号端口,用于传输同步信号;所述数据端口,用于根据同步信号输入数据,并通过同步信号对输出的数据进行控制。
2.根据权利要求1所述的级联积分梳状滤波器,其特征在于,所述积分单元包括至少一级积分子单元,并且每一级积分子单元包括第一寄存器和第二寄存器;所述第一寄存器,用于存储所述同步信号,输出所述同步信号给下级单元,以及提供给同一级的第二寄存器;所述第二寄存器,用于存储数据端口输入的数据,并通过所述同步信号控制输出数据给下级单元。
3.根据权利要求2所述的级联积分梳状滤波器,其特征在于,所述积分单元还包括第一选择器和第二选择器;所述第一选择器,用于接收不同阶数的积分子单元输出的数据,并根据配置信号选择对应阶数积分子单元的数据并输出;所述第二选择器,用于接收对应所述阶数的积分子单元输出的同步信号,并根据配置信号选择对应阶数的同步信号并输出。
4.根据权利要求1、2或3所述的级联积分梳状滤波器,其特征在于,所述抽取单元包括第一固定计数器和第一比较器;所述第一固定计数器,用于根据每输入一个同步信号产生一次计数累加,并将计数值传送给所述第一比较器;所述第一比较器,用于接收第一固定计数器输出的计数值,并将其与用户设置的最大固定抽取相位进行比较,当二者相等时,输出控制信号用来控制数据的输出,以及作为梳状单元的同步信号的输入。
5.根据权利要求1、2或3所述的级联积分梳状滤波器,其特征在于,所述抽取单元包括可变计数器和计数终点寄存器;所述计数终点寄存器,用于根据用户的指示输入用户配置的计数终点给可变计数器;所述可变计数器,用于根据所述计数终点控制计数范围,并根据输入的同步信号输出相应的计数值。
6.根据权利要求5所述的级联积分梳状滤波器,其特征在于,所述抽取单元还包括第二比较器和第一抽取相位寄存器;所述第一抽取相位寄存器,用于存储用户配置的相位值,并输出所述相位值给所述第二比较器;所述第二比较器,用于将接收到的所述相位值与所述可变计数器输出的计数值进行比较,并当二者相等时,输出控制信号用来控制数据的输出,以及作为所述梳状单元的同步信号的输入。
7.根据权利要求1、2或3所述的级联积分梳状滤波器,其特征在于,所述抽取单元包括第二抽取相位寄存器、第二固定计数器和第三比较器;所述第二抽取相位寄存器,用于存储配置的抽取相位,并根据需要输出相应的抽取相位给所述第三比较器;所述第二固定计数器,用于根据同步信号的控制进行计数值的累加,并将计数值输送给所述第三比较器;所述第三比较器,用于将接收到的计数值与抽取相位进行比较,当二者相等时,输出控制信号用来控制数据的输出,以及作为梳状单元的同步信号的输入。
8.根据权利要求1所述的级联积分梳状滤波器,其特征在于,所述梳状单元包括至少一级梳状子单元,并且每一级梳状子单元包括第三寄存器、第四寄存器和第五寄存器;所述第三寄存器,用于通过同步信号控制对输入到其内的数据进行微分处理,并将处理后的数据传送给同一级的第五寄存器;所述第四寄存器,用于存储所述同步信号,并输出所述同步信号给下级单元,以及提供给同一级的第五寄存器;所述第五寄存器,用于存储处理后的数据,并通过所述同步信号控制输出数据给下级单元。
9.根据权利要求8所述的级联积分梳状滤波器,其特征在于,所述梳状单元还包括第三选择器和第四选择器;所述第三选择器,用于接收不同阶数梳状子单元输出的数据,并根据配置信号选择对应阶数的数据并输出;所述第四选择器,用于接收对应所述阶数的梳状子单元输出的同步信号,并根据配置信号选择对应阶数的同步信号并输出。
全文摘要
本发明涉及一种级联积分梳状滤波器,其包括积分单元、抽取单元和梳状单元,并在其内分别设置有数据端口和同步信号端口;所述同步信号端口,用于传输同步信号;所述数据端口,用于根据同步信号输入数据,并通过同步信号对输出的数据进行控制。通过本发明,能够采用数据同步信号控制数据的输入,解决了现有技术中数据输入的频率必须与主时钟同频而导致的输入数据的频率受限的问题,而且本发明易于实现流水处理,并能够减少处理时延。另外,本发明通过在抽取单元设置的可变计数器和比较器等还能够动态控制可变抽样率和/或可变抽样相位,从而易于滤波器的扩展。而且本发明通过设置在积分单元或梳状单元中的选择器还能够动态控制控制可变阶数。
文档编号H03H17/02GK1984104SQ20061008357
公开日2007年6月20日 申请日期2006年6月7日 优先权日2006年6月7日
发明者李新兵, 马敬兴, 孙全, 余剑 申请人:华为技术有限公司