付文彬,杨文兵,杨 光,侯云江
(1.中国电子科技集团公司第三十研究所,四川 成都 610041;2.陆装驻成都地区第三军事代表室,四川 成都 610041)
E1和V.35接口为是党政机关、电力系统以及部队等国有机关有线数字传输网络中的标准接口,应用十分广泛。
在我国电信传输网中,E1接口和V.35接口传输线路是多路复用的一次群传输标准。比如,准同步数字系统(Plesiochronous Digital Hierachy,PDH)和同步数字系统(Synchronous Digital Hierachy,SDH)都采用E1接口和V.35接口的传输标准,属于电信网中最基本的接入和传输线路[1]。
为了保证传输的安全性,在实际业务通信时,传输双方都会采用一定的安全防护设备,以保证数据传输的安全性。为了方便验证信道传输信号的数据正确性和随机性,本文设计了一套基于E1和V.35接口的数据采集系统,并将其串接在安全设备与信道机之间,在不影响正常业务通信的前提下,实时采集信道上的数据,配合数据采集控制软件,分析处理信道数据。
数据采集设备在应用模式上串接于安全防护设备与信道机之间,能在不影响两者当前通信状态的情况下实现对E1和V.35接口类型安全防护设备的传输数据采集。数据采集设备应用配置图,如图1所示。
数据采集设备主机采用串行接入方式接入有线信道。数据采集时,数据采集设备主机与数据采集控制中心软件协同完成对安全防护设备的线路数据采集。采集控制中心软件安装于主控计算机,主要用于数据采集文件和工作日志的存储管理、采集文件内特定需求数据的提取以及对数据采集设备主机的工作参数的设置和操作流程的控制。
采集设备对外的接口分为信道端接口和防护端接口。信道端接口接收信道机发送的E1或V.35信号,采集设备将此信号通过防护端接口发送至安全防护设备。防护端接口接收安全设备发送的E1或V.35信号,采集设备将此信号通过信道端接口发送至信道机,同时采集设备同步采集此信号并上报到采集软件。
本文设计的数据采集系统基于DSP+FPGA为主处理单元,完成对E1信号和V.35信号的数据采集。数据采集系统主要由主处理单元、E1接口单元、V.35接口单元和以太网接口单元组成。它的硬件架构图如图2所示。
信道端信号(E1/V.35)和防护端信号(E1/V.35)通过相应的接口电路接入FPG A的管脚。经过FPGA的信号转换和处理,信道端的收发信号接入DSP的MCBSP1,防护端信号收发信号接入DSP的MCBSP0。以太网接口单元通过EMIF2接入DSP主处理芯片,通过DSP程序处理实现以太网单元的数据收发。主处理单元通过DSP芯片的EMIF1接口连接DSP的程序FLASH芯片,实现DSP程序的加载和存储,通过EMIF0连接SDRAM扩展处理器的缓存运算能力。
主处理器单元是数据采集设备的核心部分,担负着对信道线路传输数据的交换、采集和上报,还能对数据采集设备与数据采集设备控制软件之间的通信协议进行解析封装,以及对整个设备的工作流程实施管控、对工作参数进行配置管理。
主处理单元主要选用TI公司的TMS320C6000系列高性能数字信号处理器(Ditigal Sigal Processor,DSP)芯片和XILINX公司的FPGA芯片组合构建而成。该组合设计能较好地满足整体的技术指标要求,并具备较强的升级扩展性。
DSP的EMIF3总线、MCBSP接口、DSP外部中断接口(DSP_INTS)都接入FPGA管脚,如图3所示。其中,EMIF3包括地址和数据总线、通用FPGA的总线控制和地址译码,完成对系统的控制处理。MCBSP接口通过FPGA波形的转换接入信道端和防护端的同步数据口。
2.1.1 TMS320VC6713高速数字信号处理器
TMS320VC6713 DSP是TI公司C6000系列DSP芯片,具有高性能、低价位以及低功耗等特点。它是32位高速浮点型DSP[2],时钟最高频率为300 MHz,具有如下特点。
(1)系统结构采用超长指令字(Very Long Instruction Word,VLIW)结构,多个功能单元并行工作,所有功能单元共享共用的大型寄存器。
(2)L1/L2存储器结构之间映射4 kB L1P程序缓存、4 kB L1D数据缓存和256 kB L2内存。
(3)16个独立通道的增强型直接存储器访问控制器(Enhanced Direct Memory Access,EDMA)。
(4)32 bit的外部存储器接口(External Memory Interface,EMIF),可实现与异步存储器的无缝连接,可寻址512 MB外部存储空间。
(5)2个多通道缓存串口(McBSP)。
2.1.2 XC3S1200E逻辑器件
XC3S1200E为Xilinx公司Spartan 3E系列芯片,拥有丰富的资源,包含120万个逻辑门、136 kB的分布式RAM、504 kB的块RAM、28个乘法器、8个DCM以及304用户IO口,最大工作频率为300 MHz。
E1接口单元是实现串行E1信号接入方式的重要基础,能配接E1接口的安全防护设备。E1数字传输系统采用码型为HDB3双极性归零码型。该码型直流分量少,自带位同步信息,且编码规则能够有效降低传输数据中出现连续“0”的情况对时钟恢复的影响。E1接口单元设计选用调制解调芯片DS21348TN和变压器组合而成。该芯片是DALLAS公司生产的E1接口驱动芯片,符合G.703标准规范,支持HDB3/AMI编码。输入输出阻抗具有75 Ω和120 Ω两种模式[3]。
在本文设计中,E1接口单元分为E1接口保护电路、DS21348芯片及其外围电路。图4为E1接口芯片保护电路,通过变压器、二极管和电阻的处理网络完成对E1信号的整形和保护,从而减少过压和过流干扰[4]。
图5为E1接口芯片DS21348对外连接示意图。
设置DS21348芯片的ETS管脚为高,使其工作在E1工作模式。设置BS0/BS1均为高,选择芯片工作在串行工作模式。信道端或防护端的E1信号通过接口芯片的接口匹配、波形转换等处理后,以串行数据和时钟接入FPGA。
V.35接口单元实现信道端和防护端串行V.35信号接入,能配接V.35接口的安全防护设备。V.35接口单元设计选用电平转换芯片MAX3094EESE和MAX3032EESE组合而成。V.35接口单元连接,如图6所示。
其中,MAX3094和MAX3032芯片支持V.35、V.28和V.11等通信协议,完成V.35接口收发数据,并将时钟的差分信号转换为CMOS电平信号,从而接入FPGA。
以太网接口单元用于上层控制软件和DSP控制芯片之间的以太网数据包交互。本设计中选用SMSC公司的LAN9215作为以太网交互芯片。LAN9215是功能全面的嵌入式16位单芯片10/100M以太网控制器,内部集成了MAC和PHY控制器,全面支持IEEE 802.3标准,并可通过MII接口实现与外部PHY的连接,具有并行16路IO数据传输接口,在本设计中与DSP的EMIF总线连接。内置的PHY可配置为100BASE-TX或10BASE-T以太网模式。根据需要选择全双工或者半双工运行。图7为LAN9215的接口电路[5]。
PHY芯片LAN9215右侧为内部集成变压器的RJ45插座。LAN9215的地址总线A1~A7、数据总线D0~D15与主处理单元的DSP的EMIF2总线的地址和数据总线连接。主处理单元通过EMIF总线读写寄存器的数据,LAN9215的读(READ)、写(WRITE)、片选(CS)、复位(RESET)信号均连接至主控单元的DSP和FPGA中。引脚79~87连接RJ45插座,实现内部PHY与主控计算机的通信。XTAL1为芯片的时钟接口,采用25 MHz的有源晶振。其他设置均参考LAN9215的数据手册进行设置。
数据采集设备的软件包括数据采集设备控制软件(安装运行于Windows操作系统),还包括运行于数据采集设备内的底层软件(加载运行于TMS320C6000芯片内)。
数据采集设备控制软件作为系统的核心控制软件,主要用于对数据采集设备的工作参数配置、采集流程控制、采集数据存储管理、用户操作日志管理查询和人机交互处理等功能需求。数据采集设备控制软件采用以太网服务器端工作模式。
数据采集设备底层软件主要包括采集对象工作接口适配、数据收发、以太网通信以及工作参数配置等功能。数据采集设备上电后,由TMS320C6000芯片完成数据采集设备底层软件的加载和运行。
3.2.1 数据采集设备控制软件
数据采集设备控制软件采用模块化分层的框架体系。各层阶间耦合性较小,便于独立开发和验证测试。采集控制中心软件基于C++Builder平台进行开发设计,按功能划分为设备管理模块、数据采集模块、状态监控模块、网络通信模块以及进制转换模块等。具体的模块划分如图8所示。
(1)设备管理模块
设备管理模块包括数据采集设备在线搜索、工作参数配置以及采集任务控制等操作。在线搜索是通过搜索命令对接入网络并与数据采集设备控制软件处于同一网段的数据采集设备实施搜寻。搜索结果在管理列表中显示,如图9所示。工作参数配置是对数据采集设备的MAC地址、IP地址、工作端口等参数进行设置,如图10所示。
(2)数据采集模块
按照用户的线路数据采集要求,下发数据采集命令,通知数据采集设备启动采集操作,并在过程中实时接收已采集数据,如图11所示。
(3)状态监控模块
状态监控模块能够对在网运行的数据采集设备工作状态进行自检控制和工作状态显示。
(4)网络通信模块
网络通信模块能够通过以太网口与数据采集设备建立通信链接。
(5)进制转换模块
进制转换模块对采集数据进行二进制和十六进制转换。
3.2.2 数据采集设备底层软件
数据采集设备底层软件在设计上采用模块化分层式架构,任务层与驱动层阶间采用消息传递机制实现功能模块管理和控制。数据采集设备底层软件按功能特性分解为硬件接口驱动层和任务管理层。硬件接口驱动层主要完成与硬件相关的以太网接口驱动、V.35接口驱动以及E1接口驱动等功能;任务管理层主要包括命令解析、操作控制、同步头判别和硬件参数设置管理等功能。具体说明如图12所示。
(1)任务层
任务层作为数据采集设备的核心控制部分,通过消息层与驱动层完成数据交互。其中,每个任务程序对划分的不同功能操作命令进行识别和管控,并能对当前工作参数或设备信息进行存储查询。采集系统的任务列表,如表1所示。
表1 采集系统任务
参数配置任务主要是完成以太网参数配置和设备数据采集接口类型选择;以太网协议栈任务用于对以太网多层协议进行解析和封装;命令解析任务能对控制软件下发的控制命令实施解析判别;信道端/防护端收发任务是根据命令解析任务提取的命令,控制驱动层各驱动软件的工作设置和流程控制。任务类型包括单次任务(OnceTask)和消息任务(MsgTask)。
以参数配置任务为例子,创建任务如下:
LevFactSet_DriTskID=OS_TskCreate(OnceTask,ts kLow,LevFactSet_Monitor,LevFactSet_Init);
程序设计时,创建参数配置任务,并执行相应的初始化函数(LevFactSet_Init)。
(2)消息层
消息层包括任务消息队列管理和硬件驱动消息队列管理。任务消息队列管理是对驱动层获取的数据信息进行封装建链,并指向任务层内的相关任务处理。硬件驱动消息队列管理是将任务处理数据进行封装建链,并交指定的硬件驱动程序执行。消息层程序设计利用如表2所示的函数完成。
表2 消息层管理函数
(3)驱动层
驱动层作为与硬件直接实施数据交互通道,分别以各自独立的驱动程序对相关硬件接口进行参数设置、中断操作和数据传输,以及向任务层上报数据和接收任务层数据输出。
在本设计中,包括以太网驱动接口驱动、信道端驱动和防护端驱动。由采集设备需要对传输的数据进行实时采集,且不影响信号的正常传输。对DSP的快速处理有一定的要求,本设计利用DSP的EDMA资源与相关的硬件接口(EMIF、MCBSP0、MCBSP1)进行控制管理。在硬件接口收发的数据直接进行EDMA的数据缓存区进行通信,无需DSP程序进行处理,其中以太网驱动函数如表3所示。
表3 以太网驱动函数
信道端和防护端列驱动函数,如表4所示。
表4 信道端和防护端驱动函数
可见,底层软件设计细节,主程序完成硬件资源和变量的配置,并创建相应的任务,利用任务管理和监控,接收上层软件的采集或设置命令,驱动使能相应的需求任务,从而完成采集或配置任务。主程序启动流程如图13所示。
搭建如图14所示的测试环境,验证数据采集设备的功能正确性。
利用误码测试仪产生标准的、不同数据类型的E1信号和V.35信号。操作数据采集中心控制软件进行数据采集。观察误码测试仪统计的误码数量是否为零,如图15所示。
检查采集结果是否和误码测试产生的码型一致,采集测试结果见表5。
表5 功能测试结果
针对误码测试仪产生两种接口的标准数据进行数据采集,误码率均为0表明采集设备未影响信道中信号的传输。采集结果的内容判别特别是63码型和511码型的循环码判断,表明采集结果具有正确性。
本文提出了一种基于DSP和FPGA平台的E1/V.35接口的有线网数据采集系统,并介绍了各功能单元的作用和部分软硬件设计。依托系统的软硬件设计完成有线网中E1/V.35信号的采集、处理和传输,同时不影响有线网业务的正常进行。通过测试验证,数据采集系统达到了所需的功能性能要求。系统具有处理能力强、应用方式灵活和可靠性高等优点,在工程应用中具有广泛的应用价值。目前,本数据采集系统已成功应用于某型号安全设备的安全测评中,并取得了良好的应用效果。