Abstract: A design automation system allows entry of designs and converts the designs to register transfer level (RTL) hardware description language (HDL). Presenting the designer with a selection of flexible, customizable subsystems for inclusion in the design facilitates design entry, the subsystems being modified via menus, computerized forms or a graphic user interface (GUI) presented to the designer, or via text in the form of a high-level language. The menus, computerized forms, or high-level language text capture the specific parameters or properties for each instantiation of each subsystem, and the system automatically generates RTL HDL code for the design.