- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
DMA (Direct Memory Access) 是存储器与外设或存储器之间进行大量数据传送的方法,是在DMA 控制器的控制下进行的。 3. DMA方式 DMA 请求 DMA 响应 送存储器地址 传送数据 DMA 结束 传送结束? Yes 修改地址指针 No 图6.8 DMA 工作流程图 ① 能向CPU 发出DMA 请求信号。 ② CPU 响应后,接管对总线控制,进入DMA 方式。 ③ 发出读、写控制信号。 ④ 决定数据传送的地址和数据传送的长度。 ⑤ 判断DMA 操作的结束,撤消总线请求信号, 使CPU 恢复正常工作。 公司 徽标 信息工程学院 接口 CPU 与外设之间的一种缓冲电 路,是CPU 与外设之间信息交 换的中转站。 6.1.1 什么是接口与接口技术 图6.1 微机控制各类接口框图 内存 内存接口 CPU 智能仪器接口 通信接口 过程控制接口 输入接口 输出接口 外存接口 数字化存储示波器,数字化万用表 终端调制解调器 电传机 A/D转换器开关量输入D/A转换器开关量输出 键盘 数字化仪光笔 图形输入 声音输入 扫描仪 点阵打印 CRT 显示激光打印 液晶显示喷墨打印 绘图仪X-Y记录仪 硬盘 软盘光盘 磁带 接口技术 采用硬件与软件相结合的方法,研究CPU 与外设之间如何实现高效、可靠的信息交换的一门技术。 (1)数字量 由键盘、光电输入机等输入的信息,通常是以二进制表示的数或以 ASCII 码表示的数或字符。 1. 数据信息(DATA) CPU与外设交换的数据本身: CPU ? 外设 (2)模拟量 非电量信息 传感器 电量 信号处理 U/I A/D CPU (P/T/Q) ? (3)开关量 两个状态的量 ,可以用“0”、“1”表示, 例如电机的启与停,开关的合与开等。 例如 输入时,输入设备是否准备好? —— 准备就绪信号READY 输出时,输出设备是否空闲? —— 忙信号BUSY 2. 状态信息(STATUS) 例如控制I/O 设备启动或停止等。 3. 控制信息(CONTROL) 反映外设当前工作状态的信息: CPU ? 外设 CPU控制外设工作所发送的一种信息: CPU ? 外设 1. 接口电路的组成 图6.2 接口的组成 CPU I/O设备 I/O接口 DR SR CR AB DB CB DATA STATUS CONTROL 总线驱动 地址译码 控制逻辑 DR:数据寄存器 SR:状态寄存器 CR:控制寄存器 2. I/O端口访问方法 端口地址与存储器地址统一编址。 译码器 8086CPU AB 存储器 I/O端口 ? ? 图6.3 统一编址方式硬件框图 (1)统一编址方式 优点:指令丰富,电路简单。 缺点:外设占用存储器空间,内存 容量减小。 图6.4 独立编址方式硬件框图 译码器 8086CPU AB 存储器 I/O端口 ? ? 译码器 存储器和外设都有自己的地址译码器,地址空间独立,互不影响。用专用的I/O 指令访问I/O 端口。 (1)汇编语言的I/O 指令 输入指令: IN AL, n ; n 为8位立即地址 IN AL, DX ; 16位地址用DX间址 输出指令: OUT n, AL OUT DX, AL 例: IN AL, 20H MOV DX, 2F0H OUT DX, AL (2)C 语言中的端口读写函数 Turbo C 中的 (1) unsigned inportb (int port) (2) void outportb (int port, unsigned value) # include dos.hmain ( ){ unsigned c; c = inportb (0x2f0); printf (?data = %0x?, c); outportb (0x360, c);} 从解决CPU 与外设在连接时存在的矛盾这个角度看,接口应有以下功能: 设置“ 数据口”,解决CPU 高速与外设相对低速的矛盾,并为主机与外设的批量数据传输创造条件。 1. 数据缓冲功能 设置“ 命令口”,对CPU 发出的代码形式的控制命令识别、分析并执行。 CPU与外设之间信号在逻辑关系上的转换、数据格式的转换(串 ? 并)、以及时序配合、电平匹配等。 2. 接收与执行CPU命令的功能 3. 信号
文档评论(0)