A knowledge-based design environment for digital electronics
Milton R. Grinberg · 1980
This dissertation describes research into an experimental interactive knowledge-based system whose domain of expertise is digital electronics. The system is named SADD for Semi-Automatic Digital Designer. The goals of the research are (1) to represent the working knowledge that humans have of digital electronics and (2) to utilize this knowledge in a useful design environment. This requires both a digital problem solver and an intelligent bookkeeping mechanism. In the SADD environment, design is a four phase process: Specification Acquisition, Implementation, Integration and Analysis. In each phase the user can play an integral role in the design (hence the term semi-automatic). In the Specification Acquisition phase, the user can describe the circuit in an English-like language. This usually entails identifying the digital components and their characteristics, defining connections between these components, and describing how and when signals propagate between the components. Each input sentence is mapped into a set of directives for manipulating the conceptual model of the circuit, maintained as a semantic net. The Implementation phase is used to select a strategy for refining a function into a chip-level implementation. The selection process is based on the characteristics of the function: both the explicit characteristics provided by the designer and the implicit characteristics inferentially determined by the function's context. SADD performs this implementation one function at a time, aided minimally by the user. The Integration phase maps the conceptual connections between the individually implemented functions into actual wires, the result being a constructable circuit schematic. The Analysis phase (which is described, but not implemented) allows for simulation of both the conceptual model in terms similar to those of the designer and the implemented model where timing information is crucial. This analysis can be performed on a partial or complete circuit. The SADD system uses a sophisticated TV display circuit known as the Screensplitter for its case study. The circuit is described in 41 sentences. Since SADD is designed as an intelligent bookkeeping system this description is intentionally incomplete to illustrate how SADD will detect and fill in missing concepts and connections that are necessary for a function to perform properly. Examples using the Screensplitter illustrate each of SADD's phases. The future plans for SADD are to expand its digital knowledge base, to provide a graphic display environment for the design process, and to implement the analysis package.