Status
0.6 has been released.
To do
- RAM support using array types
- operators with signed operands
- augmented operators
- enhanced
print
statement support - user-defined VHDL support
-
inout
handling - enhance
toVerilog
so that it can work with the new verification method also. In particular,print
statements should be handled properly. - write conversion verification test benches for some cookbook examples
- include date/tool info in conversion output
- review
if __debug__
functionality with new verification capabilities - encoding attributes to enumeration types
- use a package in a separate file for general VHDL output code
Open issues
Name clashes
-
Find a good solution to avoid name clashes. In the Verilog output, I relied on using
_
as a prefix, but because VHDL doesn't allow this, and I want a general solution, this needs to change. -
Find a good solution to avoid name clashes with Verilog and VHDL keywords.
Rom inference support
Currently, ROMs are inferred from case statements, as in Verilog. Users and synthesis tools may prefer arrays of integers. Feedback welcome.
User-defined VHDL code
It is straightforward to support the __toVHDL__
attribute for
user-defined VHDL, similar to the Verilog solution. This may not be sufficient
however, because VHDL requires instantiated components to be declared in the
code. We may have to add a way to add such user-defined declarations.