电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > DSP > 详细信息
DSP:基于DSP和FPGA的磁浮列车同步485通信方式研究
来源: 张卫宁   时间: 2007-9-24 10:15:21    

  摘要:本文介绍了高速磁浮列车中测速定位单元与车载设备之间的通信要求,并以此为基础提出了一种基于RS485物理层同步通信的实现方法。采用Xilinx公司XC2S100作为通信收发器,采用TI公司TMS320F2812作为通信控制器,制定了系统软硬件设计方案,并通过仿真和实验验证了该方案在实际应用中的可行性。

  关键词:磁浮列车;RS-485;同步通信

  在高速磁浮交通系统中,车载测速定位单元对车辆的位置和速度进行实时测量,并将位置和速度信号通过无线电系统传送至地面上的牵引控制系统和运行控制系统,以用于长定子直线同步电机牵引的反馈控制,以及车辆运行的指挥和安全防护。测速定位单元是牵引和运控系统闭环控制的核心与关键。

  测速定位单元紧邻悬浮电磁铁及长定子绕组和铁心,处于悬浮磁场和牵引磁场中,电磁环境非常复杂,这对其通信设备的电磁兼容性能提出了很高的要求。另外,为满足牵引控制系统的需求,测速定位信号的精度要求相当高。因此,测速定位信号传输的速度、实时性及可靠性都面临挑战。基于以上考虑,本文提出了基于DSP和FPGA的磁浮列车同步485通信方式的研究,以解决上述挑战。

同步485的实现方法

  考虑到测速定位单元的工作环境及通信功能需求,在选择该单元与车载无线电系统之间的通信方式时,经过分析,本研究采用了传输速率较高的同步通信方式,并使用屏蔽性能较好的双绞线实现RS-485平衡型差分传输。

接口设计及通信协议

  测速定位单元与车载无线电控制单元之间的通信接口关系如图1所示。车载无线电控制单元为主控方,车辆测速与定位单元为受控方。通信双方均由收发器和控制器构成,收发器之间采用RS-485同步串行接口方式,每个接口有4对差分线。

图1 通信接口关系示意图

  图1中,CLK为时钟信号,ANF为无线电请求信号,UEF为门控信号,DATA为数据信号。车辆测速定位单元每20ms向无线电控制单元发送一次数据,传输速率为512kbps。为了防止小脉冲信号的干扰,ANF信号的宽度为10个CLK信号;在ANF信号变为低电平后,等待10个CLK信号宽度,UEF才开始跳变为有效。ANF、UEF、DATA信号均在CLK的上升沿变化。在无信号传输时,UEF、DATA、ANF均为低电平,时钟信号保持传输。数据传输采用左移方式,即先传高位,后传低位。信息帧格式如表1所示。

表 信息帧格式

同步485的收发器实现

  在本文所论述的通信系统中,车辆测速定位单元及车载无线电控制单元双方均采用XC2S100作为通信收发器,模拟同步485的发送与接收时序。同步485的FPGA设计主要是基于Verilog 硬件描述语言,所使用的EDA工具包括ISE(含其内部集成工具)、Modelsim。

时钟及定时信号的的产生

  车载无线电控制单元需要产生速率为512k的时钟信号与20ms一次的ANF信号。另外,该单元在串行接收定位数据时接收时钟应为512k(波特率时钟)的16倍,即8M。因此,分频器在同步485通信方式中得到有效应用。

  对偶数分频,只需设计一个计数器进行计数,待计数至分频数的二分之一时,使分频后的时钟电平翻转即可;奇数分频较为复杂,因为计数器不能对非整数进行计数,需使用一定的算法进行处理。这里对奇数分频模块进行功能仿真后的波形见图2。

图2 分频模块仿真模型

  ANF信号每隔20ms发送一次,每次发送脉宽为10个时钟周期。ANF信号的产生可以分成两部分实现:首先产生间隔20ms的脉冲信号,然后把此脉冲信号的宽度变成10个时钟周期。
  
串行数据的发送与接收

  产生串行数据时,根据通信协议的要求,测速定位单元每隔20ms应串行移出72bits数据。如果每个发送时钟周期移出一位,则需要72个时钟周期才能全部移出,因此门控信号也需要保持72个时钟周期的宽度。

  接收串行数据时,同步串行接收一帧(72bits)数据与异步串行接收是不同的。由于收发时钟不是异步的,因此不能以判断在空闲态以后出现的第一个低电平作为一帧的开始,而是以门控信号(UEF)的上升沿作为一帧数据到来的判断。为了避免数据传输过程中毛刺的影响,我们仍以波特率时钟的16倍进行接收,即每隔16个波特率时钟周期采样一次,因此,每个数据将在传输的每一位的中点处被采样。

