我想创建一个程序来解析Verilog并显示一个框图。有人可以帮助我了解我需要研究的算法吗?我发现了一个很好的Verilog解析器,但现在我需要找到每个块之间的关系并相应地放置它们。它不必进行广泛优化。
更新:
现在我正在使用ironPython在Visio中绘制框图。
答案 0 :(得分:4)
Yosys是一个开源的verilog综合工具。它还可用于分析设计和创建原理图(使用GraphViz)。请参阅网页上的屏幕截图:
如果我理解你的要求,Yosys已经做了你想要的。如果您仍想编写自己的程序,可以使用Yosys作为参考来帮助您入门。
(利益冲突披露:我是Yosys的作者。)
答案 1 :(得分:1)
您也可以尝试使用Altera合成,EASE,HDL设计器,Synplify HDL Analyst,nSchema或Xilinx PlanAhead。
答案 2 :(得分:0)
如果您只想要一个查看器以及他们的关系,您可以尝试使用Graphviz。您可以从另一个StackOverflow thread找到一个示例。您可以简单地解析HDL设计并构建它们的关系,然后以Graphviz语法写出文本格式。然后调用程序生成
例如,如果你想实现一个高级查看器,它可以放大/缩小,平移,跳入/跳出块和选择,这是另一个故事。