在DMA方式中 CPU和DMA接口分时使用主存有几种方法?简要说明之。
-
正确答案:在DMA方式中CPU和DMA接口分时使用主存通常采用三种方法。 (1)停止CPU访问主存。这种方法DMA在传送一批数据时独占主存CPU放弃了地址线、数据线和有关控制线的使用权。在一批数据传送完毕后DMA接口才把总线的控制权交回给CPU。显然这种方法在DMA传送过程中CPU基本处于不工作状态或保持原状态。 (2)周期挪用。这种方法CPU按程序的要求访问主存一旦I/O设备有DMA请求则由I/O设备挪用一个存取周期。此时CPU可完成自身的操作但要停止访存。显然这种方法既实现了I/O传送又较好地发挥了主存和CPU的效率是一种广泛采用的方法。 (3)DMA与CPU交替访存。这种方法适合于CPU的工作周期比主存的存取周期长的情况。如CPU的工作周期大于主存周期的两倍则每个CPU周期的上半周期专供DMA接口访存下半周期专供CPU访存。这种交替访问方式可使DMA传送和CPU工作效率最高但相应的硬件逻辑更复杂。
在DMA方式中,CPU和DMA接口分时使用主存,通常采用三种方法。(1)停止CPU访问主存。这种方法DMA在传送一批数据时,独占主存,CPU放弃了地址线、数据线和有关控制线的使用权。在一批数据传送完毕后,DMA接口才把总线的控制权交回给CPU。显然,这种方法在DMA传送过程中,CPU基本处于不工作状态或保持原状态。(2)周期挪用。这种方法CPU按程序的要求访问主存,一旦I/O设备有DMA请求,则由I/O设备挪用一个存取周期。此时CPU可完成自身的操作,但要停止访存。显然这种方法既实现了I/O传送,又较好地发挥了主存和CPU的效率,是一种广泛采用的方法。(3)DMA与CPU交替访存。这种方法适合于CPU的工作周期比主存的存取周期长的情况。如CPU的工作周期大于主存周期的两倍,则每个CPU周期的上半周期专供DMA接口访存,下半周期专供CPU访存。这种交替访问方式可使DMA传送和CPU工作效率最高,但相应的硬件逻辑更复杂。
