01 微型计算机总线 - 最全的接口技术提纲

微型计算机总线

接口与计算机交互方式

计算机控制接口和外部

  1. 软件发出I/O写指令
  2. CPU及译码电路产生数据/控制信号
  3. 接口电路产生对外设的数据信号和控制信号

计算机获得外部信息

  1. 外设的数据和运行状态
  2. 接口电路
  3. CPU
  4. I/O读指令将数据或状态送到软件

基础概念

  • 端口:是指接口电路中可以进行读/写的寄存器
  • 接口:是若干个端口加上相应的控制逻辑电路组成
  • 接口数据类型:数据信息、控制信息和状态信息
  • 端口类型 (CPU通过输入指令(IN)可以从有关端口中读出信息,通过输出指令(OUT)可以把信息写入有关端口):
    • 数据端口:存放数据信息的寄存器
    • 控制端口:存放控制命令的寄存器,只进行输出操作 (OUT)
    • 状态端口:存放状态信息的寄存器,只进行输入操作 (IN)

微型计算机总线

  • 分类:XT、ISA、PCI、PCI-E

总线概述

基本概念

总线是一种在多于两个模块(设备或子系统)间传送信息的公共通路。

  • 物理:总线是一组传输公共信号线的集合,是传输地址、数据和控制信号的公共通路,由一组导线和相关的控制(协议)驱动电路组成。
  • 实体:在主板上安装有若干个插槽,允许插入各个模块(CPU板、存储器板和I/O板等)。主板上的印制电路线将各插槽的相应点连接起来,即为总线。

总线标准

指芯片之间、扩展卡之间以及系统之间,通过总线进行连接和传输信息时,应该遵守的一些协议与规范

接口标准

外设接口的规范,涉及接口信号线定义、信号传输速率、信号传输方向和拓扑结构,以及电气特性和机械特性等多个方面。

总线与接口的区别

  • 总线标准具有公用性、接口标准大多是专用的
  • 总线往往以主板上的总线扩展槽形式提供使用,接口一般是以接口插座(头)形式提供使用。
  • 总线一般是并行传输; 接口有并行传输,也有串行传输。目前两者均明显表现出串行发展趋势。
  • 总线定义的信号线多,而且齐全,有分离的控制总线、数据线和地址线; 接口的信号线少,而且不齐全,一般是控制线、数据线和地址线共用。

总线特性

  • 物理特性:指总线的物理连接方式,包括总线的根数,总线的插头、插座的形状,引脚线的排列方式等。(以便于设计者进行设计)
  • 功能特性:描述总线中每一根线的功能。
  • 电气特性:定义每一根线上信号的传递方向及有效电平范围。送入CPU的信号叫输入信号(IN),从CPU发出的信号叫输出信号(OUT)。
  • 时间特性:定义了每根线在什么时间有效。规定了总线上各信号有效的时序关系,CPU才能正确无误地使用。

总线的主要性能参数

  • 总线频率:MHz表示的工作频率,是总线频率的一个重要参数。

  • 总线宽度:指数据总线的位数。

  • 总线的数据传输率=(总线宽度/8位)×总线频率

    例: 若PCI总线的总线频率为33.3MHz,总线宽度64位的情况下,总线数据传输率为266MB/s

总线分类

结构分

  • 单总线:所有模块都连接到单一总线上
    • 结构简单便于扩充
    • 可能成为计算机的瓶颈
  • 双总线:系统总线与I/O总线分开的双总线结构
    • 将速度较低的I/O设备从总线上分出去
  • 三总线:在系统总线和扩展总线之间增加一条高速总线
    • 将图形、视频和网络等连到高速总线上,而慢速I/O设备仍连到扩展总线

