rggen 0.21.1 → 0.24.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/LICENSE +1 -1
- data/README.md +21 -15
- data/lib/rggen.rb +0 -1
- data/lib/rggen/setup.rb +7 -0
- data/lib/rggen/version.rb +1 -1
- metadata +14 -15
- data/lib/rggen/default.rb +0 -7
- data/lib/rggen/default_setup_file.rb +0 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 047c661382bb6d82aad5f9b53f1585ef1d74ddec0c214db705ce89995206c40d
|
4
|
+
data.tar.gz: 33c9b71866b88141abbea7763e7b68fded4b1813619b5fc63cb6ffac9d0b9b71
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4570c9d46069b2456ca16e42a7537ab0b8cd2852f264e29159ee72e13e9e3af6945ce882bbfa7bcd5860d65b5df2c3c4ef883bf5d1ec6ec7c8c48a95e62dffe5
|
7
|
+
data.tar.gz: 6acb861778c064e8d133bb73ee195630727036f92150563d757568100e2e60756c75964a4a047375c79b0a30f5fb73851bead56281b379b823fbed53e91ae498
|
data/LICENSE
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
The MIT License (MIT)
|
2
2
|
|
3
|
-
Copyright (c) 2019-
|
3
|
+
Copyright (c) 2019-2021 Taichi Ishitani
|
4
4
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
data/README.md
CHANGED
@@ -5,22 +5,28 @@
|
|
5
5
|
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=rggen_rggen&metric=alert_status)](https://sonarcloud.io/dashboard?id=rggen_rggen)
|
6
6
|
[![Gitter](https://badges.gitter.im/rggen/rggen.svg)](https://gitter.im/rggen/rggen?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
|
7
7
|
|
8
|
+
[![ko-fi](https://www.ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/A0A231E3I)
|
9
|
+
|
8
10
|
# RgGen
|
9
11
|
|
10
|
-
RgGen is a code generation tool for ASIC/IP/FPGA/RTL engineers. It will automatically generate soruce code related to configuration and status registers (CSR), e.g. SytemVerilog RTL, UVM
|
12
|
+
RgGen is a code generation tool for ASIC/IP/FPGA/RTL engineers. It will automatically generate soruce code related to configuration and status registers (CSR), e.g. SytemVerilog RTL, UVM register model (UVM RAL), Wiki documents, from human readable register map specifications.
|
11
13
|
|
12
14
|
RgGen has following features:
|
13
15
|
|
14
16
|
* Generate source files related to CSR from register map specifications
|
15
17
|
* SystemVerilog RTL
|
16
|
-
*
|
18
|
+
* Verilog RTL
|
19
|
+
* Need [rggen-verilog](https://github.com/rggen/rggen-verilog) plugin
|
20
|
+
* UVM register model (UVM RAL)
|
17
21
|
* Register map documents written in Markdown
|
18
22
|
* Register map specifications can be written in human readable format
|
19
|
-
*
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
23
|
+
* Ruby with APIs to describe register map information
|
24
|
+
* YAML
|
25
|
+
* JSON
|
26
|
+
* TOML
|
27
|
+
* Spreadsheet (XLSX, XLS, OSD, CSV)
|
28
|
+
* [SiFive DUH](https://github.com/sifive/duh)
|
29
|
+
* Need [rggen-duh](https://github.com/rggen/rggen-duh) plugin
|
24
30
|
* Costomize RgGen for you environment
|
25
31
|
* E.g. add special bit field types
|
26
32
|
|
@@ -77,7 +83,7 @@ Following EDA tools can accept the generated source files.
|
|
77
83
|
* Cadence Xcelium
|
78
84
|
* Xilinx Vivado Simulator
|
79
85
|
* Confirmed RTL only
|
80
|
-
* Not sure if
|
86
|
+
* Not sure if UVM register models are accepted
|
81
87
|
* Verilator
|
82
88
|
* Need `-Wno-fatal` switch
|
83
89
|
* Synthesis tools
|
@@ -101,17 +107,15 @@ By using these example files, you can try to use RgGen. Hit command below:
|
|
101
107
|
$ rggen -c config.yml -o out block_0.yml block_1.yml
|
102
108
|
```
|
103
109
|
|
104
|
-
* `-c
|
105
|
-
|
106
|
-
* `-o`
|
107
|
-
* Specify path to the directory where generated files will be written to
|
110
|
+
* `-c`: Specify path to your configuration file
|
111
|
+
* `-o`: Specify path to the directory where generated files will be written to
|
108
112
|
|
109
113
|
Then, generated files listed below will be written to `out` directory.
|
110
114
|
|
111
115
|
* SystemVerilog RTL
|
112
116
|
* https://github.com/rggen/rggen-sample/blob/master/block_0.sv
|
113
117
|
* https://github.com/rggen/rggen-sample/blob/master/block_1.sv
|
114
|
-
* UVM
|
118
|
+
* UVM register model
|
115
119
|
* https://github.com/rggen/rggen-sample/blob/master/block_0_ral_pkg.sv
|
116
120
|
* https://github.com/rggen/rggen-sample/blob/master/block_1_ral_pkg.sv
|
117
121
|
* Markdown document
|
@@ -123,6 +127,7 @@ Then, generated files listed below will be written to `out` directory.
|
|
123
127
|
Feedbacks, bug reports, questions and etc. are wellcome! You can post them by using following ways:
|
124
128
|
|
125
129
|
* [GitHub Issue Tracker](https://github.com/rggen/rggen/issues)
|
130
|
+
* [GitHub Discussions](https://github.com/rggen/rggen/discussions)
|
126
131
|
* [Chat Room](https://gitter.im/rggen/rggen)
|
127
132
|
* [Mailing List](https://groups.google.com/d/forum/rggen)
|
128
133
|
* [Mail](mailto:rggen@googlegroups.com)
|
@@ -134,11 +139,12 @@ Feedbacks, bug reports, questions and etc. are wellcome! You can post them by us
|
|
134
139
|
* https://github.com/rggen/rggen-systemverilog
|
135
140
|
* https://github.com/rggen/rggen-markdown
|
136
141
|
* https://github.com/rggen/rggen-spreadsheet-loader
|
137
|
-
|
142
|
+
* https://github.com/rggen/rggen-duh
|
143
|
+
* https://github.com/rggen/rggen-verilog
|
138
144
|
|
139
145
|
## Copyright & License
|
140
146
|
|
141
|
-
Copyright © 2019-
|
147
|
+
Copyright © 2019-2021 Taichi Ishitani. RgGen is licensed under the [MIT License](https://opensource.org/licenses/MIT), see [LICENSE](LICENSE) for futher detils.
|
142
148
|
|
143
149
|
## Code of Conduct
|
144
150
|
|
data/lib/rggen.rb
CHANGED
data/lib/rggen/setup.rb
ADDED
data/lib/rggen/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rggen
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.24.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Taichi Ishitani
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-01-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rggen-core
|
@@ -16,70 +16,70 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.24.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.
|
26
|
+
version: 0.24.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rggen-default-register-map
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.
|
33
|
+
version: 0.24.0
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 0.
|
40
|
+
version: 0.24.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rggen-markdown
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.
|
47
|
+
version: 0.20.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.
|
54
|
+
version: 0.20.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rggen-spreadsheet-loader
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 0.
|
61
|
+
version: 0.19.0
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 0.
|
68
|
+
version: 0.19.0
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rggen-systemverilog
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 0.
|
75
|
+
version: 0.24.0
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 0.
|
82
|
+
version: 0.24.0
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: bundler
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -108,8 +108,7 @@ files:
|
|
108
108
|
- LICENSE
|
109
109
|
- README.md
|
110
110
|
- lib/rggen.rb
|
111
|
-
- lib/rggen/
|
112
|
-
- lib/rggen/default_setup_file.rb
|
111
|
+
- lib/rggen/setup.rb
|
113
112
|
- lib/rggen/version.rb
|
114
113
|
homepage: https://github.com/rggen/rggen
|
115
114
|
licenses:
|
@@ -134,7 +133,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
134
133
|
- !ruby/object:Gem::Version
|
135
134
|
version: '0'
|
136
135
|
requirements: []
|
137
|
-
rubygems_version: 3.
|
136
|
+
rubygems_version: 3.2.3
|
138
137
|
signing_key:
|
139
138
|
specification_version: 4
|
140
139
|
summary: Code generation tool for configuration and status registers
|
data/lib/rggen/default.rb
DELETED