1. intro 8051 arch

65
(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 1 Microcontroller Architecture & Interfacing Concepts Facilitated By: Shrikrishna. C-DAC Bangalore

Upload: quasar1234

Post on 16-Nov-2014

211 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 1

Microcontroller Architecture & Interfacing Concepts

Facilitated By:Shrikrishna.C-DAC Bangalore

Page 2: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 2

Topics that will be covered in this Module

Processor Architecture

Internal Architecture of 8051 Microcontroller

Cross Platform Development Model

ALP & Addressing Modes

Instruction Set Architecture

Study of various on chip peripherals

External interfacing Techniques

Page 3: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 3

Timers & Counters

Serial Communication

Interrupt Handling

Page 4: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 4

Processor Architecture & Organization

ArchitectureArchitecture Refers to the Programmers view of the computer or the users view of the computer.

What will come in the Architectural Study

Instruction set, visible registers, memory management table structures and exceptional handling model are all part of the architecture.

Basically these are the things which are programmable features of the processor.

Page 5: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 5

Processor Architecture & Organization

Organization (Implementation details)Computer organization describes the user invisible implementation of the architecture.

What will come in the Organizational Study

The pipeline structure, cache structure, table walking hardware and translation look-aside buffer are all the aspects of the organization.

Basically these are the things which decide the performance of a processor and are fixed they can’t be changed by the programmer.

Page 6: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 6

Basic Concepts

• Microprocessor Vs Microcontroller• Microcontroller Classification• Architecture Types• CISC & RISC• Memory Mapped IO & IO Mapped IO• Embedded Development Environment

Page 7: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 7

Micro Processors

• Micro Processor is the Integration of a number of useful function in a single IC Package .These functions are

1)Execute the stored set of instructions to carry out user defined task.

2)Ability to access external memory chips for both read and write data from and to the memory

Page 8: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 8

CPUs• CPUs can be

– Microprocessors or Micro controllers

• Any CPU can be studied by knowing following features of CPU– Clock speed, Address bus size, Data bus size, Register size– Register set, Instruction set, Address spaces– Interrupt support– Instruction and Data cache– Memory management– Protection features (user/supervisor modes)

Page 9: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 9

CPU

General-Purpose Micro-processor

RAM ROM I/O Port

TimerSerial COM Port

Data Bus

Address Bus

General-Purpose Microprocessor System

Microprocessors:

• CPU for Computers• No RAM, ROM, I/O on CPU chip itself• Example : Intel’s x86, Motorola’s 680x0

Many chips on mother’s board

General-purpose microprocessor

Page 10: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 10

RAM ROM

I/O Port

TimerSerial COM Port

Microcontroller

CPU

• A smaller computer• On-chip RAM, ROM, I/O ports...• Example : Motorola’s 6811, Intel’s 8051, Zilog’s Z8 and PIC 16X

A single chip

Microcontroller :

Page 11: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 11

Microprocessor • CPU is stand-alone, RAM,

ROM, I/O, timer are separate• designer can decide on the

amount of ROM, RAM and I/O ports.

• expansive• versatility • general-purpose

Microcontroller• CPU, RAM, ROM, I/O and

timer are all on a single chip• fix amount of on-chip ROM,

RAM, I/O ports• for applications in which cost,

power and space are critical• single-purpose

Microprocessor vs. Microcontroller

Page 12: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 12

Microprocessor Vs Microcontroller

• Contains ALU,GP Registers,SP,PC,Clock timing circuit and interrupts

• Provides the advantage of versatility to designer to decide upon the additional features required.

• one or two bit handling instructions & here the instruction set is aimed at expediting external memory access process

• Requires more H/W, increase in PCB size

• In addition in built ROM, RAM, IO devices,Timers ideal for applications in which cost & space are critical.

• Many bit handling instructions are present & here the pins are programmable

• Requires less H/W, reduces PCB size & increases reliabilit

Page 13: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 13

Classification of Microcontrollers

• μc are classified into :– 8 bit μc e.g.: Intel 8051, Motorola HC05– 16 bit μc e.g.: Siemens 80167, Intel 80C196– 32 bit μc e.g.: ARM, Power PC 8xxx– 64 bit μc e.g.: Texas 64xxx series– 128 bit μc e.g.:

