• 【接口技术】总线


    【接口】

    接口概念:若干个端口 + 控制逻辑电路

    端口:接口电路中可读/写的寄存器,传送数据信息、控制信息和状态信息

    输入数据 —— I/O设备的状态信息

    输出数据 —— 控制信息

    接口的三大端口:数据端口(存放数据信息)、控制端口(存放控制命令)、状态端口(存放状态信息)

    输入指令(IN):读出端口信息

    输出指令(OUT):信息写入端口

    状态端口只进行输入,对命令端口只进行输出

    IN/OUT —— CPU和接口之间传输

    MOV —— CPU内部,或CPU和内存之间传输

    接口设计过程:

    1. 分析接口两侧情况
    2. 合理选择接口芯片
    3. 正确分析相关芯片的时序搭配
    4. 进行正确的信号转换(数模、串并)
    5. 接口驱动程序的分析与编写

    【微型计算机总线】总线标准、总线指标、总线分类(XT、ISA、PCI、PCI-E)

    总线:

    一组传输公共信号线的集合,传输地址、数据和控制信号,由一组导线和相关的控制(协议)驱动电路组成

    主板上的印制电路线将各插槽的相应点连接起来,即为总线

    总线标准:芯片之间、扩展卡之间和系统之间,通过总线进行连接和传输时,应该遵守的协议与规范

    接口标准:外设接口的规范,包括接口信号线定义、信号传输速率、信号传输方向和拓扑结构、电气特性和机械特性等

    总线与接口的区别:

    1. 总线标准为公用性;接口标准大多为专用性
    2. 总线以总线扩展槽形式供用;接口以接口插座(插头)形式供用
    3. 总线并行;接口串、并均有
    4. 总线信号线多且齐全,有分离的控制总线、数据线和地址线;接口信号线少且不齐全,共用控制线、数据线和地址线

    总线串行化趋势,使总线和接口难以区分

    总线特性:

    1. 物理特性:物理连接方式
    2. 功能特性:每一根线的功能
    3. 电气特性:每一根线上信号的传递方向和有效电平范围,IN和OUT
    4. 时间特性:每一根线何时有效

    总线主要性能参数:

    1. 总线频率:工作频率(MHz)是总线频率的主要参数
    2. 总线宽度:数据总线的位宽
    3. 总线数据传输率:总线频率 * (总线宽度 / 8位)

    总线分类:

    划分标准

    划分结果

    总线结构

    单总线;双总线;三总线

    功能和信号传输类型

    数据传送线;仲裁总线;中断和同步线;公用线

    总线层次

    CPU总线(内部总线);局部总线;系统总线(I/O总线);通信总线(外部总线)

    数据传送线:地址总线(单向) + 控制总线 + 数据总线(双向)

    总线标准:

    制定组织:IEEE、IEC、ITU、ANSI

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

    总线输出驱动能力,总线输入影响插件板

    增加总线负载能力的方法:在总线和负载之间加缓冲器或驱动器(驱动 + 隔离)

    【XT总线】

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

    总线信号线安排:共62条

    双向数据线8条:D7——D0

    单向地址线20条:A19——A0

    ·执行一条I/O指令的过程?

    指令周期:由1个或若干个总线周期组成

    总线周期:CPU通过总线与外部进行传输所需的时间

    时钟周期:CPU的时间基准

    ·IN AL, DX


        ·DX中的信息是选择的端口,然后把端口中的数据送入AL中

    ·与XT总线连接,需要哪些信号线?

    1. 地址信号线A15——A0
    2. 数据信号线D7——D0
    3. 控制信号线 -IOR、-IOW、AEN

    【ISA 总线】

    工业标准体系结构,Industry Standard Architecture

    ISA插槽:基本的62线8位插槽 + 扩展的36线插槽


    ISA信号:

    数据线 D0——D15

    低位地址线 A0——A19

    高位地址线 LA17——LA23

    地址锁存允许信号(输出) ALE

    中断请求信号(输入) IRQ2——IRQ7、IRQ10——IRQ14

    地址使能信号(输出) AEN :高电平表示DMA周期,CPU控制总线时保持低电平

    【PCI总线】

    外围部件互连总线,Peripheral Component Interconnect

    PCI特点:

    1. 突发传输模式
    2. 独立于CPU工作(通过主桥路和处理器相连)
    3. 自动配置功能(256字节的配置空间支持,即插即用)

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

    主桥路:北桥Host/PCI、南桥PCI/ISA、PCI/PCI桥

    PCI插槽和扩展卡:

    工作电源电压:5V 或 3.3V

    连接器:32位 或 64位

    5V的连接器用于3.3V时,需要旋转180度

    PCI总线接口信号:

    地址期:FRAME# 有效的第一个时钟周期

    数据期:IRDY#、TRDY# 同时有效的时钟周期

    PCI地址空间:

    三种独立的地址空间:内存地址空间、I/O地址空间、配置地址空间

    地址译码方式:正向/反向

    PCI配置空间:

    ·一个物理PCI设备可能包含多个功能块

    ·一个设备的所有功能(总线标准规定最多8个功能)共用一个IDSEL信号

    ·每个功能均有一个配置空间

    配置空间大小256B(64个双字),头区域64B(如下图)


    ·基址寄存器,地址空间分配:

    I/O空间分配(最大2^8=256字节,最小2^2=4字节)

    存储空间分配(最大2^31=2GB,最小2^4=16字节)

    基地址寄存器占用24B的头标区空间,最多容纳6个4B的基地址寄存器,所以PCI设备最多申请6段32位地址区域空间

    配置空间访问的实现方法:

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

    配置机构实现方法:用两个特定的32位I/O端口对应两个配置寄存器

    ·配置地址端口寄存器(I/O地址为0CF8H~0CFBH)

    ·配置数据端口寄存器(I/O地址为0CFCH~0CFFH)

    (开头是字母,则加一个0进行区别)

    配置地址信息格式:第31位“使能位”用来决定是否允许访问配置空间,第0、1位上的“0”用来要求只能按双字(4字节)来读写配置空间寄存器

    配置操作实现步骤:

    1. 访问的地址(如图)写入配置地址端口寄存器
    2. 执行一次对配置数据端口寄存器的I/O访问

    读操作

    写操作

    MOV DX, OCF8H

    MOV DX, OCF8H

    MOV EAX, 配置地址

    MOV EAX, 配置地址

    OUT DX, EAX

    OUT DX, EAX

    MOV DX, OCFCH

    MOV DX, OCFCH

    IN EAX, DX

    MOV EAX, 空间分配

    OUT DX, EAX

    配置空间访问的类型(PCI-PCI桥):
    ·0类配置请求:AD[1:0]=00,访问当前PCI总线(本地)上的目标寄存器


    ·1类配置请求:AD[1:0]=01,访问下一级PCI总线上的目标设备

    目标PCI桥处理:

     ·总线号为本PCI桥下:将AD[1∶0]改为00,将AD[31∶0]传给桥下总线进行0类配置访问

    ·总线号属于本PCI桥下总线的下级总线范围:将AD[31∶0]传给桥下总线进行1类配置访问

    【PCI-Express】

    PCI-E与PCI的不同:物理连接不同,通信模型及程序方法采用分层协议

    PCI-E基于双向的1位串行差分对的点对点物理传输机制

    由1、2、4、8、16、32个差分对构成的PCI-E分别为PCI-E ×1、×2、×4、×8、×16、×32标准

    【USB总线】

    Universal Serial Bus

    特点:速度快、连接简单快捷、无需外接电源、支持多连接、兼容性良好、功耗低

    USB系统的连接模式:树型结构,最多可连127个设备

    USB系统的硬件:

    1. 主控制器/根集线器(Host Ctrl/Root Hub):前者连接到PCI总线,占用一定I/O地址空间,受CPU控制;后者连接到主控制器,只占1个USB逻辑地址,受主控制器控制
    2. USB集线器(USB Hub):由控制器、中继器组成,最多支持4个USB端口;每个USB Hub占用1个USB逻辑地址
    3. USB设备:功能设备类型分为高速、全速、低速;每个USB设备占用1个USB逻辑地址

    其他概念:

    1. USB总线:由VCC、GND、D+、D-组成,共4根线,D+和D-通过差分半双工使用
    2. USB事务:USB总线上最基本的一次数据交换操作
    3. USB逻辑地址:不通过连线实现,USB系统自动配置所分配
    4. USB端口:连接USB总结的连接器
    5. USB端点:集线器或设备的内部寄存器,编号0—15

    USB系统软件:

    1. USB设备驱动程序:将某用户操作请求转换成几个IRP(I/O请求包),并送给USB驱动程序
    2. USB驱动程序:将IRP转换成几个USB事务,并送给USB主控制器驱动程序
    3. USB主控制器驱动程序:将USB事务调度到一系列事务列表中,USB主控制器定时读取一个列表信息并执行

    USB交换的包格式:

    ·USB事务的执行通过包交换(一次传输)完成

    ·一个USB事务由1~3个USB包组成,包的数量由传输类型决定

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

  • 相关阅读:
    数说故事以领先的大数据分析及服务实践,实力入围「Cloud 100 China 2022」首届榜单
    将base64格式的图片画到canvas上(js和vue两种)
    【微服务 SpringCloud】实用篇 · Ribbon负载均衡
    百亿规模京东实时浏览记录系统的设计与实现
    linux 系统启动过程
    阿里 Java 程序员进阶笔记!计算机基础 +OS+ 算法数据结构
    以太网帧间隙IFG详解(Interframe Gap帧间距)
    JAVA生成RSA公私钥对代码记录
    Unity UGUI(二)核心组件
    python中NAN与INF
  • 原文地址:https://blog.csdn.net/m0_65787507/article/details/133560537