ISSN 1000-0054CN 11-2223/N
清华大学学报(自然科学版)J T singh ua Un iv (Sci &Tech ),2008年第48卷第8期
2008,V o l.48,N o.8w 22
http://qhx bw.chinajo
RS 485高速数据传输协议的设计与实现
耿立中, 王 鹏, 马 骋, 贾惠波
(清华大学精密仪器与机械学系,精密测试技术及仪器国家重点实验室,北京100084)
收稿日期:2008-01-03
作者简介:耿立中(1985—),男(汉),山东,博士研究生。通讯联系人:贾惠波,教授,E-mail:jiah b@tsingh
摘 要:为实现远距离的高速基带信号传输,该文设计了一种以RS 485标准为物理层基础,在现场可编程门阵列(F PG A )平台上实现的数据传输协议。该协议利用串行信号的跳变沿作为高速时钟检测的起点实现位同步,可以有效地解决信号码间干扰问题;利用8B /10B 编码实现帧同步,可以保证位同步的准确性和帧同步控制字符的可靠性。该文利用F PG A 平台对协议进行了实验测试,测试结果表明该协议可以实现220m 距离上的14.5M b /s 的有效数据传输,为长距离的高速数据传输提供了可靠的实现方法。
关键词:传输协议;R S485总线;现场可编程门阵列
(FP GA )
中图分类号:T N 913.8
文献标识码:A
文章编号:1000-0054(2008)08-1311-04
Design and implement of RS485high speed data communications protocol
G ENG Lizhong ,WANG Peng ,MA Cheng ,JIA Hu ibo (S tate K ey Laboratory of Precision Measurement Technology &
Instruments ,Department of Precision Instruments and Mechanology ,Tsinghua Univers ity ,Beijing 100084,China )Abstract :Th is paper des crib es a RS485commun ication s protocol for high -speed baseb and commu nications.T he inter symb ol inter feren ce (ISI)is reduced by an efficient bit s ynch ronization signal detection schem e.Samplin g begins at th e begin ning of the inpu t signals to get ex act digital r esu lts.T he frame synchronization us es 8B/10B coding an d guaran tees bit syn chroniz ation.T he protocol w as implemented on a field programmable gate array (FPGA)w ith test res ults indicating that th e protocol achieves 14.5M b /s along a 220meters line.
Key words :com munication protocol;RS485
bus ;
field
programmable gate array (FPGA)
RS485作为一种串行通信的接口,具有传输距
离长、速度较高、电平兼容性好、使用灵活方便、成本低廉和可靠度高等优点,在智能管理[1]
、在线控制[2]
、地质勘探
[3-4]
等许多领域都有着广泛的应
用[5]。目前Pro fibus -DP 、Arcnet 和CAN 等总线标
准的物理层均是RS 485规范,这些总线标准不能同时保证长距离(200m 以上)和高的传输速度,其中性能较好的Profibus 只能在100m 距离上实现12
M b /s 的数据传输
[6-7]
。由于RS485传输为基带信号传输,没有单独的时钟线,所以时钟提取成为整个高速数据传输协议的关键。现有的串行数据时钟提取技术中,同步方式
复杂度较高[8]
,异步方式中通用异步收发器(U ART )
[9]
以字为传输协议的基本单元,一般不适
应太高的速率,传输效率也较低。
本文以RS 485标准为物理层基础,在现场可编程门阵列(FPGA)平台上设计并实现了一种基于特殊的时钟提取方法的传输协议,可以用于串行数据的高速远距离传输。该协议利用串行信号的跳变沿作为高速时钟检测的起点实现位同步,有效地解决信号码间干扰问题;采用8B/10B 编码实现帧同步,保证位同步的准确性和帧同步控制字符的可靠性。
1 协议描述
1.1 位同步设计
本设计的位同步方法是以波特率的10倍频时钟作为检测时钟,信号的上升沿和下降沿作为位同步采样的起点。建立2个采样寄存器R H 、R L ,当高频时钟检测到输入信号为高电平时,开始对检测时钟计数,并存入寄存器R H ,同时将R L 置零,当R H 为5时产生第一个采样点,而后每隔10个时钟周期产生采样点,采得的数字信号为“1”;相应的当高频时钟检测到输入信号为低电平的时候,开始对时钟计数,并存入寄存器R L ,同时将R H 置零,当R L 为5时产生第一个采样点,而后每隔10个时钟周期产生采样点,采得的数字信号为“0”。