• The number of bits indicate the internal data bus of a μc. It shows how many bits of data the μc can process simultaneously.

Page 14: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 14

Embedded SystemGeneral Block Diagram

Microcontroller(uC)

sensor

sensor

sensor

Sensor conditioning

Output interfaces

actuator

indicator

Page 15: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 15

MCS-51 “Family” of Microcontrollers

• 8051 introduced by Intel in late 1970s• Now produced by many companies in many

variations• The most popular microcontroller – about

40% of market share• 8-bit microcontroller

Page 16: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 16

Page 17: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 17

Memory Organization in 8051

• All 8051 devices have separate address spaces for Program & Data Memory.

• Does this logical Separation of Data & Program memory mean 8051 is Harvard architected processor ???

• Data memory (RAM) occupies a separate address space from program memory (ROM)

Page 18: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 18

Memory Access Ranges supported by the 8051 Architecture

• The lowest 128 bytes of data memory are on chip.• Up to 64k bytes of external RAM can be addressed

in the external Data Memory Space.• Can we go beyond this size ?????• Internal Program is 4k bytes in classic 8051 may

vary in 8051 variants.• External Program Memory could also be present

limited by 64k bytes – Internal ROM size.

Page 19: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 19

What goes into program memory ?• Application Code• System Startup code or Initialization code• Interrupt Handlers• Debug Monitor Code• It is basically any piece of code which the processor

executes ( Fetches Decode executes)• What is the address range of program code ?? Ans. (0000h --- FFFFh) This range is decided by what is the size PC.

Page 20: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 20

Memory mapping in 8051

ROM memory map in 8051 family

0000H

0FFFH

0000H

1FFFH

0000H

7FFFH

8751AT89C51 8752

AT89C52

4k

DS5000-32

8k 32k

from Atmel Corporationfrom Dallas Semiconductor

Page 21: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 21

Who Programs the code memory ? • Is it the Application code written by the

programmer.• Is it the system which does the burning of

your code into the ROM.• Answer is it can be done in both ways.• We have two ways of programming the

Flash Memory• ISP and IAP.

Page 22: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 22

The 2 ways of programming the Flash

In-System Programming (ISP)

In-Application Programming (IAP)

Page 23: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 23

In-System Programming• The Flash device can be reprogrammed via UART/Parallel interface

without being removed from the target.• ISP is accomplished by having a downloader firmware

preprogrammed into the on board memory which provides the interface for the ISP.

• In this case the processor is put in a special boot or programming mode.

• The application needs to stopped during the reprogramming process.SerialPort

ISP Software

Page 24: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 24

In-Application Programming• User can program the Flash from an application running in RAM• This is done by the by calling the functions in the boot loader area by the application code to do the required operation on

the flash memory.• The Flash could be also programmed using the serial or Ethernet interface (but not directly)• First the image is copied into the RAM by running the appropriate command of the bootloader .• Then use the IAP command “Copy RAM to Flash” to program the Flash from RAM.

Page 25: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 25

What goes into the Data Memory• Naturally the Data goes into Data Memory.• How does it go ????• This is by the Instructions……• You can read and write by instructions into this

memory.• Can you in the similar way read the program

memory. ( Through instructions )• But why do you want to read program memory ??• Is it to read Instructions or Data.

Page 26: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 26

DATA Memory Organization in 8051

• 128 bytes of internal memory is grouped as:

• Register Bank ( 00 h --- 1f h) 32 bytes

• Bit Addressable Area ( 20 h --- 2f h) 16 bytes

• Scratch Pad Area ( 30 h --- 7f h) 80 bytes

Page 27: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 27

Lower 128 bytes of internal RAM

Bank0 (00-07)

Bank3(18-1F)Bank2 (10-17)Bank1(08-0F)

Bit & Byte Addressable Area (20-2F)

Scratch Pad Area(30-7F)

SP=07RS1=0RS0=0

Page 28: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 28

REGISTER BANK 3

REGISTER BANK

4

REGISTER BANK 0 REGISTER BANK 1 REGISTER BANK 2

R0

R7 07h

00h R0

R7 0Fh

08h R0

R7 17h

10h R0

R7 1Fh

18h

Page 29: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 29

On-Chip DATA Memory: RAM

Internal RAM

