PIC16F870/871
FIGURE 1-2:
Device
PIC16F871
PIC16F871 BLOCK DIAGRAM
Program
FLASH
2K
Data Memory
128 Bytes
Data
EEPROM
64 Bytes
13
FLASH
Program
Memory
8 Level Stack
(13-bit)
Program
Bus
14
Instruction reg
Direct Addr
7
Program Counter
Data Bus
8
PORTA
RA0/AN0
RA1/AN1
RA2/AN2/V
REF
-
RA3/AN3/V
REF
+
RA4/T0CKI
RA5/AN4
PORTB
RB0/INT
RB1
RB2
RB3/PGM
RB4
RB5
RB6/PGC
RB7/PGD
RC0/T1OSO/T1CKI
RC1/T1OSI
RC2/CCP1
RC3
RC4
RC5
RC6/TX/CK
RC7/RX/DT
PORTD
RAM
File
Registers
RAM Addr (1)
9
Addr MUX
8
Indirect
Addr
FSR reg
STATUS reg
8
3
PORTC
Power-up
Timer
Instruction
Decode &
Control
Timing
Generation
OSC1/CLKIN
OSC2/CLKOUT
Oscillator
Start-up Timer
Power-on
Reset
Watchdog
Timer
Brown-out
Reset
In-Circuit
Debugger
Low-Voltage
Programming
8
MUX
ALU
W reg
RD7/PSP7:RD0/PSP0
PORTE
RE0/AN5/RD
RE1/AN6/WR
MCLR
V
DD
, V
SS
RE2/AN7/CS
Timer0
Timer1
Timer2
10-bit A/D
Data EEPROM
CCP1
Parallel Slave Port
USART
Note 1:
Higher order bits are from the STATUS register.
DS30569A-page 6
Preliminary
©
1999 Microchip Technology Inc.