第7章 DMA控制器
- 格式:ppt
- 大小:1.92 MB
- 文档页数:10
第一章微型计算机概述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得到了有关此中断请求的详尽信息。
西北师范大学计算机科学系http:// 版权声明本电子教案内容为西北师范大学计算机科学系微机原理与汇编语言课讲义,大家可以自己个人使用。
但由于本教案同时也部分使用了其他人所写讲义或CAI课件的内容,因此禁止使用本材料进行任何商业性或赢利性活动。
同时作者不承担由于使用本教案而引发的其他连带责任。
转载时请保留本版权声明。
-索国瑞suogr@DMA控制器❑DMA基本概念❑DMA控制器82371 DMA 基本概念利用中断进行数据传送,可以大大提高CPU 的利用率。
例如,某外设平均每 1 秒钟可以传送100 个字节。
如果采用查询方式,在这1 秒钟之内CPU 就要全部用于查询和传送;如果用中断传送方式的话,假定CPU 每传送一个字节的中断服务程序需要100μs,那么传送100 字节,CPU需用10 ms,即占1 秒的1/100。
于是,其余99/100的时间CPU就可以用于执行主程序。
但是中断传送仍然是由CPU 通过程序来传送数据。
每次都要完成保护断点,保护现场等操作,要执行多条指令。
每条指令都需要花费CPU的时间,这对于一个高速I/O 设备,以及成组交换数据的情况,例如磁盘与内存间的信息交换,就显得速度太慢,操作太烦琐。
所以希望用硬件在外设与内存间直接进行数据交换(DMA,Direct Memory Access),而不通过CPU。
这样数据传送速度的上限就取决于存储器和外设的数据传输速度。
但是,通常系统的地址总线和数据总线以及一些控制信号线(例如M/IO#、RD #、WR#等)都是由CPU 管理的。
……在DMA 方式时,希望CPU把总线控制权让出来(即使CPU 连到这些总线上的引脚处于第三态:高阻状态),由DMA 控制器来接管总线。
DMA 控制器将控制传送的字节数,判断DMA 传送是否结束,以及发出DMA 结束等信号。
通常DMA 的工作流程如图8-17所示;实现上述操作的框图,如图8-18所示。
当外设把数据准备好以后,发出一个选通脉冲,使DMA请求触发器置1。
第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.在微型计算机系统中,高速外设与内存储器进行批量数据传送时,应采用( )。
第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系统必须能够根据主机提出的要求进行设备的选择,并按照数据在设备中的地址找到相应的数据。
第七章输入输出系统第一节基本的输入输出方式一、外围设备的寻址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设备的控制寄存器、数据寄存器、状态寄存器等单独进行地址编排,使用专门的指令对其进行操作,可用在各种数据传送的控制方式中。
计算机操作系统【第七章】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 设备完成一个字节的交换后,便立即腾出字节多路通道(主通道),让给第二个子通道使用;当第二个子通道也交换完一个字节后,又依样把主通道让给第三个子通道使用,以此类推。
转轮一周后,重又返回由第一个子通道去使用主通道。
②数组选择通道只含有一个分配型子通道,一段时间内只能执行一道通道程序、控制一台设备按数组方式进行数据传送。
DMA方式一.选择题1.在进入DMA工作方式之前,DMA控制器是被当作系统总线上的一个( )。
(A) 主处理器(B) I/O设备(C) I/O接口(D) 主模块2.主机与外设传送数据时,采用( )方式,主机与外设是串行工作的。
(A) 程序查询(B) 中断(C) DMA (D) IOP处理机3.下列几种芯片中能接管总线且控制数据传送的是()。
(A) 8254 (B) 8255 (C) 8237 (D) 82514.要使系统能按直接存储器存取方式进行主机与外设间的数据传送,系统至少应有( )芯片。
(A)8250 (B)8259 (C)8237 (D)82555.占用CPU时间最少的传送方式是()。
(A)DMA (B)中断(C)查询(D)无条件6.在DMA方式下,能对总线进行控制的部件是( )。
(A)CPU (B)DMAC (C)外部设备(D)存储器7.采用DMA方式传送数据时,每传送一个数据要占用()的时间。
(B)一个机器周期(C)一个存储周期(D)一个时钟周期8.DMA方式中,周期“窃取”是窃取一个()(A)存储周期(B)指令周期(C)CPU周期(D)总线周期9.在DMA传送方式下,外部设备与存储器之间的数据传送通路是()。
(A)数据总线DB (B)专用数据通路(C)地址总线(D)控制总线CB 10.在DMA传送过程中,实现总线控制的部件是()。
(A)CPU (B)外部设备(C)DMAC (D)存储器11.在DMA方式下,CPU与总线的关系是()。
(A)只能控制数据总线(B)只能控制地址总线(C)成隔离状态(D)成短接状态12.CPU响应DMA传送请求的信号是()(A)READY (B) (C) (D)13.如果采用两级8237A级联方式,最多可构成()个DMA通道。
(A)2 (B)4 (C)8 (D)1614.在8237A用于存储器到存储器的数据传送时,使用()。
(A)通道0的现行地址寄存器指示源地址,现行字计数寄存器对传送的字节数计数,通道1指示目的地址。
DMA控制器工作原理DMA(Direct Memory Access)控制器是一种计算机设备,用于在外设和主内存之间传输数据。
它的工作原理是通过旁路主处理器,直接在外设和内存之间进行数据传输,从而减少对主处理器的干预。
1.初始化:主处理器通过向DMA控制器发送初始化命令,设置传输参数和传输方向等。
DMA控制器根据这些参数进行设置,以确定传输的方式和范围。
2.请求DMA通道:外设在需要与主内存进行数据传输时,向DMA控制器发送请求。
DMA控制器接收到请求后,暂停主处理器的操作,开始控制数据传输。
3.确认DMA通道:DMA控制器检查请求,并通过向外设发送确认信号来确保通道可用。
如果通道不可用,DMA控制器将外设的请求排队,并在通道可用时进行传输。
4.寻址:DMA控制器从外设中读取数据的地址,并从主内存中读取或写入数据的地址。
这些地址将用于确定传输的起始位置和目的位置。
5.数据传输:DMA控制器将数据从外设读取到内存,或者从内存写入到外设。
数据传输过程中,DMA控制器通过DMA总线直接与内存进行通信,跳过主处理器。
6.中断通知:当传输完成时,DMA控制器会向主处理器发送中断请求,以便主处理器可以执行与传输相关的操作。
从以上步骤可以看出,DMA控制器在传输数据时,与主处理器并行工作,极大地提高了数据传输效率。
相比由主处理器执行的数据传输,DMA 控制器具有以下优势:1.减少主处理器负担:数据传输由DMA控制器完成,主处理器无需处理大量数据传输的细节和中断请求,从而减少了主处理器的负担,提高了系统的整体性能。
2.提高数据传输效率:DMA控制器通过直接访问内存,跳过主处理器的介入,减少了数据传输的延迟,提高了传输的效率。
3.支持多种外设:DMA控制器可以同时支持多种外设,通过适当的配置,可以使多个外设同时进行数据传输。
4.支持高速数据传输:由于DMA控制器是专门设计用于数据传输的设备,其硬件结构和数据通路优化,能够支持高速数据传输,提高系统的数据吞吐量。
第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,TABLEXLA TOUT 40H,AL4、PC/XT机有哪些输入输出方式?各自的特点如何?DMA控制器应具备哪些功能?解:无条件方式:需要外设处于就绪状态,硬件简单;查询方式:CPU需要不断地查询外设是否就绪,浪费CPU时间,硬件较简单;中断方式:外设准备好后,向CPU发中断请求,请求CPU完成数据传输,外设与CPU 并行;硬件又比前两者复杂。
计算机组成原理习题第七章第七章一.填空题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方式是在之间建立一条直接数据通路。
dma 控制器的基本功能(控制原理及结构组成)DMA 控制简介
DMA(Direct Memory Access)控制器是一种在系统内部转移数据的
独特外设,可以将其视为一种能够通过一组专用总线将内部和外部存储器与每个具有DMA 能力的外设连接起来的控制器。
它之所以属于外设,是因为它是在处理器的编程控制下来执行传输的。
DMA 控制器结构
一般而言,DMA 控制器将包括一条地址总线、一条数据总线和控制寄存器。
高效率的DMA 控制器将具有访问其所需要的任意资源的能力,而无须处理器本身的介入,它必须能产生中断。
最后,它必须能在控制器内部计算出地址。
一个处理器可以包含多个DMA 控制器。
每个控制器有多个DMA 通道,以及多条直接与存储器站(memory bank)和外设连接的总线,如图1 所示。
在很多高性能处理器中集成了两种类型的DMA 控制器。
第一类通常称为系统DMA 控制器,可以实现对任何资源(外设和存储器)的访问,对于这种类型的控制器来说,信号周期数是以系统时钟(SCLK)来计数的,以ADI 的Blackfin 处理器为例,频率最高可达133MHz。
第二类称为内部存储。