Page 30: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 30

Registers

0706050403020100

R7R6R5R4R3R2R1R0

0F

08

17

10

1F

18

Bank 3

Bank 2

Bank 1

Bank 0

Four Register BanksEach bank has R0-R7

Page 31: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 31

Bit Addressable Memory20h – 2Fh (16 locations X 8-bits = 128 bits)

7F 78

1A

10

0F 08

07 06 05 04 03 02 01 00

27

26

25

24

23

22

21

20

2F

2E

2D

2C

2B

2A

29

28

Bit addressing:mov C, 1Ahormov C, 23h.2

Page 32: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 32

• To select the register banks, there are 2 bits present in PSW:

• RS0• RS1

Page 33: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 33

BIT ADDRESSABLE AREA

• 16 eight bit locations, ranging from 20h to 2Fh are bit addressable.

16 locations * 8 bits = 128 bits

i.e.., 128 bits can be individually addressed.

Page 34: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 34

• These bits can be addressed as 20.0h to 2F.7h

or 00h to 7Fh.

Page 35: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 35

SCRATCH PAD AREA

• Locations from 30h to 7Fh are available as Scratch Pad area.

• Can store data such as partial results and such variables.

i.e., as general purpose locations

Page 36: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 36

Thus,

4 - register banks => 32 bytes

1 bit addressable area => 16 bytes

1 scratch pad area => 80 bytes128 bytes of INTERNAL RAM

Page 37: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 37

Special Function Registers

DATA registers

CONTROL registers

•Timers•Serial ports•Interrupt system•Analog to Digital converter•Digital to Analog converter•Etc.

Addresses 80h – FFh

Direct Addressing used to access SPRs

Page 38: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 38

(Address - 0E0h)

• 8 - Bit Register

• Used for operations such as

• Addition

• Subtraction

• Multiplication

• Division &

• Bit Manipulations

Page 39: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 39

• Used for Data Transfer Between 8051 & External memory

• Used to store Results obtained from Arithmetic as well as logical Operations

• Bit Addressable Register

Page 40: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 40

(Address - 0F0h)

• Used for direct Multiplication & Division operations with Accumulator.

• Can be used as general purpose storage location with its direct address 0F0h.

• Bit Addressable Register.

Page 41: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 41

• 8 - Bit Register

• Consists of 5 FLAGS

• 4 MATH FLAGS

• Carry

•Auxiliary Carry

• Parity

• Overflow

• 1 USER DEFINED FLAG

(Address - 0D0h)

Page 42: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 42

BitBit FlagFlag DescriptionDescription

77 CYCY Carry flag; used in arithmetic, jump, Carry flag; used in arithmetic, jump, rotate and Boolean instructions.rotate and Boolean instructions.

66 ACAC Auxiliary carry; used for BCD Auxiliary carry; used for BCD arithmeticarithmetic

55 F0F0 User defined flag 0User defined flag 044 RS1RS1 Register bank select bit-1Register bank select bit-133 RS0RS0 Register bank select bit-0Register bank select bit-0

Page 43: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 43

BitBit FlagFlag Description Description

22 OVOV Overflow flag; used in arithmeticOverflow flag; used in arithmeticinstructionsinstructions

11 -- Reserved for future useReserved for future use

00 PP Parity flag; shows parity of register A; Parity flag; shows parity of register A; ‘1’ => Odd parity; ‘0’ => Even Parity‘1’ => Odd parity; ‘0’ => Even Parity

RS1RS1 RS0RS0 Bank SelectBank Select 00 0 0 Bank - 0 Bank - 0 00 1 1 Bank - 1 Bank - 1 1 1 0 0 Bank - 2 Bank - 2 11 1 1 Bank - 3 Bank - 3

Page 44: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 44

(Address - 81h)

• 8 - Bit Register.

• Stack Pointer is Initialized to 07h at RESET condition.

• Instructions such as PUSH and POP modify SP.

• UP - GROWING stack.

• Can be reinitialized to any desired location by the user.

Page 45: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 45

• 16 - Bit Register

• Used to hold the Address of external Data Memory.

• Can be used as two individual 8 - bit registers such as

• Data Pointer High (DPL) - Address 82h

• Data Pointer Low (DPH) - Address 83h

(Direct Address - NIL)

