PIC18F4439-E/ML Microchip Technology, PIC18F4439-E/ML Datasheet - Page 70

IC PIC MCU FLASH 6KX16 44QFN

PIC18F4439-E/ML

Manufacturer Part Number
PIC18F4439-E/ML
Description
IC PIC MCU FLASH 6KX16 44QFN
Manufacturer
Microchip Technology
Series
PIC® 18Fr

Specifications of PIC18F4439-E/ML

Core Processor
PIC
Core Size
8-Bit
Speed
40MHz
Connectivity
I²C, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, LVD, POR, PWM, WDT
Number Of I /o
32
Program Memory Size
12KB (6K x 16)
Program Memory Type
FLASH
Eeprom Size
256 x 8
Ram Size
640 x 8
Voltage - Supply (vcc/vdd)
4.2 V ~ 5.5 V
Data Converters
A/D 8x10b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 125°C
Package / Case
44-QFN
Processor Series
PIC18F
Core
PIC
Data Bus Width
8 bit
Data Ram Size
640 B
Interface Type
I2C, SPI, AUSART
Maximum Clock Frequency
40 MHz
Number Of Programmable I/os
32
Number Of Timers
16 bit
Operating Supply Voltage
2 V to 5.5 V
Maximum Operating Temperature
+ 125 C
Mounting Style
SMD/SMT
3rd Party Development Tools
52715-96, 52716-328, 52717-734, 52712-325, EWPIC18
Development Tools By Supplier
DV164005, DV164136
Minimum Operating Temperature
- 40 C
On-chip Adc
8
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
PIC18FXX39
Example 7-3 shows the sequence to do a 16 x 16
unsigned multiply. Equation 7-1 shows the algorithm
that is used. The 32-bit result is stored in four registers,
RES3:RES0.
EQUATION 7-1:
EXAMPLE 7-3:
Example 7-4 shows the sequence to do a 16 x 16
signed multiply. Equation 7-2 shows the algorithm
used. The 32-bit result is stored in four registers,
RES3:RES0. To account for the sign bits of the argu-
ments, each argument pairs Most Significant bit (MSb)
is tested and the appropriate subtractions are done.
DS30485A-page 68
;
;
;
RES3:RES0
MOVF
MULWF
MOVFF
MOVFF
MOVF
MULWF
MOVFF
MOVFF
MOVF
MULWF
MOVF
ADDWF
MOVF
ADDWFC RES2,
CLRF
ADDWFC RES3,
MOVF
MULWF
MOVF
ADDWF
MOVF
ADDWFC RES2,
CLRF
ADDWFC RES3,
ARG1L, W
ARG2L
PRODH, RES1 ;
PRODL, RES0 ;
ARG1H, W
ARG2H
PRODH, RES3 ;
PRODL, RES2 ;
ARG1L, W
ARG2H
PRODL, W
RES1,
PRODH, W
WREG
ARG1H, W
ARG2L
PRODL, W
RES1,
PRODH, W
WREG
=
=
ARG1H:ARG1L • ARG2H:ARG2L
(ARG1H • ARG2H • 2
(ARG1H • ARG2L • 2
(ARG1L • ARG2H • 2
(ARG1L • ARG2L)
16 x 16 UNSIGNED
MULTIPLICATION
ALGORITHM
16 x 16 UNSIGNED
MULTIPLY ROUTINE
F
F
F
F
F
F
; ARG1L * ARG2L ->
; PRODH:PRODL
; ARG1H * ARG2H ->
; PRODH:PRODL
; ARG1L * ARG2H ->
; PRODH:PRODL
;
; Add cross
; products
;
;
;
;
; ARG1H * ARG2L ->
; PRODH:PRODL
;
; Add cross
; products
;
;
;
8
8
16
) +
) +
) +
Preliminary
EQUATION 7-2:
EXAMPLE 7-4:
;
;
;
;
;
SIGN_ARG1
;
CONT_CODE
RES3:RES0
MOVF
MULWF
MOVFF
MOVFF
MOVF
MULWF
MOVFF
MOVFF
MOVF
MULWF
MOVF
ADDWF
MOVF
ADDWFC RES2,
CLRF
ADDWFC RES3,
MOVF
MULWF
MOVF
ADDWF
MOVF
ADDWFC RES2,
CLRF
ADDWFC RES3,
BTFSS
BRA
MOVF
SUBWF
MOVF
SUBWFB RES3
BTFSS
BRA
MOVF
SUBWF
MOVF
SUBWFB RES3
=
=
:
ARG1H:ARG1L • ARG2H:ARG2L
(ARG1H • ARG2H • 2
(ARG1H • ARG2L • 2
(ARG1L • ARG2H • 2
(ARG1L • ARG2L) +
(-1 • ARG2H<7> • ARG1H:ARG1L • 2
(-1 • ARG1H<7> • ARG2H:ARG2L • 2
ARG1L, W
ARG2L
PRODH, RES1 ;
PRODL, RES0 ;
ARG1H, W
ARG2H
PRODH, RES3 ;
PRODL, RES2 ;
ARG1L, W
ARG2H
PRODL, W
RES1,
PRODH, W
WREG
ARG1H, W
ARG2L
PRODL, W
RES1,
PRODH, W
WREG
ARG2H, 7
SIGN_ARG1
ARG1L, W
RES2
ARG1H, W
ARG1H, 7
CONT_CODE
ARG2L, W
RES2
ARG2H, W
16 x 16 SIGNED
MULTIPLICATION
ALGORITHM
16 x 16 SIGNED
MULTIPLY ROUTINE
F
F
F
F
F
F
 2002 Microchip Technology Inc.
; ARG1L * ARG2L ->
; PRODH:PRODL
; ARG1H * ARG2H ->
; PRODH:PRODL
; ARG1L * ARG2H ->
; PRODH:PRODL
;
; Add cross
; products
;
;
;
;
; ARG1H * ARG2L ->
; PRODH:PRODL
;
; Add cross
; products
;
;
;
; ARG2H:ARG2L neg?
; no, check ARG1
;
;
;
; ARG1H:ARG1L neg?
; no, done
;
;
;
8
8
16
) +
) +
) +
16
16
) +
)

Related parts for PIC18F4439-E/ML