第八章串行通信接口.ppt
《第八章串行通信接口.ppt》由会员分享,可在线阅读,更多相关《第八章串行通信接口.ppt(85页珍藏版)》请在三一办公上搜索。
1、第八章 串行通信接口,并行通信虽然同时可传送多位数据,但如果用于长距离传输就必然需要大量的通信线路和中继设备等,而且在技术上也非常困难。因此,并行通信不适宜于长距离的通信(如计算机网络)。在长距离的通信中,往往使用串行通信。串行通信就是指用串行传输的方式来完成的通信。串行传输是在一条通信线路上把要传输的数据以二进制位一位一位地顺序地发送到接收端,由接收端再组装成相应的数据。串行通信是现代通信网和计算机网的基础。现在,串行通信也大量应用于计算机与周边设备之间的通信。,8.1 串行通信基础,通信指计算机与外部设备或者其他计算机之间的通信。串行通信所需的信号线较少,并且可以利用现有的电话网传送信息,
2、特别适合于远距离传送。对于计算机与距离较近的外部设备之间的通信也常常使用串行方式。,和并行通信相比,串行通信有以下一些特点。1.在进行串行传输之前必须将并行数据转换成串行数据流;在接收端又要将收到的串行数据流转换成并行数据。即并-串转换和串-并转换。这种转换通常是以字节为单位进行的。2.传输的二进制位流中必须包含数据流和控制流。控制流用于接收端控制数据的组装、识别数据的真伪。3.通信的双方约定串行通信的数据格式。这种约定就是串行通信协议。4.串行通信中常常需要进行逻辑关系和逻辑电平的转换。5.串行通信中的物理传输手段各不相同。6.串行通信用于计算机与其周边设备间的信息交换时,连接线路简单。,本
3、节将介绍串行通信的基本概念、主要几种串行通信协议的数据格式以及主要的串行通信接口标准。,8.1.1 串行通信中的基本概念,1.串行数据传送方向在串行通信中,数据通常是在两个点(如终端和微机、微机和微机)之间进行传送,按照数据流的方向可分成3种基本的传送方式:单工、半双工和全双工。(1)单工。在通信双方的一方只发送数据,而另一方只接收数据,这样在它们之间的传输线上数据就只向一个方向流动,即从发送方到接收方。这种传送方式就是单工制(Simplex System)。,(2)半双工。若使用同一条传输线既作接收又作发送,虽然数据可以在两个方向上传送,但通信双方不能同时收发数据,这样的传送方式就是半双工(
4、Half Duplex System)制。采用半双工时,通信系统每一端的发送器和接收器,通过收/发开关转接到通信线上,进行方向的切换,因此,会产生时间延迟。收/发开关实际上是由软件控制的电子开关。,(3)全双工当数据的发送和接收分流,分别由两根不同的传输线传送时,通信双方都能在同一时刻进行发送和接收操作,这样的传送方式就是全双工(Full Duplex System)制。在全双工方式下,通信系统的每一端都设置了发送器和接收器,因此,能控制数据同时在两个方向上传送。全双工方式无需进行方向的切换,因此,没有切换操作所产生的时间延迟,这对那些不能有时间延误的交互式应用(例如远程监测和控制系统)十分有
5、利。,目前多数终端和串行接口都为半双工方式提供了换向能力,也为全双工方式提供了两条独立的引脚。在实际使用时,一般并不需要通信双方同时既发送又接收,像打印机这类的单向传送设备,半双工甚至单工就能胜任,也无需倒向。,2.串行通信中的同步,在串行传输数字信号时,在接收端必须要有移位时钟脉冲来控制将信号逐位读入(一般使用时钟脉冲的上升沿在数据脉冲位的中间时刻将数据逐位移入移位寄存器),然后按某种方式组装成与发送端发送数据完全相同的接收数据。这种让时钟脉冲与数据脉冲之间的频率和相位保持一致的机制以及相应的数据装配就叫做同步,实现同步的技术就是同步方式。串行通信中的同步有异步方式和同步方式两类。,(1)异
6、步方式,异步方式是一种字符同步方式。所谓异步是指所传数据的每两个字符之间的间隔时间可以不相等。这种传输每个字符以起始位开头,以停止位结束,中间是被传输的数据位,每位数据位都与发送端同步,所以又称为起止式同步方式。这种方式在传输的两端之间传送的每个字符都要同步一次。因此,每个字符都是一个独立的信息单位(称为一帧)。,发送端,在发送每一个字符的串行数据前加一个起始位,在数据位结束时加一位奇偶校验位(可选)、一到二位结束位,这就是异步传送完整的一帧。起始位是低电平,结束位是高电平。所发送的位宽等于发送端的移位时钟脉冲的周期宽度,即发送是在移位时钟脉冲的控制下把并行数据转换成串行数据的。接收端,为了正
7、确的接收数据就必须采用和发送端相同频率的移位时钟脉冲。由于接收端与发送端不是同一时钟源,因此接收频率和发送频率可能会有一些误差。,为了保证采样精度,接收移位时钟脉冲采用频率是发送时钟频率N倍的时钟源经过N分频(方波分频)得到。接收端的接收过程为:接收端在初始状态时分频器输入被禁止输出就为低电平,当收到收到起始位的负跳变时,分频器输入频率被允许,当分频器计数到N/2时将输出高电平。这个上升沿将再次采样输入信号,如果还是低电平就认为是起始位,在下一个上升沿就将开始采样数据位。对约定的数据位数采样完成后(含奇偶位,如果有的话),采样约定位数的结束信号,如果是高电平则本次传输完成,置分频器输入禁止状态
8、。,异步方式虽然在输出/输入端不使用同一个时钟源,但由于频率相同且每个字符都要同步一次,即使有一定的时钟偏差也不会向后累积,能够保证接收的可靠性。,(2)同步方式,发送端发送的每位信息都带有同步信息。在实际应用中,使用同一时钟源作为发送端和接收端的移位时钟脉冲。这样就不需要在数据中附加控制冗余信息,提高了数据传输率,但增加了一条通信线路。这种方式必须控制数据线和同步线的畸变和相移,以保证接收端能够正确接收数据。同步方式一般是以数据块为信息单位传送,而每帧信息包括成百上千个字符或比特(二进制位)。数据块内部的位传送是同步的,数据块与数据块之间的传送也应该是同步的,这就是同步通信。,同步方式有两种
9、形式:外同步和内同步。外同步是指不但每一位有同步时钟,而且发送端在发送一个数据块之前要先发送一个块同步信号,通知接收端在下一个采样时钟位置是下一个接收数据块的第一个比特。至于如何对接收到的比特流进行划分,要按事先的约定。内同步无需数据块同步信号,数据块的同步采用比特流中的同步码来同步,同步码后面就是数据,数据划分同样根据事先约定。内同步格式的通信协议一般有两种:面向字符的通信协议和面向比特的通信协议。,3.数字数据编码技术,数字数据可以以数字信号或模拟信号在通信信道上传输,主要根据传输设备和传输介质的不同而采用不同的方式。,(1)数字数据的数字编码技术,数字数据以数字信号传输时,往往要进行编码
10、,以保证数据在信道上正确地传输。目前,在传输数字信号时往往采用曼彻斯特编码或差分曼彻斯特编码。这两种编码在每一位数据位的中心都有一个跳变,接收端可以将它分离出来作为同步信号。由于它们的每位数据位都带有同步信息,所以又称为自同步编码。如图8.1所示。,曼彻斯编码以在数据位中心的跳变来判断这位数据是0或是1,正跳变(由低电平到高电平)表示0,负跳变(由高电平到低电平)表示1。差分曼彻斯特编码是以每位数据位的开始是否有跳变来表示这位数据是0还是1,在数据位开始时有跳变为0,无跳变为1。由于曼彻斯特编码和差分曼彻斯特编码在数据波形上就携带了时钟信息,在一条传输线上传输数据和同步时钟就不会出现失步,因此
11、可以用较高的传输率传输数据。,(2)数字数据的模拟编码技术,在线路上传输的脉冲信号可以分解成直流分量、低频与高频谐波分量,因此数字信号的传输需要很宽的频带。如果在带宽较窄的信道传输数字脉冲信号,则会滤去一些谐波分量,造成脉冲波形畸变导致传输失败。于是,在带宽较窄的信道传输时发送端要将数字信号变换成一定频率范围内的模拟信号在某一频带内传输,接收端将这些模拟信号变换成数字信号接收,这种变换和反变换就称为调制和解调。调制过程是用数字信号对一定频率的正弦载波信号的振幅、频率、相位进行控制,使之加载到载波信号上。接收端将数字信号从加载的载波信号上分离出来,就是解调过程。,调制方式一般有三种:调幅、调频和
12、调相,又分别称为移幅键控(ASK,Amplitude Shift Keying)、移频键控(FSK,Frequency Shift Keying)和移相键控(PSK,Phase Shift Keying)。在对数字数据的传输中,不改变数字信号的波形和频率的传输方式称为基带传输,而传输经过调制后的变成模拟信号的传输方式称为频带传输。,4.传输速率与传输距离,在串行通信中,传输速率用波特率来表示。所谓波特率,是指单位时间内传送二进制数据的位数,其单位是位/秒(bit/s)。它是衡量串行数据速度快慢的重要指标。有时也用“位周期”来表示传输速率,位周期是波特率的倒数。传输距离是指发送端和接收端之间直接
13、传送串行数据的最大距离(误码在允许的范围内)。它与传输速率及传输介质的电气特性有关,往往传输距离随传输速率的增加而减小。,5.传输差错控制,串行数据在传输过程中,由于干扰而引起误码是难免的,这将直接影响通信系统的可靠性,所以,通信中的差错控制能力是衡量一个通信系统的重要指标。我们把如何发现传输中的错误,叫检错;在发现错误之后,如何消除错误,叫纠错。一个可靠的通信系统必须提供无差错的传输服务,差错控制的作用就是在通信过程中发现和纠正误码。,(1)数据传输的差错控制方式,反馈重传纠错(ARQ,Automatic Request for Repeat)在发送端发送具有检错功能的编码,发送完后保存该数
14、据,等待接收端的应答。在接收端根据检错码的编码规则判断所接收的数据是否正确,并把判断结果反馈给发送端。如果发送端收到的是无错应答,就删除所保存的发送数据,继续发送下一个数据;如果是有错应答,则将保存的数据重发。这种检纠错的方式简单,检错的冗余信息位不多,因此应用广泛。但当通信信道干扰严重时,通信就会经常处于重传状态而无法进行下去。因此,这种方式要求信道的误码率小于一定的值,一般误码率小于10-7的信道为合格。误码率是指错误码的位数与所传输的总位数之比值。,前向纠错(FEC,Forward Error Correcting)在发送端发送具有纠错功能的编码,与检错码相比,要增加一些冗余信息来完成纠
15、错功能。接收端根据纠错码的编码规则,不但能检出错误编码,而且还能纠正它。采用该方式发送端就不必等待应答。但一种纠错编码能纠正的编码位数是有限的,而且纠正的误码位越多要求的冗余位也越多,编解码过程也越复杂。如果误码的位数超过该编码的纠错能力,这种方式就无能为力了。,混合纠错(HEC,Hybrid Error Correcting)综合了以上两种方式,在发送端发送能纠错的编码,在接收端如发现误码在纠错能力范围内则直接纠错且反馈无错应答,如发现误码超过纠错能力则向发送端反馈误码信息请求重发该组数据。,(2)常用的检纠错方法,在基本通信规程中一般采用奇偶校验或方阵码检错,以反馈重发方式纠错;在高级通信
16、控制规程中一般采用循环冗余码CRC(Cyclic Redundancy Code)检错和自动纠错。,方阵码检错方阵码检错技术是奇偶校验与“检验和”的综合。例如,7位编码的字符附1位奇偶校验位,以使整个字节的“1”的个数为偶数或者为奇数。让若干个带检验位字符组成一个数据块,并对所有数据块中的字符纵向按位加,产生一个单字节的检验字符并附加到数据块末尾。这一检验字符实际是所有字节“异或”的结果,反映了整个数据块的奇偶性。在接收时,数据块读出产生一个检验字符,和发送来的检验字符进行比较。如果两者不同,就表明有错码,反馈重发。下面是一个方阵检验字符的生成示例。,1 1 0 1 0 0 1 0奇偶位0 1
17、 0 0 0 0 0 11 0 1 0 1 0 1 01 1 1 1 0 0 1 11 1 0 0 0 0 1 1_0 0 0 0 1 0 0 1,循环冗余码(CRC)检错和自动纠错循环冗余码CRC具有很高的纠错能力,在串行数据通信中得到广泛的应用。CRC码的特性:任何一个CRC码循环右(左)移一位产生的新码仍然是CRC码;任何两个CRC码按位异或结果仍然是CRC码。CRC的算法可以通过软件实现,也可以通过除法电路和移位电路硬件实现。当前,CRC码的编译码大都采用硬件实现。,8.1.2 串行通信的数据格式,在通信过程中,通信的各方都必须按统一的通信协议进行才能够完成通信。所谓通信协议是指通信各
18、方相互的一组约定,这组约定中要对包含同步方式、传送速度、数据格式、传送步骤、检纠错方式以及控制方式的定义等各个方面作出统一规定,以保证通信的顺利实施和完成。相互通信的各方必须共同遵守同一通信协议才能够正确完成相互间的通信。通信协议也叫做通信控制规程,或者传输控制规程,它在ISO的OSI七层参考模型中属于数据链路层。,当前较为广泛采用的串行通信协议有两类:起止式异步通信协议和同步通信协议。同步通信协议又有面向字符(Character-Oriented)的同步通信协议和面向比特(Bit-Oriented)的同步通信协议等各种同步通信协议。接下来讨论这几种通信协议的数据格式。,1.起止式异步通信协议
19、的数据格式,(1)帧格式由于在异步通信时被传送的字符出现在数据流中的相对时间是任意的与随机的,因此,为了确保异步通信的正确性,必须找到一种方法,使收/发双方在随机传送的字符与字符间实现同步。这种方法就是在字符数据格式中设置起始位和停止位,发送端在一个字符正式发送之前先发一个起始位,而在该字符结束时再发一个(或几个)停止位。接收端在检测到起始位时,便知道字符已到达,应开始接收字符;当检测到停止位时,则知道字符已结束。由于这种通信的数据格式是靠起始位和停止位来进行字符同步的,故称之为起止式数据格式。,起止式异步通信的帧数据格式,每帧信息(即每个字符)由4部分组成:1位起始位(低电平,逻辑值0);5
20、8位数据位(传送的有效信息);1位校验位(也可以没有校验位);最后是l位,或l.5位,或2位停止位,停止位后面是不定长度的空闲位,停止位和空闲位都规定为高电平(逻辑值1),这样就保证起始位开始处一定有1个下跳沿。起始位和停止位是作为联络信号而附加的,它们在异步通信中起着至关重要的作用,为通信双方提供了何时开始/收发,何时结束的标志。,传送开始之前,发/收双方把所采用的起止式帧格式(包括字符的数据位长度,停止位位数,有无校验位以及是奇校验还是偶校验等)和数据传输速率作统一约定。传送开始后,接收设备不断地检测传输线,看是否有起始位到来。当收到一系列的“1”(停止位或空闲位)之后,检测到一个下跳沿,
21、说明起始位出现,起始位经确认后;就开始接收所规定的数据位和奇偶校验位以及停止位。经过处理将停止位去掉,把数据位拼装成一个并行字节:并且经校验后,无奇偶错才算正确地接收一个字符。一个字符接收完毕,接收设备又继续测试传输线,监视“下跳沿”的到来和下一字符的开始,直到全部数据传送完毕。,(2)特点,接收端自动实现字符同步和位同步。接收端以约定的传输速率的N倍(N通常为4、8、16、32、64等)的本地时钟产生接收端的采样时钟,采样时钟的上升沿作为采样信号,由前述知道,该上升沿差不多在信息位的中间位置。N称为波特率因子。对接收时钟的精度要求不是很高。由上述工作过程可以看到,异步通信是1次传送1帧数据(
22、1个字符)。每传送1帧数据,发送端都用起始位来通知接收端,以此来重新核对收/发双方的同步。若接收设备和发送设备两者的时钟频率略有偏差,这也不会因偏差的累积而导致错位,加之字符之间的空闲位也为这种偏差提供一种缓冲,所以异步串行通信的可靠性高。,传输数据的速率慢、效率低。由于起止式数据格式允许上一帧数据与下一帧数据之间有空闲位,所以数据传输速率慢。由于要在每个字符的前后加上起始位和停止位这样一些附加位,使得传送有用(效)的数据位减少,所以传输效率低(最大80)。接收电路相对简单,所以异步串行通信易于实现。基于以上这些特点,异步串行通信仍然是最广泛应用的通信方式之一。,2.面向字符的同步通信协议的数
23、据格式,这是一种内同步方式的同步通信协议。(1)帧格式这种同步通信协议的典型代表是IBM公司的二进制同步通信协议(BSCP)。它的特点是一次传送由若干个字符组成的数据块,而不是只传送一个字符,并规定了10个特殊字符作为这个数据块的开头与结束标志以及整个传输过程的控制信息,这10个特殊字符叫做通信控制字。由于被传送的数据块是由字符组成,因此被称作面向字符的数据格式。二进制同步通信协议的数据帧格式为:,其中,控制字符的定义如下:SYN是同步字符(Synchronous Character),每一帧开始处都有一个或者两个SYN,加一个SYN的称单同步,加两个SYN的称双同步。设置同步字符是起联络作用
24、,传送数据时,接收端不断检测,一旦出现同步字符,就知道是一帧开始了。接着的SOH是序始字符(Start of Header),它表示标题的开始。标题中包括源地址、目标地址和路由指示等信息。STX是文始字符(start Of Text),它标志着传送的正文(数据块)开始。数据块就是被传送的正文内容,由若干个字符组成。,数据块后面是组终字符ETB(End of Transmission Block)或文终字符EXT(End of Text)。其中ETB用在正文很长,需要分成若干个分数据块,分别在不同帧中发送的场合,这时在每个分数据块后面用组终字符ETB,而在最后一个分数据块后面用文终字符ETX。一
25、帧的最后是校验码,它对从SOH开始直到ETX(或ETB)字段进行校验,校验方式可以是纵横奇偶校验或CRC校验。面向字符同步通信协议的数据帧格式中所采用的10个通信控制字符如表8.2所示。,(2)数据透明,因为在数据块中完全有可能出现与通信控制字符代码相同的数据字符,为防发生误解,在接收端必须区别开数据字符代码和特定的通信控制字符代码。为了解决这个问题,该同步通信协议就应具有将通信控制字符作为普通数据处理的能力,这种能力叫做数据透明。为此,在协议中设置了转义字符DLE(Data Link Escape)。当把一个通信控制字符看成数据时,在它前面要加一个DLE,这样接收器收到一个DLE就可预知下一
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第八 串行 通信 接口
链接地址:https://www.31ppt.com/p-5307574.html