Table of Contents
VLSI Design
Volume 1, Issue 2, Pages 169-179

Distributed and Parallel Demand Driven Logic Simulation Algorithms

1ZYCAD Co., 1380 Willow Road, Menlo Park, California 94025, USA
2Computer Science Department, Southern Illinois University, Carbondale, Illinois 62901, USA

Received 12 June 1989; Revised 20 February 1990

Copyright © 1994 Hindawi Publishing Corporation. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.


Based on the demand-driven approach, distributed and parallel simulation algorithms are proposed. Demand-driven simulation ties to minimize the number of component evaluations by restricting to only those component computations required for the watched output requests. For a specific output value request, the input line values that are required are requested to the respective component. The process continues until known signal values are needed (system input signal values). We present a distributed demand-driven algorithm with infinite memory requirement (but still the memory required at each process is no greater than the sequential demand-driven simulation), and a parallel demand-driven simulation with finite memory requirement. In our algorithms, each component is assigned a logical process.

The algorithms have been implemented on the Sequent Balance 8000 Multi-processor machine. Several sample circuits were simulated. The algorithms were compared with the distributed discrete-event simulation. Our distributed algorithm performed many times faster than the discrete-event simulation for cases when few results were needed. Parallel algorithm performed 2 to 4 times faster than the distributed discrete-event simulation.