功能和信号传输类型分

  • 数据传送线
    • 地址总线(Address Bus)- 单向(由 CPU 发出),可传:
      • CPU要执行的下一条指令地址
      • 计算所需的操作数存储地址
      • 要存放计算结果的存储单元地址
      • 准备发送数据的某台输入设备的地址
      • 准备接收数据的某台输出设备的地址
      • 存储器的两个存储区之间、存储器与外设之间、两个外设之间传送数据时的有关地址。
    • 数据总线(Data Bus)- 双向,可传:
      • 数值数据、指令、设备码、控制字、状态字
    • 控制总线(Control Bus)- 分为:
      • 读出命令和写入命令信号线
      • 中断请求线和中断响应线
      • 同步(选通或时钟)信号线
      • 保持、等待就绪(准备好)信号线
  • 仲裁总线
  • 中断和同步线
  • 公用线(现代总线结构)

层次分

不同传输要求的设备“分类”连接在不同性能的总线上,合理地分配系统资源,满足不同设备的不同需要

  • CPU内部总线
    • 微机系统中速度最快的总线,主要在CPU内部,连接CPU内部各部件,在CPU周围的小范围内也分布该总线,提供系统原始的控制和命令
  • 局部总线
    • 在系统总线和CPU总线之间的一级总线,提供CPU和主板器件之间以及CPU到高速外设,之间的快速信息通道
  • 系统总线
    • 也称为I/O总线,是传统的通过总线扩展卡连接外部设备的总线。由于速度慢,其功能已逐渐被局部总线替代
  • 通信总线 - 并行/串行:
    • 也称为外部总线,是微机与微机,微机与外部设备(如打印机、硬盘设备)、仪器仪表之间的通信通道

总线标准化

芯片、扩展卡与系统之间通过总线连接和通信时,应当遵循的协议和规范

  • 总线负载能力:指当总线接上负载后必须不影响总线输入/输出的逻辑电平

增强总线负载能力的一般方法

在总线与负载间加接缓冲器或驱动器,常用三态缓冲器,其作用是驱动和隔离。(在板卡,即适配器上带有缓冲驱动器,或在接口芯片内部有缓冲驱动器单元)

系统总线发展

基础知识

指令周期、总线周期、时钟周期

  • 指令周期:不同指令的指令周期是不等的。一个指令周期由一个或若干个总线周期组成。
  • 总线周期:CPU通过总线与外部进行信号输入、输出交换信息所需的时间。
  • 时钟周期:时钟脉冲的重复周期。可见时钟周期是CPU的时间基准。又叫T状态。

XT 总线

PC/XT总线是将8088 CPU的引脚经过8282锁存器、8286发送接收器、8288总线控制器、8259中断控制器、8237DMA控制器以及其他逻辑电路的重新驱动和组合控制而形成的。

总线信号线共62条

  • 8条双向数据线D7~D0 ;
  • 20条单向地址线A19~A0 ;
  • 控制线:
    • 6条中断请求线;
    • 3对DMA申请线和4条DACK线;
    • 4条 存储器和I/O设备的读写命令线;
    • 1条系统时钟信号线、1条I/O奇偶检测线、1条I/O就绪线及其他联络信号线。
  • 4种电源(±5V、±12V)共8条线。
主要总线信号
  • 地址信号 A15- A0
  • 数据总线信号 D7-D0
  • 控制总线信号 -IOR,-IOW,AEN

ISA总线

ISA 插槽由基本的62线8位插槽和扩展的36线插槽两部分组成

特点

信号分类

  • 1K字节的I/O地址空间(0000H~03FFH)
  • 24位存储器地址
  • 8位或16位数据存取
  • 15级硬件中断
  • 7级DMA通道
  • 产生I/O等待状态

多主控

它是一种多主控(MultiMaster)总线。除主CPU外,DMA控制器、DRAM刷新控制器和带处理器的智能接口控制卡都可以成为ISA总线的主控设备

支持8种类型的总线周期

  • 8位或16位的存储器读周期
  • 8位或16位的存储器写周期
  • 8位或16位的I/O读周期
  • 8位或16位的I/O写周期
  • 中断请求和中断响应周期
  • DMA 周期
  • 存储器刷新周期
  • 总线仲裁周期