串行数据发送与接收的仿真时序图见图3。

图3 同步485仿真时序图

收发器与控制器之间的数据交换

  基于RS-485的同步通信时序是用FPGA作为通信收发器来模拟的,但是通信数据最终是与系统的CPU进行数据交换的。在该通信方式的设计中,通信双方均采用TMS320F2812作为通信控制器。FPGA与DSP的数据交换必须满足一定的时序,才能保证测速定位单元向车载无线电控制单元实时地传输位置及速度信号。本系统中,DSP控制器采用C语言进行软件设计。

测速定位单元侧DSP与FPGA的数据交换

  TMS320F2812的外部存储器XINTF可供选择的外部地址空间有XINTF0、XINTF2及XINTF6。其中XINTF0 使用XZCS0AND1作为片选信号,外部存储器扩展空间为8K;XINTF2与XINTF6分别使用XZCS2、XZCS6AND7作为片选信号,外部存储器扩展空间均为0.5M。测速定位单元在发送位置速度信息时,通过DSP的数据线传输到FPGA,DSP根据相应的外部存储器片选信号找出对应的地址,在从底层传感器得到一个新的定位数据后写入该地址。相对应的硬件连接框图见图4。

图4 收发器写数据的硬件连接

  根据协议要求,定位信息每次发送时包括5个字节的用户数据和2个字节的CRC校验,因此,16bits数据线至少需要连续发送四次,才能将底层的定位信息完整地传送到FPGA。

  为了减少硬连线,这里只连接地址线的高五位,对其中的低四位地址线进行4~16译码,最高位地址线作为该译码器的使能信号。取对应于一个外部存储器片选信号的四个地址,比如片选信号XZCS2为低,即可选用0xe0000,0xe4000,0xe8000,0xec000四个地址作为DSP向FPGA写数据的地址。

  由于每个不同的地址都对应一个地址译码值,当四个译码值都出现后才可认为一次定位信息传送完成。这时把连续接收到的七个字节加上帧头及帧尾,作为测速定位单元发送给车载无线电控制单元的一帧数据。

车载无线电控制单元侧DSP与FPGA的数据交换

  为了避免占用过多的CPU资源,车载无线电控制单元中DSP从FPGA读数据时不采用查询方式,而采用外部中断来接收数据。将DSP的16bits数据线与FPGA连接,DSP的XINT1也连接到FPGA的I/O管脚。若选用XZCS0AND1作为外部存储器片选信号,则DSP从FPGA读数据的寻址空间范围为0x002000—0x004000,这个地址范围内所读出的数据即为数据线上传送到DSP的定位数据。相对应的硬件连接框图见图5。

图5 收发器读数据的硬件连接

  由于FPGA传送到DSP的一帧数据为72bits,因此通过16bits数据线传输需要5次才能传送完,每16bits数据到达时产生一次外部中断。设波特率时钟为512k,假设来自定位单元完整的一帧数据为0x02123456789abcde03,车载无线电单元通过16bits数据线分次转发到DSP的数据则为0x0002、0x1234、0x5678、0x9abc及0xde03。数据及中断信号产生的时序如图6所示。由图6可以看出,每对应移出一次dataout,都会相应地发出一个外部中断信号xint1,DSP一旦接收到外部中断,便在中断服务子程序中从16bits数据线读取信号值。为了完整的接收一帧信号,可在外部中断服务程序中定义一个16级FIFO,当从FIFO的最底层读出的数据为0x02时,便可以判断一帧数据的开始(若在用户数据和校验值中存在0x02,则要进行相应的字符转义),依次接收以下的数据便得到完整的一帧定位信息。

图6 读数据的仿真模型

通信双方的原理图

  根据以上对同步485实现方法的描述,在ISE中利用ECS工具所描绘的顶层原理图如图7和图8所示。包括测速定位单元同步数据发送和车载无线电控制单元同步数据接收两部分。 
 
  图7中,addr_decode为地址译码模块,用于从DSP完整地接收一帧定位信息;tra485data为串行数据及门控信号发送模块。其中,din(15:0)直接来自DSP的16bits数据线;addr(3:0)与DSP的A17~A14地址线相连;clkin及anfin信号由车载无线电控制单元提供。输出的dataout及uefout经过输出缓冲及差分电平转换后送给车载无线电控制单元。

