DR. UMAR SHAHBAZ [email protected]
Digital Logic Design Computer Architecture Programming Microcontrollers
Introduction to Embedded Systems Processor Technology Single purpose and General purpose
processors Embedded Systems Hardware and
Software Interfacing IC Technology Design Technology
Programmable logic devices like, Programmable array logic (PAL) Programmable logic array (PLA), complex Programming logic device (CPLD), Application Specific Integrated Circuits (ASIC) and Field Programmable Gate Arrays (FPGA)
Software for embedded systems: Introduction to development environment: FPGA development kit (Spartan-III), Introduction to Verilog
Development of various applications like Mux, Demux, counters, registers, ALU etc
Embedded System Design: A unified Hardware/Software Introduction. By Frank Vahid & Tony D. Givarigis
Computer Architecture, A Quantitative approach by Dr. David A. Patterson and Dr. Paul Hennessey, - Digital Computer Electronics by Malvino & Brown.
Embedded System Design. Hardware/ Software System, by P. Marwedel
FPGA prototyping by VHDL examples: Xilinx Spartan-3 version, By Pong P. Chu - Wiley-Interscience.
Quiz : 10% Assignment: 05% Projects : 05% 2 x Sessional Exams: 30% Final Exam : 50 %
An electronic device that includes a programmable computer, but is not itself intended to be a general-purpose computer
It is not your desktop PC or portable PC. Some examples are Fax machines Digital cameras Mobile phones etc.
Millions of desktop PCs are manufactured every year
Billions of embedded computer systems are manufactured every year
A combination of hardware and software which together form a component of a larger machine. An embedded system is designed to run on its own without human intervention, and may be required to respond to events in real time. Embedded systems are used in industrial machines, automobiles, medical equipment, cameras, household appliances, airplanes, vending machines, cellular phone, PDA’s, toys and many other devices.
Microcontroller
CCD preprocessor Pixel coprocessorA2D
D2A
JPEG codec
DMA controller
Memory controller ISA bus interface UART LCD ctrl
Display ctrl
Multiplier/Accum
Digital camera chip
lens
CCD
Single-functioned -- always a digital cameraTightly-constrained -- Low cost, low power, small, fastReactive and real-time -- only to a small extent
This top of the range car may contain more than 200 dedicated embedded systems
Definition: Mechatronics is the synergistic combination of precision mechanical engineering, electronic controls and systems engineering in the design of products and processes
Embedded Sensors/actuators/ processors are integral parts of mechatronic systems
Dedicated to specific tasks Real-time constraints Cost sensitive Power sensitive Short design times Harsh operating environments Fail-safe operations
Restricted design and development tools Sophisticated algorithms Complex and reactive user interfaces Complex testing requirements
How much “hardware” do we need? How much “software” do we need? What is the optimum balance between
hardware and software? How do we meet operational deadlines? How do we minimize power consumption? How do we design for upgradeability? How do we convince people that the
system works properly?
Unit cost: the monetary cost of manufacturing each copy of the system, excluding NRE cost
NRE cost (Non-Recurring Engineering cost): The one-time monetary cost of designing the system.
Size: the physical space required by the system.
Performance: the execution time or throughput of the system.
Power: the amount of power consumed by the system.
Flexibility: the ability to change the functionality of the system without incurring heavy NRE cost
Time-to-prototype: the time needed to build a working version of the system.
Time-to-market: the time required to develop a system to the point that it can be released and sold to customers.
Maintainability: the ability to modify the system after its initial release
Correctness, safety, many more Improving one design metric may worsen
other
The hardware and software are normally developed together in order to satisfy the system requirements: Correct functionality Cost Size Performance Power consumption Time-to-Market etc.
Real Time Systems are typically monitoring and/or control systems The external environment (system or
machine) is often termed the Controlled System
The Real Time System (including its hardware/OS) is known as the Controlling System
Surface to air missiles Detect aircraft, initiate launch, track target.... bang!
Cardiac Pacemaker Sense heartbeat Deliver electrical stimulus to heart on basis of sensed
„heart events‟ Rate of stimulation and duration of stimulus controlled
by the system Digital cellular telephony
Compress/ decompress speech, error coding, manage radio transmission, manage power consumption
Like many Real Time Systems, above are all embedded in some larger system that they control
Processor technology
IC technology
Design technology
The architecture of the computation engine used to implement a system’s desired functionality
Application-specific
Registers
CustomALU
DatapathController
Program memory
Assembly code for: total = 0 for i =1 to …
Control logic and State register
Datamemory
IR PC
Single-purpose (“hardware”)
DatapathController
Control logic
State register
Datamemory
index
total
+
IR PC
Registerfile
GeneralALU
DatapathController
Program memory
Assembly code for:
total = 0 for i =1 to …
Control logic and State
register
Datamemory
General-purpose (“software”)
Programmable device used in a variety of applications Also known as
“microprocessor” Features
Program memory General datapath with large
register file and general ALU User benefits
Low time-to-market and NRE costs
High flexibility “Pentium” the most well-
known, but there are hundreds of others
IR PC
Registerfile
GeneralALU
DatapathController
Program memory
Assembly code for:
total = 0 for i =1 to …
Control logic and
State register
Datamemory
Digital circuit designed to execute exactly one program a.k.a. coprocessor, accelerator or
peripheral Features
Contains only the components needed to execute a single program
No program memory Benefits
Fast Low power Small size
DatapathController
Control logic
State register
Datamemory
index
total
+
Programmable processor optimized for a particular class of applications having common characteristics Compromise between general-
purpose and single-purpose processors
Features Program memory Optimized datapath Special functional units
Benefits Some flexibility, good performance,
size and power
IR PC
Registers
CustomALU
DatapathController
Program memory
Assembly code for:
total = 0 for i =1 to …
Control logic and
State register
Datamemory
The manner in which a digital (gate-level) implementation is mapped onto an IC IC: Integrated circuit, or “chip” IC technologies differ in their
customization to a design IC’s consist of numerous layers (perhaps
10 or more) IC technologies differ with respect to who
builds each layer and when
source drainchanneloxidegate
Silicon substrate
IC package IC
Full-custom/VLSI
Semi-custom ASIC (gate array and standard cell)
PLD (Programmable Logic Device)
Full custom IC design often referred to as Very Large Scale Integration (VLSI) design.
All layers are optimized for an embedded system’s particular digital implementation Placing transistors Sizing transistors Routing wires
Benefits Excellent performance, small size, low power
Drawbacks High NRE cost (e.g., $300k), long time-to-market
28
Very Large Scale Integration (VLSI) Placement
Place and orient transistors Routing
Connect transistors Sizing
Make fat, fast wires or thin, slow wires May also need to size buffer
Design Rules “simple” rules for correct circuit function
Metal/metal spacing, min poly width…
Also referred to as Application-specific IC (ASIC).
Lower layers are fully or partially built Designers are left with routing of wires and maybe
placing some blocks Benefits
Good performance, good size, less NRE cost than a full-custom implementation (perhaps $10k to $100k)
Drawbacks Still require weeks to months to develop
30
Gate Array Array of prefabricated gates “place” and route Higher density, faster time-to-market Does not integrate as well with full-custom
Standard Cell A library of pre-designed cell Place and route Lower density, higher complexity Integrate great with full-custom
31
Most popular design style
Jack of all trade Good
Power, time-to-market, performance, NRE cost, per-unit cost, area…
Master of none Integrate with full custom
for critical regions of design
33
Programmable Logic Device Programmable Logic Array, Programmable Array Logic, Field
Programmable Gate Array All layers already exist
Designers can purchase an IC To implement desired functionality
Connections on the IC are either created or destroyed to implement Benefits
Very low NRE costs Great time to market
Drawback High unit cost, bad for large volume Power
Except special PLA slower
1600 usable gate, 7.5 ns$7 list price
34
The most important trend in embedded systems Predicted in 1965 by Intel co-founder Gordon
Moore IC transistor capacity has doubled roughly
every 18 months for the past several decades
10,000
1,000
100
10
1
0.1
0.01
0.001
Logic transistors per chip
(in millions)
1981
1983
1985
1987
1989
1991
1993
1995
1997
1999
2001
2003
2005
2007
2009
The manner in which we convert our concept of desired system functionality into an implementation
Libraries/IP: Incorporates pre-designed implementation from lower abstraction level into higher level.
Systemspecification
Behavioralspecification
RTspecification
Logicspecification
To final implementation
Compilation/Synthesis: Automates exploration and insertion of implementation details for lower level.
Test/Verification: Ensures correct functionality at each level, thus reducing costly iterations between levels.
Compilation/Synthesis
Libraries/IP
Test/Verification
Systemsynthesis
Behaviorsynthesis
RTsynthesis
Logicsynthesis
Hw/Sw/OS
Cores
RTcomponents
Gates/Cells
Model simulate./checkers
Hw-Swco simulators
HDL simulators
Gate simulators
Exponential increase over the past few decades
100,000
10,000
1,000
100
10
1
0.1
0.01
1983
1981
1987
1989
1991
1993
1985
1995
1997
1999
2001
2003
2005
2007
2009
Pro
duct
ivit
y(K
) T
rans
./Sta
ff –
Mo.
In the past: Hardware and software
design technologies were very different
Recent maturation of synthesis enables a unified view of hardware and software
Hardware/software “co design”
The choice of hardware versus software for a particular function is simply a tradeoff among various design metrics, like performance, power, size, NRE cost, and especially flexibility;
there is no fundamental difference between what hardware or software can implement.
Implementation
Assembly instructions
Machine instructions
Register transfers
Compilers(1960's,1970's)
Assemblers, linkers(1950's, 1960's)
Behavioral synthesis(1990's)
RT synthesis(1980's, 1990's)
Logic synthesis(1970's, 1980's)
Microprocessor plus program bits: “software”
VLSI, ASIC, or PLD implementation: “hardware”
Logic gates
Logic equations / FSM's
Sequential program code (e.g., C, VHDL)
Basic tradeoff General vs. custom With respect to processor technology or IC technology The two technologies are independent
General-purpose
processor
ASIPSingle-purpose
processor
Semi-customPLD Full-custom
General,providing improved:
Customized, providing improved:
Power efficiencyPerformance
SizeCost (high volume)
FlexibilityMaintainability
NRE costTime- to-prototype
Time-to-marketCost (low volume)
While designer productivity has grown at an impressive rate over the past decades, the rate of improvement has not kept pace with chip capacity
10,000
1,000
100
10
1
0.1
0.01
0.001
Logic transistors per chip
(in millions)
100,000
10,000
1000
100
10
1
0.1
0.01
Productivity(K) Trans./Staff-Mo.
1981
1983
1985
1987
1989
1991
1993
1995
1997
1999
2001
2003
2005
2007
2009
IC capacity
productivity
Gap
Adaptive Cruise Control Drive by wire XM Satellite Radio Telematics (OnStar) Software drive train Software body control Rain-sensing Wipers
In-vehicle entertainment Generation II ABS Heads-up display Night Vision Back-up collision sensor Navigation Tire Pressure Monitor
Gasoline to hybrid to fuel cell Mechanical connection to “Drive-by-wire” Proprietary electrical/hardware/software system to
standardized “architectures” Adoption and implementation of IT standards in the
technology of the car (XML, Web Services, etc.) “On-demand” to “Always-on” vehicle connectivity to the
Internet
Measuring physical variables (sensing) Storing data Processing sensor signals and data Influencing physical variables
(actuating) Monitoring, Supervision Enable manual and automatic
operation
Top Related