第7章DMA控制器
第7章 DMA接口(1)
![第7章 DMA接口(1)](https://img.taocdn.com/s3/m/267dc6b5284ac850ad0242ca.png)
AB0
BLE=0B HE=1 MEM AB1 AB2 AB3
“0”
A0 A1 A2
为简化设计,就直接将主片8237A设计 成16位通道,即将地址总线上的AB0空 着,AB1、2与8237A的A0、1相连。内 部16个寄存器的I/O端口号均为偶地址。 在进行DMA传送时,DMAC发出的地 址A15~0实际上是与地址总线AB16~1相 连,AB0置0(BHE=1)。这样,存储 器与外部设备之间是进行的16位数据 交换。
AEN
ADSTB
DB7~0
A7~0 DACK MEMR/IOR 2004/3 MEMW/IOW
A15~8
东北大学计算机系统研究 所
Intel 8237A DMA控制器
DMAC的工作方式
• 块传送方式:整个数据块传送期间,总线 一直被DMAC控制,直到计数寄存器的值由 0变成FFFFH,产生T/C信号。 • 单字节传送方式:也可以传送一个数据块, 但CPU至少可在两次DMA传送之间获得一个 完整的总线周期,即每传送一个字节,就 将总线控制权换给CPU。 • 请求传送方式:可连续传送,直到遇到T/C 或DREQ不再有效为止。
DMAC的工作过程
CPU对DMAC进行初始化,设定存 储器首地址和数据长度 外部设备向DMAC发DMA请求信号 (DREQ) DMAC向CPU发DMA请求(HOLD) CPU向DMAC发响应请求信号 (HLDA) CPU将总线控制权交给DMAC DMAC向外部设备发DMA应答信号 (DACK) 进行DMA传送,由DMAC发地址信 号和控制信号(循环) DMA传送结束,DMAC撤除请求 (HOLD),CPU重新控制总线
RESET DACK
74LS340~7
第7章 中断和DMA
![第7章 中断和DMA](https://img.taocdn.com/s3/m/e573264177232f60ddcca12e.png)
(3) 优先权判决电路从IRR中检测出优先级最 高的中断请求位,并将其与ISR中记录的正 在被CPU服务的中断进行优先级比较。当提 请的中断优先级高于正在服务的中断优先级 时,中断优先权判决电路就向控制逻辑发出 有效的中断请求信号。 (4) 当控制逻辑收到有效的中断请求信号时, 向CPU发出高电平信号INT,请求中断服务。 (5) 在中断允许的情况下(IF=1),CPU接受中 断请求INT,并发出中断响应信号INTA,对 8086/8088 CPU,将连续发出两个INTA脉 冲。
IMR7 IMR6 IMR5 IMR4 IMR3 IMR2 IMR1 IMR0 IMR
IRR7 IRR6 IRR5 IRR4 IRR3 IRR2 IRR1 IRR0 IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0
IRR
④优先权判决器PR:实现中断优先级判别。 • 如果当前CPU没有执行中断服务,则优先 权判决器对IRR中的各个有效中断进行排 队判优,选出优先级最高的中断给予处理, 且将 优先权编码送ISR。 • 如果当前CPU正执行中断服务,则优先权 判决器将新的中断请求优先权编码与ISR 进行比较,如果优先权高给予处理(中断 嵌套),并置新中断的优先权编码到ISR。 否则不予响应。
③具有多种优先权管理模式; ④可直接向CPU提供中断类型码; ⑤单+5V电源供电。 7.2.1 8259的结构及功能 1.与系统总线接口电路 ①数据总线缓冲器:是8位双向的三态数据 缓冲总线接口,D0~D7。所有数据输入输 出都是通过该接口完成。 ②读写控制电路:负责对选中的内部寄存器 进行读写操作。
IRRn=1,表示该 引脚有中断请求
IRR7 IRR6 IRR5 IRR4 IRR3 IRR2 IRR1 IRR0 IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0
微型计算机技术及应用第四版_课后题答案
![微型计算机技术及应用第四版_课后题答案](https://img.taocdn.com/s3/m/8762a17227284b73f242505e.png)
第一章微型计算机概述1.微处理器、微型计算机和微型计算机系统三者之间有什么不同?答:①微处理器是微型计算机的核心,是微型计算机的一部分。
它是集成在一块芯片上的CPU,由运算器和控制器组成。
②微型计算机包括微处理器、存储器、I/O接口和系统总线,是微型计算机系统的主体。
③微型计算机系统包括微型计算机、外设及系统软件三部分。
第二章 8086微处理器1.总线接口部件有哪些功能?请逐一进行说明。
答:1.总线接口部件的功能是负责与存储器、I/O端口传送数据。
2.具体讲:①总线接口部件要从内存取指令送到指令队列;② CPU执行指令时,总线接口部件要配合执行部件从指定的内存单元或者外设端口中取数据,将数据传送给执行部件,或者把执行部件的操作结果传送到指定的内存单元或外设端口中。
1.总线周期的含义是什么?8086/8088的基本总线周期由几个时钟组成?如一个CPU的时钟频率为24MHz,那么,它的一个时钟周期为多少?一个基本总线周期为多少?如主频为15MHz呢?答:1.总线周期的含义是总线接口部件完成一个取指令或传送数据的完整操作所需的最少时钟周期数。
2.8086/8088的基本总线周期由4个时钟周期组成。
3.当主频为24MHz时,Tφ=1/24MHz≈41.7ns,T总=4Tφ≈167ns。
4.当主频为15MHz时,Tφ=1/15MHz≈66.7ns,T总=4Tφ≈267ns。
1.CPU启动时,有哪些特征?如何寻找8086/8088系统的启动程序?答:1.CPU启动时,有以下特征:①内部寄存器等置为初值;②禁止中断(可屏蔽中断);③从FFFF0H开始执行程序;④三态总线处于高阻状态。
2.8086/8088系统的启动程序从FFFF0H单元开始的无条件转移指令转入执行。
1.在中断响应过程中,8086往8259A发的两个信号分别起什么作用?答:第一个负脉冲通知外部设备的接口,它发出的中断请求已经得到允许;外设接口收到第二个负脉冲后,往数据总线上放中断类型码,从而CPU得到了有关此中断请求的详尽信息。
微机原理第7章练习题及答案
![微机原理第7章练习题及答案](https://img.taocdn.com/s3/m/ff50668b844769eae109ed0e.png)
第7章输入/输出与中断一、自测练习题㈠选择题1.一微机系统有10根地址线用于I/O端口寻址,因而具有I/O空间的范围是( )字节。
A) 1024 B) 10K C) 0.5M D) 1M2.8086CPU读/写一次存储器或I/O端口所需的时间称为一个( )。
A) 总线周期 B) 指令周期 C) 时钟周期 D) 基本指令执行时间3.微型计算机的输入/输出有三种不同的控制方法,其中以( )控制的输入/输出是微机进行I/O的一种最主要的控制方式。
A) 程序控制 B) 中断控制C) DMA控制D) 以上均可4.程序查询I/O方式的工作流程是按( )的次序完成一个字符的传输。
A) 写数据端口,读/写控制端口B) 读状态端口,读/写数据端口C) 写控制端口,读状态端口,写数据端口D) 随I/O接口的具体要求而定5.在CPU与外设的I/O传送控制方式中,效率高、实时性强的方式是( )。
A) 同步传送 B) 查询传送 C) 无条件传送 D) 中断传送6.在CPU与外设的I/O传送控制方式中,传送速度最快的方式是( )。
A) 无条件传送 B) 查询传送 C) 中断传送 D) DMA传递7.用具有两个状态(“0”和“1”态)的一组开关作简单输入设备时,应采用( )传送方式来输入信息。
A) 无条件B) 查询C) 中断D) DMA8.用一组发光二极管作为简单输出设备时,应采用( )传送方式来输出信息。
A) DMA B) 无条件C) 查询D) 中断9.在微机系统中引入中断技术,可以( )。
A) 提高外设速度B) 减轻主存负担C) 提高处理器的效率D) 增加信息交换的精度10.CPU响应中断请求的时刻是在( )。
A) 执行完成正在执行的程序以后 B) 执行完正在执行的指令以后C) 执行完本时钟周期以后D)执行完正在执行的机器周期以后11.8086/8088CPU向应两个硬中断INTR和NMI时,相同的必要条件是( )。
A) 允许中断B) 当前I/O操作执行结束C) 总线空闲D) 当前访问内存操作结束12.在微型计算机系统中,高速外设与内存储器进行批量数据传送时,应采用( )。
微机原理、汇编语言与接口技术 第七章 习题答案 人民邮电出版社(周杰英 张萍 郭雪梅 著)
![微机原理、汇编语言与接口技术 第七章 习题答案 人民邮电出版社(周杰英 张萍 郭雪梅 著)](https://img.taocdn.com/s3/m/46054804eefdc8d376ee3254.png)
第7章输入/输出接口习题与参考答案这一章的习题与参考答案分为两大部分,一部分是输入输出概述及DMA控制器的习题与参考答案;另一部分是中断及中断控制器部分的习题与参考答案。
一、输入输出概述及DMA控制器的习题与参考答案1、请说明为什么输入接口的数据缓冲寄存器必须有三态输出功能而输出接口却不需要的原因。
解:输入接口的数据缓冲寄存器的输出端是直接接在数据总线上的,如果数据寄存器没有三态输出功能,则无论数据寄存器被寻址选中或未被选中,其数据都会被送上数据总线,若此时总线上真正要传送的数据与该输入缓存器的内容不一致时,就会发生总线冲突。
所以,输入接口的数据缓冲器必须有三态输出功能,以便当接口未被寻址选中时,其输出端处于高阻态,从而与总线隔离。
对于输出接口来说,是输入端与数据总线相连,而输出端是与外设相连,因此其输出不影响总线状态;另外,一个外设一般只与一个输出数据缓存器相连,因此输出接口的数据缓存器无须有三态输出功能。
2、8086/8088CPU中哪些寄存器可以用于I/O寻址?若I/O端口地址分别是10H和100H,分别写出向这两个端口写入73H的程序段。
解:8086/8088CPU内可以用于I/O寻址的寄存器为AL、AX和DX。
向端口10H写入73H的程序段为: MOV AL,73HOUT 10H,AL向端口10H写入73H的程序段为: MOV AL,73HMOV DX,100HOUT DX,AL3、图为7段显示器接口,显示器采用共阳极接法,试编写程序段,使AL中的一位十六进制数显示于显示器上。
输出锁存器地址为40H。
解:TABLE DB 3FH,06H,5BH,4FHDB 66H,6DH,7DH,07HDB 7FH,67H,77H,7CH,DB 39H,5EH,79H,71HLEA BX,TABLEXLATOUT 40H,AL4、PC/XT机有哪些输入输出方式?各自的特点如何?DMA控制器应具备哪些功能?解:无条件方式:需要外设处于就绪状态,硬件简单;查询方式:CPU需要不断地查询外设是否就绪,浪费CPU时间,硬件较简单;中断方式:外设准备好后,向CPU发中断请求,请求CPU完成数据传输,外设与CPU并行;硬件又比前两者复杂。
第7章输入输出习题参考解答
![第7章输入输出习题参考解答](https://img.taocdn.com/s3/m/7d8905200722192e4536f6a3.png)
第7章思考题与习题参考答案1.计算机的I/O系统的功能是什么?它由哪几个部分组成?答:计算机的I/O系统,主要用于解决主机与外部设备间的信息通讯,提供信息通路,使外围设备与主机能够协调一致地工作。
计算机的I/O系统由I/O硬件和I/O软件两大部分组成。
其中I/O硬件包括:系统总线、I/O接口、I/O设备及设备控制器。
I/O软件包括:用户的I/O程序、设备驱动程序、设备控制程序。
2.I/O硬件包括哪几个部分?各部分的作用是什么?答:I/O硬件包括:系统总线、I/O接口、I/O设备及设备控制器。
系统总线的作用是为CPU、主存、I/O设备(通过I/O接口)各大部件之间的信息传输提供通路。
I/O接口通常是指主机与I/O设备之间设置的一个硬件电路及其相应的控制软件。
它用于在系统总线和外设之间传输信号,并起缓冲作用,以满足接口两边的时序要求。
I/O设备的作用是为主机与外部世界打交道提供一个工具。
设备控制器用来控制I/O设备的具体动作,不同的I/O设备需要完成的控制功能不同。
3.什么是用户I/O程序?什么是设备驱动程序?什么是设备控制程序?答:用户I/O程序是指用户利用操作系统提供的调用界面编写的具体I/O设备的输入输出程序。
例如用户编写的用打印机输出文本的程序。
设备驱动程序是一种可以使计算机和设备通信的特殊程序。
可以说相当于操作系统与硬件的接口,操作系统只有通过这个接口,才能控制硬件设备的工作,假如某设备的驱动程序未能正确安装,便不能正常工作。
设备控制程序就是驱动程序中具体对设备进行控制的程序。
设备控制程序通过接口控制逻辑电路,发出控制命令字。
命令字代码各位表达了要求I/O设备执行操作的控制代码,由硬件逻辑解释执行,发出控制外设的有关控制信号。
4.说明设计I/O系统的三个要素的具体内容。
答:设计I/O系统应该考虑如下三个要素:①数据定位: I/O系统必须能够根据主机提出的要求进行设备的选择,并按照数据在设备中的地址找到相应的数据。
计算机组成原理(第七章 输入输出系统
![计算机组成原理(第七章 输入输出系统](https://img.taocdn.com/s3/m/57651fbaf121dd36a32d8242.png)
第七章输入输出系统第一节基本的输入输出方式一、外围设备的寻址1.统一编址:将输入输出设备中控制寄存器、数据寄存器、状态寄存器等与内存单元一样看待,将它们和内存单元联合在一起编排地址,用访问内存的指令来访问输入输出设备接口的某个寄存器,从而实现数据的输入输出。
2.单独编址:将输入输出设备中控制寄存器、数据寄存器、状态寄存器单独编排地址,用专门的控制信号进行输入输出操作。
3.CPU与外围设备进行通信有三种类型:(1)CPU向外围设备发出操作控制命令。
(2)外围设备向CPU提供状态信息。
(3)数据在CPU与外围设备之间的传递。
历年真题1.对外设统一编址是指给每个外设设置一个地址码。
(2002年)【分析】CPU与外设之间的信息传送是通过硬件接口来实现的,各种外设的硬件接口上又都包含有多个寄存器,如控制寄存器、数据寄存器、状态寄存器等。
统一编址是将外设接口上的各种寄存器等同于内存储器的存储单元,通过使用访问内存单元的指令来访问外设接口上的各个寄存器,这样就可以使用访存指令来访问外设,输入输出操作简单,程序设计比较简便。
由于外设接口上的寄存器种类和数量通常不止一个,所以一个外设至少对应一个以上的内存地址。
【答案】对外设统一编址是将外设接口上的寄存器等同内存单元,给每个外设设置至少一个地址码。
二、外围设备的定时1.外围设备的定时方式有异步传输方式和同步定时方式两种。
2.实现输入输出数据传输的方式主要有:程序控制方式、直接存储访问(DMA)方式、通道方式。
程序控制方式又可分为程序查询方式和中断方式两种。
历年真题1.对I/O数据传送的控制方式,可分为程序中断控制方式和独立编址传送控制方式两种。
(2001年)【分析】对1/O数据传送的控制方式,可分为程序直接控制方式、程序中断控制方式、DMA控制方式、通道控制方式等。
程序中断控制方式只是其中的一种方法,独立编址是指对1/O设备的控制寄存器、数据寄存器、状态寄存器等单独进行地址编排,使用专门的指令对其进行操作,可用在各种数据传送的控制方式中。
计算机操作系统【第七章】 汤子瀛版
![计算机操作系统【第七章】 汤子瀛版](https://img.taocdn.com/s3/m/62ccf3d176eeaeaad1f33036.png)
计算机操作系统【第七章】1.试画出微机和主机中常采用的I/O系统结构图。
微机中常采用的I/O系统结构图为:主机中常采用的I/O系统结构图为:2.试说明设备控制器的构成。
设备控制器的构成如图所示:由上图可见,设备控制器由以下三部分组成:(1)设备控制器与处理机的接口,该接口用于实现CPU与设备控制器之间的通信,提供有三类信号线:数据线、地址线和控制线。
(2)设备控制器与设备的接口,可以有一个或多个接口,且每个接口连接一台设备。
每个接口都存在数据、控制和状态三种类型的信号。
(3)I/O逻辑,用于实现对设备的控制。
其通过一组控制线与处理机交互,处理机利用该逻辑向控制器发送I/O命令,I/O逻辑对收到的命令进行译码。
3.为了实现CPU与设备控制器之间的通信,设备控制器应具有哪些功能?为了实现CPU与设备控制器之间的通信,设备控制器应具有如下功能:(1)接受和识别命令。
CPU可以向控制器发送多种不同的命令,设备控制器应能接收并识别这些命令。
设置控制寄存器来存放所接收的命令和参数。
(2)数据交换,指实现CPU与控制器之间、控制器与设备之间的数据交换。
设置数据寄存器来存放有关数据。
(3)设备状态的了解和报告。
控制器记录下所连接设备的状态以供CPU了解。
为此,要在控制器中设置一状态寄存器,用其中的每一位反映设备的某一状态。
(4)地址识别。
配置地址译码器以便于正确识别设备地址。
4.分别就字节多路通道、数据选择通道和数组多路通道进行解释。
①字节多路通道含有许多非分配型子通道分别连接在低、中速I/O设备上,子通道按时间片轮转方式共享主通道,按字节方式进行数据传送。
具体而言,当第一个子通道控制其I/O 设备完成一个字节的交换后,便立即腾出字节多路通道(主通道),让给第二个子通道使用;当第二个子通道也交换完一个字节后,又依样把主通道让给第三个子通道使用,以此类推。
转轮一周后,重又返回由第一个子通道去使用主通道。
②数组选择通道只含有一个分配型子通道,一段时间内只能执行一道通道程序、控制一台设备按数组方式进行数据传送。
微机原理第七章题库
![微机原理第七章题库](https://img.taocdn.com/s3/m/9f9cc234376baf1ffc4fad59.png)
第七章注意的问题:本章中控制信号后面的#表示此信号低电平有效。
一、选择1、 8086/8088CPU对I/O端口使用()编址方法。
A、独立B、统一C、直接D、间接2、 8086/8088CPU使用()根地址线对I/O编址。
A、 8B、 10C、16D、203、 8086/8088CPU对I/O端口的最大寻址空间为()。
A、 8KBB、 16KBC、64KBD、1MB4、 8086有一个独立的I/O空间,该空间的最大范围是()A、 8KBB、 16KBC、64KBD、1MB5、 8086CPU采用I/O独立编址方式,可使用()线的地址信息寻址I/O端口。
A、 AD7-AD0B、 AD15-AD0C、 AD19-AD0D、 AD23-AD06、某8088CPU构成的系统中,用10根地址线对I/O端口寻址,因而I/O端口的地址空间为()A、 1KBB、 10KBC、16KBD、64KB7、某8088CPU构成的系统中,占用地址空间0-1FFH,因而至少需用()根地址线对I/O端口寻址。
A、 8B、 9C、 10D、 118、若某8086CPU构成的系统中,具有1024个8位端口,则至少需用()根地址线对I/O端口寻址。
A、 4B、 8C、 10D、 169、 8086/8088CPU读写一次存储器或I/O端口操作所需要的时间称为一个()A、总线周期B、指令周期C、时钟周期D、基本指令执行周期10、 8086/8088CPU的基本I/O总线周期为()个时钟周期A、 6B、 5C、 4D、 311、在8088CPU构成的系统中,组合16位的I/O端口时,最好将其起始地址选为()地址A、奇B、偶C、页D、段12、在8088CPU构成的系统中,组合16位的I/O端口时,最好将其起始地址选为偶地址是为了()A、减少执行指令的总线周期B、减少执行指令的字节数C、节省占用的内存空间D、对内存单元快速寻址13、 8086/8088CPU按I/O指令寻址方式得到的地址是( )A、物理地址B、有效地址C、段内偏移量D、 I/O端口地址14、 8088 CPU对地址为240H的I/O端口读操作指令为()A、 MOV AL,240HB、 MOV AL,[240H]C、 IN AL,240HD、 MOV DX,240H IN AL,DX15、 8086/8088CPU的输出指令OUT Dest,Src中目的操作数Dest只能是()A、 8位或16位端口地址B、 8位端口地址或DX寄存器C、 16位寄存器D、任意16、 8086/8088CPU的输入指令IN Dest,Src中目的操作数Dest只能是()A、 8位或16位端口地址B、 8位端口地址或DX寄存器C、 16位寄存器D、任意17、 8086CPU的输入指令是将输入设备的一个端口中的数据传送到()寄存器。
输入输出和中断
![输入输出和中断](https://img.taocdn.com/s3/m/3ac57b6617fc700abb68a98271fe910ef02dae35.png)
DMA操作的基本方法
周期挪用(Cycle Stealing)
周期扩散
CPU停机方式
DMA(直接存储器存取)传递方式
周期挪用(Cycle Stealing )
添加标题
利用CPU不访问存储器的那些周期来实现DMA操作,此时DMAC可以使用总线而不用通知CPU也不会妨碍CPU的工作。这种方法的关键是如何识别合适的可挪用的周期,以避免同CPU的操作发生重叠。
在8086/8088系统中,通过执行中断指令或由CPU本身启动的中断称为内部中断(也称软件中断)。除单步中断外,内部中断无法用软件禁止,即不受中断允许标志IF的影响。 0型中断——除法出错中断 1型中断——单步中断 3型中断——断点中断 4型中断——溢出中断 INT n指令中断
内部中断——软中断
05
7.1.1 数据信息
●在微型机中,数据大致为三种基本类型:
数字量
模拟量
开关量
7.1
外设接口的一般结构
状态信息
READY(准备好信号)表示输入设备已经准备好信息,CPU可执行输入指令从该外设输入数据。 BUSY(忙信号)表示输出设备正在输出信息,即在“忙”着,同时也等于指示CPU等待。
状态信息表示外设当前所处的工作状态
1.中断分类
8086/8088CPU可以处理256种类型的中断源,这些中断源可分为硬件中断和软件中断两大类。
2.中断向量表
在8086系统中,允许引入256种类型中断源(类型码为0~255),相应有256个中断服务程序首址。存放中断地址的一段内存空间称中断向量表。
7.4.1 中断结构 4
1.内部中断的类型
图7-16 ICW3的格式
图7-17 ICW4 的格式
8237 内部结构及引脚_微型计算机原理及应用教程(第2版)_[共9页]
![8237 内部结构及引脚_微型计算机原理及应用教程(第2版)_[共9页]](https://img.taocdn.com/s3/m/1e6b6edf763231126fdb1179.png)
1837.5.2 8237内部结构及引脚8237A DMA 控制器有4个独立的通道,每个通道均有64KB 寻址与计数能力,并且可以用级联方式来扩充更多的通道。
它允许在外部设备与系统存储器以及系统存储器之间直接变换信息,其数据传送率可达1.5MB/s 。
它提供了多种控制方式和操作模式,大大增强了系统的性能,8237A 是一个高性能通用可编程的DMAC 。
1.8237A 的引脚8237A DMA 控制器是一个40个引脚的双列直插式组件,如图7-13所示。
由于它既作主控者又作受控者,故其外部引脚设置也独具特色,它的I/O 读/写线(IOR 、IOW )和地址线(A 0~A 3)是双向的,另外,还设置了存储器读/写线(MEM 、MEMV )和16位地址输出线(DB 0~DB 7、A 0~A 7)。
这些都是其他I/O 接口芯片所没有的。
下面对各引脚功能加以说明。
DREQ 0~DREQ 3:外部设备对4个独立通道0~3的DMA 服务请求,由申请DMA 传送的设备发出,可以是高电平或低电平有效,由程序选定。
它们的优先级是按DREQ 0最高,DREQ 3最低的顺序排列的。
DACK 0~DACK 3:8237控制器发给I/O 设备的DMA 应答信号,有效电平可高可低,由编程选定,在PC 系列中将DACK 编程为低电平有效,系统允许多个DREQ 信号同时有效,即可以几个外部设备同时提出DMA 申请,但在同一个时间,8237A 只能有一个回答信号DACK 有效,为其服务。
这一点类似于中断请求/中断服务的情况。
HRQ :总线请求,高电平有效,是由8237A 控制器向CPU 发出的要求接管系统总线的请求。
HLDA :总线应答,高电平有效,由CPU 发给8237A 控制器。
HLDA 有效时,表示CPU 已让出总线。
IOR /IOW :I/O 读/写信号,是双向的。
8237A 为主态工作时,它们是输出。
在DMAC 控制下,对I/O 设备进行读/写。
微机填空题题库-答案
![微机填空题题库-答案](https://img.taocdn.com/s3/m/2e59ad15a8114431b90dd861.png)
填空题第1章微型计算机概述1.微型计算机中各部件是通过总线构成一个整体的.2.____微处理器_____是微型计算机的核心。
3.总线按照其规模、用途和应用场合可分为元件极总线、板极总线和通信总线。
4.微型计算机由_CPU_ 、存储器、输入/输出接口和系统总线组成。
5.以微型计算机为主体,配上系统软件、应用软件和外设之后,就成了微型计算机系统。
6.微型计算机的主要性能指标有CPU的位数、__CPU的主频__、内存容量和速度、____硬盘容量第2章 16位和32位微处理器1.Intel 8086CPU是_ 16__位微处理器,有_ 16__根数据总线和_ _20_ _根地址总线,存储器寻址的空间为_ 1MB__,端口寻址空间为_ 64KB__。
8088CPU有_8_根数据总线。
2.输入/输出端口有两种编址方法,既I/O端口与存储单元统一编址和I/O单独编址。
前一种编址的主要优点是功能强和指令灵活。
后一种编址的主要优点是指令运行速度快和增强了程序的可读性。
3.所谓最小模式,就是在系统中只有8086一个微处理器。
4.所谓最大模式是在系统中包含两个或多个微处理器。
(主 8086,其他称协处理器)5.8086工作在最大模式下,引脚MN/MX*接低(高/低)电平。
6.8086/8088CPU的数据线和地址线是以__ 分时复用_____方式轮流使用的。
7.8086中的BIU由__4___个___16___位段寄存器、一个___16____位指令指针、___6___字节指令队列、__20___位地址加法器和控制电路组成。
8.8086/8088提供的能接受外中断请求信号的引脚是 INTR和NMI。
两种请求信号的主要不同之处在于NMI引脚引入的中断不受中断允许标志位IF的屏蔽。
9.8086/8088的存储器是分段的,因此存储单元的物理地址是由段地址和段内偏移量组合而成的。
10.对于8086CPU,物理地址是由段基址和偏移地址两部分构成,若某存储单元的段基址为2000H,偏移地址为1122H,则该存储单元的物理地址为21122H 。
控制器
![控制器](https://img.taocdn.com/s3/m/aa5960094a7302768e9939b6.png)
8237的DMA传输过程 的 传输过程
当某个DMA通道进行 通道进行DMA操作时,向8237发出 操作时, 发出DMA请求信号 请求信号DREQ。 ◆当某个 通道进行 操作时 发出 请求信号 。 8237接收最高优先级的 接收最高优先级的DMA请求信号,向CPU发出总线请求信号 请求信号, 发出总线请求信号HRQ。 接收最高优先级的 请求信号 发出总线请求信号 。 接到8237的HRQ信号, 发出总线允许信号 信号, ◆ CPU接到 接到 的 信号 发出总线允许信号HLDA,让出总线控制 , 控制总线。 对响应的通道发出DMA响应信号 响应信号DACK, 权,即8237控制总线。8237对响应的通道发出 控制总线 对响应的通道发出 响应信号 , 进入DMA传输周期。 传输周期。 进入 传输周期 传输周期, 发出内存的16位地址信号,以及相应的读 写控 ◆在DMA传输周期,8237发出内存的 位地址信号,以及相应的读/写控 传输周期 发出内存的 制信号,控制外设与所寻址的内存传输数据。 制信号,控制外设与所寻址的内存传输数据。 ◆8237通道的地址寄存器和字节计数器,初始化设置了内存首地址和传输 通道的地址寄存器和字节计数器, 通道的地址寄存器和字节计数器 字节数。DMA每传输 个字节,自动对地址寄存器和 字节计数器的值 字节数。 每传输1个字节, 自动对地址寄存器和 字节计数器的值 地址寄存器 每传输 个字节 修改。当字节计数值减为0时, 发计数结束信号EOP,DMA传输结束。 修改。 当字节计数值减为 时 发计数结束信号 , 传输结束。 传输结束 传输结束, 撤消总线请求信号HRQ,CPU也撤消总线允许 ◆当DMA传输结束,8237撤消总线请求信号 传输结束 撤消总线请求信号 , 也撤消总线允许 信号HLDA,总线控制权归还给 信号 ,总线控制权归还给CPU。 。
【2019年整理】第7章DMA控制器
![【2019年整理】第7章DMA控制器](https://img.taocdn.com/s3/m/dd1b33def90f76c661371afe.png)
(4)DMAC将地址(A19~A0)放入地址总线, 该地址用来寻址内存储单元。 (5)DMAC向I/O接口发出响应信号DACK, 该信号可作为接口接受数据的控制条件,有效时, 表示允许接口接受数据; (6)DMAC向存储器发出读控制信号,在该信 号的控制下,由A19~A0指定的单元的内容送 入数据总线。
IOW ——I/O写信号,是低电平有效的双向三态信号。在CPU控
制总线期间,它为输入信号,CPU在控制下对8237A内部寄存 器进行编程。在DMA传送期间,它是输出信号,与配合将数据 从存储器传送到外设接口中。 MEMR ——存储器读信号。低电平有效的三态输出信号,仅用于 DMA传送。在DMA读传送时,它与 IOW 配合,把数据从存储器 传到外设;在存储器到存储器传送时, MEMR 有效控制从源区读出 数据。 MEMW——存储器写信号,低电平有效的三态输出信号,仅用于 DMA传送。在DMA写传送时,它与 IOR 配合,把数据从外设传 到存储器;在存储器到存储器传送时, 有效控制把数据写入 MEMW 目的区。
(7)DMAC向接口发出写控制信号,在该信号及 DACK信号的共同作用下,将数据总线上的内容储存到 接口中的数据寄存器,并通过接口将数据传送给外设, 至此完成了数据传送。 (8)DMAC撤销对CPU的请求信号。 (9)CPU撤销保持响应信号并恢复对总线的控制。 如果数据未传送完,则又从第二步开始重复所述过程。
DMAC 对存储器的访问与 CPU 类似,一般利用系统总
线来进行。 以读存储器为例,其过程是: DMAC 一面向存储器送 存储单元地址和读控制信号( MEMR ) ,同时又向外设 端口送写控制信号( ),数据在硬件信号的控制下 IOW 通过总线由源直接送达目的地。为了支持数据块的传送, DMAC还具有修改地址指针、统计传送次数、判断传送 是否结束等多项自动功能。 所以,使用DMA方法,可支持外设→存储器、存储器 →外设的高速直接传送;变通后,也可支持存储器→存 储器、外设→外设的高速直接传送。
计算机组成原理第七八章答案
![计算机组成原理第七八章答案](https://img.taocdn.com/s3/m/bb23fcd080eb6294dd886c30.png)
外围设备一.选择题1.3.5英寸软盘记录方式采用____c__。
A. 单面双密度B. 双面双密度C. 双面高密度D. 双面单密度2.MO型光盘和PC型光盘都是____C__型光盘。
A. 只读B. 一次C. 重写3.计算机的外围设备是指___D___。
A.输入/输出设备 B.外存储器C.远程通信设备 D.除了CPU和内存以外的其它设备4.CRT的颜色数为256色,则刷新存储器每个单元的字长是_____C_。
A.256位 B.16位 C.8位 D.7位5.磁盘驱动器向盘片磁层记录时采用______方式写入。
A. 并行B. 串行C. 并—串行D. 串—并行6.CRT的分辨率为1024×1024像素,像素颜色数为256,则刷新存储器的容量是___B___。
A.512KB B.1MB C.256KB D.2MB7.一张3.5英寸软盘的存储容量为______,每个扇区存储的固定数据是____ __。
A.1.44MB 512B B.1MB 1024B C.2MB 256B D.1.44MB 512KB 8.用于笔记本电脑的外存储器是__B____ 。
A.软磁盘 B.硬磁盘 C.固态盘 D.光盘9.CD-ROM光盘是____B__型光盘,可用做计算机的______存储器和数字化多媒体设备。
A. 重写,内B. 只读,外C. 一次,外D. 只读,内10.一张3.5寸软盘的存储容量为______MB,每个扇区存储的固定数据是______。
A. 1.44MB ,512BB. 1MB,1024B C .2MB, 256B D .1.44MB,512KB11.CD—ROM光盘的标准播放时间为60分钟。
在计算模式1情况下,光盘的存储容量为 ___B___。
A 601MB B 527MBC 630MBD 530MB12.CRT的颜色数为256色,则刷新存储器每个单元的字长是___C___。
A 256位B 16位C 8位D 7位13. 显示器的主要参数之一是分辨率,其含义为__B____A.显示屏幕的水平和垂直扫描频率B 显示屏幕上光栅的列数和行数C 可显示不同颜色的总数D 同一副画面允许显示不同颜色的最大数目。
DMA控制器
![DMA控制器](https://img.taocdn.com/s3/m/8c3eddebf61fb7360a4c6512.png)
2. 申请阶段
DMA控制器发出DMA请求信号DREQ。
►DMA控制器接收到DMA请求信号后,向CPU
发出总线请求信号HRQ。该信号连接到CPU的 HOLD引脚。
HRQ DREQ
CPU
DMAC
外部设备
9.1
DMA概要
CPU检测HRQ N HRQ有效且LOCK无效 Y CPU交出总线
3. 响应阶段
►CPU收到DMA的HRQ
④ DACK
外设接口
AEN IOW MEMW IOR MEMR
系统总线
⑤
存储器
9.1
DMA概要
DMA的传送过程分5个阶段:
1. 初始化阶段
要传送的数据字节数 ► 数据在存储器中的起始地址 ► 传送方向 ► DMAC的通道号 ……
►
DMAC
6
9.1
DMA概要
►当外设有DMA需求,并且已准备就绪,则向
具有多种控制方式和操作类型。
13
9.2
8237A的编程结构
二. 8237A的编程结构
DMA控制器的2种状态
主动工作状态:主模块
在主动工作状态下,DMAC取代处理器CPU,获得 了对系统总线的控制权,成为系统总线的主控者, 向存储器和外设发号施令。
被动工作状态:从模块
在被动工作状态下,DMAC接受CPU对它的控制和 指挥。例如:对DMAC进行初始化编程以及从 DMAC读取状态等。
速外设直接进行数据交换而无需CPU的干预。
特点
DMA传送期间,DMA控制器(DMAC)接管了
CPU对总线的控制权。
DMA方式中,内存地址的修改、传送结束的判
断都由硬件电路实现。即:用硬件控制代替了 软件控制。
计算机组成原理第7章习题11
![计算机组成原理第7章习题11](https://img.taocdn.com/s3/m/409e12e4d4d8d15abf234e04.png)
习题7一.单选选择题12.计算机系统的输入/输出接口通常是的交界面。
A. CPU与存储器之间B. 存储器与打印机之间C. 主机与外围设备之间D. CPU与系统总线之间13.在具有中断向量表的计算机中,中断向量地址是。
A. 子程序入口地址B. 中断服务程序的入口地址C. 中断服务程序入口地址的地址D. 例行程序入口地址16.如果有多个中断同时发生,系统将根据中断优先级响应优先级最高的中断请求。
若要调整中断事件的处理次序,可以利用。
A. 中断嵌套B. 中断向量C. 中断响应D. 中断屏蔽^18.中断系统中的断点是指。
A.子程序入口地址B.中断服务子程序入口地址C.中断服务程序入口地址表D.中断返回地址19.在独立编址方式下,CPU对存储单元和I/O设备的访问是靠来区分的。
A.不同的地址代码B.不同的地址总线C.不同的指令和不同的控制信号D.上述都不对23.采用DMA方式高速传输数据时,数据传送是。
A.在总线控制器发出的控制信号控制下完成的B.由CPU执行的程序完成的C.在DMA控制器本身发出的控制信号控制下完成的~D.由CPU响应硬中断处理完成的24. 下列有关DMA方式进行输入输出的描述中,正确的是。
A. 一个完整的DMA过程,部分由DMAC控制,部分由CPU控制B. 一个完整的DMA过程,完全由CPU控制C. 一个完整的DMA过程,完全由CPU采用周期窃取方式控制D. 一个完整的DMA过程,完全由DMAC控制,CPU不介入任何控制25. 在DMA传送方式中,发出DMA请求的是。
A. 主存B. DMA控制器C. CPUD. 外部设备26. DMA访问主存时让CPU进入等待状态,等DMA的一批数据访存结束后再恢复工作,这种情况称为。
A. CPU暂停方式B. 存储器分时方式C. 周期挪用方式D. 透明的DMA >27. DMA方式的接口电路中有程序中断部件,其作用是。
A. 实现数据传送B. 向CPU提出总线使用权C.发中断请求D. 向CPU提出传输结束28. 下列关于DMA方式的正确说法是。
计算机组成原理习题第七章
![计算机组成原理习题第七章](https://img.taocdn.com/s3/m/71ce1c2330126edb6f1aff00bed5b9f3f90f7286.png)
计算机组成原理习题第七章第七章一.填空题1CPU响应中断时需要保存当前现场,这里现场指的是和的内容,它们被保存到中。
2在中断服务程序中,保护和恢复现场之前需要中断。
3DMA只负责总线上进行数据传送,在DMA写操作中,数据从传送到4总线的裁决方式速度最高。
5某机有四个中断源,优先顺序按1→2→3→4降序排列,若想将中断处理次序改为3→1→4→2,则1、2、3、4中断源对应地屏蔽字分别是、、和6I/O接口电源通常具有、、和功能。
7I/O的编址方式可分为和两大类,前者需有独立的I/O指令,后者可通过指令和设备交换信息。
8主机与设备交换信息的控制方式中,方式主机与设备是串行工作的,方式和方式主机与设备是并行工作的,且方式主程序与信息传送是并行进行的。
9I/O与主机交换信息的方式中,和都需通过程序实现数据传送,其中体现CPU与设备是串行工作的。
10CPU响应中断时要保护现场,包括对和的保护,前者通过实现,后者可通过实现。
11一次中断处理过程大致可分为、、、和等五个阶段。
12在DMA方式中,CPU和DMA控制器通常采用三种方法来分时使用主存,它们是、、和13中断接口电路通过总线将向量地址送至CPU.14I/O与主机交换信息共有、、、和五种控制方式。
15单重中断的中断服务程序的执行顺序为、、、和中断返回。
16多重中断的终端服务程序的执行顺序为、、、和中断返回。
二.选择题1.将外围设备与主存统一编址,一般是指A.每台设备占一个地址码B.每个外围接口占一个地址码C.接口中的有关寄存器各占一个地址码D.每台外设由一个主存单元管理2.主机与设备传送数据时,采用,主机与设备是串行工作的。
A.程序查询方式B.中断方式C.DMA方式D.通道方式3.当有中断源发出请求时,CPU可执行相应的中断服务程序。
提出中断请求的可以是A.通用寄存器B.专用寄存器C.外部事件D.cache4.在中断周期,CPU主要完成以下工作:A.关中断,保护断点,发中断响应信号并形成中断服务程序入口地址B.开中断,保护断点,发中断响应信号并形成中断服务程序入口地址C.关中断,执行中断服务程序D.开中断,执行中断服务程序5.CPU响应在中断的时间是A.一条指令结束B.外设提出中断C.取指周期结束D.任一机器周期结束6.向量中断是A.外设提出中断B.由硬件形成中断服务程序入口地址C.由硬件形成向量地址,再由向量地址找到中断服务程序入口地址D.以上都不对7.中断允许触发器用于A.向CPU发中断请求B.指示正有中断在进行C.开放或关闭中断系统D.指示中断处理结束8.以下论述正确的是A.CPU响应中断期间仍执行原程序B.在中断过程中,若又有中断源提出中断请求,CPU立即响应C.在中断响应中,保护断点、保护现场应由用户编程完成D.在中断响应中,保护断点是由中断隐指令自动完成的9.DMA方式是在之间建立一条直接数据通路。
第7章DMA控制器
![第7章DMA控制器](https://img.taocdn.com/s3/m/ff09b988d4d8d15abe234e16.png)
度的降低。
PC/XT微型机就是采用了这种方式,巧妙地在CPU
总线中插入若干等待周期Tw,进行DMA操作。
总结:上述4种方式中,CPU暂时放弃总线控制权
而DMA占用总线的方式最简单。
12
7.3 DMA控制器8237A
8237A是Intel系列高性能可编程DMA控制器, 具有如下功能: (1)每片8237A内部有4个独立的DMA通 道,每个通道可分别进行数据传送,一次传送 最大达64KB,能够实现存储器与外部设备间或 存储器两个区域间的数据传送。 (2)每个通道的DMA请求可以分别允许和禁 止,具有不同的优先级,并且每个通道的优先级 可以是固定的,也可以是循环的。 (3)8237A具有4种传送方式:单字节传送 方式,数据块传送方式,请求传送方式和级联 13 方式。
(3)优先权控制逻辑。
用来裁决各通道的优先权次序,解决多个通道同时请求 DMA服务时可能出现的优先权竞争问题。
15
2. 3个缓冲器
(1)I/O缓冲器1 。8位、双向三态的缓冲器
当CPU控制总线时: 从CPU送给8237A的编程控制字、CPU读取8237A的状态 字、当前地址和字节计数器的内容都经过这个缓冲器。 当8237A控制总线时:
3
7.2 DMA占用总线方式
1.CPU暂时放弃总线控制权方式 2.暂停CPU时钟脉冲方式 3.窃取CPU空闲时间方式 4.周期扩展方式
4
1.CPU暂时放弃总线控制权方式 此类DMA操作,CPU必须暂停任何总线操作, 并让出对总线的控制权、直至DMA传送结束 或完成一个总线操作周期之后,CPU才能继 续控制总线。 实现这种方式的方法是DMAC向CPU发出总 线请求信号,CPU在完成当前的总线周期操 作之后,释放对总线的控制(有关的引脚信 号处于高阻状态)并发出总线响应信号。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DREQ3~DREQ0——DMA请求输入信号,通道3至通道0分
别对应DREQ3至DREQ0。当外设请求DMA服务时,由I/O接口 向8237A发出DREQ请求信号,该信号一直保持有效,直到收到 DMA响应信号DACK后,信号才撤销。其有效电平由编程设定。 在优先级固定的方式下,DREQ0优先级最高,DREQ3优先级最 低。 HRQ——总线请求输出信号。当8237A的任一个未屏蔽通道接 收到DREQ请求时,8237A就向CPU输出HRQ信号,请求CPU 出让总线的控制权。 HLDA——总线响应信号,是CPU对HRQ信号的响应。CPU收 到HRQ信号后,将在现行总线周期结束后让出总线的控制权, 使HLDA信号有效,通知8237A接收总线的控制权,用以完成 DMA传送。
7.3.1 8237A的内部构成框图
1.3个基本控制逻辑单元
(1)定时和控制逻辑单元。
根据初始化编程时所设置的工作方式寄存器的内容和命令,在输 入时钟信号的定时控制下,产生8237A内部的定时信号和外部 的控制信号。
(2)命令控制单元。
在CPU控制总线时,即DMA处于空闲周期时(被动态),将 CPU在编程初始化时送来的命令字进行译码;而在8237A进入 DMA服务时,对设定DMA操作类型的工作方式字进行译码。
2.暂停CPU时钟脉冲方式 这种方式也就是强迫CPU立即停止工作的方式。 在进入DMA操作时,把CPU的时钟“暂停”, 就能达到停止CPU操作的目的。 这种方式的原理如图7-2所示,CPU的时钟脉 冲由系统主时钟脉冲通过与门来提供,与门由 PAS信号控制。 当PAS=1时,向CPU提供时钟脉冲,CPU操作 得以进行;当PAS=0时,暂停时钟,CPU便处 于“休眠”状态,此时可进行DMA操作。
这类DMA又可分为两种情况:周期挪用和数据
块传送。 如果 DMAC 控制总线的时间为一个总线周期, 则称为周期挪用。对于这种操作方式,每次 DMA 操作仅传送一个字节(或字)数据。然后 DMAC释放对总线的控制; 若 DMAC 控制总线的时间超过一个总线周期, 用来完成一组数据(即数据块)的传送,在该组 数据传送期间,DMAC一直控制着总线,这种操 作方式称为数据块传送。
(3)输出缓冲器。4位、输出、三态缓冲器。 在CPU控制总线时,它为高阻状态;而在DMA 控制总线时,它导通,由8237A提供的16位存 储器地址的第8位到第5位地址A7~A4通过它送 出。
3.内部寄存器
8237A的内部寄存器如表7-1所列。它与用户编程直接发生关系。 表7-1 8237A的内部寄存器
7.1 DMA基本概念
DMA 的意思是“直接存储器存取”,意指不通过 CPU 、 直接对存储器进行访问,它由专门的硬件装置 DMA 控 制器(DMAC)来完成。除了事先要用指令设置DMAC 外,传送是应外设请求、在硬件控制下完成的。所以, 它具有极高的传送速率。
DMAC 对存储器的访问与 CPU 类似,一般利用系统总
(7)DMAC向接口发出写控制信号,在该信号及 DACK信号的共同作用下,将数据总线上的内容储存到 接口中的数据寄存器,并通过接口将数据传送给外设, 至此完成了数据传送。 (8)DMAC撤销对CPU的请求信号。 (9)CPU撤销保持响应信号并恢复对总线的控制。 如果数据未传送完,则又从第二步开始重复所述过程。
4.周期扩展方式 周期扩展方式是采用专门的时钟发生电路加宽CPU的 时钟周期,利用CPU每个时钟周期的加宽时间进行 DMA操作,这种占用总线的方式为周期扩展。 这种方式由于延长了CPU的时钟周期必将导致CPU运 行速度的降低。PC/XT微型机就是采用了这种方式,巧 妙地在CPU总线中插入若干等待周期Tw,进行DMA操 作。
(3)优先权控制逻辑。
用来裁决各通道的优先权次序,解决多个通道同时请求DMA服 务时可能出现的优先权竞争问题。
2.3个缓冲器
(1)I/O缓冲器1。 8位、双向、三态的缓冲器 当CPU控制总线时,从CPU送给8237A的编程控制字、 CPU读取8237A的状态字、当前地址和字节计数器的 内容都经过这个缓冲器。 当8237A控制总线时,在DMA周期一开始,8237A 请求DMA服务优先权最高通道的暂时地址寄存器的高8 位地址,由这个缓冲器输出到地址锁存器74LS373或 Intel 8282锁存。然后,若编程时设定DMA的操作类 型是DMA写、读或校验时,就使这个缓冲器进入高阻 状态,即数据传送不经过此缓冲器; 若操作类型是存储器之间的传送(M→M)时,首先 将源存储单元的内容经数据总线由此缓冲器送到 8237A的暂存器中。在下一个周期,暂存器的内容由 此缓冲器送上数据总线,然后写入目的存储单元。
线来进行。 以读存储器为例,其过程是: DMAC 一面向存储器送 存储单元地址和读控制信号( MEMR ) ,同时又向外设 端口送写控制信号( ),数据在硬件信号的控制下 IOW 通过总线由源直接送达目的地。为了支持数据块的传送, DMAC还具有修改地址指针、统计传送次数、判断传送 是否结束等多项自动功能。 所以,使用DMA方法,可支持外设→存储器、存储器 →外设的高速直接传送;变通后,也可支持存储器→存 储器、外设→外设的高速直接传送。
图7-1 DMA操作过程示意图
(1)外设已作好接收数据准备,向DMAC发出 请求信号DRQ。 (2)DMAC向CPU发出DMA操作请求HRQ, 该请求信号送到CPU的HOLD信号引脚。 (3)CPU在完成当前的总线周期操作之后(若 总线处于空闲状态,则立即做出响应),使数据 总线、地址总线及部分控制信号处于三态,并向 DMAC发出响应信号HLDA,指示DMAC可以使 用总线。
7.2 DMA占用总线方式
1.CPU暂时放弃总线控制权方式 此类DMA操作,CPU必须暂停任何总线操作, 并让出对总线的控制权、直至DMA传送结束或 完成一个总线操作周期之后,CPU才能继续控制 总线。 实现这种方式的方法是DMAC向CPU发出总线 请求信号,CPU在完成当前的总线周期操作之后, 释放对总线的控制(有关的引脚信号处于高阻状 态)并发出总线响应信号。
A7~A4——4位双向三态地址线。只用于DMA传送时,输出要
访问的存储单元地址低8位中的高4位。 A3~A0——4位双向三态地址线。CPU对8237A进行编程时, 它们是输入信号,用于寻址8237A的内部各寄存器。在DMA传 送期间,这4条线输出要访问的存储单元地址低4位。 IOR——I/O读信号,是双向、低电平有效的三态信号。在CPU 控制总线期间,它为输入信号,低电平有效时,CPU读取 8237A内部寄存器的值;在DMA传送期间,它为输出信号,与 相配合,控制数据由外设传送到存储器。
(4)DMAC将地址(A19~A0)放入地址总线, 该地址用来寻址内存储单元。 (5)DMAC向I/O接口发出响应信号DACK, 该信号可作为接口接受数据的控制条件,有效时, 表示允许接口接受数据; (6)DMAC向存储器发出读控制信号,在该信 号的控制下,由A19~A0指定的单元的内容送 入数据总线。
可读可写 不能访问
只 只 只 只 只 只 写 写 写 写 读 读
7.3.2 8237A的引脚 8237A的引脚如图7-4所示
CLK——时钟脉冲输入信号,该信号用以控制8237A内部操作
及数据传输率。 CS ——片选输入信号,低电平有效。CPU对8237A编程时把 8237A视为输入/输出设备,此时该信号由地址总线高位经译码 后产生。 RESET——复位输入信号,高电平有效。复位后8237A处于空 闲状态,清除内部各寄存器,并置位屏蔽触发器。 READY——准备好输入信号,高电平时表示存储器或外设已经 准备好。该信号用于DMA操作时与慢速存储器或外部设备同步。
下面以图7-1为例说明这种DMA操作方式的工作 过程。假定 8086CPU工作于最小模式,且是将 存储器中的数据传送给外部设备。在 DMA 操作 之前, DMAC 作为系统的一个接口部件,接受 CPU送来的操作命令,也即对DMAC的初始化, 以规定传输类型(存储器和外设之间)、操作方 式(单字节传送)、传送方向、内存的首地址、 传送的字节数等。在完成初化编程之后,DMAC 就准备好进行 DMA 操作,传送一个字节数据的 过程如下(在图7-1中以圆圈内的序号表示)。
DACK3~DACK0——DMA响应输出信号,是8237A对DREQ
信号的响应,每个通道各有一个。当8237A接收到DMA响应信 号HLDA后,开始DMA传送,相应的通道DACK信号输出有效, 其有效电平由编程确定。 DB7~DB0——8位双向三态数据总线,与系统的数据总线相 连。CPU可以用I/O读命令,从DB7~DB0读取8237A的状态寄 存器和现行地址寄存器、字节数计数器的内容,以了解8237A 的工作状态;也可以用I/O写命令通过DB7~DB0对各个寄存器 进行编程。在DMA传送期间,DB7~DB0输出当前地址寄存器 中的高8位,由ADSTB信号锁存到外部锁存器中,与地址线 A7~A0一起组成16位地址。
在上述4种方式中,CPU暂时放弃总线控制权而DMA
占用总线的方式是最简单的一种方式。
Байду номын сангаас
7.3 DMA控制器8237A
8237A是Intel系列高性能可编程DMA控制器,具 有如下功能: (1)每片8237A内部有4个独立的DMA通道,每 个通道可分别进行数据传送,一次传送最大达 64MB,能够实现存储器与外部设备间或存储器两 个区域间的数据传送。 (2)每个通道的DMA请求可以分别允许和禁止, 具有不同的优先级,并且每个通道的优先级可以是 固定的,也可以是循环的。 (3)8237A具有4种传送方式:单字节传送方式, 数据块传送方式,请求传送方式和级联方式。
fSystem & PAS fCPU
fSystem
PAS
fCPU
图7-2 暂停CPU时钟脉冲方式示意图
3.窃取CPU空闲时间方式 上述两种DMA总线占用方式共同的特点是,进行 DMA操作时均使CPU的正常工作暂时停止。其优点是 简单,可以不受限制地传送任意长度的数据块,但会浪 费CPU资源。 为了充分利用CPU 资源,可以采用只有当CPU不使用 总线时才进行DMA操作的方法,这样CPU不会因DMA 传送而浪费时间。但这种DMA操作只能安排在CPU执 行内部操作当中 例如取完指令操作码后,CPU要进行指令译码或CPU 内部要进行算术/逻辑运算时,CPU均不使用总线,这 时DMAC可以接管总线。MC6800 CPU有专门的信号 用来指示总线是否正在被使用,这就给安排DMA操作 带来了很大便利。