Vous êtes sur la page 1sur 62

Introduction &

importance of embedded
systems architecture


By:
AJAL.A.J , ASSISTANT PROFESSOR ( GUEST ) - ECE Dept .
Government Engineering College Idukki


Models and Architecture
Models :-
- Conceptual view of systems functionality
- A set of functional objects and rules for composing these
objects.

Architectures :-
- Abstract view of systems functionality
- A set of implementation components and their connections
Architectures
We must be clear about the architecture that we are going to use for
design of ES
It has also got a wide variety of choices, to be chosen according to
the given application.
The choices are as follows
Application-specific Architecture :-
- Controller Architecture
- Datapath Architecture
- Finite state machine with datapath

General Purpose Architecture :-
- CISC
- RISC
- Vector machine
- VLIW ( Very Long Instruction Word Computer )


Why Is the Architecture of an
Embedded System Important?
1. Defining and capturing the design of a system
2. Cost limitations
3. determining a systems integrity, such as reliability and safety
4. working within the confines of available elemental functionality
5. (i.e., processing power, memory, battery life, etc.)
6. marketability and sellability
7. deterministic requirements


5
Architecting a dog house
Can be built by one person
Requires
Minimal modeling
Simple process
Simple tools


6
Architecting a house
Built most efficiently and timely by a team
Requires
Modeling
Well-defined process
Power tools
7
Architectural Level
1. Automatic synthesis of HW and SW
2. Interface synthesis
3. RTOS function integration
4. Scheduling and communication
5. Fast prototyping and back
annotation
8
Design Challenges
difficulty of implementing informal
specifications from clients
safety, drivability, efficient fuel consumption,
controlled emission
problem of chasing continuously changing
specification (car models evolve)
software design problem
debugging assembly code, hand-written real-time
kernel
verification of timing properties, limited resources
9
Design Challenges (contd.)
Poor design methodology
no simulation and extensive bread-boarding
hand-layout of HW
independent development of HW and SW and
integration at the last moment
new designs layered on top of old designs
lack of traceability

Hardware Architecture
Figure - Major application areas of embedded systems
The major building blocks of
an embedded system are
Listed below :-



1. Microcontrollers / digital signal processors (DSP)
2. Integrated chips
3. Real time operating system (RTOS) ( including board support package and device drivers )
4. Industry-specific protocols and interfaces
5. Printed circuit board assembly

15
Embedded System Block Diagram
Processor
mem
Observe
(Input)
Control
(Output)
Motor/Light
Temperature
Sensor
S
y
s
t
e
m

B
u
s

Carry out an architecture level power analysis
Drive requirements for executable specifications
Provide visibility into designs
Easily handle regression testing

How do we achieve all this
with such complexity?

Verification of Complex Systems
17 of
18
Interaction Example




tea
coffee
Tired
idle
pour - coffee
pour - tea
Change
Centralized Embedded Systems
The system under control (plant) requires a specific time response:
the controller has to be real-time
The architecture is centralized:
all sensors and actuators are connected through dedicated links.
Distributed Embedded Systems
so it was natural to add some extra hardware and
provide several controllers each one performing part
of the control tasks
Shared memory multi processor
Issues solved with Real-Time techniques
Jeopardized system timeliness: Provide guarantees that
the network is going to exchange the messages on time
Single point of failure: Add redundant channels or ensure high reliability
Error propagation
Error propagation (even if redundancy is present): Ensure error containment
Von Neumann and Harvard Computers
System-on-Chip (SoC)
The current state-of-the-art:
Multiple computational and data-processing engines, memory, and
peripherals, all constructed on a single silicon chip called a System-on-
Chip (SoC).
25 of
System on chip (SoC)
Integrating all components of a computer or
other electronic system into a single integrated
circuit (chip).
It may contain digital, analog, mixed-signal, and
often radio-frequency functions all on one chip.
A typical application is in the area of embedded
systems.
SiP (System in Package)
Fig. . Architecture of embedded system
Data Bus
Data
Memory
Program
Memory
interrupts
Digital o/p
Analog o/p
Digital i/p
Analog i/p
INPUTS
OUTPUTS
Links to Other Systems
User Interface
Address Bus
CPU
Analog
Front End
Digital
i/p Ports
User Interface
Modules
Digital
o/p Ports
D/A,
Isolation..
Comms:
ASC, SSC,
USB, IIC,
IrDA, etc.
Support:
Timers
Watchdog