主要总线信号
  • 数据线D0~D15:双向三态
  • 低位地址线A0~A19:输出,可寻址1MB,带锁存
  • 高位地址线LA17~LA23:输出,寻址范围16MB,不带锁存,A19~A17不复用,提高数据传输率
  • 地址锁存允许信号ALE:输出,高电平有效
  • 中断请求信号IRQ2~IRQ7、IRQ10~IRQ14:输入,上升沿有效
  • 地址使能信号AEN:输出,高电平有效。高电平表示DMA周期。CPU控制总线时,该信号保持低电平
  • I/O读信号IOR#:输出,低电平有效
  • I/O写信号IOW# :输出,低电平有效
  • 存储器读 MEMR#:输出,低电平有效
  • 存储器写MEMW#:输出,低电平有效
  • 数据总线高字节使能 SBHE# :输出,低电平有效
  • 16位I/O片选信号I/OCS16#:输入,低电平有效
  • 16位存储器片选MEMCS16#:输入,低电平有效

PCI总线

(Peripheral Component Interconnect,外围部件互连总线)于1991年由Intel公司首先提出

分类
PCI 类型 总线宽度 (位) 总线时钟 (MHz) 带宽 MB/sec
PCI 32 33 133
PCI 66M 32 66 266
PCI 64位 64 33 266
PCI 66M/64位 64 66 533
PCI-X 1.0 32/64 66~133 266~1,066
PCI-X 2.0 32/64 66~533 266~4,267
特点
  • 独立于CPU工作,PCI总线通过主桥路和处理器相连,因此通过改变主桥路,可与不同的处理器相连。
  • 突发传输模式,确保总线数据不断地处于满载状态。
  • 自动配置功能,每个PCI设备上都有256字节的配置空间支持;PCI设备的即插即用

突发传输是两设备之间不间断的连续数据传送。这种传输方式可以由某个地址起读、写大量数据,地址自动加1.

规范
  • PCI总线规范定义了5V和3.3V两种工作电源电压
  • 连接器有32位和64位两种
  • 5V的连接器用于3.3V时,需要旋转180度
  • PCI接口卡的金手指根据需要可设计成5V通用、5V/32位、5V/64位以及3.3V通用、3.3V/32位、3.3V/64位等多种形式
PCI系统结构
  • Host / PCI 桥(North Bridge) 连接主处理器和基础PCI总线的桥。
  • PCI / ISA 桥 (South Bridge) 连接基础PCI总线和ISA 总线的桥,通常包含中断控制器、IDE控制器、USB控制器和DMA控制器。
  • PCI / PCI 桥 连接基础PCI和扩展PCI的桥。在基础PCI总线或PCI插卡上,可连接或嵌入一个或多个PCI /PCI 桥。
PCI设备
  • PCI主设备:可通过总线仲裁获得PCI总线的使用权,主动地向其他PCI设备或者主存储器发起存储器读写请求
  • PCI从设备:被动地接收来自HOST主桥,或者其他PCI设备的读写请求
  • 桥设备:管理下游的PCI总线,并转发上下游总线之间的总线事务
PCI总线接口信号

线号类型

  • IN:表示输入信号
  • OUT:表示输出信号
  • T/S:表示双向三态I/O信号
  • S/T/S:表示持续的低电平有效的三态信号。
  • O/D:表示漏极开路,以线或方式允许多个设备共享
系统接口信号

CLK IN:

PCI系统总线时钟
最高33MHz/66MHz,最低0Hz
PCI大部分信号在CLK的上升沿有效

AD[31:00] T/S:

地址、数据多路复用信号
在FRAME#有效的第1个时钟,AD[31:00]上传送的是32位地址,称为地址期
在IRDY#和TRDY#同时有效时,AD[31:00]上传送的为32位数据,称为数据期

