《微处理器ppt6讲解》由会员分享,可在线阅读,更多相关《微处理器ppt6讲解(63页珍藏版)》请在金锄头文库上搜索。
1、微处理器系统结构与嵌入式系统设计,2,第六章 输入/输出接口,6.1 输入/输出接口基础 功能与结构、 端口编址方式(独立、统一)、地址共用、接口地址译码 6.2 信息传输控制方式 程序控制传输方式:无条件、条件查询 中断传输方式 直接存储器访问(DMA)方式 通道方式 6.3 并行接口设计技术 无握手信号的并行接口 矩阵键盘、数码显示屏 带握手信号的并行接口 查询、中断 可编程并行接口 6.4 串行接口设计技术,2019/11/7,3,第六章 习题,作业:2,3,4,6 思考:其余,2019/11/7,第 六 章 结 束,5,5,I/O接口的功能与硬件结构,为什么需要I/O接口? (接口电路
2、的功能),微处理器与外设在速度, 信号形式,信息流的速度等多方面存在差异. CPU 与外设间并不直接传送信息,而是经 I/O 接口传送信息,所以说: I/O 接口是它们的 桥梁,访问 I/O 接口就是访问外设。,在现代计算机体系结构中,CPU及外设都是通过总线进行数据交换,各种外设与总线之间的连接都是需要接口的。,6,接口结构,数据缓冲 /锁存器,状态 寄存器,控制 寄存器,总线驱动,地址译码,控制逻辑,接总线一侧,接外设一侧,有关端口(PORT)的概念:,一个外设可能有多个端口,一个端口也可能属于多个外设;,主机(CPU)可读写,、 存储器映像或IO独立编址,有关信息交换的概念:,外设的各种
3、信息都是通过系统的DB进行交换的;,I/O端口是指CPU可以直接访问的接口电路中的寄存器,7,数据信息 方向 :CPUI/O 端口数据缓冲器外设 双向,I/O 接口中的信息流,状态信息-反映外设当前工作状态的信息 方向:CPU I/O端口状态寄存器 外设 单向,控制信息 方向: CPU I/O端口控制寄存器 外设 单向,注: 数据信息是CPU与外设经I/O接口传送的有用信息; 状态、控制信息是CPU经I/O接口与外设传送的配合信息; 为了CPU与外设间的数据传送,加入必要的握手信息(状态、控制)非常重要,8,简单I/O接口图,与CPU相关的: 数据线、I/O选择(地址线)、I/O读/写,8,与
4、外设相关的: 数据寄存器、控制(命令)寄存器、状态寄存器-端口,9,接口功能,设备选择:译码选择设备、端口 数据收发和格式转换:读/写,串/并、并/串 接收解释执行CPU的命令:控制信号的实现 外设状态接收并转发给CPU:状态端口 支持查询、中断、DMA等多种传输控制方式 提供缓冲、暂存、驱动能力:信号驱动 错误检测功能:奇偶校验 复位,9,接口技术组成: 硬件:地址译码、读写控制、总线缓冲、端口寄存器 软件:驱动程序(初始化、传送控制、结束控制等),10,10,端口编址方式:独立编址(如intel x86),特点:系统视端口和存储单元为不同的对象。 优点:系统中存储单元和I/O端口的数量可达
5、到最大。 缺点:需专门信号来指示系统地址线上出现的是存储单元地址还是端口地址;采用专用端口操作指令,11,11,特点:将端口看作存储单元,仅以地址范围的不同来区分两者。 优点:对端口的操作和对存储单元的操作完全一样,因此系统简单,并且对端口操作的指令种类较多 缺点:CPU对存储单元和I/O端口的实际寻址空间都小于其最大寻址空间,端口编址方式:存储器映像编址(如ARM),12,12,端口的地址共用,使用读/写控制信号区分,使用端口寄存器中的标志位区分,使用访问顺序区分,13,接口地址译码,原理与存储器系统设计中的译码原理相同 固定译码 全译码 部分译码 线译码 可变译码,14,例6.2 用逻辑门
6、和74LS138设计一个系统接口芯片的I/O端口地址译码电路(设地址线为16位,端口地址从0000H开始). 接口芯片数为7个, 每个接口芯片内部的端口地址数为32个.(p185),片内地址线 低位地址线,片选地址线 高位地址线,15,15,无条件程序控制方式,外设数据变化缓慢,始终处于就绪状态,如开关或LED 接口结构简单(通常只需要数据端口),适用面较窄,对CPU而言,按键“按下弹起”一次所用的时间远大于其时钟周期,无需互动联络信号,16,16,条件程序控制(程序查询)方式,工作过程 CPU 向 I/O 控制端口写控制信息 CPU 从 I/O 状态端口读状态信息 根据状态 错误:CPU 反
7、复查询状态信息 正确:CPU 经 I/O 数据端口与外设交换数据,17,程序查询输入接口原理图,输 入 设 备,输入选通,DB(数据、状态),CPU选择输入设备(设备地址送上地址线),发出“读”命令; CPU选通状态端口,循环读取状态信息(ready),判断是否有效。,输入设备确认被选中,准备信息,就绪后送上数据线,同时送选通信号去状态端口,置状态信号ready为有效。,CPU检测到ready有效,发数据选通信号,接收数据,同时清除ready,使之无效。,18,程序查询输出接口原理图,输 出 设 备,输出选通,DB(数据、状态),BUSY(1bit),/ACK:低电平有效 BUSY:高电平有效
8、,19,程序查询输入、输出接口特点,接口避免了对端口的“盲读”、“盲写” ,数据传送的可靠性高,且硬件接口相对简单。,外设应具有必要的联络(握手)信号如READY、ACK等;,缺点是CPU工作效率低,I/O响应速度慢;在有多个外设的系统中,CPU的查询顺序由外设的优先级确定,实时性差。,20,20,使用程序查询方式的打印机接口,若状态位D2为0,则表明先前送出的数据已被打印,可以再送下一个数据; 若状态位D2为1,则表明先前送出的数据还没打印,就不能再送数据出去;,BUSY,(输出设备),21,21,前例-打印机接口握手时序图,BUSY(D2),数据有效,DATA,数据有效,ACK (触发信号
9、),5,s,STROB (控制总线),5,s,1. 发送方查询BUSY状态信号 2. 当BUSY“0”时,发送方发送数据 3.发送方用控制信号/STROB锁存数据,该信号至少维持5s 4. /STROB信号导致BUSY信号变为高电平 5.接收方用/ACK状态信号表示数据收到,该信号至少维持5s 6. /ACK信号导致BUSY信号变为低电平,22,程序控制方式总结,无条件控制(同步控制) 特点:要求外设数据变化缓慢,操作时间固定,可以被认为始终处于就绪状态,如一组开关或LED显示管。 优点:简单, CPU随时可无条件读/写数据。 缺点:无法保证数据总是有效,适用面窄。 条件控制(查询控制) 特点
10、: CPU主动、外设被动。执行I/O操作时CPU总要先查询外设状态;若传输条件不满足时,CPU等待直到条件满足。 优点:解决了CPU与外设之间的同步问题,可靠性高。 缺点:CPU利用率低,低优先级外设可能无法及时得到服务,23,中断式I/O传输方式,I/O设备准备接收/发送数据的期间: CPU处于等待状态; 不断查询I/O设备的状态。,程序控制式I/O传输降低了系统的整体性能,中断控制式I/O传输可提高传输效率(消除等待时间),CPU发I/O命令到外设; CPU做其他程序该执行的任务; I/O设备准备好数据传输了,以中断申请的方式通知CPU; CPU以中断服务方式去执行I/O传送; 结束后,C
11、PU恢复原本的任务,24,中断控制方式I/O接口原理图,数据缓冲,控制端口,外 设,INTR,接口避免了CPU 反复低效率的查询,适用于CPU任务 繁忙、而数据传送不太频繁的系统中。,外设应具有必要的联络握手信号作为中 断请求信号;,中断可被响应的条件: 中断请求触发器置位; 中断屏蔽触发器清零; CPU内部开放中断; CPU未处理更高级中断; CPU现行指令执行完;,优先级排队,25,中断控制方式的特点,可以实现实时故障处理 可以实现CPU与外设及外设与外设之间的并行工作,CPU处理流程,中断服务程序,非预料事件,外部设备,申请,响应,执行,返回,26,中 断 系 统,组成:计算机中实现中断
12、功能的软、硬件的总称,一般包括CPU内部配置的中断机构、外设接口中设计的中断控制器及各类中断服务子程序。 功能:中断及返回;优先级排队和嵌套 中断源,中断类型号,中断向量 断点,现场 中断嵌套,中断优先级,中断屏蔽 中断处理过程 检测、判优、响应、处理、返回,27,27,简单中断接口中的软硬件功能,S R,CP,D,Q,外设发出的中断请求信号,CPU中断请求复位信号,5V,送至总线的中断请求引脚,CPU中断请求允许信号,硬件需完成的功能: 可产生稳定的中断请求信号 可屏蔽该中断请求信号 可清除该中断请求信号,软件需完成的功能: 产生中断请求允许信号 产生中断请求复位信号 装载中断服务子程序,将
13、用户中断服务子程序的入口地址放入中断向量表,28,28,相关概念:源、类型号、向量,中断源:发出中断请求的来源(软件或硬件) 中断类型号:为区分不同中断源进行的编号 中断向量:中断服务子程序的入口地址,异常,(不可屏蔽中断),29, MOV R1, 0 ADD R1, R2 MOV 20H , R1 PUSH R1 ,断点,相关概念: 断点、现场,断点:指CPU执行的现行程序(主程序)被中断时的下一条指令的地址; 现场:指执行中断服务程序前CPU的运行状态,如CPU内部各寄存器值等;,CPU执行完中断服务子程序后返回这里继续执行主程序,30,相关概念:中断嵌套,中断嵌套的条件: 1)中断服务子
14、程序1执行过程中允许中断; 2)新到来的中断应比原中断的优先级高; 注:为保护主程序及各级中断服务程序的数据不被破坏,所有中断服务程序均应进行保护及恢复操作;,31,中断的软件判优法,至CPU的 中断输入引脚,设备优先级由软件查询流程确定。,试画出工作流程; 考虑如何得到中断类型号;,32,中断优先权编码电路(硬件判优1),至CPU的中断输入引脚,优先权失效信号 (当前无正处理的中断),设备优先级由编码器连接方式确定。,(当前正处理的中断优先级编码),33,设备优先级由链式电路连接顺序确定。,菊花链式排队电路(硬件判优2),34,中断处理过程,中断检测 是否有中断请求 一般在每个指令周期结束时
15、由CPU硬件自动检测) 中断判优 确认已有中断请求中优先级最高的中断源; 一般CPU内部和接口电路中都会进行判优; 中断响应 保护断点、现场,并获取中断向量; 一般由CPU内部硬件自动完成 ; 中断服务 运行用户自行编制的服务子程序; 中断返回 恢复现场、断点; 一般由CPU内部硬件自动完成 ;,中断向量表,35,直接存储器访问(DMA)方式,程序查询传送方式的特点 不能实时响应,电路简单; 适用于简单的无实时性要求的场合; 需要CPU参与; 程序中断传送方式的特点 实时响应,需要中断控制电路; 适用于传输数据量较少,而要求实时性较高的场合; 需要CPU参与; DMA方式 实时响应,需要DMA控制电路; 适用于M、I/O之间大量数据的高速传输; CPU不参与;,36,36,DMA控制器结构,外设申请DMA操作,总线响应DMA请求,37,DMA传送过程,可在I/O设备和存储器之间直接传送数据。 一般用于高速批量数据的传输 传送时,源和目的均直接由硬件指定。 传输的数据块长度需要指定,计数由硬件自动进行。 在一批数据传输完成后,一般通过中断方式通知CPU进行后续处理。 CPU和I/O设备能在一定程度上并行工作,效率高。,37,I/O,DMA请求,DMAC,总线请求,CPU,总线响应,DMA响应,38,38,无握手并行接口-按键接口,38,线性键盘(独立键盘)