40
Dr. Mohamed A. Moustafa A. Professor of Control & Computer Engineering Cairo University Digital Electronics & Microprocessors Lecture 3: Introduction

Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

Embed Size (px)

Citation preview

Page 1: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

Dr. Mohamed A. MoustafaA. Professor of Control & Computer Engineering

Cairo University

Digital Electronics & Microprocessors

Lecture 3: Introduction

Page 2: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 2

Computer Data Processing

Data Storage

What is Computer ?

Page 3: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 3

Major Components of a Computer

Computer

CPU

MEMORYI/O SYSTEM

BUS

Page 4: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 4

What is Microprocessor ?

CPU

Page 5: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 5

Past Microprocessors ...1971 - Intel 4004, 1st single chip CPU, 4-bit processor1972 - Intel 4040, enhanced 4004, 60 instructions1972 - Intel 8008, 8-bit P1972 - Texas Instrument TMS 1000, 1st single C, 4-bit1974 - Intel 8080, successor to the 8008, used in Altair 88001975 - Motorola 6800, used MOS technology1976 - Intel 8085, updated 8080, +5V power supply1976 - Zilog Z80, improved 80801976 - TI TMS 9900, 1st 16-bit P1978 - Zilog Z8000, Motorola 68000, 16-bit P1978 - Intel 8086, 16-bit, IBM’s choice...

Page 6: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 6

What is Microcontroller ?

CPU

MEMORY

I/O SYSTEM BUS

Page 7: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 7

Past Microcontrollers ...1972 - Texas Instrument TMS 1000, 1st single C, 4-bit1976 - Intel 8048, 8-bit C, 1k ROM, 64b RAM, 27 I/O 1980 - Intel 8051, 4k ROM, 128b RAM, 32 I/O, 2 16-bits timers1980s(MCS-51 family)- Intel 8031, 8052, 8751, …- Atmel AT89C51, AT 89C1052/2051,…- Dallas Semiconductor DS5000 series…- Philips, National Semiconductor, ...(Other Cs)Microchip PIC16 series, Motorola 68HC11, Zilog’s Z86

Page 8: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 8

General Structure of a C

CPU

SerialInterface

ParallelInterface

I/OInterruptControl

RAM ROM

Memory

Timers/ Counters

Internal address, data, & control buses

Page 9: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 9

Major 8-bit Micro-controllers

Intel 8051

Motorola 68HC11

Zilog Z86

Microchip PIC16XX

Page 10: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 10

Microprocessor System Vs Microcontroller System

CPU

GeneralpurposeMicro

processor

Data Bus

Address Bus

RAM ROM I / OPort

TimerSerialCOMPort

CPU RAM ROM

I / OPort

TimerSerialCOMPort

General-Purpose Microprocessor System Microcontroller

Page 11: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 11

Microprocessor System Vs Microcontroller SystemP C

HardwareArchitecture

Single-chip CPURAM-ROM ratio highInterrupt, I/O, Timer –external.Not much on Real-time

Single-chip ICROM-RAM ration highInterrupt, I/O, timer-InternalNeed to respond to Real time

Application Microcomputer systemProcessing information

Control – oriented activitiesControl of I/O devices

Instructionset

Process intensive to handleLarge volume of dataOperates on byte, words,pointers, and arrays.Longer development timeANDing, ORing, XORing inbit level is less easy

Control intensive to handleI/O using single BitOperates mostly on Bit & byte

shorter development timeANDing, ORing, XORing inbit level is easy

Page 12: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 12

What is CPU ?The Central Processing Unit (or P)

Control Unit & Instruction Decoder

Arithmetic/Logic Unit

Registers

Page 13: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 13

Control Unit & Instruction Decoder

Arithmetic/Logic Unit

Registers

To decode instruction and

pass the necessary control signals to CU

To synchronize and control the

overall operation of the P system

Page 14: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 14

Control Unit & Instruction Decoder

Arithmetic/Logic Unit

Registers

To perform the arithmetic and logical operations within the CPU

To perform shift and rotate operations that may either be arithmetic or logical in nature

Page 15: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

3/26/2009 Microprocessors & Microcontrollers Dr. M. Moustafa 15

Control Unit & Instruction Decoder

Arithmetic/Logic Unit

Registers

