[go: up one dir, main page]

0% found this document useful (0 votes)
15 views14 pages

Unit 1 Embedded System

The document provides an overview of embedded systems, detailing their definitions, classifications, and applications across various domains such as consumer electronics and automotive. It discusses the components involved in embedded system design, including processors, microcontrollers, and digital signal processors, as well as the design and development processes. Additionally, it highlights the importance of hardware and software integration and the iterative nature of developing embedded applications.

Uploaded by

mariyal ece
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views14 pages

Unit 1 Embedded System

The document provides an overview of embedded systems, detailing their definitions, classifications, and applications across various domains such as consumer electronics and automotive. It discusses the components involved in embedded system design, including processors, microcontrollers, and digital signal processors, as well as the design and development processes. Additionally, it highlights the importance of hardware and software integration and the iterative nature of developing embedded applications.

Uploaded by

mariyal ece
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

EMBEDDED SYSTEM DESIGN

UNIT 1

INTRODUCTION TO EMBEDDED SYSTEM

Embedded systems overview


An embedded system is nearly any computing system other than a desktop computer. An
embedded system is a dedicated system which performs the desired function upon power up,
repeatedly.

Embedded systems are found in a variety of common electronic devices such as consumer
electronics ex. Cell phones, pagers, digital cameras, VCD players, portable Video games,
calculators, etc.,

Embedded systems are found in a variety of common electronic devices, such as:
(a)consumer electronics -- cell phones, pagers, digital cameras, camcorders, videocassette
recorders, portable video games, calculators, and personal digital assistants; (b) home appliances
-- microwave ovens, answering machines, thermostat, home security, washing machines, and
lighting systems; (c) office automation -- fax machines, copiers, printers, and scanners; (d)
business equipment -- cash registers, curbside check-in, alarm systems, card readers, product
scanners, and automated teller machines; (e) automobiles --transmission control, cruise control,
fuel injection, anti-lock brakes, and active suspension

Classifications of Embedded systems

1. Small Scale Embedded Systems: These systems are designed with a single 8- or 16-bit
microcontroller; they have little hardware and software complexities and involve board-
level design. They may even be battery operated. When developing embedded software for
these, an editor, assembler and cross assembler, specific to the microcontroller or processor
used, are the main programming tools. Usually, ‗C‘ is used for developing these systems.
‗C‘ program compilation is done into the assembly, and executable codes are then
appropriately located in the system memory. The software has to fit within the memory
available and keep in view the need to limit power dissipation when system is
running continuously.

2. Medium Scale Embedded Systems: These systems are usually designed with a single or
few 16- or 32-bit microcontrollers or DSPs or Reduced Instruction Set Computers (RISCs).
These have both hardware and software complexities. For complex software design, there
are the following programming tools: RTOS, Source code engineering tool, Simulator,
Debugger and Integrated Development Environment (IDE). Software tools also provide
the solutions to the hardware complexities. An assembler is of little use as a programming
tool. These systems may also employ the readily available ASSPs and IPs (explained later)
for the various functions—for example, for the bus interfacing, encrypting, deciphering,
discrete cosine transformation and inverse transformation, TCP/IP protocol stacking and
network connecting functions.
3. Sophisticated Embedded Systems: Sophisticated embedded systems have enormous
hardware and software complexities and may need scalable processors or configurable
processors and programmable logic arrays. They are used for cutting edge applications that
need hardware and software co-design and integration in the final system; however, they
are constrained by the processing speeds available in their hardware units. Certain software
functions such as encryption and deciphering algorithms, discrete cosine transformation
and inverse transformation algorithms, TCP/IP protocol stacking and network driver
functions are implemented in the hardware to obtain additional speeds by saving time.
Some of the functions of the hardware resources in the system are also implemented by the
software. Development tools for these systems may not be readily available at a reasonable
cost or may not be available at all. In some cases, a compiler or retarget able compiler
might have to be developed for these.

The processing units of the embedded system

1. Processor in an Embedded System A processor is an important unit in the embedded system


hardware. A microcontroller is an integrated chip that has the processor, memory and
several other hardware units in it; these form the microcomputer part of the embedded
system. An embedded processor is a processor with special features that allow it to be
embedded into a system. A digital signal processor (DSP) is a processor meant for
applications that process digital signals.
2. Commonly used microprocessors, microcontrollers and DSPs in the small-, medium-and
large scale embedded systems
3. A recently introduced technology that additionally incorporates the application-specific
system processors (ASSPs) in the embedded systems.
4. Multiple processors in a system.

