Changes between Version 2 and Version 3 of Component/Vci Fd Access


Ignore:
Timestamp:
Feb 9, 2008, 8:38:55 PM (16 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Component/Vci Fd Access

    v2 v3  
    11[wiki:Component SocLib Components General Index]
    22
    3 = !VciFdAccess Functional Description =
     3= !VciFdAccess =
     4
     5== 1) Functional Description ==
    46
    57This VCI component is both a target and an initiator.
    6  * Addressing as a target allows to configure it for a transfer.
    7  * Initiator will do the transfer
     8 * It is addressed as a target to be configured for a transfer.
     9 * It is acting as an initiator to do the transfer
    810
    9 There is only one access context handled at a time, but fd can be changed for each operation, many fd can be open at the same time.
    10 
     11There is only one access context handled at a time, but the file descriptor can be changed for each operation,
     12and several  file descriptors can be open at the same time.
    1113An IRQ is optionally asserted when transfer is finished.
    1214
     
    1416as a default target.
    1517
    16 = Memory region layout =
     18It contains the following memory-mapped registers:
    1719
    1820 * `FD_ACCESS_FD` File descriptor for the transfer
    1921
    20  * `FD_ACCESS_BUFFER` Buffer (in SoC memory) for the transfer
     22 * `FD_ACCESS_BUFFER` Physical address of the buffer in SoC memory
    2123
    22  * `FD_ACCESS_SIZE` Size of the transfer
     24 * `FD_ACCESS_SIZE` Size of the transfer (number of bytes)
    2325
    2426 * `FD_ACCESS_HOW` Type of open() operation
     
    3739 * `FD_ACCESS_MODE` (aliases with WHENCE) Mode for open() with a O_CREAT
    3840
    39 = Operations codes =
     41The following operations codes are defined:
    4042
    4143 * `FD_ACCESS_NOOP` Nothing
     
    5456 * `FD_ACCESS_LSEEK` lseek()
    5557
    56 = Component usage =
    57 
    5858For extensibility issues, you should access this component using globally-defined offsets.
    59 
    6059You should include file `soclib/fd_access.h` from your software, it
    6160defines `FD_ACCESS_FD`, `FD_ACCESS_BUFFER`, ...
     
    130129(add -I/path/to/soclib/include to your compilation command-line)
    131130
    132 = Component definition =
     131== 2) Component definition & usage ==
    133132
    134 Available in source:trunk/soclib/module/connectivity_component/vci_fd_access/caba/metadata/vci_fd_access.sd
     133source:trunk/soclib/module/connectivity_component/vci_fd_access/caba/metadata/vci_fd_access.sd
    135134
    136 == Usage ==
    137 
    138 !VciFdAccess has no other parameter than VCI ones, it may be used like others, see [wiki:SoclibCc/VciParameters SoclibCc/VciParameters]
     135See [wiki:SoclibCc/VciParameters SoclibCc/VciParameters]
    139136{{{
    140137Uses( 'vci_fd_access', **vci_parameters )
    141138}}}
    142139
    143 = !VciFdAccess CABA  Implementation =
     140== 3) CABA  Implementation ==
    144141
    145 The caba implementation is in
    146  * source:trunk/soclib/module/connectivity_component/vci_fd_access/caba/source/include/vci_fd_access.h
    147  * source:trunk/soclib/module/connectivity_component/vci_fd_access/caba/source/src/vci_fd_access.cpp
     142=== CABA sources ===
    148143
    149 == Template parameters: ==
     144 * interface : source:trunk/soclib/soclib/module/connectivity_component/vci_fd_access/caba/source/include/vci_fd_access.h
     145 * implementation : source:trunk/soclib/soclib/module/connectivity_component/vci_fd_access/caba/source/src/vci_fd_access.cpp
    150146
    151  * The VCI parameters
     147=== CABA Constructor parameters ===
    152148
    153 == Constructor parameters ==
    154149{{{
    155150VciFdAccess(
     
    159154}}}
    160155
    161 == Ports ==
     156=== CABA Ports ===
    162157
    163158 * sc_in<bool> '''p_resetn''' : Global system reset
     
    166161 * soclib::caba::!VciInitiator<vci_param> '''p_vci_initiator''' : The VCI initiator port
    167162 * sc_out<bool> '''p_irq''' : Interrupt port
     163
     164== 4) TLM-T Implementation ==
     165
     166The TLM-T implementation is not yet available.