数字采集系统串行通信与总线技术.ppt

上传人:牧羊曲112 文档编号:5058735 上传时间:2023-06-01 格式:PPT 页数:123 大小:1MB
返回 下载 相关 举报
数字采集系统串行通信与总线技术.ppt_第1页
第1页 / 共123页
数字采集系统串行通信与总线技术.ppt_第2页
第2页 / 共123页
数字采集系统串行通信与总线技术.ppt_第3页
第3页 / 共123页
数字采集系统串行通信与总线技术.ppt_第4页
第4页 / 共123页
数字采集系统串行通信与总线技术.ppt_第5页
第5页 / 共123页
点击查看更多>>
资源描述

《数字采集系统串行通信与总线技术.ppt》由会员分享,可在线阅读,更多相关《数字采集系统串行通信与总线技术.ppt(123页珍藏版)》请在三一办公上搜索。

1、在设计数据采集系统时:若控制器是PC机,可以做成接口板卡的形式,总线可以是PCI,ISA/EISA等。如:PC-6319光电隔离模入接口卡,PC-6311D模入模出接口卡等。若采用集散式结构,主机与从机之间的通信可以采用串行通信或者USB通信。若构成分布式系统,可采用现场总线技术。如:CAN总线,LonWorks总线等。,AD采集板A/D:12bit 32(单)/16(双)CH输入范围:010V、5V、10V程序启动、外触发启动硬件增益:1、2、10、100、1000倍中断:IRQ2、3、7三总线光电隔离,隔离电压500V自带隔离电源DC/DC,ISA采集卡A/D:12bit 100K 32(

2、单)/16(双)CH输入范围:010V、5V启动方式:程序启动、外触发启动程控增益:1/2/4/8/16/32/64/128倍D/A:12bit 6CH输出:05V 15V 010V 5V10V 010mA 420mA,9.1 串行通信接口9.2 PC总线技术(了解)9.3 通用串行总线USB(了解)9.4 现场总线技术(了解),中大规模数据采集系统通常采用集散式(主从式)系统结构。主机PC机与数据采集站单片机的通信一般采用串行通信的方式,便于远距离传输。串行通信与并行通信一样,都是基本的数据通信方式。串行通信是将数据的各个位一位一位地,通过单条1位宽的传输线按顺序分时传送,即通信双方一次传输

3、一个二进制位。由于计算机内部数据传输方式是并行的,所以数据采集系统中发送方在发送前要将并行数据转成串行数据,接收方接收后要完成串行数据到并行数据的转换。,9.1 串行通信接口,与并行通信相比,串行通信的优势,传输距离长,可达到数千公里,长距离内串行数据传送速率会比并行数据传送速率快,串行通信的通信时钟频率较并行通信容易提高。,抗干扰能力强,串行通信信号间的互相干扰完全可以忽略。,费用低。,9.1 串行通信接口,9.1 串行通信接口,一、串行通信的基本问题,基本特征:以字符为传送单位;用起始位和停止位标识每个字符的开始和结束;字符间隔不固定;,异步通讯常用格式:一个字符帧,(一)串行通信基本方式

4、,1.异步通讯:通信系统的发送与接收设备使用各自的时钟控制数据的发送与接收。,异步通讯的双方需要两项约定:1.字符格式一帧字符位数的规定:数据位,校验位,起始位和停止位。,2.波特率(位/秒)对传送速率的规定例:要求每秒传送120个字符,每帧为10位。解:B=12010=1200波特每位0.83ms数据位传输率=1208=960位/秒,9.1 串行通信接口,1.异步通讯:,异步通讯的特点:不需传输同步脉冲,字符帧的长度不受限制,设备简单;使用起始位和结束位降低了有效数据传输速率,适用低速传输。,一、串行通信的基本问题,(一)串行通信基本方式,9.1 串行通信接口,2.同步通讯:通信双方使用同一

5、个时钟来控制数据块的发送与接收。,单同步:双同步:,以一串字符为一个传送单位,字符间不加标识位,在一串字符开始用同步字符标识,硬件要求高,通讯双方须严格同步。,同步通讯特点:传输效率高;对时钟要求严格,技术难度大;适用于高速数据传输。,一、串行通信的基本问题,(一)串行通信基本方式,9.1 串行通信接口,单工通讯:数据单向传送。半双工通讯:数据可分时双向传送。全双工通讯:可同时进行发送和接收。,一、串行通信的基本问题,(二)串行数据传送方向,1.发送器:并串数据格式转换,添加标识位和校验位,一帧发送结束,设置结束标志,申请中断。2.接收器:串并数据格式转换,检查错误,去掉标识位,保存有效数据,

