rggen 0.30.0 → 0.30.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +47 -17
- data/lib/rggen/version.rb +1 -1
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 23fc211eb008d75b3c869be1fc95d02548564056ed5f3dc0b359ab0266e0cc97
|
4
|
+
data.tar.gz: b0262da966590b4295fc47bbf15c9d668ca63e38236d785c24243118f30ec032
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5391eab55f5febd7623179a5d92a5932685e8b073bac5e906328841ea405466748c9ea01f7425395794e27021edf0a4dba92797a2fddb173e05a7c0e507bba86
|
7
|
+
data.tar.gz: 4cea85dc440bf37f6752eb423b1f597648e896dcf2a702ee312e625b7009069a922ad46f3f73f2ddfb1a2f0efc9db5f0bd524c268dc1d547145b5cc4f595d0a9
|
data/README.md
CHANGED
@@ -82,6 +82,17 @@ ERROR: Error installing rggen:
|
|
82
82
|
To resolve the above error, there are three solutions.
|
83
83
|
See [this page](https://github.com/rggen/rggen/wiki/Resolve-Confliction-of-Installed-Executable)
|
84
84
|
|
85
|
+
### Docker Image
|
86
|
+
|
87
|
+
The [rggen-docker](https://hub.docker.com/r/rggendev/rggen-docker) is a Docker image to simplify installation and use of RgGen.
|
88
|
+
You can also execute RgGen by using this image:
|
89
|
+
|
90
|
+
```
|
91
|
+
$ docker run -ti --rm -v ${PWD}:/work --user $(id -u):$(id -g) rggendev/rggen-docker:latest -c config.yml -o out block_0.yml
|
92
|
+
```
|
93
|
+
|
94
|
+
See the [rggen-docker repository](https://github.com/rggen/rggen-docker) for further details.
|
95
|
+
|
85
96
|
## Usage
|
86
97
|
|
87
98
|
See [Wiki documents](https://github.com/rggen/rggen/wiki).
|
@@ -100,7 +111,7 @@ Following EDA tools can accept the generated source files.
|
|
100
111
|
* Cadence Xcelium
|
101
112
|
* Xilinx Vivado Simulator
|
102
113
|
* Verilator
|
103
|
-
* Need `-Wno-
|
114
|
+
* Need `-Wno-unoptflat` switch for Verilog RTL
|
104
115
|
* Icarus Verilog
|
105
116
|
* Verilog RTL only
|
106
117
|
* Synthesis tools
|
@@ -112,39 +123,57 @@ Following EDA tools can accept the generated source files.
|
|
112
123
|
|
113
124
|
## Example
|
114
125
|
|
115
|
-
You can get
|
126
|
+
You can get sample configuration file and register map specification from the [rggen-sample](https://github.com/rggen/rggen-sample) repository.
|
127
|
+
This register map specification is for a UART IP.
|
116
128
|
|
117
129
|
* Configuration file
|
118
130
|
* https://github.com/rggen/rggen-sample/blob/master/config.yml
|
119
|
-
* Register map
|
120
|
-
* https://github.com/rggen/rggen-sample/blob/master/
|
121
|
-
* https://github.com/rggen/rggen-sample/blob/master/block_1.yml
|
131
|
+
* Register map specification
|
132
|
+
* https://github.com/rggen/rggen-sample/blob/master/uart_csr.yml
|
122
133
|
|
123
134
|
You can try to use RgGen by uisng these example files. Hit command below:
|
124
135
|
|
125
136
|
```
|
126
|
-
$ rggen -c config.yml -o out
|
137
|
+
$ rggen -c config.yml -o out uart_csr.yml
|
127
138
|
```
|
128
139
|
|
129
140
|
* `-c`: Specify path to your configuration file
|
130
141
|
* `-o`: Specify path to the directory where generated files will be written to
|
131
142
|
|
132
|
-
Then, generated files
|
143
|
+
Then, generated files will be written to the `out` directory.
|
144
|
+
|
145
|
+
If you want to generate Verilog RTL and/or VHDL RTL then you need to instll optional plugins listed below.
|
146
|
+
|
147
|
+
* Verilog writer plugin: [rggen-verilog](https://github.com/rggen/rggen-verilog)
|
148
|
+
* VHDL writer plugin: [rggen-vhdl](https://github.com/rggen/rggen-vhdl)
|
149
|
+
|
150
|
+
```
|
151
|
+
$ gem install rggen-verilog
|
152
|
+
$ gem install rggen-vhdl
|
153
|
+
```
|
154
|
+
|
155
|
+
In addition, you need to tell RgGen to use these plugins by using the `--plugin` option switch:
|
156
|
+
|
157
|
+
```
|
158
|
+
rggen -c config.yml --plugin rggen-verilog --plugin rggen-vhdl uart_csr.yml
|
159
|
+
```
|
160
|
+
|
161
|
+
RgGen will generate following source files from the [`uart_csr.yml`](https://github.com/rggen/rggen-sample/blob/master/uart_csr.yml) register map specification:
|
133
162
|
|
134
163
|
* SystemVerilog RTL
|
135
|
-
* https://github.com/rggen/rggen-sample/blob/master/
|
136
|
-
* https://github.com/rggen/rggen-sample/blob/master/
|
137
|
-
|
138
|
-
* https://github.com/rggen/rggen-sample/blob/master/
|
164
|
+
* https://github.com/rggen/rggen-sample/blob/master/uart_csr.sv
|
165
|
+
* https://github.com/rggen/rggen-sample/blob/master/uart_csr_rtl_pkg.sv
|
166
|
+
* Verilog RTL
|
167
|
+
* https://github.com/rggen/rggen-sample/blob/master/uart_csr.v
|
168
|
+
* https://github.com/rggen/rggen-sample/blob/master/uart_csr.vh
|
169
|
+
* VHDL RTL
|
170
|
+
* https://github.com/rggen/rggen-sample/blob/master/uart_csr.vhd
|
139
171
|
* UVM register model
|
140
|
-
* https://github.com/rggen/rggen-sample/blob/master/
|
141
|
-
* https://github.com/rggen/rggen-sample/blob/master/block_1_ral_pkg.sv
|
172
|
+
* https://github.com/rggen/rggen-sample/blob/master/uart_csr_ral_pkg.sv
|
142
173
|
* C header file
|
143
|
-
* https://github.com/rggen/rggen-sample/blob/master/
|
144
|
-
* https://github.com/rggen/rggen-sample/blob/master/block_1.h
|
174
|
+
* https://github.com/rggen/rggen-sample/blob/master/uart_csr.h
|
145
175
|
* Markdown document
|
146
|
-
* https://github.com/rggen/rggen-sample/blob/master/
|
147
|
-
* https://github.com/rggen/rggen-sample/blob/master/block_1.md
|
176
|
+
* https://github.com/rggen/rggen-sample/blob/master/uart_csr.md
|
148
177
|
|
149
178
|
## Contributing
|
150
179
|
|
@@ -171,6 +200,7 @@ Feedbacks, bug reports, questions and etc. are wellcome! You can post them by us
|
|
171
200
|
* https://github.com/rggen/rggen-duh
|
172
201
|
* https://github.com/rggen/rggen-verilog
|
173
202
|
* https://github.com/rggen/rggen-vhdl
|
203
|
+
* https://github.com/rggen/rggen-docker
|
174
204
|
|
175
205
|
## Copyright & License
|
176
206
|
|
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.30.
|
4
|
+
version: 0.30.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Taichi Ishitani
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-08-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rggen-c-header
|
@@ -86,14 +86,14 @@ dependencies:
|
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 0.30.
|
89
|
+
version: 0.30.2
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 0.30.
|
96
|
+
version: 0.30.2
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: bundler
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -150,7 +150,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
150
150
|
- !ruby/object:Gem::Version
|
151
151
|
version: '0'
|
152
152
|
requirements: []
|
153
|
-
rubygems_version: 3.4.
|
153
|
+
rubygems_version: 3.4.17
|
154
154
|
signing_key:
|
155
155
|
specification_version: 4
|
156
156
|
summary: Code generation tool for configuration and status registers
|