Download presentation
Presentation is loading. Please wait.
Published byBritton Long Modified over 8 years ago
1
Embedded Systems MPSoC Architectures Challenges and Architectures Alberto Bosio bosio@lirmm.fr
2
2 What is an Embedded System? ● Definition from wikipedia: ● An embedded system is a computer system designed for specific control functions within a larger system, often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. By contrast, a general-purpose computer, such as a personal computer (PC), is designed to be flexible and to meet a wide range of end-user needs. Embedded systems control many devices in common use today.
3
3 A Shorter Definition ● Embedded Systems: Information processing systems that are: ● application domain specific (not general purpose) ● tightly coupled to their environment
4
4 Definition ● What they do: ● Sense environment (input signals) ● Process input information ● Respond in real- time (output signals)
5
5 Definitions ● In Embedded Systems time matters: ● NOT in the sense that information processing should be always very fast BUT in the sense that information processing should be: ● determinate and time predictable
6
6 Examples ● Examples: ● Audio (MP3,...); Video (digital camera,...) ; Home electronics (washing machine, microwave cooker/oven,...)
7
7 Examples ● Functions by embedded processing: ● ABS: Anti-lock braking systems ● ESP: Electronic stability control ● Efficient automatic gearboxes ● Theft prevention with smart keys ● Blind-angle alert systems ● Airbags ●... etc... ● Multiple Networks ● Body, engine, ● media, safety ● Multiple Processors ● Up to 100 ● Networked together
8
8 Examples ● Information systems ● Wireless communication ● Mobile phone ● Wireless LAN ● ambulance, rescue staff ● Geo-positioning systems ● Navigation
9
9 Examples ● Robotics
10
10 Examples
11
11 Characteristics ● Must be dependable ● Reliability: R(t) = probability of a system working correctly at time t provided that it was working at t = 0 ● Maintainability: M(d) = probability of a system working correctly d time units after error occurred ● Availability: A(t) = probability of system working at time t ● Safety: no harm to be caused by failing system ● Security: confidential and authentic communication
12
12 Characteristics ● Must be dependable ● Reliability: R(t) = probability of a system working correctly at time t provided that it was working at t = 0 ● Maintainability: M(d) = probability of a system working correctly d time units after error occurred ● Availability: A(t) = probability of system working at time t ● Safety: no harm to be caused by failing system ● Security: confidential and authentic communication -Even perfectly designed systems can fail if the assumptions about the workload and possible errors turn out to be wrong. -Making the system dependable must not be an after-thought, it must be considered from the very beginning.
13
13 Characteristics ● Energy efficient ● Many ES are mobile systems powered by batteries ● Customers expect long run-times from batteries but ● Battery technology improves at a very slow rate ● Code-size efficient (especially for systems on a chip) ● Typically there are no hard discs or huge memories to store code ● Run-time efficient ● Meet time constraints with least amount of HW resources and energy – only necessary HW should be present working at as low as possible Vdd and fclk ● Weight efficient (especially for portable ES) ● Cost efficient (especially for high-volume ES)
14
14 Comparison ● Embedded Systems ● Execute few applications that are known at design- time ● Non programmable by the end user ● Fixed run-time requirements (additional computing power not useful) ● Important criteria ● Cost ● Power consumption ● Predictability. ● General Purpose Systems ● Execute broad class of applications ● Programmable by the end user ● Faster is better ● Important criteria ● Cost ● Average speed
15
15 Trends ● In the past Embedded Systems were called Embedded (micro-)Controllers ● They appeared typically in control dominated applications: ● Traffic lights control ● Elevators control ● Washing machines and dishwashers ●... ● They were implemented using a single μProcessor or dedicated HW (sequential circuit)
16
16 Trends: Towards Multi-Processor Systems ● A single uProcessor is sufficient for some consumer products ● Application performance demands relatively low ● For other systems – such as cars and aircrafts – a network of processors is needed ● Due to performance requirements ● Due to safety requirements (a single failed component should not cause total system failure) ● For some systems – such as mobile devices – a network of heterogeneous processors is needed ● Due to run-time efficiency requirements ● Due to power efficiency
17
17 Trends: Towards Multi-Processor Systems ● Why multi-processor? ● How can we increase CPU performances? – Increase clock frequency (thanks to the integration)
18
18 Trends: Towards Multi-Processor Systems ● The other solutions to increase the computational power are: ● Pipeline ● Parallelism
19
19 Actual Facts
20
20 Multi-core architectures
21
21 Multi-core architectures ● Already popular in personal computers (primarily from Intel and AMD) and game consoles ● e.g., the eight-core Cell processor in the PlayStation3 and the three-core Xenon processor in the Xbox 360 ● Now well-established in embedded processors – such as network processors and digital signal processors ● And in Graphics Processing Units(GPUs)
22
22 Multi-core architectures ● Fundamental advantage: – Different CPUs are very close to each other – Signals do NOT travel off chip – faster propagation – very high operating frequency and interconnection bandwidth – faster management of cache coherence Save area on the Printed Circuit Board (PCB) compared to multi-chip symmetric multiprocessors Also,save power: A dual-core consumes less power than two uniprocessors Cores share some circuitry, such as Level-2caches Especially advantageous for CPU-intensive processes – like antivirus scans and media processing
23
23 Multi-core architectures ● CPU manufacturers moving to multi-core designs ● Intel offers two, four or eight core chips with more to come – Sun Microsystems has chips with up to 64 cores – AMD has its quad-core chip (and others), etc. The future belongs to multi-core systems – especially in the server marketplace. But...parallelism is difficult to exploit! – writing parallel programs is much harder – parallel architectures, compilers, and programmers have been researched for many decades
24
24 Multi-core architectures: limitations ● Memory bandwidth ● – all cores must share access to the same memory and therefore have to take turns to read from or write it I/O speed – if a disk can read only 40MB/sec (a common figure even for a fast laptop hard drive), then a program that needs to read a 400MB file will take a minimum of 10 seconds to open it, even if it has no computation to do Software and scalability – software is frequently not written to take advantage of multiple cores efficiently – technically challenging to write bug-free, efficient threaded code – highly scalable programs are difficult to build
25
25 Flexibility for Multicores: MPSoCs
26
26 Alternative approaches
27
27 Solutions spectrum
28
28 Platform vs full-custom
29
29 Platform-based design (reduces cost)
30
30 SoC Design process
31
31 Design challenges for MPSoCs
32
32 Design challenges for MPSoCs
33
33 Design challenges for MPSoCs ● Memory system optimizations – Cache : everything ( placement, replacement, allocation and WB) is managed by hardware. – vs Scratchpad approach: everything is managed by software: simpler hardware – Servers, general purpose systems use caches. – Important for ensuring real time property. – Complexity increases with applications. – Worst case time is more tightly bound.
34
34 Conclusions ● Embedded Systems are composed of several microprocessor ● To increase performances ● To increase reliability ● How to program such devices? ● How to measure reliability?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.