80X86 Instructions

Download Report

Transcript 80X86 Instructions

Other Microcontrollers /
Microprocessors
Overview
68HC11 Application Example:
An Emergency Communicator System (ECS)
Other Microcontrollers / Microprocessors
Selecting a Microcontroller / Microprocessor
68HC11 Application Example
• Emergency Communicator System (ECS)
• Function
o Records a set of personalized emergency messages
o Dials customized telephone number(s) when triggered by a
pushbutton, monitor, sensor, etc.
o Monitors call status and delivers recorded message
• Features
o Uses standard telephone line; no need for special monitoring
service
o Reliable
Based on:
“Emergency Communicator System”
David B. Wax, University of Pennsylvania
May 1, 1991
1991 University Motorola Design Contest
ECS: Use of the 68HC11 (1)
• HCMOS
o Low power - operates on battery backup
o Noise immunity - operates in environment with telephone line
and (possibly) radio transmitters
• EEPROM
o Calibration table - reference values for dial tones, busy signals,
ring back signals, etc.
o User parameters - telephone numbers to call for various
emergencies
o System configuration - locations of emergency message
“phrases” in memory
• Analog-to-digital converter
o Convert voice input to digital for recording message phrases
ECS: Use of the 68HC11 (2)
• Serial peripheral interface
o Transmits serial ASCII data to an LCD display unit for user
interface
• Timer subsystem
o Input capture functions measures signals on telephone line to
monitor call status
o Real-time interrupt displays time since call request
• Parallel input/output
o Control input and outputs (simple mode)
o External memory interface
• STOP and WAIT modes
o Reduce power consumption when unit is idle
ECS: Use of the 68HC11 (3)
• Clock monitor
o While in WAIT mode, the clock monitor verifies correct
operation and can reset the system if an error is detected
• Highest priority interrupt
o IRQ is elevated to highest priority since it indicates a request
for an emergency message
ECS: Context Diagram
• What is the environment of the system that we are to
design? ...
ECS: Top-Level Control/Data
Flow
• Identify the interface and “core” functions ...
ECS: System Control
Data/Control Flow Decomposition
• Decompose functions to a manageable design entity
...
ECS: Analysis Results
• Analysis leads to:
o System decomposition
 Control and data transformations
 Data elements
 Information flows
 Critical events
o Requirements for the transformations and data elements
derived from
 System requirements
 Operational scenarios
 Supporting requirements
ECS: Analysis Results
o Allocation of transformations and data elements to design
entities that can be assigned to an individual designer or design
team
o Requirements for each entity based on those for the individual
transformations and data elements
• Functional analysis leading to physical realization
ECS: Block Diagram
Other Microcontrollers
• Motorola
o
o
o
o
68HC05 - low-cost 8-bit “core”
68HC11 - high-performance 8-bit core
68HC16 - 16-bit core
68300 family - high-performance 32-bit core
• Intel
o
o
o
o
o
MCS-51 family - moderate-performance 8-bit core
MCS-96 - 16-bit core
8096 - low-cost 16-bit core
80196 - high-performance 16-bit core
Embedded processor versions of 80386 and i960 RISC
processor
Other Microcontrollers
• There are other vendors
o
o
o
o
o
Fujitsu
AMD
Philips
TI
Others ...
Motorola 68HC05 (2)
• Block diagram
Motorola 68300 Family (1)
• Features (68332)
o 32-bit microcontroller
o Based on CPU32 architecture (same as 680X0 family) with
new instructions for controller applications
o Low power operation (600 mW maximum, 500 µW in standby
mode)
o 132-pin plastic quad flat pack (PQFP) package
o 16-bit intelligent timer
 16 independent channels and pins
 Any channel can perform input capture, output compare,
pulse width modulation
Motorola 68300 Family (2)
o Serial ports
 68HC11-type SCI
 68HC11-type SPI with I/O queue
o On-chip 2K bytes standby RAM
o On-chip programmable chip select logic with up to 12 output
signals
o Up to 32 discrete I/O pins
o System failure protection
Motorola 68300 Family (3)
• Block diagram
Motorola 68300 Family (4)
• Register diagram
Intel MCS-51 Family (1)
• Features
o
o
o
o
o
o
o
o
o
8-bit CPU
0, 4K, 8K, 16K bytes on-chip ROM or EPROM
128 or 256 bytes on-chip RAM
64K address space for external data memory, 64K address space for
external program memory
32 input/output pins
Full-duplex serial I/O
Two (or three) 16-bit timer/counters
Five (or six) interrupt sources with two priority level (preemptive)
Boolean processor
• Other vendors make MCS-51 compatible devices
o Philips
 Built-in Inter-Integrated Circuit (I2C) Bus controller
Intel MCS-51 Family (2)
• Block diagram
Intel MCS-96 Family (1)
• Features
o
o
o
o
o
o
o
o
o
o
o
16-bit CPU
Reconfigurable 8- or 16-bit external bus
8K bytes on-chip ROM or EPROM
232 bytes on-chip RAM
Hardware multiply and divide
High-speed I/O unit (6 dedicated lines, 2 programmable lines)
10-bit analog-to-digital converter
Full duplex serial port
Up to 40 I/O ports
21 interrupt sources with 8 programmable vectors
Pulse width modulated (PWM) output (for PWM output or conversion
to analog)
o Watchdog timer
o 48-pin DIP and 68-pin PLCC packages
Intel MCS-96 Family (2)
• Block diagram
Processor Selection Factors
• Economics
o Parts cost
o Parts quality
o Development cost
 Software development
 Development tools
o Test
o Expertise and learning curve
• Political
o Pacts, cooperative agreements
o Investment interest
• Technical
o Application features matched to processor features
o Development tools
Application Characteristics (1)
• Data processing
o Analysis of application should focus on critical calculations
that must be completed within real-time constraints
o Precision of calculations: 8-, 16-, 32-bits?
o Type of data: floating point, signed, unsigned?
• Input/output
o Number of signals
o Special functions, e.g. serial I/O or handshaking
• Power
o Need for low-power consumption
• Memory
o Size: how much data, program memory?
o Type: volatility, updates (patches), configuration?
Application Characteristics (2)
• Real-time processing
o Interrupt latency
o Timing subsystem performance
• Special functions
o Analog-to-digital converters
o Special drivers
• Programmatic issues
o Quantities
o Development schedule
Development Tools
• System-level (hardware and software)
o Monitor programs
o Logic analyzers
o Emulators
• Software-only
o



o
Software generation
Assemblers - 68HC11 assembly language
Compilers - C, PL/M
Interpreters - FORTH, BASIC
Simulators
When Not to Use a
Microprocessor/Microcontroller
• Purely analog system
o Examples: amplifier, radio receiver, ...
o Microcontroller or microprocessor may still be used for control
• High volume products
o Examples: calculators, mass market toys, low-cost feature
telephones, Use custom or semicustom ICs
o Low-end microcontrollers may be competitive
• Very high performance applications
o Examples: radar, real-time high-resolution image processing
o Use custom logic or bipolar bit-sliced processor
o High-end RISC microprocssors/microcontrollers and
programmable digital signal processors (DSP) ICs may be
competitive