|
楼主 |
发表于 2008-5-5 12:58:08
|
显示全部楼层
Preface for Digital Design: An Embedded Systems Approach Using Verilog
In Praise of Digital Design: An Embedded Systems Approach Using Verilog “Peter Ashenden is leading the way towards a new curriculum for educating the next generation of digital logic designers. Recognizing that digital design has moved from being gate-centric assembly of custom logic to processor-centric design of embedded systems, Dr. Ashenden has shifted the focus from the gate to the modern design and integration of complex integrated devices that may be physically realized in a variety of forms. Dr. Ashenden does not ignore the fundamentals, but treats them with suitable depth and breadth to provide a basis for the higher-level material. As is the norm in all of Dr. Ashenden’s writing, the text is lucid and a pleasure to read. The book is illustrated with copious examples and the companion Web site offers all that one would expect in a text of such high quality.” —grant mart i n , Chief Scientist, Tensilica Inc. “Dr. Ashenden has written a textbook that enables students to obtain a much broader and more valuable understanding of modern digital system design. Readers can be sure that the practices described in this book will provide a strong foundation for modern digital system design using hardware description languages.” —gary spivey, George Fox University “The convergence of miniaturized, sophisticated electronics into handheld, low-power embedded systems such as cell phones, PDAs, and MP3 players depends on efficient, digital design flows. Starting with an intuitive exploration of the basic building blocks, Digital Design: An Embedded Systems Approach introduces digital systems design in the context of embedded systems to provide students with broader perspectives. Throughout the text, Peter Ashenden’s practical approach engages students in understanding the challenges and complexities involved in implementing embedded systems.” —gregory d . peterson, University of Tennessee “Digital Design: An Embedded Systems Approach places emphasis on larger systems containing processors, memory, and involving.
OVERVIEW
For those who are musically inclined, the organization of this book can be
likened to a two-act opera, complete with overture, intermezzo, and finale.
Chapter 1 forms the overture, introducing the themes that are to follow
in the rest of the work. It starts with a discussion of the basic ideas of
the digital abstraction, and introduces the basic digital circuit elements.
It then shows how various non-ideal behaviors of the elements impose
constraints on what we can design. The chapter finishes with a discussion
of a systematic process of design, based on models expressed in a hardware
description language.
Act I of the opera comprises Chapters 2 through 5. In this act, we
develop the themes of basic digital design in more detail.
Chapter 2 focuses on combinational circuits, starting with Boolean
algebra as the theoretical underpinning and moving on to binary coding
of information. The chapter then surveys a range of components that can
be used as building blocks in larger combinational circuits, before returning
to the design methodology to discuss verification of combinational
circuits.
Chapter 3 expands in some detail on combinational circuits used
to process numeric information. It examines various binary codes for
unsigned integers, signed integers, fixed-point fractions and floating-point
real numbers. For each kind of code, the chapter describes how some
arithmetic operations can be performed and looks at combinational circuits
that implement arithmetic operations.
Chapter 4 introduces a central theme of digital design, sequential circuits.
The chapter examines several sequential circuit elements for storing
information and for counting events. It then describes the concepts of a
datapath and a control section, followed by a description of the clocked
synchronous timing methodology.
Chapter 5 completes Act I, describing the use of memories for storing
information. It starts by introducing the general concepts that are common
to all kinds of semiconductor memory, and then focuses on the particular
features of each type, including SRAM, DRAM, ROM and flash
memories. The chapter finishes with a discussion of techniques for dealing
with errors in the stored data.
The intermezzo, Chapter 6, is a digression away from functional
design into physical design and the implementation fabrics used for digital
systems. The chapter describes the range of integrated circuits that are
used for digital systems, including ASICSs, FPGAs and other PLDs. The
chapter also discusses some of the physical and electrical characteristics of
implementation fabrics that give rise to constraints on designs.
Act II of the opera, comprising Chapters 7 through 9, develops the
embedded systems theme.
Chapter 7 introduces the kinds of processors that are used in embedded
systems and gives examples of the instructions that make up embedded
software programs. The chapter also describes the way instructions
and data are encoded in binary and stored in memory and examines ways
of connecting the processor with memory components.
Chapter 8 expands on the notion of input/output (I/O) controllers
that connect an embedded computer system with devices that sense and
affect real-world physical properties. It describes a range of devices that
are used in embedded computers and shows how they are accessed by an
embedded processor and by embedded software.
Chapter 9 describes accelerators, that is, components that can be
added to embedded systems to perform operations faster than is possible
with embedded software running on a processor core. This chapter uses
an extended example to illustrate design considerations for accelerators,
and shows how an accelerator interacts with an embedded processor.
The finale, Chapter 10, is a coda that returns to the theme of design
methodology introduced in Chapter 1. The chapter describes details of
the design flow and discusses how aspects of the design can be optimized
to better meet constraints. It also introduces the concept of design for
test, and outlines some design for test tools and techniques. The opera
finishes with a discussion of the larger context in which digital systems
are designed.
After a performance of an opera, there is always a lively discussion
in the foyer. This book contains a number of appendices that correspond
to that aspect of the opera. Appendix A provides sample answers for the
Knowledge Test Quiz sections in the main chapters. Appendix B provides
a quick refresher on electronic circuits. Appendix C is a summary of the
subset of Verilog used for synthesis of digital circuits. Finally, Appendix D
is an instruction-set reference for the Gumnut embedded processor core
used in examples in Chapters 7 through 9.
For those not inclined toward classical music, I apologize if the preceding
is not a helpful analogy. An analogy with the courses of a feast
came to mind, but potential confusion among readers in different parts
of the world over the terms appetizer, entrée and main course make the
analogy problematic. The gastronomically inclined reader should feel free
to find the correspondence in accordance with local custom. |
|