第3章 总线线驱动与接口 桂小林 西安交通大学 2017/3/21 西安交通大学计算机系桂小林制作
目录 3.1 总线技术概述 3.2 总线驱动与控制 3.3 系统总线 3.4 外部总线(通信总线) 3.5 单片机常用接口总线 3.4 外部总线(通信总线) 3.5 单片机常用接口总线 西安交通大学计算机系桂小林制作
3.1 总线技术概述 总线的概念与分类 :片内总线、片间总线、系统总线和通信总线。 片内总线是指连接集成电路芯片内部各功能单元的信息通路, 片间总线是芯片引出的总线,用来实现一个电路板内芯片与芯片间的互联。片间总线又称为板内总线、元件级总线、芯片间总线。 系统总线是指连接微处理器、主存储器和I/O接口等系统部件的一组公共信息通路。系统总线又称为板级总线、板间总线或内总线。 通信总线又称为I/O总线或外总线,是指连接微型计算机主机与I/O设备、仪器仪表,甚至其它微型计算机的总线。 西安交通大学计算机系桂小林制作
总线的特性(总线标准化) 物理特性也称机械特性,是指总线的物理形态和布局、机械连接性能等, 功能特性是指总线中各个信号线的功能,比如地址总线传送地址信息,数据总线传送数据信息,而控制总线既传送各种控制信息 电气特性是指信号的传递方向、工作电平、负载能力的最大额定值等。 时间特性(即过程特性)定义每根线在什么时间有效,即总线上各信号有效的时序关系,一般用信号时序图来描述。 西安交通大学计算机系桂小林制作
总线的性能指标 总线的带宽指的是单位时间内总线上可传送的数据量,即每秒钟传送多少字节。与总线带宽密切相关的两个概念是总线的位宽和总线的工作频率。 总线的位宽指的是总线能同时传送的数据位数,即8位、16位、32位、64位等总线宽度的概念。在工作频率一定的条件下,总线的带宽与总线的位宽成正比。 总线的工作频率也称为总线的时钟频率,以MHz为单位。它是指用于协调总线上的各种操作的时钟信号的频率。工作频率越高则总线工作速度越快,也即总线带宽越宽。 西安交通大学计算机系桂小林制作
3.2 总线驱动与控制 总线竞争是指同一时刻有两个或两个以上部件向总线传送信息。 总线负载 : 直流负载:某个集成电路芯片的驱动能力是指该芯片在规定的性能下向下一级电路提供(或吸收)电流的能力, 交流负载:允许在其输出端所接的等效电容的能力。 西安交通大学计算机系桂小林制作
总线隔离与驱动 为了防止总线竞争,减轻总线负载,可以在总线和各个部件之间引入三态门电路以实现总线与各个设备的隔离。 三态门的引入不仅实现了总线隔离,而且还可以提高总线的负载驱动能力。 典型的双向三态门电路是74LS245,通常连接在数据总线上,用于控制和驱动数据信号的双向传输; 典型的单向三态门电路是74LS373和74LS244,可以对单向传送的地址和控制信号进行控制和驱动,其中74LS373还具有锁存功能,特别适合于在地址/数据总线分时复用的情况下锁存地址信号。 西安交通大学计算机系桂小林制作
IBM PC/XT总线的形成 373 245 西安交通大学计算机系桂小林制作
3.3 系统总线 西安交通大学计算机系桂小林制作
3.3.1 系统总线概述 最早的PC总线是IBM公司于1981年推出的基于8位机PC/XT的总线,称为PC总线。 1984年IBM公司推出了16位PC机PC/AT,其总线称为AT总线。然而IBM公司从未公布过AT总线规格。为了能够合理地开发外插接口卡,由Intel公司,IEEE和EISA集团联合开发了与IBM/AT原装机总线意义相近的ISA总线,即8/16位的ISA (Industry Standard Architecture,工业标准结构)总线。 随着计算机应用领域的扩大,总线技术也随之不断创新。由最初的PC/XT到ISA、MCA、EISA、VESA、AGP再到PCI、PCIE、PCI-X等。 总线标准不断出现和升级换代。 西安交通大学计算机系桂小林制作
3.3.2 IBM PC/XT总线 PC/XT总线每个插槽有62根信号引脚,分为A、B两面, 包括8位数据线、20位地址线、6个中断请求信号和4个DMA通道的请求与应答信号(通道0用于动态存储器刷新,无请求信号),还包括存储器读写信号、I/O读写信号,以及时钟、电源、地等信号, 西安交通大学计算机系桂小林制作
IBM PC/XT总线 西安交通大学计算机系桂小林制作
IBM PC/XT总线 西安交通大学计算机系桂小林制作
3.3.3 ISA总线 ISA总线在IBM PC/XT总线的基础上增加了一个附加插槽,分为C、D两面,共36根引脚。 此外还增加了6根中断请求信号和4个通道的DMA联络信号等。 西安交通大学计算机系桂小林制作
ISA总线 西安交通大学计算机系桂小林制作
3.3.4 PCI总线 1991年下半年,Intel公司首先提出了PCI (Peripheral Component Interconnect)的概念,并联合IBM、Compaq、AST、HP、DEC等100多家公司成立了PCI集团,于1993年正式推出了PCI局部总线标准:PCI总线。 PCI总线是一种不依附于某个具体处理器的局部总线 可用32位数据传输,也可扩展为64位。 西安交通大学计算机系桂小林制作
3.3.5 AGP总线 AGP(Accelerated Graphics Port)即加速图形端口。它是一种为了提高视频带宽而设计的总线规范。它支持的AGP插槽可以插入符合该规范的AGP插卡。其视频信号的传输速率可以从PCI的132MB/s提高到266MB/s(×1模式)或者532MB/s(×2模式)。 西安交通大学计算机系桂小林制作
3.4 外部总线(通信总线) 外部总线用于计算机之间、计算机和一部分外设之间的通信,也称为通信总线。 语音接口 3.4 外部总线(通信总线) 外部总线用于计算机之间、计算机和一部分外设之间的通信,也称为通信总线。 3.4.1 IDE和EIDE总线 3.4.2 SCSI总线 3.4.3 RS-232总线 3.4.4 RS-422和RS-485总线 3.4.5 USB总线 3.4.6 IEEE 1394总线 语音接口 PS2键盘接口 西安交通大学计算机系桂小林制作
3.4.1 IDE和EIDE总线 集成设备电子部件(Integrated Device Electronics,IDE)是从IBM PC/AT上使用的高级技术配件(Advanced Technology a、Attachment,ATA)接口发展而来,故又称ATA接口。 EIDE又称为ATA-2,后来,IDE接口采用了由当时的著名硬盘厂商昆腾(Quantum,现已被迈拓收购)与Intel共同制定的ATA/IDE新型接口技术—Uitra DMA/33/66/100,并开发了第七代硬盘接口标准Ultra DMA/133,使硬盘与主机间的传输速率达到133 Mb/s,并使硬盘的容量突破137GB的限制。 PC计算机常用,5400rpm,7200rpm 西安交通大学计算机系桂小林制作
3.4.2 SCSI总线 SCSI是小型计算机系统接口Small Computer System Interface的简称,在服务器和图形工作站中被广泛采用。 计算机系统通过SCSI接口卡,可以与各种各样的外设相连。它的特点是传输速度快(达40Mbps以上)、支持多任务并行操作,是中小型计算机系统普遍采用的技术。 目前主要使用在服务器系统中,>=10000rpm 西安交通大学计算机系桂小林制作
3.4.3 RS-232总线 1970年美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家和计算机终端厂家,正式制定了用二进制方式交换数据的数据终端设备DTE(Data Terminal Equipment)与数据通信设备DCE(Data Communication Equipment)之间的串行接口技术标准,称RS-232-C标准,其中C为版本号, 1988年又把RS 232-C修订为RS-232-D 具体应用在串行接口部分解释 西安交通大学计算机系桂小林制作
DB25连接器 & DB9连接器 引脚定义不同。TxD和RxD相反。 西安交通大学计算机系桂小林制作
3.4.4 RS-422和RS-485总线 RS-422总线采用平衡差动方式进行数据传送. 提高抗干扰,传输距离远 差分电平(±2V),负逻辑 B A GND 1 2 3 4 8 7 5 D RO O DE DI VCC MAX485 R 6 差分 TTL电平 西安交通大学计算机系桂小林制作
3.4.5 USB总线 USB的全称叫Universal Serial Bus,中文名称叫通用串行总线。为了规范USB的推广和使用,国际上对USB制订了协议,USB1.1、USB1.2、USB2.0和USB3.0都是USB协议的名称。 USB1.1规范是1998年制订的,最大传输速度为12Mbps/秒; USB2.0规范是2000年制订的,最大传输速度为480Mbps/秒; USB3.0规范是2008年制订的,最大传输速度为5Gbps/秒。 USB2.0标准是目前广泛使用的协议标准,兼容USB1.1和USB2.0接口可以工作在三种速度模式:480Mbps、12Mbps、1.5Mbps。 西安交通大学计算机系桂小林制作
USB的接口形态 USB接口采用矩形插座和插头,有9针和4针两种。目前广泛采用的是4针引脚的USB接口接头如图3-16所示 西安交通大学计算机系桂小林制作
3.4.6 IEEE 1394总线 IEEE 1394的前身是Apple公司于1985年开始研究、1987年发布的FireWire(“火线”),1992年被接纳为IEEE 1394规范 在这个标准中,传输速率被定义为100/200/400Mb/s三种,通常就称为S100/S200/S400。 后来先后推出的IEEE P1394a以及P1394-1999,P1394-2000都在保持传输速率不变的前提下,对控制性能和互操作性进行了较大的改进。其中,高性能的IEEE P1394b的带宽在时钟800/1600/3200MHz下分别达到100/200/300MB/S。 西安交通大学计算机系桂小林制作
3.5 单片机常用接口总线 随着单片计算机的快速发展和广乏应用,单片机内部集成的接口种类日益增多,同一引脚的多功能可编程复用成为一种趋势。 本节重点介绍单片计算机中的主要内嵌接口的总线标准,如I2C、SPI、JTAG等,这些接口总线的应用在后续章节将陆续介绍。 3.5.1 I2C总线 3.5.2 SPI总线 3.5.3 JTAG总线 西安交通大学计算机系桂小林制作
3.5.1 I2C总线 I2C(Inter-Integrated Circuit)总线协议产生于1980年代,是由PHILIPS公司推出的两线式串行通信总线,主要用于连接微控制器及其外围设备,最初应用于音频和视频设备之中,如今广泛应用于各种嵌入式应用系统中。 I2C串行总线是一种双向两线制的串行数据传输标准总线。包括:一根双向的数据线SDA,另一根是时钟线SCL。 所有接到I2C总线上的设备的串行数据都接到总线的SDA线,各设备的时钟线SCL接到总线的SCL。每个接到I2C总线的设备都有一个唯一的地址。 西安交通大学计算机系桂小林制作
I2C的命令格式与传输规程 I2C总线在传送数据过程中共有三种特殊类型信号,它们分别是:开始信号、结束信号和应答信号(如图3-23)。 开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。 结束信号:SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据。 应答信号:接收器在接收到8位数据后,在SCL高电平期间向发送器发出特定的低电平脉冲,表示已收到数据。 西安交通大学计算机系桂小林制作
I2C数据总线传送时序 正常数据传输时,SDA线上的数据在SCL时钟“高”期间必须是稳定的,以区别开始和停止条件。只有当SCL线上的时钟信号为低时,数据线上的“高”或“低”状态才可以改变。输出到SDA线上的每个字节必须是8位,每次传输的字节不受限制,每个字节必须有一个应答为ACK,ACK由从机发出。 西安交通大学计算机系桂小林制作
主机利用I2C总线传输1个字节数据 在图中,第1位为START(开始位,波形见图3-23),后接一个控制字节(7位器件地址和1位写信号(W)),1位ACK(由从机发出);紧接着为2字节的目标存储器的内部存储地址,每个地址均有1位ACK(由从机发出); 然后,传输1个字节数据和1位ACK(由从机发出); 最后由主控设备发出STOP(停止位)。 由此结束一次数据传输过程。 西安交通大学计算机系桂小林制作
3.5.2 SPI总线 SPI(Serial Peripheral Bus)总线是Motorola公司提出的一个同步串行外设接口,容许CPU 与各种外围接口器件以串行方式进行通信、交换信息。 SPI使用4条线:串行时钟线(SCK)、主机输入/从机输出线(MISO)、主机输出/从机输入线(MOSI)、低电平有效的使能信号线(SS#)。 SPI使用SCK进行主控设备(主机)与被控设备(从机)间的定时。主控设备的MISO信号线与所有被控设备的MOSI信号线连接,主控设备的MOSI信号线与所有被控设备的MISO信号线连接。 西安交通大学计算机系桂小林制作
为了区分不同的被控设备,主控器应该使用不同的SS#信号线连接被控设备的SS#信号线。这样,SPI仅需3+n根信号线即可扩展具有n路SPI接口的各种I/O器件。SPI总线接口的典型互联结构如图3-26所示。 西安交通大学计算机系桂小林制作
SPI的内部连接结构 主机和从机之间的SPI内部连接结构如图3-27所示。系统包括两个移位寄存器和一个主机时钟发生器。通过将需要的从机的SS#引脚拉低,主机启动一次通讯过程。 主机和从机将需要发送的数据放入相应的移位寄存器。主机在SCK引脚上产生时钟脉冲以交换数据。主机的数据从主机的MOSI移出,从从机的MOSI移入;从机的数据从从机的MISO移出,从主机的MISO 移入。 主机通过将从机的SS#拉高实现与从机的同步。 西安交通大学计算机系桂小林制作
SPI的总线时序 SPI数据的每一位的移出和移入发生于SCK不同的信号跳变沿,以保证有足够的时间使数据稳定。SCK的相位、极性与数据间有4种组合,如表3-14所示。CPHA和CPOL控制组合的方式。 CPOL为高表示空闲时SCK为高电平,否则,表示空闲时SCK为低电平; CPHA决定数据是在SCK的起始沿采样还是在SCK的结束沿采样。 图3-28给出了SPI模式0和模式2时的SPI引脚的时序图。 西安交通大学计算机系桂小林制作
SPI的工作模式 西安交通大学计算机系桂小林制作
3.5.3 JTAG总线---调式手段的巨大革新 JTAG是Joint Test Action Group的缩写,是IEEE1149.1国际标准,其设计目标是方便集成电路的的调试。 在ARM7处理器中,可以通过JTAG直接控制ARM的内部总线、I/O口等信息,从而达到调试的目的。 JTAG的建立使得集成电路固定在PCB上,只需要通过边界扫描便可以方便调试。IEEE 1149.1(JTAG)标准的边界扫描功能包括:调试器可以访问所有的片内外设、内部和外部SRAM、寄存器文件、程序计数器、EEPROM和Flash 存储器;支持各种断点,包括AVR Break指令、程序流程改变、单步、单个地址或一个地址范围的程序断点、单个地址或一个地址范围的数据断点; 通过JTAG 接口对Flash、EEPROM、熔丝位和锁定位进行编程等。 西安交通大学计算机系桂小林制作
JTAG调试接口 通过JTAG接口进行编程需要控制4个JTAG专用引脚:TCK、TMS、TDI及TDO。而复位(RST#)及时钟(CLK)引脚不用控制。上述引脚组成了测试访问端口(TAP)。这些引脚功能描述如下: TMS:测试模式选择。此引脚用来实现TAP控制器各个状态之间的切换。 TCK:测试时钟。JTAG操作是与TCK同步的。 TDI:测试数据输入。需要移位到指令寄存器或数据寄存器(扫描链)的串行输入数据。 TDO:测试数据输出。自指令寄存器或数据寄存器串行移出的数据。 RST#:JTAG复位信号,复位JTAG的状态机和内部的宏单元(Macrocell)。 西安交通大学计算机系桂小林制作
作业 P91-92 13、19、27、40 P140-141 1、11、17、23 西安交通大学计算机系桂小林制作
THANKS! 第4章 存储器系统接口.ppt 西安交通大学计算机系桂小林制作