Changes between Initial Version and Version 1 of Component/Vci Vgsb


Ignore:
Timestamp:
Oct 3, 2009, 3:12:47 PM (15 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Component/Vci Vgsb

    v1 v1  
     1[wiki:Component SocLib Components General Index]
     2
     3= !VciVgsb =
     4
     5== 1) Functional Description ==
     6
     7This hardware component is a generic system bus respecting the
     8VCI advanced protocol. As any bus, it supports one single transaction at a given time.
     9It reproduces accurately the timing behaviour (both throughput  & latency) of
     10the PIbus.
     11
     12It gives the system designer a generic "communication black-box" with
     13a parametrized number of VCI initiator ports (NB_INITIATOR),
     14and a parameterized number of VCI target ports (NB_TARGET).
     15It can be used to build a "flat" interconnect, where
     16all VCI initiators and targets are identified by a single index:
     17 * The VCI targets must be indexed from 0 to (NB_TARGET - 1).
     18 * The VCI initiators must be indexed from 0 to (NB_INITIATOR - 1).
     19When several initiators try to use the bus, the arbitration
     20policy is round-robin.
     21
     22As any VCI advanced compliant interconnect, this component uses
     23the MSB bits of the VCI ADDRESS field to route the command packets
     24to the proper target, thanks to a routing table, implemented as a ROM.
     25This routing table is build by the constructor from the informations stored in
     26the [wiki:Component/MappingTable mapping table].
     27
     28
     29== 2) Component definition and usage ==
     30
     31source:trunk/soclib/soclib/module/network_component/vci_vgsb/caba/metadata/vci_vgsb.sd
     32
     33See [wiki:SoclibCc/VciParameters SoclibCc/VciParameters]
     34{{{
     35Uses( 'vci_vgsb', **vci_parameters )
     36}}}
     37
     38== 3) CABA  Implementation ==
     39
     40=== CABA sources ===
     41
     42 * interface : source:trunk/soclib/soclib/module/network_component/vci_vgsb/caba/source/include/vci_vgsb.h
     43 * implementation : source:trunk/soclib/soclib/module/network_component/vci_vgsb/caba/source/src/vci_vgsb.cpp
     44
     45=== CABA Constructor parameters ===
     46
     47{{{
     48VciVgmn(
     49     sc_module_name name,                    //  instance name
     50     const soclib::common::MappingTable &mt, // mapping table
     51     size_t nb_initiator,                    // number of initiators
     52     size_t nb_target);                      // number of targets
     53}}}
     54
     55=== CABA 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
     61
     62== 4) TLM-T  Implementation ==
     63
     64Not available