A method for resynthesizing a design of an integrated circuit using a
parallel processing mode. A single processing mode is entered by
activating a main thread and locking a semaphore associated with the main
thread. The design of the integrated circuit is resynthesized using the
main thread. Tasks to be accomplished in the parallel processing mode are
identified. The semaphore associated with the main thread is unlocked, and
the operation of the single processing mode is ceased. Ordinal threads are
activated by unlocking a semaphore associated with each ordinal thread.
The tasks are processed in parallel by assigning the tasks to the ordinal
threads and the main thread. Upon completion of one of the assigned tasks
by one of the ordinal threads, it is determined whether an additional task
remains to be assigned. In the case where the additional task remains, the
additional task is assigned to the completed one of the ordinal threads.
In the case where the additional task does not remain, the completed one
of the ordinal threads is inactivated. Upon inactivation of all of the
ordinal threads, a return is made to the single processing mode, with the
ordinal threads remaining inactive unless and until the main thread
identifies more tasks to be accomplished in the parallel processing mode.
Une méthode pour resynthesizing une conception d'un circuit intégré en utilisant un mode de traitement parallèle. Un mode de traitement simple est entré en activant un fil principal et en fermant une sémaphore liée au fil principal. La conception du circuit intégré est resynthesized en utilisant le fil principal. Charge d'être accompli en mode de traitement parallèle sont identifiés. La sémaphore s'est associée au fil principal est ouverte, et l'opération du mode de traitement simple est cessée. Des fils ordinaux sont activés en ouvrant une sémaphore liée à chaque fil ordinal. Charge sont traités en parallèle en assignant charge aux fils ordinaux et au fil principal. Sur l'accomplissement d'un de assigné charge par un des fils ordinaux, il est déterminé si un additionnel charge les restes à assigner. Dans le cas où les additionnels chargent les restes, les additionnels chargent sont assignés à réalisés des fils ordinaux. Dans le cas où les additionnels chargent ne reste pas, réalisé des fils ordinaux est inactivé. Sur l'inactivation de tous les fils ordinaux, un retour est fait au mode de traitement simple, avec l'inactif restant de fils ordinaux à moins qu'et jusqu'à ce que le fil principal identifie plus charge d'être accompli en mode de traitement parallèle.