THDL++ FAQ

This page contains a list of frequently asked questions about THDL++ and VisualHDL:

Q: Is THDL++ another HDL language? Why is it better than VHDL?
A: Yes, it is a separate HDL language based on VHDL semantics and C++ syntax. It removes most of annoying restrictions of VHDL: allows designing really generic and abstract entities (abstract w.r.t. types, functions, operations and sub-entities) and uses a more compact C++-like syntax instead of ADA-like syntax in VHDL.

Q: VHDL already has generics. Why do I need THDL++ templates?
A: VHDL generics are simply constants. You can design a VHDL entity, that is generic with respect to a bus size, but you cannot make it generic w.r.t. functions, sub-entities, or data types.

Q: VHDL is supported by lots of tools worldwide. What tools will I need for THDL++?
A: VisualHDL comes with a THDL++ to VHDL compiler. Thus, you can simply compile your THDL++ code in VHDL and use any VHDL tools you like.

Q: Why THDL++ uses C++-like syntax?
A: C++-like syntax is more modern and compact, than VHDL one. You simply need less typing to accomplish the same goal.

Q: My text editor has syntax hilighting for VHDL. Will it also work for THDL++?
A: No, but you can use VisualHDL IDE, that supports code hilighting, code autocompletion, automatic port map generation, code navigation, design visualization and lots of other features.

Q: Are there any big designs or code samples in THDL++?
A: Yes, check out the OpenAVR project - a open-source AVR-compatible processor written in THDL++.

Still have questions about THDL++? Read THDL++ Tutorial or ask at SysProgs forum.