Block Diagram for Chisel VTA

Since Chisel based VTA has brought more details in the implementation, I think it might be necessary to have a overview of the design, so that it could be easier to dive into the the optimization and debugging.

Here is a draft of the block diagram of current implementation in Chisel VTA.

Here is another diagram describing “VTA Datapath” in the pipelined design. It’s generated from a Yosys JSON format file here, and can be improved interactively here.

Please bring your ideas in improving this, to make people easier to understand the design of VTA.

1 Like

Thanks @liangfu for starting this discussion. Are you mainly looking for an automatically generated block diagram of the design, or would you rather want to have a human-drawn block-diagram of the design that can be used as reference documentation?

I think firrtl-diagrammer should be an excellent choice to automatically generate detailed diagram of the design, but it isn’t straight forward to see stages in the pipeline and Bundles in the interconnections. Overwhelming wires in the diagram would make it less easier to understand. Therefore, I think what i’m looking for is a human-drawn block diagram that can be used as a reference documentation.