rggen-systemverilog 0.33.1 → 0.35.0
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.
- checksums.yaml +4 -4
- data/LICENSE +1 -1
- data/README.md +2 -2
- data/lib/rggen/systemverilog/common/feature.rb +20 -13
- data/lib/rggen/systemverilog/common/utility/data_object.rb +1 -1
- data/lib/rggen/systemverilog/common/utility/structure_definition.rb +2 -2
- data/lib/rggen/systemverilog/common/utility.rb +2 -2
- data/lib/rggen/systemverilog/ral/bit_field/type.rb +18 -10
- data/lib/rggen/systemverilog/ral/feature.rb +4 -6
- data/lib/rggen/systemverilog/ral/register/type.rb +3 -3
- data/lib/rggen/systemverilog/ral/register_block/sv_ral_model.rb +1 -1
- data/lib/rggen/systemverilog/ral/register_common.rb +1 -1
- data/lib/rggen/systemverilog/ral/register_file/sv_ral_model.rb +4 -4
- data/lib/rggen/systemverilog/ral.rb +5 -0
- data/lib/rggen/systemverilog/register_map/keyword_checker.rb +62 -0
- data/lib/rggen/systemverilog/register_map/name.rb +9 -0
- data/lib/rggen/systemverilog/rtl/bit_field/sv_rtl_top.rb +15 -23
- data/lib/rggen/systemverilog/rtl/bit_field/type/custom.rb +8 -16
- data/lib/rggen/systemverilog/rtl/bit_field/type/rc_w0c_w1c_wc_woc.rb +3 -6
- data/lib/rggen/systemverilog/rtl/bit_field/type/ro_rotrg.rb +2 -4
- data/lib/rggen/systemverilog/rtl/bit_field/type/rohw.rb +3 -6
- data/lib/rggen/systemverilog/rtl/bit_field/type/row0trg_row1trg.rb +2 -4
- data/lib/rggen/systemverilog/rtl/bit_field/type/rowo_rowotrg.rb +4 -8
- data/lib/rggen/systemverilog/rtl/bit_field/type/rs_w0s_w1s_ws_wos.rb +2 -4
- data/lib/rggen/systemverilog/rtl/bit_field/type/rw_rwtrg_w1.rb +3 -6
- data/lib/rggen/systemverilog/rtl/bit_field/type/rwc.rb +2 -4
- data/lib/rggen/systemverilog/rtl/bit_field/type/rwe_rwl.rb +2 -4
- data/lib/rggen/systemverilog/rtl/bit_field/type/rwhw.rb +3 -6
- data/lib/rggen/systemverilog/rtl/bit_field/type/rws.rb +2 -4
- data/lib/rggen/systemverilog/rtl/bit_field/type/w0crs_w0src_w1crs_w1src_wcrs_wsrc.rb +1 -2
- data/lib/rggen/systemverilog/rtl/bit_field/type/w0t_w1t.rb +1 -2
- data/lib/rggen/systemverilog/rtl/bit_field/type/w0trg_w1trg.rb +1 -2
- data/lib/rggen/systemverilog/rtl/bit_field/type/wo_wo1_wotrg.rb +2 -4
- data/lib/rggen/systemverilog/rtl/bit_field/type/wrc_wrs.rb +1 -2
- data/lib/rggen/systemverilog/rtl/bit_field/type.rb +2 -6
- data/lib/rggen/systemverilog/rtl/bit_field_index.rb +18 -9
- data/lib/rggen/systemverilog/rtl/feature.rb +11 -15
- data/lib/rggen/systemverilog/rtl/register/type/external.rb +1 -1
- data/lib/rggen/systemverilog/rtl/register_block/protocol/apb.rb +11 -5
- data/lib/rggen/systemverilog/rtl/register_block/protocol/avalon.erb +17 -0
- data/lib/rggen/systemverilog/rtl/register_block/protocol/avalon.rb +37 -0
- data/lib/rggen/systemverilog/rtl/register_block/protocol/axi4lite.rb +6 -3
- data/lib/rggen/systemverilog/rtl/register_block/protocol/native.erb +19 -0
- data/lib/rggen/systemverilog/rtl/register_block/protocol/native.rb +19 -0
- data/lib/rggen/systemverilog/rtl/register_block/protocol/wishbone.rb +7 -4
- data/lib/rggen/systemverilog/rtl/register_block/protocol.rb +45 -26
- data/lib/rggen/systemverilog/rtl/register_block/sv_rtl_top.rb +1 -1
- data/lib/rggen/systemverilog/rtl/register_index.rb +8 -8
- data/lib/rggen/systemverilog/rtl/register_type.rb +1 -1
- data/lib/rggen/systemverilog/rtl.rb +7 -1
- data/lib/rggen/systemverilog/rtl_package/feature.rb +3 -3
- data/lib/rggen/systemverilog/rtl_package/register/sv_rtl_package.rb +2 -2
- data/lib/rggen/systemverilog/version.rb +1 -1
- metadata +11 -9
- data/lib/rggen/systemverilog/rtl/global/array_port_format.rb +0 -21
@@ -1,6 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require_relative 'common'
|
4
|
+
require_relative 'register_map/keyword_checker'
|
4
5
|
require_relative 'rtl/feature'
|
5
6
|
require_relative 'rtl/partial_sum'
|
6
7
|
require_relative 'rtl/register_index'
|
@@ -20,12 +21,13 @@ RgGen.setup_plugin :'rggen-sv-rtl' do |plugin|
|
|
20
21
|
end
|
21
22
|
|
22
23
|
plugin.files [
|
23
|
-
'rtl/global/array_port_format',
|
24
24
|
'rtl/register_block/sv_rtl_top',
|
25
25
|
'rtl/register_block/protocol',
|
26
26
|
'rtl/register_block/protocol/apb',
|
27
27
|
'rtl/register_block/protocol/axi4lite',
|
28
|
+
'rtl/register_block/protocol/avalon',
|
28
29
|
'rtl/register_block/protocol/wishbone',
|
30
|
+
'rtl/register_block/protocol/native',
|
29
31
|
'rtl/register_file/sv_rtl_top',
|
30
32
|
'rtl/register/sv_rtl_top',
|
31
33
|
'rtl/register/type',
|
@@ -66,4 +68,8 @@ RgGen.setup_plugin :'rggen-sv-rtl' do |plugin|
|
|
66
68
|
'rtl_package/register/sv_rtl_package',
|
67
69
|
'rtl_package/register_block/sv_rtl_package'
|
68
70
|
]
|
71
|
+
|
72
|
+
plugin.files [
|
73
|
+
'register_map/name'
|
74
|
+
]
|
69
75
|
end
|
@@ -10,14 +10,14 @@ module RgGen
|
|
10
10
|
component.full_name(separator)
|
11
11
|
end
|
12
12
|
|
13
|
-
def create_parameter(parameter_type, attributes, &
|
13
|
+
def create_parameter(parameter_type, attributes, &)
|
14
14
|
attributes =
|
15
15
|
attributes.merge(
|
16
|
-
parameter_type
|
16
|
+
parameter_type:, array_format: :unpacked,
|
17
17
|
name: attributes[:name].upcase
|
18
18
|
)
|
19
19
|
DataObject.new(
|
20
|
-
:parameter, attributes, &
|
20
|
+
:parameter, attributes, &
|
21
21
|
)
|
22
22
|
end
|
23
23
|
|
@@ -41,7 +41,7 @@ RgGen.define_simple_feature(:register, :sv_rtl_package) do
|
|
41
41
|
value_list = group_address_list(address_list, size_list).first
|
42
42
|
localparam :__offset, {
|
43
43
|
name: "#{full_name}_byte_offset",
|
44
|
-
data_type: :bit, width
|
44
|
+
data_type: :bit, width:, array_size: size_list, default: value_list
|
45
45
|
}
|
46
46
|
end
|
47
47
|
|
@@ -68,7 +68,7 @@ RgGen.define_simple_feature(:register, :sv_rtl_package) do
|
|
68
68
|
value = address_list.first
|
69
69
|
localparam :__offset, {
|
70
70
|
name: "#{full_name}_byte_offset",
|
71
|
-
data_type: :bit, width
|
71
|
+
data_type: :bit, width:, default: value
|
72
72
|
}
|
73
73
|
end
|
74
74
|
|
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rggen-systemverilog
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.35.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Taichi Ishitani
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 2025-02-19 00:00:00.000000000 Z
|
12
11
|
dependencies: []
|
13
12
|
description: 'SystemVerilog RTL and UVM RAL model generators for RgGen.
|
14
13
|
|
@@ -60,6 +59,8 @@ files:
|
|
60
59
|
- lib/rggen/systemverilog/ral/register_common.rb
|
61
60
|
- lib/rggen/systemverilog/ral/register_file/sv_ral_model.erb
|
62
61
|
- lib/rggen/systemverilog/ral/register_file/sv_ral_model.rb
|
62
|
+
- lib/rggen/systemverilog/register_map/keyword_checker.rb
|
63
|
+
- lib/rggen/systemverilog/register_map/name.rb
|
63
64
|
- lib/rggen/systemverilog/rtl.rb
|
64
65
|
- lib/rggen/systemverilog/rtl/bit_field/sv_rtl_top.rb
|
65
66
|
- lib/rggen/systemverilog/rtl/bit_field/type.rb
|
@@ -101,7 +102,6 @@ files:
|
|
101
102
|
- lib/rggen/systemverilog/rtl/bit_field/type/wrc_wrs.rb
|
102
103
|
- lib/rggen/systemverilog/rtl/bit_field_index.rb
|
103
104
|
- lib/rggen/systemverilog/rtl/feature.rb
|
104
|
-
- lib/rggen/systemverilog/rtl/global/array_port_format.rb
|
105
105
|
- lib/rggen/systemverilog/rtl/indirect_index.rb
|
106
106
|
- lib/rggen/systemverilog/rtl/partial_sum.rb
|
107
107
|
- lib/rggen/systemverilog/rtl/register/sv_rtl_top.rb
|
@@ -116,8 +116,12 @@ files:
|
|
116
116
|
- lib/rggen/systemverilog/rtl/register_block/protocol.rb
|
117
117
|
- lib/rggen/systemverilog/rtl/register_block/protocol/apb.erb
|
118
118
|
- lib/rggen/systemverilog/rtl/register_block/protocol/apb.rb
|
119
|
+
- lib/rggen/systemverilog/rtl/register_block/protocol/avalon.erb
|
120
|
+
- lib/rggen/systemverilog/rtl/register_block/protocol/avalon.rb
|
119
121
|
- lib/rggen/systemverilog/rtl/register_block/protocol/axi4lite.erb
|
120
122
|
- lib/rggen/systemverilog/rtl/register_block/protocol/axi4lite.rb
|
123
|
+
- lib/rggen/systemverilog/rtl/register_block/protocol/native.erb
|
124
|
+
- lib/rggen/systemverilog/rtl/register_block/protocol/native.rb
|
121
125
|
- lib/rggen/systemverilog/rtl/register_block/protocol/wishbone.erb
|
122
126
|
- lib/rggen/systemverilog/rtl/register_block/protocol/wishbone.rb
|
123
127
|
- lib/rggen/systemverilog/rtl/register_block/sv_rtl_macros.erb
|
@@ -139,7 +143,6 @@ metadata:
|
|
139
143
|
rubygems_mfa_required: 'true'
|
140
144
|
source_code_uri: https://github.com/rggen/rggen-systemverilog
|
141
145
|
wiki_uri: https://github.com/rggen/rggen/wiki
|
142
|
-
post_install_message:
|
143
146
|
rdoc_options: []
|
144
147
|
require_paths:
|
145
148
|
- lib
|
@@ -147,15 +150,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
147
150
|
requirements:
|
148
151
|
- - ">="
|
149
152
|
- !ruby/object:Gem::Version
|
150
|
-
version: '3.
|
153
|
+
version: '3.1'
|
151
154
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
152
155
|
requirements:
|
153
156
|
- - ">="
|
154
157
|
- !ruby/object:Gem::Version
|
155
158
|
version: '0'
|
156
159
|
requirements: []
|
157
|
-
rubygems_version: 3.
|
158
|
-
signing_key:
|
160
|
+
rubygems_version: 3.6.2
|
159
161
|
specification_version: 4
|
160
|
-
summary: rggen-systemverilog-0.
|
162
|
+
summary: rggen-systemverilog-0.35.0
|
161
163
|
test_files: []
|
@@ -1,21 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
RgGen.define_simple_feature(:global, :array_port_format) do
|
4
|
-
configuration do
|
5
|
-
property :array_port_format, default: :packed
|
6
|
-
|
7
|
-
input_pattern /(packed|unpacked|serialized)/i
|
8
|
-
ignore_empty_value false
|
9
|
-
|
10
|
-
build do |value|
|
11
|
-
@array_port_format =
|
12
|
-
if pattern_matched?
|
13
|
-
match_data[1].downcase.to_sym
|
14
|
-
else
|
15
|
-
error "illegal input value for array port format: #{value.inspect}"
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
printable :array_port_format
|
20
|
-
end
|
21
|
-
end
|