A method involves building an intermediate form data flow graph (IFgraph)
from an intermediate form data flow tree (IFtree) associated with the
logic design, partitioning the IFgraph across at least three levels of
granularity to obtain a partitioned IFgraph, wherein partitioning the
IFgraph involves balancing a set of nodes of the IFgraph into a first
subset and a second subset, wherein each of the first subset and second
subset are within a predefined constraint of the cycle-based system, and
wherein the balancing is performed on at least one of the levels of
granularity, and rewriting the IFtree based on the partitioned IFgraph.