Overview of Embedded Computing Systems - PowerPoint PPT Presentation

1 / 57
About This Presentation
Title:

Overview of Embedded Computing Systems

Description:

Slide courtesy of Mani Srivastava. Chips Everywhere! CMOS Camera. SmartPen. Source: Dr. K. Pister, UC Berkeley. Chips that Fly? ... – PowerPoint PPT presentation

Number of Views:116
Avg rating:3.0/5.0
Slides: 58
Provided by: manisri
Category:

less

Transcript and Presenter's Notes

Title: Overview of Embedded Computing Systems


1
Overview of Embedded Computing Systems
  • ECE 253 Winter 2007
  • Lecture 1
  • Ryan Kastner
  • January 17, 2007

2
What is an Embedded Computing System?
3
Example Embedded Computing Systems
Slide courtesy of Mani Srivastava?
4
Chips Everywhere!
Slide courtesy of Alberto Sangiovanni-Vincentelli?
5
More Embedded Systems
Camera-on-chip (Bell Labs)
Solar-power Wireless Sensor (Berkeley)
Slide courtesy of Mani Srivastava?
6
Electronics and the Car
  • More than 30 of the cost of a car is now in
    Electronics
  • 90 of all innovations will be based on
    electronic systems

Slide courtesy of Alberto Sangiovanni-Vincentelli?
7
More Examples...
  • Signal processing systems
  • radar, sonar, real-time video, set-top boxes, DVD
    players, medical equipment, residential gateways
  • Mission critical systems
  • avionics, space-craft control, nuclear plant
    control
  • Distributed control
  • network routers switches, mass transit systems,
    elevators in large buildings
  • Small systems
  • cellular phones, pagers, home appliances, toys,
    smart cards, MP3 players, PDAs, digital cameras
    and camcorders, sensors, smart badges

Slide courtesy of Mani Srivastava?
8
Typical Characteristics of Embedded Systems
  • Part of a larger system
  • not a computer with keyboard, display, etc.
  • HW SW do application-specific function not
    G.P.
  • application is known a priori
  • but definition and development concurrent
  • Some degree of re-programmability is essential
  • flexibility in upgrading, bug fixing, product
    differentiation, product customization
  • Interact (sense, manipulate, communicate) with
    the external world
  • Never terminate (ideally) fundamentally
    different from TM
  • Operation is time constrained latency,
    throughput
  • Other constraints power, size, weight, heat,
    reliability etc.
  • Increasingly high-performance (DSP) networked

Slide courtesy of Mani Srivastava?
9
Key Recent Trends
  • Increasing computation demands
  • e.g. multimedia processing in set-top boxes, HDTV
  • Increasingly networked
  • to eliminate host, and remotely monitor/debug
  • embedded Web servers
  • e.g. IQEye camera
  • e.g. Mercedes car with web server
  • embedded Java virtual machines
  • e.g. Java ring, smart cards, printers
  • cameras, disks etc. that sit directly on networks
  • Increasing need for flexibility
  • time-to-market under ever changing standards!
  • Need careful co-design of h/w s/w!

Slide courtesy of Mani Srivastava?
10
Why do we care? Some Market Tidbits...
  • Specialized devices and information appliances
    are replacing the generalist PC
  • variety of forms set-top boxes, fixed-screen
    phones, smart mobile phones, PDAs, NCs, etc.
  • IDC predicted that by 2002 gt 50 of inter access
    devices will be such into appliances and not PCs
  • In 1997, 96 of internet access devices sold in
    the US were PCs
  • By 2004, unit shipments will exceed those of PCs
  • Traditional systems becoming dependent on
    computation systems
  • Modern cars up to 100 processors running
    complex software
  • engine emissions control, stability traction
    control, diagnostics, gearless automatic
    transmission
  • http//www.howstuffworks.com/car-computer.htm
  • An indicator where are the CPUs being used?

Slide courtesy of Mani Srivastava?
11
Where are the CPUs?
  • Estimated 98 of 8 Billion CPUs produced in 2000
    used for embedded apps

12
What are the Metrics to Optimize?
13
Whats Important Shifts in Technology Metrics
  • Display (human-computer interface)
  • More ubiquitous I/Os (e.g., MEMS sensors
    actuators) and modalities (speech, vision, image)
  • How to Quantify?
  • Connectivity (computer-computer interface)
  • Not bandwidth but scaled ubiquity
  • Million accesses (wired and wireless) per day
  • Computing (processing capacity)
  • Unbounded capacity utility functionality (very
    high mean time to unavailable, gracefully
    degraded capability acceptable)

14
Whats Important Shifts in User/Applications
Metrics
  • Cost Human Effort
  • Save time
  • Reduce effort
  • The Next Power Tools
  • Leveraging other peoples effort/expertise
  • e.g., What did Dave read about disk prices?
  • e.g., What did people who buy this book also
    buy?

