Change log ========== v0.1.6 (Not Yet Released) ------------------------- * Graph Representation - Update class name `DFGNode` to `BNode`, to separate the class from the CDFG - Add test cases for syntax checking * Verilog I/O: - Add condition propagation for the if else statement - Add condition propagation for the case statement v0.1.4 (September 27, 2024) --------------------------- * Graph Representation - Remove `DOTGraph` class and `ExtendedGraph` class - Add `exportDOT` as a separate function (not a method of `BNGraph`) * Verilog I/O: - Add support for module instantiation in SystemVerilog - Add syntax checking for port type, directions, and ranges (as well as the test cases, see: `test/test_ports.py` and `test/test_ports_false.py`). - Update many classes to `dataclass` (e.g. `Port`, `Module`, `Netlist`, `Assignment`, `BNode`, `OPNode`, `OPType`, `BNGraph`) to make them immutable v0.1.2 (September 22, 2024) --------------------------- * Graph Representation - Change `modules` in Netlist to a dictionary - Change macros and timescale definitions into statements * Verilog I/O: - Update writter for `port` * Algorithms: - Add `__eq__` function to compare two netlists v0.1.0 (September 22, 2024) --------------------------- * Graph Representation - Add `BNode` class to represent nodes in a dataflow graph - Add `OPNode` class as a child class of `BNode` to represent operation nodes - Add `OPType` class to represent the type of operation nodes - Add `BNGraph` class * Verilog I/O: - Update the grammar for SystemVerilog - Remove the support for Verilog (many features, e.g. port directions, are not lost in it's grammar) * Algorithms: - Add `exportDOT` function to export a graph to a DOT file