版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、输入与输出接口1 第五章第五章 微机与外设的数据交换微机与外设的数据交换 5.1 微机与外设的数据交换方式微机与外设的数据交换方式 5.2 8259中断控制器中断控制器 5.3 8237DMA控制器控制器 5.4 多功能多功能I/O接口芯片接口芯片82380 输入与输出接口2 本章学习目标 8259的工作原理及组成结构。的工作原理及组成结构。 8237的工作原理及组成结构。的工作原理及组成结构。 根据具体的芯片编写出可执行的汇编语言根据具体的芯片编写出可执行的汇编语言 程序。程序。 输入与输出接口3 5.1 微机与外设的数据交换方式微机与外设的数据交换方式 请求方式请求方式数据交换数据交换硬件
2、支持硬件支持性能特点性能特点 查询方式查询方式 软件查询软件查询 外设状态外设状态 软件进行软件进行 数据传送数据传送 独占独占CPU 无其他硬件无其他硬件 定时协调好定时协调好 CPU效率低效率低 中断方式中断方式 硬件发生硬件发生 中断请求中断请求 中断程序中断程序 传送数据传送数据 中断控制器中断控制器 8259等等 CPU分时操作、分时操作、 中断处理费时中断处理费时 DMA方式方式 DMAC转发转发 总线请求总线请求 DMAC控制控制 数据传送数据传送 DMA控制器控制器 8237等等 DMA硬件控制硬件控制 需需CPU参与参与 通道方式通道方式 C P U 建 立建 立 I/O操作
3、信操作信 息表息表 IOP读信息表读信息表 控制控制I/O操作操作 IO协处理器协处理器 8089等等 IOP控制传数控制传数 CPU其它操作其它操作 查询、中断、查询、中断、DMA是是CPU控制控制I/O方式方式 输入与输出接口4 5.2 8259 PIC(可编程中断控制器)可编程中断控制器) 静态静态NMOS工艺,单电源工艺,单电源5V,28脚脚DIP 与与8080/8085、8086/8088兼容:边缘触发兼容:边缘触发/电平触发、电平触发、 有有/无缓冲无缓冲 可编程的中断方式:全嵌套、循环优先级、特殊屏蔽、可编程的中断方式:全嵌套、循环优先级、特殊屏蔽、 查询方式查询方式 8级优先控
4、制,可级联(级优先控制,可级联(81)片扩充到)片扩充到64级硬件中级硬件中 断断 可分别屏蔽中断请求(可分别屏蔽中断请求(IMR) 中断响应时送出用户编程的中断类型码中断响应时送出用户编程的中断类型码 内部寄存器状态可读(内部寄存器状态可读(IRR、ISR、IMR) 输入与输出接口5 5.2.1 8259 PIC结构结构 输入与输出接口6 8259的读写逻辑的读写逻辑 读写逻辑读写逻辑 A0D4D3 操作 001x10DBICW1 000010DBOCW2 000110DBOCW3 01xx10DBICW2、ICW3、ICW4或 OCW1 0001查询中断码、ISR、IRRDB 0101IM
5、RDB CSRDWR 5.2.1 输入与输出接口7 5.2.2 8259的编程的编程 1.ICW A0D7D6D5D4D3D2D1D0 0A7A6A51LTIMADISNGLIC4 1 A15 T7 A14 T6 A13 T5 A12 T4 A11 T3 A10A9A8 芯片控制芯片控制 1:电平触发电平触发 0:边缘触发边缘触发 调用间隔调用间隔 1:间隔为间隔为4 0:间隔为间隔为8 1:单片单片 0:级联方式级联方式 1:需要需要 ICW4 0:不需不需 ICW4 (1)初始化命令字初始化命令字ICW1 (2)初始化命令字初始化命令字ICW2 8080/8085中断程序入口中断程序入口
6、8086/8088中断类型码中断类型码 输入与输出接口8 1.ICW 中断向量(号):中断向量(号): 8085:ICW1.ADI=1 A15 A8 A7 A6 A5 A4 A3 A2 A1 A0 间隔间隔4B ICW1.ADI=0 A15 A8 A7 A6 A5 A4 A3 A2 A1 A0 CALL A15 A0 8086: ICW2:T7 T6 T5 T4 T3 T2 T1 T0 CPU处理: 处理:000000T7 T6 T5 T4 T3 T2 T1 T000 硬中断硬中断08H 000000 0 0 0 0 1 0 0 0 00表入口:表入口:0020H IR编码 0 0 CPU设置
7、 中断源IR编码,设置时可为000111 IR编码 0 0 0 5.2.2 输入与输出接口9 1S7S6S5S4S3S2S1S0 ID2ID1ID0 1000SFNMBUFM/SAEOIPM 1:特殊全嵌套特殊全嵌套 0:一般全嵌套一般全嵌套 0 x:非缓冲方式非缓冲方式 11:缓冲方式缓冲方式(主主) 10:缓冲方式缓冲方式(从从) 1:自动自动EOI 0:正常正常EOI 1:8086/8088 0:8080/8085 (3)初始化命令字初始化命令字ICW3(主从控制)主从控制) 主主: 从从: (4)初始化命令字初始化命令字ICW4(工作方式)工作方式) 1.ICW A0 1:有从片有从片
8、 0:无从片无从片 从片标志代码从片标志代码 输入与输出接口10 主从控制:主从控制: 主主ICW3: Si=1IRi上有从片的标记。上有从片的标记。 从从ICW3: ID2ID1ID0这最低这最低3位为联向主位为联向主IRi的从片标志代码。的从片标志代码。 主从片都存在自己的级联缓冲主从片都存在自己的级联缓冲/比较器。比较器。 级联响应时:级联响应时: :主片输出响应从片的标记对应的标志代码,:主片输出响应从片的标记对应的标志代码, 从片都把从片都把CAS2CAS0上代码与自己标志代码比较。上代码与自己标志代码比较。 :确认被响应的从片输出中断向量号。:确认被响应的从片输出中断向量号。 1.
9、 ICW 1 INTA 2 INTA 全嵌套:全嵌套: (1)一般全嵌套:)一般全嵌套:IRi响应响应ISRi=1,屏蔽屏蔽IRiIR7。 。 IRi接从接从8259,主,主ISRi=1时,时, IRi上来自从上来自从8259上更高的中断请求不能响应。上更高的中断请求不能响应。 (2)特殊全嵌套:特殊全嵌套: IRi响应响应ISRi=1,屏蔽屏蔽IRi+1IR7,允许同级和高级请允许同级和高级请 求中断。求中断。 结束中断:结束中断:EOI送从片清送从片清ISR位位读从片读从片ISR为全为全0时时EOI送主片清送主片清ISR位。位。 5.2.2 输入与输出接口11 (5)初始化命令字的编程顺序
10、初始化命令字的编程顺序 5.2.2开始开始 ICW1(A0=0,D4=1) ICW2(A0=1) SNGL=0? (级联方式)级联方式) ICW3(A0=1) IC4=1? ICW4(A0=1) 准备接受中断准备接受中断 Y Y N N 开始开始 ICW1(A0=0,D4=1) ICW2(A0=1) SNGL=0? (级联方式)级联方式) ICW3(A0=1) IC4=1? ICW4(A0=1) 准备接受中断准备接受中断 输入与输出接口12 A0D7D6D5D4D3D2D1D0 1M7M6M5M4M3M2M1M0 中断屏蔽:中断屏蔽: 2.OCW Mi1IRi被屏蔽,被屏蔽, Mi0允许允许I
11、Ri产生产生INT; 屏蔽屏蔽IRi,不影响其它不影响其它IR。 5.2.2 OCW1: 输入与输出接口13 2.OCW 0RSLEOI00L2L1L0 设置设置L2L1L0 指定的指定的IR L2L1L0 :IR的优先的优先 级码(级码(BCD) 1:循环优选级循环优选级 0:固定优选级固定优选级 0:自动中断结束。自动中断结束。 EOI A0 1:中断完成之后需要发送中断结束命令。中断完成之后需要发送中断结束命令。 5.2.2 OCW2: 输入与输出接口14 2. OCW ICW1AEOI 1: ISRi0 0:OCW2SL和EOI 01:EOI命令:清最高级ISRi 11:SEOI命令:
12、清L2L1L0指定ISRi 2 INTA (2) 优先级优先级 (a)固定优先级:)固定优先级:IR0IR7(最低)最低) (1) 中断结束中断结束 5.2.2 OCW2的编程的编程: 输入与输出接口15 2. OCW (2) 优先级(续)优先级(续) (b)循环优先级:循环优先级: RSLEOIL2L1L0 101EOI时,优先级循环至刚服务的时,优先级循环至刚服务的IR最低最低 111SEOI时,优先级循环至时,优先级循环至L2L1L0指定的指定的IR最低最低 100AEOI时,置优先级循环时,置优先级循环 000AEOI时,清优先级循环时,清优先级循环 110置置L2L1L0指定的指定的
13、IR优先级最低优先级最低 5.2.2 输入与输出接口16 置1:允许SMM 00ESMMSMM01PRRRIS 置1:特屏 置置1:查询命令查询命令 0011 0101 无操作读IRR读ISR RR: RIS: 2.OCW 5.2.2 A0 OCW3: 输入与输出接口17 3. OCW的编程的编程 (1) 特殊屏蔽特殊屏蔽 (a)一般屏蔽)一般屏蔽 通过通过OCW1,使使8259A中的屏蔽寄存器中的屏蔽寄存器IMR中的一位或若中的一位或若 干位置干位置1来屏蔽来屏蔽IRR对应位的中断源。一个中断源的屏蔽不影对应位的中断源。一个中断源的屏蔽不影 响其他中断源的请求。当某一中断请求被响应时,响其他
14、中断源的请求。当某一中断请求被响应时,ISR中相中相 应位置应位置1,屏蔽了同级(一般全嵌套方式)和较低级中断请,屏蔽了同级(一般全嵌套方式)和较低级中断请 求。求。 IMRi=1IRi被屏蔽,不影响被屏蔽,不影响IR上操作上操作 ISRi=1IRiIR7被屏蔽(被屏蔽(FUM)/ IRi+1IR7被屏蔽(被屏蔽(SFUM) 5.2.2 输入与输出接口18 3. OCW的编程的编程 (1) 特殊屏蔽(续)特殊屏蔽(续) (b)特殊屏蔽方式)特殊屏蔽方式 在某些希望一个中断服务程序能动态改变系统优先级结构的场合,常在某些希望一个中断服务程序能动态改变系统优先级结构的场合,常 采用特殊屏蔽方式。即
15、在此中断服务程序中,用采用特殊屏蔽方式。即在此中断服务程序中,用OCW1将屏蔽寄存器中将屏蔽寄存器中 本级中断的对应位置本级中断的对应位置1,即将本级中断屏蔽;然后写入,即将本级中断屏蔽;然后写入OCW3,使使 ESMM=1、SMM1,这样使中断服务寄存器中当前对应位自动清这样使中断服务寄存器中当前对应位自动清0,为,为 开放较低级中断请求提供可能。特殊屏蔽方式总是在中断处理程序中使开放较低级中断请求提供可能。特殊屏蔽方式总是在中断处理程序中使 用的。采用这种方式后,由于本级中断在中断服务程序中被屏蔽,对外用的。采用这种方式后,由于本级中断在中断服务程序中被屏蔽,对外 界来说,好像界来说,好像
16、CPU未处理任何中断。这样即使是最低级中断请求,也会未处理任何中断。这样即使是最低级中断请求,也会 得到响应。需要特殊屏蔽方式复位时,给得到响应。需要特殊屏蔽方式复位时,给8259A送送OCW3,使使ESMM=1、 SMM0;然后送然后送OCW1,使本级中断的屏蔽位清除,最后向使本级中断的屏蔽位清除,最后向8259A送中送中 断结束命令结束服务。断结束命令结束服务。 OCW3ESMM,SMM=11 IMRi=1 IRi被屏蔽,允许未被被屏蔽,允许未被IMR屏蔽屏蔽 ISRi=1 的中断请求的中断请求 5.2.2 输入与输出接口19 3. OCW的编程的编程 (2) 查询中断查询中断 IF=0
17、随后的随后的 (当(当 =0)作为)作为 ISR位置位置1 OCW3 P=1 IN的的IRR中最高级中最高级IR二进制代码二进制代码DB(A0=0) I x x x x W2 W1 W0 0:无中断无中断 1: 有中断有中断 二进制码二进制码转入相应中断服务程序转入相应中断服务程序 用途:用途:1.无需中断响应,节省存储空间无需中断响应,节省存储空间 2.把中断扩大到把中断扩大到64级以上级以上 INTARDCS 一种用软件确定中断请求位的方式,一般在一个中断服务程序可为一种用软件确定中断请求位的方式,一般在一个中断服务程序可为 几个中断设备服务的场合使用。其特点是外设仍通过几个中断设备服务的
18、场合使用。其特点是外设仍通过8259A申请中断申请中断 (可为边沿触发或电平触发,由(可为边沿触发或电平触发,由ICW1设置)。但设置)。但8259A却不使用却不使用INT信信 号向号向CPU申请中断;申请中断;CPU内部将内部将IF复位,禁止复位,禁止CPU用硬件响应中断请求;用硬件响应中断请求; CPU用软件查询确定中断源,从而实现对设备的中断服务。用软件查询确定中断源,从而实现对设备的中断服务。CPU的查询的查询 命令是通过命令是通过OCW3的的P=1设置来实现的,设置来实现的,CPU随后的随后的IN指令作为中断响应。指令作为中断响应。 若有中断请求,便识别出最高级的中断请求,使若有中断
19、请求,便识别出最高级的中断请求,使ISR中相应位置位,转入中相应位置位,转入 相应的中断服务程序。相应的中断服务程序。 5.2.2 输入与输出接口20 1.连接连接 w1个主片,至多个主片,至多8个从片(个从片(7n+1级中断),从片级中断),从片INT主片主片IRi上,上, 主片主片INTCPU INTR上上 w非缓冲方式:主片非缓冲方式:主片 Vcc, 从片从片 GND w主从片都有各自独立的主从片都有各自独立的I/O空间空间 w 都接都接CPU系统的系统的 ,主从,主从CAS2CAS0互连,主片输出,从互连,主片输出,从 片输入。片输入。 w从片的从片的IRi上可带下级上可带下级8259
20、的的INT,但不能用向量中断,只能查询中断但不能用向量中断,只能查询中断 地址空间另设,地址空间另设, 、 CAS2CAS0不用,不用, 作响应输入作响应输入 5.2.3 8259的级联的级联 ENSP ENSP INTAINTA INTARD 输入与输出接口21 8259的级联图的级联图 输入与输出接口22 5.2.3 8259的级联的级联 2.初始化初始化 主、从主、从8259都要分别设置都要分别设置 ICW1SNGL0 ICW2:各自分别设置各自分别设置 ICW3:主片设置连从片的主片设置连从片的IRi的标记的标记 从片设置连主片的从片设置连主片的IRi的标志代码的标志代码 ICW4:主
21、片主片SFUM 1,从片从片SFUM 0 BUF和和M/S根据情况设置根据情况设置 其它各自按情况设置其它各自按情况设置 3.中断过程中断过程 (1)IR0IR7中中1或几条请求有效,或几条请求有效,IRRi1 (2)优先级判优电路根据优先级判优电路根据IRR、IMR、ISR的状态选出未屏蔽的最的状态选出未屏蔽的最 高优先级的高优先级的IRRi作为作为INTCPU INTR (3)当当IF1,在指令结束时,在指令结束时,CPU响应中断。响应中断。 输入与输出接口23 5.2.3 8259的级联的级联 (4)CPU处理中断向量号,保护现场,转入中断服务程序。处理中断向量号,保护现场,转入中断服务
22、程序。 (5)中断嵌套)中断嵌套 中断服务程序中中断服务程序中IF1,允许嵌套。允许嵌套。 优先级高的中断请求可以中断优先级低的中断服务。优先级高的中断请求可以中断优先级低的中断服务。 主片主片SPUM方式下允许同一从片实行中断嵌套。方式下允许同一从片实行中断嵌套。 (6)中断服务)中断服务 (7)中断结束)中断结束 非非AEOI要发要发EOI命令,清除命令,清除ISRi位,恢复标志和断点返回主程序位,恢复标志和断点返回主程序 在在SPUM要发送两次要发送两次EOI EOI从从8259,测试从,测试从8259的的ISR 为全为全0,EOI 主主8259 不为不为0,不向主,不向主8259发发E
23、OI 输入与输出接口24 实模式下中断编程实模式下中断编程 输入与输出接口25 OLD0CDD? CODESEGMENT MOVAX, 350CH; 保存原来的保存原来的0CH中断向量中断向量 INT21H MOVWORDPTR OLD0C,BX MOVWORDPTR OLD0C+2,ES MOVAX, CODE; 写入新的写入新的0CH中断向量中断向量 MOVDS,AX MOVDX,OFFSET SERVICE MOVAX,250CH INT21H ; 其它程序段其它程序段 ; 中断处理子程序中断处理子程序 输入与输出接口26 ; 中断处理子程序中断处理子程序 SERVICE PROC PU
24、SHA; 保护现场保护现场 PUSH DS STI; 打开中断打开中断 ; 串口数据处理程序串口数据处理程序 CLI; 关闭中断关闭中断 POPDS; 恢复现场恢复现场 POPA IRET SERVICE ENDP 输入与输出接口27 w接口芯片接口芯片/管理器件,总线主控设备管理器件,总线主控设备 w8237DMAC有有4个独立的个独立的DMA通道:每个通道可独立编程、自通道:每个通道可独立编程、自 动预置;每个通道有动预置;每个通道有64K的地址和计数功能,在超过的地址和计数功能,在超过64K地址空地址空 间的系统中进行间的系统中进行DMA传送时,需要将超过的地址位通过传送时,需要将超过的
25、地址位通过I/O端口端口 或页面寄存器实现;或页面寄存器实现;DMA请求可允许请求可允许/禁止;软件可设置禁止;软件可设置DMA请请 求。求。8237的的DMA通道可以通过级联扩充:使用下级通道可以通过级联扩充:使用下级HRQ连上级连上级 DREQ传递传递DMA请求,使用上级请求,使用上级DACK连下级连下级HLDA传递传递DMA响响 应。应。 w 存储器存储器存储器存储器 w三种操作类型:读、写、检验三种操作类型:读、写、检验 w四种传送方式:单个、成组、请求、级联传送四种传送方式:单个、成组、请求、级联传送 wDMA结束时产生结束时产生 输出,输入输出,输入 使使DMA传送结束传送结束 5
26、.3 8237 DMAC EOP EOP 输入与输出接口28 5.3.1 8237 DMAC结构结构 输入与输出接口29 读读(IOR) 写写(IOW) I/O口地址口地址 寄寄 存存 器器 00读通道读通道0当前地址寄存器当前地址寄存器写通道写通道0基地址与当前地址寄存器基地址与当前地址寄存器 01 读通道读通道0当前字节计数寄存器当前字节计数寄存器写通道写通道0基字节计数与当前字节计数寄存器基字节计数与当前字节计数寄存器 02读通道读通道1当前地址寄存器当前地址寄存器写通道写通道1基地址与当前地址寄存器基地址与当前地址寄存器 03 读通道读通道1当前字节计数寄存器当前字节计数寄存器写通道写
27、通道1基字节计数与当前字节计数寄存器基字节计数与当前字节计数寄存器 04读通道读通道2当前地址寄存器当前地址寄存器写通道写通道2基地址与当前地址寄存器基地址与当前地址寄存器 05 读通道读通道2当前字节计数寄存器当前字节计数寄存器写通道写通道2基字节计数与当前字节计数寄存器基字节计数与当前字节计数寄存器 06读通道读通道3当前地址寄存器当前地址寄存器写通道写通道3基地址与当前地址寄存器基地址与当前地址寄存器 07 读通道读通道3当前字节计数寄存器当前字节计数寄存器写通道写通道3基字节计数与当前字节计数寄存器基字节计数与当前字节计数寄存器 08读状态寄存器读状态寄存器写命令寄存器写命令寄存器 0
28、9 - 写请求寄存器写请求寄存器 0A - 写单个屏蔽位的屏蔽位寄存器写单个屏蔽位的屏蔽位寄存器 0B - 写工作方式寄存器写工作方式寄存器 0C - 写清除先写清除先/后触发器命令后触发器命令 0D读暂存寄存器读暂存寄存器写清除命令写清除命令(总清总清) 0E - 写清写清4个屏蔽位的屏蔽寄存器个屏蔽位的屏蔽寄存器 0F - 写写4个屏蔽位的屏蔽寄存器个屏蔽位的屏蔽寄存器 8237A寄存器口地址寄存器口地址 输入与输出接口30 5.3.2 8237 内部寄存器和编程内部寄存器和编程 1.内部寄存器及软件命令内部寄存器及软件命令 (1)地址地址R(2)字计数字计数R 基地址基地址R 当前寄存器
29、的初值,自动预置时重送给当前当前寄存器的初值,自动预置时重送给当前R; 基字计数基字计数R 与当前与当前R同时装入,不能读出同时装入,不能读出 当前地址当前地址R:DMA传送的传送的MEM地址,自动地址,自动1,自动预置时,自动预置时, 产生产生 , 重装重装 当前字计数当前字计数R:DMA未传送的字节数,自动减未传送的字节数,自动减1 减过减过0(01=FFFFH)时,置时,置TC位位 初始化为比要传输的字节数少初始化为比要传输的字节数少1的值的值 EOP 输入与输出接口31 5.3.2 8237 内部寄存器和编程内部寄存器和编程 (3)工作方式R(写,0BH)(每个通道都有一个) D7D6
30、D5D4D3D2D1D0 传送方式 地址 增减 自动 预置 操作类型CH选择 01:单次传送,1次1字节, 两单次传送总线释放至少1周 期 10:成组传送连续,TC/ 为止 00:请求传送连续,TC/ /DREQ无效为止 11:级联传送: 上级DREQ下级HRQ 上级DACK下级HLDA 0: 地址 增 1: 地址 减 1: 允许 自动 预置 0: 禁止 自动 预置 00:检验,不传 送 01: 写I/OM 10: 读MI/O 11:无效 00: CH0 01: CH1 10: CH2 11:CH3 EOP EOP DATA DATA IORMEMW IOWMEMR 输入与输出接口32 D7D
31、6D5D4D3D2D1D0 0:禁止存储器到存储器之间的数据传送禁止存储器到存储器之间的数据传送 1:允许存储器到存储器之间的数据传送允许存储器到存储器之间的数据传送 0:禁止保持通道禁止保持通道0地址(当前)地址(当前) 1:允许保持通道允许保持通道0地址(当前)地址(当前) 0:正常时序正常时序 1:压缩时序压缩时序 0:固定优先级固定优先级 1:循环优先级循环优先级 0:DACK低电平有效低电平有效 1: DACK高电平有效高电平有效 0:DREQ高电平有效高电平有效 1: DREQ低电平有效低电平有效 0:选择滞后写选择滞后写 1:选择扩展写选择扩展写 (4)命令寄存器命令寄存器(写,
32、写,08H) 0:允许:允许DMAC工作工作 1:禁止:禁止DMAC工作工作 输入与输出接口33 (5)请求寄存器请求寄存器(写写09H,写请求写请求R单个位)单个位) D7D6D5 D4 D3 D2 D1 D0 不用不用 0 0:CH0 0 1:CH1 1 0:CH2 1 1:CH3 0:清请求位清请求位 1:置请求位置请求位 DMA请求可以通过请求可以通过DREQ硬件输入和编程软件请求硬件输入和编程软件请求请求请求 标志位标志位 请求位不能屏蔽,有规定的优先级请求位不能屏蔽,有规定的优先级 M M用写用写CH0的请求位启动的请求位启动 清请求清请求R中相应位,中相应位,RESET信号和主清
33、命令总清请求信号和主清命令总清请求R 软件请求一般用于成组类的软件请求一般用于成组类的DMA传送传送 EOP 输入与输出接口34 (6)屏蔽寄存器屏蔽寄存器(写写0AH、0FH、0EH) 每每CH一位,置屏蔽位,禁止本一位,置屏蔽位,禁止本CH DREQ有效请求进入请求有效请求进入请求R 写屏蔽写屏蔽R单个位(写单个位(写0AH) 写屏蔽写屏蔽R所有位(写所有位(写0FH) D7D6D5 D4 D3 D2 D1 D0 不用不用 0:清清CH0屏蔽位屏蔽位 1:置置CH0屏蔽位屏蔽位 0:清清CH1屏蔽位屏蔽位 1:置置CH1屏蔽位屏蔽位 0:清清CH2屏蔽位屏蔽位 1:置置CH2屏蔽位屏蔽位
34、0:清清CH3屏蔽位屏蔽位 1:置置CH3屏蔽位屏蔽位 D7D6D5 D4 D3 D2 D1 D0 不用不用 0 0:CH0 0 1:CH1 1 0:CH2 1 1:CH3 0:清屏蔽位清屏蔽位 1:置屏蔽位置屏蔽位 输入与输出接口35 (6)屏蔽寄存器屏蔽寄存器(写写0AH、0FH、0EH)(续)(续) 清屏蔽清屏蔽R所有命令位(写所有命令位(写0EH) 清除屏蔽清除屏蔽R所有位,各所有位,各CH均允许均允许DMA请求请求DREQ 当某当某CH设置为非自动预置时,设置为非自动预置时, 置相应屏蔽位置相应屏蔽位 RESET信号和主清命令总置屏蔽信号和主清命令总置屏蔽R所有位。所有位。 EOP
35、(7)软件命令软件命令 主清命令:主清命令:OUT 0DH,AL ;同同RESET信号:清命令、状信号:清命令、状 态、请求、暂存寄存器和先态、请求、暂存寄存器和先/后触发器,置各通道的屏蔽标后触发器,置各通道的屏蔽标 志。志。 清先清先/后触发器命令:后触发器命令:OUT OCH,AL ;写写16位二进制数时,位二进制数时, 自动翻转。自动翻转。 清屏蔽寄存器命令:清屏蔽寄存器命令: OUT OEH,AL ;清所有屏蔽位清所有屏蔽位 输入与输出接口36 D7D6D5D4D3D2D1D0 CH 3 CH 2 CH 1 CH0CH 3 CH2CH1CH0 (8)状态寄存器状态寄存器(读读08H)
36、 CHi请求请求DMA服务服务 和响应时置和响应时置1 TC=1/ =0置置1 RESET1/读状态寄存器读状态寄存器清清0 EOP (9)暂存寄存器暂存寄存器(读读0DH) M暂存寄存器暂存寄存器M 最后一个字节可读最后一个字节可读 RESET清除清除 输入与输出接口37 2. 8237初始化编程初始化编程 MOV AL,04H ;检测前禁止检测前禁止8237工作工作 OUT 08H,AL OUT 0DH,AL ;主清除命令主清除命令 MOV AL,00H OUT 08H,AL ;写命令寄存器写命令寄存器 MOV AL,0FFH OUT 01H,AL;装字计数寄存器低装字计数寄存器低8位位
37、PUSH AX OUT O1H,AL ;装高装高8位位 MOV AL,58H OUT 0BH,AL ;写写CH0方式方式 寄存器寄存器 MOV AL,00H OUT 0AH,AL ;清清CH0屏蔽屏蔽 位位 输入与输出接口38 5.3.3 8237的工作的工作 流程和时序流程和时序 输入与输出接口39 (1)初始化初始化8237:起始地址、数据长度、工作方式、操作类型等。:起始地址、数据长度、工作方式、操作类型等。 (2)外设外设8237 =1 8237HRQ =1 CPU HOLD=1 CPU HLDA=1 8237HLDA=1 8237 =1 外设。外设。 (3)DMA周期周期 当前地址当
38、前地址R输出高输出高8位地址位地址DB7DB0 ADSTB时存入时存入 地址锁存器地址锁存器 AEN=1送上送上A15 A8;当前地址当前地址R输出低输出低8位地址位地址 A7 A0 。 8237发发 ,读出数据送,读出数据送D7 D0 ;8237 发发 ,DB上数据送入外设上数据送入外设/存储器。存储器。 一个一个DMA周期后,当前地址周期后,当前地址R+/-1,当前字计数器当前字计数器R减减1, 根据设定的工作方式,重复或终止。根据设定的工作方式,重复或终止。 DMA工作过程工作过程 1 DREQ 1 DACK IORMEMR/ MEMWIOW / 输入与输出接口40 (4)当前字计数器当
39、前字计数器R计数终止(计数终止(TC),),发出有效发出有效 ,终止,终止 DMA传送。传送。 自动预置自动预置:基寄存器:基寄存器当前寄存器,请求位、屏蔽位不变;当前寄存器,请求位、屏蔽位不变; 非自动预置非自动预置:复位请求位、置屏蔽位、:复位请求位、置屏蔽位、HRQ0、释放总线。释放总线。 (5)存储器之间传送需要存储器之间传送需要2个总线周期个总线周期8个状态,必须由软件个状态,必须由软件 置源通道置源通道CH0的请求位启动,也可以对外部的请求位启动,也可以对外部 作出响应。这作出响应。这 种方式可用于块搜索,当一个数据比较器检测到匹配时,向种方式可用于块搜索,当一个数据比较器检测到匹配时,向 8237发有效的发有效的 来终止搜索来终止搜索。 DMA工作过程(续)工作过程(续) EOP EOP EOP 输入与输出接口41 5.3.4 PC系列机中的系列机中的DMA控制系统控制系统 1 PC/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中国东方演艺集团有限公司子公司东方歌舞团有限公司总经理、副总经理岗位招聘3人备考题库含答案详解(新)
- 2026国有股份制商业银行招聘备考题库往年题考附答案详解
- 2026中国电信云南公司春季校园招聘备考题库(培优a卷)附答案详解
- 2026年韶关学院单招综合素质考试题库含答案详细解析
- 初中化学溶液粘度测量误差及减小策略研究课题报告教学研究课题报告
- 2026中信证券分支机构校园招聘考试参考试题及答案解析
- 2026云南昆明市五华区武成小学招聘3人考试参考试题及答案解析
- 2026年绵阳飞行职业学院单招综合素质考试题库附答案详细解析
- 智能研修中教师学习共同体构建的跨区域教师交流与合作机制教学研究课题报告
- 2026年武术教练武术套路教学真题模拟考试
- 外聘人员考核奖惩制度
- 2026年岳阳现代服务职业学院单招职业技能考试题库及答案详解(各地真题)
- 2026年安徽国防科技职业学院单招职业技能测试题库及答案详解参考
- 2026年及未来5年中国非油炸方便面行业市场全景监测及投资前景展望报告
- 2026年人教PEP版新教材四年级下册英语教学计划(含进度表)
- 2026年九江职业大学单招职业技能考试题库含答案详解(模拟题)
- 2026年安徽电子信息职业技术学院单招综合素质考试题库附答案解析
- 彩票管理条例培训课件
- 油气管道巡检维护操作手册
- 铝单板喷涂管理制度规范
- 【盒马鲜生冷供应链物流成本现状、问题及优化建议探析11000字(论文)】
评论
0/150
提交评论