• Control and Status Registers• User-Variable Registers

A set of internal storagelocations within the CPU

Page 16: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Computer History

• Abacus– c. 500 BC – 1200 AD

• Mechanical calculating ‘engines’– Blaise Pascal 1642 (adder)– Gottfried Wilhelm von Leibniz 1694 (add

and multiply)

http://www.ee.ryerson.ca:8080/~elf/abacus/

http://www-history.mcs.st-andrews.ac.uk/history/Bookpages/Leibniz_machine.jpeg

Page 17: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Computer History, cont.

• Mechanical calculating ‘engines’, cont.– Charles Babbage c. 1822

• Difference engine– Calculation by fixed instruction program

• Analytical engine– Forerunner of the modern computer

– Never realized due to lack of precision machining capability

– Herman Hollerith 1889• Punched card tabulator for US Census bureau• Electromechanical (relays)

http://mycetes.pwp.blueyonder.co.uk/babbage/Fragment_Photo.JPG

Page 18: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Computer History, cont.

• Electronic Digital Computer– John P. Eckert and John W. Mauchly c. 1942 at

Univ. Pennsylvania• ENIAC

– WWII artillery calculations• “18,000 vacuum tubes, about 1,800 square feet of floor

space, and consumed about 180,000 watts of electrical power” (http://www.softlord.com/comp/, 04SEP04)

• Fast “look-up” calculation– 2, 10 digit number multiplication in 200 microseconds

– John Von Neumann c. 1945• Computer ‘architecture’

– Stored program– Subroutines

Page 19: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Miniaturizing the Computer

• The transistor– John Bardeen, Walter Brattain,

and William Shockley c. 1947– Shockley Semiconductor c. 1956

in Palo Alto– “Traitorous 8” start Fairchild

Semiconductor c. 1957– Jack Kilby (TI) and Robert

Noyce invent the IC c. 1959

• Magnetic core memory– c. 1952

http://www.fortunecity.com/marina/reach/435/coremem.htm

http://www.101science.com/transistor.htm

Page 20: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

The Microprocessor

• Intel (“Integrated Electronics) c. 1969– Robert Noyce, Gordon Moore, Andrew

Grove leave Fairchild Semiconductor– Busicom’s desire for high-performance

calculator chips (12)• Ted Hoff’s idea to instead design a single-chip,

general purpose logic device– Intel 4004 microprocessor– The rest is …

http://www.antiquetech.com/chips/4004.htmhttp://www.cedmagic.com/history/intel-4004.html

Page 21: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Moore’s Law

• Doubling of the number of transistors per square inch every 18 months

ftp://download.intel.com/intel/intelis/museum/research/arc_collect/history_docs/pdf/original+graph.pdf

Page 22: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Microprocessors and Microcontrollers

• Microprocessor– “A central processing unit (CPU) fabricated on one

or more chips, containing the basic arithmetic, logic, and control elements of a computer that are required for processing data”(http://www.intersil.com/digital/glossary.asp, 04SEP04)

• Microcontroller– A single-chip computer system usually comprising

a CPU, memory, input/output ports, and often, timers, counters, analog-to-digital converters (ADC), etc. used for control applications

Page 23: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Microcomputer Architecture

http://www.engr.colostate.edu/~dga/mechatronics/figures/7-1.gif

Page 24: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Components of a Microcontroller

http://www.engr.colostate.edu/~dga/mechatronics/figures/7-2.gif

Page 25: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

ATmega128 Microcontroller

Pin numberPin name

Special function

Source: http://www.atmel.com/dyn/resources/prod_documents/doc2467.pdf

Note the limitations!

p. 322

Page 26: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Atmel STK501

http://www.circuitcellar.com/library/print/1002/eady147/p2.htm

Adapter for the ATmega 128 Chip

Page 27: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Atmel STK500

Source: http://www.rfsource.gr/product/micro/STK500/stk500_en.htm

Universal Evaluation Board for Atmel AVR MicrocontrollersMomentary

switches(8 ea.)

LED (8 ea.)

Ports A-Eheader pins

PrimaryRS-232

LED header pins

SpareRS-232

switch header pins

Page 28: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Binary and Hexadecimal Numbers - 1

• Microcontrollers are fundamentally digital (as opposed to ‘analog’) and use binary logic– Two states: high and low, 1 or 0, on or off

• Often 5V or 0V– One binary digit is called a bit

• It can take on two possible states: 1 or 0– Eight binary digits is called a byte– Four binary digits is called a nibble

Page 29: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Binary and Hexadecimal Numbers - 2

1 1 0 0 1 1 0 1

7 6 5 4 3 2 1 0Bit No.

Lower nibbleUpper nibble

Page 30: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Binary and Hexadecimal Numbers - 3

1 1 3 8Base 10

11388301001000108103101101 0123

=+++×+×+×+×

1 1 0 1Base 2

13104821202121 0123

=+++×+×+×+×

Base 10

Page 31: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Binary and Hexadecimal Numbers - 3

0 0 0 0 0

0 0 0 1 1

0 0 1 0 2

0 0 1 1 3

0 1 0 0 4

0 1 0 1 5

0 1 1 0 6

0 1 1 1 7

1 0 0 0 8

1 0 0 1 9

1 0 1 0 A

1 0 1 1 B

1 1 0 0 C

1 1 0 1 D

1 1 1 0 E

1 1 1 1 F

HEXBinary

Page 32: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

CPU

• What is it?– The “brains” of the controller

• Consists of:– Control unit

• Handles timing and sequencing of operations• Fetches instructions, decodes instructions, executes

instructions, stores results– Arithmetic Logic Unit (ALU)

• Carries out data manipulation– Registers

• Temporary data storage locations

Page 33: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Memory

• Random Access Memory (RAM)– Volatile– Fast

• Read-only Memory (ROM)– PROM– EPROM– EEPROM

• Configuration data infrequently changed• Slow, 10’s of ms• Byte addressable

– FEPROM (flash)• Program storage

– Ex. Atmega128 has 128k of flash memory for program storage– Programmed in blocks– 10,000 (minimum) write cycle life

Page 34: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

I/O

• Data exchange with external world– Sensors (data IN)– Actuators (data OUT)– Communications

• Displays• Serial data

• Examples:– Atmega128 data sheet– Motorola 68HC11 data sheet

From Stepper Motor Driving by H. Sax (ST app note AN235/0788

Page 35: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Timer/Counter

• Registers to capture clock cycles and count pulses for timing and counting functions– Generating signals with precise timing, e.g. square wave,

PWM signals• Interrupts

– Event timing– Examples

• Encoder position sensing• Voltage to frequency decoding

• Clock signal– External crystal or onboard oscillator system sets the “beat”

and synchronizes all operations• Ex. Atmega128, 32 kHz – 8 MHz

Page 36: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Analog-to-Digital Converter

• Continuously varying values to discrete (digital levels)

• Number of channels• Number of bits

Page 37: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Busses

• The sets of internal conductors that connect the pieces of the microcontroller together

• Address bus– Carries the address of a location in memory or I/O– Width (number of conductors) determines how many memory

locations can be addressed» Ex. 68HC11 address bus is 16 bits => ? addresses

• Data bus– Carries data to and from memory or I/O ports– Width (number of conductors) determines the size of the

microcontroller, e.g. an 8-bit microcontroller• Control bus

– Carries control signals to memory and peripherals (timers, A/D, serial I/O, etc.), e.g. R/W, IRQ

Page 38: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

History

• Intel 8048– Magnavox Odyssey video game and and in the

original IBM PC keyboard• Intel 8051 c. 1980

– Harvard architecture• Separate program and data memory structures accessed by

separate sets of conductors (busses)• Can fetch program and data in parallel (speed advantage)

– Boolean processing engine for efficient bit operations on internal registers and RAM

– Widely used (still)!• IBM PC keyboard controller• Programmable logic controllers

Page 39: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

History, cont.

• Intel 80186 and 80188 c. 1982– Microcontroller version of the 8086/8088

microprocessors (IBM PC)

• Motorola 68HXXX– von Neumann architecture

• Program instructions and data share the same space and are accessed by same the same lines (bus)

Page 40: Digital Electronics & Microprocessors Lecture 3: … file- Intel 8051, 4k ROM, 128b RAM, 32 I/O, ... Motorola 68HC11, ... Microprocessor System Vs Microcontroller System P C

BJ Furman SJSU MAE

Overview of Major Types

• Motorola• Microchip• Atmel