C/BE[3:0]# T/S:

总线命令和存储体选择(BANK ENABLE)复用信号。
地址期内表示总线命令;数据期内表示字节使能信号,指明AD[31:00]上哪些数据有效。

C/BE[3:0]# 命令类型说明 C/BE[3:0]# 命令类型说明
0000 中断应答(中断识别) 1000 保留
0001 特殊周期 1001 保留
0010 I/O读(从I/O口地址中读数据) 1010 配置读
0011 I/O写(从I/O口地址中写数据) 1011 配置写
0100 保留 1100 存储器多行读
0101 保留 1101 双地址周期
0110 存储器读(从内存空间映像中读数据) 1110 存储器读行
0111 存储器写(从内存空间映像中写数据) 1111 存储器写并无效

PAR T/S:针对AD[31:00]和C/BE[3:0]#进行奇偶校验的校验位

接口控制信号

FRAME# S/T/S:

帧周期信号
FRAME#信号无效→有效,表示一帧传输开始;
FRAME#有效的第1个时钟为地址期,其后为若干数据期;
FRAME#信号有效→无效,表示传输进入最后一个数据期。

STOP# S/T/S:从设备发出的要求主设备终止当前的数据传送的信号。
LOCK# S/T/S:锁定信号
IDSEL IN:初始化设备选择信号,访问配置空间的时候作为片选。
DEVSEL# S/T/S:设备选择信号,由常规访问期间被选中的从设备驱动。
IRDY# S/T/S:主设备准备好信号
TRDY# S/T/S:从设备准备好信号

仲裁接口信号

REQ# T/S:总线占用请求信号
GNT# T/S:总线占用允许信号

错误报告接口信号

PERR# S/T/S:数据奇偶校验错误报告信号
SERR# O/D:系统错误报告信号

中断接口信号

INTA#、INTB#、INTC#、INTD# :

4条中断线
电平触发
多功能设备可以任意选择一个或多个中断线,单功能设备只能用INTA#。

PCI地址空间
分类
  • 内存地址空间
  • I/O地址空间
  • 配置地址空间
    • 配置空间是PCI所特有的一个物理空间。由于PCI支持设备即插即用,所以PCI设备不占用固定的内存地址空间或I/O地址空间,而是由操作系统决定其映射的基址。
      • 所有的PCI设备必须实现配置空间,从而能够实现参数的自动配置,实现真正的即插即用。
    • 系统加电时,BIOS检测PCI总线,确定所有连接在PCI总线上的设备以及它们的配置要求,并进行系统配置。
      • 配置软件读取设备的配置寄存器(配置读操作总线周期);
      • 确定设备所需地址空间;
      • 分配中断以及主设备对总线的访问要求等。

PCI总线的每个设备都有自己的地址译码逻辑
支持正向、负向两种地址译码方式

  • 正向译码:每个设备都监视地址总线上访问地址是否落在它的地址范围内
  • 负向译码:未被其他设备在正向译码中接受的所有译码要等总线上其他所有设备都拒绝之后才能确定,总线上只能有一个设备采用此种方式。如标准扩展总线
PCI配置空间

一个物理PCI设备(简称设备)可能包含多个功能块(简称功能),每个功能均有一个配置空间,但(总线标准规定最多8个功能)共用一个IDSEL信号;
配置空间大小256B(64个双字),其中头区域大小64B。

设备识别信息:厂商、设备、版本、分类等

头标类型 设备
2 PCI-CardBus桥
1 PCI-PCI桥
0 除上述桥外的所有设备

设备控制信息: I/O访问、MEM访问、特殊周期、错误响应、等待周期等

设备状态信息:运行环境、错误标志、DEVSEL#时序等

基址寄存器:为简化设备配置过程、达到配置空间的映射与设备无关的目标而设计的。PCI设备最多申请6段32位地址区域空间。

  • 最大/最小存储映射地址空间:2GB(231) ~ 16B
  • 最大/最小I/O映射地址空间:256B ~ 4B

