0% found this document useful (0 votes)
8 views16 pages

8 - Embedded Systems

An embedded system is a microprocessor-based system designed for specific functions, with higher reliability and quality requirements than personal computers. The design process involves creating architecture, implementing it, testing, and maintaining the system, while the architecture includes various interacting hardware and software elements. Embedded systems utilize specific software layers, including device drivers and optional operating systems, to manage hardware and facilitate application functionality.

Uploaded by

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

8 - Embedded Systems

An embedded system is a microprocessor-based system designed for specific functions, with higher reliability and quality requirements than personal computers. The design process involves creating architecture, implementing it, testing, and maintaining the system, while the architecture includes various interacting hardware and software elements. Embedded systems utilize specific software layers, including device drivers and optional operating systems, to manage hardware and facilitate application functionality.

Uploaded by

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

Embedded systems

Definitions:
• An embedded system is a microprocessor-based system that is built to control
a function or range of functions and is not designed to be programmed by the
end user.
• An embedded system is an applied computer system
• Embedded systems are more limited in hardware and/or software
functionality than a personal computer (PC).
• An embedded system is designed to perform a dedicated function.
• An embedded system is a computer system with higher quality and reliability
requirements than other types of computer systems
• Examples include the automotive ignition system and antilock brake system;
the consumer electronic systems such as toys, games, GPS; robotics and
control systems…
Embedded system design process
• Creating the architecture
• Implementing the architecture
• Testing the System
• Maintaining the System
Embedded system architecture
• The architecture of an embedded system is an abstraction of the embedded
device. At the architectural level, the hardware and software components in
an embedded system are represented as some composition of interacting
elements. Elements are representations of hardware and/or software whose
implementation details have been abstracted out, leaving only behavioral and
inter-relationship information.
• Architectural elements can be internally integrated within the embedded
device, or exist externally to the embedded system and interact with internal
elements.
• An embedded architecture includes elements of the embedded system,
elements interacting with an embedded system, the properties of each of the
individual elements, and the interactive relationships between the elements.
• Architecture-level information is physically represented in the form of structures. A
structure is one possible representation of the architecture, containing its own set of
represented elements, properties, and inter-relationship information. A structure is a
snapshot of the system’s hardware and software at design time and/or at run-time,
given a particular environment and a given set of elements. Since it is very difficult
for one snapshot to capture all the complexities of a system therefore, an
architecture is typically made up of more than one structure.
• All structures within an architecture are inherently related to each other, and it is the
sum of all these structures that is the embedded architecture of a device.
• Common structures types include modules - different functional components, the
essential hardware and/or software that the system needs to function correctly
within an embedded device; component and connector - These structures are
composed of elements that are either components (main hw/sw processing units,
such as processors, a Java Virtual Machine, etc.) or connectors (communication
mechanism that inter-connects components, such as a hw bus, or sw OS messages,
etc.).; allocation - A structure representing relationships between sw and/or hw
elements, and external elements in various environments.
Embedded hardware: understanding design diagrams
• Engineering hardware drawings:
• Block diagrams- a block diagram is a basic overview of the hardware, with
implementation details abstracted out. It depicts the major components of a
board (processors, buses, I/O, memory) or a single component (a processor,
for example) at a systems architecture or higher level. A block diagram can
reflect the actual physical layout of a board containing the major components,
it mainly depicts how different components or units within a component
function together at a systems architecture level. Block diagrams are the
simplest method in which to depict and describe the components within a
system. The symbols used within a block diagram are simple, such as squares
or rectangles for chips, and straight lines for buses.
• Schematics. Schematics are electronic circuit diagrams that provide a more
detailed view of all of the devices within a circuit or within a single component
—everything from processors down to resistors. A schematic diagram is not
meant to depict the physical layout of the board or component, but provides
information on the flow of data in the system, defining what signals are
assigned where—which signals travel on the various lines of a bus, appear on
the pins of a processor, and so on. In schematic diagrams, schematic symbols
are used to depict all of the components within the system, they are shorthand
representation based on some type of schematic symbol standard. A schematic
diagram is the most useful diagram to both hardware and software designers
when trying to determine how a system actually operates, to debug hardware,
or to write and debug the software managing the hardware.
• Timing diagrams. Timing diagrams display timing graphs of various input and
output signals of a circuit, as well as the relationships between the various
signals. They are the most common diagrams (after block diagrams) in
hardware user manuals and data sheets.
• Wiring diagrams. These diagrams represent the bus connections between
the major and minor components on a board or within a chip. In wiring
diagrams, vertical and horizontal lines are used to represent the lines of a
bus, and either schematic symbols or more simplified symbols (that
physically resemble the other components on the board or elements within
a component) are used. These diagrams may represent an approximate
depiction of the physical layout of a component or board.

• Logic diagrams/prints. Logic diagrams/prints are used to show a wide variety


