1. A method of verifying a non-cycle based design containing at least combinatorial logic loop, wherein said combinatorial logic loop is to be evaluated until a condition is attained, said method comprising: (a) partitioning said non-cycle based design into a plurality of clusters, wherein each of said plurality of clusters contains a plurality of combinatorial blocks capable of being evaluated in parallel by a plurality of evaluation units in response to receiving a cluster number uniquely identifying a corresponding cluster; (b) setting a register to reflect an initial condition associated with said combinatorial logic loop; (c) storing data indicating the manner in which said register is to be modified upon evaluation of a combinatorial block contained in said combinatorial logic loop; (d) storing a plurality of flow control instructions indicating the sequence in which said plurality of clusters are to be evaluated depending on the status of said register, wherein at least one of said flow control instructions specifies when the evaluation of clusters representing said combinatorial logic loop is to end; (e) sending each of a sequence of cluster numbers to said plurality of evaluation units to cause the combinatorial blocks in a corresponding cluster to be evaluated; (f) modifying said register according to said data stored in (c); (g) continuing (e) and (f) until the evaluation of said combinatorial logic loop ends, whereby said non-cycle based design can be verified based on the evaluation of said combinatorial logic loop.