Ignore:
Timestamp:
Apr 11, 2015, 8:26:46 PM (9 years ago)
Author:
alain
Message:

Modify the tsar_generic_iob platform:
The vci_multi_dma component replicated in all cluster is replaced by a vci_mwmr_dma component.
This new component supports all hardware coprocessors respection the "coproc" interface.
Amongst the available coprocessors (defined in the SocLib? "coprocessor_components" directory)
the MWR_CPY coprocessor provide an improved memory copy service throughput x 2).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/platforms/tsar_generic_iob/tsar_iob_cluster/caba/source/include/tsar_iob_cluster.h

    r959 r972  
    2828#include "dspin_router.h"
    2929#include "virtual_dspin_router.h"
    30 #include "vci_multi_dma.h"
     30#include "vci_mwmr_dma.h"
    3131#include "vci_mem_cache.h"
    3232#include "vci_cc_vcache_wrapper.h"
    3333#include "vci_io_bridge.h"
     34#include "coproc_signals.h"
     35#include "coproc_gcd.h"
     36#include "coproc_dct.h"
     37#include "coproc_cpy.h"
    3438
    3539namespace soclib { namespace caba   {
     
    7175    sc_signal<bool>                       signal_false;
    7276    sc_signal<bool>                       signal_proc_it[32];
    73     sc_signal<bool>                       signal_irq_mdma[8];
     77    sc_signal<bool>                       signal_irq_mwmr;
    7478    sc_signal<bool>                       signal_irq_memc;
    7579   
     80    // Coprocessor signals
     81    CoprocSignals<uint32_t,uint8_t>       signal_to_coproc[8];
     82    CoprocSignals<uint32_t,uint8_t>       signal_from_coproc[8];
     83    sc_signal<uint32_t>                   signal_config_coproc[8];
     84    sc_signal<uint32_t>                   signal_status_coproc[8];
     85
    7686    // INT network DSPIN signals between DSPIN routers and DSPIN local_crossbars
    7787    DspinSignals<dspin_int_cmd_width>     signal_int_dspin_cmd_l2g_d;
     
    8898    // INT network VCI signals between VCI components and VCI local crossbar
    8999    VciSignals<vci_param_int>             signal_int_vci_ini_proc[8];
    90     VciSignals<vci_param_int>             signal_int_vci_ini_mdma;
     100    VciSignals<vci_param_int>             signal_int_vci_ini_mwmr;
    91101    VciSignals<vci_param_int>             signal_int_vci_ini_iobx;
    92102
    93103    VciSignals<vci_param_int>             signal_int_vci_tgt_memc;
    94104    VciSignals<vci_param_int>             signal_int_vci_tgt_xicu;
    95     VciSignals<vci_param_int>             signal_int_vci_tgt_mdma;
     105    VciSignals<vci_param_int>             signal_int_vci_tgt_mwmr;
    96106    VciSignals<vci_param_int>             signal_int_vci_tgt_iobx;
    97107
     
    144154    VciXicu<vci_param_int>*                           xicu;
    145155
    146     VciMultiDma<vci_param_int>*                       mdma;
     156    VciMwmrDma<vci_param_int>*                        mwmr;
     157
     158    CoprocGcd*                                        gcd;
     159    CoprocDct*                                        dct;
     160    CoprocCpy*                                        cpy;
    147161
    148162    VciLocalCrossbar<vci_param_int>*                  int_xbar_d;
     
    188202    TsarIobCluster( sc_module_name                     insname,
    189203                    size_t                             nb_procs,   
    190                     size_t                             nb_dmas, 
    191204                    size_t                             x,             // x coordinate
    192205                    size_t                             y,             // y coordinate
     
    205218                    size_t                             int_memc_tgt_id,
    206219                    size_t                             int_xicu_tgt_id,
    207                     size_t                             int_mdma_tgt_id,
     220                    size_t                             int_mwmr_tgt_id,
    208221                    size_t                             int_iobx_tgt_id,
    209222                    size_t                             int_proc_ini_id,
    210                     size_t                             int_mdma_ini_id,
     223                    size_t                             int_mwmr_ini_id,
    211224                    size_t                             int_iobx_ini_id,
    212225
     
    231244                    size_t                             xcu_nb_irq,
    232245
     246                    size_t                             coproc_type,
     247
    233248                    const Loader                       &loader,  // loader for XRAM
    234249
     
    245260    void init();
    246261 
    247 
    248262};
    249263
Note: See TracChangeset for help on using the changeset viewer.