We show how an extended Prolog can be exploited to implement different electronic CAD tools. Starting with a computer hardware description language (CHDL) several problems like digital circuit analysis, simulation, test generation, and code generation for programmable microprocessors are discussed. For that purpose the MIMOLA (machine independent microprogramming language) system MSS (MIMOLA hardware design system) is presented. It is shown that logic programming techniques have several advantages especially in the area of integrated circuit design. One of the main advantages is the small code size, which translates to easy maintenance. We make extensive use of two main features of standard Prolog and constraint logic programming, i.e., backtracking and the coroutining mechanism, to express Boolean constraints.
Read full abstract