If you just want a viewer for the blocks and their relationships, you can try Graphviz. An example that you can find from another fooobar.com/questions/434217 / .... You can simply analyze the HDL design and build their relationship, and then write to text format in Graphviz syntax. Then call the program to create
If you want to implement an advanced viewer, for example, it can zoom in / out, pan, move to / from a block and choose what is another story.
source share