Durante las operaciones del DMA, el rendimiento del sistema puede verse afectado debido a que este dispositivo hace un uso intensivo del bus y por lo tanto la cpu no puede leer datos de memoria, por ejemplo para leer la siguiente instrucción a ejecutar. Esto provoca que mientras el DMA está operando, la cpu deba esperar a que finalice dicha tarea sin ejecutar ninguna instrucción. Para solventar esto, existe una memoria cache dentro de la CPU que permite a ésta seguir trabajando mientras el DMA mantiene ocupado el bus.
En computadores que no disponen de memoria cache,el DMA debe realizar su tarea evitando ocupar el bus de datos mientras la CPU realiza la fase de captación de la instrucción. A partir de estas dos posibilidades, existen dos tipos de transferencias de datos del DMA:
- TRANSFERENCIAS MODO RÁFAGA: una vez que la CPU concede el bus al DMA, este no lo libera hasta que finaliza su tarea completamente. Este tipo de transferencia se usa en sistemas que disponen de una memoria cache en la unidad de procesamiento, ya que mientras la CPU puede seguir trabajando utilizando la cache.
- TRANSFERENCIAS MODO ROBO DE CICLO: una vez que la CPU concede el bus al DMA, este lo vuelve a liberar al finalizar de transferir cada palabra. Teniendo que solicitar de nuevo el permiso de uso del bus a la CPU. Esta operación se repite hasta que el DMA finaliza la tarea. Este tipo de transferencia se suele usar en sistema que no disponen de memoria cache en la unidad de procesamiento, ya que de este modo, aunque la transferencia de datos tarda más en realizarse, la CPU puede seguir ejecutando instrucciones.
Esta información de acuerdo a :
- Arquitectura de computadoras. (2018). ACCESO DIRECTO A MEMORIA (DMA). 20/03/2018, de WordPress Sitio web: https://conceptosarquitecturadecomputadoras.wordpress.com/acceso-directo-a-memoria-dma/
Muy interesante información.
ResponderEliminar