基址寄存器的值=FFF00000h

  • 位0=0,表示是一个存储器地址空间映射
  • 位[2:1]=00b,它使能32位存储器映射
  • 位3=0,表示它不是预取存储器。
  • 位[31:4]第一个为1的是位20,表示映射的存储空间为1MB=220。表示存储映射的基地址应该起始于1MB、2MB、3MB等的边界上。

系统经过权衡后再向该基址寄存器写入实际映射的空间基址(低20位为0,写入12位到[31:20]位)

基址寄存器的值=FFFFFF01h

  • 位0=1,表示是一个I/O地址空间映射
  • 位[31:2],第一个为1的是位8,表示映射的I/O空间为256。表示I/O地址映射的基地址应该起始于256的整数倍。
配置空间访问的实现方法

Intel x86不能对配置空间寄存器直接读/写

配置机构(PCI协议规定):将处理器发出的I/O访问转换为配置访问的转换机构。

  • 配置机构实现方法:用两个特定的32位I/O端口对应两个配置寄存器。
    • 配置地址端口寄存器 ( I/O地址为0CF8H~0CFBH)
    • 配置数据端口寄存器(I/O地址为0CFCH~0CFFH)

配置操作实现步骤

  1. 将要访问的总线号、设备号、功能号和双字地址写到配置地址端口寄存器。
  2. 执行一次对配置数据端口寄存器的I/O访问。

配置地址信息格式

例子:读PCI总线的1号扩展槽(设备号)2号功能设备的厂商标志(寄存器号)

MOV DX,0CF8H
MOV EAX, 80000A00H  //1 0000000 00000000 00001 010 000000 00
OUT DX,EAX
MOV DX,0CFCH
IN  EAX,DX

例子:给总线号为7的PCI总线的4号扩展槽 0号功能设备的基址寄存器4分配8个I/O地址空间。(写)

MOV DX,0CF8H
MOV EAX, 80072010H  //1 0000000 00000111 00100 000 000100 00
OUT DX,EAX
MOV DX,0CFCH
MOV EAX, FFFFFFF9H  //1111 1111 1111 1111 1111 1111 1111 1001
OUT DX, EAX

PCI-Express

简称PCI-E,或PCIe,是PCI总线的发展,与PCI的主要不同是物理连接不同

  • 通信模型及程序方法采用分层协议
  • 双向的1位串行差分对的点对点物理传输机制
  • 可以以类似模块化的模式扩展
  • 采用多个串行差分对并行工作以提高传输带宽,由1、2、4、8、16、32个差分对构成的PCI-E分别被称为PCI-E ×1、×2、×4、×8、×16、×32标准

与PCI总线的寻址方式兼容

  • 将PCI的配置空间从256B扩大到4KB,原有PCI设备的驱动程序可运行
  • 提供了一个新的信息地址空间,这可以使PCI Express设备相互交换信息
技术特点
  • 串行差分传输:PCI Express总线采用高速串行差分点对点物理连接,大幅度减少引脚,同时提高传输速度;
  • 时钟植入同步技术:省略同步时钟信号,将8位数据转化为10位(8b/10b编码同步)后自带同步信息(3.0版除外);
  • 可变的传输速率:可以根据所连接的硬件设备的不同,使用不同的频率与其通信;
  • 连接灵活: PCI Express总线可以“走出机箱”。 PCI Express可以如同现在的USB一样作为计算机接口同设备进行连接;
  • 热拔插:它还具有高级电源管理和监视功能,这样所有的PCI Express设备都会支持热插拔;
  • 纠错:PCI Express具备循环冗余校验能力,可以实现传输纠错。
系统结构

PCI-Express从下到上分别为:物理层(Physical Layer)、数据链路层(Link Layer)、处理层(Transaction Layer,事务处理层)和软件层(Software Layer)。

