soc_maker 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +5 -0
  3. data/History.txt +4 -0
  4. data/LICENSE +678 -0
  5. data/README.rdoc +228 -0
  6. data/Rakefile +46 -0
  7. data/bin/soc_maker_cli +80 -0
  8. data/bin/soc_maker_parser +85 -0
  9. data/core_lib/cores/adv_debug_sys/01_adv_debug_sys.yaml +245 -0
  10. data/core_lib/cores/or1200_rel2/01_or1200.yaml +208 -0
  11. data/core_lib/cores/or1200_rel2/02_or1200_files.yaml +421 -0
  12. data/core_lib/cores/or1200_rel2/03_or1200_sparam.yaml +188 -0
  13. data/core_lib/cores/or1200_rel2/or1200_defines.v.in +1799 -0
  14. data/core_lib/cores/ram_wb/ram_wb.yaml +102 -0
  15. data/core_lib/cores/ram_wb/ram_wb_b3.v.in +259 -0
  16. data/core_lib/cores/uart16550/01_uart16550.yaml +99 -0
  17. data/core_lib/cores/uart16550/02_uart16550_files.yaml +70 -0
  18. data/core_lib/cores/wb_connect/minsoc_tc_top.v +1802 -0
  19. data/core_lib/cores/wb_connect/wb_connect.yaml +733 -0
  20. data/core_lib/inc.yaml +13 -0
  21. data/core_lib/interfaces/clk_rst/clk.yaml +9 -0
  22. data/core_lib/interfaces/clk_rst/rst.yaml +9 -0
  23. data/core_lib/interfaces/clk_rst/single.yaml +7 -0
  24. data/core_lib/interfaces/debug/debug.yaml +32 -0
  25. data/core_lib/interfaces/jtag/jtag.yaml +13 -0
  26. data/core_lib/interfaces/jtag/jtag_tap.yaml +22 -0
  27. data/core_lib/interfaces/power/or_power.yaml +25 -0
  28. data/core_lib/interfaces/uart/uart.yaml +21 -0
  29. data/core_lib/interfaces/wishbone/wishbone_ma_b3.yaml +54 -0
  30. data/core_lib/interfaces/wishbone/wishbone_sl_b3.yaml +51 -0
  31. data/doc/class_arch.uml +5113 -0
  32. data/doc/fig/hierarchical.svg +273 -0
  33. data/examples/or1200_test/or1200_test.cmd +78 -0
  34. data/examples/or1200_test/or1200_test.rb +136 -0
  35. data/examples/or1200_test/rtl/or1200_test_top.vhd +274 -0
  36. data/examples/or1200_test/rtl/s3astarter.ucf +10 -0
  37. data/examples/or1200_test/rtl/xilinx_internal_jtag.v +438 -0
  38. data/examples/or1200_test/rtl/xilinx_internal_jtag_options.v +12 -0
  39. data/examples/or1200_test/sw/README.txt +35 -0
  40. data/examples/or1200_test/sw/bin2vmem.c +159 -0
  41. data/examples/or1200_test/sw/board.h +24 -0
  42. data/examples/or1200_test/sw/compile.sh +18 -0
  43. data/examples/or1200_test/sw/except.S +152 -0
  44. data/examples/or1200_test/sw/int.c +79 -0
  45. data/examples/or1200_test/sw/int.h +14 -0
  46. data/examples/or1200_test/sw/interconnect.h +17 -0
  47. data/examples/or1200_test/sw/interrupts.c +14 -0
  48. data/examples/or1200_test/sw/main.c +16 -0
  49. data/examples/or1200_test/sw/or1200.h +454 -0
  50. data/examples/or1200_test/sw/orp.ld +60 -0
  51. data/examples/or1200_test/sw/reset.S +112 -0
  52. data/examples/or1200_test/sw/support.c +123 -0
  53. data/examples/or1200_test/sw/support.h +33 -0
  54. data/examples/or1200_test/sw/tick.c +30 -0
  55. data/examples/or1200_test/sw/tick.h +2 -0
  56. data/examples/or1200_test/sw/uart.c +136 -0
  57. data/examples/or1200_test/sw/uart.h +126 -0
  58. data/lib/soc_maker.rb +324 -0
  59. data/lib/soc_maker/cli.rb +544 -0
  60. data/lib/soc_maker/conf.rb +310 -0
  61. data/lib/soc_maker/core_def.rb +579 -0
  62. data/lib/soc_maker/core_inst.rb +305 -0
  63. data/lib/soc_maker/err.rb +211 -0
  64. data/lib/soc_maker/hdl_coder.rb +500 -0
  65. data/lib/soc_maker/hdl_file.rb +166 -0
  66. data/lib/soc_maker/hdl_parser.rb +431 -0
  67. data/lib/soc_maker/ifc_def.rb +193 -0
  68. data/lib/soc_maker/ifc_port.rb +133 -0
  69. data/lib/soc_maker/ifc_spc.rb +180 -0
  70. data/lib/soc_maker/lib.rb +289 -0
  71. data/lib/soc_maker/lib_inc.rb +109 -0
  72. data/lib/soc_maker/parameter.rb +149 -0
  73. data/lib/soc_maker/soc_def.rb +847 -0
  74. data/lib/soc_maker/sparameter.rb +289 -0
  75. data/lib/soc_maker/version.rb +8 -0
  76. data/lib/soc_maker/ypp.rb +130 -0
  77. data/soc_maker.gemspec +28 -0
  78. data/spec/cli_cmds1.txt +39 -0
  79. data/spec/cli_spec.rb +49 -0
  80. data/spec/conf_spec.rb +44 -0
  81. data/spec/core_def_spec.rb +503 -0
  82. data/spec/core_inst_spec.rb +169 -0
  83. data/spec/hdl_file_spec.rb +154 -0
  84. data/spec/hdl_parser_spec.rb +201 -0
  85. data/spec/ifc_def_spec.rb +121 -0
  86. data/spec/ifc_port_spec.rb +92 -0
  87. data/spec/ifc_spc_spec.rb +196 -0
  88. data/spec/lib_inc_spec.rb +99 -0
  89. data/spec/lib_spec.rb +209 -0
  90. data/spec/parameter_spec.rb +86 -0
  91. data/spec/soc_def_spec.rb +611 -0
  92. data/spec/soc_maker_spec.rb +7 -0
  93. data/spec/sparameter_spec.rb +182 -0
  94. data/spec/spec_helper.rb +78 -0
  95. data/spec/test_soc.yaml +105 -0
  96. data/spec/test_soc2.yaml +60 -0
  97. data/spec/test_soc_lib/cores/core_A_rel1/00_core_a.yaml +75 -0
  98. data/spec/test_soc_lib/cores/core_A_rel1/01_core_a.yaml +57 -0
  99. data/spec/test_soc_lib/cores/core_A_rel1/core_a.vhd +29 -0
  100. data/spec/test_soc_lib/cores/core_A_rel1/core_a_pkg.vhd.src +3 -0
  101. data/spec/test_soc_lib/cores/core_A_rel1/core_a_pkg2.vhd.src +4 -0
  102. data/spec/test_soc_lib/cores/core_A_rel1/core_a_pkg3.v.src +6 -0
  103. data/spec/test_soc_lib/cores/core_B_rel1/core_b.vhd +25 -0
  104. data/spec/test_soc_lib/cores/core_B_rel1/core_b.yaml +36 -0
  105. data/spec/test_soc_lib/cores/core_C_v1/core_C.vhd +57 -0
  106. data/spec/test_soc_lib/cores/core_C_v1/core_c.yaml +42 -0
  107. data/spec/test_soc_lib/cores/soc_A/soc_A.yaml +12 -0
  108. data/spec/test_soc_lib/cores/soc_maker_include.yaml +6 -0
  109. data/spec/test_soc_lib/ifcs/core_AB_ifc/bidir_ifc.yaml +19 -0
  110. data/spec/test_soc_lib/ifcs/core_AB_ifc/core_AB_ifc.yaml +15 -0
  111. data/spec/test_soc_lib/ifcs/core_AB_ifc/top_ifc.yaml +9 -0
  112. data/spec/test_soc_lib/soc_maker_include.yaml +4 -0
  113. data/spec/yaml_examples.rb +367 -0
  114. data/spec/ypp_spec.rb +156 -0
  115. data/test/test_soc_maker.rb +0 -0
  116. metadata +255 -0