6、设置接收结束标志,申请中断。3.控制器:接收编程命令和控制参数,设置工作方式:同步/异步、字符格式、波特率、校验方式、数据位与同步时钟比例等。,9.1 串行通信接口,一、串行通信的基本问题,(三)串行接口功能,原因:如果数字信号直接在公用电话网的传输线上传送,高次谐波的衰减会很厉害,从而使信号到了接收端后将发生严重畸变和失真。,解决:发送方使用调制器(Modulator),把要传送的数字信号调制转换为适合在线路上传输的音频模拟信号;接收方则使用解调器(Demodulator)从线路上测出这个模拟信号,并还原成数字信号。,9.1 串行通信接口,一、串行通信的基本问题,(四)信号调制解调,调制方法

7、:按照调制技术的不同分为调频(FM)、调幅(AM)和调相(PM)三种,根据传输数字信号的变化规律去调整载波的频率、幅度或相位。,9.1 串行通信接口,一、串行通信的基本问题,(四)信号调制解调,时分多路复用TDM(Time Division Multiplexing),就是将一条物理传输线路按时间分成若干时间片轮换地为多个信号所占用,每个时间片由复用的一个信号占用。,频分多路复用FDM(Frequency Division Multiplexing)就是利用频率调制原理,将要同时传送的多个信号进行频谱搬移,使它们互不重叠地占据信道频带的不同频率段,然后经发送器从同一信道上同时或不同时地发送出去

8、。,计算机串行数据通信及其接口中使用时分多路复用系统。,9.1 串行通信接口,一、串行通信的基本问题,(五)信道复用,数据终端设备DTE数据源和目的地,数据通信设备DCE使数据符合线路要求,9.1 串行通信接口,二、串行接口RS-232C标准,(一)串行通信系统,二、串行接口RS-232C标准,(二)常用的RS-232C信号线,9.1 串行通信接口,1.使用MODEM,二、串行接口RS-232C标准,(三)常用的RS-232C连接,9.1 串行通信接口,1.使用MODEM:工作过程:,二、串行接口RS-232C标准,(三)常用的RS-232C连接,9.1 串行通信接口,第一阶段:建立电路阶段(

9、1)本地终端要发送数据时,置DTR1,通知本地Modem终端处于就绪状态。本地Modem若响应该信号,则置DSR=1,回答终端已连入线路,准备好通信。(2)终端置RTS=1,通知本地Modem请求发送数据,本地Modem检测到该信号后,向远程Modem发送一载波信号,通知他准备接收数据,同时置CTS=1,通知本地终端准备好数据并允许发送。远程Modem检测到载波后,置DCD=1,RI=1,通知远程计算机准备接收数据。,1.使用MODEM:工作过程:,二、串行接口RS-232C标准,(三)常用的RS-232C连接,9.1 串行通信接口,第二阶段:交换数据阶段(3)本地终端检测到CTS=1后,由T

10、XD线发送数据,同时,由RXD线接收远程计算机发送来得数据。,1.使用MODEM:工作过程:,二、串行接口RS-232C标准,(三)常用的RS-232C连接,9.1 串行通信接口,第三阶段:释放电路阶段(4)本地终端发送完数据后,置RTS=0,通知本地Modem发送结束。本地Modem检测到该信号变为0后,停止向远程Modem发送载波信号,并置CTS=0作为响应。远程Modem检测不到载波信号后,还原DCD=0,RI=0,恢复原来状态。(5)终端置DTR=0,通知本地Modem拆线。本地Modem检测到该信号后,置DSR=0,同意拆除。至此一次通信结束。,二、串行接口RS-232C标准,(三)

11、常用的RS-232C连接,9.1 串行通信接口,2.不使用MODEM,通信距离低于100m时,可不通过Modem直接通信,此时可以使用也可不使用控制信号。,3.最简单连接(3线连接),二、串行接口RS-232C标准,(三)常用的RS-232C连接,9.1 串行通信接口,1.应保证电平在(315)V之间,对于数据线:逻辑“1”(MARK)=-3V-15V,逻辑“0”(SPACE)=+3V+15V对于控制信号:接通状态(ON)即信号有效的电平=+3V15V断开状态(OUT)即信号无效的电平=-3-15V。,二、串行接口RS-232C标准,(四)电气特性,9.1 串行通信接口,2.必须进行电平转换,

12、RS-232C接口采用的是负逻辑,其逻辑电平与TTL电平不一样,不能兼容。因此,为了实现与TTL电路的连接,必须进行电平转换。目前可以使用新型电平转换芯片MAX232和MAX232A(高速)双组RS-232C发送/接收器,实现TTL电平与RS-232C电平双向转换。,二、串行接口RS-232C标准,(四)电气特性,9.1 串行通信接口,3.必须抗共模噪声干扰,RS-232C由于在发送器与接收器之间有公共信号地,不可能使用双端信号,因此共模噪声很容易引入信号系统中,且噪声幅度可高达好几伏,这是迫使RS-232C使用较高传输电压的主要原因。另一个原因是为了补偿传输线上的信号衰减和沿线附加电平的影响

