A multiple-pass synthesis technique improves the performance of a design. In a specific embodiment, synthesis is performed in two or more passes. In a
first pass, a first synthesis is performed, and in a second or subsequent pass, a second synthesis or resynthesis is performed. During the first synthesis, the logic will be mapped to for example, the logic structures (e.g., logic elements, LUTs, synthesis gates) of the target technology such as a
programmable logic device. Alternatively a
netlist may be provided from a
third party. Before the second synthesis, a fast or abbreviated fit may be performed of the
netlist to a specific device (e.g., specific
programmable logic device product). Before the second synthesis, the
netlist obtained from the first synthesis (or provided by a
third party) is unmapped and then the second synthesis is performed. Since a partial fit is performed, the second synthesis has more
visibility and optimize the logic better than by using a single synthesis pass. After the second synthesis pass, a more detailed fit is performed.