of circuit information using logical symbols (AND, OR, NOT, XOR, and so on),
and logical inputs and outputs (the 1’s and 0’s). These diagrams do not
replace schematics, but they can be useful in simplifying certain types of
circuits in order to understand how they function.
• In embedded devices, all the electronics hardware resides on a board referred
to as a printed wiring board (PW) or printed circuit board (PCB). PCBs are often
made of thin sheets of fiberglass.
• The electrical path of the circuit is printed in copper, which carries the
electrical signals between the various components connected on the board. All
electronic components that make up the circuit are connected to this board,
either by soldering, plugging in to a socket, or some other connection
mechanism.
• All of the hardware on an embedded board is located in the hardware layer of
the Embedded Systems Model.
Hardware Component of Embedded
• At the highest level like otherSystem
computing devices and based upon the von
Neumann definition, the major hardware components of most boards can be
classified into five major categories:
• Central Processing Unit (CPU) – the master processor; at least a processor
• Memory – where the system’s software is stored; various types depending on
application
• Input Device(s) – input slave processors and relative electrical components
• Output Device(s) – output slave processors and relative electrical components
• Data Pathway(s)/Bus(es) – interconnects the other components, providing a
highway for data to travel on from one component to another, including any
wires, bus bridges, and/or bus controllers
• All embedded systems also require a source of electrical energy to function
Embedded system software
• Divided into two: system software and application software
• Most embedded hardware requires some type of software initialization and
management. The software that directly interfaces with and controls the
hardware is called a device driver. All embedded systems that require software
have, at the very least, device driver software in their system software layer.
• Device drivers are the software libraries that initialize the hardware, and
manage access to the hardware by higher layers of software. Device drivers are
the liaison between the hardware and the operating system, middleware, and
application layers.
• Device drivers may include drivers for the master processor architecture-
specific functionality, memory and memory management drivers, bus
initialization and transaction drivers, and I/O initialization and control drivers
(such as for networking, graphics, input devices, storage devices, debugging
I/O, etc.)
• Device drivers are either architecture-specific or generic.
• A device driver that is architecture-specific manages the hardware that is integrated
into the master processor (the architecture). Examples of architecture-specific
drivers that initialize and enable components within a master processor include on-
chip memory, integrated memory managers (MMUs), and floating point hardware.
• A device driver that is generic manages hardware that is located on the board and
not integrated onto the master processor. In a generic driver, there are typically
architecture-specific portions of source code, because the master processor is the
central control unit and to gain access to anything on the board usually means going
through the master processor. The generic driver also manages board hardware that
is not specific to that particular processor, which means that a generic driver can be
configured to run on a variety of architectures that contain the related board
hardware for which the driver is written.
• Generic drivers include code that initializes and manages access to the remaining
major components of the board, including board buses (I2C, PCI, PCMCIA, etc.), off-
chip memory (controllers, level-2+ cache, Flash, etc.), and off-chip I/O (Ethernet, RS-
232, display, mouse, etc.).
Functions of Device Drivers
• Hardware Startup, initialization of the hardware upon power-on or reset.
• Hardware Shutdown, configuring hardware into its power-off state.
• Hardware Disable, allowing other software to disable hardware on-the-fly.
• Hardware Enable, allowing other software to enable hardware on-the-fly.
• Hardware Acquire, allowing other software to gain singular (locking) access to
hardware.
• Hardware Release, allowing other software to free (unlock) hardware.
• Hardware Read, allowing other software to read data from hardware.
• Hardware Write, allowing other software to write data to hardware.
• Hardware Install, allowing other software to install new hardware on-the-fly.
• Hardware Uninstall, allowing other software to remove installed hardware on-the-
fly.
An operating system (OS)
• An operating system (OS) is an optional part of an embedded device’s system
software stack, meaning that not all embedded systems have one.
• The OS is a set of software libraries that serves two main purposes in an
embedded system: providing an abstraction layer for software on top of the
OS to be less dependent on hardware, making the development of
middleware and applications that sit on top of the OS easier, and managing
the various system hardware and software resources to ensure the entire
system operates efficiently and reliably.
Application software
• The final type of software in an embedded system is the application software
application software sits on top of the system software layer, and is
dependent on, managed, and run by the system software.
• It is the software within the application layer that inherently defines what
type of device an embedded system is, because the functionality of an
application represents at the highest level the purpose of that embedded
system and does most of the interaction with users or administrators of that
device
Algorithm to implementation: the
process
• Phase 1. Creating the Architecture, which is the process of planning the design
of the embedded system.
• Phase 2. Implementing the Architecture, which is the process of developing
the embedded system.
• Phase 3. Testing the System, which is the process of testing the embedded
system for problems, and then solving those problems.
• Phase 4. Maintaining the System, which is the process of deploying the
embedded system into the field, and providing technical support for users of
that device for the duration of the device’s lifetime

You might also like