主权项 |
一种FSK数字解调器,其特征在于,包括:一比较器,通过比较器设定比较电平将相位连续的FSK正弦波转换成FSK方波,并输出到波形电路;一波形整形电路,将输入的FSK方波转换为具有2T<sub>0</sub>高电平时长的方波,其中,T<sub>0</sub>为采样时钟的周期;一乒乓计数器,乒乓计数器包括计数器切换电路、计数器a、计数器b、分配器、选择器以及下降沿边沿检测电路;下降沿边沿检测电路对整形后的FSK方波的下降沿进行检测,当检测到下降沿时,输出一个复位脉冲,这些复位脉冲构成计数器复位信号;计数器切换电路输出电平在整形后的FSK方波上升沿每次到来时都翻转一次,产生计数器切换信号;计数器切换信号为高电平时使得计数器a计数使能,对采样时钟进行计数,计数器切换信号为低电平时使得计数器b计数使能,对采样时钟进行计数;同时,计数器切换信号为高电平时,选择器选择计数器b的计数值作为乒乓计数器计数值Q输出,计数器切换信号为低电平时选择计数器a的计数值作为乒乓计数器计数值Q输出;并且,计数器切换信号为高电平时,分配器选择计数器复位信号与计数器b的复位端连接,当复位脉冲到来时,对计数器b进行复位,计数器切换信号为低电平时,分配器选择计数器复位信号与计数器a的复位端连接,当复位脉冲到来时,对计数器a进行复位;一解调模块,为一个状态机,在解调未开始时,状态机处于‘0000’状态,在整形后的FSK方波高电平未到来时,状态保持不变;当整形后的FSK方波高电平到来时,读取乒乓计数器计数值Q,若计数值Q为无效值即计数值Q不等于z*n或者z*m,跳转到‘0111’状态,空一拍即一个采样时钟回到‘0000’状态;如果整形后的FSK方波高电平到来且Q值有效,则将当前计数值Q存入寄存器last_Q,状态转换成‘0001’,空一拍再转换到‘0010’状态;在‘0010’状态,若整形后的FSK方波高电平未到来,则‘0010’状态保持不变;若整形后的FSK方波高电平到来,如果存入寄存器last_Q中的上一个计数值Q等于当前计数值Q,则‘0010’状态保持不变;若整形后的FSK方波高电平到来,寄存器last_Q中的上一个计数值Q不等于当前计数值Q,则说明 找到了一个完整的数字信号‘1’或‘0’的开头,即找到了同步点,状态转到‘0011’状态,空一拍后转到‘0100’状态;在‘0100’状态记录计数值Q和个数,然后转到‘0101’状态做判断并对寄存器中的数据进行处理,决定是否达到数字信号‘1’或‘0’的输出条件,即如果计数值Q为z*n,并达到m个,则输出数字信号‘1’,或如果计数值Q为z*m,并达到n个,则输出数字信号‘0’;如果达到输出条件,则输出相应的数字信号,并将寄存器last_Q清零后转入‘0100’状态,继续记录计数值Q和个数,如果没有达到输出条件,则直接返回‘0100’状态;与此同时在‘0100’态中,在计数值Q连续等于有效值z*n或者z*m的次数未达到可以产生一个数字信号‘1’或‘0’的次数m或n之前,当前计数值Q与寄存器last_Q中的上一个计数值Q不相等且寄存器last_Q中的上一个计数值Q不为0,则视为出错,从‘0100’状态转到‘1000’状态,产生全局复位信号,空一拍回到‘0000’态,重新开始解调过程;其中,m为FSK信号中代表数字信号‘1’的周期为T<sub>1</sub>的周期信号个数,n为FSK信号中代表数字信号‘0’的周期T<sub>2</sub>的周期信号个数,则采样时钟频率满足这样的关系:T=z×m×n×T<sub>0</sub> z=1,2,3… (1)式(1)中,z为整数,根据具体的电路选择,T为一个数字信号的周期;并且采样时钟与整形后的FSK方波具有一定的相位差。 |