13、。,二、串行接口RS-232C标准,(四)电气特性,9.1 串行通信接口,4.处理好最大传输速率和最大传输线长度的关系,一般应用情况下,RS-232C的最高传输速率为20Kb/s,最大传输线长度为30m。,二、串行接口RS-232C标准,(四)电气特性,9.1 串行通信接口,1.连接器,二、串行接口RS-232C标准,(五)机械特性,9.1 串行通信接口,1.连接器,二、串行接口RS-232C标准,(五)机械特性,9.1 串行通信接口,在通信速率低于20Kb/s时,RS-232C所能直接连接的最大物理距离为15m(50ft)。,2.电缆长度,使用特制的低电容电缆也能有效地提高电缆长度,可以达到

14、150m(500ft)甚至更多。,RS-232C规定,若不使用MODEM,则码元的畸变要小于4%,驱动器的负载电容应该小于2500pF,若电缆单位(1ft)长度的电容值为NpF,则电缆的长度应该是:,二、串行接口RS-232C标准,(五)机械特性,9.1 串行通信接口,RS-232C采用单端驱动、单端接收的单端双极性电路标准。仅用一条线路传输一种信号,根据该信号线上电平相对于公共的信号地电平的大小来决定逻辑的“1”和“0”。对于多条信号线来讲,它们的地线是公共的,这种共地传输方式,抗干扰能力很差。当信号穿过电磁干扰环境时,可能因附加的干扰信号电平使发送的“0”变为“1”或“1”变为“0”。故其

15、信号波特率不能过高,仅限在20Kb/s以下,且距离不大于30m。尽管采用电平转换器来提高信号传输电平,但在较长距离时,由于电压损失,仍不可避免错误。,二、串行接口RS-232C标准,(六)RS-232 的局限,9.1 串行通信接口,RS-485接口标准是一种平衡传输方式的串行接口标准,这个标准的电气特性对逻辑电平的定义是根据两条传输线之间的电位差值来决定的,当AA线的电平比BB线的电平高200m时表示逻辑“1”,当AA线的电平比BB线的电平低200mV时表示逻辑“0”。,二、串行接口RS-232C标准,(七)RS-485总线,9.1 串行通信接口,由于RS-485标准采用差动发送/接收,因此共

16、模抑制比高、抗干扰能力强;RS-485的共线电路结构是在一对平衡传输线的两端都配置终端电阻,其发送器、接收器和组合收发器可挂在平衡传输线上的任何位置,实现在数据传输中多个驱动器和接收器共用同一传输线的多点应用。RS-485标准允许在电路中可有32个发送器和32个接收器。允许一个发送器驱动多个负载设备,负载设备可以是驱动发送器、接收器或收发器组合单元。传输速率高,最大传输速率可达10Mb/s(传送15m),传输信号的摆幅小(200mV);传送距离远,采用双绞线,在不用MODEM的情况下,当100Kb/s的传输速率时,可传送的距离为1.2km。,二、串行接口RS-232C标准,(七)RS-485总

17、线,9.1 串行通信接口,三、MCS-51串行接口,MCS-51有1个全双工串行接口,可同时进行发送和接收。串行接口输入引脚是RXD(P3.0),输出引脚TXD(P3.1)。,9.1 串行通信接口,三、MCS-51串行接口,数据格式:按不同方式,一帧位数 8/10/11,发送/接收时,数据皆低位在前。,一帧字符发送/接收结束,置位标志位(TI/RI)并申请SIO中断。中断控制:中断允许位ES中断入口:0023H,9.1 串行通信接口,(一)串行接口控制,2.串行口控制/状态寄存器SCON(98H),SM0,SM1:选择串行口4种工作方式。SM2:多机控制位,用于多机通讯。REN:允许接收控制位

18、,REN=1,允许接收;REN=0,禁止接收。,9.1 串行通信接口,1.数据缓冲器SBUF发送SBUF和接收SBUF共用一个地址99H。1)发送SBUF存放待发送的8位数据,写入SBUF将同时启动发送。发送指令:MOVSBUF,A2)接收SBUF存放已接收成功的8位数据,供CPU读取。读取串行口接收数据指令:MOV A,SBUF,2.串行口控制/状态寄存器SCON(98H),TB8:发送的第9位数据位,可用作校验位和地址/数据标识位RB8:接收的第9位数据位或停止位TI:发送中断标志,发送一帧结束,TI=1,必须软件清零RI:接收中断标志,接收一帧结束,RI=1,必须软件清零,3.电源控制寄

