Changes between Initial Version and Version 1 of Component/Vci Simple Crossbar


Ignore:
Timestamp:
Jan 28, 2008, 6:10:10 PM (16 years ago)
Author:
Nicolas Pouillon
Comment:

Vci simple crossbar

Legend:

Unmodified
Added
Removed
Modified
  • Component/Vci Simple Crossbar

    v1 v1  
     1[wiki:Component SocLib Components General Index]
     2
     3= !VciSimpleCrossbar Functional Description =
     4
     5This hardware component is a generic VCI crossbar, it contains two
     6independant crossbars for VCI commands and VCI responses.
     7
     8When several initiators try to reach the same target, the arbitration
     9policy is round-robin.
     10It gives the system designer a generic "communication black-box" with
     11a parametrized number of VCI initiator ports (NB_INITIATOR),
     12and a parameterized number of VCI target ports (NB_TARGET).
     13
     14As any VCI advanced compliant interconnect, this component uses
     15the MSB bits of the VCI ADDRESS field to route the command packets
     16to the proper target, thanks to a routing table, implemented as a ROM.
     17This routing table is build by the constructor from the informations stored in
     18the [wiki:Component/MappingTable mapping table].
     19It uses the VCI RSRCID field to route the response packet to the initiator.
     20
     21= Component definition =
     22
     23Available in source:trunk/soclib/desc/soclib/vci_simple_crossbar.sd
     24
     25== Usage ==
     26
     27!VciSimpleCrossbar has no other parameter than VCI ones, it may be used like others,
     28see [wiki:SoclibCc/VciParameters SoclibCc/VciParameters]
     29{{{
     30Uses( 'vci_simple_crossbar', **vci_parameters )
     31}}}
     32
     33= !VciSimpleCrossbar CABA  Implementation =
     34
     35The caba implementation is in
     36 * source:trunk/soclib/systemc/include/caba/interconnect/vci_simple_crossbar.h
     37 * source:trunk/soclib/systemc/src/caba/interconnect/vci_simple_crossbar.cc
     38
     39== Template parameters ==
     40
     41{{{
     42template<typename vci_param>
     43}}}
     44
     45== Constructor parameters ==
     46
     47{{{
     48VciSimpleCrossbar(
     49     sc_module_name name,
     50     const soclib::common::MappingTable &mt,
     51     size_t nb_initiator,
     52     size_t nb_target );
     53}}}
     54
     55== Ports ==
     56
     57 * sc_in<bool> '''p_resetn''' : Global system reset
     58 * sc_in<bool> '''p_clk''' : Global system clock
     59 * soclib::caba::!VciTarget<vci_param> '''p_from_initiator[]''' : Ports from VCI initiators
     60 * soclib::caba::!VciInitiator<vci_param> '''p_to_target[]''' : Ports to VCI targets