A knowledge-based approach is suggested to assist a designer in the increasingly complex task of generating VLSI-chips from abstract, high-level specifications of the system. The complexity of designing VLSI-circuits has reached a level where computer-based assistance has become indispensable. Not all of the design tasks allow for algorithmic solutions. AI techniques can be used, in order to support the designer with computer-aided tools for tasks not suited for algorithmic approaches. The approach described in this paper is based upon the underlying characteristics of VLSI design processes in general, comprising all stages of the design. A universal model is presented, accompanied with a recording method for the acquisition of design knowledge -strategic and task-specific -in terms of the design actions involved and their effects on the design itself. This method is illustrated by a simple design example: the implementation of the logical EXOR-component. Finally suggestions are made for obtaining a universally usable architecture of a knowledge-based system for VLSI-design.
Characteristics of VLSI-designGiven a high-level, formal specification of the system, the designer of a VLSI-circuit is confronted with the problem of generating a description of the circuit that can be physically realized. Since this can not be done in a single design step, a stepwise refinement of the original description is carded out. For each design step the designer must choose among a set of alternative design actions suited for the situation. After each refinement verification of the results is needed and often some sort of optimization is performed. Depending on whether the results meet the necessary requirements, the designer will continue by selecting the next action or else he will have to reconsider the choices made. This cycle is repeated over and over, leading to a gradual refinement of the design.There are several constraints acting on the design process. On the one hand the technological and physical conditions constrain the possible design actions, as a consequence of the technology available and the characteristics of the silicon respectively. Secondly, there are a number of technical specifications that have to be met, like for example the maximum size of the final chip. The technological and physical implications are primarily bottom-up, whereas the techieal specifications work more top-down through the design process. So in effect, of only one the exact nature is known until they meet somewhere in the middle.In other words: the design process can be characterised as a complex search-process -through the intermediate design descriptions that are generated -under a number of constraints. The search is not for a single best solution, but for an acceptable compromise from a range of solutions that satisfy the requirements up to a certain degree. The complexity of this process is due to (among other things):a very large search-space, caused by the long trajectory from high-level system specification to low-level phys...