微机原理与接口技术第7章_2,IO接口和总线

五 I O译码电路和PC机的I O地址分配 1 译码电路的作用2 译码电路的构成3 设计译码电路的方法4 片内译码和片选译码5 PC机的I O端口地址分配 将CPU执行IN OUT指令发出的地址信号 翻译 成欲操作端口的选通信号 1 译码电路的作用 该电路在CPU执行指令MOVDX 200HINAL DX将输入设备的数据读入CPU内AL中思考 其他的指令为什么不可以 图中译码电路的作用 只当A15 A0上出现200H时 即0000001000000000B 输出0 其他输出1 例 一个输入设备的简单接口电路 三态缓冲器 输入设备 数据线 IOR 地址译码 地址线 200H 0 0 0 D7 D0 A15 A0 与非 PC总线 该电路在CPU执行指令MOVDX 300HOUTDX AL将CPU内AL中的数据送至输出设备思考 其他的指令为什么不可以 图中译码电路的作用 只当A15 A0上出现300H时 即0000001100000000B 输出0 其他输出1 例 一个输出设备的简单接口电路 PC总线 锁存器 输出设备 数据线 IOW 地址译码 地址线 300H 0 0 0 D7 D0 A15 A0 与非 74LS138译码器 可用门电路 译码器或者两者的组合实现 门电路 与门 非门 或门 与非门 或非门等译码器 2 4线译码器74LS1393 8线译码器74LS138 2 译码电路的构成 3 设计译码电路的方法 由端口地址确定地址信号A15 A0的取值 用门电路 译码器或两者组合实现满足此取值情况的电路 设计译码电路时 1 端口的选通信号通常为低电平有效 2 除端口的地址信号参加译码外 控制信号IOW IOR AEN也可参加译码 译码电路 A0A1A14A15IORIOWAEN 译码电路示意图 当端口地址信号为 A9A8A7A6A5A4A3A2A1A01000011000即 218H时 Y0输出0 使I O接口的CS有效 219H21AH21BH21CH21DH21EH21FH 218H 74LS1383 8译码器 AY0BY1CY2G1Y3Y4G2AY5Y6G2BY7 0110000100 端口译码电路 A0A1A2AENA3A4A5A6A7A8A9IORIOW PC总线 片内译码 在芯片内部的译码电路用于区分芯片内部不同的端口片选译码 在芯片外部的译码电路用于选择不同的芯片或端口 4 片内译码和片选译码 结论 200 207h208 20Fh210 217h218 21Fh220 227h228 22Fh230 237h238 24Fh 74LS1383 8译码器 AY0BY1CY2G1Y3Y4G2AY5Y6G2BY7 00010 A3A4A5 5VA6A7A8A9AENIORIOW PC总线 端口译码电路 教材P259例 I O端口译码电路举例 1514131211109876543210地址范围 H 1100000000000 C000 C0071100000000001 C008 C00F1100000000010 C010 C0171100000000011 C018 C01F1100000000101 C020 C0271100000000101 C028 C02F1100000000110 C030 C0371100000000111 C038 C03F I O译码电路的端口地址分配表 5 PC机的I O端口地址分配 A9A8A7A6A5 G1G2AG2BCBA AEN WRTDMAPG 写DMA页面寄存器 PPICS 8255A WRTNMIREG 写DMA页面寄存器 74LS138 PC XT机的系统板地址分配表 使用低10位地址 系统板A9 0 参见教材P261表7 3 总线是用来连接各部件的一组通信线 是一种在多于两个模块 设备或子系统 间传送信息的公共通路 为在各模块之间实现信息共享和交换 总线由传送信息的物理介质以及一套管理信息传输的协议所构成 采用总线结构有两个优点 一是各部件可通过总线交换信息 相互之间不必直接连线 减少了传输线的根数 从而提高了微机的可靠性 二是在扩展微机功能时 只需把要扩展的部件接到总线上即可 使功能扩展十分方便 7 2总线一 总线的概念 微机总线分类 1 片级总线 又称芯片总线 或元件级总线 是芯片内部通过引脚引出的总线 2 系统总线 又称内总线 或板级总线 微机总线 是用于微机系统中各插件之间信息传输的通路 3 外部总线 又称通信总线 是微机系统之间或微机系统与其他系统之间信息传输的通路 各种标准总线都在信号系统 电气特性 机械特性及模板结构等多方面做了规范定义 如 标准系统总线 IBMPC机的62芯PC总线 PCI总线标准外部总线 IEEE 488总线 EIARS 232总线 总线的性能指标总线宽度数据总线的位数 如8伟 16位 32位 64位等 总线越宽 传输速度就越快 即数据吞吐量就越大 总线传输速率在总线上每秒传输的最大字节数 MB s 或比特数 Mb s 总线的时钟频率总线工作频率 是影响总线传输速率的主要因素之一 如 ISA 8MHz PCI 0 33MHz 等 PC机在主板上设置一些标准扩展插槽 用来扩充PC机功能 这些插槽统称为PC总线 又称为I O通道 共有62条引线 系统板上有8个总线扩展槽J1 J8 用途 配置外部I O适配器扩充存储器 二 IBMPC总线 PC总线引脚图 PC XT是最早的PC机中用的8位总线 总线信号为62条 有A B两面插槽 双边镀金接点 A面31线 元件面 B面31线 焊接面 无元件面 20位地址线 寻址1MB空间 数据总线宽度 8位 I O地址空间0100H 03FFH 总线工作频率4MHz 数据传输率4MB s 仲裁方式 集中仲裁 中断功能 8级 DMA通道功能 4个 62根总线按功能可分为四类 第一类 电源线8根 5V的2根 5V的1根 12V的1根 12V的1根及地线3根 第二类 数据总线8根 第三类 地址总线20根 第四类 控制总线26根 1 数据总线D7 D0共8条 是双向数据传送线 为CPU 存储器及I O设备间提供信息传送通道 2 地址总线A19 A0共20条 用来选定存储器地址或I O设备地址 当选定I O设备地址时 A19 A16无效 这些信号一般由CPU产生 也可以由DMA控制器产生 3 控制总线控制总线共26条 可大致分为三类 1 纯控制线 21根 ALE 输出 地址锁存允许 由总线控制器8288提供 ALE有效时 在ALE下降沿锁存来自CPU的地址 目前地址总线有效 可开始执行总线工作周期 IRQ2 IRQ7 输入 中断请求 DRQl DRQ3 输入 DMA 直接数据传送 控制器8273A的通道1 3的DMA请求 是由外设接口发出的 DRQl优先级最高 当有DMA请求时 对应的DRQX为高电平 一直保持到相应的DACK为低电平为止 DACK0 DACK3 输出 低电平有效 DMA通道0 3的响应信号 由DMA控制器送往外设接口 低电平有效 DACK0用来响应外设的DMA请求或实现动态RAM刷新 AEN 输出 地址允许信号 由8237A发出 此信号用来切断CPU控制 以允许DMA传送 AEN为高电平有效 此时由DMA控制器8237A来控制地址总线 数据总线以及对存储器和I O设备的读 写命令线 在制作接口电路中的I O地址译码器时 必须包括这个控制信号 2 状态线 2根 I OCHCK 输入 低电平有效 I O通道奇偶校验信号 当为低电平时 表示校验有错 I OCHRDY 输入 I O通道准备好 用于延长总线周期 一些速度较慢的设备可通过使I OCHRDY为低电平令CPU或DMA控制器插入等待周期 ISA IndustryStandardArchitecture 总线是采用80286CPU的IBM PC AT机使用的总线 又称PC AT总线 将原来8位的IBM PC总线扩展为16位的AT总线 它保持原来PC XT总线的62个引脚信号 以便原先的PC XT适配器板可以插在AT机的插槽上 同时为使数据总线扩展到16位 地址总线扩展到24位 而增加一个延伸的36引脚插槽 其引脚如图5 19所示 三 ISA总线 ISA总线36线插槽图 ISA能实现16位数据传送 24位地址线可寻址16MB地址空间 工作频率为8MHz 数据传输率最高可达8MB s ISA总线插槽与信号 ISA IndustryStandardArchitecture 总线也称为AT总线8 16位数据线24位地址线 寻址16MB空间 I O地址空间0100H 03FFH最高工作频率8MHz 数据传输率16MB s中断功能 DMA通道功能由62线的PC总线插槽再扩展36线插槽形成 如下图 ISA总线插槽与信号 ISA总线信号的定义 98条线分为5类 地址线 数据线 控制线 时钟线 电源线地址线SA0 SA19和LA17 LA23 后者为非锁存信号数据线SD0 SD7 SD8 SD15 ISA总线的定义 续 控制线AEN BALE IOR IOW SMEMR SMEMW MEMR MEMW MEMCS16 I OCS16 SBHE IRQ3 IRQ7 IRQ10 IRQ15 DRQ0 DRQ3 DRQ5 DRQ7 DACK0 DACK3 DACK5 DACK7T C MASTER RESETDRV I OCHCK I OCHRDY OWS时钟线CLK ISA总线更名为 SYSCLK 电源 地线等 5VDC GND ISA总线的定义 续 对主要控制信号的说明 AEN 地址允许 输出 AEN 1 DMAC控制总线 BALE 地址锁存允许 输出 IOR IOW I O读与写 SMEMR SMEMW 系统存储器读 写 PC XT MEMR MEMW 对整个内存空间内任一地址的读 写 MEMCS16 IOC S16 16为内存片选和16位I O片选 SBHE 系统总线高字节允许 IRQ3 IRQ7 IRQ10 IRQ15 中断请求信号 主片与从片的8259A输入 ISA总线的定义 续 DRQ0 DRQ3 DMA请求信号 DRQ5 DRQ7 第二片DMA请求信号 DACK0 DACK3 DMA响应信号 DACK5 DACK7 第二片DMA响应信号 T C 由DMAC送出 表明某一DMA通道传送已经结束 MASTER 总线主控信号 输入 表明该设备控制总线 RESETDRV 复位驱动 输出 表明上电复位 I OCHCK I O通道检查 输入 故障报告 用NMI I OCHRDY I O通道就绪 输入 用于周期延长 OWS 零等待 输入 通知CPU不需附加任何等待周期 EISA ExtendIndustryStandardArchitecture 总线是ISA总线的扩展 支持多个总线主控制器 增加了突发式传送 BurstTransfer 又称猝发式传送 它是一种支持多处理器的高性能32位标准总线 EISA总线是ISA总线的发展 兼容ISA总线 其数据总线宽度增到32位 地址总线宽度也增到32位 并具有高速同步传送功能 而结构上原ISA引线均被EISA保留 EISA有近200根线 其总线扩展槽插脚分上下两层 上层是原ISA连线 下层是EISA连线 当EISA卡插入时 与全部接线相接触 总线会自动识别插入的I O扩展卡是ISA还是EISA总线 从而实现了两种总线的兼容性 四 EISA总线 EISA总线 EISA ExtendedISA 总线为了与IBM设计的微通道结构MCA 非开放的 进行竞争 以Compaq为首的兼容厂家提出的向后兼容的开放标准8位 16位 32位数据宽度32位地址 可寻址4GB空间工作频率8 3MHz数据传输率33MB s插槽与ISA兼容 EISA总线插槽 EISA总线插槽分为上下两层 而ISA只有一层 EISA新增加信号线 BE0 BE3字节允许信号 指明当前总线周期传送4个字节中的哪个字节D16 D31新增加的数据线LA2 LA16