19、存器PCONSMOD(PCON.7):波特率加倍控制位。SMOD=1,波特率加倍,SMOD=0,则不加倍。,9.1 串行通信接口,(一)串行接口控制,(二)串行接口的工作方式 SM0,SM1选择四种工作方式。,(1)方式0:同步移位寄存器方式。用于扩展并行I/O接口。1.一帧8位,无起始位和停止位。2.RXD:数据输入/输出端。TXD:同步脉冲输出端,每个脉冲对应一个数据位。3.波特率B=fosc/12如:fosc=12MHz,B=1MHz,每位数据占1s。4.发送过程:写入SBUF,启动发送,一帧发送结束,TI=1。接收过程:REN=1且RI=0,启动接收,一帧接收完毕,RI=1。,9.1

20、串行通信接口,(1)方式0:同步移位寄存器方式。用于扩展并行I/O接口。,9.1 串行通信接口,(二)串行接口的工作方式 SM0,SM1选择四种工作方式。,(2)方式1 8位数据异步通讯方式。,1.一帧10位:8位数据位,1个起始位(0),1个停止位(1)。2.RXD:接收数据端。TXD:发送数据端。3.波特率:用T1作为波特率发生器,B=(2SMOD T1溢出率)/32。4.发送:写入SBUF,同时启动发送,一帧发送结束,TI=1。接收:REN=1,允许接收。接收完一帧,若RI=0且停止位为1(或SM2=0),将接收数据装入SBUF,停止位装入RB8,并使RI=1;否则丢弃接收数据,不置位R

21、I。,9.1 串行通信接口,(二)串行接口的工作方式 SM0,SM1选择四种工作方式。,当REN=1,CPU开始采样RXD引脚负跳变信号,若出现负跳变,才进入数据接收状态,先检测起始位,若第一位为0,继续接收其余位;否则,停止接收,重新采样负跳变。数据采样速率为波特率16倍频,在数据位中间,用第7、8、9个脉冲采样3次数据位,并3中取2保留采样值。,9.1 串行通信接口,(2)方式1:8位数据异步通讯方式。,(二)串行接口的工作方式,1.一帧为11位:9位数据位,1个起始位(0),1个停止位(1)。第9位数据位在TB8/RB8中,常用作校验位和多机通讯标识位。2.RXD:接收数据端,TXD:发

22、送数据端。3.波特率:方式2:B=(2SMOD fosc)/64。方式3:B=(2SMOD T1溢出率)/32。4.发送:先装入TB8,写入SBUF并启动发送,发送结束,TI=1。接收:REN=1,允许接收。接收完一帧,若RI=0且第9位为1(或SM2=0),将接收数据装入接收SBUF,第9位装入RB8,使RI=1;否则丢弃接收数据,不置位RI。,9.1 串行通信接口,(3)方式2和方式3:9位数据异步通讯方式。,(二)串行接口的工作方式,9.1 串行通信接口,(3)方式2和方式3:9位数据异步通讯方式。,(二)串行接口的工作方式,9.1 串行通信接口,(4)波特率的计算,方式0为固定波特率:

23、B=fosc/12方式2可选两种波特率:B=(2SMODfosc)/64 方式1、3为可变波特率,用T1作波特率发生器。B=(2SMODT1溢出率)/32溢出时间:t=(28-X)T=(28-X)12/fosc 其中,X是T1为方式2的时间常数:t/T=28-XT1溢出率=1/t=fosc/12(2n-X)波特率B=(2SMODfosc)/(12(28-X)32)串行口方式1、3,根据波特率选择T1工作方式,计算时间常数。T1选方式2:TH1=X=28-(fosc2SMOD)/(1232B),(二)串行接口的工作方式,四、串行口的应用,串行口初始化编程格式:SIO:MOV SCON,#控制状态

