《计算机总线技术.ppt》由会员分享,可在线阅读,更多相关《计算机总线技术.ppt(91页珍藏版)》请在三一办公上搜索。
1、2023/4/4,1,随着微处理器技术的飞速发展,总线技术也得到不断创新。先后出现了ISA、MCA、EISA、VESA、PCI、AGP、IEEE1394、SATA、USB等总线。芯片内部的总线技术也在不断发展,AMBA、Core Connect、CoreRAM等已经形成集成电路内部十分具有竞争力的总线标准。工业控制的CAN、PROFIBUS,FF等现场总线技术。总线的数据传输速度也不断提升,目前,AGP局部总线数据可达528MB/s,PCI-X可达1GB/s,系统总线传输速率也由66MB/s提高到100MB/s甚至更高的133MB/s、150MB/s、200MB/s。,2023/4/4,2,P
2、CI-E槽:PCI-Express,Intel提出,可全面取代现行的PCI和AGP,最终实现总线标准的统一。传输率目前最高可达到10GB/s以上,AGP槽:Accelerate Graphical Port,加速图形接口,实质为PCI 2.1,DIMM槽:Dual Inline Memory Module,双列直插内存模块,ISA 槽,南桥主要是负责IO 北桥用于CPU和内存、显卡、PCI交换数据,2023/4/4,3,计算机总线技术,总线的基本概念内部总线外部总线,2023/4/4,4,1 总线的基本概念,总线就是一组信号线的集合,它定义了各引线的信号、电气和机械特性,使计算机系统内部的各部
3、件之间以及外部的各系统之间建立信号联系,进行数据传递和通信。,规定了各引线的信号、时序、电气和机械特性为计算机系统内部各部件、各模块之间或计算机各系统之间提供了标准的公共信息通路采用总线标准设计、生产的计算机模板和设备具有很强的兼容性,总线的定义,总线的特点,2023/4/4,5,按照总线内部信息传输的性质,总线可分为,1.1 总线的分类,数据总线:DB 用于传送数据信息,地址总线:AB 是专门用来传送地址的,控制总线:CB 控制总线包括控制、时序和中断信号线,电源总线:PB 用于向系统提供电源,DB,AB,CB,PB,2023/4/4,6,按照总线在系统结构中的层次位置,总线可分为,总线的分
4、类(续),片内总线(On-Chip Bus)在集成电路的内部,用来连接各功能单元的信息通路,内部总线(Internal Bus)用于计算机内部模块(板)之间通信,外部总线(External Bus):又称通讯总线 用于计算机之间或计算机与设备之间通信,2023/4/4,7,根据总线的数据传输方式,总线可分为,并行总线:每个信号都有自己的信号线,串行总线:所有信号复用一对信号线,总线的分类(续),2023/4/4,8,计算机总线结构示意图,总线的分类(续),2023/4/4,9,在集成电路的内部,用来连接各功能单元的信息通路。,总线的分类(续),片内总线,受芯片面积及对外引脚数的限制,片内总线大
5、多采用单总线结构,这有利于芯片集成度和成品率的提高,而对于内部数据传送速度要求较高的,也可采用双总线或三总线结构。,ASIC技术的出现,用户也可以按照自己的要求,借助于适当的EDA工具,设计自己的芯片。,2023/4/4,10,内部总线是微机系统中最重要的总线,人们平常所说的微机总线就是指系统总线,如STD总线、PC总线、ISA总线、PCI总线等,总线的分类(续),内部总线:系统总线或板级总线,按功能可分为数据总线DB、地址总线AB、控制总线 CB、和电源总线PB,2023/4/4,11,数据总线D:用于传递数据信息,总线宽度:数据信号线的根数。决定设备获得最大性能 影响计算机系统性能,地址总
6、线宽度:地址线的根数决定直接寻址能力避免IO地址与内存地址的重叠,地址总线A:用于传递地址信息,控制总线C:,包括控制、时序和中断信号线,用于传递各种控制信息,决定了总线的性能好坏,电源总线P:提供电源,2023/4/4,12,如:IEEE-488、RS-232C、RS-485等,外部总线,总线的分类(续),2023/4/4,13,1.2 总线主要性能指标,又称总线传输率,表示在总线上每秒传输字节的多少,单位是MB/S。影响总线传输率的因素有总线宽度、总线频率等。一般的,总线带宽(MB/S)=1/8总线宽度总线频率,总线频率,即总线工作时钟频率,单位为MHz,它是影响总线传输速率的重要因素之一
7、。,总线宽度,又称总线位宽,是总线可同时传输的数据位数,用bit(位)表示,如8位、16位、32位等。显然,总线的宽度越大,它在同一时刻就能够传输更多的数据。,总线带宽,2023/4/4,14,表明总线拥有多少信号线,是数据总线、地址总线、控制总线和电源总线的总和。信号线数与总线性能不成正比,但一般与复杂度成正比。,同步方式,可分为同步方式和异步方式。在同步方式下,总线上主模块与从模块进行一次数据传输的时间是固定的,并严格按照系统时钟来统一定时主模块、从模块之间的传输操作,只要总线上的设备都是高速的,就可达到很高的总线带宽。,总线复用,采用多路复用技术,可以减少总线的数目。,信号线数,总线控制
8、方式,包括并发工作、自动配置、仲裁方式、逻辑方式、计数方式等。,2023/4/4,15,几种微型计算机总线性能参数,2023/4/4,16,1.3 总线的模板化结构,模板化结构按功能划分计算机的各个部件,并按总线标准设计成由总线连接的模板结构:CPU主板、RAM/ROM存储板、A/D、D/A、DI、DO等,模板化结构的优点增加计算机系统的通用性、灵活性、开放性、扩展性和可靠性为系统的维修提供了方便,2023/4/4,17,总线控制,1.4 总线控制与总线传输,将控制逻辑集中在一处(如在CPU中)。集中控制是单总线、双总线和三总线结构计算机主要采用的方式,常见的集中控制方式主要有链式查询方式、计
9、数器定时查询方式和独立请求总线控制方式。,将总线控制逻辑分散在与总线连接的各个部件或设备上。如CAN总线,分布式,集中式,2023/4/4,18,总线传输,总线上的数据在主模块的控制下进行传送。一般的,总线在完成一次传输周期时,可分为四个阶段:,由需要使用总线的主模块(或主设备)提出申请,经总线仲裁机构决定在下一传输周期是否能获得总线使用权;,取得了使用权的主模块,通过总线发出本次打算访问的从模块(或从设备)的存储地址或设备地址及有关命令,启动参与本次传输的从模块;,主模块和从模块进行数据交换,数据由源模块发出经数据总线流入目的模块;,主模块的有关信息均从系统总线上撤除,让出总线使用权。,申请
10、分配阶段,寻址阶段,数据传输阶段,结束阶段,2023/4/4,19,2 内部总线,STD总线 PC系列总线,本节主要内容,2023/4/4,20,STD总线起初设计为可用于64K存储空间的8位总线,后发展成可用于寻址16M空间的16位总线美国PRO-LOG公司1978年推出,后被重新定名为IEEE961,2.1 STD总线,STD总线的特点:,56根并行总线,采用小模板结构,尺寸为165114mm,模块化的总体设计布局,开放式的系统结构,兼容式总线结构,拥有丰富的I/O功能,广泛适用于工业控制,小模板结构,模板尺寸小,可减少冲击和震动的影响,2023/4/4,21,56根并行总线都有明确的定义
11、,按功能可分为五大类(1)逻辑电源线6根(引线16)(2)数据总线8根(引线714)(3)地址总线16根(引线1530)(4)控制总线22根(引线3152)(5)辅助电源线4根(引线5356),STD总线的信号分配,2023/4/4,22,总线低位地址A0A12直接连接到各存储器芯片,STD总线与存储器连接方法,高位地址A13A15用来选片(可选64K基本存储器,通过扩展,可增至128K),2023/4/4,23,地址码的低位字节连接到总线译码器,形成6根选板信号和2根选口信号,选通I/O端口工作,STD总线与I/O的连接方法,(可选128个口,扩展后可增至256个口),2023/4/4,24
12、,ISA:Industry Standard Architecture,2.2 PC系列总线,MCA:Micro Channel Architecture,EISA:Extension ISA,PCI:Peripheral Components Interconnect,IBM PC总线的简称,因IBM及其兼容机的广泛普及成为全世界用户承认的一种事实上的标准,PCI-E:PCI Express,2023/4/4,25,问世较早,是8位、16位数据传输总线的工业标准最高传输速率8Mbps寻址空间为16MB将CPU看作唯一的主模块,其余外设均为从模块,包括可以暂时掌握总线的DMA和协处理器98根总
13、线分成5类:地址线、数据线、控制线、时钟线和电源线,ISA总线,2023/4/4,26,IBM在推出386时提出数据、地址总线宽度32位,支持4GB的寻址能力数据传输速率33Mbps在电气及物理上与ISA不兼容IBM没有公布标准,MCA总线(Micro Channel Architecture),2023/4/4,27,89年,为冲破IBM公司对MCA标准的垄断,以Compaq公司为首的9家兼容机制造商联合推出32位数据总线,支持32位地址通路总线主控技术,扩展卡上具有总线主控处理器与ISA兼容,支持多个主模块可以自动根据需要进行32、16、8位数据间的转换支持多总线主控模块扩展卡的安装十分容
14、易,可根据配置文件自动配置系统和扩展板,EISA总线,2023/4/4,28,PCI(Peripheral Component Interconnect,设备部件互连总线)是一种高性能局部总线,它是92年由Intel公司带头制定的设备总线标准支持64位数据传送、多总线主控模块、线性猝发读写和并发工作方式具有即插即用功能(PnP,Plug and Play)最高传送数据132Mbps兼容性强、成本低,PCI局部总线,2023/4/4,29,PCI总线特有的配置寄存器为用户使用提供了方便。系统嵌入自动配置软件,在加电时自动配置PCI扩展卡,为用户提供了简便的使用方法。,PCI局部总线已形成工业标准
15、。它的高性能总线体系结构满足了不同系统的需求,低成本的PCI总线构成的计算机系统达到了较高的性能/价格比水平。因此,PCI总线被应用于多种平台和体系结构中。,PCI总线的组件、扩展板接口与处理器无关,在多处理器系统结构中,数据能够高效地在多个处理器之间传输。与处理器无关的特性,使PCI总线具有很好的I/O性能,最大限度地使用各类CPU/RAM的局部总线操作系统、各类高档图形设备和各类高速外部设备,如SCSI、HDTV、3D等。,2023/4/4,30,PCI总线结构,2023/4/4,31,PCI Express和PCI不同的是实现了传输方式从并行到串行的转变。PCI Express是采用点对
16、点的串行连接方式,这个和以前的并行通道大为不同,允许和每个设备建立独立的数据传输通道。不用再向整个系统请求带宽,这样也就轻松地到达了高带宽要求。,PCI-E(PCI Express)总线,2023/4/4,32,PCI-E总线结构,2023/4/4,33,串行的点对点互连差分信号传送采用交换开关互连多台设备PCI Express 事务与包PCI Express的事务分成两类:非转发事务,即请求者发送请求包给完成者,完成者返回完成包给请求者,如存储器读事务;转发事务,即只有请求者给完成者发送请求包,而完成者不用返回完成包给请求者,如存储器写事务具有更高的数据传输率,PCI-E总线主要特点,202
17、3/4/4,34,PCI Express设备采用层次结构,采用层次结构的优势分散关注松散耦合逻辑复用标准定义,2023/4/4,35,错误处理具有优先级的传送两种中断方式一种是类似PCI-X的MSI协议,PCI Express设备启动一个写存储器包,向根复合体发送一个中断向量,根复合体再中断CPU。另一种是使用中断消息事务向根复合体传送传统PCI总线上的INT x信号的跳变情况,这种中断方式只对具有传统功能的端点设备和PCI Express-PCI桥的系统有用。支持热插拔(即带电插拔,允许用户在不关闭系统,不切断电源的情况下取出设备),2023/4/4,36,3 外部总线,外部总线又称为通信总
18、线,用于计算机之间,计算机与远程终端,计算机与外部设备以及计算机与测量仪器仪表之间的通信。该类总线不是计算机系统已有的总线,而是利用电子工业或其他领域已有的总线标准。外部总线又分为并行总线和串行总线.,2023/4/4,37,IEEE-488总线RS-232-C总线 RS-422和RS-485总线 通用串行总线(USB),本节主要内容,2023/4/4,38,IEEE-488总线是一种并行外部总线,专门用于计算机与测量仪器、输入输出设备,以及这些仪器设备之间的并行通信。IEEE-488是1970年由美国惠普公司开发的并行通讯总线,总线上连接的设备有三种,工作方式也有三种:,3.1 IEEE-4
19、88总线,控者(“控制”方式):每时只能有一个,听者(“受话”方式):同时可有多个,讲者(“送话”方式):每时只能有一个,2023/4/4,39,IEEE-488总线的连接示意图,2023/4/4,40,接口管理总线接口清除线IFC、服务请求线SQR、注意线ATN、结束或识别线EQI、远程允许REN,IEEE-488总线的信号分配,IEEE-488共定义了24根线(其中8根地线),数据总线D1-D8,数据传送控制线数据有效线DAV、未准备好接受数据线NRFD、未接受好数据线NDAC,2023/4/4,41,数据传输率不得超过每秒1M字节总线上的设备数不得多于15个电缆总长度不超过20m,两设备
20、间不超过2m采用负逻辑,使用IEEE-488的约定,2023/4/4,42,采用异步方式,利用三条控制线进行握手联络,实现三线握手的数据传输,IEEE-488总线数据传送时序,2023/4/4,43,RS-232-C总线是一种串行外部总线,专门用于数据终端设备DTE(Data Terminal Equipment)和数据通信设备DCE(Data Communication Equipment)之间的串行通信。,3.2 RS-232-C总线,是1969年由美国电子工业协会(EIA)从CCITT远程通信标准中导出的一个标准。,2023/4/4,44,RS-232-C总线的接口连接器采用DB-25插
21、头和插座,其中阳性插头(DB-25-P)与DTE相连,阴性插座(DB-25-S)与DCE相连。,RS-232-C总线的机械特性,RS-232-C 25个引脚只定义了22个。,通常使用的RS-232-C接口信号只有9根引脚,其插头插座在RS-232-C的机械特性中都有规定。,最基本的三根线是发送数据线2、接收数据线3和信号地线7,2023/4/4,45,MODEM控制和状态引脚分为两组 一组为DTR和RTS,负责从计算机通过RS-232C接口送给MODEM 另一组为DSR、CTS、DCD和RI,负责从MODEM通过RS-232C接口送给计算机的状态信息,常用的9根引脚分为两类:,另一类是用于调制
22、解调器(MODEM)的控制和反 映其状态的引脚。,基本数据传送引脚包括:TXD、RXD和GND,一类是基本的数据传送引脚,2023/4/4,46,RS-232C总线的电气特性,电气连接方式:TTL电平:+5V为逻辑“1”,0V为逻辑“0”;EIA电平:-3-15V为逻辑“1”,+3+15V为逻辑“0”,主要特点:非平衡的连接方式采用点对点通信公用地线,2023/4/4,47,最高通信速率为115200bpsRS-232C标准规定通信距离应小于15m。,电气参数,引线信号状态 RS-232C标准引线状态必须是以下三种之一,即SPACE/MARK(空号/传号)、或ON/OFF(通/断)、或逻辑0/
23、逻辑1。,引线逻辑电平,用-3-15V表示逻辑1用+3+15V表示逻辑0,短路抑制性能 RS-232C的驱动电路必须能承受电缆中任何导线短路,通信速率,2023/4/4,48,具有MODEM设备的远距离通信线路,RS-232-C总线的通信结构,2023/4/4,49,不用MODEM的 直接通信线路,最简单的RS-232C数据通信,2023/4/4,50,3.3 RS-422和RS-485总线,RS-422A标准接口,RS-422由RS-232C发展而来,RS-422是一种单机发送、多机接收的单向、平衡传输的总线标准,RS-422标准规定了双端电气接口型式,使用双端线传送信号。它通过传输线驱动器
24、,把逻辑电平变换成电位差,完成始端的信息传送;通过传输线接收器,把电位差转变成逻辑电平,实现终端的信息接收,2023/4/4,51,RS-422的数据信号采用差分传输方式传输。,RS-422 有4 根信号线,两根发送、两根接收,RS-422 的收与发是分开的,支持全双工的通讯方式。,RS-422的最大传输距离为1200m,最大传输速率为10Mbps。,RS-422A接口电路,2023/4/4,52,RS-485标准接口,RS-485是一种多发送器的电路标准,它是RS-422A性能的扩展,是真正意义上的总线标准。,允许在二根导线(总线)上挂接32台RS-485负载设备。负载设备可以是发送器、被动
25、发送器、接收器或组合收发器(发送器和接收器的组合),2023/4/4,53,RS485具有以下特点:,RS-485的电气特性:逻辑“1”以两线间的电压差为+2V+6V表示;逻辑“0”以两线间的电压差为-2V-6V表示。,RS-485的数据最高传输速率为10Mbps,RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干扰能力增强。,RS-485接口的最大传输距离为1200m,在总线上是允许连接多达128个收发器,即具有多站能力和多机通信功能。,2023/4/4,54,RS-485与RS-422的区别在于:,硬件线路上,RS-422至少需要4根通信线,而RS-485仅需2根;RS-422不
26、能采用总线方式通信,但可以采用环路方式通信,而RS-485两者均可。,通信方式上,RS-422可以全双工,而RS-485只能半双工。,2023/4/4,55,串行总线协议转换器,2023/4/4,56,USB设备的主要特点采用USB接口的设备支持热拔插USB接口可以同时连接127台USB设备。速度方面,USB 1.1总线规范定义了12 Mb/s的带宽,而USB2.0可提供480Mb/s的传输速度,USB3.0传输速度为4.8Gb/s。USB总线能够提供500mA的电流,USB3.0为900mA。,3.4 USB通用串行总线,USB(Universal Serial Bus)协议标准 USB1.
27、0、USB1.1、USB2.0、USB On-The-Go(OTG)、USB3.0总线标准,2023/4/4,57,USB传输速率及其适用范围,2023/4/4,58,USB总线系统中的设备可以分为三个类型USB主机USB 集线器(HUB)USB总线的设备,又称USB功能外设。,USB设备及其体系结构,2023/4/4,59,USB的传输方式,控制(Control)传输方式设备控制指令、状态查询及确认命令,中断(Interrupt)传输方式数据量小、需及时处理的数据,如键盘、鼠标,同步(Isochronous)传输方式对数据正确性要求不高、对时间敏感的外部设备,如麦克风、喇叭,批(Bulk)传
28、输方式正确无误的大批量数据,如移动硬盘、打印机、扫描仪和数码相机,2023/4/4,60,所有USB外设都有一个上行的连接,上 行连接采用A型接口,而下行连接一般则采用B型接口。,USB设备的电气连接,USB连接分为上行连接和下行连接。,USB电缆中有四根导线,VBUS为电源,+5V,2023/4/4,61,USB连接设备和主机的连接方法,USB 集线器和设备的电阻连接,2023/4/4,62,USB连接设备和主机的连接方法,USB集线器通过监视差分数据线来检测设备是否已连接到集线器的端口上.,当没有设备连接到USB端口时,D+和D-通过下拉电阻Rpd电平是近地的。,USB设备必须至少在D+和
29、D-线的任意一条上有一个上拉电阻Rpu,由于Rpu=1.5K,Rpd=15K,所以数据线上会有90%的Vcc电压,集线器通过检测不同的数据线电压接近Vcc来判别是哪一类USB设备连接到其端口上,如D+电平接近Vcc,D-近地,则所连设备为全速设备如D-电平接近Vcc,D+近地,则所连设备为低速设备当D+和D-的电压都降到0.8V以下,并持续2.5微秒以上的话,就认为该设备断开连接了。,2023/4/4,63,其他几种常见的串行总线,I2C总线SPI总线,2023/4/4,64,串行通信,串行通信:使用串口通信时,发送和接收到的每一个字符实际上都是一次一位的传送的,每一位为1或者为0采用串行总线
30、技术可以使系统的硬件设计大大简化、系统的体积减小、可靠性提高。同时,系统的更改和扩充极为容易可分为同步通信和异步通信两类同步通信:发送时钟和接收时钟保持严格的同步,如:I2C,SPI异步通信:发送端和接收端可以由各自的时钟来控制数据的发送和接收,这两个时钟源彼此独立,互不同步。每个字符都有开始位和停止位,一次同步一个字符,在开始位进行同步。如:UART(RS232),2023/4/4,65,I2C总线(IIC、I2C),I2C(Inter IC Bus)总线是Philips公司开发的一种双向两线串行总线,以实现集成电路之间的有效控制。目前,Philips及其它半导体厂商提供了大量的含有I2C总
31、线的外围接口芯片,I2C总线已成为广泛应用的工业标准之一I2C总线传输率标准模式下,基本的I2C总线规范的规定的数据传输速率为100kb/s快速模式下,数据传输速率为400KB/s高速模式下,数据传输速率为3.4Mb/s,2023/4/4,66,I2C总线采用二线制传输,一根是数据线SDA(Serial Data Line),另一根是时钟线SCL(Serial Clock Line),所有I2C器件都连接在SDA和SCL上,每一个器件具有一个唯一的地址 I2C总线是一个多主机总线,总线上可以有一个或多个主机(或称主控制器件),总线运行由主机控制 主机是指启动数据的传送(发起始信号)、发出时钟信
32、号、发出终止信号的器件。通常,主机由单片机或其它微处理器担任被主机访问的器件叫从机(或称从器件),它可以是其它单片机,或者其他外围芯片,如:A/D、D/A、LED或LCD驱动串行存储器芯片,2023/4/4,67,I2C总线支持多主(multi-mastering)和主从(master-slave)两种工作方式多主方式下,I2C总线上可以有多个主机。I2C总线需通过硬件和软件仲裁来确定主机对总线的控制权主从工作方式时,系统中只有一个主机,总线上的其它器件均为从机(具有I2C总线接口),只有主机能对从机进行读写访问,因此,不存在总线的竞争等问题。在主从方式下,I2C总线的时序可以模拟,I2C总线
33、的使用不受主机是否具有I2C总线接口的制约在嵌入式系统的串行总线扩展中,经常遇到的是以MCU为主机,其它接口器件为从机的单主机情况,2023/4/4,68,2023/4/4,69,采用I2C总线设计系统的优点,功能框图中的功能模块与实际的外围器件对应,可以使系统设计直接由功能框图快速地过渡到系统样机外围器件直接“挂在”I2C总线上,不需设计总线接口;增加和删减系统中的外围器件,不会影响总线和其他器件的工作,便于系统功能的改进和升级集成在器件中的寻址和数据传输协议可以使系统完全由软件来定义,2023/4/4,70,I2C总线的数据传输,I2C总线通过上拉电阻接正电源。当总线空闲时,两根线均为高电
34、平。连到总线上的任一器件输出的低电平,都将使总线的信号变低,即各器件的SDA及SCL都是线“与”关系,2023/4/4,71,1、数据位的有效性I2C总线进行数据传送时,时钟信号为高电平期间,数据线上的数据必须保持稳定只有在时钟线上的信号为低电平期间,数据线上的高电平或低电平状态才允许变化,2023/4/4,72,2、起始和终止信号SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信号,2023/4/4,73,起始和终止信号都是由主机发出的,在起始信号产生后,总线就处于被占用的状态;在终止信号产生后,总线就处于空闲状态连
35、接到I2C总线上的器件,若具有I2C总线的硬件接口,则很容易检测到起始和终止信号接收器件若无法立刻接收下一个字节,可以将SCL线拉成低电平,从而使主机处于等待状态。直到接收器件准备好接收下一个字节时,再释放SCL线使之为高电平,从而使数据传送可以继续进行,2023/4/4,74,3、数据传输格式(1)字节传送与应答每一个字节必须保证是8位长度。数据传送时,先传送最高位(MSB),每一个被传送的字节后面都必须跟随一位应答位(即一帧共有9位),2023/4/4,75,由于某种原因从机不对主机寻址信号应答时(如从机正在进行实时性的处理工作而无法接收总线上的数据),它必须将数据线置于高电平,而由主机产
36、生一个终止信号以结束总线的数据传送如果从机对主机进行了应答,但在数据传送一段时间后无法继续接收更多的数据时,从机可以通过对无法接收的第一个数据字节的“非应答”通知主机,主机则应发出终止信号以结束数据的继续传送当主机接收数据时,它收到最后一个数据字节后,必须向从机发出一个结束传送的信号。这个信号是由对从机的“非应答”来实现的。然后,从机释放SDA线,以允许主机产生终止信号,2023/4/4,76,(2)数据帧格式I2C总线上传送的数据信号是广义的,既包括地址信号,又包括真正的数据信号在起始信号后必须传送一个从机的地址(7位),第8位是数据的传送方向位(R/T),用“0”表示主机发送数据(T),“
37、1”表示主机接收数据(R)。每次数据传送总是由主机产生的终止信号结束。但是,若主机希望继续占用总线进行新的数据传送,则可以不产生终止信号,马上再次发出起始信号对另一从机进行寻址在总线的一次数据传送过程中,可以有以下几种组合方式:,2023/4/4,77,a)主机向从机发送数据,数据传送方向在整个传送过程中不变:,注:阴影部分表示数据由主机向从机传送,无阴影部分则表示数据由从机向主机传送A表示应答,A非表示非应答(高电平)S表示起始信号,P表示终止信号。,2023/4/4,78,b)主机在第一个字节后,立即从从机读数据:,c)在传送过程中,当需要改变传送方向时,起始信号和从机地址都被重复产生一次
38、,但两次读/写方向位正好反相,2023/4/4,79,I2C总线的寻址,I2C总线协议有明确的规定:采用7位的寻址字节(寻址字节是起始信号后的第一个字节),D7D1位组成从机的地址。D0位是数据传送方向位,为“0”时表示主机向从机写数据,为“1”时表示主机由从机读数据,2023/4/4,80,主机发送地址时,总线上的每个从机都将这7位地址码与自己的地址进行比较,如果相同,则认为自己正被主机寻址,根据R/T位将自己确定为发送器或接收器从机的地址由固定部分和可编程部分组成。从机地址中可编程部分决定了可接入总线该类器件的最大数目。如一个从机的7位寻址位有4位是固定位,3位是可编程位,这时仅能寻址8个
39、同样的器件,即可以有8个同样的器件接入到该I2C总线系统中,2023/4/4,81,SPI总线,SPI(Serial Peripheral Interface)总线是Motorola公司提出的一种同步串行外设接口,它可以使微控制器(MCU)与各种外围设备以串行方式进行通信以交换信息。外围设备包括FLASHRAM、网络控制器、LCD显示驱动器A/D转换器和微控制器等SPI总线使用同步协议传送数据,接收或发送数据时由主机产生的时钟信号控制。SPI接口可以连接多个SPI芯片或装置,主机通过选择它们的片选来分时访问不同的芯片,2023/4/4,82,SPI总线的构成MOSI(Master Out Sl
40、ave In):主机发送从机接收。MISO(Master In Slave Out):主机接收从机发送 SCLK或SCK(Serial Clock):串行时钟CS(Chip Select for the peripheral)或SS:外围器件的片选,从设备使能MOSI(SI或SDI)信号由主机产生,接收者为从机;MISO(SO或SDO)信号由从机发出;CLK或SCK由主机发出,用来同步数据传送;片选信号也由主机产生,用来选择从机芯片或装置,2023/4/4,83,SPI 8位移位寄存器,SPI 8位移位寄存器,MSB 主设备 LSB,MSB 从设备 LSB,SPI时钟发生器,MOSI MISO
41、,MISO MOSI,SCLK SCLK,SPI是一个环形总线结构,其时序其实很简单,主要是在SCLK的控制下,两个双向移位寄存器进行数据交换,2023/4/4,84,SPI总线信号线基本连接关系,SPI 总线系统有以下几种形式:1个主机和多个从机、多个从机相互连接构成多主机系统(分布式系统)、1个主机与1个或几个I/O设备构成的系统等,2023/4/4,85,主从方式SPI总线接口系统的典型结构在大多数应用场合,可使用1个微控制器作为主控机来控制数据传送,并向1个或几个外围器件传送数据。从机只有在主机发命令时才能接收或发送数据当一个主机通过SPI与多个芯片相连时,必须使用每个芯片的片选,这可
42、通过MCU的I/O端口输出线来实现,2023/4/4,86,SPI通信协议SPI采用串行通讯协议,也就是说数据是一位一位的传输的。由SCLK提供时钟脉冲,MOSI,MISO则基于此脉冲完成数据传输。数据在时钟上升沿或下降沿时改变,在紧接着的下降沿或上升沿被读取。这样,在至少8次时钟信号的改变(上沿和下沿为一次),就可以完成8位数据的传输。,2023/4/4,87,普通的串行通讯一次连续传送至少8位数据,而SPI允许数据一位一位的传送,甚至允许暂停,因为SCLK时钟线由主控设备控制当没有时钟跳变时,从设备不采集或传送数据也就是说,主设备通过对SCLK时钟线的控制可以完成对通讯的控制因为SPI的数
43、据输入和输出线独立,所以允许同时完成数据的输入和输,实现全双工通信,2023/4/4,88,I2C与SPI比较,总线速度流控流控制用于解决串口通信中的数据丢失问题,当接收端数据处理不过来时,就发出“不再接收”的信号,发送端就停止发送,直到收到“可以继续发送”的信号再发送数据多主机从器件添加数据流向,2023/4/4,89,SPI总线特点总线速度:时钟速度很快,范围可从几兆赫兹到几十兆赫兹,且没有系统开销流控:缺乏流控机制,无论主器件还是从器件均不对消息进行确认,主器件无法知道从器件是否繁忙多主:没有多主器件协议,必须采用很复杂的软件和外部逻辑来实现多主器件架构添加从器件:每个从器件需要一个单独的从选择信号。总信号数最终为n+3个,其中n是总线上从器件的数量。在SPI总线上添加新的从器件也不方便。对于额外添加的每个从器件,都需要一条新的从器件选择线或解码逻辑可实现全双工通信,2023/4/4,90,I2C总线特点总线速度:总线速度为从0Hz到3.4MHz,没有SPI那样快流控:存在系统开销,这些开销包括起始位/停止位、确认位和从地址位,但它因此拥有流控机制多主:允许多个主器件工作在同一总线上,多个主器件可以轻松同步其时钟添加从器件:I2C总线只有两条导线,因此新从器件只需接入总线即可,而无需附加逻辑非全双工,一般无FIFO,2023/4/4,91,结束,THE End,