1 | |
---|
2 | # -*- python -*- |
---|
3 | |
---|
4 | Module('caba:tsarv4_cluster_ring', |
---|
5 | classname = 'soclib::caba::TsarV4ClusterRing', |
---|
6 | tmpl_parameters = [ |
---|
7 | parameter.Module('vci_param', default = 'caba:vci_param'), |
---|
8 | parameter.Module('iss_t'), |
---|
9 | parameter.Int('cmd_width'), |
---|
10 | parameter.Int('rsp_width'), |
---|
11 | ], |
---|
12 | header_files = [ '../source/include/tsarv4_cluster_ring.h', ], |
---|
13 | implementation_files = [ '../source/src/tsarv4_cluster_ring.cpp', ], |
---|
14 | uses = [ |
---|
15 | Uses('caba:base_module'), |
---|
16 | Uses('common:mapping_table'), |
---|
17 | Uses('common:iss2'), |
---|
18 | Uses('caba:vci_cc_xcache_wrapper_v4', iss_t = 'common:gdb_iss', gdb_iss_t = 'common:mips32el'), |
---|
19 | Uses('caba:vci_mem_cache_v4'), |
---|
20 | Uses('caba:vci_simple_ram'), |
---|
21 | Uses('caba:vci_xicu'), |
---|
22 | Uses('caba:virtual_dspin_router', flit_width = parameter.Reference('cmd_width')), |
---|
23 | Uses('caba:virtual_dspin_router', flit_width = parameter.Reference('rsp_width')), |
---|
24 | Uses('caba:vci_local_ring_fast', ring_cmd_data_size = parameter.Reference('cmd_width'), |
---|
25 | ring_rsp_data_size = parameter.Reference('rsp_width')), |
---|
26 | Uses('caba:vci_multi_tty'), |
---|
27 | Uses('caba:vci_framebuffer'), |
---|
28 | Uses('caba:vci_block_device_tsar_v4'), |
---|
29 | Uses('caba:vci_multi_dma'), |
---|
30 | Uses('common:elf_file_loader'), |
---|
31 | ], |
---|
32 | instance_parameters = [ |
---|
33 | parameter.Int('n_x'), |
---|
34 | parameter.Int('n_y'), |
---|
35 | parameter.Int('n_cluster'), |
---|
36 | parameter.Module('mtd', 'common:mapping_table'), |
---|
37 | parameter.Module('mtc', 'common:mapping_table'), |
---|
38 | parameter.Module('mtx', 'common:mapping_table'), |
---|
39 | parameter.Int('x_width'), |
---|
40 | parameter.Int('y_width'), |
---|
41 | parameter.Int('memc_tgtid'), |
---|
42 | parameter.Int('xicu_tgtid'), |
---|
43 | parameter.Int('fbuf_tgtid'), |
---|
44 | parameter.Int('mtty_tgtid'), |
---|
45 | parameter.Int('brom_tgtid'), |
---|
46 | parameter.Int('bdev_tgtid'), |
---|
47 | parameter.Int('cdma_tgtid'), |
---|
48 | parameter.Int('memc_ways'), |
---|
49 | parameter.Int('memc_sets'), |
---|
50 | parameter.Int('l1_i_ways'), |
---|
51 | parameter.Int('l1_i_sets'), |
---|
52 | parameter.Int('l1_d_ways'), |
---|
53 | parameter.Int('l1_d_sets'), |
---|
54 | parameter.Int('xram_latency'), |
---|
55 | parameter.Bool('io'), |
---|
56 | ], |
---|
57 | |
---|
58 | ports = [ |
---|
59 | Port('caba:bit_in', 'p_resetn', auto = 'resetn'), |
---|
60 | Port('caba:clock_in', 'p_clk', auto = 'clock'), |
---|
61 | Port('caba:dspin_output', 'p_cmd_out', [2, 4], dspin_data_size = parameter.Reference('cmd_width')), |
---|
62 | Port('caba:dspin_input', 'p_cmd_in', [2, 4], dspin_data_size = parameter.Reference('cmd_width')), |
---|
63 | Port('caba:dspin_output', 'p_rsp_out', [2, 4], dspin_data_size = parameter.Reference('rsp_width')), |
---|
64 | Port('caba:dspin_input', 'p_rsp_in', [2, 4], dspin_data_size = parameter.Reference('rsp_width')), |
---|
65 | ], |
---|
66 | ) |
---|
67 | |
---|
68 | |
---|