A method for ensuring data coherency in buffered direct memory access (DMA)
data transfers. The DMA controller realizes the last piece of data is
being transferred to the write buffer. The DMA controller then sends a
"Last Write Data" signal to the external memory access arbitration unit.
The external memory access arbitration unit then allows completion of all
pending memory operations. If a memory request occurs, a wait line is
asserted such that memory operations (i.e., reading from, or writing to,
the memory) are prevented for all sources other than the DMA channel
associated with the "Last Write Data" signal. The external memory access
arbitration unit also grants priority to the DMA channel associated with
the "Last Write Data" signal. This effectively flushes the write buffer
and completes the buffered DMA data transfer. The external memory access
arbitration unit then deasserts any asserted wait lines and memory
operations are no longer prevented.
Un método para asegurar coherencia de los datos en transferencias de datos protegidas del acceso directo de memoria (acceso directo de memoria). El controlador dma realiza que el pedazo pasado de datos se está transfiriendo al almacenador intermediario del escribir. El controlador dma entonces envía "pasado escribe una señal de los datos" a la unidad externa del arbitraje del acceso de memoria. La unidad externa del arbitraje del acceso de memoria entonces permite la terminación de todas las operaciones de memoria pendientes. Si ocurre una petición de la memoria, una línea de la espera se afirma tales que las operaciones de memoria (es decir, leyendo en, o escribiendo, a la memoria) están prevenidas para todas las fuentes con excepción del canal de acceso directo de memoria con que "pasados asociados escriban la señal de los datos". La unidad externa del arbitraje del acceso de memoria también concede prioridad al canal de acceso directo de memoria con que "pasados asociados escriben la señal de los datos". Esto limpia con eficacia el almacenador intermediario del escribir con un chorro de agua y termina la transferencia de datos protegida del acceso directo de memoria. Los deasserts externos de la unidad del arbitraje del acceso de memoria entonces cualesquiera líneas de la espera y operación de memoria afirmadas son no más largos prevenidos.