source: trunk/platforms/tsar_mono_fpga/tsar_fpga_cluster/caba/metadata/tsar_fpga_cluster.sd @ 957

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

Introduce a SocLib? platform implementing the FPGA mono cluster platform

  • This mono cluster platform is the one used for NetBSD and Linux on TSAR demonstrators.
  • It is based on the LETI platform but it contains an internal ROM and all the DSPIN routers have been removed.
File size: 4.1 KB
Line 
1
2# -*- python -*-
3
4Module('caba:tsar_fpga_cluster', 
5       classname = 'soclib::caba::TsarFpgaCluster',
6       tmpl_parameters = [
7           parameter.Int('dspin_cmd_width'),
8           parameter.Int('dspin_rsp_width'),
9           parameter.Module('vci_param_int', default = 'caba:vci_param',
10                            cell_size = parameter.Reference('vci_data_width_int')),
11           parameter.Module('vci_param_ext', default = 'caba:vci_param',
12                            cell_size = parameter.Reference('vci_data_width_ext')),
13       ],
14
15       header_files = [ '../source/include/tsar_fpga_cluster.h', ],
16       implementation_files = [ '../source/src/tsar_fpga_cluster.cpp', ],
17
18       uses = [
19           Uses('caba:base_module'),
20           Uses('common:mapping_table'),
21           Uses('common:iss2'),
22
23           Uses('caba:vci_cc_vcache_wrapper', 
24                cell_size = parameter.Reference('vci_data_width_int'),
25                dspin_in_width = parameter.Reference('dspin_cmd_width'),
26                dspin_out_width = parameter.Reference('dspin_rsp_width'),
27                iss_t = 'common:gdb_iss', 
28                gdb_iss_t = 'common:mips32el'),
29
30           Uses('caba:vci_mem_cache',
31                memc_cell_size_int = parameter.Reference('vci_data_width_int'),
32                memc_cell_size_ext = parameter.Reference('vci_data_width_ext'),
33                memc_dspin_in_width = parameter.Reference('dspin_rsp_width'),
34                memc_dspin_out_width = parameter.Reference('dspin_cmd_width')),
35
36           Uses('caba:vci_simple_ram',
37                cell_size = parameter.Reference('vci_data_width_ext')),
38
39           Uses('caba:vci_xicu',
40                cell_size = parameter.Reference('vci_data_width_int')),
41
42           Uses('caba:vci_local_crossbar', 
43                cell_size = parameter.Reference('vci_data_width_int')),
44
45           Uses('caba:dspin_local_crossbar', 
46                flit_width = parameter.Reference('dspin_cmd_width')),
47
48           Uses('caba:dspin_local_crossbar', 
49                flit_width = parameter.Reference('dspin_rsp_width')),
50
51           Uses('caba:vci_multi_tty',
52                cell_size = parameter.Reference('vci_data_width_int')),
53
54           Uses('caba:vci_block_device_tsar',
55                cell_size = parameter.Reference('vci_data_width_int')),
56
57           Uses('caba:vci_simple_rom',
58                cell_size = parameter.Reference('vci_data_width_int')),
59
60           Uses('caba:vci_dspin_target_wrapper',
61                cell_size = parameter.Reference('vci_data_width_int')),
62
63           Uses('caba:vci_dspin_initiator_wrapper',
64                cell_size = parameter.Reference('vci_data_width_int')),
65
66           Uses('common:elf_file_loader'),
67       ],
68
69       ports = [
70           Port('caba:bit_in', 'p_resetn', auto = 'resetn'),
71           Port('caba:clock_in', 'p_clk', auto = 'clock'),
72
73           Port('caba:dspin_output', 'p_cmd_out',
74                dspin_data_size = parameter.Reference('dspin_cmd_width')),
75           Port('caba:dspin_input', 'p_cmd_in',
76                dspin_data_size = parameter.Reference('dspin_cmd_width')),
77
78           Port('caba:dspin_output', 'p_rsp_out',
79                dspin_data_size = parameter.Reference('dspin_rsp_width')), 
80           Port('caba:dspin_input', 'p_rsp_in',
81                dspin_data_size = parameter.Reference('dspin_rsp_width')),
82
83           Port('caba:dspin_output', 'p_m2p_out',
84                dspin_data_size = parameter.Reference('dspin_cmd_width')), 
85           Port('caba:dspin_input', 'p_m2p_in',
86                dspin_data_size = parameter.Reference('dspin_cmd_width')),
87
88           Port('caba:dspin_output', 'p_p2m_out',
89                dspin_data_size = parameter.Reference('dspin_rsp_width')), 
90           Port('caba:dspin_input', 'p_p2m_in',
91                dspin_data_size = parameter.Reference('dspin_rsp_width')),
92
93           Port('caba:dspin_output', 'p_cla_out',
94                dspin_data_size = parameter.Reference('dspin_cmd_width')), 
95           Port('caba:dspin_input', 'p_cla_in',
96                dspin_data_size = parameter.Reference('dspin_cmd_width')),
97       ],
98)
99
100# vim: ts=4 : sts=4 : sw=4 : et
Note: See TracBrowser for help on using the repository browser.