15
What kind of processor?
16
Traditional Software Embedded Systems CPU
RTOS
Slide courtesy of Mani Srivastava?
17
Many Types of Programmable Processors
  • Past
  • Microprocessor
  • Microcontroller
  • DSP
  • Graphics Processor
  • Now / Future
  • Network Processor
  • Sensor Processor
  • Cryptoprocessor
  • Game Processor
  • Wearable Processor
  • Mobile Processor

Slide courtesy of Mani Srivastava?
18
Example Network Processor
  • Good News
  • Processor Power
  • 2 years - 3 X
  • Better News
  • Optical Bandwidth
  • 2 years - 10 X
  • Bad News
  • Handling increased complexity

Routing Switches Firewall Boxes Traffic
Shapers Aggregation Nodes Edge Routers Media
Servers
Slide courtesy of Mani Srivastava?
19
Application-Specific Instruction Processors
(ASIPs)
  • Processors with instruction-sets tailored to
    specific applications or application domains
  • instruction-set generation as part of synthesis
  • e.g. Tensilica
  • Pluses
  • customization yields lower area, power etc.
  • Minuses
  • higher h/w s/w development overhead
  • design, compilers, debuggers
  • higher time to market

Slide courtesy of Mani Srivastava?
20
Traditional Hardware Embedded Systems ASIC
ASIC Features Area 4.6 mm x 5.1 mm Speed 20 MHz
_at_ 10 Mcps Technology HP 0.5 mm Power 16 mW -
120 mW (mode dependent) _at_ 20 MHz, 3.3 V Avg.
Acquisition Time 10 ms to 300 ms
  • A direct sequence spread spectrum (DSSS) receiver
    ASIC

Slide courtesy of Mani Srivastava?
21
Reconfigurable Hardware
Main Entry configure Pronunciation
kn-'fi-gyr Function transitive verb to set
up for operation especially in a particular
way
Main Entry re- Function prefix 1 again anew
ltretellgt 2 back backward ltrecallgt
KEY ADVANTAGE Performance of Hardware,
Flexibility of Software
22
FPGA
CLB
Switchbox
Routing Channel
IOB
Routing Channel
Configuration Bit
23
FPGA
24
Programmable Logic
Tracks
Logic Element
  • Each logic element outputs one data bit
  • Interconnect programmable between elements
  • Interconnect tracks grouped into channels

25
Lookup Table (LUT)
2-LUT
  • Program configuration bits for required
    functionality
  • Computes any 2-input function

In Out 00 0 01 0 10 0 11 1
A
CA ? B
B
Configuration Bit 0
Configuration Bit 1
C
Configuration Bit 2
Configuration Bit 3
A
B
26
Lookup Table (LUT)
  • K-LUT -- K input lookup table
  • Any function of K inputs by programming table
  • Load bits into table
  • 2N bits to describe functions
  • gt different functions

27
Lookup Table (LUT)
K-LUT (typical k4) w/ optional output
Flip-Flop
28
Lookup Table (LUT)
  • Single configuration bit for each
  • LUT bit
  • Interconnect point/option
  • Flip-flop select

29
Configurable Logic Block (CLB)
30
Programmable Interconnect
  • Interconnect architecture
  • Fast local interconnect
  • Horizontal and vertical lines of various lengths

31
Switchbox Operation
Before Programming
After Programming
  • 6 pass transistors per switchbox interconnect
    point
  • Pass transistors act as programmable switches
  • Pass transistor gates are driven by configuration
    memory cells

32
Programmable Interconnect
33
Programmable Interconnect
25
34
Embedded Functional Units
  • Fixed, fast multipliers
  • MAC, Shifters, counters
  • Hard/soft processor cores
  • PowerPC
  • Nios
  • Microblaze
  • Memory
  • Block RAM
  • Various sizes and distributions

35
Embedded RAM
  • Xilinx Block SelectRAM
  • 18Kb dual-port RAM arranged in columns
  • Altera TriMatrix Dual-Port RAM
  • M512 512 x 1
  • M4K 4096 x 1
  • M-RAM 64K x 8

36
Xilinx Virtex-II Pro
  • 1 to 4 PowerPCs
  • 4 to 16 multi-gigabit transceivers
  • 12 to 216 multipliers
  • 3,000 to 50,000 logic cells
  • 200k to 4M bits RAM
  • 204 to 852 I/Os
  • Up to 16 serial transceivers
  • 622 Mbps to 3.125 Gbps

PowerPCs
Logic cells
37
Altera Stratix
38
Modern Embedded Systems?
  • Embedded systems employ a combination of
  • application-specific h/w (boards, ASICs, FPGAs
    etc.)
  • performance, low power
  • s/w on prog. processors DSPs, ?controllers etc.
  • flexibility, complexity
  • mechanical transducers and actuators

Slide courtesy of Mani Srivastava?
39
Complexity and Heterogeneity
controller processes
control panel
Real-time OS
ASIC
?controller
UI processes
DSP Assembly Code
Programmable DSP
Programmable DSP
DSP Assembly Code
CODEC
Dual-ported RAM
  • Heterogeneity within H/W S/W parts as well
  • S/W control oriented, DSP oriented
  • H/W ASICs, COTS ICs

