Changes between Version 12 and Version 13 of Component/Vci Mwmr Dma


Ignore:
Timestamp:
Nov 27, 2015, 6:39:03 PM (8 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Component/Vci Mwmr Dma

    v12 v13  
    2727
    2828 * In '''MODE_MWMR''', the channel FSM transfer an "infinite" data stream, between the coprocessor port and a MWMR channel (software FIFO in memory). In this mode the software must define the mode, the data buffer physical address, and the buffer size, but also the MWMR FIFO descriptor address and the lock address in configuration registers. It starts the transfer by writing a non zero value in the CHANNEL_RUNNING register. The channel FSM implements an infinite loop to execute the 7 steps MWMR protocol:
    29  * Read the ticket for queuing lock (1 flit VCI READ)
    30  * Increment atomically the ticket (VCI CAS)
    31  * Read the lock current value (1 flit VCI READ)
    32  * Read the channel status (3 flits VCI READ)
    33  * Transfer the data (N flits VCI READ or WRITE)
    34  * Upate the status (3 flits VCI WRITE)
    35  * Release the lock (1 flit VCI WRITE)
     29  * Read the ticket for queuing lock (1 flit VCI READ)
     30  * Increment atomically the ticket (VCI CAS)
     31  * Read the lock current value (1 flit VCI READ)
     32  * Read the channel status (3 flits VCI READ)
     33  * Transfer the data (N flits VCI READ or WRITE)
     34  * Upate the status (3 flits VCI WRITE)
     35  * Release the lock (1 flit VCI WRITE)
    3636The IRQ is not used in normal operation. AN IRQ is asserted if a VCI error is reported, ant the channel FSM is blocked, waiting in CHANNEL_ERROR state until it is reset to IDLE state by writing a zero value in the CHANNEL_RUNNING register.
    3737