图7 同步数据发送方式原理图

  在图8所示的车载无线电控制单元同步数据接收方的原理图中,divide_512k为发送时钟产生模块,产生通信所需的波特率时钟;anf_shift 用于产生无线电请求信号;rec485data用于串行接收定位信息并通过dataconvert模块转发到通信控制器。其中,Dataout(15:0)直接通过数据线连到DSP,Xint1则连到DSP的外部中断1。anfout和clkout由输入的晶振频率分频后得到,经输出缓冲及差分电平转换后送给车辆测速定位单元。

图8 同步数据接收方原理图

结语

  在高速磁浮列车特殊的通信环境中,基于RS-485物理层的同步通信方式体现出其抗干扰性强、实时性好、误码率低等优点,且实现原理简单。利用FPGA所实现的通信收发器设计灵活、可靠性高,其功能在实际应用中已得到验证。

相关信息
发表评论
打印本页 关闭本页
FPGA助力高端存储器接口设计
    高性能系统设计师在满足关键时序余量的同时要力争获得更高性能,而存储器接口设计则是一项艰巨挑战。双倍数据速率SDRAM和4倍数据速率SDRAM都采用源同步接口来把数据和时钟(或选通脉冲)由发射器传送到接收器。接收器接口内部利用时钟来锁存数据,此举可消除接口控制问题(例如在存储器和FPGA间的信号传递时间),但也为设计师带来了必须解决的新挑战。   关键问题之一就是如...
>>详细内容
赛灵思SPARTAN-3A系列FPGA又添低功耗器件
    赛灵思公司(Xilinx)日前宣布其XtremeDSP信号处理解决方案产品系列新增功耗优化的Spartan-3A DSP器件。这个目前业已投入量产的FPGA新器件,为低成本且低功耗FPGA领域的应用如军事通信战术无线电系统、无线接入点和便携式医疗设备等,提供了高性能的数字信号处理(DSP)能力。   与标准器件产品相比,Spartan-3A DSP低功耗(LP)器件的静态功耗降低了50%,而在待机模式下静态功耗的降低...
>>详细内容
ARM推出首款专门针对FPGA优化的处理器Cortex-M1
    ARM公司日前发布了第一款专门针对FPGA应用而优化的ARM Cortex-M1处理器。ARM Cortex-M1处理器扩展了ARM Cortex处理器系列,可帮助OEM厂商在一个通用架构下对不同性能需求进行标准化。Actel作为一家核心合作伙伴已与ARM紧密合作,并成为首个获得授权可为其FPGA客户提供Cortex-M1处理器的公司。   2007年4月2日至5日在美国加利福尼亚州圣何塞举行的嵌入式系统大会(Embedded System...
>>详细内容
莱迪思推出业界首个真正的90纳米非易失FPGA器件
    莱迪思半导体公司日前公布了其第三代非易失FPGA器件,LatticeXP2系列。LatticeXP2具有增强的性能,双倍增加的逻辑容量达40K查找表(LUT)、性能改进了25%、还加入了专用DSP块,而每个功能的价格减少达50%。对1.2伏加工工艺的功耗进行了优化,静态功耗减少了33%。设计使用了业界最先进的非易失FPGA工艺,莱迪思与代工伙伴富士通合作开发了90纳米嵌入式闪存工艺,LatticeXP2具有“瞬时...
>>详细内容
利用FPGA实现基于RU算法编码器(LDPC编码器)的设计
  引言   低密度奇偶校验(Low Density Parity Check Code,LDPC)码是一类具有稀疏校验矩阵的线性分组码,不仅有逼近Shannon限的良好性能,而且译码复杂度较低, 结构灵活,是近年信道编码领域的研究热点,目前已广泛应用于深空通信、光纤通信、卫星数字视频和音频广播等领域。LDPC码已成为第四代通信系统(4G)强有力的竞争者,而基于LDPC码的编码方案已经被下一代卫星数字视频广播标准D...
>>详细内容
从FPGA实现的角度对大约束度Viterbi译码器中路径存储单元的设计
  1 引言   Viterbi译码算法是一种最大似然译码算法,目前广泛应用于各种数据传输系统,特别是卫星通信和移动通信系统中。近年来随着FPGA技术的迅速发展,使得基于FPGA实现Viterbi译码的算法成为研究的热点。   由于Viterbi译码器的复杂性随约束长度k成指数增加,大约束度不但使Viterbi译码器硬件复杂度大为增加,同时也限制了译码速度。而其中以加比选(Add Compareselect,ACS)运算...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com