处理层
  • 作用:接收从软件层送来的读、写请求,建立一个请求包传送到数据链路层。处理层同时接收从数据链路层传来的响应包,并与原始的软件请求关联。
  • 结构:包括4个地址空间,其中3个是PCI接口原有的,如内存、I/O和配置地址空间,另外一个是PCI Express接口新增加的,它就是信息空间。
数据链路层
  • 作用:确保数据包的完整性,确保数据包可靠、正确地传输。它在数据包前添加序列号和在数据包后添加冗余校验码。
物理层
  • 作用:决定总线接口的物理特性,如点对点串行连接、差分信号驱动、热拨插、可配置带宽等。使用信号的跳变来同步,不需要使用单独的同步时钟信号。
系统硬件

包括根组件(Root Complex)、交换器(Switch)和PCIE-PCI桥各种终端设备。

  • 根组件可以集成在存储控制中心(MCH)芯片中,用于处理器和内存子系统与I/O设备之间的连接。
  • 新增交换器(Switch),取代PCI架构中的I/O桥接器,用来连接各种设备或PCI Express扩展插槽。交换器可以提供2个或多个端口,每个端口可以连接一个PCI Express设备,实现多个设备的互连。
    • 而从系统软件的角度上看,Switch内部由多个PCI-to-PCI桥组成,其中每一个上游和下游端口都对应一个虚拟PCI桥。在一个Switch中有多个端口,在其内部就有多少个虚拟PCI桥,就有多少个PCI桥配置空间。值得注意的是,在Switch内部还具有一条虚拟的PCI总线,用于连接各个虚拟PCI桥,系统软件在初始化Switch时,需要为这条虚拟PCI总线编号。

USB总线

特点
  • 速度快:USB 1.1传输速率12Mbps,USB 2.0传输速率480Mbps
  • 连接简单快捷:直接连接,无需关机、重新启动、打开机箱等操作
  • 无需外接电源:USB提供内置电源,能向低压设备提供5V的电源
  • 支持多连接:USB支持多设备连接,
  • 良好的兼容性:USB接口标准有良好的向下兼容性
  • 低功耗
概述
  • USB总线:由VCC、GND、D+、D-四根线组成,D+和D-通过差分方式作为一根数据线(半双工)使用
  • USB事务:USB总线上最基本的一次数据交换操作
  • USB逻辑地址:逻辑地址不通过连线实现;每个USB集线器和USB设备(不连接到PCI总线),均不占用I/O地址空间(无I/O地址),只具有一个惟一的USB逻辑地址(USB系统自动配置所分配);
  • USB端口:连接USB总线的连接器;
  • USB端点:集线器或设备的内部寄存器(仿照I/O端口起名,又要与USB端口区分),编号在0~15之间。
系统结构

树型结构,最多可连接127个设备

系统硬件
USB主控制器/根集线器

主控制器(Host Ctrl):

  • 连接到PCI总线,可作为主设备通过PCI总线直接与MEM交换数据;
  • 功能:实现并-串转换、创建USB事务、管理USB事务传输过程(在根集线器与主机MEM间传递结果)。
  • 占用一定数量I/O地址空间,受CPU控制。

根集线器(Root Hub):

  • 连接到主控制器
  • 功能:控制USB端口电源、启用/禁止USB端口、识别连接的设备、设置和报告端口的状态等。
  • 只占用一个USB逻辑地址,受主控制器控制。
USB集线器(USB Hub)
  • 由控制器和中继器组成,最多支持4个USB端口;可集成在USB设备内部,不作为独立硬件出现;有高速(支持USB2.0)和全速(USB1.x)2种类型;
  • 每个USB HUB占用一个USB逻辑地址;具有一定数量(≤16)的USB端点。
USB设备
  • 可分为HUB设备(USB集线器)和功能设备两种。
    • 功能设备类型:有高速、全速或低速三种类型。
  • 每个USB设备占用一个USB逻辑地址;具有一定数量(≤16)的USB端点。
