1. A computer program product embodied on a non-transitory computer readable medium, comprising: code for receiving a graph-based common representation of a hardware design stored in a hardware model database, the graph-based common representation including a plurality of hardware module nodes; code for generating logic code for each hardware module node of the graph-based common representation of the hardware design; code for generating flow control code for each hardware module node of the graph-based common representation of the hardware design; and code for storing a logic code model of the hardware design that includes the generated logic code and the generated flow control code, wherein a first hardware module node is either a fanout node or a fanin node, wherein the fanout node corresponds to a multicast construct or a separate construct and the fanin node corresponds to a merge construct or a select construct, wherein the hardware design is used to manufacture an integrated circuit.