Interpretation and Instruction Path Coprocessing


Book Description

Interpretation and Instruction Path Coprocessing presents an analysis of interpretive systems, and cost-effective software and hardware optimizations of the interpretive process on CISC and RISC architectures.




Principles and Practice of Declarative Programming


Book Description

This book constitutes the refereed proceedings of the International Conference on Principles and Practice of Declarative Programming, PPDP'99, held in Paris, France, in September/October 1999. The 22 revised full papers presented together with three invited contributions were carefully reviewed and selected from a total of 52 full-length papers submitted. Among the topics covered are type theory; logics and logical methods in understanding, defining, integrating, and extending programming paradigms such as functional, logic, object-oriented, constraint, and concurrent programming; support for modularity; the use of logics in the design of program development tools; and development and implementation methods.




The Organization of Reduction, Data Flow, and Control Flow Systems


Book Description

In light of research over the last decade on new ways of representing and performing computations, this book provides a timely reexamination of computer organization and computer architecture. It systematically investigates the basic organizational concepts of reduction, data flow, and control flow (or state transition) and their relationship to the underlying programming paradigms. For each of these concepts, Kluge looks at how princip1es of language organization translate into architectures and how architectural features translate into concrete system implementations, comparing them in order to identify their similarities and differences. The focus is primarily on a functional programming paradigm based on a full-fledged operational &-calculus and on its realization by various reduction systems. Kluge first presents a brief outline of the overall configuration of a computing system and of an operating system kernel, introduce elements of the theory of Petrinets as modeling tools for nonsequential systems and processes, and use a simple form of higher-order Petri nets to identify by means of examples the operational and control disciplines that govern the organization of reduction, data flow, and control flow computations. He then introduces the notions of abstract algorithms and of reductions and includes an overview of the theory of the &-calculus. The next five chapters describe the various computing engines that realize the reduction semantics of a full-fledged &-calculus. The remaining chapters provide self-contained investigations of the G-machine, SKI combinator reduction, and the data flow approach for implementing the functional programming paradigm. This is followed by a detailed description of a typical control flow (or von Neumann) machine architecture (a VAX11 system). Properties of these machines are summarized in the concluding chapter, which classifies them according to the semantic models they support.




The Codesign of Embedded Systems: A Unified Hardware/Software Representation


Book Description

Current practice dictates the separation of the hardware and software development paths early in the design cycle. These paths remain independent with very little interaction occurring between them until system integration. In particular, hardware is often specified without fully appreciating the computational requirements of the software. Also, software development does not influence hardware development and does not track changes made during the hardware design phase. Thus, the ability to explore hardware/software tradeoffs is restricted, such as the movement of functionality from the software domain to the hardware domain (and vice-versa) or the modification of the hardware/software interface. As a result, problems that are encountered during system integration may require modification of the software and/or hardware, resulting in potentially significant cost increases and schedule overruns. To address the problems described above, a cooperative design approach, one that utilizes a unified view of hardware and software, is described. This approach is called hardware/software codesign. The Codesign of Embedded Systems develops several fundamental hardware/software codesign concepts and a methodology that supports them. A unified representation, referred to as a decomposition graph, is presented which can be used to describe hardware or software using either functional abstractions or data abstractions. Using a unified representation based on functional abstractions, an abstract hardware/software model has been implemented in a common simulation environment called ADEPT (Advanced Design Environment Prototyping Tool). This model permits early hardware/software evaluation and tradeoff exploration. Techniques have been developed which support the identification of software bottlenecks and the evaluation of design alternatives with respect to multiple metrics. The application of the model is demonstrated on several examples. A unified representation based on data abstractions is also explored. This work leads to investigations regarding the application of object-oriented techniques to hardware design. The Codesign of Embedded Systems: A Unified Hardware/Software Representation describes a novel approach to a topic of immense importance to CAD researchers and designers alike.




Java Microarchitectures


Book Description

Java is an exciting new object-oriented technology. Hardware for supporting objects and other features of Java such as multithreading, dynamic linking and loading is the focus of this book. The impact of Java's features on micro-architectural resources and issues in the design of Java-specific architectures are interesting topics that require the immediate attention of the research community. While Java has become an important part of desktop applications, it is now being used widely in high-end server markets, and will soon be widespread in low-end embedded computing. Java Microarchitectures contains a collection of papers providing a snapshot of the state of the art in hardware support for Java. The book covers the behavior of Java applications, embedded processors for Java, memory system design, and high-performance single-chip architectures designed to execute Java applications efficiently.




Expert Systems and Robotics


Book Description

The areas of intelligent machines or robotic systems is of enormous technological and economic interest as competition in productivity intensifies. This volume gives the proceedings of the 1990 Advanced Study Institute on Expert Systems and Robotics. It presents research work already accomplished in the analytical theory of intelligent machines, work in progress and of current interest and some specific examples for further research. The papers in the volume range from the most theoretical to some descriptions of very practical working robots. The papers are organized into sections on vision and image analysis, robotic sensory systems, software/hardware and system simulation, robot control, applications, and reports of group meetings.







Retrogame Archeology


Book Description

Drawing on extensive research, this book explores the techniques that old computer games used to run on tightly-constrained platforms. Retrogame developers faced incredible challenges of limited space, computing power, rudimentary tools, and the lack of homogeneous environments. Using examples from over 100 retrogames, this book examines the clever implementation tricks that game designers employed to make their creations possible, documenting these techniques that are being lost. However, these retrogame techniques have modern analogues and applications in general computer systems, not just games, and this book makes these contemporary connections. It also uses retrogames' implementation to introduce a wide variety of topics in computer systems including memory management, interpretation, data compression, procedural content generation, and software protection. Retrogame Archeology targets professionals and advanced-level students in computer science, engineering, and mathematics but would also be of interest to retrogame enthusiasts, computer historians, and game studies researchers in the humanities.




Domain-Specific Processors


Book Description

Ranging from low-level application and architecture optimizations to high-level modeling and exploration concerns, this authoritative reference compiles essential research on various levels of abstraction appearing in embedded systems and software design. It promotes platform-based design for improved system implementation and modeling and enhanced