Resultados 1 al 3 de 3

Tema: Controlador DMA

  1. GoNzCiD
    GoNzCiD está desconectado
    Usuario registrado CV
    Fecha de ingreso
    27 abr, 04
    Ubicación
    Ávila
    Mensajes
    349

    Controlador DMA

    Hola, a ver si alguno de vosotros me podeis hechar una mano y teneis algun tipo de informacion tecnica sobre el funcionamiento teorico de este controlador ya que necesito hacer una presentacion. No necesito de ningun modelo en concreto ni muy detallado, simplemente su funcionalidad y proposito general.


    Gracias...

  2. GALAXIS
    GALAXIS está desconectado
    Usuario registrado
    Fecha de ingreso
    06 ago, 05
    Ubicación
    Toledo
    Mensajes
    78
    Acceso Directo a Memoria (DMA)

    El acceso directo a memoria (DMA, del inglés Direct Memory Access) permite a cierto tipo de componentes de ordenador acceder a la memoria del sistema para leer o escribir independientemente de la CPU principal. Muchos sistemas hardware utilizan DMA, incluyendo controladores de unidades de disco, tarjetas gráficas y tarjetas de sonido. DMA es una característica esencial en todos los ordenadores modernos, ya que permite a dispositivos de diferentes velocidades comunicarse sin someter a la CPU a una carga masiva de interrupciones.

    Una transferencia DMA consiste principalmente en copiar un bloque de memoria de un dispositivo a otro. En lugar de que la CPU inicie la transferencia, la transferencia se lleva a cabo por el controlador DMA. Un ejemplo típico es mover un bloque de memoria desde una memoria externa a una interna más rápida. Tal operación no ocupa el procesador y como resultado puede ser planificado para efectuar otras tareas. Las transferencias DMA son esenciales para aumentar el rendimiento de aplicaciones que requieran muchos recursos.

    Cabe destacar que aunque no se necesite a la CPU para la transacción de datos, sí que se necesita el bus del sistema (tanto bus de datos como bus de direcciones), por lo que existen diferentes estrategias para regular su uso, permitiendo así que no quede totalmente acaparado por el controlador DMA.

    Estrategias de transferencia por DMA

    A continuación se exponen diferentes técnicas para realizar la transferencia de datos. El uso de cada una de ellas dependerá de las características que se deseen primar en un sistema.

    * DMA por robo de ciclo: se basa en usar uno o más ciclos de CPU por cada instrucción que se ejecuta (de ahí el nombre). De esta forma se consigue una alta disponibilidad del bus del sistema para la CPU, aunque, en consecuencia, la transferencia de los datos será considerablemente lenta. Este método es el que se usa habitualmente ya que la interferencia con la CPU es muy baja.

    * DMA por ráfagas: consiste en enviar el bloque de datos solicitado mediante una ráfaga, ocupando el bus del sistema hasta finalizar la transmisión. Así se consigue la máxima velocidad, sin embargo la CPU no podrá usar el bus durante todo ese tiempo, por lo que permanecería inactiva.

    * DMA transparente: se trata de usar el bus del sistema cuando se tiene certeza de que la CPU no lo necesita, como por ejemplo en aquellas fases del proceso de ejecución de las instrucciones donde nunca se usa ya que la CPU realiza tareas internas (v. g. fase de decodificación de la instrucción). De esta manera, como su nombre indica, la DMA permanecerá transparente para la CPU y la transferencia se hará sin obstaculizar la relación CPU-bus del sistema. Como desventaja, la velocidad de transferencia es la más baja posible.

    * DMA Scatter-gather: permite la transferencia de datos a varias áreas de memoria en una transacción DMA simple. Es equivalente al encadenamiento de múltiples peticiones DMA simples. De nuevo, el objetivo es liberar a la CPU de las tareas de copia de datos e interrupciones de entrada/salida múltiples.


    Fuente: WikiPedia

  3. GoNzCiD
    GoNzCiD está desconectado
    Usuario registrado CV
    Fecha de ingreso
    27 abr, 04
    Ubicación
    Ávila
    Mensajes
    349
    Gracias, pero algo mas detallado y no una descripcion asi por encima como viene en wikipedia o las primeras paginas de google, que obiamente ahi estoy buscando

    salu2 y gracias