30 of
31
Abstraction Levels
32
Abstraction Levels
33
Abstraction Levels
34
Abstraction Level
35
Center for High Performance Embedded
Systems (CHiPES), NTU, Singapore
CHiPES was established by the Nanyang
Technological University in April 1998 to
promote research and development in
embedded systems engineering using state-
of-the-art VLSI CAD tools and technology.
Tricor
e
TriCore
32-Bit MCU-
DSP
DSP Strengths
Zero Overhead Loop
Dedicated Hardware Multipliers
Powerful Multi-Operation Instructions
Addressing Modes
Data Formats
RISC Strengths
Register Based Architecture
Reduced Instruction Set
Instruction Pipeline
C/C++ language support
Memory Protection
Unified
MCU-DSP
16-Bit FP DSP Core
32-Bit RISC
Core
32-Bit MCU
MCU Strengths
Real Time Control
High System Integration
Range of On-Chip Peripherals
Dedicated Bit Manipulation unit
High Performance Embedded Systems
36 of
BMW 850 i
brake
sensor
brake
sensor
brake
sensor
brake
sensor
ABS
hydraulic
pump
BMW 850i, contd.
Four General Embedded Systems Types
1. General Computing
Applications similar to desktop computing, but in an embedded package
Video games, set- top boxes, wearable computers, automatic tellers
2. Control Systems
Closed- loop feedback control of real- time system
Vehicle engines, chemical processes, nuclear power, flight control
3. Signal Processing
Computations involving large data streams
Radar, Sonar, video compression
4. Communication & Networking
Switching and information transmission
Telephone system, Internet
41
Heterogeneous Architectures
Heterogeneous architectures consist of
programmable and dedicated components



TM
Mem
CP1 CP2
MIPS
Programmable core + SW
Dedicated coprocessor
Software Architecture
What Are Software Architectures?


43
Architecture is making decisions
The life of a software architect is a long
(and sometimes painful) succession of
suboptimal decisions made partly in the
dark.


44
Software engineering process
A set of partially ordered steps intended to
reach a goal. In software engineering the
goal is to build a software product or to
enhance an existing one.

Architectural process
- Sequence of activities that lead to the
production of architectural artifacts:
A software architecture description
An architectural prototype


45
Forces in Software
Technology churn
Our enemy is complexity, and its our goal to kill it.
Jan Baan
Performance Throughput
Capacity
Availability
Fail safe
Fault tolerance
Functionality
Cost Compatibility
Resilience
The challenge over the next 20 years will not be speed or cost or performance;
it will be a question of complexity.
Bill Raduchel, Chief Strategy Officer, Sun Microsystems


46
S/W Architecture defined
Software architecture encompasses the set
of significant decisions about the
organization of a software system
- selection of the structural elements and their
interfaces by which a system is composed
- behavior as specified in collaborations among
those elements
- composition of these structural and behavioral
elements into larger subsystem
- architectural style that guides this organization


47
Software architecture also involves

1. usage
2. functionality
3. performance
4. resilience
5. reuse
6. comprehensibility
7. economic and technology constraints and
tradeoffs
8. aesthetic concerns
Figure - Representative architecture layers of an embedded system
Adapting for Control networks and the OSI
stack
Architecture meta model
Software
Architecture
Software
Architecture
Description
Architectural
view
is made of
is represented by
Architecture
Design Process
produces
Form
Component
Connection
Architectural
Pattern
is a
is made of
Software
Architects
are actors in
Logical view
Process
view
Implemen-
tation view
Deployment
view
Requirements
satisfies
Architectural style
has
has
has
is a
System
architecture
is part
of
Architecture
Style guide
Constraints
constrains
constrains
Use case
view
relates to
Architectural
Blueprint
depicts


