Open mithro opened 5 years ago
Thanks for the hint and your interest in this project. SDF support and possible implementations are on my todo list. I think it's the same situation as with the Verilog parsers; an IDE has to offer broader support for a language than a simulation or tranformation tool with a narrower focus. The readme of the referenced library states "The parser supports a small subset of the SDF format which suffices to load basic delay information." which is most likely not enough for an IDE. Parsing SDF is much easier than parsing Verilog and I will probably re-use my parser generator infrastructure which I currently use to implement a Lola-2 (see https://people.inf.ethz.ch/wirth/Lola/index.html) to RTLIL transpiler.
I added SDF support to VerilogCreator. See https://github.com/rochus-keller/VerilogCreator/releases/tag/v0.8.0. For this purpose I implemented an SDF parser with full standard support, see https://github.com/rochus-keller/Sdf. In VerilogCreator currently only syntax highlighting is supported. It would probably be useful to somehow be able to navigate from the SDF idents to the corresponding Verilog definitions, but I'm not sure yet about the details. Looking for suggestions, feel free to comment.
As I mentioned in https://github.com/SymbiFlow/ideas/issues/17 there is a C++ library for parsing SDF files at https://github.com/kmurray/libsdfparse
This library comes from by Verilog to Routing project.
It might make sense to support SDF files in VerilogCreator.