CIRCAL-2: General-purpose on-line circuit design

CIRCAL-2 is a second-generation general-purpose on-line circuit-design program with the following main features: 1) multiple-analysis capability; 2) uniform and general data structures for handling text editing, network representations, and output results, regardless of analysis; 3) special techniques and structures for minimizing and controlling user-program interaction; 4) use of functionals for the description of hysteresis and heat effects; and 5) ability to define optimization procedures that "replace" the user. The paper discusses the organization of CIRCAL-2, the aforementioned main features, and their consequences, such as a set of network elements and models general enough for most analyses and a set of functions tailored to circuit-design requirements. The presentation is descriptive, concentrating on conceptual rather than on program implementation details.