Choosing an MCU - Engineeringicom5047/spring11/documents/Choosing...zApplications: Consumer...
Transcript of Choosing an MCU - Engineeringicom5047/spring11/documents/Choosing...zApplications: Consumer...
Choosing a Micro for an Embedded System
Application
Dr. Manuel JiménezDSP Slides: Luis Francisco
UPRM - Spring 2010
Outline
MCU Vs. CPU Vs. DSPSelection FactorsEmbedded PeripheralsSample ArchitecturesSelection GuidesDevelopment Tools
HardwareSoftware
Introduction
Choosing the right MCU: A Difficult TaskWide Selection of VendorsLarge Number of Alternatives
CPU Architecture/ProgrammingEmbedded peripheralsCostPowerPackages
Try a Search in the DigiKey on-line CatalogMore than 16,000 entries for “Microcontroller”
MCU, MPU, or DSP?
Let your application dictate the needs & requirements for the system CPU
MicroprocessorSelectionProcess
MicroprocessorSelectionProcess
RequirementsEmbedded Systems
Application
Embedded Systems
Application
Application Processor
Application Processor
MPUMPUDSPDSPMCUMCU
Classic Microprocessor-based Systems (MPU)
MPU
Control Bus
Program
Memory
DataMemory
I/O
Glue
Logic
Data Bus
Address Bus
Chip/Board
Chip/Board Chip/Board Chip/Board
Chip/Board
Inter‐chip level
MPU
Microcontroller-based Systems (MCU)
MPU
Control Bus
Program
Memory
DataMemory
I/O
Glue
Logic
Data Bus
Address Bus
External
I/O Lines
Single Chip
Device
Intra‐chip level
Embedded Microprocessors Systems
MPU
Control Bus
Program
Memory
DataMemory
I/O
ExternalBus
Peripherals&
Memory
Data Bus
Address Bus
Chip/BoardChip/Board
Intra‐chip levelInter‐chip level
I/O
Lines
I/OPeripherals
Single Chip
Device
Embedded DSP / DSC Systems
Control Bus
DataMemory
DSP
Operation
s moduleAnalog
I/O
ExternalBus
Peripherals&
Memory
Data Bus
Chip/Board
Chip/Board
Intra‐chip levelInter‐chip level
I/O
LinesI/O
Peripherals
Single Chip DeviceRAM/
High‐speed
peripherals
controllers
Program
Memory
MPU
I/O
Line
s
Address Bus
Critical IndicatorsSystemSpecs
Memory
ProcessingSpeed
PeripheralRequired
Large
Fast
Bus Type MPUDomain
MCUDomain
I/O Type
Small
“Slow”
DSP Math
DSPDomain
Yes
NoDSP Math
DSCDomain
Typical MCU Structure
Core CPU Architecture
Word WidthData resolutionComputing power
Register StructureHow many?Register types
Accumulator-based Vs. Register File Vs. Load/StoreStack type and depth
Assembly Language StructureCISC Vs. RISC
Bus ArchitectureHarvard Vs. Stanford (Von Neuman)Internal Vs. External
Digital Signal Processor Architecture Characteristics
MPU designed to perform Digital Signal Processing math operations
Multiply and accumulate (MAC) Digital Filters: IIR & IIF FFT
MAC instructions in a single cycleMultiple access to memory in a single instruction cycleMAC operations with fixed-point or floating-point
Embedded DSP vs. DSCDSP
High speed processingHigh speed external peripheralsLots of external memoryImage & Video processing, powerful DSP algorithms
DSCLow speed processingI/O type peripheralsApplications: Consumer electronics applications, motors controls, power electronics controllers, etc.
Architectural Considerations for Embedded DSP / DSC (1/2)
SpeedMAC operationsBuses Sampling
Internal Modules for DSP Math operationsFFTFilters
Arithmetical Format and lengthFixed-pointFloating-point
Architectural Considerations for Embedded DSP / DSC (2/2)
On-Chip MemoryCodeInternal RAMSampling
Controllers external RAMOn-Chip PeripheralsBuses
Programmability
ProgrammabilityPrefer FLASH devices
Many erase/reprogram cyclesOn-board reprogrammable
Other types:EEPROMEPROMOTPExternal Memory
FLASH/EEPROMRAMEPROM
On-chip MCU Peripherals (1/2)
I/O portsNumber of I/OsIndividually or byte programmableDriving capability
TimersNumber of TimersCounting bitsPrescaler(s)Operating modes:
Event/timerWatchdog
On-chip MCU Peripherals (2/2)
UARTs/USARTsClocking sourcesBaud rate generation
Data ConvertersResolution (No. of bits)Analog ChannelsConversion MethodSpeedReferencing
Other PWMComparatorsI2C, CAN, USB, etc.JTAG, BlueTooth, 802.11
Other Considerations
Physical PackagingImportant for prototypingPLCC, QFP, BGA, DIP
Supply voltageCompatibility with add-on components
MemoryProgram memoryData memory
Application requirementsWord width
Power Down ModesPower ConsumptionSleep/wake-up time
Embedded MPU Examples
Embedded DSP Example
Product Selection GuidesAllow choosing specific members within a family
Product Selection Guides
Hardware Development Tools
Availability of Development KitsMost Kits sold for $50 or lessAsk for samples or student discount
Minimum HW ContentsDevelopment BoardJTAG debugger or EmulatorPower supplySpare chipsCables
Software Development ToolsAllow for Software Development
ProgrammingDebuggingDownloadingTesting
Minimum SupportIntegrated Development Environment (IDE)EmulatorAssemblerC-Compiler (Demo)
Resources
http://www.instructables.comhttp://www.freescale.com/files/microcontrollers/doc/app_note/AN1057.pdfhttp://www.microchip.com/stellenthttp://archive.chipcenter.com/circuitcellar/march01/c0301cg1.htm