01 Big Picture
01 Big Picture
01 Big Picture
Sandip Kundu
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
Sophisticated functionality.
Real-time operation.
operation
Low manufacturing cost.
Low power.
Designed to tight deadlines by
small teams.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
Definition
Embeddedsystem:anydevicethatincludesaprogrammable
y
y
p g
computerbutisnotitselfageneralpurposecomputer.
Takeadvantageofapplicationcharacteristicstooptimizethe
design:
dontneedallthegeneralpurposebellsandwhistles.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
CPU
embedded
computer
ECE 354 Moritz 2011,
output
analog
inp t
input
analog
mem
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
Examples
Personaldigitalassistant(PDA).
g
(
)
Printer.
Cell phone.
Cellphone.
Automobile:engine,brakes,dash,etc.
Television.
Householdappliances.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
More examples
Cellphones,IpodandMP3players,Webcams,Navigation
p
, p
p y ,
,
g
Systems
Routers,Bladeservers,WirelessPCcards
Automobiles,CarAlarms,KeylessEntrySystems
BuildingSecurity,cardswipingsystems
g
y
p g y
EmbeddedMedicalDevices Pacemakers
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
Sophisticatedfunctionality.
p
y
Realtimeoperation.
Low manufacturing cost.
Lowmanufacturingcost.
Lowpower.
Reliable and secure
Reliableandsecure
Designedtotightdeadlinesbysmallteams.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
Functional complexity
Oftenhavetorunsophisticatedalgorithmsormultiple
p
g
p
algorithms.
Cellphone,laserprinter.
Oftenprovidesophisticateduserinterfaces.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
Manysystemsaremultirate:musthandleoperationsat
widelyvaryingrates.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
Powerconsumptioniscriticalinbatterypowereddevices.
Excessivepowerconsumptionincreasessystemcosteveninwall
powereddevices.
dd i
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
10
Design teams
Oftendesignedbyasmallteamofdesigners.
g
y
g
Oftenmustmeettightdeadlines.
6monthmarketwindowiscommon.
E.g.,cantmissbacktoschoolwindowforcalculator.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
11
Microprocessorsin
EmbeddedSystems
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
12
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
13
Embedded microprocessors
ARM,MIPS,PowerPC,Freescale,8051,X86
,
,
,
,
,
Variouspurposes
Networks MIPS
Mobilephone ARMdominated
Industrial FreescaleColdfire
Security 8051based,Infineon
Highperformance X86,IntelEpic,otherVLIWandsuperscalars
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
14
CPUregisters:
CPU
i
programcounter(PC)
generalpurposeregisters
general purpose registers
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
15
CPU + memory
address
memory
data
200
PC
CPU
200
ADD r5,r1,r3
ADD IR
r5,r1,r3
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
16
Harvard architecture
address
data memory
data
address
program memory
instructions
CPU
PC
IR
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
17
RISC vs.
vs CISC
Complexinstructionsetcomputer(CISC):
manyaddressingmodes
mostoperationscanaccessmemory
variablelengthinstructions
variable length instructions
Reducedinstructionsetcomputer(RISC):
onlyload/storecanaccessmemory
fixedlengthinstructions
Instructionsetarchitectures characteristics:
Fixedvs.variablelength.
Fi
d
i bl l th
Addressingmodes.
Numberofoperands.
Typesofoperands.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
18
varyingclockspeeds;
differentbuswidths;
differentcachesizes;
etc
etc.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
19
Pipelining
eexecute
ddecode
fetch
memoryy
m
Executeseveralinstructionssimultaneouslybutatdifferent
y
stages.
Pipelinehazards
Simplethreestagepipe:
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
20
Off
Offerflexibilityasmicroprocessorparameterscanbetuned
fl ibili
i
b
d
totheapplicationwithtightonchipinterconnectionwith
additionalcircuitry.
y
Designscanbemarketedquickly.Youcantestandvalidate
manydesignsquicklywithoutmakinganyspecificboard;no
solderingandnowiring!
ld i
d
ii !
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
21
What is Nios 2?
A32bitsoftcoreprocessorfromAltera
p
Comesinthreeflavors:Fast,Standard,Light
ThethreecorestradeFPGAareaandpowerconsumptionfor
The three cores trade FPGA area and power consumption for
speedofexecution.
IsaRISC,HarvardArchitecture:Simpleinstructions,separate
p
p
dataandinstructionmemories.
Has32levelsofinterrupts.
UsestheAvalonBusinterface
ProgramscompiledusingGNUC/C++toolchain.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
22
Nios 2 Architecture:
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
23
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
24
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
25
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
26
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
27
Power
Customlogicisaclearwinnerforlowpowerdevices.
g
p
Modernmicroprocessorsofferfeaturestohelpcontrol
powerconsumption.
Softwaredesigntechniquescanhelpreducepower
consumption.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
28
DesignAspects
InEmbeddedSystems
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
29
Howdowemeetourdeadlines?
Fasterhardwareorcleverersoftware?
Howdoweminimizepower?
Turnoffunnecessarylogic?Reducememoryaccesses?
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
30
Design methodologies
Aprocedurefordesigningasystem.
p
g g y
Understandingyourmethodologyhelpsyouensureyou
didntskipanything.
Compilers,softwareengineeringtools,computeraided
design(CAD)tools,etc.,canbeusedto:
helpautomatemethodologysteps;
keeptrackofthemethodologyitself.
AlteraCADtools:Quartus2,SOPC,Nios2IDE(Integrated
l
l
i
(
d
DevelopmentEnvironment).
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
31
Design goals
Performance.
Overallspeed,deadlines.
Functionalityanduserinterface.
Manufacturingcost.
Powerconsumption.
p
Otherrequirements(physicalsize,etc.)
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
32
Levels of abstraction
requirements
i
specification
architecture
componentt
design
system
integration
ECE 354 Moritz 2011,
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
33
Bottomupdesign:
workfromsmallcomponentstobigsystem.
Realdesignusesbothtechniques.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
34
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
35
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
36
JTAG - TESTING
JTAG JointTestActionGroup:IEEE1149.1standard
p
entitled:StandardTestAccessPortandBoundaryScan
Architecture fortestaccessportsusedfortestingprinted
circuitboards(andchips)usingboundaryscan.
Currentlyusedalsoforprogrammingembeddeddevices.
MostFPGAsandPLDsareprogrammedviaaJTAGport.
JTAGportscommonlyavailableinICs
B
Boundaryscan,scanchains,mbist,logicbistconnected
d
h i
bi t l i bi t
t d
ChipschainedtogetherwithJtagsignalsandconnectedtomainJTAG
interfaceonPCB
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
37
SOPC
SystemOnaProgrammableChip ahardwaredevelopmenttool.
Usedforintegratingvarioushardwarecomponentstogetherlike:
Microprocessors,suchastheNiosIIprocessor
Timers
Serialcommunicationinterfaces:UART,SPI
GeneralpurposeI/O
Digitalsignalprocessing(DSP)functions
C
Communicationsperipherals
i i
i h l
Interfacestooffchipdevices
Memorycontrollers
Busesandbridges
Buses and bridges
Applicationspecificstandardproducts(ASSP)
Applicationspecificintegratedcircuits(ASIC)
Processors
GeneratesfilesinVerilogorVHDLwhichcanbeaddedtotheQuartus2project.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
38
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
39
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
40
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
41
Summary
Embeddedcomputersareallaroundus.
p
Manysystemshavecomplexembeddedhardwareandsoftware.
Embeddedsystemsposemanydesignchallenges:design
time,deadlines,power,etc.
Designmethodologieshelpusmanagethedesignprocess.
CADtoolslikeSOPCcanreducedesigntime.
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
42
some slides modified from Moritz/Koren/Burleson/Kundu, UMass ; Wolf, Computers as Components, Morgan Kaufman, 2005
43