Add Verilog parsing and rendering support #26

Open
purpl3F0x wants to merge 1 commits from purpl3F0x/circuiteria:main into main
pull from: purpl3F0x/circuiteria:main
First-time contributor

Hi, the above changes add some support for parsing a Verilog file and autogenerating a circuit module. The lib also supports bundling AXI buses and indicating active low resets.

Testing is limited, happy to make changes if needed.

Example
{8CE34B23-70F4-4DFD-9883-ABAB63814DEF}.png

Hi, the above changes add some support for parsing a Verilog file and autogenerating a circuit module. The lib also supports bundling AXI buses and indicating active low resets. Testing is limited, happy to make changes if needed. Example <img width="353" alt="{8CE34B23-70F4-4DFD-9883-ABAB63814DEF}.png" src="attachments/23b8cbd9-9ef8-4a86-af11-3623cd547c2c">
purpl3F0x added 1 commit 2026-09-10 11:18:26 +00:00
- Introduced `verilog.typ` for parsing Verilog/SystemVerilog source code, supporting both ANSI and non-ANSI port styles.
- Implemented functions to analyze modules, infer AXI4, AXI4-Lite, and AXI4-Stream buses, as well as clock and reset signals.
- Added rendering capabilities for Verilog modules, allowing for visual representation of ports and buses.
- Created a new `gallery/verilog.typ` file to facilitate the drawing of Verilog blocks in diagrams.

Signed-off-by: Stavros Avramidis <stavros9899@gmail.com>
purpl3F0x force-pushed main from 55ea5cdef6 to 0c1272e35e 2026-09-10 11:18:26 +00:00 Compare
HEL added the enhancement label 2026-09-14 05:13:14 +00:00
Owner

This looks great, thank you for your contribution !
I'm not very familiar with Verilog but I will try to review this soon

This looks great, thank you for your contribution ! I'm not very familiar with Verilog but I will try to review this soon
You are not authorized to merge this pull request.
This pull request can be merged automatically.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u https://git.herdac.ch/purpl3F0x/circuiteria main:purpl3F0x-main
git checkout purpl3F0x-main
Sign in to join this conversation.