source: branches/fault_tolerance/platform/tsar_generic_iob/tsar_iob_cluster/caba/metadata/tsar_iob_cluster.sd @ 658

Last change on this file since 658 was 658, checked in by cfuguet, 9 years ago

TSAR FAULT TOLERANCE BRANCH

  • Introducing replicated ROMs in cluster to contain the distributed boot procedure.
  • Erasing ROM in the IO network
File size: 5.2 KB
Line 
1
2# -*- python -*-
3
4Module('caba:tsar_iob_cluster',
5        classname = 'soclib::caba::TsarIobCluster',
6
7        tmpl_parameters = [
8                parameter.Module('vci_param_int', default = 'caba:vci_param', 
9                          cell_size = parameter.Reference('vci_data_width_int')),
10                parameter.Module('vci_param_ext', default = 'caba:vci_param', 
11                          cell_size = parameter.Reference('vci_data_width_ext')),
12                parameter.Int('dspin_int_cmd_width'),
13                parameter.Int('dspin_int_rsp_width'),
14                parameter.Int('dspin_ram_cmd_width'),
15                parameter.Int('dspin_ram_rsp_width'),
16        ],
17
18        header_files = [ 
19        '../source/include/tsar_iob_cluster.h', 
20    ],
21
22        implementation_files = [ 
23        '../source/src/tsar_iob_cluster.cpp', 
24    ],
25
26        uses = [
27                Uses('caba:base_module'),
28                Uses('common:mapping_table'),
29                Uses('common:iss2'),
30                Uses('common:elf_file_loader'),
31
32        # internal network components
33                Uses('caba:vci_cc_vcache_wrapper', 
34              cell_size          = parameter.Reference('vci_data_width_int'),
35              dspin_in_width     = parameter.Reference('dspin_int_cmd_width'),
36              dspin_out_width    = parameter.Reference('dspin_int_rsp_width'),
37              iss_t              = 'common:gdb_iss', 
38              gdb_iss_t          = 'common:mips32el'),
39
40                Uses('caba:vci_mem_cache',
41              memc_cell_size_int = parameter.Reference('vci_data_width_int'),
42              memc_cell_size_ext = parameter.Reference('vci_data_width_ext'),
43              dspin_in_width     = parameter.Reference('dspin_int_rsp_width'),
44              dspin_out_width    = parameter.Reference('dspin_int_cmd_width')),
45
46        Uses('caba:vci_xicu',
47              cell_size          = parameter.Reference('vci_data_width_int')),
48
49                Uses('caba:vci_simple_rom',
50              cell_size          = parameter.Reference('vci_data_width_int')),
51
52                Uses('caba:vci_multi_dma',
53              cell_size          = parameter.Reference('vci_data_width_int')),
54
55        Uses('caba:dspin_local_crossbar', 
56              flit_width         = parameter.Reference('dspin_int_cmd_width')),
57
58        Uses('caba:dspin_local_crossbar', 
59              flit_width         = parameter.Reference('dspin_int_rsp_width')),
60
61        Uses('caba:vci_dspin_initiator_wrapper', 
62              cell_size          = parameter.Reference('vci_data_width_int'),
63              dspin_cmd_width    = parameter.Reference('dspin_int_cmd_width'),
64              dspin_rsp_width    = parameter.Reference('dspin_int_rsp_width')),
65
66        Uses('caba:vci_dspin_target_wrapper',
67              cell_size          = parameter.Reference('vci_data_width_int'),
68              dspin_cmd_width    = parameter.Reference('dspin_int_cmd_width'),
69              dspin_rsp_width    = parameter.Reference('dspin_int_rsp_width')),
70
71        Uses('caba:virtual_dspin_router', 
72              flit_width         = parameter.Reference('dspin_int_cmd_width')),
73
74        Uses('caba:virtual_dspin_router', 
75              flit_width         = parameter.Reference('dspin_int_rsp_width')),
76
77        # RAM network components
78        Uses('caba:vci_dspin_initiator_wrapper', 
79              cell_size          = parameter.Reference('vci_data_width_ext'),
80              dspin_cmd_width    = parameter.Reference('dspin_ram_cmd_width'),
81              dspin_rsp_width    = parameter.Reference('dspin_ram_rsp_width')),
82
83        Uses('caba:vci_dspin_target_wrapper',
84              cell_size          = parameter.Reference('vci_data_width_ext'),
85              dspin_cmd_width    = parameter.Reference('dspin_ram_cmd_width'),
86              dspin_rsp_width    = parameter.Reference('dspin_ram_rsp_width')),
87
88        Uses('caba:dspin_router_tsar', 
89              flit_width         = parameter.Reference('dspin_ram_cmd_width')),
90
91        Uses('caba:dspin_router_tsar', 
92              flit_width         = parameter.Reference('dspin_ram_rsp_width')),
93
94                Uses('caba:vci_simple_ram',
95              cell_size          = parameter.Reference('vci_data_width_ext')),
96
97        # IOX network components
98        Uses('caba:vci_io_bridge', 
99              iob_cell_size_int  = parameter.Reference('vci_data_width_int'),
100              iob_cell_size_ext  = parameter.Reference('vci_data_width_ext')),
101                ],
102
103        ports = [
104                Port('caba:bit_in', 'p_resetn', auto = 'resetn'),
105                Port('caba:clock_in', 'p_clk', auto = 'clock'),
106
107                Port('caba:dspin_output', 'p_int_cmd_out', [4, 3], 
108              dspin_data_size = parameter.Reference('dspin_int_cmd_width')),
109                Port('caba:dspin_input', 'p_int_cmd_in', [4, 3], 
110              dspin_data_size = parameter.Reference('dspin_int_cmd_width')),
111                Port('caba:dspin_output', 'p_int_rsp_out', [4, 2], 
112              dspin_data_size = parameter.Reference('dspin_int_rsp_width')), 
113                Port('caba:dspin_input', 'p_int_rsp_in', [4, 2], 
114              dspin_data_size = parameter.Reference('dspin_int_rsp_width')),
115
116                Port('caba:dspin_output', 'p_ram_cmd_out', [4], 
117              dspin_data_size = parameter.Reference('dspin_ram_cmd_width')),
118                Port('caba:dspin_input', 'p_ram_cmd_in', [4], 
119              dspin_data_size = parameter.Reference('dspin_ram_cmd_width')),
120                Port('caba:dspin_output', 'p_ram_rsp_out', [4], 
121              dspin_data_size = parameter.Reference('dspin_ram_rsp_width')), 
122                Port('caba:dspin_input', 'p_ram_rsp_in', [4], 
123              dspin_data_size = parameter.Reference('dspin_ram_rsp_width')),
124                ],
125)
126
127
Note: See TracBrowser for help on using the repository browser.