第一章计算机通信接口概述第一节PC的总线结构和I/O接口方框图CPU地址总线(AB)RAMI/O接口I/O设备ROM数据总线(DB)控制总线(CB)1.计算机系统的组成:中央处理器(CPU)、存储器、输入输出系统2.计算机系统的标准结构:总线结构3.计算机的三总线结构:地址总线、数据总线、控制总线8255、8250、82518253、8259键盘、打印机显示器、软硬盘A/D、D/A等4.总线结构的优点:(1)简化了软、硬件的设计(2)简化了系统结构(3)便于系统的扩展和更新5.I/O接口(1)定义:接口是CPU与“外部世界”的连接电路,负责“中转”各种信息。(2)组成:总线连接逻辑、I/O端口(3)总线连接逻辑包括:I/O端口寻址逻辑、信号(如读、写)转换逻辑、缓冲逻辑(4)I/O端口信号类型:数据、输入状态、输出控制(5)I/O端口方向:输入端口、输出端口、双向端口CPU接口电路I/O设备数据DB控制信号CB状态信号可能是单向的AB总线连接逻辑I/O端口常见接口插槽PS2鼠标PS2键盘千兆网10/100M网卡USB并行口MIDI/游戏接口显示器接口13941394a麦克风/音箱/线入接口串行口1.输入口:CPU接口电路外设(1)逻辑电路:DB0~7(数据总线)、PSn(由地址总线译码产生)、IOR(控制总线、相同的)(2)对输入口电路的要求:执行输入指令时,才把数据送到总线上,平时不能对总线有任何影响,所以通过三态门(三态缓冲器)接在总线上。(3)工作过程分析:A.说明电路连接情况B.不交换数据时,PS和IOR均为高电平,三态门呈高阻态,端口数据对总线无影响C.输入数据时PS和IOR有效,三态门被使能,数据送到总线上第二节输入口和输出口(与图1-2-1一致)2.输出口:CPU接口电路外设(1)对输出口电路的要求:由于CPU向总线输出数据的时间很短(少于1us),而外设需要数据的持续时间比较长,所以输出口要有保持数据的功能,用锁存器即可。(2)逻辑电路:DB0~7、PSn(由地址总线译码产生)、IOW(相同的)(3)工作过程分析:A.说明电路连接情况B.执行输出指令时,PS和IOW由无效变为有效,在CLK引脚产生上升沿,总线数据被锁存到锁存器的输出端1.概念:时钟周期、总线周期和指令周期每两个时钟脉冲上升(下降)沿之间的时间间隔称为T状态,也称为时钟周期(ClockCycle)TCPU与存储器或输入/输出端口进行一次数据交换所花费的时间称为一个总线周期(BusCycle)对于8088CPU,它的总线周期是其与存储器或输入/输出端口存取一个字节所花费的时间。执行一条指令所需要的时间称为指令周期(InstructionCycle)第三节I/O端口操作时序2.I/O端口读周期时序(PC/XT机)(1)包含5个时钟周期(2)指令:IN(3)解释工作过程3.I/O端口写周期时序(PC/XT机)(1)包含5个时钟周期(2)指令:OUT(3)解释工作过程4.结论:接口设计必须满足工作时序的要求。第四节I/O编址与访问1.I/O端口相关概念(1)I/O端口I/O端口是供CPU直接存取访问的接口中的寄存器或电路。接口中的命令口、状态口和数据口均为I/O端口。(2)I/O端口地址是对接口中的不同寄存器或电路的编号,该编号加上该接口的基地址称为该端口的I/O端口地址。CPU通过向命令端口发命令来对接口,最终对设备进行控制。访问设备实际上是访问相关的端口。(3)命令、接口与I/O端口关系一个接口中有多个I/O端口;一个I/O端口可接受多种命令,对应多个寄存器。2.I/O端口编址(1)存储器映象I/O编址(I/O统一编址)一个I/O端口等同于一个存储器单元。存储单元和I/O端口统一编址。优点:对I/O端口的访问命令与对存储器单元访问相同,不必使用专用I/O指令;外设数目或I/O寄存器数几乎不受限制。系统读写控制逻辑较简单。缺点:I/O端口占用部分MEM空间,可用MEM空间减小;对MEM访问指令较长,执行速度较慢;I/O端口地址译码时间较长。MEM空间I/O空间N-1KK-10存储类指令应用:Motorola系列和Apple系列均采用此方式(2)隔离I/O编址(I/O独立编址)I/O端口地址空间与存储器地址空间相互独立。应用:Z-80系列和x86系列均采用此方式。优点:MEM地址空间不受I/O端口地址空间影响;I/O端口数量不多,占用地址线少,地址译码简单,速度较快,使得此类指令执行速度快;使用专用I/O命令(IN/OUT),与MEM访问命令(LOAD/STORE、MOV)有明显区别,便于理解和检查。MEMI/O设备N-10存储类指令I/O类指令K-10缺点:专用I/O指令增加指令系统复杂性,且I/O指令类型少,寻址方式也少,程序设计灵活性较差;要求处理器提供MEMR/MEMW和IOR/IOW两组控制信号,增加了控制逻辑的复杂性。3.PC系列I/O端口访问(2)I/O端口地址寻址方式I/O端口支持直接寻址和间接寻址方式。直接寻址是使用一字节立即数寻址,端口寻址范围为00H~FFH共256个。间接寻址是使用DX寄存器间接给出I/O端口地址,可寻址的范围是0000H~FFFFH共64K个端口。(1)I/O端口地址空间I/O端口地址空间:理论上有64K个独立编址的8位端口空间。两个连续8位端口可作为16位端口,4个连续的8位端口可作为32位端口处理。注意端口地址对齐。I/O端口地址信号:借用地址线信号和IOW/IOR信号线以及表示DMA正在工作的AEN的反相信号组成。(4)I/O端口与存储器间I/O指令——块I/O指令格式:INSB/W/D、OUTSB/W/D。参数:用DX指定I/O端口地址,输入/输出时的目的/源RAM地址用ES:DI(EDI)/DS:SI(ESI)指定。EFLAG寄存器中DF位来决定地址加和减。结果:通过前缀REP在I/O端口和连续的存储器空间之间传送数据。(3)I/O端口与累加器间I/O指令——寄存器I/O指令格式:IN、OUT。结果:完成I/O端口和EAX、AX、AL之间的数据传送,可使用直接寻址和间接寻址方式。举例:movdx,3fdhmoval,36hinal,dxout43h,al第五节输入输出控制方式1.程序控制I/O(1)无条件传送方式特点:I时假设外设已准备好,O时假设外设空闲。要求:接口I时加缓冲器,O时加锁存器。应用:对简单外设的操作。(2)条件传送方式(查询方式)工作原理:CPU查询外设已准备好后,才传送数据。特点:CPU与外设间自然同步。要求:需要增加表示外部设备状态的简单硬件电路。应用:适用在CPU不太忙且传送速度要求不高时。2.中断传送方式特点:CPU与外设可同时工作。要求:接口中需要中断控制逻辑支持。应用:适用与非高速度大量数据传送时。3.直接存储器存取(DMA)方式特点:数据的传送不经过CPU而由DMA负责,但I/O设备管理由CPU控制,简化CPU对I/O的控制。(见P9.图1-5-4)要求:需要DMA控制器及相关逻辑支持。应用:适用与高速度大量数据传送时。(如:软盘、硬盘数据传输)1.根据通信的方向,通信分为:(1)单工通信:单向通信(2)半双工通信:交替双向通信(3)全双工通信:同时双向通信2.根据能同时传输的数据位数,通信分为:(1)并行通信(2)串行通信第七节(自学:了解)第六节计算机通信的基本概念补充:汇编语言程序设计基础6.8086/8088微处理器AHALBHBLCHCLDHDLSPBPDISI通用寄存器AXBXCXDXALU数据总线(16位)运算寄存器ALU标志寄存器EU控制系统执行单元EU∑CSDSSSESIP内部暂存器123456数据总线8088:8位8086:16位总线控制逻辑地址总线20位指令队列80888086Q总线(8位)指令指针段寄存器外部总线总线接口单元BIU7.8086/8088引脚信号