24、字;写方式字且TI=RI=0(MOV PCON,#80H);波特率加倍(MOV TMOD,#20H);T1作波特率发生器(MOV TH1,#X);选定波特率(MOV TL1,#X)(SETB TR1)(SETB EA);开串行口中断(SETB ES),9.1 串行通信接口,发送程序:先发送一个字符,等待TI=1后再发送下一个字符。,1.查询方式:TRAM:MOV A,R0;取数据 MOVSBUF,A;发送一个字符WAIT:JBCTI,NEXT;等待发送结束SJMPWAITNEXT:CLR TIINCR0;准备下一次发送SJMPTRAM,9.1 串行通信接口,四、串行口的应用,发送程序:先发送一

25、个字符,等待TI=1后再发送下一个字符。,2.中断方式:ORG 0023H;串行口中断入口 AJMP SINTMAIN:;初始化编程TRAM:MOV A,R0;取数据MOV SBUF,A;发送第一个字符H:SJMP H;其它工作SINT:CLR TI;中断服务程序INC R0MOV A,R0;取数据MOV SBUF,A;发送下一个字符RETI,9.1 串行通信接口,四、串行口的应用,接收程序:REN=1、RI=0等待接收,当RI=1,从SBUF读取数据。,1.查询方式:WAIT:JBCRI,NEXT;查询等待SJMPWAITNEXT:CLR RIMOVA,SBUF;读取接收数据MOVR0,A;

26、保存数据INCR0;准备下一次接收SJMPWAIT,9.1 串行通信接口,四、串行口的应用,接收程序:REN=1、RI=0等待接收,当RI=1,从SBUF读取数据。,2.中断方式:ORG0023HAJMPRINTMAIN:;初始化编程H:SJMPH;其它任务RINT:CLRRI;清中断标志MOVA,SBUF;读取接收数据MOVR0,A;保存数据INCR0RETI,9.1 串行通信接口,四、串行口的应用,异步通讯程序举例 1.发送程序:将片内RAM 50H起始单元的16个数由串行口发送。要求发送波特率为系统时钟的32分频,并进行奇偶校验。,MAINT:MOV SCON,#80H;串行口初始化MO

27、V PCON,#80H;波特率SETBEASETBES;开串行口中断MOV R0,#50H;设数据指针MOV R7,#10H;数据长度LOOP:MOV A,R0;取一个字符MOV C,P;加奇偶校验MOV TB8,CMOV SBUF,A;启动一次发送HERE:SJMPHERE;CPU执行其它任务,9.1 串行通信接口,五、串行口的应用实例,ORG 0023H;串行口中断入口AJMP TRANI,TRANI:PUSH A;保护现场PUSH PSWCLR TI;清发送结束标志DJNZ R7,NEXT;是否发送完?CLR ES;发送完,关闭串行口中断SJMP TENDNEXT:INC R0;未发送完

28、,修改指针MOV A,R0;取下一个字符MOV C,P;加奇偶校验MOV TB8,CMOV SBUF,A;发送一个字符POP PSW;恢复现场POP ATEND:RETI;中断返回,2.接收程序:串行输入16个字符,存入片内RAM的50H起始单元,串行口波特率为2400(设晶振为11.0592MHz),。,RECS:MOV SCON,#50H;串行口方式1允许接收MOV TMOD,#20H;T1方式2定时MOV TL1,#0F4H;写入T1时间常数MOV TH1,#0F4HSETB TR1;启动T1MOV R0,#50H;设数据指针MOV R7,#10H;接收数据长度 WAIT:JBC RI,

29、NEXT;等待串行口接收SJMP WAITNEXT:MOV A,SBUF;读取接收字符MOV R0,A;保存一个字符INC R0;修改指针DJNZ R7,WAIT;全部字符接收完?RET,9.1 串行通信接口,五、串行口的应用实例,3.接收程序:串行输入16个字符,进行奇偶校验。,RECS:MOV SCON,#0D0H;串行口方式3允许接收MOV TMOD,#20H;T1方式2定时MOV TL1,#0F4H;写入T1时间常数MOV TH1,#0F4HSETB TR1;启动T1MOV R0,#50H;设数据指针MOV R7,#10H;接收数据长度 WAIT:JBC RI,NEXT;等待串行口接收

30、SJMP WAITNEXT:MOV A,SBUF;取一个接收字符JNB P,COMP;奇偶校验JNB RB8,ERR;PRB8,数据出错SJMP RIGHT;P=RB8,数据正确COMP:JB RB8,ERR,9.1 串行通信接口,五、串行口的应用实例,3.接收程序:串行输入16个字符,进行奇偶校验。,RIGHT:MOV R0,A;保存一个字符INC R0;修改指针DJNZ R7,WAIT;全部字符接收完?CLR F0;F0=0,接收数据全部正确RETERR:SETB F0;F0=1,接收数据出错RET,9.1 串行通信接口,五、串行口的应用实例,一、总线与接口概述,(一)总线和接口及其标准的

31、概念,总线:是在模块和模块之间或设备与设备之间的一组进行互连和传输信息的信号线,信息包括指令、数据和地址。,9.2 总线技术,总线标准 指芯片之间、扩展卡之间以及系统之间,通过总线进行连接和传输信息时,应该遵守的一些协议与规范。,接口标准 外设接口的规范,涉及接口信号线定义、信号传输速率、传输方向和拓扑结构,以及电气特性和机械特性等多个方面。,1)按总线功能或信号类型划分为:,数据总线:双向三态逻辑,线宽表示了总线数据传输的能力。地址总线:单向三态逻辑,线宽决定了系统的寻址能力。控制总线:就某根来说是单向或双向。控制总线最能体现总线特点,决定总线功能的强弱和适应性。,一、总线与接口概述,(二)

