Architecture
Architecture
ARCHITECTURE OF 8051
MICROCONTROLLER
Report submitted by
M.Soma Sundari
1
MICROCONTROLLER EVOLUTION
INTRODUCTION TO 8051:
The Intel MCS-51 (commonly referred to as 8051) is a Harvard architecture, single
chip microcontroller (μC) series which was developed by Intel in 1980 for use in
embedded systems. The 8051 architecture provides many functions (CPU, RAM,
ROM, I/O, interrupt logic, timer,etc.) in a single package Features of 8051: 8-bit
2
Two external and three internal vectored interrupts Full duplex UART
(serialport)
3
The Internal architecture is shown in Figure 4.1.4 and the various Registers and units
are described below.
Accumulator (Acc):
•Operand register
SFR bank B Register: Used to store one of the operands for multiplication and
division, otherwise, scratch pad considered as a SFR.
Stack Pointer (SP): 8 bit wide register. Incremented before data is stored on to the
stack using PUSH or CALL instructions. Stack defined anywhere on the 128 byte
RAM. Data Pointer (DPTR): 16 bit register contains DPH and DPL Pointer to
external RAM address. DPH and DPL allotted separate addresses in SFR bank Port 0
To 3.
Latches & Drivers: Each I/O port allotted a latch and a driver Latches allotted
address in SFR. User can communicate via these ports P0, P1, P2, and P3.
Serial Data Buffer: Internally had TWO independent registers, TRANSMIT buffer
(parallel in serial out – PISO) and RECEIVE buffer (serial in parallel out –SIPO)
identified by SBUF and allotted an address in SFR.
Program Status Word (PSW): Set of flags contains status information as detailed .
Timer Registers: for Timer0 (16 bit register – TL0 & TH0) and for Timer1 (16 bit
register – TL1 & TH1) four addresses allotted in SFR. Control Registers: Control
registers are IP, IE, TMOD, TCON, SCON, and PCON. These registers contain
control and status information for interrupts, timers/counters and serial port.
Allotted separate address in SFR.
4
necessary timing and control signals for internal circuit and external system bus.
Oscillator: generates basic timing clock signal using crystal oscillator. Instruction
Register: Decodes the opcode and gives information to timing and control unit.
5
EPROM & program address Register: provide on chip EPROM and mechanism to
address it. All versions don’t have EPROM. Ram & Ram Address Register: provide
internal 128 bytes RAM and a mechanism to address internally ALU: Performs 8 bit
arithmetic and logical operations over the operands held by TEMP1 and TEMP 2.User
cannot access temporary registers. SFR Register Bank: set of special function registers
address range: 80 H to FF H. Interrupt, serial port and timer units control and perform
specific functions under the control of timing and control unit.