- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
开关电容滤波器的系统设计与实现
4.1 时钟发生模块
时钟信号发生器模块由频率跟踪检测、参数读取、除法器、分频器和时钟使能控制等部分构成。
1)频率跟踪检测 滤波器在跟踪工作模式下,PLC需检测信号的周期。对输入脉冲周期进行计数,将一个输入信号周期所占的时钟周期数输出给参数读取模块进行处理,程序较为简单。
2)参数读取 根据滤波器类型、滤波器逼近函数和滤波器阶数生成ROM的读取地址。滤波器在典型和跟踪工作模式下选择对应的ROM读取除法器的被除数或除数;手动工作模式下,被除数为常数,除数直接从按键的键值输入缓冲区读取。由于系统使用2片MAX260,需要4路时钟,故要读出4组被除数和除数。图4为参数读取模块的仿真波形,图中的z1_f,z2_f,z3_f,z4_f为4组被除数,d1_f,d2_f,d3_f,d4_为4组除数。
3)除法器 由于PLC采用50 MHz的晶振,输入的中心频率(或截止频率)最大为4 kHz,因此采用26位除法器。由于PLC的除法指令需要占用很大资源,本设计采用移位相减实现除法运算。除法器的状态图如图5所示,除法器的算法如下:将被除法从高位开始移入移位寄存器的低位,移位寄存器每移位一次后与除数相减,结果大于零则商置1,将相减得到的结果后接还未移入移位寄存器的被除数再左移;结果小于零,则商置零,将原被减数后接还未移入移位寄存器的被除数再左移。如此移位相减直至被除数全部位数判断完成,即移位相减26次以后,除法完成。
4)分频器模块和时钟使能 分频器从除法器的结果作为分频系数对PLC的时钟频率分频,得到各个二阶滤波器组件的时钟信号。时钟信号产生后并不马上送入MAX260的时钟输入引脚,需检测到MAX260的编程代码下载完成后再使能时钟输出,下载过程中,时钟信号保持高阻态,且对未使用的二阶滤波器组件,其时钟信号亦保持高阻态。
4.2 滤波器编程参数控制
本系统中滤波器在典型和跟踪工作模式下的逼近函数是确定的,故其编程代码也是确定的,将编程代码存入存储器中,根据滤波器的各参数读取编程代码即可。手动模式下,编程参数由外部输入。为方便下载,将4个二阶滤波器节组件的编程代码组成一个64位的编程控制字。每种逼近函数的各阶低通、高通和带通滤波器对应一个64位的编程控制字,故共有48个编程控制字。每个编程控制字的格式中前8位对应第一片MAX260的二阶滤波器组件A,第16位至第32位对应第一片MAX260的二阶滤波器组件B,后32位对应第二片MAX260。
控制字的位数是固定的,与滤波器设定的阶数无关,即与所使用的二阶滤波器组件的个数无关,未使用的二阶滤波器组件的对应控制字位置零,由于未使用的二阶滤波器组件的时钟信号保持高阻态,故对其进行写操作后该组件仍不会工作,不会对总滤波器构成影响。当使用第一片MAX260时,控制字的高32位全部置为零,此时控制字将使第二片MAX260进入低功耗的待机模式。
5 结论
合理地选择滤波器的类型和阶数是滤波器设计的第一步,是由不同的应用需要,不同的信号与噪声特点,不同的精度要求来决定。基于电力现通讯信号的特点,采用6阶切比雪夫近似滤波器。通过对滤波器结构的比较,采用低Q结构,分析了开关电容电路和电容编程阵列,最终设计一个可编程开关电容6阶带通滤波器;在滤波器设计中,运放器选择增益为70 dB,带宽为10倍时钟频率,是合理的性能指标;通过对设计的开关电容滤波器进行仿真,结果基本与设计目标吻合。