@@ -0,0 +1,7 @@
1
+ require_relative( 'spec_helper' )
2
+ describe SOCMaker do
3
+
4
+
5
+
6
+ end
7
+
@@ -0,0 +1,182 @@
1
+ ###############################################################
2
+ #
3
+ # File: sparameter_spec.rb
4
+ #
5
+ # Author: Christian Hättich
6
+ #
7
+ # Project: System-On-Chip Maker
8
+ #
9
+ # Target: Linux / Windows / Mac
10
+ #
11
+ # Language: ruby
12
+ #
13
+ #
14
+ ###############################################################
15
+ #
16
+ #
17
+ # Copyright (C) 2014 Christian Hättich - feddischson [ at ] opencores.org
18
+ #
19
+ # This program is free software: you can redistribute it and/or modify
20
+ # it under the terms of the GNU General Public License as published by
21
+ # the Free Software Foundation, either version 3 of the License, or
22
+ # (at your option) any later version.
23
+ #
24
+ # This program is distributed in the hope that it will be useful,
25
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
26
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27
+ # GNU General Public License for more details.
28
+ #
29
+ # You should have received a copy of the GNU General Public License
30
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
31
+ #
32
+ #
33
+ ###############################################################
34
+ #
35
+ # Description:
36
+ # Test specification for SOCMaker::SParameter and
37
+ # SOCMaker::SParameterEntry
38
+ #
39
+ #
40
+ #
41
+ #
42
+ ###############################################################
43
+ require_relative( 'spec_helper' )
44
+
45
+ require "yaml_examples.rb"
46
+
47
+
48
+
49
+ describe SOCMaker::Parameter do
50
+
51
+ include_context "yaml examples"
52
+
53
+ describe "#initialize" do
54
+
55
+ it "return an object of type SOCMaker::SParameter when creating it with new" do
56
+ o = SOCMaker::SParameter.new( "./path/to/file.src", "./path/to/file.dst" )
57
+ expect( o.class ).to be( SOCMaker::SParameter )
58
+ expect( o.parameters.class ).to be( Hash )
59
+ end
60
+
61
+ it "raises an error if the destination path has zero length" do
62
+ expect{ SOCMaker::SParameter.new( "./path/to/file.src", "" ) }.
63
+ to raise_error( SOCMaker::ERR::InitError )
64
+ end
65
+
66
+ it "raises an error if the destination path is nil" do
67
+ expect{ SOCMaker::SParameter.new( "./path/to/file.src", nil ) }.
68
+ to raise_error( SOCMaker::ERR::InitError )
69
+ end
70
+
71
+ it "raises an error if the destination path is not a string" do
72
+ expect{ SOCMaker::SParameter.new( "./path/to/file.src", 4 ) }.
73
+ to raise_error( SOCMaker::ERR::InitError )
74
+ end
75
+
76
+
77
+ it "raises an error if the src path has zero length" do
78
+ expect{ SOCMaker::SParameter.new( "", "./path/to/file.dst" ) }.
79
+ to raise_error( SOCMaker::ERR::InitError )
80
+ end
81
+
82
+ it "raises an error if the src path is nil" do
83
+ expect{ SOCMaker::SParameter.new( nil, "./path/to/file.dst" ) }.
84
+ to raise_error( SOCMaker::ERR::InitError )
85
+ end
86
+
87
+ it "raises an error if the src path is not a string" do
88
+ expect{ SOCMaker::SParameter.new( 4,"./path/to/file.dst" ) }.
89
+ to raise_error( SOCMaker::ERR::InitError )
90
+ end
91
+
92
+ it "returns an object of type SOCMaker::SParameterentry when creating it with new" do
93
+ o = SOCMaker::SParameterEntry.new( "type", "mytoken" )
94
+ expect( o.class).to be( SOCMaker::SParameterEntry )
95
+ end
96
+
97
+ it "raises an error if token is nil" do
98
+ expect{ SOCMaker::SParameterEntry.new( "type", nil ) }.
99
+ to raise_error( SOCMaker::ERR::InitError )
100
+ end
101
+
102
+ it "raises an error if token is an empty string" do
103
+ expect{ SOCMaker::SParameterEntry.new( "type", "" ) }.
104
+ to raise_error( SOCMaker::ERR::InitError )
105
+ end
106
+
107
+ it "raises an error if token is not a string" do
108
+ expect{ SOCMaker::SParameterEntry.new( "type", 4 ) }.
109
+ to raise_error( SOCMaker::ERR::InitError )
110
+ end
111
+ end
112
+
113
+ it "raises an error if the path is not defined" do
114
+ expect{ SOCMaker::from_s( @F_YAML_STATIC_NO_PATH ) }.
115
+ to raise_error( SOCMaker::ERR::InitError )
116
+ end
117
+
118
+ it "raises an error if the token is not defined" do
119
+ expect{ SOCMaker::from_s( @F_YAML_STATIC_NO_TOKEN ) }.
120
+ to raise_error( SOCMaker::ERR::InitError )
121
+ end
122
+
123
+ it "raises an error if the type is not defined" do
124
+ expect{ SOCMaker::from_s( @F_YAML_STATIC_NO_TYPE ) }.
125
+ to raise_error( SOCMaker::ERR::InitError )
126
+ end
127
+
128
+
129
+ it "raises an error if the destination is not defined" do
130
+ expect{ SOCMaker::from_s( @F_YAML_STATIC_NO_DST1 ) }.
131
+ to raise_error( SOCMaker::ERR::InitError )
132
+ end
133
+
134
+
135
+ it "raises an error if an entry is not provided" do
136
+ expect{ SOCMaker::from_s( @F_YAML_STATIC_NO_SENTRY ) }.
137
+ to raise_error( SOCMaker::ERR::InitError )
138
+ end
139
+
140
+ describe "object handling, en-decoding:" do
141
+
142
+ it "is possible to encode and decode a static parameter" do
143
+ o1 = SOCMaker::SParameter.new(
144
+ "./path/to/file.src",
145
+ "./path/to/file.dst",
146
+ 'parameters' => { p1: SOCMaker::SParameterEntry.new( "file.src", "file.dst" ) } )
147
+
148
+ yaml_str = o1.to_yaml
149
+ o2 = YAML::load( yaml_str )
150
+ expect( o1 ).to eq( o2 )
151
+ end
152
+
153
+ it "returns false for two non-equal objects" do
154
+ o1 = SOCMaker::SParameterEntry.new(
155
+ "./path/to/file.src",
156
+ "./path/to/file.dst" )
157
+ o2 = Marshal::load(Marshal.dump(o1))
158
+ o2.min = 4
159
+ expect( o2 == o1 ).to be( false )
160
+ end
161
+
162
+ it "is possible to encode and decode a static parameter entry" do
163
+ o1 = SOCMaker::SParameterEntry.new(
164
+ "./path/to/file.src",
165
+ "./path/to/file.dst",
166
+ 'default' => 0,
167
+ 'min' => 0,
168
+ 'max' => 3,
169
+ 'visible' => true,
170
+ 'editable' => false,
171
+ 'description' => "test description" )
172
+ yaml_str = o1.to_yaml
173
+ o2 = YAML::load( yaml_str )
174
+ expect( o1 ).to eq( o2 )
175
+ end
176
+ end
177
+ end
178
+
179
+
180
+
181
+ # vim: noai:ts=2:sw=2
182
+
@@ -0,0 +1,78 @@
1
+ ###############################################################
2
+ #
3
+ # File: spec_helper.rb
4
+ #
5
+ # Author: Christian Hättich
6
+ #
7
+ # Project: System-On-Chip Maker
8
+ #
9
+ # Target: Linux / Windows / Mac
10
+ #
11
+ # Language: ruby
12
+ #
13
+ #
14
+ ###############################################################
15
+ #
16
+ #
17
+ # Copyright (C) 2014 Christian Hättich - feddischson [ at ] opencores.org
18
+ #
19
+ # This program is free software: you can redistribute it and/or modify
20
+ # it under the terms of the GNU General Public License as published by
21
+ # the Free Software Foundation, either version 3 of the License, or
22
+ # (at your option) any later version.
23
+ #
24
+ # This program is distributed in the hope that it will be useful,
25
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
26
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27
+ # GNU General Public License for more details.
28
+ #
29
+ # You should have received a copy of the GNU General Public License
30
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
31
+ #
32
+ #
33
+ ###############################################################
34
+ #
35
+ # Description:
36
+ # This little helper is included in all specifications.
37
+ # We initialise the SOCMaker module
38
+ # - without loading the library
39
+ # - with logging to NULL
40
+ # In addition, we enable warnings and colors.
41
+ #
42
+ #
43
+ ###############################################################
44
+ require 'rubygems'
45
+ require 'rspec'
46
+ require 'rspec/its'
47
+ require 'simplecov'
48
+ SimpleCov.start
49
+ require 'soc_maker'
50
+
51
+ RSpec.configure do |config|
52
+
53
+
54
+ SOCMaker::load( skip_refresh: true, # no loading of a lib
55
+ logger_out: File.open(File::NULL, "w") # no logger output
56
+ )
57
+ config.warnings = true
58
+ config.color = true
59
+
60
+ # == Mock Framework
61
+ #
62
+ # RSpec uses it's own mocking framework by default. If you prefer to
63
+ # use mocha, flexmock or RR, uncomment the appropriate line:
64
+ #
65
+ # config.mock_framework = :mocha
66
+ # config.mock_framework = :flexmock
67
+ # config.mock_framework = :rr
68
+ end
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+
78
+
@@ -0,0 +1,105 @@
1
+ SOCM_SOC
2
+ name: test_soc
3
+ description: 'This is a test SOC'
4
+ id: test_soc,v1
5
+ date: '13. May 2014'
6
+ license: 'GPL'
7
+ licensefile: ''
8
+ author: 'feddischson'
9
+ authormail: 'feddischson [ at ] opencores.org'
10
+ vccmd: ''
11
+ interfaces:
12
+ :top_ifc: SOCM_IFC
13
+ name: core_AB_ifc
14
+ dir: 0
15
+ id: core_AB_ifc,1
16
+ ports:
17
+ :sig_con1a: SOCM_PORT
18
+ spc_ref: sig_a
19
+ len: 8
20
+ :sig_con1b: SOCM_PORT
21
+ spc_ref: sig_b
22
+ len: 16
23
+ :sig_con1c: SOCM_PORT
24
+ spc_ref: sig_c
25
+ len: 1
26
+ :top_ifc2: SOCM_IFC
27
+ name: bidir_io
28
+ dir: 0
29
+ id: bidir_ifc,1
30
+ ports:
31
+ :clk_i: SOCM_PORT
32
+ spc_ref: clk
33
+ len: 1
34
+ :rst: SOCM_PORT
35
+ spc_ref: rst
36
+ len: 1
37
+ :en: SOCM_PORT
38
+ spc_ref: en
39
+ len: 1
40
+ :wr: SOCM_PORT
41
+ spc_ref: wr
42
+ len: 1
43
+ :bidir: SOCM_PORT
44
+ spc_ref: bidir
45
+ len: 8
46
+
47
+
48
+
49
+
50
+ functions: {}
51
+ inst_parameters: {}
52
+ static_parameters: {}
53
+ cores:
54
+ :inst_a: SOCM_INST
55
+ type: core_A,rel1
56
+ params:
57
+ :param1: 8
58
+ :param2: 16
59
+ :param3: 16
60
+ :inst_b: SOCM_INST
61
+ type: core_A,rel1
62
+ params:
63
+ :param1: 8
64
+ :param2: 16
65
+ :param3: 16
66
+ :inst_c: SOCM_INST
67
+ type: core_B,rel1
68
+ params: {}
69
+ :inst_d: SOCM_INST
70
+ type: core_B,rel1
71
+ params: {}
72
+
73
+ :inst_io: SOCM_INST
74
+ type: core_C,v1
75
+ params: {}
76
+
77
+
78
+ static:
79
+ :core_Arel1:
80
+ :p1: 11
81
+ :pv1: 0
82
+
83
+ cons:
84
+ :a_new_con:
85
+ :mapping:
86
+ - :inst_a: :ifc01
87
+ - :inst_c: :myifc
88
+ :a_2nd_con:
89
+ :mapping:
90
+ - :inst_b: :ifc01
91
+ - :test_soc: :top_ifc
92
+
93
+ :io_con:
94
+ :mapping:
95
+ - :inst_io: :ifc01
96
+ - :test_soc: :top_ifc2
97
+
98
+
99
+
100
+ # :top_con:
101
+ # :mapping:
102
+ # - :test_soc: :top_ifc1
103
+ # - :inst_d: :myifc
104
+ hdlfiles: {}
105
+ toplevel: test_soc
@@ -0,0 +1,60 @@
1
+ SOCM_SOC
2
+ name: Test SOC Top
3
+ description: 'This is a test SOC'
4
+ id: test_soc_top,v1
5
+ date: '16. Aug 2014'
6
+ license: 'GPL'
7
+ licensefile: ''
8
+ author: 'feddischson'
9
+ authormail: 'feddischson [ at ] opencores.org'
10
+ vccmd: ''
11
+ interfaces:
12
+ :top_ifc: SOCM_IFC
13
+ name: core_AB_ifc
14
+ dir: 0
15
+ id: core_AB_ifc,1
16
+ ports:
17
+ :sig_con1a: SOCM_PORT
18
+ spc_ref: sig_a
19
+ len: 8
20
+ :sig_con1b: SOCM_PORT
21
+ spc_ref: sig_b
22
+ len: 16
23
+ :sig_con1c: SOCM_PORT
24
+ spc_ref: sig_c
25
+ len: 1
26
+
27
+ functions: {}
28
+ inst_parameters: {}
29
+ static_parameters: {}
30
+ cores:
31
+ :inst_t1: SOCM_INST
32
+ type: test_soc,v1
33
+ :inst_t2: SOCM_INST
34
+ type: test_soc,v1
35
+ :inst_t3: SOCM_INST
36
+ type: core_B,rel1
37
+ params: {}
38
+
39
+ static: {}
40
+
41
+ cons:
42
+ :t_con:
43
+ :mapping:
44
+ - :inst_t2: :top_ifc
45
+ - :test_soc_top: :top_ifc
46
+ :i_con:
47
+ :mapping:
48
+ - :inst_t1: :top_ifc
49
+ - :inst_t3: :myifc
50
+
51
+
52
+
53
+
54
+ # :top_con:
55
+ # :mapping:
56
+ # - :test_soc: :top_ifc
57
+ # - :inst_d: :myifc
58
+ hdlfiles: {}
59
+ toplevel: test_soc_top
60
+
@@ -0,0 +1,75 @@
1
+ SOCM_CORE
2
+ name: Core A
3
+ description: A test IP-core, which has no functionallity
4
+ id: core_A,rel1
5
+ date: 1.1.2014
6
+ license: LGPL
7
+ licensefile:
8
+ author: Christian Hättich
9
+ authormail: feddischson@opencores.org
10
+ repocmd:
11
+ toplevel: core_a
12
+ interfaces:
13
+ :ifc01: SOCM_IFC
14
+ name: core_AB_ifc
15
+ dir: 0
16
+ id: core_AB_ifc,1
17
+ ports:
18
+ :sig_con1a: SOCM_PORT
19
+ spc_ref: sig_a
20
+ len: param1
21
+ :sig_con1b: SOCM_PORT
22
+ spc_ref: sig_b
23
+ len: param2
24
+ :sig_con1c: SOCM_PORT
25
+ spc_ref: sig_c
26
+ len: 1
27
+ :ifc02: SOCM_IFC
28
+ name: core_AB_ifc
29
+ dir: 1
30
+ id: core_AB_ifc,1
31
+ ports:
32
+ :sig_con1ax: SOCM_PORT
33
+ spc_ref: sig_a
34
+ len: param1
35
+ :sig_con1bx: SOCM_PORT
36
+ spc_ref: sig_b
37
+ len: param2
38
+ :sig_con1cx: SOCM_PORT
39
+ spc_ref: sig_c
40
+ len: 1
41
+
42
+
43
+ hdlfiles:
44
+ :core_a.vhd: SOCM_HDL_FILE
45
+ use_syn: true
46
+ use_sys_sim: true
47
+ use_mod_sim: true
48
+ type: vhdl
49
+ path: ./core_a.vhd
50
+
51
+ inst_parameters:
52
+ :param1: SOCM_PARAM
53
+ type: integer
54
+ default: 8
55
+ min: 0
56
+ max: 10
57
+ visible: true
58
+ editable: true
59
+ description: More setup
60
+ :param2: SOCM_PARAM
61
+ type: integer
62
+ default: 0
63
+ min: 0
64
+ max: 4
65
+ visible: true
66
+ editable: true
67
+ description: More setup
68
+ :param3: SOCM_PARAM
69
+ type: integer
70
+ default: 0
71
+ min: 0
72
+ max: 4
73
+ visible: true
74
+ editable: true
75
+ description: More setup