32、总线的分类,9.2 总线技术,2)按总线的层次结构分为:,CPU总线:微机系统中速度最快的总线,主要在CPU内部,连接CPU内部部件,在CPU周围的小范围内也分布该总线,提供系统原始的控制和命令。局部总线:在系统总线和CPU总线之间的一级总线,提供CPU和主板器件之间以及CPU到高速外设之间的快速信息通道。系统总线:也称为I/O总线,是传统的通过总线扩展卡连接外部设备的总线。由于速度慢,其功能已经被局部总线替代。通信总线:也称为外部总线,是微机与微机,微机与外设之间进行通信的总线。,一、总线与接口概述,(二)总线的分类,8.2 总线技术,1总线频率:MHz表示的工作频率,是总线速率的一个重要参

33、数。2总线宽度:指数据总线的位数。,3总线的数据传输率 总线的数据传输率=(总线宽度/8位)总线频率,例:PCI总线的总线频率为33.3MHz,总线宽度为64位的情况下,总线数据传输率为266MB/s。,一、总线与接口概述,(三)总线的主要性能参数,8.2 总线技术,1物理特性:2功能特性:3电器特性:4时间特性:,总线物理连接方式(电缆式、蚀刻式),总线根数、插头和插座形状,引脚排列等。,描述一组总线中每一根线的功能。,定义每一根线在什么时候有效,这和总线操作的时序有关。,定义每根线上信号的传递方向以及有效电平范围。一般定义送入CPU的信号为输入信号,从CPU中送出的信号是输出信号。低电平有

34、效的信号用信号名上一横线或信号名后带#来表示。如CS、REQ#,一、总线与接口概述,(四)总线标准的特性,8.2 总线技术,总线操作的4个阶段,1总线请求和仲裁阶段:主模块向总线仲裁机构提出总线使用申请,总线仲裁机构决定使用总线的主模块。,2寻址阶段:拥有总线使用权的主模块发出本次要访问的从模块的地址及有关命令,该从模块被选中并启动。,3数据传送阶段:主模块和从模块间进行双(单)向数据传送。,4结束阶段:主、从模块均撤出总线。,一、总线与接口概述,(五)总线操作和总线传送控制,8.2 总线技术,1同步方式,优点:1)电路简单 2)适合高速设备的数据传输缺点:高速设备和低速设备间只能用低速设备的

35、速度来传输数据,主,clk,从,2半同步方式,wait/ready信号是单向的,不是互锁的。,一、总线与接口概述,(五)总线操作和总线传送控制,8.2 总线技术,总线传送控制,主,从,3异步方式,比同步方式慢总线频带窄总线传输周期长,一、总线与接口概述,(五)总线操作和总线传送控制,8.2 总线技术,总线传送控制,工业标准体系结构,在PC总线基础上发展而来,最高工作频率为8MHz,24根地址线,16位数据线,拥有大量接口卡,历经286、386、486和Pentium几代微机。,二、ISA总线,8.2 总线技术,ISA总线的信号,(一)PCI总线的特点,独立于处理器2)传输效率高3)多总线共存4

36、)支持突发传输 5)支持总线主控方式,6)采用同步操作 7)支持两种电压下的扩展卡 8)具有即插即用功能 9)合理的管脚安排 10)预留扩展空间,三、PCI 总线与接口概述,8.2 总线技术,系统接口信号 CLK IN:PCI系统总线时钟 最高33MHz/66MHz,最低0Hz。PCI大部分信号在CLK的上升沿有效。,(二)PCI信号定义,三、PCI 总线与接口概述,8.2 总线技术,在FRAME#有效的第1个时钟,AD31:00上传送的是32位地址,称为地址期。,2.地址与数据接口信号 AD31:00 T/S:它们是地址、数据多路复用的输入/输出信号,C/BE3:0#T/S:它们是总线命令和

37、字节使能多路复用信号线,PAR T/S:针对AD31:00和C/BE3:0#进行奇偶校验的校验位,地址期内是总线命令,数据期内是字节使能信号。,(二)PCI信号定义,三、PCI 总线与接口概述,8.2 总线技术,在IRDY#和TRDY#同时有效时,AD31:00上传送的为32位数据,称为数据期。,3.接口控制信号FRAME#S/T/S:帧周期信号FRAME#信号无效表示传输进入最后一个数据期。IRDY#S/T/S:主设备准备好信号TRDY#S/T/S:从设备准备好信号 STOP#S/T/S:设备发出的要主设备终止当前数据传送的信号LOCK#S/T/S:锁定信号 IDSEL IN:初始化设备选择

