第8章-微型计算机和外设之间的数据传送课件

上传人:痛*** 文档编号:241680144 上传时间:2024-07-15 格式:PPT 页数:54 大小:1.17MB
返回 下载 相关 举报
第8章-微型计算机和外设之间的数据传送课件_第1页
第1页 / 共54页
第8章-微型计算机和外设之间的数据传送课件_第2页
第2页 / 共54页
第8章-微型计算机和外设之间的数据传送课件_第3页
第3页 / 共54页
点击查看更多>>
资源描述
第8 8章 微型计算机和外设之间的数据传输 8.1 8.1 接口及接口技术 8.2 8.2 I/OI/O端口的编址方式 8.3 8.3 微处理器与I/OI/O设备数据传送的几种方式 8.4 DMA8.4 DMA控制器82C37A82C37A 1概况一点击此处输入相关文本内容点击此处输入相关文本内容整体概述概况三点击此处输入相关文本内容点击此处输入相关文本内容概况二点击此处输入相关文本内容点击此处输入相关文本内容28.1 8.1 接口及接口技术 8.1.1 8.1.1 接口电路的概述 所谓接口(InterfaceInterface)电路就是微处理器与外围设备(外设)之间的连接电路,它是两者之间进行信息交换时的必要通路,不同的外设有不同的输入/输出接口电路。38.1.2 8.1.2 接口电路的主要功能 1 1设备选择功能 2 2数据缓冲功能 3 3接收和执行CPUCPU命令的功能 4 4寄存外设状态的功能 5 5信号的转换功能 46 6数据宽度变换的功能 7 7可编程功能 58.2 I/O8.2 I/O端口的编址方式 8.2.1 8.2.1 什么叫I/OI/O端口 端口(PortPort)是接口电路中能被CPUCPU直接访问的寄存器。根据寄存器中所存放的信息,有数据信息、控制信息及状态信息,所以,分别被称为数据端口、控制端口及状态端口。68.2.2 8.2.2 两种I/OI/O编址方式 1 1统一编址方式 从内存空间划出一部分地址空间留给I/OI/O设备编址,CPUCPU把I/OI/O端口所指的寄存器当作存储单元进行访问,直接用访问内存的指令访问I/OI/O寄存器,称之为统一编址方式,或称为存储器映像的I/OI/O编址方式。78.2.2 8.2.2 两种I/OI/O编址方式 2 2独立的I/OI/O编址方式 接口电路中所有的I/OI/O端口统一编址,给每个端口编一个地址,而所有I/OI/O端口建立的地址空间与内存地址空间是两个独立的地址空间。其I/OI/O地址范围是0000H0000HFFFFHFFFFH,共计有连续的64K64K个端口地址。88.2.3 8.2.3 I/OI/O指令 1 1I/OI/O寻址方式 16 16位、3232位微处理器访问I/OI/O接口只有两种寻址方式:直接寻址和DXDX间接寻址。2 2I/OI/O指令 用1N1N和OUTOUT指令在CPUCPU的累加器(ALAL、AXAX或EAXEAX)和I/OI/O设备之间进行数据的传送操作。9表8-1 8-1 输入指令表I/OI/O指令数据宽度功能IN ALIN AL,portport8 8从即时端口读一个字节到ALAL中IN AXIN AX,portport1616从即时端口读一个字到AXAX中IN EAXIN EAX,portport3232从即时端口读一个双字到EAXEAX中IN ALIN AL,DXDX8 8从DXDX寄存器所指示的端口读一个字节到ALAL中IN AXIN AX,DXDX1616从DXDX寄存器所指示的端口读一个字到AXAX中IN EAXIN EAX,DXDX3232从DXDX寄存器所指示的端口读一个双字到EAXEAX中10表8-2 8-2 输出指令表I/OI/O指令数据宽度功能OUT portOUT port,ALAL8 8将ALAL寄存器中的一个字节数据输出到即时端口OUT portOUT port,AXAX1616将AXAX寄存器中的一个字数据输出到即时端口OUT portOUT port,EAXEAX3232将EAXEAX寄存器中的一个双字数据输出到即时端口OUT DXOUT DX,ALAL8 8将ALAL寄存器中的一个字节数据输出到DXDX寄存器所指示的端口OUT DXOUT DX,AXAX1616将AXAX寄存器中的一个字数据输出到DXDX寄存器所指示的端口OUT DXOUT DX,EAXEAX3232将EAXEAX寄存器中的一个双字数据输出到DXDX寄存器所指示的端口118.2.4 8.2.4 I/OI/O接口的地址分配 1616位微机的I/OI/O接口包括系统板和扩展槽上的I/OI/O接口,使用低1616位地址的A A9 9A A0 0,共计使用2 21010=1024=1024个端口地址。32 32位微机的I/OI/O地址空间分成两部分:具有向上的兼容性,例如打印口地址还是:37837837FH37FH。串行异步通信卡(COM1COM1)地址还是:3F8 3F83FFH3FFH。128.2.5 8.2.5 I/OI/O保护 涉及I/OI/O端口的指令ININ、OUTOUT、INSINS、OUTSOUTS等称之为I/OI/O敏感(I/O sensitiveI/O sensitive)指令;32 32位机在保护模式下,I/OI/O特权和I/OI/O允许位图提供I/OI/O保护机制,可以限制对I/OI/O端口的访问。138.2.6 8.2.6 3232位微处理器采用I/OI/O编址的 译码电路 1 18 8位数据端口与低8 8位数据线的连接 14以74LS13874LS138三八译码器构成端口的地址译码。其中,和 M/M/都必须等于0 0时,才满足选通端为逻辑0 0的要求。G2AG2BY0Y1Y7G1CBAA3A2A4&A9A8A5BE0M/IO端口0端口1端口7D7D0D7D0D7D0D7D074LS138图8-2 88-2 8位数据端口与低8 8位数据线的连接15表8-4 88-4 8个8 8位端口的地址端口号地址端口号地址端口0 03E0H3E0H端口4 43F0H3F0H端口1 13E4H3E4H端口5 53F4H3F4H端口2 23E8H3E8H端口6 63F8H3F8H端口3 33ECH3ECH端口7 73FCH3FCH162 28 8位数据端口与3232位数据线的连接 的地址范围是:3E0H3E0H3E3H3E3H。的地址范围是:3E4H3E4H3E7H3E7H。178.3 8.3 微处理器与I/OI/O设备数据传送的几种方式 8.3.1 8.3.1 I/OI/O接口电路的基本结构 1 1I/OI/O接口电路的连接 图8-4 I/O8-4 I/O接口电路的连接及其基本结构 CPUI/O设备数据端口命令端口状态端口数据线地址线M/IORDWR数据线命令线状态线I/O I/O 接口电路182 2I/OI/O接口电路中的基本寄存器 (1 1)数据端口 用于中转数据信息。CPU CPU通过数据总线,将待传送给外设的数据先传送到数据端口,然后由I/OI/O设备通过与I/OI/O接口电路相连接的数据线取得该数据。I/O I/O设备首先将输入数据锁存于数据端口,然后,CPUCPU通过数据端口将该数据读入CPUCPU中。数据端口一般既有输出寄存器(或称输出锁存器),又有输入寄存器(或称输入缓冲器)。19(2 2)命令端口 用于传送对I/OI/O设备的命令信息。CPUCPU将命令信息通过数据总线写入I/OI/O接口电路的命令寄存器中,然后传送到I/OI/O设备,以便控制外设的操作;命令端口由输出寄存器组成;命令端口是一个输出端口。20用于传送外设所处的状态信息。状态端口是输入端口,CPUCPU通过读取状态端口的数据来了解外设当前所处的工作状态。(3 3)状态端口 218.3.2 8.3.2 程序控制I/OI/O方式 1 1无条件输入输出方式 无条件输入输出方式是一种最简单的输入/输出控制方式,其I/OI/O接口电路及软件比较简单,所有的操作均由执行程序来完成。特点:输入接口电路总是准备好了等待输入给CPUCPU的数据,输出接口电路总是准备好了接受来自CPUCPU的数据。CPUCPU无须查询I/OI/O设备是否准备就绪,直接用汇编语言或高级语言编程,实现输入或输出操作。此种方式的接口电路是查询式输入输出方式接口电路的基础。22图8-58-5 与 的产生 M/IORDWRIOWIOR23无条件输入方式的接口电路与输入时序 (a a)输入接口电路 (b b)输入时序 图8-6 8-6 无条件输入接口电路及输入时序 主频时钟地址线数据线输入设备地址A A地址译码数据CPUCPU线D D7 7D D0 0IORIORWR=“1WR=“1”CSCSRDRDM/IOM/IO T1 T2 T3 T4 T1 T1 T2 T3 T4 T1。24无条件输出接口电路及输出时序主频时钟地址线数据线地址地址译码来自CPUCPU数据线D D7 7D D0 0IOWIOWRD=“1RD=“1”CSCSWRWRM/IOM/IO T1 T2 T3 T4 T1 T1 T2 T3 T4 T1Q DQ DQ DQ D至输出外设数据线。(a a)输出接口电路 (b b)输出时序 图8-7 8-7 无条件输出接口电路及输出时序 252 2查询式输入输出方式 (1 1)查询式输入方式 当CPUCPU采用查询方式从外设读取数据时,CPUCPU必须首先从状态端口查询外设的数据是否已经准备好,确认已准备好后,才能执行一次数据输入操作。图8-8 8-8 查询式输入程序的流程图 从状态端口读入状态信息从数据端口读入数据数据准备好没有?NY26例:假设状态端口与数据端口的地址分别为300H300H和301H301H,状态信息从数据总线上的D D0 0位读入CPUCPU中,查询式输入程序段如下:MOV DX MOV DX,300H 300H ;状态口地址传送给DXDXABCABC:IN ALIN AL,DX DX ;读入状态信息 TEST AL TEST AL,01H 01H ;AL01HAL01H,影响ZFZF标志 JZ ABC JZ ABC ;如果状态信息为0 0转ABCABC MOV DX MOV DX,301H 301H ;数据端口地址传送给DXDX IN AL IN AL,DX DX ;读入数据信息27(2 2)查询式输出方式 当CPUCPU采用查询方式向外设输出数据时,CPUCPU必须首先从状态端口查询外设是否已经作好了接受CPUCPU数据的准备,若没有准备好,则要继续查询,若准备好了,CPUCPU便执行一次数据输出操作。图8-9 8-9 查询式输出程序的流程图 从状态端口读入状态信息从数据端口输出数据输出设备忙吗?YN28例:假设状态端口与数据端口的地址分别为3FOH3FOH和3F1H3F1H,状态信息从数据线上D D7 7位读入CPUCPU中,查询式输出程序段如下:MOV DX MOV DX,3F0H 3F0H ;状态口地址传送给DXDXCBACBA:IN ALIN AL,DX DX ;读入状态信息 TEST AL TEST AL,80H 80H ;AL80HAL80H,影响ZFZF标志 JZ CBA JZ CBA ;如果状态信息为0 0则转CBACBA MOV DX MOV DX,3F1H 3F1H ;数据端口地址传送给DXDX MOV AL MOV AL,SI SI ;从内存读取数据给ALAL OUT DX OUT DX,AL AL ;向数据口输出数据 29(3 3)查询式输入输出方式存在的问题 308.3.3 8.3.3 中断控制I/OI/O方式 中断是外设或者其他中断源中止CPUCPU当前正在执行的程序,转向为申请中断的外设(或中断源)执行服务程序,一旦服务程序执行结束,必须返回到被中断程序的断点处,接着执行原来的程序。312 2个中断源中断过程的示意图 图8-11 28-11 2个中断源中断过程的示意图 主程序主程序第i i条指令第i+1i+1条指令第i+ji+j条指令第i+j+1i+j+1条指令 A A外设中断服务程序 B B外设中断服务程序328.3.4 8.3.4 直接存储器存取(DMADMA)方式 DMADMA(Direct Memory AccessDirect Memory Access)即直接存储器存取方式,是指在专门的DMADMA控制器的控制下实现外围设备与内存储器直接交换数据的一种接口技术。在这种方式下,数据传输不经过CPUCPU,传送的速度只取决于存储器和外设的工作速度。338.4 DMA8.4 DMA控制器82C37A82C37A 8.4.1 8.4.1 82C37A82C37A的内部结构 82C37A82C37A芯片是一个多模式的直接存储器存取控制器,是一种CHMOSCHMOS外围接口。由于它允许外部设备直接从系统存储器传送信息,所以极大地改进了系统的性能。82C37A 82C37A芯片是由定时及控制、优先级编码器及循环优先级逻辑、命令控制及1212个不同类型的寄存器等功能模块组成。34图8-12 82C37A8-12 82C37A的内部结构35表8-5 82C37A8-5 82C37A内部寄存嚣名称长度个数基地址寄存器1616位4 4基本字计数寄存器1616位4 4当前地址寄存器1616位4 4当前字计数寄存器1616位4 4暂时地址寄存器1616位1 1暂时字计数寄存器1616位1 1状态寄存器8 8位1 1命令寄存器8 8位1 1暂存寄存器8 8位1 1方式寄存器6 6位4 4屏蔽寄存器4 4位1 1请求寄存器4 4位1 1368.4.2 8.4.2 82C37A 82C37A引脚信号的定义(1 1)CLKCLK,时钟输入信号。(2 2),片选信号(Chip Chip SelectSelect)。(3 3)RESETRESET,复位(ResetReset)信号。(4 4)DREQDREQ3 3DREQDREQ0 0,DMADMA请求(DMA RequestDMA Request)输入信号。(5 5)DBDB7 7DBDB0 0,8 8位数据线。图8-13 82C37A8-13 82C37A的引脚图378.4.3 8.4.3 内部寄存器的功能和使用 1 1基地址寄存器和当前地址寄存器 每个DMADMA通道都配备有2 2个地址寄存器,其一为基地址寄存器,其二为当前地址寄存器。在基地址寄存器内存放着DMADMA操作的起始地址,而在当前地址寄存器内保持着的则是将要访问的下一个存储单元的地址。38例【8-18-1】设内部先/后触发器的状态为0 0,为了把地址8834H8834H写入DMADMA控制器通道1 1的基地址和当前地址寄存器中,那么可以通过执行下列输出指令来初始化基地址寄存器和当前地址寄存器。mov al mov al,34h 34h ;写低字节 out adder+2 out adder+2,alal mov al mov al,88h 88h ;再写高字节 out adder+2 out adder+2,al al 392 2基本字计数寄存器和当前字计数寄 存器 82C37A 82C37A的每个DMADMA通道还配备有两个字节计数寄存器,被分别称之为基本字计数寄存器和当前字计数寄存器。40例【8-28-2】设内部先/后触发器的状态为0 0,要把计数值0FFFH0FFFH写入到DMADMA控制器通道1 1的基本字计数寄存器和当前字计数寄存器中,设DMACDMAC的基本I/OI/O地址为ADDERADDER,且ADDERF0HADDERF0H,则可通过执行下列指令来实现。mov al mov al,0ffh 0ffh ;写低字节 out adder+3 out adder+3,al al mov al mov al,0fh 0fh ;再写高字节 out adder+3 out adder+3,al al 413 3命令寄存器(Command RegisterCommand Register)图8-14 8237A8-14 8237A命令寄存器 D7 D00 0 禁止存储器到存储器传送1 1 允许存储器到存储器传送0 0 禁止通道0 0地址保持1 1 允许通道0 0地址保持 如果位0=00=00 0 控制器允许1 1 控制器禁止0 0 正常定时1 1 压缩定时 如果位0=10=11 1 循环优先级0 0 滞后写选择1 1 扩展写选择 如果位3=13=10 0 固定优先级0 DREQ高电平有效1 1 DREQ低电平有效0 DACK低电平有效1 DACK高电平有效424 4方式寄存器(Mode RegisterMode Register)图8-15 82C37A8-15 82C37A的方式寄存器 D7 D000 00 选择通道0 001 01 选择通道1 110 10 选择通道2 211 11 选择通道3 300 00 校验传送01 01 写传送10 10 读传送11 11 非法 如果位6 6和位7=117=111 1 允许自动初始化 0 0 选择地址加1 1 1 1 选择地址减1 10 0 禁止自动初始化00 00 选择请求方式01 01 选择单字节方式10 10 选择块方式11 11 选择级联方式435 5请求寄存器(Request RegisterRequest Register)图8-16 82C37A8-16 82C37A的请求寄存器 00 00 选择通道0 001 01 选择通道1 110 10 选择通道2 211 11 选择通道3 3 0 0 复位请求位 1 1 设置请求位无关项D7 D0446 6屏蔽寄存器(Mask RegisterMask Register)(1 1)单个通道屏蔽寄存器 图8-17 8-17 单个通道屏蔽寄存器 00 00 选择通道0 0屏蔽位01 01 选择通道1 1屏蔽位10 10 选择通道2 2屏蔽位11 11 选择通道3 3屏蔽位 0 0 清除屏蔽位 1 1 设置屏蔽位无关项D7 D045(2 2)4 4个通道屏蔽寄存器 图8-18 48-18 4个通道屏蔽寄存器 0 0 清除通道0 0屏蔽位1 1 设置通道0 0屏蔽位0 0 清除通道1 1屏蔽位1 1 设置通道1 1屏蔽位无关项D7 D00 0 清除通道2 2屏蔽位1 1 设置通道2 2屏蔽位0 0 清除通道3 3屏蔽位1 1 设置通道3 3屏蔽位467 7状态寄存器(Status RegisterStatus Register)图8-19 82C37A8-19 82C37A的状态寄存器 1 1 通道0 0已达到TCTC值1 1 通道1 1已达到TCTC值1 1 通道2 2已达到TCTC值1 1 通道3 3已达到TCTC值D7 D01 1 通道0 0请求1 1 通道1 1请求1 1 通道2 2请求1 1 通道3 3请求478 8暂存寄存器 在执行存储器到存储器的DMADMA传送期间,从源地址读出的数据保存到暂存寄存器中,然后启动一个写周期,把该数据写入目的单元。在完成这种操作时,暂存寄存器中将包含被传送的最后一个字节数据,此字节可以被CPUCPU读出。RESETRESET信号使该暂存寄存器复位。489 9暂时地址寄存器和暂时字计数寄存器 498.4.4 8.4.4 82C37A82C37A的DMADMA接口 图8-20 82C37A8-20 82C37A的DMADMA接口 508.4.5 8.4.5 82C37A82C37A的编程 1 182C37A82C37A各通道寄存器的寻址 51Q&A问答环节敏而好学,不耻下问。学问学问,边学边问。Heisquickandeagertolearn.Learningislearningandasking.52结束语感谢参与本课程,也感激大家对我们工作的支持与积极的参与。课程后会发放课程满意度评估表,如果对我们课程或者工作有什么建议和意见,也请写在上边点击进入53谢谢聆听THANKYOUFORLISTENING演讲者:XX时间:202X.XX.XX54
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!