新型移频信号发送系统设计方案
2008-11-03
作者:王 鹏 徐 峰 王宏宇
摘 要:为适应我国高速列车自动控制系统发展的需要,提出采用双CPU加FPGA的系统设计方案,实现移频信号发送。在保证移频信号高相位精度的前提下,实现系统的自动多载频信号切换和实时故障检测" title="故障检测">故障检测。
关键词:CPU FPGA 移频 故障检测
移频信号全称为移频键控信号(Frequency-Shift Keying),利用高频信号承载低频信息,具有抗干扰能力强、传输距离远等优点,是现代铁路机车行驶中的速度控制信号。它可以准确确定列车的位置,与铁路机车安全运行有密切的关系。为确保信号接收系统接收到准确、实时有效的信号,要求移频信号发送系统在发送高精度移频信号的同时,能够保证自身系统的故障检测。
现有的移频信号发送系统,使用特定频率晶振和CMOS器件,频率相位精度低、通用性差,无法实现多载频信号之间的自动切换,而且自检能力不高,不能达到实时故障检测,无法适应我国高速列车发展的需要[1]。因此,设计一种新型的移频信号发送系统就成为一个迫在眉睫的问题。本文提出采用双CPU保护下的FPGA系统实现移频信号发送的设计方案,以FPGA为系统核心,采用固定16MHz频率晶振,完成CPU时序控制下FPGA的逻辑功能。在保证移频信号高相位精度的前提下,实现了系统的自动多载频信号切换和实时故障检测。
1 FPGA芯片
本文选用的FPGA芯片是Xilinx公司推出的XC4005E-4IPQ100,该类型芯片具有5000最大逻辑门(Max Logic Gate),其中可配置逻辑模块(CLB)196个,以14×14矩阵结构排列;输入输出模块(IOB)112个。可实现616级触发器(Flip-Flops),具有并行模式配置能力,存储器容量为95,008 bits。使用亚微米多层金属材料加工方法,使系统时钟速率高达80MHz,而内部执行速度可以达到150MHz[3]。
该类型芯片在原有XC3000系列芯片的基础上,增加了内部软启动结构和时钟驱动输入输出模块的数目,并且提供了可选择双向RAM存储器。
2 系统设计原理
系统设计原理如图1所示,该系统以双CPU保护下的FPGA为核心,配以辅助的前置光耦防护和后置安全与门及功率放大器。输入为国家标准的铁路用18路低频信息和4种载频触发信号,输出相应的调制后高精度移频正弦信号。其中,4种载频可以由触发信号直接控制,自动切换。
FPGA内部逻辑被设计为分频器、计数器、编码器、存储器、触发器和电子开关" title="电子开关">电子开关等部分。经过逻辑组合,实现低载频信息编码、相位连续移频信号调制" title="信号调制">信号调制和移频信号检测" title="信号检测">信号检测计数等三个主要功能,并接收CPU的控制信号,完成与CPU间的数据传输。
图1中双CPU使用W78E58型单片机。主、副CPU各自独立工作,分别向FPGA发送控制信号,读取低载频信息编码和移频检测计数结果,并以此为判据进行移频信号发送精度检测。发现误码情况,即时关闭安全与门,切断移频信号发送通道,保证故障安全。主、副CPU之间,每个程序循环周期通信一次,以确认对方处于正常工作状态。
3 软件设计
3.1 移频信号调制结构设计
图2示出了FPGA内部实现移频信号调制的逻辑结构。FPGA芯片选用16MHz时钟脉冲,在分频模块的作用下得到所需要的低频和载频信号;运用时钟同步触发器和电子开关实现频率调制过程中的沿同步,从而在保证移频信号频率精度的前提下,实现了移频信号的相位连续调制。
图2中K(t)为低频方波信号,G1(t)、G2(t)为载频方波信号,CLK为16MHz时钟脉冲,CS1、CS2为电子开关使能信号。低频分频器、载频分频器1、载频分频器2、时钟同步触发器、反相器、电子开关和加法器由FPGA内部逻辑门阵列通过状态机的方式实现[4]。低频分频器和载频分频器的分频数由输入的低、载频触发信号控制,进行自动预置,使信号发送系统适用于多种载频切换,达到系统的通用性。
FPGA内部逻辑结构使用VHDL语言编写,图3示出了移频信号调制部分的VHDL语言程序流程图。
3.2 移频信号检测时序设计
移频信号检测采用高频插入的方法。将16MHz标准脉冲插入待测信号中,通过计数器确定待测信号的一个载频周期Tz,得到其载频频率fz:
式中Nz为一个载频周期内的计数脉冲个数。
为了计算待测移频信号中的低频周期,需要存储大量的载频周期数Nz。利用CPU的定时器构成一定时间内(0.2s)的Nz数组,寻找移频信号上下边频的切换点,通过计算两个相邻切换点之间的载频周期数,确定低频周期,得到低频频率fd:
式中Nd为两个相邻上下边频切换点之间的频率周期数。
在本文中,双CPU各自独立完成检测计数数据的精度判断和定时器控制,计数器部分在FPGA内部实现,图4示出了移频信号检测原理图。
CPU源程序使用C语言编写,使程序结构化,并易于升级。图5示出了移频信号检测部分的C语言程序流程图。
4 性能分析
4.1 实验结果
在完成调试样机的基础上,对新型移频信号发送系统进行实验检测。其中,载频信号取8种,中心频率分别为550、650、750和850Hz,频偏均为55Hz。低频信息从国家铁道移频信号标准中随机选取8种,分别为7、8、9、9.5、16.5、17.5、18.5和26Hz。
为检测实际发送的移频信号,利用HP3563A(Control Systems Analyzer)控制系统分析仪模拟通用移频信号接收器进行频谱分析。采样频率为2048点/s,加Hanning窗进行FFT变换[2],可得到如图6所示的信号频谱图。其中,两个波峰处的相应频率就是FSK信号的上下边频,其左右两侧的次高波峰处的相应频率为上下边频的低频频偏频率。考虑到上、下边频谱线之间的相互干扰,取能量最高的次高峰为低频频偏点,其与相邻最高波峰之间的频率差即为对应FSK信号所包含的低频信息[5]。
系统自检部分的验证,由Micropack公司提供的Easypack/E 8052F在线仿真系统完成。该系统模拟CPU的全部功能,并从FPGA直接读取移频检测数据,数据格式为十六进制。
表1示出了系统实验结果,其中频率理论值和测量值单位均为Hz,系统自检值Nd、Nz1、Nz2均为十六进制数。上、下边频自检计数脉冲为16MHz,低频自检计数方波为上边频方波。
4.2 数据分析
对表1中实验数据进行移频测量值和自检值的最大相对误差" title="相对误差">相对误差分析,可以得到本文中新型系统的各方面精度,从而判断其是否满足设计要求。
移频信号测量值的相对误差可以由下式得到:
式中,fc、fl分别为频率的测量值和理论值。
结合公式(1)和公式(2),可以得到系统移频自检值的相对误差计算方法:
式中,Ez、Ed分别为载频自检相对误差和低频自检相对误差,fc为对应的低频或上下边频测量值。
由公式(3)、(4)、(5)得到系统频率测量值和自检值最大相对误差如表2所示。
从表2可以看出,实际移频信号的发送相对误差不大于1%,完全满足铁道通信信号的精度要求;自检系统更可以保证实时检验发送信号,实现故障安全。
综上所述,新型移频信号发送系统应用先进的可编程逻辑芯片(FPGA)和高性能CPU,通过巧妙的逻辑结构设计和时序控制,实现了系统的集成化、通用化,大幅度提高了系统运行速度和可靠性。实验结果表明,该系统完全能够满足高速、高精度、故障安全的铁道通信信号技术要求,具有很高的应用价值。
参考文献
1 王建国.提高ZP-89型移频发送电路性能的方法.铁道通信信号,1999;02:23~24
2 Clifford J P,Wilton S J E.Architecture of clusterbased FPGAS with memory.Proceedings of the Custom Integrated Circuits Conference CICC 2000,2000:131~134
3 柏 溢. FPGA的比较与选型[J].信息工程学院学报,1999;03:61~64
4 Kevin S著.朱明程,孙 普译.可编程逻辑系统的VHDL设计技术.南京:东南大学出版社,1998
5 Vitetta G M,Mengali U,Taylor D.P.Error probability of FSK incoherent diversity reception with fast rice fading.International Journal of Wireless Information Networks,1999;2:107~118.