51
Representing System Architecture
Logical View
End-user
Functionality
Implementation View
Programmers
Software management
Process View
Performance
Scalability
Throughput
System integrators
Deployment View
System topology
Delivery, installation
Communication
System engineering
Conceptual Physical
Use Case View
Topics of Interest
1. Architectural modeling
2. Architectural analysis
3. Architectural styles
4. Reference architectures
5. Implementation support
6. Deployment support
7. Dynamic adaptability
Probably many others
1. Architectural Modeling
Existing ADLs focus on (functional) S/W concerns
Interfaces
Behaviors (static and dynamic)
Interaction protocols
S/W system resources typically ignored
OS, runtime libraries, threads, etc.
H/W system resources typically ignored
Processor speed, memory, network, etc.
2. Architectural Analysis
ADLs focus on formal analysis of (functional) system
properties
deadlock analysis
static behavioral analysis
Analysis fidelity
Considering H/W platform properties
Transferring architectural decisions into code
E.g., analysis of real-time properties
Simulation
Executable architectural models
Faithful models of S/W and H/W environments
3. Architectural Styles
Styles are key S/W design idioms
Define rules (or heuristics) to guide system design
Guarantee (or promise) desired system properties
E.g., layered, pipe-and-filter, client-server, etc.
What styles are applicable in the ES domain?
use of dataflow architectures
use of layered architectures
Ptolemys definition of a style for hybrid systems
Some examples from mobile robotics and multimedia
Studies of styles in mobile, distributed, resource-
constrained domains
4. Reference Architectures
Generic architectural blueprints
Domain-specific or product-line approaches
Instantiated into application-specific architectures
Leverage successful architectural patterns

Reference architectures in the ES domain
architectural modeling
Overlays specific architectural patterns onto the layered
style

5. Implementation Support
Directly impacts effectiveness of architectural
models
Lack of effective support worsens architectural drift
Particularly so in the ES domain
Distributed, decentralized, mobile
Resource constrained, long-lived, heterogeneous

6. Deployment Support
ES are typically developed and tested in simulated
environments
Target platform may not yet exist
Target platform may be too expensive
Target platform may not be easily accessible
Knowledge about the target environment is critical
Performance characteristics and idiosyncrasies
Current deployment architecture
Existing deployment solutions are inappropriate
Centralized solutions
Large patches (e.g., Windows update wizards)
Sophisticated, but resource demanding deployment agents
7. Dynamic Adaptability
An ES may need to (continuously) evolve
Downtime of may be unacceptable
Ensuring system integrity is critical
Design-time analysis of the modified models
Run-time analysis of the modified implementations
Challenges in supporting dynamic adaptability
Dynamic adaptation may impact the ESs properties :
=>Availability, safety, security
Distribution of systems and of dynamic changes
Decentralization
Who owns (or can see) the entire systems model?
References / Acknowledgements
1. Embedded Systems: Architecture, Programming, and Design by Raj Kamal
2. Ganssle, Jack, and Michael Barr. "G - G - guru". Embedded Systems Dictionary. CMP
Books. 2003. Books24x7.
2. Giving NFC a smarter and brighter future, Wireless Asia, October 2008
3. William Stallings, Cryptography and Network Security, Pearson India Ltd., 2nd Edition
2007.
4. Charles P. Pfleeger, Shari Lawrence Pfleeger, Security in Computing, Person education,
third edition, 2007.
5. http://www.eetimes.com/news/semi/showArticle.jhtml?articleID=211800286
6. http://www.vdcresearch.com/_documents/pressrelease/press-attachment-1394.pdf
7. http://edageek.com/2007/09/11/palmsecure-pc-login-kit/
8. www.ecnmag.com/Security-Considerations.aspx?menuid=578
9. www.dlna.org
10. www.mostcooperation.com

Vous aimerez peut-être aussi