Slide courtesy of Mani Srivastava?
40
Handling Heterogeneity
Slide courtesy of Edward Lee?
41
Increasingly on the Same Chip System on a Chip
(SOC)
Slide courtesy of Mani Srivastava?
42
Industrial Structure Shift (from Sony)
Slide courtesy of Mani Srivastava?
43
Reconfigurable SoC
Other Examples Atmels FPSLIC(AVR
FPGA) Alteras Nios(configurable RISC on a PLD)
  • Triscends A7 CSoC

Slide courtesy of Mani Srivastava?
44
Many Implementation Choices
  • Microprocessors
  • Domain-specific processors
  • DSP
  • Network processors
  • Microcontrollers
  • ASIPs
  • Reconfigurable SoC
  • FPGA
  • Gatearray
  • ASIC

Speed
Power
Cost
High Low Volume
Slide courtesy of Mani Srivastava?
45
Hardware vs. Software Modules
  • Hardware functionality implemented via a custom
    architecture (e.g. datapath FSM)
  • Software functionality implemented in software
    on a programmable processor
  • Key differences
  • Multiplexing
  • software modules multiplexed with others on a
    processor
  • e.g. using an OS
  • hardware modules are typically mapped
    individually on dedicated hardware
  • Concurrency
  • processors usually have one thread of control
  • dedicated hardware often has concurrent datapaths

Slide courtesy of Mani Srivastava?
46
Hardware-Software Architecture
  • A significant part of the problem is deciding
    which parts should be in software on programmable
    processors, and which in specialized hardware
  • Today
  • Ad hoc approaches based on earlier experience
    with similar products, on manual design
  • HW-SW partitioning decided at the beginning, and
    then designs proceed separately

Slide courtesy of Mani Srivastava?
47
Embedded System Design
  • CAD tools take care of hardware fairly well
  • Although a productivity gap emerging
  • But, software is a different story
  • HLLs such as C help, but cant cope with
    complexity and performance constraints
  • Holy Grail for Tools People H/W-like synthesis
    verification from a behavior description of the
    whole system at a high level of abstraction using
    formal computation models

Slide courtesy of Mani Srivastava?
48
Productivity Gap in Hardware Design
A growing gap between design complexity and
design productivity
Slide courtesy of Alberto Sangiovanni-Vincentelli?
49
Situation Worse in S/W
DoD Embedded System Costs
Billion /Year
Slide courtesy of Mani Srivastava?
50
Embedded System Design from a Design Technology
Perspective
  • Intertwined subtasks
  • Specification/modeling
  • H/W S/W partitioning
  • Scheduling resource allocations
  • H/W S/W implementation
  • Verification debugging
  • Crucial is the co-design and joint optimization
    of hardware and software

Slide courtesy of Mani Srivastava?
51
Embedded System Design Flow
  • Modeling
  • the system to be designed, and experimenting
    with algorithms involved
  • Refining (or partitioning)
  • the function to be implemented into smaller,
    interacting pieces
  • HW-SW partitioning Allocating
  • elements in the refined model to either (1) HW
    units, or (2) SW running on custom hardware or a
    suitable programmable processor.
  • Scheduling
  • the times at which the functions are executed.
    This is important when several modules in the
    partition share a single hardware unit.
  • Mapping (Implementing)
  • a functional description into (1) software that
    runs on a processor or (2) a collection of
    custom, semi-custom, or commodity HW.

Slide courtesy of Mani Srivastava?
52
On-going Paradigm Shift in Embedded System Design
  • Change in business model due to SoCs
  • Currently many IC companies have a chance to sell
    devices for a single board
  • In future, a single vendor will create a
    System-on-Chip
  • But, how will it have knowledge of all the
    domains?
  • Component-based design
  • Components encapsulate the intellectual property
  • Platforms
  • Integrated HW/SW/IP
  • Application focus
  • Rapid low-cost customization

Slide courtesy of Mani Srivastava?
53
IP-based Design
Slide courtesy of Mani Srivastava?
54
Map from Behavior to Architecture
Slide courtesy of Mani Srivastava?
55
Behavior Vs. Architecture
Performance models Emb. SW, comm. and comp.
resources
Models of Computation
1
HW/SW partitioning, Scheduling
2
System Behavior
System Architecture
Mapping
Behavior Simulation
3
SW estimation
Performance Simulation
Synthesis
Communication Refinement
4
Flow To Implementation
Slide courtesy of Alberto Sangiovanni-Vincentelli?
56
Course Plan
  • Design Specification
  • Models of Computation
  • Design Languages
  • Architecture optimization
  • HW/SW partitioning
  • Hardware compilation
  • Embedded System Synthesis

57
Class Projects
Write a Comment
User Comments (0)
About PowerShow.com