Embedded systems are a combination of hardware and software as well as other components
that we bring together inti products such as cell phones,music player,a network router,or an aircraft
guidance system.they are a system within another system as we see in Figure 1.1

Figure 1.1: A simple embedded system

Building an embedded system

we embed 3 basic kinds of computing engines into our systems: microprocessor,


microcomputer and microcontrollers. The microcomputer and other hardware are connected via
A system bus is a single computer bus that connects the major components of a computer system.
The technique was developed to reduce costs and improve modularity. It combines the functions
of a data bus to carry information, an address bus to determine where it should be sent, and a
control bus to determine its operation.

The system bus is further classified int address ,data and control bus.the microprocessor
controls the whole system by executing a set of instructions call firmware that is stored in ROM.
An instruction set, or instruction set architecture (ISA), is the part of the computer
architecture related to programming, including the native data types, instructions, registers,
addressing modes, memory architecture, interrupt and exception handling, and external I/O. An
ISA includes a specification of the set of opcodes (machine language), and the native commands
implemented by a particular processor. To run the application, when power is first turned ON,
the microprocessor addresses a predefined location and fetches, decodes, and executes the
instruction one after the other. The implementation of a microprocessor based embedded system
combines the individual pieces into an integrated whole as shown in Figure 1.2, which represents
the architecture for a typical embedded system and identifies the minimal set of necessary
components.

Figure 1.2 :A Microprocessor based Embedded system


Embedded design and development process

Figure1.3 shows a high level flow through the development process and identifies the
major elements of the development life cycle.

Figure 1.3 Embedded system life cycle


The traditional design approach has been traverse the two sides of the accompanying diagram
separately, that is,

Design the hardware components


Design the software components.
Bring the two together.
Spend time testing and debugging the system.

The major areas of the design process are

Ensuring a sound software and hardware specification.


Formulating the architecture for the system to be designed.
Partitioning the h/w and s/w.
Providing an iterative approach to the design of h/w and s/w.

The important steps in developing an embedded system are

Requirement definition.
System specification.
Functional design
Architectural design
Prototyping.

The major aspects in the development of embedded applications are

Digital hardware and software architecture


Formal design , development, and optimization process.
Safety and reliability.
Digital hardware and software/firmware design.
The interface to physical world analog and digital signals.
Debug, troubleshooting and test of our design.
Figure 1.4: Interfacing to the outside world

Embedded applications are intended to work with the physical world, sensing various
analog and digital signals while controlling, manipulating or responding to others. The study of
the interface to the external world extends the I/O portion of the von-Neumann machine as
shown in figure 1.4 with a study of buses, their constitutes and their timing considerations.

Exemplary applications of each type of embedded system

Embedded systems have very diversified applications. A few select application areas of
embedded systems are Telecom, Smart Cards, Missiles and Satellites, Computer Networking,
Digital Consumer Electronics, and Automotive. Figure 1.9 shows the applications of embedded
systems in these areas.
Figure 1.9 Applications of embedded systems
THE HARDWARE SIDE

In today‘s hi-tech and changing world, we can put together a working hierarchy of hard
ware components. At the top, we find VLSI circuits comprising of significant pieces of
functionality: microprocessor, microcontrollers, FPGA‘s, CPLD, and ASIC.

Our study of hardware side of embedded systems begins with a high level view of the
computing core of the system. we will expand and refine that view of hardware both inside and
outside of the core. Figure 2.1 illustrates the sequence.

Figure 2.1 Exploring embedded systems

The core level

Figure 2.2 Four major blocks of an embedded hardware core


At the top, we begin with a model comprising four major functional blocks i.e., input, output,
memory and data path and control depicting the embedded hardware core and high level signal
flow as illustrated in figure 2.2.

The source of the transfer is the array of eight bit values; the destination is perhaps a
display. in figure 2.3, we refine the high level functional diagram to illustrate a typical bus
configuration comprising the address, data and control lines.

Figure 2.3 A typical Bus structure comprising address, data and control signals.