Page 46: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 46

DPH DPL

DPTR

83h 82h

• No direct address is assigned for DPTR but can be

individually addressed

Page 47: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 47

(Direct Address - NIL)

• 16 - Bit Register

• Used to hold the Address of the next instruction to be executed

• Not directly accessible to the programmer.

• No internal address.

Page 48: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 48

• Group of registers used for specific purposes in 8051 microcontroller mainly to

• Configure

• Control, &

• operate.

• Uses address locations from 80h to 0ffh.

Page 49: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 49

• Accumulator - A*

• Register B - B*

• Program Counter - PC

• Data Pointer - DPTR

• Stack Pointer - SP

• Program Status Word - PSW

• Ports - P0* , P1* , P2* , P3* .

• Timer Load Registers - TL0/1 & TH0/1

• Timer Config. & Ctrl Reg. - TCON*, TMOD

Page 50: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 50

• Serial Comm. Control Register - SCON*

• Serial Comm. Buffer Register - SBUF

• Program Control Register - PCON

• Interrupt Enable Register - IE*

• Interrupt Priority Register - IP*

NOTE:

Registers marked with * are both Bit as well as Byte Addressable

Page 51: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 51

• External bus of 8051 is grouped into 4 ports namely:

• Port - 0

• Port - 1

• Port - 2

• Port - 3

Page 52: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 52

• These ports supports all the three types of buses namely:

• Address Bus,• Data Bus, &• Control Bus.

Page 53: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 53

• All the ports are Bi - directional.

• All the ports are Bit as well as Byte addressable.

• The addresses of the ports are as shown below:

PORTS ADDRESSPORT 0PORT 1

PORT 2PORT 3

080h090h

0A0h

0B0h

Page 54: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 54

Internal Data Memory in 8052

Accessible by directAddressing(SFR Area)

(80-FF)=128 bytes

Accessible by indirect addressing(80-FF)=128 bytes

Accessible by direct& indirect addressing

(00-7F)=128 bytes

Page 55: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 55

INTERNAL READ ONLY MEMORY (ROM)

0000h

0FFFh

4 Kbytes of Internal

ROM

Page 56: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 56

EXTERNAL MEMORY ORGANIZATION

• 8051 Microcontroller supports up-to

• 64 Kbytes of Data Memory

• 64 Kbytes of Program Memory

Page 57: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 57

• 8051 Microcontroller is interfaced and accessed to external memory using 16 address lines available on PORT0 and PORT 2.

• Address and Data lines are multiplexed using PORT0.

• De - multiplexing of the address and data lines are done by ALE signal

Page 58: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 58

DATA MEMORY ORGANIZATION

• 8051 Microcontroller supports

• 64 Kbytes of External Data Memory

• 128bytes of Internal Data Memory

Page 59: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 59

External Memory Interface

MemoryLatch ADD-L

ADD-H

8051

Page 60: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 60

• External Data Memory is accessed using

16 - bit address lines.

RD bar and WR bar are used as strobe signals

• Address range : 0000h to 0FFFFh

- External Memory

00h to 7Fh

- Internal Memory

Page 61: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 61

7Fh80h

FFh

00h

SFR’s

Direct Addressing

only

Direct

& In Direct Addressing

only

0000h

FFFFh

64 Kbytes of

External Memory

Page 62: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 62

PROGRAM MEMORY ORGANIZATION

• 8051 Microcontroller supports

• 64 Kbytes of External Program Memory

• 4Kbytes of Internal Program Memory plus 60K bytes of External Program Memory.

Page 63: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 63

• External Program Memory is accessed using

16 - bit address lines.

PSEN is used as read strobe for external program memory

• Address range : 0000h to 0FFFFh

Page 64: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 64

0000h

FFFFh

64 Kbytes of

External ROM

4Kbytes of Internal

ROM

0FFFh

0000h

FFFFh

1000h

60Kbytes of External

ROM

OR+

Page 65: 1. Intro 8051 Arch

(C ) The Contents of this document are the copyright of CDAC. No part of the contents may be used or reproduced without the prior permission of the author 65

8051 Memory Structure

EA bar=0External

EA bar=1Internal

ExternalExternal(64Kb)

direct(128)

indirect (128)

direct& indirect

(128)