基于FPGA的相位连续的2FSK信号的设计与实现

时间:2013-06-13

  摘要:传统的2FSK调制方法产生的信号频率稳定度不高或容易产生过多杂波,为了克服这两种不足,在传统调制方法的基础上,基于FPGA芯片,采用分频与波形生成分开的方法和DDS技术,设计了一种既能保持相位始终连续.两种频率直接切换.频率稳定度高的数字式2FSK调制方法.经过实际电路验证,能够有效避免杂波产生,提高信号传输的稳定性和识别率.

  0 引言

  数字信号的传输是数字通信系统设计中的关键一环.数字基带信号往往难以在远距离的信道中直接传输,因此需要在信号发送端用数字基带信号控制载波,把数字基带信号调制为带通信号,在接收端通过解调器把带通信号解调为基带信号,实现远距离数字信号传输.

  数字信号只包含‘0’和‘1',因此,二进制数字调制是数字信号调制常用的调制方式,常见的有二进制振幅键控(2ASK).二进制频移键控(2FSK).二进制相移键控(2PSK).其中,2FSK 信号是采用两个不同频率的正弦波载波分别代表'1’和‘0',这样通过远距离传输时信号电压会产生衰减,但频率基本不会发生改变,是一种比较常用的调制方式.

  本文结合传统的2FSK 调制方法,基于FPGA 设计了一种两种调制频率间无相位跳变的2FSK信号调制方法,减少杂波干扰,更有利于信号的可靠传输.

  1 传统的2FSK调制方法

  通常情况下,进行2FSK 调制使用的方法是直接调频法和频率键控法.

  直接调频法(又称模拟调频法):当基带信号为'1’时,改变振荡器谐振回路参数,产生振荡频率为f1,当基带信号为‘0’时,改变振荡器谐振回路参数,产生频率f2,这种方法实现简单,但频率稳定度不高,同时转换速率不能太快.

  频率键控法:本身有两个独立的振荡器,数字基带信号控制转换开关,选择不同频率的高频振荡信号实现2FSK调制,这种方法产生的频率间没有过渡,转换速度快,波形好,但相位经常不连续,会产生很多不必要的杂波,影响正常信号的传输.

  2 相位连续的2FSK信号的设计

  2.1 硬件结构

  此设计是在基于PC104总线的嵌入式系统中实现的,硬件结构如图1所示.

  2.2 FPGA芯片的选择

  由于PC104总线支持TTL电平,因此,本文选用支持TTL电平的Altera公司的FLEX系列的EPF10K20TC144-4,该器件内部资源丰富,具有144个管脚,可用的通用管脚数量是102 个,采用0.5 靘 CMOS SRAM 工艺制造(低功耗);具有在系统可配置特性,在所有I/O端口中都有输入.输出寄存器,可实现单片系统,其开发软件一般可选用Max+Plus Ⅱ或者Quartus Ⅱ,本设计采用的是Quartus Ⅱ.

  2.3 调制器的FPGA程序设计

  FPGA程序设计包括数据缓冲器设计.2FSK调制器设计和DDS信号设计.

  2.3.1 数据缓冲

  数据缓冲设计分为总线缓冲和字节移位寄存器两个部分,总线缓冲器负责接收总线发送的所有字节数据并进行缓冲存储,并根据字节移位寄存器工作完毕的信号将新的数据装载到移位寄存器中,所有数据调制完毕后发出调制完毕的信息等待总线查询;字节移位寄存器负责接收缓冲器的单个字节数据,并按位依次进行调制发送,直至全部字节调制完毕后,将调制完毕的状态信号返回.

  数据缓冲器的设计采用VHDL 语言进行编写,在Quartus Ⅱ软件进行设计.调试和仿真.仿真结果如图2所示.

  2.3.2 连续相位的2FSK调制基本原理

  2FSK 调制器基本原理为:将分频部分与波形生成部分分开,分频部分使用参考时钟作为基准频率,按照两种载波频率f1,f2生成正弦波所需的抽样频率分别进行分频,产生F1 ,F2 .当传输数据‘1’时,将F1 产生的脉冲发送到波形生成部分产生所需频率f1;当传输数据‘0’时,将F2 产生的脉冲发送到波形生成部分产生所需频率f2.波形生成部分只接收前级传输的F1 或F2 脉冲,其时间间隔由分频器决定.产生的数字信号经D/A转换并放大滤波后即可产生连续相位的正弦波.这样就可以保证输出波形既连续,速度也容易调节.

  2.3.3 连续相位的2FSK调制方法

  要使用数字电路调制产生正弦波,就必须要对波形进行采样.量化.编码.本文设计的2FSK信号使用的是3 600 Hz 和4 400 Hz 的载波信号,基带数据速率为1 200 b/s.每个正弦波的采样输出数量为36 个(即每个正弦波使用36 个幅度值),这样能在每10° 的间隔上输出一组幅度数据.则每个基带码元传输时需要的编码数量是:3 600 Hz载波需要108个;4 400 Hz载波需要132个.36抽样点的正弦波如图3所示.

  对于3 600 Hz和4 400 Hz的终正弦波,其幅度值输出速率应分别达129.6 kHz,158.4 kHz.信号源采用PC104总线上的SYSCLK基准时钟信号,频率为8.29 MHz,使用该频率进行分频,分频数分别为64和52.分频部分主要由四个分频器组成,52和132分频为一组,64和108分频为一组,前者输出4 400 Hz采样脉冲及1 200 b/s速率,后者输出3 60 0Hz 采样脉冲及1 200 b/s 速率.

  结构图如图4所示.

  由于两者的清零端(clr)使用非门进行控制,因此不可能同时工作,其级输出(52和64分频)通过或门后发送到正弦波生成器,保证后者可以连续接收脉冲,第二级输出通过或门送到数据缓冲器,通知后者1 200 b/s的数据位已经完成,需换下一位数据,则缓冲器自动装载下一位数据.全部数据发送完毕后,缓冲器空,则将缓冲器全空信号(allempt)置‘0',等待总线查询并发送下个目标数据.

  2.3.4 正弦波生成器

  正弦波生成器有脉冲输入端和信号有/无效两个端口输入,当数据缓冲器正在发送数据时,会将信号无/有效(empt)置'0';当数据发送完毕后,信号无/有效(empt)被置'1',说明当前无数据发出,则正弦波生成器持续发送“1000 0000”(双极性中代表0 V 电平),直至(empt)被重新置'0'.

  波形产生部分使用VHDL语言进行编写,代码如下:

  仿真结果如图5所示.

  2.3.5 电路验证

  在Quartus Ⅱ中设计.编译.到硬件后,生成的数据经过D/A变换,并经过滤波.放大后生成的2FSK信号如图6所示.从图6中可以看出,两种频率间过渡非常平滑,没有杂波和相位突变.

  3 结论

  本文产生2FSK 信号的方法是基于传统2FSK 信号调制方法改进而来的,为确保生成的波形在频率转换处频率直接转换且相位连续,本文主要使用了两种方法:

  (1)分频电路与波形生成电路分离保证相位连续;(2)分频器清零方式保证两个分频器能直接切换,不会在切换时产生脉冲间隔突变.

  本文所述方法经过实际电路验证,产生的调制信号连续.无杂波,能够有效提高信号传输的可靠性,减少杂波干扰.

上一篇:集成电源噪声抑制的时钟源简化FPGA系统的电源设计
下一篇:基于TinyOS 操作系统的I/O控制

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料