PARCIS: a robust parallel VLSI circuit simulator
Introduction
As the integrated circuit fabrication technology advances, the complexity of VLSI circuits increases. The accurate verification of such circuits is essential for their successful and economic production but is an extremely time consuming procedure.
In the past, a number of simulators have been developed for this purpose. Logic simulators, with their fast responses, are valuable for debugging the higher levels of a design. Still, there are many cases where the information delivered by a circuit level – transient – simulator is indispensable. For example, only transient simulators can predict with accuracy the time domain responses of signals in: (a) critical paths within VLSIs required to meet today's demands for high clock rates, (b) fast bipolar chips used for the manufacture of high speed computers, and (c) modern mixed analog–digital circuits. However, simulation methods as used in SPICE [14]are limited in the size of circuits that can be simulated because of the large computation time they require.
To overcome the problem of computation time a series of improvements have been added to circuit simulators. It is recognized that the elements of practical circuits are not fully interconnected [9]and this led, in the past, to the development of Sparse Matrix Techniques 3, 7with superlinear time complexity and further into Block Diagonal Matrix Techniques [16]. Techniques for speeding up the convergence of the nonlinear circuit equations have been proposed [15]as well as techniques supporting a hierarchical approach to the analysis of the circuit 12, 13, 5, 2, 19.
Latency exploitation, e.g. the exploitation of temporal inactivity 11, 18, 12, 13, 25, 20, was another improvement. The stiffness [3]of the circuit differential equations has the effect that during intervals of the simulation time, certain parts of a large digital circuit (blocks) remain inactive and need not be recomputed for these time points, thus reducing the computation load on the CPU.
Exploitation of the particular characteristics of special circuits like MOS VLSI has led to further improvements on the computational time. The strong diagonal dominance [16]of the matrix equations of MOS circuits allows these simulators to employ faster equation solution methods 10, 6, 22, but at the cost of limiting either the accuracy of the results or the scope of the circuit categories to be validly simulated.
The only way to further speed up the simulation process without sacrificing the solution accuracy or the range of candidate circuits is either to use a faster algorithm or to use higher performance computers [17]. This paper describes a robust Parallel Circuit Simulator – PARCIS – designed for a message passing multiprocessing system. It uses a demand driven technique, based on the analysis of hierarchically partitioned circuits. This was made possible by developing a method that allows the decoupling of the circuit equations, without loosing accuracy, into hierarchically partitioned blocks and which method further allows the compression of block data. By distributing the computational load and by exploiting the temporal block inactivity (latency) it becomes feasible to get accurate circuit responses in reasonable time. It is noted that PARCIS is:
(a) a robust simulator, in the sense that it uses a direct solution method for the circuit equations so that its speed or accuracy are not hindered by the circuit category or the degree of coupling between sub-circuits, and
(b) a fully electrical simulator, because it can simulate all primitive electrical devices like inductors, capacitors, transistors etc.
The rest of the paper is organized as follows. Section 2is dedicated to the theoretical aspects of partitioning and computing the circuit equations. In Section 3, the structure of this simulator is explained briefly. In Section 4, implementation issues and performance results obtained by running various circuit examples in a transputer system, are presented. Section 5concludes the paper and outlines the future directions.
Section snippets
The PARCIS computation method
VLSI circuits and in general large digital systems consist of numerous modules interconnected to perform certain logic functions. In order to simulate a system the behavior of each module must be described at a convenient level of abstraction. In this work because of the detail required we concentrate on the lowest level behavior of the system, i.e. the electrical behavior. By treating the modules as electrical objects we try to efficiently compute the waveforms of the voltages v(t) of the
The PARCIS system
The proposed PARCIS computational model is designed for a multiprocessor system. The PARCIS abstract system comprises two types of Processing Elements (PEs). The master PE (named PE0) and a number of slave PEs (Fig. 2). Emphasis was put on to minimizing the communication delays between the processing elements PE0–PEn. The communication between PEs is asynchronous and the messages are tailored to be as short as possible. Each PE, with a slight modification for PE0 (master), executes the
Implementation and performance results
The PARCIS system has been currently implemented on a network of transputers, which consists of a front-end processor acting as a host and five T800 type transputers, mapping each PE to a separate transputer module. In this network only one transputer (master), on which PE0 is mapped, communicates directly with the host. In this implementation the transputer links are configured so as to form a linear chain (Fig. 2). This topology was selected due to the limited number of transputer units,
Conclusion and future work
We have presented the PARCIS system, a robust parallel circuit simulation algorithm, based on the analysis of hierarchically partitioned circuits. A circuit system is decomposed in simpler modules, which in turn are decomposed in simpler ones, constituting of a hierarchy of modules represented by a tree. The equations describing the circuit are decoupled and are distributed to the nodes of a multiprocessor system, reducing sufficiently the computation time.
The results obtained by the
References (24)
A class of methods for solving nonlinear simultaneous equations
Mathematics of Computation
(1965)- et al.
Multi-level simulation of large analog systems containing behavioral models
IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems
(1994) - L.O. Chua, P.M. Lin, Computer Aided Analysis of Electronic Circuits, Prentice-Hall, Englewood Cliffs, NJ,...
- C. Desoer, E. Kuh, Basic Circuit Theory, McGraw-Hill, New York,...
- et al.
MEDUSA – a simulator for modular circuits
IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems
(1982) - et al.
Robust VLSI circuit simulation techniques based on overlapped waveform relaxation
IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems
(1995) - et al.
The sparse tableau approach to network analysis and design
IEEE Trans. Circuit Theory
(1971) - et al.
The modified nodal approach to network analysis
IEEE Trans. Circuits and Systems
(1975) Network statistics for computer-aided network analysis
IEEE Trans. Circuit Theory
(1973)- et al.
The waveform relaxation method for time-domain analysis of large scale integrated circuits
IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems
(1982)
Cited by (0)
- 1
E-mail: [email protected]