# -*- python -*- Module('caba:tsar_xbar_cluster', classname = 'soclib::caba::TsarXbarCluster', tmpl_parameters = [ parameter.Int('dspin_cmd_width'), parameter.Int('dspin_rsp_width'), parameter.Module('vci_param_int'), parameter.Module('vci_param_ext', cell_size = parameter.Reference('cell_size_ext') ), ], header_files = [ '../source/include/tsar_xbar_cluster.h', ], implementation_files = [ '../source/src/tsar_xbar_cluster.cpp', ], uses = [ Uses('caba:base_module'), Uses('common:mapping_table'), Uses('common:iss2'), Uses('caba:vci_cc_vcache_wrapper', vci_param = parameter.Reference('vci_param_int'), dspin_in_width = parameter.Reference('dspin_cmd_width'), dspin_out_width = parameter.Reference('dspin_rsp_width'), iss_t = 'common:gdb_iss', gdb_iss_t = 'common:mips32el' ), Uses('caba:vci_simple_ram', vci_param = parameter.Reference('vci_param_int') ), Uses('caba:vci_simple_ram', vci_param = parameter.Reference('vci_param_ext'), cell_size = parameter.Reference('cell_size_ext'), ), Uses('caba:vci_xicu', vci_param = parameter.Reference('vci_param_int') ), Uses('caba:dspin_local_crossbar', flit_width = parameter.Reference('dspin_cmd_width') ), Uses('caba:dspin_local_crossbar', flit_width = parameter.Reference('dspin_rsp_width') ), Uses('caba:virtual_dspin_router', flit_width = parameter.Reference('dspin_cmd_width') ), Uses('caba:virtual_dspin_router', flit_width = parameter.Reference('dspin_rsp_width') ), Uses('caba:vci_multi_tty', vci_param = parameter.Reference('vci_param_int') ), Uses('caba:vci_framebuffer', vci_param = parameter.Reference('vci_param_int') ), Uses('caba:vci_multi_nic', vci_param = parameter.Reference('vci_param_int') ), Uses('caba:vci_block_device_tsar', vci_param = parameter.Reference('vci_param_int') ), Uses('caba:vci_multi_dma', vci_param = parameter.Reference('vci_param_int') ), Uses('caba:vci_dspin_target_wrapper', vci_param = parameter.Reference('vci_param_int') ), Uses('caba:vci_dspin_initiator_wrapper', vci_param = parameter.Reference('vci_param_int') ), Uses('caba:vci_mem_cache', dspin_in_width = parameter.Reference('dspin_rsp_width'), dspin_out_width = parameter.Reference('dspin_cmd_width'), memc_cell_size_int = parameter.Reference('cell_size'), memc_cell_size_ext = parameter.Reference('cell_size_ext') ), Uses('common:elf_file_loader'), ], ports = [ Port('caba:bit_in', 'p_resetn', auto = 'resetn'), Port('caba:clock_in', 'p_clk', auto = 'clock'), Port('caba:dspin_output', 'p_cmd_out', [2, 4], dspin_data_size = parameter.Reference('dspin_cmd_width') ), Port('caba:dspin_input', 'p_cmd_in', [2, 4], dspin_data_size = parameter.Reference('dspin_cmd_width') ), Port('caba:dspin_output', 'p_rsp_out', [2, 4], dspin_data_size = parameter.Reference('dspin_rsp_width') ), Port('caba:dspin_input', 'p_rsp_in', [2, 4], dspin_data_size = parameter.Reference('dspin_rsp_width') ), ], )