VLSI Prolog Processor, Design and Methodology
A Case Study in the High Level Language Processor Design
North-Holland (Publisher)
Published on 7. April 1994
Book
Hardback
264 pages
978-0-444-89976-7 (ISBN)
Description
In the last decade, Artificial Intelligence (AI) processing has received increasing attention, involving a wide spectrum of scientific and technological areas. Two main high-level languages have emerged as the most broadly used for AI applications: Prolog among the logic languages and Lisp among the functional languages. Both have created a demand for research on dedicated architectures able to support high performance non-numerical processing. VLSI microelectronics technology has played, and continues to play, a vital role in the developments, since it offers the possibility of concentrating a tremendous computation capability in compact, low cost, fast devices. This book describes the design of a VLSI Prolog processor, starting from the language execution model down to the abstract machine and the physical implementation. Each design stage is analyzed by performing quantitative evaluations of the influence of the architectural choices on the overall performance. Moreover, the state of the art on Prolog machines is described as reference for the adopted solutions. Special care has been taken in the description of the execution model, derived from the Warren Abstract Machine, and in the analysis of the design methodology developed for this application. If silicon compilation techniques are used, the design methodology becomes a general method for the synthesis of High Level Language processors. In this environment all the problems related to the VLSI implementation are analyzed and discussed in terms of costs and performance.
In the last decade, Artificial Intelligence (AI) processing has received increasing attention, involving a wide spectrum of scientific and technological areas. Two main high-level languages have emerged as the most broadly used for AI applications: Prolog among the logic languages and Lisp among the functional languages. Both have created a demand for research on dedicated architectures able to support high performance non-numerical processing. VLSI microelectronics technology has played, and continues to play, a vital role in the developments, since it offers the possibility of concentrating a tremendous computation capability in compact, low cost, fast devices. This book describes the design of a VLSI Prolog processor, starting from the language execution model down to the abstract machine and the physical implementation. Each design stage is analyzed by performing quantitative evaluations of the influence of the architectural choices on the overall performance. Moreover, the state of the art on Prolog machines is described as reference for the adopted solutions. Special care has been taken in the description of the execution model, derived from the Warren Abstract Machine, and in the analysis of the design methodology developed for this application. If silicon compilation techniques are used, the design methodology becomes a general method for the synthesis of High Level Language processors. In this environment all the problems related to the VLSI implementation are analyzed and discussed in terms of costs and performance.
In the last decade, Artificial Intelligence (AI) processing has received increasing attention, involving a wide spectrum of scientific and technological areas. Two main high-level languages have emerged as the most broadly used for AI applications: Prolog among the logic languages and Lisp among the functional languages. Both have created a demand for research on dedicated architectures able to support high performance non-numerical processing. VLSI microelectronics technology has played, and continues to play, a vital role in the developments, since it offers the possibility of concentrating a tremendous computation capability in compact, low cost, fast devices. This book describes the design of a VLSI Prolog processor, starting from the language execution model down to the abstract machine and the physical implementation. Each design stage is analyzed by performing quantitative evaluations of the influence of the architectural choices on the overall performance. Moreover, the state of the art on Prolog machines is described as reference for the adopted solutions. Special care has been taken in the description of the execution model, derived from the Warren Abstract Machine, and in the analysis of the design methodology developed for this application. If silicon compilation techniques are used, the design methodology becomes a general method for the synthesis of High Level Language processors. In this environment all the problems related to the VLSI implementation are analyzed and discussed in terms of costs and performance.
More details
Language
English
Place of publication
United States
Publishing group
Elsevier Science & Technology
Target group
Professional and scholarly
Illustrations
bibliography, map
ISBN-13
978-0-444-89976-7 (9780444899767)
Copyright in bibliographic data is held by Nielsen Book Services Limited or its licensors: all rights reserved.
Schweitzer Classification
Persons
Author
Politecnico di Torino, Dipartimento di Elettronica, Torino, Italy
Content
The Prolog Paradigm. What is Prolog? The origin. Facts. Goals. Logic variables. Rules. Recursive programming. Lists and structures. Pure Prolog and built-in predicates. Metalogical predicates. Extra-logical predicates. An example. Prolog as a General Theorem Prover. Future Applications. Prolog Execution. The Sequential Execution Models for Prolog. Prolog Language Implementations: a Brief History. Interpreting Prolog. Compiling Prolog: the Warren Abstract Machine. The Problems of Prolog Execution. The Parallel Execution Models for Prolog. An Analysis of the Intrinsic Parallelism of Prolog. Where and When the Parallelism Can Be Effective. The Implemented WAM Parallel Models. SRI model. Argonne model. SICS VVWAM model. Berkeley PPP model. RAP-WAM model. VLSI Prolog Machines. The Japanese FGCS Experience. The Berkeley PLM Machine. The PROXIMA Prolog Machine. Other Proposals. Methodology for High Level Language Architectures. Mapping a HLL Languages on a VLSI Circuit. Partitioning. Instruction Set and Abstract Machine. Simulation and Analysis of the Abstract Machine. Hardware Considerations. System Architecture. Processor Organization. The High Level Synthesis. Prolog Architectural Requirements. Analysis of the Computational Model. Data Structure and Instruction Requirements. Microarchitectural Requirements. What is Missing in a General Purpose CPU. The PROXIMA Prolog Processor: a Case Study. Design Decisions. Development Tools for Simulations. Microarchitecture Description. Data path. Control unit. The prefetching unit. Instruction format. PROXIMA VLSI Implementation. VLSI Technological Constraints. CAD Tools. Silicon Compilation. Microarchitecture Design and VLSI Implementation. Partitioning. The processor. The prefetcher unit. Appendix. Classic Benchmarks. Atomic. Cabbage. Color. Common. Course. Dutch1. Flatt. Hanoi. Inner1. Integer. Jugs. Lastlis. Length1. List. Map1. Max. Member. Mob. Mu. Mul. Naive Reverse. Number. Peak. Procwam. Qsort. Queen8. Query. Roadmap. Serial. Sieve. Switch. Lispwam3. Bibliography.