Synopses & Reviews
This book provides a systematic introduction to the topic of Hardware-Software Codesign. The material emphasizes the basic ideas, and the practical aspects of Hardware-Software Codesign. The book developed from a course on the topic of Hardware-Software Codesign, organized by the author at Virginia Tech. It is separated into four differenct sections; Basic Concepts, Custom Architectures, Hardware/Software Interfaces, and Applications. The author covers many concepts including the various forms of expressing computations, sequential and parallel implementations, control-flow and data-flow, control dependency and data dependency, latency and throughput as well as the architecture design space of hardware data paths, finite state machines, micro-programmed machines, instruction-set processors, system-on-chip, and on-chip buses. The material also includes the different forms of hardware/software interfaces, their impact on performance, hardware cost, and software complexity. The book contains information on hardware/software integration of components on top of hardware/software interfaces as well as design methodology and design flows for hardware-software codesign including performance evaluation, verification and synthesis of hardware and software implementations. Problems are included at the end of each chapter and a solutions manual will be available for instructors.
Synopsis
This book provides a systematic introduction to the topic of Hardware-Software Codesign. The material emphasizes the basic ideas and the practical aspects of Hardware-Software Codesign. Problems are included at the end of each chapter.
Synopsis
A Practical Introduction to Hardware/Software Codesign addresses the problem of combining software and hardware in a single system design process - such problems can be solved with hardware/software codesign. When used properly, hardware/software codesign improves the overall performance of digital systems, and it can shorten design time. The book covers four topics in hardware/software codesign: fundamentals, the design space of custom architectures, the hardware/software interface and application examples. The book comes with an associated design environment that helps the reader to perform experiments in hardware/software codesign. Each chapter also comes with exercises and further reading suggestions. A Practical Introduction to Hardware/Software Codesign is a great resource for engineers and students.
About the Author
Patrick Schaumont is Assistant Professor in Computer Engineering at Virginia Tech. He received the PhD degree in Electrical Engineering from UCLA (2004), and the MS degree in Computer Science from Rijksuniversiteit Ghent, Belgium (1990). He has been a researcher at the Inter-university Micro- Electronics Center (IMEC) in Belgium from 1992 to 2001. He has served on the program committee of international conferences in this field such as CHES, DATE, DAC, IEEE HOST and IEEE MEMOCODE.
Table of Contents
The Nature of Hardware and Software.- Data Flow Modeling and Implementation.- Analysis of Control Flow and Data Flow.- Finite State Machine with Datapath.- Microprogrammed Architectures.- General-purpose Embedded Cores.- System On Chip.- On-chip Busses.- Hardware/Software Interfaces.- Coprocessor Control Shell Design.- Trivium Crypto-Coprocessor.- CORDIC Co-processor.