Abstract

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.