PIC16F54-E/SS Microchip Technology, PIC16F54-E/SS Datasheet - Page 14
![IC MCU FLASH 512X12 20SSOP](/photos/6/58/65895/150-20-ssop_sml.jpg)
PIC16F54-E/SS
Manufacturer Part Number
PIC16F54-E/SS
Description
IC MCU FLASH 512X12 20SSOP
Manufacturer
Microchip Technology
Series
PIC® 16Fr
Specifications of PIC16F54-E/SS
Core Processor
PIC
Core Size
8-Bit
Speed
20MHz
Peripherals
POR, WDT
Number Of I /o
12
Program Memory Size
768B (512 x 12)
Program Memory Type
FLASH
Ram Size
25 x 8
Voltage - Supply (vcc/vdd)
2 V ~ 5.5 V
Oscillator Type
External
Operating Temperature
-40°C ~ 125°C
Package / Case
20-SSOP
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
Eeprom Size
-
Data Converters
-
Connectivity
-
PIC16F5X
2.1
The clock input (OSC1/CLKIN pin) is internally divided
by four to generate four non-overlapping quadrature
clocks, namely Q1, Q2, Q3 and Q4. Internally, the
Program Counter (PC) is incremented every Q1 and
the instruction is fetched from program memory and
latched into the instruction register in Q4. It is decoded
and executed during the following Q1 through Q4. The
clocks and instruction execution flow are shown in
Figure 2-2 and Example 2-1.
FIGURE 2-2:
EXAMPLE 2-1:
DS41213D-page 12
1. MOVLW H'55'
2. MOVWF PORTB
3. CALL
4. BSF
All instructions are single cycle, except for any program branches. These take two cycles since the fetch instruction
is “flushed” from the pipeline, while the new instruction is being fetched and then executed.
OSC2/CLKOUT
Clocking Scheme/Instruction
Cycle
(RC mode)
SUB_1
PORTA, BIT3
OSC1
Q4
PC
Q2
Q3
Q1
CLOCK/INSTRUCTION CYCLE
INSTRUCTION PIPELINE FLOW
Q1
Execute INST (PC - 1)
Fetch INST (PC)
Q2
Fetch 1
PC
Q3
Execute 1
Q4
Fetch 2
Q1
Execute INST (PC)
Fetch INST (PC + 1)
Execute 2
Q2
Fetch 3
PC + 1
2.2
An instruction cycle consists of four Q cycles (Q1, Q2,
Q3 and Q4). The instruction fetch and execute are
pipelined such that fetch takes one instruction cycle,
while decode and execute takes another instruction
cycle. However, due to the pipelining, each instruction
effectively executes in one cycle. If an instruction
causes the Program Counter to change (e.g., GOTO),
then two cycles are required to complete the instruction
(Example 2-1).
A fetch cycle begins with the Program Counter (PC)
incrementing in Q1.
In the execution cycle, the fetched instruction is latched
into the instruction register in cycle Q1. This instruction
is then decoded and executed during the Q2, Q3 and
Q4 cycles. Data memory is read during Q2 (operand
read) and written during Q4 (destination write).
Q3
Execute 3
Q4
Fetch 4
Instruction Flow/Pipelining
Q1
Fetch SUB_1 Execute SUB_1
Execute INST (PC + 1)
Fetch INST (PC + 2)
Q2
Flush
© 2007 Microchip Technology Inc.
PC + 2
Q3
Q4
Internal
phase
clock