38、信号,访问配置空间时作为片选DEVSEL#S/T/S:设备选择信号,由常规访问期间被选中的从设备驱动,(二)PCI信号定义,三、PCI 总线与接口概述,8.2 总线技术,4.仲裁接口信号 REQ#T/S:总线占用请求信号 GNT#T/S:总线占用允许信号,5.错误报告接口信号 PERR#S/T/S:数据奇偶校验错误报告信号 SERR#O/D:系统错误报告信号,6.中断接口信号 PCI有4条中断线,分别是INTA#、INTB#、INTC#、INTD#,电平触发,多功能设备可以任选一或多个中断线,单功能设备只能用INTA#。,(二)PCI信号定义,三、PCI 总线与接口概述,8.2 总线技术,7.

39、64位总线扩展信号 AD63:32 T/S:扩展的32位地址和数据多路复用线 C/BE7:4#T/S:总线命令和字节使能多路复用扩展信号线 REQ64#S/T/S,64位传输请求信号 ACK64#S/T/S:64位传输允许信号 PAR64 T/S:奇偶双字节校验,(二)PCI信号定义,三、PCI 总线与接口概述,8.2 总线技术,1.PCI插槽,(三)PCI插槽和PCI扩展卡,三、PCI 总线与接口概述,8.2 总线技术,2.PCI插卡,(三)PCI插槽和PCI扩展卡,三、PCI 总线与接口概述,8.2 总线技术,表 PCI总线命令表,(四)PCI总线命令,三、PCI 总线与接口概述,8.2

40、总线技术,1PCI总线的传输控制遵循的管理规则:,(1)FRAME#和IRDY#定义了总线的忙/闲状态。11空闲、00数据、10最后一个数据、01等待状态。(2)一旦FRAME#信号被置为无效,在同一传输期间不能重新设置。,(3)除非设置IRDY#信号,一般情况下不能设置FRAME#信号无效。(4)一旦主设备设置了IRDY#信号,直到当前数据期结束为止,主设备一般不能改变IRDY#信号和FRAME#信号的状态。,(五)PCI总线协议,三、PCI 总线与接口概述,8.2 总线技术,2PCI总线的寻址(采用分散地址译码技术),(1)I/O地址空间,在I/O地址空间,32位AD线全部被用来提供一个完

41、整的地址编码(字节地址)。AD1:0和C/BE3:0指明传输的最低有效字节。,(五)PCI总线协议,三、PCI 总线与接口概述,8.2 总线技术,(2)内存地址空间,(3)配置地址空间,31,0,1,双字边界对齐的起始地址,2,00地址递增01Cache行切换1X保留,7,0,1,双字边界对齐的起始地址,2,00选择该设备01访问该桥路后设备1X保留,2PCI总线的寻址(采用分散地址译码技术),(五)PCI总线协议,三、PCI 总线与接口概述,8.2 总线技术,3字节对齐,4PCI总线的驱动与过渡,PCI总线上不能进行字节的交换。但是,具有64位通道的主设备可以进行DWORD(双字)的交换。主

42、设备可以在每个新数据期开始的时钟前沿改变字节使能信号,且在整个数据期中保持不变。读缓冲中的数据可以不考虑字节使能信号,而传送所有的字节。,从一个设备驱动总线到另一个设备驱动PCI总线之间设置一个过渡期,又称为交换周期,以防止总线访问冲突。在每个地址(数据)期中,所有的AD线都必须被驱动到稳定的状态(数据),包括那些字节使能信号表明无效的字节所对应的AD线。,(五)PCI总线协议,三、PCI 总线与接口概述,8.2 总线技术,5设备选择,注意DEVSEL#与FRAME#、TRDY#的关系,无DEVSEL#信号时的处理。DEVSEL#由从设备共享使用,并由被选中的从设备驱动。,1总线上的读操作,(

