microprocessor micro controller
TRANSCRIPT
Microprocessor or MicrocontrollerNot just a case of “you say tomarto and I say tomayto”
M. Smith, ECEUniversity of Calgary, Canada
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
2/ 29
Information taken from Analog Devices On-line Manuals with permission http://www.analog.com/processors/resources/technicalLibrary/manuals/
Information furnished by Analog Devices is believed to be accurate and reliable. However, Analog Devices assumes no responsibility for its use or for any infringement of any patent other rights of any third party which may result from its use. No license is granted by implication or otherwise under any patent or patent right of Analog Devices. Copyright Analog Devices, Inc. All rights reserved.
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
3/ 29
To be tackled today
Basic microprocessor Concept of a microcontroller Difference between the Blackfin
microcontroller and Blackfin Ez-Kit Lite evaluation board
Capabilities of the ADSP-BF533 Blackfin Ez-Kit Lite evaluation board
Various acronyms that will be used in the course
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
4/ 29
Microprocessor – Basic concept
CPU
containsCCUALU
data registersand
pointer registers
ADDRESS BUS 32-bit / 64-bit wide
CONTROL BUSTiming signals, ready signals,interrupts etc
DATA BUS – bidirectional8-bit / 16-bit / 32-bit / 128-bit
Microprocessor, by-itself, completely useless – must have external peripherals toInteract with outside world
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
5/ 29
MicroPROCESSOR – Basic conceptCPU
containsCCUALU
data registersand
pointer registers
CONTROLADDRESS
DATA
Microprocessor, by-itself, completely useless – must have external peripherals toInteract with outside world
BOOTROM
Used at startup
Instruction(program)
ROMTransducers
KeyboardScreenUART
Parallelinterface
etc
DataRAM
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
6/ 29
Every external device needs this amount of support “glue logic” to work
External Device Device itself with all necessary internal logic
DATA BUS
•OE – output enable
•Interrupt signals, etc
ADDRESS BUS
DECODE LOGIC
•Address strobe
•Data strobe
•Read/Write control
•CS – chip select
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
7/ 29
Issues with external devices
Many pins Mechanical failure rates increased Design time increased – routing issues Cost increased, board size increased
Continually redesigning same thing Compatibility between parts Upgrade part Many similar options between different projects
In Real-life -- Don’t need “100% flexibility”
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
8/ 29
MicroCONTROLLER – Basic concept
CPU
containsCCUALU
data registersand
pointer registers
CONTROLADDRESS
DATA
Microcontroller – put a limited amount of most commonly used resources “inside” the chip – a “limited” amount is often “enough” for many applications
BOOTROM
Used at startup
Instruction(program)
ROMTransducers
UARTParallelinterface
Etc
DataRAM
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
9/ 29
Advantages of microCONTROLLER over microPROCESSOR Pin count down Design time down, Board layout size down Upgrade path easier – matching between
peripherals for speed Cost down – bulk purchases Reliability up Common software / hardware design
environment available from manufacturer
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
10/ 29
Issues when using microcontroller Two types of memory – speed issues when using
On-chip – fast, easy to access, “almost like a register”, limited amount of on-chip memory available
Off-chip – slower Use on-chip memory in a “cache” mode (copy off-chip data to on-
chip when processing data, then copy back) External components still there
E.g. Video CODECs – need to use DMA – Direct Memory Access – so that the controller can get on with the “processing” and let something else worry about moving data in and out of the chip
Real time environment Event driven – can’t WAIT for a device to become ready, can’t
POLL to see if device is ready, interrupt handling is key All these resources are “power hungry” and compete for
resources (data busses etc) – special features
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
11/ 29
Components of the Blackfin BoardFrom smallest to largest Processor Core
One core on Blackfin ADSP-BF533 Two cores on Blackfin ADSP-BF561
Processor itself Blackfin Evaluation board
Don’t forget the software development package VisualDSP++
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
12/ 29
Blackfin ADSP-BF533
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
13/ 29
Enter some key discussed elements from previous slide You need to do a “load” and “store” at the same time
– what registers will need to be used? Why can you do 2 loads at the same time, a load
and store at the same time, but not two stores? Why would you want 8-bit ALUs operations
available on a processor with 32-bit registers? Give an example of an instruction where four 8-bit
ALU operations occur at the same time Give an example of an instruction where two 16-bit
ALU operations occur at the same time
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
14/ 29
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
15/ 29
Enter the key elements from previous slide Will you learn to “flash” memory in this class,
and how would you do it and why? What does a watch-dog timer do – and “how
do you find out how to feed it?” What does the acronym MMU stand for? What does the acronym SPI stand for, and in
what labs will we be using the SPI? When is the PPI used? What’s a real time clock?
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
16/ 29
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
17/ 29
Lab. 1 – demonstration of microcontroller capability Use the microcontroller
Configure the FLASH memory Contains memory and also I/O components (input /
output) Use the FLASH memory I/O capability to control
the LED Configure the PF I/O lines (Programmable flags)
Used to control many of the external devices (chip select and timing lines)
Used as input (Lab. 2) and / or interrupt lines (Lab. 3)
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
18/ 29
Need to learn how to “configure” the flash memory so thatWe can control the LEDs
Parallel interfaces present on the FLASH memory chips
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
19/ 29
Push-button switches (PF lines)LED (controlled by FLASH memory logic)
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
20/ 29
Need to configure the PF lines (Programmable Flags)
Replace one button input with the input of a temperature transducer
TMP03 will be used in Laboratory 2
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
21/ 29
Control of the PF lines – how / why?
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
22/ 29
PF lines being used already to control other devices – “We are not alone!!” When we change the
PF registers, we must ONLY change those over which we have control
PF8, PF9, PF10, PF11
Must learn the instructions to safely change some register bits and not others (AND and OR instructions)
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
23/ 29
Enter the key elements from previous slide Which A/D is used on the Blackfin board? Why are the signals that control the LED’s
coming from the FLASH? What does SPORT1 means, and what
external device is being controlled by it? How does the SPORT device allow “time
sharing” of the bus by several different external devices?
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
24/ 29
Audio-Video Interaction of ADSP-BF533 Ez-Kit Lite with the outside world
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
25/ 29
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
26/ 29
Review quiz
CPU stands for
CCU stands for
ALU stands for
DMA stands for
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
27/ 29
Review Quiz
How come the FLASH memory can be used to control the LEDs?
Why can’t we use PF0 line in Lab. 2 to read temperature transducer signals?
Why will AND and OR operations be necessary when we control the PF lines?
What does PF stand for?
13 September 2006 Differences between a microprocessor and a microcontroller M. Smith, University of Calgary, Canada
28/ 29
Tackled today
Basic microprocessor Concept of a microcontroller Difference between the Blackfin
microcontroller and Blackfin Ez-Kit Lite evaluation board
Capabilities of the ADSP-BF533 Blackfin Ez-Kit Lite evaluation board
Various acronyms that will be used in the course