4

I want to parse Verilog gate level code and store the data in a data structure (ex. graph).

Then I want to do something on the gates in C/C++ and output a corresponding Verilog file.

(I would like to build one program which input and output are Verilog gate level code)

(input.v => myProgram => output.v)

If there is any library or open source code to do so?

I found that it can be done by Flex and Bison but I have no idea how to use Flex and Bison.

4

3 回答 3

1

Yosys ( https://github.com/cliffordwolf/yosys ) 是一个用 C++ 编写的 Verilog Synthesis 框架。Yosys 仍在建设中,但如果您只想读写门级网表,它可以满足您的需求。

PS:参考手册(也包括 C++ API)正在编写中。我已经写了大约 100 页,但在完成我的 BSc 之前无法发布。论文(再过一个月左右)。

于 2013-05-18T12:18:15.843 回答
1

我已经成功地使用Verilog-Perl来解析 Verilog 代码。它维护良好:它甚至支持最近的 SystemVerilog 扩展。

于 2013-05-17T12:20:34.473 回答
1

几天前有一个关于在 ruby​​ 中执行此操作的类似问题,其中我指出了我的Verilog解析器 gem。不确定它是否足够强大,但会喜欢反馈、错误报告、功能请求。

那里有 perl verilog 解析器,但我没有直接使用它们中的任何一个并避免使用 perl,希望其他人可以添加有关其他解析器的信息。

于 2013-05-17T10:59:36.097 回答