CIRCT 23.0.0git
Loading...
Searching...
No Matches
Functions
esiaccel.bsp.dma Namespace Reference

Functions

 OneItemBuffersToHost (Type client_type)
 
 OneItemBuffersFromHost (Type client_type)
 

Function Documentation

◆ OneItemBuffersFromHost()

esiaccel.bsp.dma.OneItemBuffersFromHost ( Type  client_type)
Create a simple, non-performant DMA-base from host communication channel.

1) Host sends address of buffer address via MMIO write to register 0x08.
2) Host sends address of completion address via MMIO write to register 0x10.
3) Device reads data from said buffer and sends down the channel. Only keeps
    one transfer outstanding by buffering the read response locally before
    forwarding it.
4) Device writes '1' to the first byte of the completion buffer to signal that
   the transfer is done.

Definition at line 106 of file dma.py.

References wrap().

◆ OneItemBuffersToHost()

esiaccel.bsp.dma.OneItemBuffersToHost ( Type  client_type)
Create a simple, non-performant DMA-based channel communication. Protocol:

1) Host sends address of buffer address via MMIO write.
2) Device writes data on channel with a byte '1' to said buffer address.
3) Host polls the last byte in buffer for '1'.
4) Data is copied out of buffer, last byte is set to '0', goto 1.

Future improvement: support more than one buffer at once.

Definition at line 16 of file dma.py.