




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1计算机组成原理计算机组成原理第八章第八章 输入输出系统输入输出系统28.1 I/O接口接口3I/O接口的概念接口的概念“接口接口”可以看成是两个系统或两个部件之间的可以看成是两个系统或两个部件之间的交接部分,它既可以是两种硬件之间的连接电路,交接部分,它既可以是两种硬件之间的连接电路,也可以是两个软件之间的共同逻辑边界。也可以是两个软件之间的共同逻辑边界。I/O接口通常是指主机与外部设备之间设置的一接口通常是指主机与外部设备之间设置的一个硬件电路及其相应的软件控制。个硬件电路及其相应的软件控制。设置接口的理由:设置接口的理由:设备选择设备选择数据缓冲数据缓冲电平转换电平转换在在CPU和外设之
2、间传送命令和外设之间传送命令1. 监视设备状态监视设备状态4总线连接方式的总线连接方式的I/O接口电路接口电路I/OI/O接口接口I/OI/O接口接口设备设备设备设备数据线数据线状态线状态线命令线命令线设备选择线(地址线)设备选择线(地址线)I/OI/O总线总线5I/O接口的功能接口的功能选址功能(设备选择)选址功能(设备选择)传送命令的功能传送命令的功能命令寄存器命令寄存器命令译码器命令译码器传送数据的功能传送数据的功能数据缓冲寄存器数据缓冲寄存器反映反映I/O设备工作状态的功能设备工作状态的功能暂停、准备就绪、正在准备等状态暂停、准备就绪、正在准备等状态6I/O接口的基本组成接口的基本组成
3、CPUCPU数据缓冲数据缓冲寄存器寄存器DBRDBR设备状态设备状态标记标记 控制逻辑电路设备选择设备选择电路电路命令寄存器命令寄存器和命令译码器和命令译码器 外外 部部 设设 备备数据线数据线地址线地址线状态线状态线命令线命令线数据线数据线状态状态命令命令7接口(接口(interface)和端口()和端口(port) 端口寄存器组(数据、控制、状态端口寄存器组(数据、控制、状态) 接口接口N个端口控制逻辑个端口控制逻辑8接口的类型接口的类型 按数据传送方式分,有并行接口和串行接口。按数据传送方式分,有并行接口和串行接口。 并行接口:一个字节或一个字的所有位同时传送,如并行接口:一个字节或一个
4、字的所有位同时传送,如Intel 8255Intel 8255。 串行接口:一位一位传送,如串行接口:一位一位传送,如Intel 8251Intel 8251。 按功能选择的灵活性分,有可编程接口和不可编程接口。按功能选择的灵活性分,有可编程接口和不可编程接口。 可编程接口:可可编程接口:可用程序来改变或选择接口的功能和操作方式用程序来改变或选择接口的功能和操作方式(如如Intel 8255、Intel 8251)。 不可编程接口:不能用程序来改变其功能,但可通过硬连线路逻辑来不可编程接口:不能用程序来改变其功能,但可通过硬连线路逻辑来实现不同的功能实现不同的功能( (如并行接口芯片如并行接口
5、芯片Intel 8212)Intel 8212) 按通用性分类,有通用接口和专用接口。按通用性分类,有通用接口和专用接口。 通用接口:可供多种外设使用,如通用接口:可供多种外设使用,如Intel 8255Intel 8255、82128212。 专用接口:为某类外设或某种用途专门设计的,如专用接口:为某类外设或某种用途专门设计的,如Intel 8279Intel 8279可编程可编程键盘键盘/ /显示器接口;显示器接口;Intel 8275Intel 8275可编程可编程CRTCRT控制器接口等。控制器接口等。 按数据传送的控制方式分类,有程序型接口和按数据传送的控制方式分类,有程序型接口和D
6、MADMA式接口式接口 程序型式接口:用于连接速度较慢的设备,如键盘、打印机等,如程序型式接口:用于连接速度较慢的设备,如键盘、打印机等,如Intel 8259Intel 8259。 DMADMA式接口:用于连接高速式接口:用于连接高速I/OI/O设备,如磁盘、磁带等常用设备,如磁盘、磁带等常用Intel 8237Intel 8237。98.2 程序查询方式程序查询方式10程序查询方式程序查询方式 由由CPU控制数据控制数据传输的过传输的过程程 处理器处理器等等待待,效率,效率低低检查状态标记Ready?传输数据NYReady?N传输一个数据修改计数、内存首址传送完?NEND设置计数、内存首址
7、启动外设11多个设备的查询多个设备的查询流程示意流程示意12程序查询方式的接口电路程序查询方式的接口电路DBR:数据缓冲器,用于存放欲传送的数据。:数据缓冲器,用于存放欲传送的数据。D为完成触发器,为完成触发器,B为工作触发器。为工作触发器。138.3 程序中断方式程序中断方式14中断概念中断概念 中断的概念中断的概念 暂停当前程序的执行,转而执行其他程序,在它们执行完成后再暂停当前程序的执行,转而执行其他程序,在它们执行完成后再恢复被中断程序的执行。恢复被中断程序的执行。 允许一个处理器允许一个处理器“同时同时”执行多个任务执行多个任务 中断服务程序中断服务程序 I/O中断只是众多中断中的一
8、种。中断只是众多中断中的一种。 中断的产生中断的产生 为了提高计算机的整机效率为了提高计算机的整机效率 为了应付突发事件为了应付突发事件 为了实时控制的需要为了实时控制的需要 为了实现中断,计算机系统中必须有相应的中断系统或中为了实现中断,计算机系统中必须有相应的中断系统或中断机构。断机构。当前程序当前程序中断服中断服务程序务程序15中断源中断源软中断:是在程序中人为设置的。软中断:是在程序中人为设置的。程序性事故:如定点溢出、浮点溢出等。程序性事故:如定点溢出、浮点溢出等。硬件故障:插件接触不良、磁表面损坏、电源硬件故障:插件接触不良、磁表面损坏、电源掉电等。掉电等。I/O设备:设备:I/O
9、设备通过中断与主机通信。设备通过中断与主机通信。外部事件:如用户通过键盘来中断现行程序。外部事件:如用户通过键盘来中断现行程序。16中断的作用中断的作用 CPU与与I/O设备并行工作设备并行工作 键盘输入响应,打印机输出键盘输入响应,打印机输出 硬件故障处理:故障硬件故障处理:故障-中断中断-自动恢复自动恢复 掉电后自动保存当前状态掉电后自动保存当前状态 人机通信人机通信 随机干预机器工作,如死循环处理(随机干预机器工作,如死循环处理(CtrlBreak) 多任务切换多任务切换 时钟中断时钟中断 实时处理实时处理 对随机事件的快速响应对随机事件的快速响应 目态(用户态)程序与管态(系统态)程序
10、通信目态(用户态)程序与管态(系统态)程序通信 多处理机通信多处理机通信 CPU与与FPU17中断系统需研究的问题中断系统需研究的问题如何确定中断源如何确定中断源出现多个中断时,中断响应的顺序出现多个中断时,中断响应的顺序中断响应的条件、时机中断响应的条件、时机条件:处理器允许中断、该中断未被屏蔽条件:处理器允许中断、该中断未被屏蔽时机:指令周期结束检查是否有中断请求时机:指令周期结束检查是否有中断请求现场保护与恢复现场保护与恢复中断服务程序的入口地址中断服务程序的入口地址中断处理过程中出现中断如何处理?中断处理过程中出现中断如何处理?18中断请求标记(中断请求标记(中断源识别中断源识别) 中
11、断请求触发器(中断请求触发器(INTR):用于保存各中):用于保存各中断源的请求断源的请求 每个中断源一位每个中断源一位 可以在可以在CPU内部,也可以在外部(内部,也可以在外部(8259)12345n掉掉电电过过热热内存内存读写读写校验校验错错阶阶上上溢溢非非法法除除法法光光电电输输入入机机打打印印输输出出机机中断请求标记寄存器中断请求标记寄存器19中断判优逻辑中断判优逻辑 各个中断源的优先顺序是根据该中断若得各个中断源的优先顺序是根据该中断若得不到及时响应,致使机器工作出错的严重不到及时响应,致使机器工作出错的严重程度而定的。程度而定的。 中断判优可用硬件实现,也可用软件实现。中断判优可用
12、硬件实现,也可用软件实现。 硬件排队硬件排队 软件排队软件排队20中断判优逻辑中断判优逻辑硬件排队硬件排队 硬件排队分两种情况硬件排队分两种情况 第一种叫第一种叫链式排队器链式排队器,对应中断请求触发器分,对应中断请求触发器分散在各个接口电路中的情况。散在各个接口电路中的情况。 第二种是将排队器设在第二种是将排队器设在CPU内。内。21中断判优逻辑中断判优逻辑硬件排队硬件排队第一种叫第一种叫链式排队器链式排队器,对应中断请求触发器分散在各个,对应中断请求触发器分散在各个接口电路中的情况。接口电路中的情况。优先级别:优先级别:1234123422中断判优逻辑中断判优逻辑硬件排队硬件排队 第二种是
13、将排队器设在第二种是将排队器设在CPU内。内。优先级别:优先级别:1234123411INTR11&INTR21&INTR31&INTR4INTP1INTP2INTP3INTP423中断判优逻辑中断判优逻辑软件排队软件排队 软件排队通过编写查询程序实现。软件排队通过编写查询程序实现。是否是否A A请求?请求?是转转A A的服务的服务程序入口地址程序入口地址是否是否B B请求?请求?是转转B B的服务的服务程序入口地址程序入口地址是否是否C C请求?请求?是转转C C的服务的服务程序入口地址程序入口地址否否否优先级别:优先级别:ABCABC24中断服务程序入口地址中断服务程序入口地址 硬件向量法
14、(中断向量法)硬件向量法(中断向量法) 中断向量:设备接口向中断向量:设备接口向CPU提供的自身标识提供的自身标识 CPU根据中断向量检索中断根据中断向量检索中断向量表得到中断服务程序的向量表得到中断服务程序的入口地址入口地址 不同的中断(类型)有各自的服务程序。不同的中断(类型)有各自的服务程序。 软件查询法:软件查询法:用软件寻找中断服务程序入口地用软件寻找中断服务程序入口地址的方法。址的方法。 由程序员(或系统)事先确定中断源对应的入口地由程序员(或系统)事先确定中断源对应的入口地址,不涉及硬件设备,但查询时间比较长。址,不涉及硬件设备,但查询时间比较长。FFH0Jmp 400Jmp 3
15、00300H400H中断向量表程序代码区25中断响应的条件和时间中断响应的条件和时间 条件:条件:处理器允许中断、该中断未被屏蔽。处理器允许中断、该中断未被屏蔽。 程序状态寄存器程序状态寄存器PSW、中断屏蔽寄存器、中断屏蔽寄存器IMR 时机:时机:指令周期结束检查是否有中断请求。指令周期结束检查是否有中断请求。 查询断点:某些计算机中的有些执行时间很长,若查询断点:某些计算机中的有些执行时间很长,若CPU的查询信号一律安排在指令周期结束时刻,又可的查询信号一律安排在指令周期结束时刻,又可能因能因CPU发现中断请求过迟而出错。为此,在指令执发现中断请求过迟而出错。为此,在指令执行过程中设置若干
16、个查询段点,行过程中设置若干个查询段点,CPU在每个在每个“查询断查询断点点”时刻发出中断查询信号,以便及时发现和响应中时刻发出中断查询信号,以便及时发现和响应中断请求。断请求。26中断隐指令中断隐指令 中断隐指令:中断隐指令:在机器指令系统中没有的指令,它在机器指令系统中没有的指令,它是是CPU在中断周期内由硬件自动完成的一条指令。在中断周期内由硬件自动完成的一条指令。 中断隐指令的主要功能:中断隐指令的主要功能: 保护程序断点:将当前程序计数器保护程序断点:将当前程序计数器PC的内容(程序段的内容(程序段点)保存到存储器中,或者存在存储器的特定单元点)保存到存储器中,或者存在存储器的特定单
17、元(如(如0号地址),或者入栈。号地址),或者入栈。 寻找中断服务程序的入口地址寻找中断服务程序的入口地址 关中断:确保关中断:确保CPU响应中断后的所需作的一序列操作响应中断后的所需作的一序列操作不至于有受到新的中断请求的干扰。不至于有受到新的中断请求的干扰。27保护现场和恢复现场保护现场和恢复现场 保护现场:保护现场:包括保护程序断点和保护包括保护程序断点和保护CPU内部各寄存器内容的现场两个方面。内部各寄存器内容的现场两个方面。 程序断点程序断点中断隐指令完成中断隐指令完成 CPU内部寄存器内容内部寄存器内容用户(或系统)用机器用户(或系统)用机器指令编程实现指令编程实现 恢复现场:恢复
18、现场:在中断返回前,必须将寄存器在中断返回前,必须将寄存器的内容恢复到中断处理前的状态。的内容恢复到中断处理前的状态。 由中断服务程序完成。由中断服务程序完成。28多重中断多重中断 在中断服务过程中出现在中断服务过程中出现高级别中断高级别中断 中断嵌套中断嵌套 同级、低级不嵌套同级、低级不嵌套 多重中断断点保护多重中断断点保护 利用栈先进后出的特点利用栈先进后出的特点 若将断点保存在特定存储单元内(例如约定为若将断点保存在特定存储单元内(例如约定为0号单号单元),为保证多重中断的断点不会被覆盖,需在执行元),为保证多重中断的断点不会被覆盖,需在执行“开中断开中断”指令之前先将指令之前先将0号地
19、址单元的内容转存至别号地址单元的内容转存至别的地址单元。的地址单元。29实现多重中断的条件实现多重中断的条件提前设置提前设置“开中断开中断”指令指令优先级别高的中断源有权中断优先级别低优先级别高的中断源有权中断优先级别低的中断源。的中断源。30实现多重中断的条件实现多重中断的条件提前设置提前设置“开中断开中断”指令指令开中断的位置不一样。开中断的位置不一样。单重中断单重中断多重中断多重中断31实现多重中断的条件实现多重中断的条件优先级优先级别高的别高的中断源中断源有权中有权中断优先断优先级别低级别低的中断的中断源。源。32中断屏蔽技术中断屏蔽技术 禁止响应某些中断禁止响应某些中断 可屏蔽中断可
20、屏蔽中断 vs. 不可屏蔽中断(不可屏蔽中断(NMI) 可以屏蔽外部中断,不能屏蔽软中断 中断允许触发器中断允许触发器 CPU内部内部PSW中的一位,可以禁止中的一位,可以禁止CPU响应所有可屏蔽响应所有可屏蔽中断中断 中断屏蔽寄存器中断屏蔽寄存器(IMR) 位于中断接口中,每个中断源一位(每位称作位于中断接口中,每个中断源一位(每位称作中断屏蔽触中断屏蔽触发器发器) 屏蔽字:屏蔽字:中断屏蔽寄存器的内容中断屏蔽寄存器的内容 中断响应条件:处理器允许中断、该中断未被屏蔽中断响应条件:处理器允许中断、该中断未被屏蔽33中断屏蔽技术中断屏蔽技术 中断屏蔽触发器和屏蔽字中断屏蔽触发器和屏蔽字 中断接
21、口电路中中断接口电路中完成触发器完成触发器D、中断请求触发中断请求触发器器INTR和和屏蔽触发器屏蔽触发器MASK三者之间的关系。三者之间的关系。34中断屏蔽技术中断屏蔽技术 中断屏蔽触发器和屏蔽字中断屏蔽触发器和屏蔽字 具有屏蔽功能的排队器具有屏蔽功能的排队器11INTR11&INTR21&INTR31&INTR4INTP1INTP2INTP3INTP4MASK1MASK2MASK3MASK435中断屏蔽技术中断屏蔽技术 中断屏蔽字可改变优先等级中断屏蔽字可改变优先等级 例如:例如:5级中断高于级中断高于6级中断,但若在中断服务程级中断,但若在中断服务程序中预先设置屏蔽字为序中预先设置屏蔽字
22、为000010111111: 这样,当这样,当5、6级中断同时发生时,级中断同时发生时,5级中断被屏蔽,级中断被屏蔽,6级中断未被屏蔽,因此,可以优先响应级中断未被屏蔽,因此,可以优先响应6级中断。级中断。 当处理完当处理完6级中断后,再设屏蔽字为级中断后,再设屏蔽字为000001111111,CPU才能响应才能响应5级中断源的请求。级中断源的请求。36程序中断方式接口电路的基本组成程序中断方式接口电路的基本组成37中断小结中断小结中断响应过程中断响应过程 响应过程响应过程 关中断关中断 保存断点和现场保存断点和现场 PC,状态(标志寄存器),内部寄存器. 保存的位置:主存,堆栈 识别中断源,
23、得到中断向量识别中断源,得到中断向量 【开中断】【开中断】 执行中断服务执行中断服务 【关中断】【关中断】 恢复现场、断点恢复现场、断点 开中断开中断 中断返回中断返回 软硬件协同完成软硬件协同完成 中断隐指令、中断隐指令、IRET中断隐指令IRET允许多重中断允许多重中断38中断小结中断小结基本概念基本概念 基本概念基本概念 中断、中断优先级、中断中断、中断优先级、中断屏蔽、中断嵌套、中断服屏蔽、中断嵌套、中断服务、中断向量务、中断向量. 中断的响应条件、时机中断的响应条件、时机 中断处理过程中断处理过程 中断向量、保存现场、中断服务、恢复现场、中断返回 如果中断频繁,则效率低如果中断频繁,
24、则效率低 高速、批量数据传输不适高速、批量数据传输不适用用 某些任务必须使用某些任务必须使用(如调(如调度)度) 80 x86 memoryI/O接口1DeviceI/O接口nDevice 8259 IRQ1IRQnINTRINTA39外设工作外设工作外设工作外设工作CPU查询查询CPU查询查询CPU工作工作CPU工作工作CPU工作工作外设工作外设工作CPU工作工作中断请求中断请求中断服中断服务务外设工作外设工作CPU工作工作中断请求中断请求中断服中断服务务 与程序查询方式比较与程序查询方式比较40中断服务程序的一般结构中断服务程序的一般结构例如:INTHANDLE PROC FARINTHA
25、ND:PUSH AXPUSH BXPUSH CXPOP CXPOP BXPOP AXIRET保护现场(将需要保护的寄存器压入堆栈)STI(可选);恢复现场IRET中断处理41示例示例非屏蔽中断源非屏蔽中断源中断逻辑中断逻辑INTi指令指令单步单步中断中断除法除法错误错误INTn指令指令CPUINTRNMI可屏蔽中断源可屏蔽中断源8259A中断中断控制器控制器IR0IR1IR2IR3IR4IR5IR6IR7外外设设中中断断源源 INTA428087中断请求中断请求RAM奇偶错奇偶错I/O通道检查错通道检查错 NMI屏蔽寄存器屏蔽位屏蔽寄存器屏蔽位8253定时器定时器键盘键盘未用未用异步通信卡(辅
26、)异步通信卡(辅)异步通信卡(主)异步通信卡(主)硬盘硬盘软盘软盘并行打印机并行打印机NMIINTR01234567优优先先级级I/O通通道道43程序程序中断中断方式方式流程流程448.4 DMA方式方式45DMA方式方式 进一步提高效率,避免进一步提高效率,避免在在I/O时占用时占用CPU 需要解决访存时总线冲需要解决访存时总线冲突问题突问题 CPU在总线周期结束时在总线周期结束时让出总线让出总线 时钟周期 总线周期 指令周期 批量数据传输批量数据传输processormemoryI/O Interface(DMA Controller)I/O device总线周期指令周期时钟周期46DMA
27、概念概念 用途:高速外设直接与用途:高速外设直接与主存进行数据传输主存进行数据传输 CPU不用暂停现行程序不用暂停现行程序而为而为I/O服务服务 关键问题:关键问题:DMA接口接口与与CPU之间共享主存,之间共享主存,存在总线争用、访存冲存在总线争用、访存冲突问题突问题 CPU暂停方式暂停方式 周期窃取方式周期窃取方式 交替访问方式交替访问方式processormemoryI/O Interface(DMA Controller)I/O device47CPU暂停方式暂停方式 CPU暂停方式过程暂停方式过程 DMA向向CPU申请总线申请总线 CPU暂停暂停 DMA传输传输 DMA释放总线释放总
28、线 CPU继续继续 并未真正实现并发并未真正实现并发 回顾:回顾:总线主设备(总线主设备(Master)、从设备()、从设备(Slaver) 总线仲裁总线仲裁48周期窃取周期窃取/周期挪用(周期挪用(cycle stealing) 当当I/O设备发出设备发出DMA请求时,请求时,I/O设备便挪用或窃取总线占设备便挪用或窃取总线占用权一个或几个主存周期。用权一个或几个主存周期。 有三种情况有三种情况 CPU不访存(复杂指令不访存(复杂指令mul):):DMA使用使用 CPU正在访存:正在访存:DMA等待等待CPU完成(总线周期结束)完成(总线周期结束) ,然后获,然后获得总线使用权得总线使用权
29、CPU与与DMA同时发生:同时发生:DMA优先,窃取一到二个存取周期(否优先,窃取一到二个存取周期(否则数据丢失)则数据丢失) 应该指出,应该指出,I/O设备每挪用一个主存周期都要申请总线控设备每挪用一个主存周期都要申请总线控制权、建立总线控制权和归还总线控制权。因此,尽管传制权、建立总线控制权和归还总线控制权。因此,尽管传送一个字对主存而言之占用一个主存周期,但是对送一个字对主存而言之占用一个主存周期,但是对DMA接口而言,实质上要占接口而言,实质上要占25个主存周期。个主存周期。49CPU暂停方式和周期挪用示意暂停方式和周期挪用示意50交替访问交替访问周期扩展周期扩展 将将CPU工作周期延
30、长(或者工作周期延长(或者CPU的工作周期本身比主存的工作周期本身比主存周期长得多),分成两段。下图为交替访问方式示意图。周期长得多),分成两段。下图为交替访问方式示意图。这种方式不需要总这种方式不需要总线使用权的建立和归线使用权的建立和归还过程,总线使用权还过程,总线使用权是通过是通过C C1 1和和C C2 2分别控分别控制的。实际上总线便制的。实际上总线便成了成了C C1 1和和C C2 2控制下的控制下的多路转换器。多路转换器。51DMA接口的功能接口的功能向向CPU申请申请DMA传送;传送;在在CPU允许允许DMA工作时,处理总线控制权的转工作时,处理总线控制权的转交,避免因进入交,
31、避免因进入DMA工作而影响工作而影响CPU正常活动正常活动或引起总线竞争;或引起总线竞争;在在DMA期间管理系统总线,控制数据传送;期间管理系统总线,控制数据传送;确定数据传送的起始地址和数据长度,修正数据确定数据传送的起始地址和数据长度,修正数据传送过程中的数据地址和数据长度;传送过程中的数据地址和数据长度;在数据块传送结束时,给出在数据块传送结束时,给出DMA操作完成的信操作完成的信号。号。52简单的简单的DMA接口的基本组成接口的基本组成 主存地址寄存器(主存地址寄存器(Address Register) 每传输一个数据(字节、字),地址加每传输一个数据(字节、字),地址加1 字计数器(
32、字计数器(word counter) 数据缓存寄存器(数据缓存寄存器(Buffer Reg) 完成数据格式转换等完成数据格式转换等 数据传输不一定经过数据传输不一定经过DMAC DMA控制逻辑控制逻辑 DREQ-DACK、HRQ-HLDA 优先级控制优先级控制 设备地址寄存器(设备地址寄存器(DAR) 外设中数据块地址或当前设备的设备号外设中数据块地址或当前设备的设备号 中断逻辑中断逻辑不一定在不一定在DMAC中中 请求请求CPU进行进行DMA“后处理后处理” DMA出错处理出错处理DMA接口也称作接口也称作DMA控制器控制器(DMAC)53简单的简单的DMA接口的基本组成接口的基本组成54D
33、MA工作过程工作过程 预处理预处理 初始化(数据传输方向、初始化(数据传输方向、AR、WC、DAR) 启动设备开始传输启动设备开始传输 数据传输数据传输 外设准备好数据外设准备好数据 外设通过外设通过DMAC申请总线使用权申请总线使用权 DREQ HRQ HLDA DACK DMAC接管总线,控制完成数据传输接管总线,控制完成数据传输 释放总线释放总线 /HLDA 后处理后处理 请求中断服务,对读入的数据进行处理请求中断服务,对读入的数据进行处理55DMA控制器(控制器(DMAC) 功能功能 申请总线申请总线 控制总线控制总线 控制数据传输过控制数据传输过程(地址、计数、程(地址、计数、读写命
34、令)读写命令) 释放总线释放总线processormemoryI/O接口I/O deviceDMA Controller DREQDACKHRQHLDA568237A内部逻辑框图12345方式字中通道号57DMA系统连接方式系统连接方式 系统中存在多个系统中存在多个DMA通道和多个通道和多个I/O设备,如何连接?设备,如何连接? 优先级问题优先级问题 DMA CPU:多个:多个DMAC 公共请求方式:链式公共请求方式:链式/级联级联 独立请求方式:星型连接独立请求方式:星型连接 DMA 设备:设备: 一个一个DMAC多个设备多个设备多个设备多个设备 选择型:选择型: DMAC“软”选择响应设备
35、 多路型:多路型:“硬硬”选择响应设备选择响应设备 链式多路型 独立请求多路型 主机 外设 外设 外设 主机 外设 外设 外设 58DMA CPU 公共请求方式公共请求方式59DMA CPU 独立请求方式独立请求方式60DMA接口的类型(与设备接口)接口的类型(与设备接口) 选择型选择型 多路型多路型61DMA接口的类型接口的类型 选择型选择型DMA接口的逻辑框图接口的逻辑框图62DMA接口的类型接口的类型 多路型多路型DMA接口的逻辑框图接口的逻辑框图63DMA接口的类型接口的类型 多路型多路型DMA接口的工作原理接口的工作原理64DMA是程序中断传送技术的发展是程序中断传送技术的发展,在硬
36、件逻辑机构的支持下在硬件逻辑机构的支持下,它它以更快的速度以更快的速度,更简便的形式传送数据更简便的形式传送数据.二者的区别为二者的区别为: (1)中断方式通过程序实现数据传送中断方式通过程序实现数据传送,而而DMA方式直接靠硬件来方式直接靠硬件来实现实现. (2)中断方式具有数据传送和处理异常事件的能力中断方式具有数据传送和处理异常事件的能力,而而DMA只能只能进行数据传送进行数据传送. (3)中断方式必须切换程序中断方式必须切换程序,要进行要进行CPU现场的保护和恢复现场的保护和恢复.DMA仅挪用了一个存储周期仅挪用了一个存储周期,不改变不改变CPU现场现场. (4)DMA请求的优先权比中
37、断请求高请求的优先权比中断请求高,CPU优先响应优先响应DMA请求请求,是为了避免是为了避免DMA所连接的高速外设丢失数据所连接的高速外设丢失数据. (5)CPU对中断的响应是在执行完一条指令之后对中断的响应是在执行完一条指令之后,而对而对DMA的响的响应则可以在指令执行过程中的任何两个存储周期之间应则可以在指令执行过程中的任何两个存储周期之间.中断控制方式与中断控制方式与DMA方式有何异同方式有何异同?65DMA小结小结 用途用途 数据传输,数据传输,DRAM刷新控制刷新控制 关键问题:总线争用、访存冲突关键问题:总线争用、访存冲突 CPU暂停方式:暂停方式:x86系统采用系统采用 周期窃取方式:本书称周期窃取方式:本书称“广泛采用广泛采用”? 交替访问方式交替访问方式 工作过程:预处理、数据传输、后处理工作过程:预处理、数据传输、后处理 DMAC的功能的功能 数据传输的数据传输的DMA方式与方式与INT方式的比较方式的比较66应用:应用:IDE接口与接口与DMA模式模式 IDE的DMA模式可以分为
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汽车制造设备安装的管理与技术措施
- 初中课程评价体系教研组计划
- 水电班组劳务承包合同
- 商业秘密保护合同
- 2024-2025学年学校第二学期信息化建设计划
- 培训报名自我介绍
- 医学论文中文献综述的写作技巧
- 六年级语文上册校内阅读推广计划
- 六年级英语文化知识补充计划
- 农忙季节施工材料管理措施
- 普通高中学生综合素质档案填写样表
- 级配碎石旁站监理记录表.模板
- 管道机器人毕业设计正文
- 国电南自PSL 641U线路保护测控装置技术说明书V1.1
- 2022年国网输变电工程质量通病防治工作要求及技术措施[1]
- 出口退运货物追溯调查情况说明表
- 皮秒激光培训讲解PPT课件
- 49.5MW风电场变电所电气部分设计
- 加工贸易业务批准证
- 翻书效果PPT模板
- 硫代硫酸钠滴定液配制与标定操作规程
评论
0/150
提交评论