¿Qué es Scatter-Gather DMA (acceso directo a memoria)?

Actualizado el Dec 31, 2019

Reportado en

Hardware

  • Multifunction I/O Device
  • GPIB Instrument Control Device

Detalles del problema

Mi dispositivo DAQ utiliza Scatter-Gather DMA para obtener datos de la placa a mi computadora, ¿qué significa esto?

Solución

Cuando se produce una operación de movimiento de bloque, los controladores DMA tradicionales necesitan un bloque contiguo (no segmentado) de memoria física. En la mayoría de los sistemas, es difícil obtener memoria no segmentada del sistema operativo.

Los controladores DMA  MITE y NI-STC pueden tomar memoria segmentada y realizar una operación de movimiento en esta memoria utilizando scatter-gather DMA. En este método, los controladores DMA almacenan las direcciones de inicio de todos los segmentos de memoria. Una vez que comienza la operación de movimiento, el controlador DMA alimenta automáticamente al controlador DMA la dirección de inicio del siguiente segmento una vez que se completa el segmento anterior de la memoria. Usando este método, no necesita un bloque de memoria contiguo del sistema operativo. Esto hace que DMA sea ideal para sistemas operativos no deterministas.

Vea los enlaces a continuación para obtener más información sobre DMA y cómo se utiliza con los productos de NI.