系统软件
USB设备驱动程序

将某用户操作请求转换成几个IRP(I/O请求包),以IRP形式送给USB驱动程序。

USB驱动程序
  • 功能:将I/O系统的操作转换成USB系统的操作;
  • 实现:根据USB设备特性、IRP类型等特征,将IRP组织(转换)成几个USB事务(用USB事务的传输描述符表示),送给USB主控制器驱动程序。
  • 传输描述符:包括USB设备地址、USB事务类型(I/O/S等)、传输数据大小、处理速度(传输速度)、内存缓冲区位置等
USB主控制器驱动程序

将这些USB事务调度到一系列事务列表中;USB主控制器定时读取一个列表信息并执行。

  • 调度思想:各USB设备在一定时长内得到服务的机会均等。

  • 调度方法:

    • 一定时长:USB 1.x为1ms,USB 2.0为125μs;该时长称为帧/微帧

      • 通信帧(定长):由帧开始包和若干事务的包组成。

    • 机会均等:一定时长内的事务可为不同设备的事务,即各事务占时有限(1个IRP→多个USB事务的原因)。

  • 调度依据:设备速度和事务类型、已等待事务类型和数量等。

运作方式

USB包

USB事务的执行通过包交换(一次传输)完成。一个USB事务由1~3个USB包组成,包的数量由传输类型决定。

一般格式

所有信息段(CRC除外)均是从低位→高位发送

  • SYNC:同步序列,并行数据为10000000
  • PID:包分类码,由PID类型码及其反码组成,顺序如下
    • PID0、PID1、PID2、PID3、PID0#、PID1#、PID2#、PID3#

标志包

  • 类型:帧开始包、接收包、发送包、设置包。
  • 发送方:主机(主控制器)。
PID名称 PID[3:0] 描述
OUT 0001b 具有PID、类型检查、设备地址、端点号和CRC域的宿主到功能设备的发送包
IN 1001b 功能设备到宿主的接收包,具有和发送包一样的域
SOF 0101b 帧开始包
SETUP 1101b 主机发给设备的设置包,用于控制传输的设置

数据包

  • 发送方:主机或设备。
PID名称 PID[3:0] 描述
DATA0 0011b 数据包0
DATA1 1011b 数据包1
DATA2 0111b 在微帧中高速、高带宽的等时交换的数据包
MDATA 1111b 为分离的高速和高带宽等时交换中的数据包

握手包

  • 发送方:主机或设备,即数据的接收方发送。
PID名称 PID[3:0] 描述
ACK 0010b 接收设备发的接受数据正确的应答包
NAK 1010b 接收设备无法接受数据或没有数据返回个宿主
STALL 1110b 设备已经被挂起,需要主机插手解决故障
NYET 0110b 接收器无应答

特殊包

  • 发送方:主机。
  • 包格式:与握手包相同,PID不同。
PID名称 PID[3:0] 描述
PRE 1100b (Token)预告包,预告将以低速方式与低速设备通信
ERR 1100b (Handshake)分离交换错误的握手信号
SPLIT 1000b 高速分离交换标志
PING 0100b 为批或控制端点传输而设置的高速流控制探测
Reserved 0000b 保留

作业

一、简答题

1. XT总线与ISA 比较?

