CCD-based Vertex Detector - LCFI status report Konstantin Stefanov RAL
01EMBSYST2007 Ed F.Deprettere1 Embedded Systems and Software Ed F. Deprettere, Todor Stefanov,...
-
Upload
noah-lewis -
Category
Documents
-
view
215 -
download
0
Transcript of 01EMBSYST2007 Ed F.Deprettere1 Embedded Systems and Software Ed F. Deprettere, Todor Stefanov,...
01EMBSYST2007 Ed F.Deprettere
1
Embedded Systems and Software
Ed F. Deprettere, Todor Stefanov, Hristo Nikolov
{edd, stefanov, nikolov}@liacs.nlLeiden Embedded Research Center
Spring 2007; Friday 1:30 p.m. – 4:00 p.m.http://www.liacs.nl/~cserc/EMBSYST/
EMBSYST2007/
01EMBSYST2007 Ed F.Deprettere
2
Introduction to course
• systems and embedded systems• history of Embedded Systems and Software• examples• complexity issue• trends and challenges• design space exploration• programming and translating• conclusions
01EMBSYST2007 Ed F.Deprettere
3
Examination
No formal written exam
Final grade (10) consists of average of three sub-grades
1. active course participation (10) 2. power-point presentation (10) 3. hands-on (10)
01EMBSYST2007 Ed F.Deprettere
4
The books1. Computers as Component, Principles of Embedded Computer Systems Design. Wayne Wolf . (Morgan Kaufman Publishers) http://www.ee.edu/~wolf/embedded-book/about.html
2. Embedded System Design. Peter Marwedel. (Kluwer) http://ls12-www.cs.uni-dortmund.de/~marwedel/kluwer-es-book
3. Embedded System Design, A Unified Hardware/Software Introduction. Frank Vahid/Tony Givargis (Wiley) http://www.ics.uci.edu/~sumitg/CadPages.html
4. Fundamentals of Embedded Software. Daniel W. Lewis (Prentice Hall) http://www.prenhall.com/divisions/esm/app/lewis/materials.html5. Embedded Multiprocessors: Scheduling and Synchronization. Sundararjan Sriram and Shuvra S. Bhattacharyya (Marcel Dekker)
01EMBSYST2007 Ed F.Deprettere
5
Systems
A system is a composition of functionalities thatjointly realize an input-output behavior in a dependableand secure manner.
Dependable system: can deliver services that arejustifiable trusted (have accepted dependences)
Secure: composite of attributes of • confidentiality (degree of confidence)• integrity (absence of improper system alteration)• availability (readiness for correct service)
Secure: behaves as intended.
01EMBSYST2007 Ed F.Deprettere
6
Dependability - Security
Dependability
Readiness Continuity Absence of Absence of Ability tofor Correct of Correct Catastrophic Improper UndergoService Service Consequences System Modification Alteration and Repair
Security
Availability Reliability Safety Integrity Maintainability Confidentiality
01EMBSYST2007 Ed F.Deprettere
7
Fault, Error, Failure
Fault : defective value in the state of component or system
Error : indication of occurrence of unspecified internal state
Failure: deviation of behavior from what is specified
fault failure error
01EMBSYST2007 Ed F.Deprettere
8
Embedded Systems
An embedded system is a • special-purpose information processing system • that is closely integrated into its environment.
Is Embedded Systems and Software interesting?
Here are the questions, opinions and answers:
Almost all embedded systems are reactive and/or real-time systems (hardware and software).
• Reactive: system maintains a permanent interaction with its environment• Real-time: reactive systems that are subject to externally defined timing constraints.
01EMBSYST2007 Ed F.Deprettere
9
Questions
What is specific to research in embedded systems and software?
or is it just the collection of many subjects …
Where are the fundamental questions?
or is it pure systems engineering with lack of methodology …
01EMBSYST2007 Ed F.Deprettere
10
Opinion it is NOT interesting
because it is not a well defined research area: it is a mixture of everything, it neglects abstraction, it is without basic scientific questions, it is case-by-case ‘engineering’ only, physicality of embedded software is messy, it is just software engineering for small
computers.
01EMBSYST2007 Ed F.Deprettere
11
Opinion it is interesting because of
complex hardware-software interfaces, heterogeneity in specifications and
implementations, complex resource dependencies and interferences, system view (algorithm, architecture, environment,
software), cross-layer design, interaction with physical environment, formal verification and validation.
01EMBSYST2007 Ed F.Deprettere
12
Answers
What is specific to research in embedded systems and software?
The impact of the environment The performance analysis in terms of delays and buffer sizes
Where are the fundamental questions? Compositionality (modularity) composability (layering)
scalability, dependability and security Design space exploration
01EMBSYST2007 Ed F.Deprettere
13
Answers (2)
Move successful concepts (like abstraction and modularity) to embedded systems
Do meaningful experiments that are carefully planned (learn from physics …)
01EMBSYST2007 Ed F.Deprettere
14
System-Level Performance Analysis
InputStream
InputStream
I/O
P
Memory Requirements?
Processor Speeds?
Timing Properties?
Bus Utilization? Bottleneck
?
01EMBSYST2007 Ed F.Deprettere
15
Difficulties
InputStream
Complex Input:- Timing (jitter, bursts, ...)- Different Event Types
Task Communication
Task Scheduling
ab acc b
01EMBSYST2007 Ed F.Deprettere
16
DifficultiesProcessor
Task
BufferInput
Stream
Task Communication
Task Scheduling
ab acc b
Complex Input:- Timing (jitter, bursts, ...)- Different Event Types
Variable Resource Availability
Variable Execution Demand- Input (different event types)- Internal State (Program, Cache, ..)
01EMBSYST2007 Ed F.Deprettere
17
Embedded Systems
powerliveness
reactivity
weight timelinesscost reliability
adaptabilityenergy
resource-awareness
predictabilitymulti-objective
01EMBSYST2007 Ed F.Deprettere
18
Abstraction
... E E E E E E ...
ProcessorTask
InputStream
Functional UnitModel
ResourceModel
Event StreamModel
Composition &Analysis
System Module
Concrete Instance
Abstract Representation
01EMBSYST2007 Ed F.Deprettere
19
HistoryIn past, embedded systems were called (embedded)controllers (micro-controllers). They appear typicallyin control dominated applications.
Examples: traffic lights, elevators, washers, dryers, vendor machines ATM machines
These are relatively simple finite state machines implemented using either micro-controllers or sequential circuits (programmablelogic arrays – PLA)
PLA
registers
inputs outputs
current state next state
01EMBSYST2007 Ed F.Deprettere
20
Product: Hunter Programmable Digital Thermostat.
Microprocessor: 4-bit
Some small examples
01EMBSYST2007 Ed F.Deprettere
21
Product:Vendo V-MAX 720 vending machine.
Microprocessor: 8-bit Motorola 68HC11.
01EMBSYST2007 Ed F.Deprettere
22
Product: Miele dishwashers.
Microprocessor: 8-bit Motorola 68HC05.
01EMBSYST2007 Ed F.Deprettere
23
Product: NASA's Mars Sojourner Rover.
Microprocessor: 8-bit Intel 80C85.
01EMBSYST2007 Ed F.Deprettere
24
Product: Sony Aibo ERS-110 Robotic Dog.
Microprocessor: 64-bit MIPS RISC.
01EMBSYST2007 Ed F.Deprettere
25
History (cont’d)
With growing complexity of applications some processing of signals was added to pure finite state machine behavior : FSMs became EFSMs(extended finite state machines).
With still more growing complexity concurrency andparallelism become important. E.g., communicating (E)FSMs. Here is what is happening.
01EMBSYST2007 Ed F.Deprettere
26
Complexity Issue
Systems can be (extremely) complex:
• wafer steppers• imaging (medical, biology, astronomy)• wafer stepper• imaging (medical, radar, telescope)• digital copiers/printers
Embedding systems – hence embedded systems – maybe (extremely) complex.
On-chip transistor density
Expected
Actual
time
app
licatio
n comp
lexity/p
erfo
rman
ce
Shared memory architecture
01EMBSYST2007 Ed F.Deprettere
27
Complexity Issue (cont’d)
• wafer stepper• imaging (medical, radar, telescope)• digital copiers/printers
Embedding systems – hence embedded systems – maybe (extremely) complex.
On-chip transistor density (Moore’s Law)
Expected
Actual
time
app
licatio
n comp
lexity/p
erfo
rman
ce
Shared memory architecture
Application complexity (Shannon Law)
01EMBSYST2007 Ed F.Deprettere
28
μP will do for small systems
For many consumer products, a single μProcessor will do.
For other systems – such as a car – a network ofμProcessors is needed.
For even larger systems – heterogeneous multi-processorEmbedded Systems are needed
01EMBSYST2007 Ed F.Deprettere
29
Heterogeneous Architectures
Heterogeneous architectures consist of programmable and dedicated components
TM
Mem
CP1 CP2
MIPS
Programmable core + SW
Dedicated coprocessor
01EMBSYST2007 Ed F.Deprettere
30
Trend in Multi-processor
• current state of art: co-processor P FPGA
• next: multi-processor
• then: heterogeneous multi-processor
P
P
P
P
Communication StructureCommunication Structure
MemMem
PE
PE ...
...
PE
PE PE
PE PE
PE
MemMemMemMem MemMem
• later: networks on chips
Identical tiles(scalable)
01EMBSYST2007 Ed F.Deprettere
31
Challenges
How to design such complex architectures?
How to program such complex architectures?
Available design tools fall short to do the job
Available programming paradigms are poor
01EMBSYST2007 Ed F.Deprettere
32
Embedded Systems and Software
The relative weight of software in the value of ES is constantly increasing.
The extensive and increasing use of ESS and their integrationin every day products marks a significant evolution in informationprocessing, science, and technology.
Strategic shift from simply achieving feasibility to achieving optimality,meaning: • targetting a given market segment at low cost and fast delivery time• seamless integration with physical environment while respecting real- world constraints (deadlines, reliability, availability, robustness, power consumption, and cost).
Multidisciplinary (general computer science and engineering,real-time computing, system architecture, control and signal processing, security and privacy, networking, mathematics, electronics).
01EMBSYST2007 Ed F.Deprettere
33
Example: Trimedia
VLIWcpu
I$
video-in
video-out
audio-in
SDRAM
audio-out
PCI bridge
Serial I/O
timers I2C I/O
D$
Programmable core
peripheralsOff-chip memory
High-way bus
01EMBSYST2007 Ed F.Deprettere
34
Application domainsApplications as shown are from a particularapplication domain called streaming data applications
Audio, image processing, video, graphics, etc
The peripherals take care of the (input and output) data streams
The programmable core does the processing of the data in thestreams. The Trimedia shown is a first generation processor(later generations have more parallel processing capabilities;see later).
The programmable core is a so-called very large instruction wordarchitecture: parts of a long instruction are interpreted and executed byissue slots that operate in parallel. The VLIW architecture relieson a compiler as do all general purpose processors.
01EMBSYST2007 Ed F.Deprettere
35
TriMedia CPU64 Architecture
datacache16KB
datacache16KB
mmummu
mmummu
64-bitmemory
bus multi-port 128 words x 64 bits register filemulti-port 128 words x 64 bits register file
FUFU FUFU FUFU FUFUFUFU
instructioncache32 KB
instructioncache32 KB
mmummu
bypass networkbypass network
PCPCexceptions exceptions
32-bitperipheral
bus
VLIW instruction decode and launchIssue slots
Very large instruction words
01EMBSYST2007 Ed F.Deprettere
36
(Embedded) System (cont’d)
In this course we envision an (embedded) system asthe triple < application, architecture, mapping>and an (embedded) system model as the triple < application model, architecture model, mapping transformations>
This is compliant with the separation of concernsprinciple (See later).
01EMBSYST2007 Ed F.Deprettere
37
Design Space Exploration
Application Architecture
Mapping
Analysis
(Semi-) AutomatedDesign SpaceExploration
01EMBSYST2007 Ed F.Deprettere
38
Maximize (y1, y2, …, yk) = (x1, x2, …,
xn)y2
y1
Pareto optimal = not dominated
dominated
y2
y1
worse
better
incomparable
incomparable
01EMBSYST2007 Ed F.Deprettere
39
Single vs. Multiple Optimization
cost
performance
single objective
total order
single optimum
multipleobjectives
partial order
multiple optima
01EMBSYST2007 Ed F.Deprettere
40
Design Space Exploration
194 195 196 197 198 199 200 201 202 8.6
8.8
9
9.2
9.4
9.6
9.8
10x 10
area
cy
cle
s
Vary # functional units (issue slots)
Vary allocation of functions
Cost model of functional units
Pareto points
01EMBSYST2007 Ed F.Deprettere
41
Some other trends
1. Move from central processing to distributed processing2. Plug and play standardization (HW and SW)3. Smart devices/cards4. Ubiquitous computing
Distributed on-chip and off-chip
What is common in PC world will be so in others (e.g., TV;- but: reliability is a major issue)
There are many (see RFIDs Scientific American, Jan. 2004)
See http://ubiq.com/hypertext/weiser/UbiHome.html
Sensor networks
01EMBSYST2007 Ed F.Deprettere
42
sensor networks (civil engineering, buildings, environmental monitoring, traffic, emergency situations)
smart products, wearable/ubiquitous computing
01EMBSYST2007 Ed F.Deprettere
43
Programming/translating
Application
Programmable Interconnect (NoC)Programmable Interconnect (NoC)
IPcore
IPcore
RP
UR
PU
Mem
oryM
emory
CP
UC
PU
Micro
Processor
Micro
Processor
MemoryMemory
...
Programming
P1 P2
S1Source
P3 P4
Sink
Parallel (Compaan PN) Application Specification
EASY to map
DIFFICULT to specify
for j = 1:1:N, [x(j)] = Source1( ); endfor i = 1:1:K, [y(i)] = Source2( ); endfor j = 1:1:N, for i = 1:1:K,
[y(i), x(j)] = F( y(i), x(j) ); endendfor i = 1:1:K, [Out(i)] = Sink( y( I ) ); end
Sequential Application Specification
EASY to specify
DIFFICULT to map
Compaan
Laura
01EMBSYST2007 Ed F.Deprettere
44
And down (an example)CPN
Network of Virtual Processors
CPNtoPlatform
Mapping
Library ofIP cores
Network of Synthesizable Processors
Verilog SystemCVHDL
Platform dependent
Platform Independent
01EMBSYST2007 Ed F.Deprettere
45
ConclusionChallenges in Embedded Systems and Software
• New Applications
huge demands for computation, communication, and memory multiple applications in resource-constrained system• Heterogeneous multi-processor HW/SW platforms• Programming of multi-processor platforms
automated code transformations guaranteed real-time constraints dynamism in applications, in SW, in HW (migration/configuration)
• New paradigms raising level of abstraction re-use, interfaces, integration platform based (software and hardware platforms) dependability and security
01EMBSYST2007 Ed F.Deprettere
46
Conclusion (cont’d)
There is a need of modeling applications andarchitectures at abstract levels.
And a need of transformations to map applications toparallel implementations
In other words, a need of a theory of embedded systems.