Taichi Ishitani Posted February 9, 2024 Report Posted February 9, 2024 Hi All, I'm developing an open source CSR generation tool named RgGen. https://github.com/rggen/rggen By using RgGen, you can generate UVM RAL models, RTL, C header files and wiki documents from readable register map specifications. This is a sample register map specification describing a CSR block for an UART IP. https://github.com/rggen/rggen-sample/blob/master/uart_csr.yml RgGen can generate source files listed below from this specification. UVM RAL model https://github.com/rggen/rggen-sample/blob/master/uart_csr_ral_pkg.sv RTL https://github.com/rggen/rggen-sample/blob/master/uart_csr.sv https://github.com/rggen/rggen-sample/blob/master/uart_csr.v https://github.com/rggen/rggen-sample/blob/master/uart_csr.vhd C header file https://github.com/rggen/rggen-sample/blob/master/uart_csr.h Wiki document https://github.com/rggen/rggen-sample/blob/master/uart_csr.md Quote
Bas Arts Posted February 9, 2024 Report Posted February 9, 2024 Hi Taichi, Did you consider to use the IP-XACT register specification format as input for your generator? Any specific reason to use yaml and your own (?) specification format? Just curious. -- Bas Taichi Ishitani 1 Quote
Taichi Ishitani Posted February 9, 2024 Author Report Posted February 9, 2024 Hi Bas, Quote Did you consider to use the IP-XACT register specification format as input for your generator? I'm planning to add IP-XACT support. But I have no experiences using IP-XACT so I'm looking into the specification now. Quote Any specific reason to use yaml and your own (?) specification format? I think XML is not readable nor maintainable format for human so I chose the formats below. Ruby with description API Structured text (YAML, JSON, TOML) Spreadsheet (XLSX, ODS, CSV) Regards, Taichi Ishitani Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.