This book is the second in a series of three books
that teach the fundamentals of embedded systems as
applied to the ARM® Cortex™-M3. The three books are
primarily written for undergraduate electrical and
computer engineering students. They could also be used
for professionals learning the Arm platform. The first
book Embedded Systems: Introduction to the ARM®
Cortex™-M3 is an introduction to computers and
interfacing focusing on assembly language and C
programming. This second book focuses on interfacing and
the design of embedded systems. The third book Embedded
Systems: Real-Time Operating Systems for the ARM®
Cortex™-M3 is an advanced book focusing on operating
systems, high-speed interfacing, control systems, and
robotics. An embedded system is a system that performs a
specific task and has a computer embedded inside. Topics
include microcontrollers, design, verification,
hardware/software synchronization, interfacing devices
to the computer, timing diagrams, real-time systems,
data collection and processing, motor control, analog
filters, digital filters, and real-time signal
processing.In general, the area of embedded systems is
an important and growing discipline within electrical
and computer engineering. The educational market of
embedded system is dominated by simple microcontrollers
like the PIC, the 9S12, and the 8051. This is because of
their market share, low cost, and historical dominance.
However, as problems become more complex, so must the
systems that solve them. A number of embedded system
paradigms must shift in order to accommodate this growth
in complexity. First, the number of calculation per
second will increase from about 1 million/sec to 1
billion/sec. Similarly, the number of lines of software
code will also increase from 1000's to 10 to 100
million. Thirdly, systems will involve multiple
microcontrollers supporting many simultaneous
operations. Lastly, the need for system verification
will continue to grow as these systems are deployed into
safety critical applications. These changes are more
than a simple growth in size and bandwidth. These
systems must employ parallel programming, DMA
synchronization, real-time operating systems, fault
tolerant design, priority interrupt handling, and
networking. Consequently, it will be important to
provide our students with these types of design
experiences. The Arm platform is both low cost and
provides the high performance features required in
future embedded systems. Although the Arm market share
is currently not huge, its share will grow. Furthermore,
students trained on the Arm will be equipped to design
systems across the complete spectrum from simple to
complex. The purpose of writing this book at this time
is to bring engineering education into the 21st
century.This book employs many approaches to learning.
It will not include an exhaustive recapitulation of the
information in data sheets. First, it begins with basic
fundamentals, which allows the reader to solve new
problems with new technology. Second, the book presents
many detailed design examples. These examples illustrate
the process of design. There are multiple structural
components that assist learning. Checkpoints, with
answers in the back, are short easy to answer questions
providing immediate feedback while reading. Simple
homework, with answers to the odd questions on the web,
provide more detailed learning opportunities. The book
includes an index and a glossary so that information can
be searched. The most important learning experience in a
class like this are of course the laboratories. Each
chapter has suggested lab assignments. More detailed lab
descriptions are available on the web.The book will
cover embedded systems for the Arm® Cortex™-M3 with
specific details on the LM3S811, LM3S1968 and LM3S8962.
Although the solutions are specific for the Stellaris
LM3S, it will be possible to use this book for other Arm
derivatives. |
|