EE 260 Lecture 4
Appropriate Microcontroller Use
Alternatives to µC
• ASIC!
• CPLD!
• DSP!
• FPGA!
• PLC!
• µP
EE 260 Lecture 4: Appropriate Microcontroller Use
Alternatives to µC: ASIC
Application Specific Integrated Circuit
Fully-Custom: All layers of the IC are
optimized for the application.
Semi-Custom: Bottom layers are
optimized. “Top layer available.”
EE 260 Lecture 4: Appropriate Microcontroller Use
Alternatives to µC: ASIC
• Application Specific Integrated
Circuit!
• Fully-Custom: All layers of the IC
are optimized for the application.!
• Semi-Custom: Bottom layers are
optimized. “Top layer available.”!
• VERY Fast!
• Not very flexible.
EE 260 Lecture 4: Appropriate Microcontroller Use
Alternatives to µC: CPLD
• Complex Programmable Logic Device!
• in between a PAL and a FPGA!
• Logic Block: Macro cell
“sea-of-gates”!
• Chip contains non-volatile memory!
• Fast and somewhat flexible
EE 260 Lecture 4: Appropriate Microcontroller Use
Alternatives to µC: FPGA
• Field Programmable Gate Array!
• Large interconnection matrix, logic gates, RAM!
• May have analog capability
e.g., A/D and D/A!
• Programmed by a
computer (VHDL)
EE 260 Lecture 4: Appropriate Microcontroller Use
Alternatives to µC: DSP
• Digital Signal Processor!
• Serious number crunching!
• Designed around inputs and outputs
(digital and analog)!
• May include !
• quadrature decoders!
• PWM!
• Serial Communications
EE 260 Lecture 4: Appropriate Microcontroller Use
Alternatives to µC: PLC
• Programmable Logic Controller!
• Designed for Industrial
Applications!
• Expandable via modules!
• Very broad range of capabilities!
• Can do centralized or decentralized control!
• Often programmed graphically
EE 260 Lecture 4: Appropriate Microcontroller Use
Alternatives to µC: µP
• Powerful Processing—math!
• Design with certain peripherals
in mind!
• Not able to directly interface
with either analog or digital inputs (excp: audio)!
• Significant memory!
• Runs an OS!
• May be single-board
EE 260 Lecture 4: Appropriate Microcontroller Use
Alternatives to µC: µC
• Arduino (20 varieties)!
• MAKE Controller!
• PICKAXE!
• BASIC Stamp
EE 260 Lecture 4: Appropriate Microcontroller Use
Selection of MCU
How do you choose the MCU?
• Define the System Requirements!
• Choose the processor technology!
• List all good candidates!
• Finalize the selection
EE 260 Lecture 4: Appropriate Microcontroller Use
System Requirements
1. Computational 7. Interfacing / 14. Timer/Counter
Power! Compatibility! Functions!
2. Ease of 8. Overall cost! 15. Handling media!
Programming!
9. Versatility! 16. Overall time
3. Speed of required to
10. Communication
Operation! assemble!
w/other devices!
4. Interrupts! 17. EMI/EMC!
11. Safety!
5. Reconfiguration! 18. Size!
12. Upgradability!
6. Power/Heat! 19. Availability
13. Memory!
EE 260 Lecture 4: Appropriate Microcontroller Use