microprocessor & microcontroller by sanat

Post on 06-May-2015

1.010 Views

Category:

Education

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Presented byNitesh Kumar Singh

BME 7th sem

Microprocessor and Microcontroller

Microprocessor

IntroductionThe microprocessor also known as the

central processing unit, is the brain of all computers and many household and electronic devices. Multiple microprocessors, working together, are the "hearts" of datacenters, super-computers, communications products, and other digital devices.

HistoryFairchild Semiconductors (founded in 1957)

invented the first IC in 1959.In 1968, Robert Noyce, Gordan Moore,

Andrew Grove resigned from Fairchild Semiconductors.

They founded their own company Intel (Integrated Electronics).

The first microprocessor invented was of 4-bit, after that 8-bit,16-bit,.32-bit & 64-bit are founded

History 4-bit microprocessor• Intel 4004• Intel 40408-bit microprocessor• Intel 8008• Intel 8080• Intel 808516-bit microprocessor• Intel 8086• Intel 8088• Intel 80186 & 80188

History • Intel 8028632-bit microprocessor• Intel 80386• Intel 80486• Intel pentium• Intel pentium pro• Intel pentium II• Intel pentium II xeon• Intel pentium III• Intel pentium IV• Intel dual core

History 64-bit microprocessors• Intel core 2• Intel core i7• Intel core i5• Intel core i3

Microprocessor (MPU)MPU (CPU)

Read instructionsProcess binary data

330_018

MemoryStorage Device

AddressesRegisters

Major CategoriesRead/Write Memory

(R/W)Read-only-Memory

(ROM)

330_019

D7 D0

Input/Output (I/O)Input Devices

Switches and Keypads Provide binary information to the MPU

Output devicesLEDs and LCDsReceive binary information from the MPU

330_0110

Microprocessor ArchitectureThe MPU communicates with Memory and

I/O using the System BusAddress bus

UnidirectionalMemory and I/O Addresses

Data busBidirectionalTransfers Binary Data and Instructions

Control linesRead and Write timing signals

330_0111

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

Microcontroller

Micro controllerA self-contained system in which a processor,

support, memory, and input/output (I/O) are all contained in a single package.

A small computer system on a single IC

14

History of Microcontroller

First used in 1975(Intel 8048)The introduction of EEPROM in 1993, allowed

microcontrollers to be electrically erased The same year, Atmel introduced the first

microcontroller using Flash memory.

Microcontroller

Types of microcontroller

Basic Features of Microcontroller

Processor resetDevice clockingCentral processorProgram and Variable Memory (RAM)I/O pinsInstruction cycle timers

More Sophisticated Features

Built-in monitor/debugger programInterrupt capabilityAnalog I/O (PWM and variable dc I/OSerial I/O (synchronous, a synchronous)Parallel I/O (including direct interface to a

master processorExternal memory interface

Basic microcontroller architecture (1/3)

Basic microcontroller architecture (2/3)Memory

RAMROMStore data and code

CPUMathematical and logical operationMemory units are called Register

Basic microcontroller architecture (3/3)• BUS

– Group of 8,16 or more wires– Three type, address bus, data bus and control

bus• Input-output unit

– port A, port B, port C … …– Input, output and bidirectional ports

• Serial communication• Timer unit• Watchdog

– Automatic reset to prevent stall• Analog to Digital Converter (ADC)

Processor ArchitectureCISC

Large amount of instructions each carrying out a different permutation of the same operation

Functionality of the instructions is more dependent upon the processor’s designer.

RISCFundamental set of instructions More control for users to design their own

operations

Von Neumann Architecture

Processor Architecture

Princeton (Van Neumann) architectureCommon memory for program and data

Simple chip designExecution of an instruction can take multiple cycles

Processor Architecture

Princeton architecture example

Mov acc, reg

Cycle 1 Read instructionCycle 2 Read data out of

Ram and put into Acc

Processor Architecture

Harvard architectureSeparate memory space program and data

Instructions are executed in one cycle

Easier timing of loops and delays

Harvard Architecture

Processor Architecture

Harvard architecture exampleMov acc, reg

Cycle 1 Execute previous instructionRead “move acc, reg”

Cycle 2 Execute “move acc, reg” instruction

Block diagram of Microcontroller

Memory The memory in a computer system stores the data and

instructions of the programs.

Adress decoder Storage

Area

Adress bus

Data bus

Other signals (Vcc,Gnd, CS, etc.)

Microcontrollers Memory Types

Variable Area (RAM)Control Store (ROM)Program Counter StackI/O Space (Hardware interface Registers)

I/O Space

- Memory Mapped I/O Versus Programmed I/OProgrammed I/O

Special instructions such as IN and OUT are used to transfer data between a CPU register and an external device.

Memory Mapped I/O Standard instructions are used to transfer

data between a CPU register and an external device.

I/O ports appear as memory addresses.

Interrupts

Instruction support for interrupts Internal CPU handling of interrupts Interruptible instructions

36

Instruction support for interrupts

Processors provide two instructions, enable priority interrupt (EPI) and for disable priority interrupt (DPI).

These are atomic instructions that are used for many purposes, such as buffering, within interrupt handlers, and for parameter passing.

Internal CPU handling of interrupts

38

Step 1: finish the currently executing macroinstruction. Step 2: save the contents of the program counter to the interrupt return location. Step 3: load the address held in the interrupt handler location into the program counter. Resume the fetch and execute

sequence.

Single interrupt support

Internal CPU handling of interrupts

Step 1: complete the currently executing instruction. Step 2: save the contents of PC to interrupt return location i. Step 3: load the address held in interrupt handler location i into the

PC. Resume the fetch-execute cycle.

Multiple interrupt support

Interruptible instructions

In rare instances individuation macroinstruction may need to be interruptible.

This might be the case where the instruction takes a great deal of time to complete. E.g. a memory to memory instruction that moves large amounts of data.

In most cases, such an instruction should be interruptible between blocks to reduce interrupt latency. However, interrupting this particular instruction could cause data integrity problems.

Advantages of Microcontroller over Microprocessor

Pin count downDesign time down, Board layout size downUpgrade path easier – matching between

peripherals for speedCost down – bulk purchasesReliability upCommon software / hardware design

environment available from manufacturer

Issues when using microcontroller

Two types of memory – speed issues when usingOn-chip – fast, easy to access, “almost like a register”,

limited amount of on-chip memory availableOff-chip – slowerUse 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 environmentEvent 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

Difference between microprocessor & microcontroller

Microprocessor Microcontroller

Contains ALU, general purpose register, stack pointer, programme counter, clock timing & interrupt circuit

Contains the circuitary of microprocessor & in addition it has built in ROM, I/O devices, timer & counter

It has too many instructions to move the data between CPU & memory

It has one or two instruction to move the data between CPU & memory

It has one or two bit handling instruction

It has many bit handling instruction

Access time for memory & I/O devices is more

Less access time for built in memory & I/O devices

Microprocessor based system requires more hardware

Microcontroller based system requires less hardware, reducing PCB size & increasing the reliability

More flexible in design point of view

Less flexible in design point of view

It has single memory map for data & code

It has separate memory map for data & code

Less number of pins are malfunctioned

More number of pins are malfunctioned

Thank you

top related