The Microprocessor
A microprocessor (sometimes abbreviated µP) is a programmable digital electronic
component that incorporates the functions of a central processing unit (CPU) on a single
semiconducting integrated circuit (IC). It is a multipurpose, programmable device that accepts
digital data as input, processes it according to instructions stored in its memory, and provides
results as output. It is an example of sequential digital logic, as it has internal memory.
Microprocessors operate on numbers and symbols represented in the binary numeral system.

A microprocessor control program can be easily tailored to different needs of a product


line, allowing upgrades in performance with minimal redesign of the product. Different features
can be implemented in different models of a product line at negligible production cost. Figure
2.4 shows a block diagram for a microprocessor based system.

Figure 2.4 : A block diagram for a microprocessor based system

The microcomputer
The microcomputer is a complete computer system that uses a microprocessor as its
computational core. Typically, a microcomputer will also utilizes numerous other large scale
integrated circuits to provide necessary peripheral functionality. The complexity of
microcomputers varies from simple units that are implemented on a single chip along with a small
amount of on chip memory and elementary I/O system to the complex that will augmentthe
microprocessor with a wide array of powerful peripheral support circuitry.

The microcontroller
A microcontroller (sometimes abbreviated µC, uC or MCU) is a small computer on a single
integrated circuit containing a processor core, memory, and
programmable input/output peripherals. Program memory in the form of NOR flash or OTP
ROM is also often included on chip, as well as a typically small amount of RAM. Microcontrollers
are designed for embedded applications, in contrast to the microprocessors used in personal
computers or other general purpose applications.

Figure 2.5 shows together the microprocessor core and a rich collection of peripherals and I/O
capability into a single integrated circuit.

Microcontrollers are used in automatically controlled products and devices, such as


automobile engine control systems, implantable medical devices, remote controls, office
machines, appliances, power tools, toys and other embedded systems. By reducing the size and
cost compared to a design that uses a separate microprocessor, memory, and input/output devices,
microcontrollers make it economical to digitally control even more devices and processes. Mixed
signal microcontrollers are common, integrating analog components needed to control non-digital
electronic systems.

Figure 2.5 :A block diagram for a microcontroller based system

The digital signal processor


A digital signal processor (DSP) is a specialized microprocessor with an architecture
optimized for the operational needs of digital signal processing. A DSP provides fast, discrete-
time, signal-processing instructions. It has Very Large Instruction Word (VLIW) processing
capabilities; it processes Single Instruction Multiple Data (SIMD) instructions fast; it processes
Discrete Cosine Transformations (DCT) and inverse DCT (IDCT) functions fast. The latter are a
must for fast execution of the algorithms for signal analyzing, coding, filtering, noise cancellation,
echo-elimination, compressing and decompressing, etc. Figure 2.6 shows the block diagram for a
digital signal processor

Figure 2.6 A block diagram for a digital signal processor

By the standards of general-purpose processors, DSP instruction sets are often highly irregular.
One implication for software architecture is that hand-optimized assembly-code routines are
commonly packaged into libraries for re-use, instead of relying on advanced compiler technologies
to handle essential algorithms.

Hardware features visible through DSP instruction sets commonly include:

Hardware modulo addressing, allowing circular buffers to be implemented without having to


constantly test for wrapping.
Memory architecture designed for streaming data, using DMA extensively and
expectingcode to be written to know about cache hierarchies and the associated
delays.
Driving multiple arithmetic units may require memory architectures to
support severalaccesses per instruction cycle
Separate program and data memories (Harvard architecture), and sometimes
concurrent access on multiple data busses
Special SIMD (single instruction, multiple data) operations
Some processors use VLIW techniques so each instruction drives multiple
arithmetic units inparallel
Special arithmetic operations, such as fast multiply–accumulates (MACs).
Many fundamental DSP algorithms, such as FIR filters or the Fast Fourier transform
(FFT) depend heavily on multiply–accumulate performance.
Bit-reversed addressing, a special addressing mode useful for calculating FFTs
Special loop controls, such as architectural support for executing a few instruction
words in avery tight loop without overhead for instruction fetches or exit testing
Deliberate exclusion of a memory management unit. DSPs frequently use multi-
tasking operating systems, but have no support for virtual memory or memory
protection. Operating systems that use virtual memory require more time for
context switching among processes, which increases latency.

You might also like