答:

  • XT总线是将8088 CPU的引脚经过8282锁存器、8286发送接收器、8288总线控制器、8259中断控制器、8237DMA控制器以及其他逻辑电路的重新驱动和组合控制而形成的。总线信号线共62条:8条双向数据线D7~D0、20条单向地址线A19~A0、相关控制线与4种电源(±5V、±12V)共8条线。主要总线信号有地址信号、数据总线信号、控制总线信号。
  • ISA总线插槽由基本的62线8位插槽和扩展的36线插槽两部分组成,其62线功能与XT总线相似。它具有1K字节的I/O地址空间(0000H~03FFH)、24位存储器地址、8位或16位数据存取、15级硬件中断、7级DMA通道,可产生I/O等待状态。它是一种多主控总线,除主CPU外,DMA控制器、DRAM刷新控制器和带处理器的智能接口控制卡都可以成为ISA总线的主控设备,支持8种类型的总线周期,分别是:8位或16位的存储器读周期、8位或16位的存储器写周期、8位或16位的I/O读周期、8位或16位的I/O写周期、中断请求和中断响应周期、DMA 周期、存储器刷新周期、总线仲裁周期。扩展的32线里:
    • 增加的LA17~LA23这7根地址线可提高数据传输率
    • 原XT总线上的-MEMR和-MEMW定义为-SMEMR和-SMEMW。只有当存储器的地址译码信号低于1MB的存储空间时,这两个信号才会有效。-MEMR和-MEMW ,ISA新增的信号,在所有的存储器读或写周期内有效

2.PCI总线支持在PC机与存储器或I/O接口之间以数据传输的速率是多少?

答:对于标准的66MHz时钟(66.6MHz),峰值传输速率为264 MBytes/s(266MBytes/s)

3.什么是“即插即用”? PCI总线系统上的C/BE#线的用途是什么?

答:

  • “即插即用”即在系统加电时,BIOS检测PCI总线,能确定所有连接在PCI总线上的设备以及它们的配置要求,并自动进行系统配置。PCI设备依靠其配置空间实现。
  • C/BE#线是总线命令和存储体选择(BANK ENABLE)复用信号,地址期内表示总线命令,数据期内表示字节使能信号,指明AD[31:00]上哪些数据有效。

4.PCI总线怎样的信号组合启动一个总线的访问周期,又怎样结束一个访问周期?它的AD0~AD31同CPU的同名引脚有何不同?

答:

  • PCI总线启动与结束:
    • PCI总线上的主设备总线使用权后,将FRAME#置为有效,表示一个总线周期的开始。
    • 主设备发出都最后一组数据的命令后,FRAME#信号置为无效,表示数据传输即将结束。传送最后一组数据后主设备撤销IRDY#信号 ,从设备撤销TRDY#和DEVSEL#信号,一次PCI传输结束。
  • PCI总线信号独立于CPU,使用独立的时钟信号。
    • CPU是PCI的使用设备之一,在CPU通过PCI总线访问设备时,CPU发出的地址信号经过Host-PCI桥缓冲后,按照PCI的时序周期发送到PCI总线中。
    • 进行DMA传输时,PCI总线上AD0-AD31上的数据来源于DMA控制器。

二、选择题

1.CPU在执行IN AL,DX指令时,DX的内容输出到(D)。

A.地址总线 B.数据总线 C.存储器 D.寄存器

2.USB是一种(A)

A.通用的串行总线接口 B.通用的并行总线接口 C.新型的微机内部总线 D.新外设标准插头

3.PCI的含义是(A)

A.局部总线 B.系统总线 C.外围元件互联 D.图形加速器

4.如果按层次结构分类,微机系统中的总线可分为(C)

A.地址总线,数据总线,控制总线 B.PCI总线,AGP总线,USB总线 C.CPU内部总线,局部总线,系统总线,通信总线 D.CPU内部总线,系统总线,外设总线

5.计算机系统总线中,可用于传送读、写控制信号的是(C)

A.地址总线 B.数据总线 C.控制总线 D.通信总线

6.PCI总线的宽度为(BC)位(多选)

A.16 B.32 C.64 D.8

三、填空题

地址总线用AB表示,数据总线用DB表示,控制总线用CB表示。

四、主观题

如果工作频率为16MHZ,总线位宽为32位,最大传输速率是多少?

答:16MHz × 32位 / 8 = 64 MBPS

posted @ 2020-10-03 18:00  若水茗心  阅读(1476)  评论(0编辑  收藏  举报