43、六)PCI总线数据传输过程,三、PCI 总线与接口概述,8.2 总线技术,2总线上的写操作,(六)PCI总线数据传输过程,三、PCI 总线与接口概述,8.2 总线技术,3传输的终止过程,(1)由主设备提出的终止,(2)由从设备提出的终止,传输结束超时(GNT#信号在内部延时计数器满后仍无效),死锁后重试断开(8个时钟周期内从设备不能对主设备做出响应)。,撤消FRAME#,建立IRDY#,直到TRDY#有效后传输完最后一个数据,发出STOP#信号并保持其有效,直到FRAME#撤消为止。,(六)PCI总线数据传输过程,三、PCI 总线与接口概述,8.2 总线技术,PCI总线上的所有传输操作中,FR

44、AME#、IRDY#、TRDY#和STOP#遵循的规则:,当STOP#信号有效时,FRAME#应该在其后的23个时钟周期内尽快撤消,但撤消时应使IRDY#有效,从设备应无条件的保持STOP#的有效状态直到FRAME#撤消为止。FRAME#撤消后,STOP#也应该紧跟着撤消。在任何时钟的上升沿,如果STOP#和TRDY#同时有效,就表示是传输的最后周期,IRDY#要在下一个时钟的上升沿之前撤消,表示传输的结束。对于被目标设备终止的传输,主设备要继续完成它,就必须用下一个未传输的数据的地址来重试访问。,3传输的终止过程,(六)PCI总线数据传输过程,三、PCI 总线与接口概述,8.2 总线技术,P

45、CI总线采用集中式的同步仲裁方法,中央仲裁器,PCI主设备A,PCI主设备B,REQ#,REQ#,GNT#,GNT#,(七)总线仲裁,三、PCI 总线与接口概述,8.2 总线技术,8.2 总线技术,1、PCI设备的配置空间,定义一个PCI总线配置空间的目的在于提供一套适当的配置措施,使之实现完全的设备再定位而无需用户干预安装、配置和引导,并由与设备无关的软件进行系统地址映射。,所有PCI设备都必须实现PCI协议规定必需的配置寄存器,以便系统加电的时候利用这些寄存器的信息来进行系统配置。对PCI的配置访问实际上就是访问设备的配置寄存器。,在系统启动的时候由BIOS代码执行设备配置。一旦即插即用O

46、S(如Windows2000/XP)启动后,控制就传递给OS,OS接管设备管理。,(八)PCI总线配置,三、PCI 总线与接口概述,8.2 总线技术,2、配置空间头区域及功能,(1)设备识别 头区域有7个寄存器(字段)用于设备的识别。,(2)设备控制 表现在命令寄存器为发出和响应PCI总线命令提供了对设备粗略的控制。,(3)设备状态 状态寄存器用于记录PCI总线有关操作的状态信息。注意:该寄存器的有些位是只可清不可置,对这些位的写,被解释为对该位清零。例如,为了清位14而不影响其他位,应向该寄存器写0100 0000 0000 0000B,(七)总线仲裁,三、PCI 总线与接口概述,8.2 总

47、线技术,2、配置空间头区域及功能,(4)基址寄存器,PCI设备的配置空间可以在微处理器决定的地址空间中浮动,以便简化设备的配置过程。系统初始化代码在引导操作系统之前,必须建立一个统一的地址映射关系,以确定系统中有多少存储器和I/O控制器,它们需要占用多少地址空间。当确定这些信息之后,系统初始化代码便可以把I/O控制器映射到合理的地址空间并引导系统。为了使这种映射能够做到与相应的设备无关,在配置空间的头区域中安排了一组供映射时使用的基址寄存器。,(七)总线仲裁,三、PCI 总线与接口概述,8.2 总线技术,2、配置空间头区域及功能,1,0,I/O空间指针,规范规定每个I/O基地址下的端口数不得大

48、于256。,31 2 1 0,基 地 址,0,预取使能,存储空间指针,00 32位地址空间任意映射01 32位地址空间1M字节以内映射(已经不用)10 64位地址空间任意映射 11 保留,31(63)3 2 1 0,基 地 址,保留,具体实现的过程中,除了低四位满足上述要求外,高位部分实际设置位数视映射多大地址空间范围而定,根据地址范围,决定高多少位需要设置,这些位被设置成可写,高位部分的其它位用硬件使其为0,并只可读。基地址设置过程:,系统初始化程序向基地址寄存器写全1,系统初始化程序读出基地址寄存器的内容,系统初始化程序判断设备需要的地址空间大小,系统初始化程序分配基地址并写回到该基地址寄

49、存器,如设备需要使用1MB的存储空间,硬件实现基地址寄存器的时候应该使位0,位4位19由硬件使其保持为0,举例1:,系统初始化向基址寄存器写全1后读出的值=FFF00000h,位0=0,表示是一个存储器地址空间映射位2:1=00b,它是32位存储器映射位3=0,表示它不是预取存储器。位31:4 第一个为1的是位20,表示映射的存储空间为2201MB。这意味着存储映射的基地址应该起始于1MB、2MB、3MB等的边界上。,系统经过权衡后再向该基址寄存器写入实际映射的空间基址,该基址应该是1MB边界的,如:FFF00000H,FFE00000H,FE000000H等。问:FFF10000H地址能不能

50、做该设备存储基址?,8.2 总线技术,举例2:,基址寄存器的值=FFFFFF01h,位0=1,表示是一个I/O地址空间映射位31:2第一个为1的是位8,表示映射的I/O空间为28256。这意味着I/O映射的基地址应该是256的整数倍。,最大/最小映射地址空间是多少?,最大/最小存储映射地址空间,最小存储映射地址空间=16字节(24)最大存储映射地址空间=2GB(231),最大/最小I/O映射地址空间,最小I/O映射地址空间=4字节(22)最大存储映射地址空间=256字节(协议规定),扩展ROM访问允许,31 11 10 1 0,基 地 址,保 留,扩展ROM基地址寄存器,扩展ROM基地址=FF

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号