文献标识码:A
DOI:10.16157/j.issn.0258-7998.191207
中文引用格式:吕文发. 一种基于CPLD的通用时统信号板的研制[J].电子技术应用,2020,46(3):61-65.
英文引用格式:Lv Wenfa. The development of universal time series signal board base on CPLD[J]. Application of Electronic Technique,2020,46(3):61-65.
0 引言
在火控系统中,各设备分机节点之间需要进行大量的数据交换,系统内某个分机需要在特定时刻接收外部的数据,并进行数据解算,在特定的时刻将解算后的数据发给系统内其他分机,从而完成某些特定的功能,要求系统内各分机在特定时刻发送或接收的每个数据包均被对方在特定的时刻接收或发送,因此系统需要对各分机接收或发送数据的时刻进行统一,具体的实现方法是系统向各分设备发送统一的时间间隔脉冲信号(即:时统信号),各分机采用总线中断方式响应时统信号,完成相应的收发数据操作。因此要求时统信号具有较高的精度和可靠度,并具备较强的抗干扰能力。
时统信号作为一种非常重要的“心跳”信号在火控系统中发挥重要作用,为了实现本系统和上级系统之间的数据收发时刻同步,还需要本系统的时统信号和上级时统信号(一般是1 pps秒脉冲信号)完全同步,以达到整个大系统的时统信号完全同步的目的。传统的时统信号是用数十个二进制计数器IC对晶体时钟源进行计数分频和逻辑组合,从而产生不同周期的脉冲信号,要实现本系统的时统信号(一般是20 ms)与上级系统的1 pps秒脉冲信号需要大量的计算器IC,电路非常复杂,占用的PCB板面积大,且电路一旦确定,就无法对时统信号的脉冲宽度、脉冲周期、脉冲时延等参数进行二次修改,采用传统的计数器IC方法具有很强的局限性,电路复杂,修改困难,占用板幅空间大,通用性差。
采用复杂可编程逻辑器件CPLD可容易解决内、外时统时序同步、脉冲宽度可调、周期可变及多路同步分发等问题,具有电路简单、编程灵活、控制精度高、周期准、可靠性高等特点。
1 组成
为满足不同系统的不同要求,需要一块通用的时统信号板来完成不同的功能,该时统信号板应具备以下几方面功能:
(1)能接收、产生统一的时统信号,并将该信号转发给系统各分机设备;
(2)具有时序延迟功能,能将某一路时统信号在时序上延迟一定时间(相对时间间隔)后提供给各分机设备;
(3)具有脉宽调整功能,能调整时统信号的脉冲宽度;
(4)能自动检测和同步外时统秒脉冲(1 pps)信号,如果有秒脉冲信号,则产生以秒脉冲信号同步的不同周期的时统信号。
通用时统信号板由时统检测模块、外时统同步及时序延时模块、时统分发模块及差分发送模块组成。组成原理见图1。
2 外时统信号检测
在火控系统中,外时统信号一般为上级系统给火控系统下发的RS422A差分秒脉冲信号,周期1 s,脉冲宽度一般为10 ms~50 ms之间,采用屏蔽双绞线传输,为了实现火控系统和上级系统的时统信号时序同步,便于火控系统接收上级系统的战术数据,因而火控系统需要对上级系统下发的秒脉冲信号进行检测、接收处理。
外时统信号检测有两种检测方法,即:单稳IC硬件检测和CPLD时序逻辑检测。
2.1 外时统信号接收
外时统信号一般为符合RS422差分特性的脉冲信号,为消除脉冲信号在长线传输中形成的噪声及反射干扰信号,需要在电路接收端加接终端负载电阻(Rt),终端负载电阻的阻值约等于传输电缆的阻抗,同时负载电阻还起到取样电阻的作用,它将发送器的电流输出转变为电压信号,通常情况下,Rt取100 Ω~120 Ω,为提高电路的抗干扰能力和可靠性,降低长距离传输带来的信号干扰,电路中R1、R3为上拉偏置电阻,R2为下拉偏置电阻(一般取2.2 kΩ),V1、V2为TVS瞬变抑制二极管,其电路原理见图2。
2.2 单稳IC硬件检测
硬件检测主要是利用单稳态输出集成电路54LS123作为检测芯片,检测外时统信号,工作原理为:当输入端输入一个脉冲信号(上升沿触发)时,利用芯片配置的定时电阻(Rt)、电容(Cext)自动调整该脉冲的脉冲宽度,输出端输出一个和输入信号上升沿同步的大脉冲宽度(tw)信号,脉冲宽度可以通过设置定时电阻(Rt)、电容(Cext)的大小来确定,当外时统脉冲周期小于设定的脉冲宽度(为了提高可靠性,一般取检测脉冲周期的1.5倍)时,芯片输出为一个稳态的高电平“1”,若外时统中断,则输出端会延迟0.5个时钟周期(外时统)后输出稳态的低电平“0”,从而实现对外时统脉冲信号的检测。
根据单稳态工作原理,只要芯片输出的脉冲宽度大于1个输入脉冲(外时统周期)的周期,就能实现对外时统的检测,当Cext>1 000 pF时,其定时电阻的大小可以根据以下公式计算:
为了提高检测的可靠性,一般tw取1.5个外时统周期T,假定外时统脉冲周期T=1 s,Cext=22 μF,则由式(2)得:
只需选择一只15 kΩ电阻,匹配22 μF电容,就能实现对1 s脉冲信号的检测,其电路原理见图3。
2.3 CPLD逻辑编程检测
利用可编程逻辑器件(CPLD)通过逻辑编程来实现,逻辑模块由时钟倍频器(2clk)、D触发器、脉冲发生器(mccs)3个子模块组成,当有外时统信号输入时(WST_INPUT),模块输出端(JC_OUTPUT)输出为高电平,当外时统输入信号中断时,则输出端将会延迟0.1~0.5个外时统周期后输出低电平“0”。
假设需要检测的外时统周期T为1 s,当D触发器输入端检测到外时统信号时(上升沿触发),则输出一个高电平“1”,将该信号作为脉冲发生器(mccs)的使能信号,同时将外时统信号经时钟倍频器处理后作为脉冲发生器的“置数”信号,脉冲发生器的输出信号作为D触发器的输入清零信号,在本地时钟的驱动下,脉冲发生器开始工作,只要脉冲发生器产生的触发脉冲周期Tf大于外时统周期T,脉冲发生器不会产生触发脉冲,D触发器的输出信号就能保持为高电平,否则,输出为低电平,从而实现对外时统信号的检测,电路图见图4。
3 外时统信号同步及延时
3.1 计算器分频计算
采用计数分频原理实现对脉冲信号进行同步、调整周期、调整脉冲占空比等脉冲信号处理,其核心是采用二进制计数器计算分频,计算方法如下。由:
其中T为计数周期,n为计数器计数值,f为时钟频率。一般情况,本地时钟频率f=10 MHz,若需要产生20 ms的脉冲信号(即:T=20 ms),则根据式(5)得:
n=fT=10 000 000×0.02=200 000
n=200 000,转换成十六进制为“30D40”,需5个16位二进制计数器级联后才能实现。
3.2 外时统同步延时
利用本地高精度时钟将外时统脉冲信号的脉冲宽度调整为2个时钟源周期,形成同步脉冲信号,该脉冲信号和原外时统脉冲信号在时序上完全一致,只是脉冲宽度不同而已。这样将同步脉冲信号作为二进制计数器(74LS163)的“LD”置数信号,并将计数器的进位端(RCO)输出信号反向后作为计数器的使能信号,这样计数器工作后所产生的新的脉冲信号在时序上和原脉冲信号完全同步,同时可以通过计数器设置时序延迟时间,通过修改计数器的参数可实现不同时序间隔的延迟,其时序延迟误差≤1.5个时钟周期,如果板上的时钟源频率越高、越稳定,那么时序延迟后的脉冲信号的误差精度就越高,时序延迟原理见图5,同步延时后的脉冲信号见图6(图中通道“1”信号为原脉冲信号,通道“2”信号为相对原脉冲信号时序延迟10 ms后脉冲信号)。
3.3 脉冲占空比调整
脉冲占空比(即:脉冲宽度)调整,利用本地高精度时钟、二进制计数器和D触发器就能实现对脉冲信号的脉冲宽度调整,通过设置计数器的计数值就能实现不同脉冲的宽度,将脉冲信号输入D触发器的触发端,将D触发器的输出端接入计数器的计数使能端,计数器的输出端通过“非门”反向后接入D触发器的清零端,这样当脉冲信号输入D触发器后,在D触发器输出端输出的信号就是脉冲宽度调整后的脉冲,其时序和原脉冲信号完全同步,只是脉冲宽度发生变化,其原理图见图7,波形仿真见图8。
图8中,“MC-INPUT”为输入的原始脉冲,“MC-OUTPUT”为脉冲宽度调整后的脉冲,其周期和频率和原始脉冲完全一样,“CLK”为本地高精度时钟。
4 时统差分发送
在火控系统中,由于各分设备间隔相对较远,为了降低传输线路的干扰,确保信号可靠传输到各分机设备上,需要将信号转换为符合RS422差分特性的脉冲信号,再采用双绞差分传输电缆进行长线传输,为提高电路的抗干扰能力和可靠性,降低长距离传输带来的信号干扰,需在差分电路输出端的“+”、“-”极上分别配置TVS瞬变抑制二极管,其电路见图9。
5 误差分析
采用单稳IC硬件电路检测外时统的检测误差主要由电阻Rt和电容Cext决定。为了提高检测精度,可以根据外时统的周期,理论计算出电阻、电容的大小,但实际上很难找到和理论值相同的电阻、电容,同时,即使找到,由于电阻、电容和IC组合后的电路自身的物理特性,也很难保证单稳输出的脉冲宽度和理论值相同,采用此方法的检测精度一般只能定位到毫秒级。
采用CPLD进行组合逻辑编程检测外时统的检测误差,只和本地晶体振荡器(时钟)的频率有关,晶体振荡器越大,周期越小,检测误差就越小,理论上检测精度可以控制在1个时钟周期内,实际上考虑检测外时统上升沿需要1个时钟周期,计数器置数及进位输出均需要1个时钟周期,检测误差能控制到2个本地时钟周期内,本地时钟周期越小,误差也就约小,其精度可以控制在纳秒级。
综合上述,采用单稳IC硬件和CPLD组合逻辑两种方法均能实现对外时统的检测,两种方法均需要事先确定检测的外时统的周期,前者通过配置不同大小的电阻、电容来实现。后者通过CPLD逻辑编程实现,其检测精度较前者高,针对检测不同周期的外时统编程灵活,电路更改容易。
6 实现方法
6.1 CPLD的应用
采用CPLD复杂可编程逻辑器件(EPM7512AEQI208-7)作为主控芯片,选用带温度补偿的晶体振荡器(TCXO)作为时钟源,单稳态触发电路作为检测外时统信号的控制电路,标准RS422差分接收、发送器作为收发电路,利于CPLD在线可编程优点,可根据用户的需求修改控制程序,接收或产生不同周期和脉冲宽度的的时统信号,具有良好的通用性,满足不同系统对时统信号的要求。
6.2 TVS特性及应用
瞬变电压抑制器(Transient Voltage Suppression Diode)又称瞬变电压抑制二级管,简称“TVS”器件,能“吸收”高达数千瓦的浪涌功率,当TVS两端经受瞬间高能量冲击时,它能以极高的速度把两端间的阻抗值由高阻态变为低阻态,吸收一个大电流,从而把它两端间的电压钳位在一个预定的数值上,保护后面的电路元件不因瞬态高电压的冲击而损坏。
将瞬变电压抑制二极管接到电路的电输入和输出线上,可防止瞬变电压进入,加强电路对外界干扰的抵抗能力,从而保证电路能正常工作,提高可靠性。
6.3 差分电路抗干扰技术
RS422差分信号通信线由两根双绞线组成,它是通过两根通信线之间的电压差的方式来传递信号,消除差模干扰的方法是在RS422差分电路的接收端增加一个偏置电阻(约100 Ω~120 Ω),并采用双绞屏蔽线,抑制共模干扰的方法除了在信号线与地线之间加TVS二极管外,还有以下几方面的措施:
(1)采用屏蔽双绞线并有效接地;
(2)电路板上每个IC要并接一个0.01 μF~0.1 μF高频电容,以减小IC对电源的影响,注意高频电容的布线,布线时避免90°折线,减少高频噪声发射;
(3)CPLD器件加5~10个0.01 μF~0.1 μF高频电容和3~5个33 μF电容;
(4)注意晶振布线,用地线把时钟区隔离起来,晶振外壳接地并固定;
(5)电路板合理分区,如强、弱信号,数字、模拟信号。尽可能把干扰源与敏感元件远离,用地线把数字区与模拟区隔离。
采用抗干扰技术前、后的脉冲信号波形见图10。
7 结论
时统信号板作为一个重要的功能模块在火控系统中广泛应用,它利用可编程逻辑器件CPLD的在线编程技术,通过在线修改控制程序,能灵活实现对不同周期的外时统检测、脉冲宽度调整、多路分发、时序延时等功能,具有功能强、性能稳定、可靠性高、抗干扰能力强等特点,能满足不同系统对时统信号的要求,具有较强的通用性和实用性。
参考文献
[1] 焦素敏.EDA应用技术[M].北京:清华大学出版社,2005.
[2] 高仁璟,孙鹏,陈景.数字电子技术基础与设计[M].大连:大连理工大学出版社,2004.
[3] 孙晓云.接口与通信技术原理与应用[M].北京:中国电力出版社,2007.
[4] 张明,谢列敏.计算机测控技术[M].北京:国防工业出版社,2007.
[5] 李正军.计算机测控系统设计与应用[M].北京:机械工业出版社,2004.
[6] 卞楠,马聪.基于CPLD的光伏数据采集系统的设计[J].电子技术应用,2016,42(2):68-70.
[7] 焦芳,张玥,严韫瑶,等.多时钟域并行测试控制器的设计[J].电子技术应用,2016,42(9):29-31,35.
[8] 王振,李建宏,张大松,等.基于FPGA的VPX时间统一系统设计[J].电子技术应用,2018,44(1):65-67,71.
[9] 赵旸,梁步阁,杨德贵,等.多时钟系统下跨时钟域同步电路的设计[J].电子技术应用,2018,44(2):6-9.
作者信息:
吕文发
(中国船舶重工集团公司 江苏自动化研究所,江苏 连云港222006)