XC164LM_07 [INFINEON]
16-Bit Single-Chip Microcontroller with C166SV2 Core; 16位单芯片微控制器,带有C166SV2核心型号: | XC164LM_07 |
厂家: | Infineon |
描述: | 16-Bit Single-Chip Microcontroller with C166SV2 Core |
文件: | 总61页 (文件大小:1706K) |
中文: | 中文翻译 | 下载: | 下载PDF数据表文档文件 |
Data Sheet, V1.2, March 2007
XC164LM
16-Bit Single-Chip Microcontroller
with C166SV2 Core
Microcontrollers
Edition 2007-03
Published by
Infineon Technologies AG
81726 Munich, Germany
© 2007 Infineon Technologies AG
All Rights Reserved.
Legal Disclaimer
The information given in this document shall in no event be regarded as a guarantee of conditions or
characteristics. With respect to any examples or hints given herein, any typical values stated herein and/or any
information regarding the application of the device, Infineon Technologies hereby disclaims any and all warranties
and liabilities of any kind, including without limitation, warranties of non-infringement of intellectual property rights
of any third party.
Information
For further information on technology, delivery terms and conditions and prices, please contact the nearest
Infineon Technologies Office (www.infineon.com).
Warnings
Due to technical requirements, components may contain dangerous substances. For information on the types in
question, please contact the nearest Infineon Technologies Office.
Infineon Technologies components may be used in life-support devices or systems only with the express written
approval of Infineon Technologies, if a failure of such components can reasonably be expected to cause the failure
of that life-support device or system or to affect the safety or effectiveness of that device or system. Life support
devices or systems are intended to be implanted in the human body or to support and/or maintain and sustain
and/or protect human life. If they fail, it is reasonable to assume that the health of the user or other persons may
be endangered.
Data Sheet, V1.2, March 2007
XC164LM
16-Bit Single-Chip Microcontroller
with C166SV2 Core
Microcontrollers
XC164LM
Derivatives
Table of Contents
Table of Contents
1
Summary of Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2
General Device Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1
Pin Configuration and Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3
Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Memory Subsystem and Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Central Processing Unit (CPU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Interrupt System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
On-Chip Debug Support (OCDS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Capture/Compare Unit (CAPCOM2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
General Purpose Timer (GPT12E) Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Real Time Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Asynchronous/Synchronous Serial Interfaces (ASC0/ASC1) . . . . . . . . . . 33
High Speed Synchronous Serial Channels (SSC0/SSC1) . . . . . . . . . . . . 34
Watchdog Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Clock Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Parallel Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Power Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Instruction Set Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
3.11
3.12
3.13
3.14
4
4.1
4.2
4.3
4.3.1
4.3.2
4.3.3
Electrical Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
General Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
DC Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
AC Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Definition of Internal Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
On-chip Flash Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
External Clock Drive XTAL1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5
5.1
5.2
Package and Reliability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Packaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Flash Memory Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Data Sheet
2
V1.2, 2007-03
XC164LM
Derivatives
XC164LM
Revision History: V1.2, 2007-03
Previous Version(s):
V1.1, 2006-08
V1.0, 2005-11
Page
6
Subjects (major changes since last revision)
Design steps of the derivatives differentiated.
Power consumption of the derivatives differentiated.
Figure 9 adapted.
47
48
49
56
57
all
Figure 11 adapted.
Packages of the derivatives differentiated.
Thermal resistances of the derivatives differentiated.
“Preliminary” removed
We Listen to Your Comments
Any information within this document that you feel is wrong, unclear or missing at all?
Your feedback will help us to continuously improve the quality of this document.
Please send your proposal (including a reference to this document) to:
mcdocu.comments@infineon.com
Data Sheet
V1.2, 2007-03
16-Bit Single-Chip Microcontroller with C166SV2 Core
XC166 Family
XC164LM
1
Summary of Features
For a quick overview or reference, the XC164LM’s properties are listed here in a
condensed way.
• High Performance 16-bit CPU with 5-Stage Pipeline
– 25 ns Instruction Cycle Time at 40 MHz CPU Clock (Single-Cycle Execution)
– 1-Cycle Multiplication (16 × 16 bit), Background Division (32 / 16 bit) in 21 Cycles
– 1-Cycle Multiply-and-Accumulate (MAC) Instructions
– Enhanced Boolean Bit Manipulation Facilities
– Zero-Cycle Jump Execution
– Additional Instructions to Support HLL and Operating Systems
– Register-Based Design with Multiple Variable Register Banks
– Fast Context Switching Support with Two Additional Local Register Banks
– 16 Mbytes Total Linear Address Space for Code and Data
– 1024 Bytes On-Chip Special Function Register Area (C166 Family Compatible)
• 16-Priority-Level Interrupt System with up to 63 Sources, Sample-Rate down to 50 ns
• 8-Channel Interrupt-Driven Single-Cycle Data Transfer Facilities via
Peripheral Event Controller (PEC), 24-Bit Pointers Cover Total Address Space
• Clock Generation via on-chip PLL (factors 1:0.15 … 1:10), or
via Prescaler (factors 1:1 … 60:1)
• On-Chip Memory Modules
– 2 Kbytes On-Chip Dual-Port RAM (DPRAM)
– 0/2/4 Kbytes1) On-Chip Data SRAM (DSRAM)
– 2 Kbytes On-Chip Program/Data SRAM (PSRAM)
– 32/64/1281) Kbytes On-Chip Program Memory (Flash Memory)
• On-Chip Peripheral Modules
– 16-Channel General Purpose Capture/Compare Unit (CAPCOM2)
– Multi-Functional General Purpose Timer Unit with 5 Timers
– Two Synchronous/Asynchronous Serial Channels (USARTs)
– Two High-Speed-Synchronous Serial Channels
– On-Chip Real Time Clock, Driven by the Main Oscillator
• Idle, Sleep, and Power Down Modes with Flexible Power Management
• Programmable Watchdog Timer and Oscillator Watchdog
• Up to 47 General Purpose I/O Lines,
partly with Selectable Input Thresholds and Hysteresis
• On-Chip Bootstrap Loader
1) Depends on the respective derivative. See Table 1 “XC164LM Derivative Synopsis” on Page 6.
Data Sheet
4
V1.2, 2007-03
XC164LM
Derivatives
Summary of Features
• On-Chip Debug Support via JTAG Interface
• 64-Pin Green LQFP Package for the -16F derivatives, 0.5 mm (19.7 mil) pitch (RoHS
compliant)
• 64-Pin TQFP Package for the -4F/8F derivatives, 0.5 mm (19.7 mil) pitch (RoHS
compliant)
Ordering Information
The ordering code for Infineon microcontrollers provides an exact reference to the
required product. This ordering code identifies:
• the derivative itself, i.e. its function set, the temperature range, and the supply voltage
• the package and the type of delivery.
For the available ordering codes for the XC164LM please refer to your responsible sales
representative or your local distributor.
This document describes several derivatives of the XC164LM group. Table 1
enumerates these derivatives and summarizes the differences. As this document refers
to all of these derivatives, some descriptions may not apply to a specific product.
For simplicity all versions are referred to by the term XC164LM throughout this
document.
Data Sheet
5
V1.2, 2007-03
XC164LM
Derivatives
Summary of Features
Table 1
XC164LM Derivative Synopsis
Derivative1)
Temp. Program
Range Memory
On-Chip RAM Interfaces
SAF-XC164LM-16F40F -40 to
128 Kbytes 2 Kbytes DPRAM, ASC0, ASC1,
SAF-XC164LM-16F20F 85 °C
Flash
4 Kbytes DSRAM, SSC0, SSC1
2 Kbytes PSRAM
SAF-XC164LM-8F40F
SAF-XC164LM-8F20F
-40 to
85 °C
64 Kbytes 2 Kbytes DPRAM, ASC0, ASC1,
Flash
2 Kbytes DSRAM, SSC0, SSC1,
2 Kbytes PSRAM
SAF-XC164LM-4F40F
SAF-XC164LM-4F20F
-40 to
85 °C
32 Kbytes 2 Kbytes DPRAM, ASC0, ASC1,
Flash 2 Kbytes PSRAM SSC0, SSC1
1) This Data Sheet is valid for:
devices starting with and including design step BA for the -16F derivatives, and for
devices starting with and including design step AA for -4F/8F derivatives.
Data Sheet
6
V1.2, 2007-03
XC164LM
Derivatives
General Device Information
2
General Device Information
The XC164LM derivatives are high-performance members of the Infineon XC166 Family
of full featured single-chip CMOS microcontrollers. These devices extend the
functionality and performance of the C166 Family in terms of instructions (MAC unit),
peripherals, and speed. They combine high CPU performance (up to 40 million
instructions per second) with high peripheral functionality and enhanced IO-capabilities.
They also provide clock generation via PLL and various on-chip memory modules such
as program Flash, program RAM, and data RAM.
VDDI/P
VSS
PORT1
14 bit
XTAL1
XTAL2
Port 3
15 bit
NMI
XC164LM
RSTIN
Port 5
14 bit
Port 9
6 bit
TRST
MCA05554_XC164LM
Figure 1
Logic Symbol
Data Sheet
7
V1.2, 2007-03
XC164LM
Derivatives
General Device Information
2.1
Pin Configuration and Definition
The pins of the XC164LM are described in detail in Table 2, including all their alternate
functions. Figure 2 summarizes all pins in a condensed way, showing their location on
the 4 sides of the package. E* marks pins to be used as alternate external interrupt
inputs.
64636261605958 57565554535251 5049
P1H.0/EX0IN/CC23IO
P1H.1/EX1IN/MRST1
P1H.2/EX2IN/MTRS1
P1H.3/EX3IN/T7IN/SCLK1
P1H.4/CC24IO/EX4IN
P1H.5/CC25IO/EX5IN
VSS
1
2
3
4
5
6
7
8
9
48 P9.5/CC21IO
47 P9.4/CC20IO
46 P9.3/CC19IO
45 P9.2/CC18IO/E*
44 P9.1/CC17IO
43 P9.0/CC16IO/E*
42 P3.15/CLKOUT/FOUT
41 VSS
VDDP
P5.0
40 VDDP
39 P3.13/SCLK0/E*
XC164LM
P5.1 10
P5.2
P5.3
P5.4
P3.11/RxD0/E*
11
12
13
38
37 P3.10/TxD0/E*
36 P3.9/MTSR0
35 P3.8/MRST0
34 P3.7/T2IN/BRKIN
33 P3.6/T3IN
P5.5 14
P5.10/T6EUD 15
P5.11/T5EUD 16
17181920212223 24252627282930 3132
mc_xc164lm_pinout.vsd
Figure 2
Pin Configuration (top view)
Data Sheet
8
V1.2, 2007-03
XC164LM
Derivatives
General Device Information
Table 2
Pin Definitions and Functions
Pin Input Function
Num. Outp.
Sym-
bol
RSTIN 63
I
Reset Input with Schmitt-Trigger characteristics. A low-level
at this pin while the oscillator is running resets the XC164LM.
A spike filter suppresses input pulses < 10 ns. Input pulses
> 100 ns safely pass the filter. The minimum duration for a
safe recognition should be 100 ns + 2 CPU clock cycles.
Note: The reset duration must be sufficient to let the
hardware configuration signals settle.
External circuitry must guarantee low-level at the
RSTIN pin at least until both power supply voltages
have reached the operating range.
NMI
64
I
Non-Maskable Interrupt Input. A high to low transition at this
pin causes the CPU to vector to the NMI trap routine. When
the PWRDN (power down) instruction is executed, the NMI
pin must be low in order to force the XC164LM into power
down mode. If NMI is high, when PWRDN is executed, the
part will continue to run in normal mode.
If not used, pin NMI should be pulled high externally.
Port 9 43-48 IO
Port 9 is a 6-bit bidirectional I/O port. Each pin can be
programmed for input (output driver in high-impedance state)
or output (configurable as push/pull or open drain driver). The
input threshold of Port 9 is selectable (standard or special).
The following Port 9 pins also serve for alternate functions:
CC16IO: (CAPCOM2) CC16 Capture Inp./Compare Outp.,
EX5IN: (Fast External Interrupt 5) Input (alternate pin A)
CC17IO: (CAPCOM2) CC17 Capture Inp./Compare Outp.,
CC18IO: (CAPCOM2) CC18 Capture Inp./Compare Outp.,
EX4IN: (Fast External Interrupt 4) Input (alternate pin A)
CC19IO: (CAPCOM2) CC19 Capture Inp./Compare Outp.,
CC20IO: (CAPCOM2) CC20 Capture Inp./Compare Outp.
CC21IO: (CAPCOM2) CC21 Capture Inp./Compare Outp.
P9.0
43
I/O
I
P9.1
P9.2
44
45
I/O
I/O
I
P9.3
P9.4
P9.5
46
47
48
I/O
I/O
I/O
Note: At the end of an external reset P9.4 and P9.5 also may
input startup configuration values
Data Sheet
9
V1.2, 2007-03
XC164LM
Derivatives
General Device Information
Table 2
Pin Definitions and Functions (cont’d)
Sym-
bol
Pin
Input Function
Num. Outp.
Port 5 9-18,
I
Port 5 is a 14-bit input-only port.
21-24
Some pins of Port 5 also serve as timer inputs:
T6EUD: GPT2 Timer T6 Ext. Up/Down Control Input
T5EUD: GPT2 Timer T5 Ext. Up/Down Control Input
T6IN: GPT2 Timer T6 Count/Gate Input
T5IN: GPT2 Timer T5 Count/Gate Input
T4EUD: GPT1 Timer T4 Ext. Up/Down Control Input
T2EUD: GPT1 Timer T2 Ext. Up/Down Control Input
P5.10
P5.11
P5.12
P5.13
P5.14
P5.15
15
16
21
22
23
24
I
I
I
I
I
I
TRST
62
I
Test-System Reset Input. For normal system operation, pin
TRST should be held low. A high level at this pin at the rising
edge of RSTIN enables the hardware configuration and
activates the XC164LM’s debug system. In this case, pin
TRST must be driven low once to reset the debug system.
Data Sheet
10
V1.2, 2007-03
XC164LM
Derivatives
General Device Information
Table 2
Pin Definitions and Functions (cont’d)
Sym-
bol
Pin
Input Function
Num. Outp.
Port 3 28-39, IO
Port 3 is a 13-bit bidirectional I/O port. Each pin can be
programmed for input (output driver in high-impedance state)
or output (configurable as push/pull or open drain driver). The
input threshold of Port 3 is selectable (standard or
special).The following Port 3 pins also serve for alternate
functions:
42
P3.1
28
O
I/O
I
T6OUT: [GPT2] Timer T6 Toggle Latch Output,
RxD1: [ASC1] Data Input (Async.) or Inp./Outp. (Sync.),
EX1IN: [Fast External Interrupt 1] Input (alternate pin A),
TCK: [Debug System] JTAG Clock Input
I
P3.2
P3.3
P3.4
P3.5
29
30
31
32
I
I
O
O
I
I
I
O
O
I
CAPIN: [GPT2] Register CAPREL Capture Input,
TDI: [Debug System] JTAG Data In
T3OUT: [GPT1] Timer T3 Toggle Latch Output,
TDO: [Debug System] JTAG Data Out
T3EUD: [GPT1] Timer T3 External Up/Down Control Input,
TMS: [Debug System] JTAG Test Mode Selection
T4IN: [GPT1] Timer T4 Count/Gate/Reload/Capture Inp.
TxD1: [ASC0] Clock/Data Output (Async./Sync.),
BRKOUT: [Debug System] Break Out
P3.6
P3.7
33
34
T3IN: [GPT1] Timer T3 Count/Gate Input
T2IN: [GPT1] Timer T2 Count/Gate/Reload/Capture Inp.
BRKIN: [Debug System] Break In
I
I
P3.8
P3.9
P3.10
35
36
37
I/O
I/O
O
I
I/O
I
I/O
I
O
O
MRST0: [SSC0] Master-Receive/Slave-Transmit In/Out.
MTSR0: [SSC0] Master-Transmit/Slave-Receive Out/In.
TxD0: [ASC0] Clock/Data Output (Async./Sync.),
EX2IN: [Fast External Interrupt 2] Input (alternate pin B)
RxD0: [ASC0] Data Input (Async.) or Inp./Outp. (Sync.),
EX2IN: [Fast External Interrupt 2] Input (alternate pin A)
SCLK0: [SSC0] Master Clock Output / Slave Clock Input.,
EX3IN: [Fast External Interrupt 3] Input (alternate pin A)
CLKOUT: System Clock Output (= CPU Clock),
FOUT: Programmable Frequency Output
P3.11
P3.13
P3.15
38
39
42
Data Sheet
11
V1.2, 2007-03
XC164LM
Derivatives
General Device Information
Table 2
Pin Definitions and Functions (cont’d)
Sym-
bol
Pin
Input Function
Num. Outp.
PORT1 1-6,
49-56
IO
PORT1 consists of one 8-bit and one 6-bit bidirectional I/O
port P1L and P1H. Each pin can be programmed for input
(output driver in high-impedance state) or output.
The following PORT1 pins also serve for alt. functions:
CC22IO: [CAPCOM2] CC22 Capture Inp./Compare Outp.
EX0IN: [Fast External Interrupt 0] Input (default pin),
CC23IO: [CAPCOM2] CC23 Capture Inp./Compare Outp.
EX1IN: [Fast External Interrupt 1] Input (default pin),
MRST1: [SSC1] Master-Receive/Slave-Transmit In/Out.
EX2IN: [Fast External Interrupt 2] Input (default pin),
MTSR1: [SSC1] Master-Transmit/Slave-Receive Out/Inp.
T7IN: [CAPCOM2] Timer T7 Count Input,
P1L.7
P1H.0
56
I/O
I
I/O
I
I/O
I
I/O
I
1
2
3
3
P1H.1
P1H.2
P1H.3
I/O
I
I/O
I
I/O
I
SCLK1: [SSC1] Master Clock Output / Slave Clock Input,
EX3IN: [Fast External Interrupt 3] Input (default pin),
CC24IO: [CAPCOM2] CC24 Capture Inp./Compare Outp.,
EX4IN: [Fast External Interrupt 4] Input (default pin)
CC25IO: [CAPCOM2] CC25 Capture Inp./Compare Outp.,
EX5IN: [Fast External Interrupt 5] Input (default pin)
P1H.4
P1H.5
5
6
Note: At the end of an external reset P1H.4 and P1H.5 also
may input startup configuration values
XTAL2 61
XTAL1 60
O
I
XTAL2: Output of the oscillator amplifier circuit
XTAL1: Input to the oscillator amplifier and input to the
internal clock generator
To clock the device from an external source, drive XTAL1,
while leaving XTAL2 unconnected. Minimum and maximum
high/low and rise/fall times specified in the AC Characteristics
must be observed.
Note: Input pin XTAL1 belongs to the core voltage domain.
Therefore, input voltages must be within the range
defined for VDDI.
VDDI
26, 58 –
Digital Core Supply Voltage (On-Chip Modules):
+2.5 V during normal operation and idle mode.
Please refer to the Operating Condition Parameters
Data Sheet
12
V1.2, 2007-03
XC164LM
Derivatives
General Device Information
Table 2
Pin Definitions and Functions (cont’d)
Sym-
bol
Pin
Input Function
Num. Outp.
VDDP
8, 27, –
40, 57
Digital Pad Supply Voltage (Pin Output Drivers):
+5 V during normal operation and idle mode.
Please refer to the Operating Condition Parameters
VSS
7, 25, –
41, 59
Digital Ground
Connect decoupling capacitors to adjacent VDD/VSS pin pairs
as close as possible to the pins.
All VSS pins must be connected to the ground-line or ground-
plane.
Data Sheet
13
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
3
Functional Description
The architecture of the XC164LM combines advantages of RISC, CISC, and DSP
processors with an advanced peripheral subsystem in a very well-balanced way. In
addition, the on-chip memory blocks allow the design of compact systems-on-silicon with
maximum performance (computing, control, communication).
The on-chip memory blocks (program code-memory and SRAM, dual-port RAM, data
SRAM) and the set of generic peripherals are connected to the CPU via separate buses.
Another bus, the LXBus, connects additional on-chip resources (see Figure 3).
This bus structure enhances the overall system performance by enabling the concurrent
operation of several subsystems of the XC164LM.
The following block diagram gives an overview of the different on-chip components and
of the advanced, high bandwidth internal bus structure of the XC164LM.
PSRAM
2 Kbytes
DPRAM
2 Kbytes
ProgMem
Flash
DSRAM
CPU
0/2/4 Kbytes
32/64/128Kbytes
C166SV2-Core
OCDS
Debug Support
Osc / PLL RTC WDT
Interrupt & PEC
XTAL
Clock Generation
Interrupt Bus
Peripheral Data Bus
GPT ASC0 ASC1 SSC0 SSC1
CC2
(USART) (USART) (SPI)
(SPI)
T2
T7
T3
T8
T4
T5
T6
BRGen BRGen BRGen BRGen
Port 5
Port 9
6
Port 3
13
PORT1
14
14
mc_xc164lm_block1.vsd
Figure 3
Block Diagram
Data Sheet
14
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
3.1
Memory Subsystem and Organization
The memory space of the XC164LM is configured in a von Neumann architecture, which
means that all internal and external resources, such as code memory, data memory,
registers and I/O ports, are organized within the same linear address space. This
common memory space includes 16 Mbytes and is arranged as 256 segments of
64 Kbytes each, where each segment consists of four data pages of 16 Kbytes each.
The entire memory space can be accessed byte wise or word wise. Portions of the
on-chip DPRAM and the register spaces (E/SFR) have additionally been made directly
bit addressable.
The internal data memory areas and the Special Function Register areas (SFR and
ESFR) are mapped into segment 0, the system segment.
The Program Management Unit (PMU) handles all code fetches and, therefore, controls
accesses to the program memories, such as Flash memory and PSRAM.
The Data Management Unit (DMU) handles all data transfers and, therefore, controls
accesses to the DSRAM and the on-chip peripherals.
Both units (PMU and DMU) are connected via the high-speed system bus to exchange
data. This is required if operands are read from program memory or code or data is
written to the PSRAM. The system bus allows concurrent two-way communication for
maximum transfer performance.
32/64/128 Kbytes of on-chip Flash memory1) store code or constant data. The on-chip
Flash memory is organized as four 8-Kbyte sectors and up to three 32-Kbyte sectors.
Each sector can be separately write protected2), erased and programmed (in blocks of
128 Bytes). The complete Flash area can be read-protected. A password sequence
temporarily unlocks protected areas. The Flash module combines very fast 64-bit one-
cycle read accesses with protected and efficient writing algorithms for programming and
erasing. Thus, program execution out of the internal Flash results in maximum
performance. Dynamic error correction provides extremely high read data security for all
read accesses.
Programming typically takes 2 ms per 128-byte block (5 ms max.), erasing a sector
typically takes 200 ms (500 ms max.).
2 Kbytes of on-chip Program SRAM (PSRAM) are provided to store user code or data.
The PSRAM is accessed via the PMU and is therefore optimized for code fetches.
0/2/4 Kbytes1) of on-chip Data SRAM (DSRAM) are provided as a storage for general
user data. The DSRAM is accessed via the DMU and is therefore optimized for data
accesses. DSRAM is not available in the XC164LM-4F derivatives.
2 Kbytes of on-chip Dual-Port RAM (DPRAM) are provided as a storage for user
defined variables, for the system stack, general purpose register banks. A register bank
1) Depends on the respective derivative. See Table 1 “XC164LM Derivative Synopsis” on Page 6.
2) Each two 8-Kbyte sectors are combined for write-protection purposes.
Data Sheet
15
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
can consist of up to 16 word wide (R0 to R15) and/or byte wide (RL0, RH0, …, RL7, RH7)
so-called General Purpose Registers (GPRs).
The upper 256 bytes of the DPRAM are directly bit addressable. When used by a GPR,
any location in the DPRAM is bit addressable.
1024 bytes (2 × 512 bytes) of the address space are reserved for the Special Function
Register areas (SFR space and ESFR space). SFRs are word wide registers which are
used for controlling and monitoring functions of the different on-chip units. Unused SFR
addresses are reserved for future members of the XC166 Family. Therefore, they should
either not be accessed, or written with zeros, to ensure upward compatibility.
Table 3
XC164LM Memory Map
Address Area
Start Loc. End Loc. Area Size1)
Notes
2)
Flash register space
Reserved (Acc. trap)
Reserved for PSRAM
Program SRAM
FF’F000H FF’FFFFH 4 Kbytes
F8’0000H
E0’0800H
E0’0000H
FF’FFFFH 508 Kbytes
–
F7’FFFFH < 1.5 Mbytes Minus PSRAM
E0’07FFH 2 Kbytes
–
Reserved for pr. mem. C2’0000H DF’FFFFH < 2 Mbytes
Minus Flash
XC164LM-16F
XC164LM-8F
XC164LM-4F
Program Flash
C0’0000H C1’FFFFH 128 Kbytes
C0’0000H C0’FFFFH 64 Kbytes
C0’0000H C0’7FFFH 32 Kbytes
Reserved
20’0000H
01’0000H
BF’FFFFH < 10 Mbytes
1F’FFFFH < 2 Mbytes
Reserved
Minus segment 0
SFR area
00’FE00H 00’FFFFH 0.5 Kbyte
–
–
–
–
–
Dual-Port RAM
Reserved for DPRAM
ESFR area
00’F600H
00’F200H
00’F000H
00’E000H
00’FDFFH 2 Kbytes
00’F5FFH 1 Kbyte
00’F1FFH 0.5 Kbyte
00’EFFFH 4 Kbytes
XSFR area
Reserved
00’D000H 00’DFFFH 6 Kbytes
00’C000H 00’CFFFH 4 Kbytes
–
3)
Data SRAM
Reserved for DSRAM
Reserved
00’8000H
00’0000H
00’BFFFH 16 Kbytes
00’7FFFH 32 Kbytes
–
–
1) The areas marked with “<” are slightly smaller than indicated, see column “Notes”.
2) Not defined register locations return a trap code (1E9BH).
3) Depends on the respective derivative. See Table 1 “XC164LM Derivative Synopsis” on Page 6.
Data Sheet
16
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
3.2
Central Processing Unit (CPU)
The main core of the CPU consists of a 5-stage execution pipeline with a 2-stage
instruction-fetch pipeline, a 16-bit arithmetic and logic unit (ALU), a 32-bit/40-bit multiply
and accumulate unit (MAC), a register-file providing three register banks, and dedicated
SFRs. The ALU features a multiply and divide unit, a bit-mask generator, and a barrel
shifter.
PSRAM
Flash/ROM
PMU
CPU
Prefetch
CSP
IP
VECSEG
TFR
2-Stage
Prefetch
Pipeline
Unit
CPUCO N1
CPUCO N2
Branch
Unit
5-Stage
Pipeline
Injection/
Exception
Handler
DPRAM
Return
Stack
FIFO
IFU
DPP0
IPIP
IDX0
IDX1
Q X0
Q X1
Q R0
Q R1
SPSEG
SP
CP
DPP1
DPP2
DPP3
R15
STKO V
STKUN
R15
R14
R14
G PRs
G PR s
+/-
+/-
ADU
R1
R0
R1
Division Unit
M ultiply Unit
Bit-M ask-G en.
Barrel-Shifter
M ultiply
Unit
M RW
R0
R0
R0
M CW
M SW
M DC
PSW
RF
+/-
+/-
M DH
M DL
O NES
ALU
DSRAM
EBC
Peripherals
Buffer
WB
M AH
M AL
ZERO S
MAC
DMU
m ca04917_x.vsd
Figure 4
CPU Block Diagram
Based on these hardware provisions, most of the XC164LM’s instructions can be
executed in just one machine cycle which requires 25 ns at 40 MHz CPU clock. For
Data Sheet
17
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
example, shift and rotate instructions are always processed during one machine cycle
independent of the number of bits to be shifted. Also multiplication and most MAC
instructions execute in one single cycle. All multiple-cycle instructions have been
optimized so that they can be executed very fast as well: for example, a 32-/16-bit
division is started within 4 cycles, while the remaining 15 cycles are executed in the
background. Another pipeline optimization, the branch target prediction, allows
eliminating the execution time of branch instructions if the prediction was correct.
The CPU has a register context consisting of up to three register banks with 16 word
wide GPRs each at its disposal. One of these register banks is physically allocated within
the on-chip DPRAM area. A Context Pointer (CP) register determines the base address
of the active register bank to be accessed by the CPU at any time. The number of
register banks is only restricted by the available internal RAM space. For easy parameter
passing, a register bank may overlap others.
A system stack of up to 32 Kwords is provided as a storage for temporary data. The
system stack can be allocated to any location within the address space (preferably in the
on-chip RAM area), and it is accessed by the CPU via the stack pointer (SP) register.
Two separate SFRs, STKOV and STKUN, are implicitly compared against the stack
pointer value upon each stack access for the detection of a stack overflow or underflow.
The high performance offered by the hardware implementation of the CPU can efficiently
be utilized by a programmer via the highly efficient XC164LM instruction set which
includes the following instruction classes:
• Standard Arithmetic Instructions
• DSP-Oriented Arithmetic Instructions
• Logical Instructions
• Boolean Bit Manipulation Instructions
• Compare and Loop Control Instructions
• Shift and Rotate Instructions
• Prioritize Instruction
• Data Movement Instructions
• System Stack Instructions
• Jump and Call Instructions
• Return Instructions
• System Control Instructions
• Miscellaneous Instructions
The basic instruction length is either 2 or 4 bytes. Possible operand types are bits, bytes
and words. A variety of direct, indirect or immediate addressing modes are provided to
specify the required operands.
Data Sheet
18
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
3.3
Interrupt System
With an interrupt response time of typically 8 CPU clocks (in case of internal program
execution), the XC164LM is capable of reacting very fast to the occurrence of non-
deterministic events.
The architecture of the XC164LM supports several mechanisms for fast and flexible
response to service requests that can be generated from various sources internal or
external to the microcontroller. Any of these interrupt requests can be programmed to
being serviced by the Interrupt Controller or by the Peripheral Event Controller (PEC).
In contrast to a standard interrupt service where the current program execution is
suspended and a branch to the interrupt vector table is performed, just one cycle is
‘stolen’ from the current CPU activity to perform a PEC service. A PEC service implies a
single byte or word data transfer between any two memory locations with an additional
increment of either the PEC source, or the destination pointer, or both. An individual PEC
transfer counter is implicitly decremented for each PEC service except when performing
in the continuous transfer mode. When this counter reaches zero, a standard interrupt is
performed to the corresponding source related vector location. PEC services are very
well suited, for example, for supporting the transmission or reception of blocks of data.
The XC164LM has 8 PEC channels each of which offers such fast interrupt-driven data
transfer capabilities.
A separate control register which contains an interrupt request flag, an interrupt enable
flag and an interrupt priority bit field exists for each of the possible interrupt nodes. Via
its related register, each node can be programmed to one of sixteen interrupt priority
levels. Once having been accepted by the CPU, an interrupt service can only be
interrupted by a higher prioritized service request. For the standard interrupt processing,
each of the possible interrupt nodes has a dedicated vector location.
Fast external interrupt inputs are provided to service external interrupts with high
precision requirements. These fast interrupt inputs feature programmable edge
detection (rising edge, falling edge, or both edges).
Software interrupts are supported by means of the ‘TRAP’ instruction in combination with
an individual trap (interrupt) number.
Table 4 shows all of the possible XC164LM interrupt sources and the corresponding
hardware-related interrupt flags, vectors, vector locations and trap (interrupt) numbers.
Note: Interrupt nodes which are not assigned to peripherals (unassigned nodes), may
be used to generate software controlled interrupt requests by setting the
respective interrupt request bit (xIR).
Data Sheet
19
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
Table 4
XC164LM Interrupt Nodes
Source of Interrupt or PEC
Service Request
Control
Register
Vector Trap
Location1)
xx’0060H
xx’0064H
xx’0068H
xx’006CH
xx’0070H
xx’0074H
xx’00C0H
xx’00C4H
xx’00C8H
xx’00CCH
xx’00D0H
xx’00D4H
xx’00D8H
xx’00DCH
xx’00E0H
xx’00E4H
xx’00E8H
xx’00ECH
xx’00F0H
xx’0110H
xx’0114H
xx’0118H
xx’00F4H
xx’00F8H
Number
18H / 24D
19H / 25D
1AH / 26D
1BH / 27D
1CH / 28D
1DH / 29D
30H / 48D
31H / 49D
32H / 50D
33H / 51D
34H / 52D
35H / 53D
36H / 54D
37H / 55D
38H / 56D
39H / 57D
3AH / 58D
3BH / 59D
3CH / 60D
44H / 68D
45H / 69D
46H / 70D
3DH / 61D
3EH / 62D
22H / 34D
23H / 35D
24H / 36D
25H / 37D
26H / 38D
EX0IN
CC1_CC8IC
CC1_CC9IC
CC1_CC10IC
CC1_CC11IC
CC1_CC12IC
CC1_CC13IC
CC2_CC16IC
CC2_CC17IC
CC2_CC18IC
CC2_CC19IC
CC2_CC20IC
CC2_CC21IC
CC2_CC22IC
CC2_CC23IC
CC2_CC24IC
CC2_CC25IC
CC2_CC26IC
CC2_CC27IC
CC2_CC28IC
CC2_CC29IC
CC2_CC30IC
CC2_CC31IC
CC2_T7IC
EX1IN
EX2IN
EX3IN
EX4IN
EX5IN
CAPCOM Register 16
CAPCOM Register 17
CAPCOM Register 18
CAPCOM Register 19
CAPCOM Register 20
CAPCOM Register 21
CAPCOM Register 22
CAPCOM Register 23
CAPCOM Register 24
CAPCOM Register 25
CAPCOM Register 26
CAPCOM Register 27
CAPCOM Register 28
CAPCOM Register 29
CAPCOM Register 30
CAPCOM Register 31
CAPCOM Timer 7
CAPCOM Timer 8
GPT1 Timer 2
CC2_T8IC
GPT12E_T2IC xx’0088H
GPT12E_T3IC xx’008CH
GPT12E_T4IC xx’0090H
GPT12E_T5IC xx’0094H
GPT12E_T6IC xx’0098H
GPT1 Timer 3
GPT1 Timer 4
GPT2 Timer 5
GPT2 Timer 6
Data Sheet
20
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
Table 4
XC164LM Interrupt Nodes (cont’d)
Source of Interrupt or PEC
Service Request
Control
Register
Vector
Location1)
Trap
Number
27H / 39D
2AH / 42D
47H / 71D
2BH / 43D
2CH / 44D
5FH / 95D
2DH / 45D
2EH / 46D
2FH / 47D
43H / 67D
48H / 72D
5EH / 94D
49H / 73D
4AH / 74D
42H / 66D
4CH / 76D
51H / 81D
52H / 82D
53H / 83D
5DH / 93D
10H / 16D
11H / 17D
12H / 18D
13H / 19D
14H / 20D
15H / 21D
16H / 22D
17H / 23D
1EH / 30D
1FH / 31D
GPT2 CAPREL Register
ASC0 Transmit
ASC0 Transmit Buffer
ASC0 Receive
ASC0 Error
GPT12E_CRIC xx’009CH
ASC0_TIC
ASC0_TBIC
ASC0_RIC
ASC0_EIC
ASC0_ABIC
SSC0_TIC
SSC0_RIC
SSC0_EIC
PLLIC
xx’00A8H
xx’011CH
xx’00ACH
xx’00B0H
xx’017CH
xx’00B4H
xx’00B8H
xx’00BCH
xx’010CH
xx’0120H
xx’0178H
xx’0124H
xx’0128H
xx’0108H
xx’0130H
xx’0144H
xx’0148H
xx’014CH
xx’0174H
xx’0040H
xx’0044H
xx’0048H
xx’004CH
xx’0050H
xx’0054H
xx’0058H
xx’005CH
xx’0078H
xx’007CH
ASC0 Autobaud
SSC0 Transmit
SSC0 Receive
SSC0 Error
PLL/OWD
ASC1 Transmit
ASC1 Transmit Buffer
ASC1 Receive
ASC1 Error
ASC1_TIC
ASC1_TBIC
ASC1_RIC
ASC1_EIC
ASC1_ABIC
EOPIC
SSC1_TIC
SSC1_RIC
SSC1_EIC
RTC_IC
–
ASC1 Autobaud
End of PEC Subchannel
SSC1 Transmit
SSC1 Receive
SSC1 Error
RTC
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
–
–
–
–
–
–
–
–
–
Data Sheet
21
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
Table 4
XC164LM Interrupt Nodes (cont’d)
Source of Interrupt or PEC
Service Request
Control
Register
Vector Trap
Location1)
xx’0080H
xx’0084H
xx’00A0H
xx’00A4H
xx’00FCH
xx’0100H
xx’0104H
xx’012CH
xx’0134H
xx’0138H
xx’013CH
xx’0140H
xx’0150H
xx’0154H
xx’0158H
xx’015CH
xx’0160H
xx’0164H
xx’0168H
xx’016CH
xx’0170H
Number
20H / 32D
21H / 33D
28H / 40D
29H / 41D
3FH / 63D
40H / 64D
41H / 65D
4BH / 75D
4DH / 77D
4EH / 78D
4FH / 79D
50H / 80D
54H / 84D
55H / 85D
56H / 86D
57H / 87D
58H / 88D
59H / 89D
5AH / 90D
5BH / 91D
5CH / 92D
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
Unassigned node
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
1) Register VECSEG defines the segment where the vector table is located to.
Bitfield VECSC in register CPUCON1 defines the distance between two adjacent vectors. This table
represents the default setting, with a distance of 4 (two words) between two vectors.
Data Sheet
22
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
The XC164LM also provides an excellent mechanism to identify and to process
exceptions or error conditions that arise during run-time, so-called ‘Hardware Traps’.
Hardware traps cause immediate non-maskable system reaction which is similar to a
standard interrupt service (branching to a dedicated vector table location). The
occurrence of a hardware trap is additionally signified by an individual bit in the trap flag
register (TFR). Except when another higher prioritized trap service is in progress, a
hardware trap will interrupt any actual program execution. In turn, hardware trap services
can normally not be interrupted by standard or PEC interrupts.
Table 5 shows all of the possible exceptions or error conditions that can arise during run-
time:
Table 5
Hardware Trap Summary
Exception Condition
Trap
Flag
Trap
Vector
Vector
Trap
Trap
Location1) Number Priority
Reset Functions:
–
• Hardware Reset
• Software Reset
• W-dog Timer Overflow
RESET
RESET
RESET
xx’0000H
xx’0000H
xx’0000H
00H
00H
00H
III
III
III
Class A Hardware Traps:
• Non-Maskable Interrupt NMI
NMITRAP
STOTRAP
STUTRAP
xx’0008H
xx’0010H
xx’0018H
02H
04H
06H
08H
II
II
II
II
• Stack Overflow
• Stack Underflow
• Software Break
STKOF
STKUF
SOFTBRK SBRKTRAP xx’0020H
Class B Hardware Traps:
• Undefined Opcode
• PMI Access Error
• Protected Instruction
Fault
UNDOPC BTRAP
xx’0028H
xx’0028H
xx’0028H
0AH
0AH
0AH
I
I
I
PACER
PRTFLT
BTRAP
BTRAP
• Illegal Word Operand
Access
ILLOPA
BTRAP
xx’0028H
0AH
I
Reserved
–
–
–
–
[2CH - 3CH] [0BH -
0FH]
–
Software Traps
• TRAP Instruction
Any
Any
Current
CPU
Priority
[xx’0000H - [00H -
xx’01FCH] 7FH]
in steps of
4H
1) Register VECSEG defines the segment where the vector table is located to.
Bitfield VECSC in register CPUCON1 defines the distance between two adjacent vectors. This table
represents the default setting, with a distance of 4 (two words) between two vectors.
Data Sheet
23
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
3.4
On-Chip Debug Support (OCDS)
The On-Chip Debug Support system provides a broad range of debug and emulation
features built into the XC164LM. The user software running on the XC164LM can thus
be debugged within the target system environment.
The OCDS is controlled by an external debugging device via the debug interface,
consisting of the IEEE-1149-conforming JTAG port and a break interface. The debugger
controls the OCDS via a set of dedicated registers accessible via the JTAG interface.
Additionally, the OCDS system can be controlled by the CPU, e.g. by a monitor program.
An injection interface allows the execution of OCDS-generated instructions by the CPU.
Multiple breakpoints can be triggered by on-chip hardware, by software, or by an
external trigger input. Single stepping is supported as well as the injection of arbitrary
instructions and read/write access to the complete internal address space. A breakpoint
trigger can be answered with a CPU-halt, a monitor call, a data transfer, or/and the
activation of an external signal.
Tracing data can be obtained via the JTAG interface.
The debug interface uses a set of 6 interface signals (4 JTAG lines, 2 break lines) to
communicate with external circuitry. These interface signals are realized as alternate
functions on Port 3 pins.
Data Sheet
24
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
3.5
Capture/Compare Unit (CAPCOM2)
The CAPCOM unit supports generation and control of timing sequences on up to
16 channels with a maximum resolution of 1 system clock cycle (8 cycles in staggered
mode). The CAPCOM unit is typically used to handle high speed I/O tasks such as pulse
and waveform generation, pulse width modulation (PWM), Digital to Analog (D/A)
conversion, software timing, or time recording relative to external events.
Two 16-bit timers (T7/T8) with reload registers provide two independent time bases for
the capture/compare register array.
The input clock for the timers is programmable to several prescaled values of the internal
system clock, or may be derived from an overflow/underflow of timer T6 in module GPT2.
This provides a wide range of variation for the timer period and resolution and allows
precise adjustments to the application specific requirements. In addition, an external
count input for CAPCOM timer T7 allows event scheduling for the capture/compare
registers relative to external events.
The capture/compare register array contains 16 dual purpose capture/compare
registers, each of which may be individually allocated to either CAPCOM timer (T7 or T8,
respectively), and programmed for capture or compare function.
10 registers of the CAPCOM2 module have each one port pin associated with it which
serves as an input pin for triggering the capture function, or as an output pin to indicate
the occurrence of a compare event.
Table 6
Compare Modes (CAPCOM2)
Compare Modes
Function
Mode 0
Interrupt-only compare mode;
Several compare interrupts per timer period are possible
Mode 1
Mode 2
Mode 3
Pin toggles on each compare match;
Several compare events per timer period are possible
Interrupt-only compare mode;
Only one compare interrupt per timer period is generated
Pin set ‘1’ on match; pin reset ‘0’ on compare timer overflow;
Only one compare event per timer period is generated
Double Register
Mode
Two registers operate on one pin;
Pin toggles on each compare match;
Several compare events per timer period are possible
Single Event Mode
Generates single edges or pulses;
Can be used with any compare mode
When a capture/compare register has been selected for capture mode, the current
contents of the allocated timer will be latched (‘captured’) into the capture/compare
Data Sheet
25
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
register in response to an external event at the port pin which is associated with this
register. In addition, a specific interrupt request for this capture/compare register is
generated. Either a positive, a negative, or both a positive and a negative external signal
transition at the pin can be selected as the triggering event.
The contents of all registers which have been selected for one of the five compare modes
are continuously compared with the contents of the allocated timers.
When a match occurs between the timer value and the value in a capture/compare
register, specific actions will be taken based on the selected compare mode.
Data Sheet
26
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
Reload Reg.
T7REL
fCC
T7
T7IN
T6OUF
Input
Control
Timer T7
T7IRQ
CCxIO
CCxIO
CCxIRQ
CCxIRQ
Mode
Control
(Capture
or
Sixteen
16-bit
Capture/
Compare
Registers
Compare)
CCxIO
CCxIRQ
T8IRQ
T8
Input
fCC
Timer T8
T6OUF
Control
Reload Reg.
T8REL
CAPCOM2 provides channels x = 16 … 31.
(see signals CCxIO and CCxIRQ)
MCB05569_2
Figure 5
CAPCOM2 Unit Block Diagram
Data Sheet
27
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
3.6
General Purpose Timer (GPT12E) Unit
The GPT12E unit represents a very flexible multifunctional timer/counter structure which
may be used for many different time related tasks such as event timing and counting,
pulse width and duty cycle measurements, pulse generation, or pulse multiplication.
The GPT12E unit incorporates five 16-bit timers which are organized in two separate
modules, GPT1 and GPT2. Each timer in each module may operate independently in a
number of different modes, or may be concatenated with another timer of the same
module.
Each of the three timers T2, T3, T4 of module GPT1 can be configured individually for
one of four basic modes of operation, which are Timer, Gated Timer, Counter, and
Incremental Interface Mode. In Timer Mode, the input clock for a timer is derived from
the system clock, divided by a programmable prescaler, while Counter Mode allows a
timer to be clocked in reference to external events.
Pulse width or duty cycle measurement is supported in Gated Timer Mode, where the
operation of a timer is controlled by the ‘gate’ level on an external input pin. For these
purposes, each timer has one associated port pin (TxIN) which serves as gate or clock
input. The maximum resolution of the timers in module GPT1 is 4 system clock cycles.
The count direction (up/down) for each timer is programmable by software or may
additionally be altered dynamically by an external signal on a port pin (TxEUD) to
facilitate e.g. position tracking.
In Incremental Interface Mode the GPT1 timers (T2, T3, T4) can be directly connected
to the incremental position sensor signals A and B via their respective inputs TxIN and
TxEUD. Direction and count signals are internally derived from these two input signals,
so the contents of the respective timer Tx corresponds to the sensor position. The third
position sensor signal TOP0 can be connected to an interrupt input.
Timer T3 has an output toggle latch (T3OTL) which changes its state on each timer
overflow/underflow. The state of this latch may be output on pin T3OUT e.g. for time out
monitoring of external hardware components. It may also be used internally to clock
timers T2 and T4 for measuring long time periods with high resolution.
In addition to their basic operating modes, timers T2 and T4 may be configured as reload
or capture registers for timer T3. When used as capture or reload registers, timers T2
and T4 are stopped. The contents of timer T3 is captured into T2 or T4 in response to a
signal at their associated input pins (TxIN). Timer T3 is reloaded with the contents of T2
or T4 triggered either by an external signal or by a selectable state transition of its toggle
latch T3OTL. When both T2 and T4 are configured to alternately reload T3 on opposite
state transitions of T3OTL with the low and high times of a PWM signal, this signal can
be constantly generated without software intervention.
Data Sheet
28
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
T3CON.BPS1
2n:1
Basic Clock
fGPT
Interrupt
Request
(T2IRQ)
Aux. Timer T2
U/D
T2IN
T2
Mode
Control
Reload
T2EUD
Capture
Interrupt
Request
(T3IRQ)
T3
Mode
Control
Core Timer T3
T3OTL
Toggle
Latch
T3IN
T3OUT
U/D
T3EUD
Capture
Reload
T4IN
T4
Mode
Control
Interrupt
Request
(T4IRQ)
Aux. Timer T4
T4EUD
U/D
MCA05563
Figure 6
Block Diagram of GPT1
With its maximum resolution of 2 system clock cycles, the GPT2 module provides
precise event control and time measurement. It includes two timers (T5, T6) and a
capture/reload register (CAPREL). Both timers can be clocked with an input clock which
is derived from the CPU clock via a programmable prescaler or with external signals. The
Data Sheet
29
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
count direction (up/down) for each timer is programmable by software or may
additionally be altered dynamically by an external signal on a port pin (TxEUD).
Concatenation of the timers is supported via the output toggle latch (T6OTL) of timer T6,
which changes its state on each timer overflow/underflow.
The state of this latch may be used to clock timer T5, and/or it may be output on pin
T6OUT. The overflows/underflows of timer T6 can additionally be used to clock the
CAPCOM2 timers, and to cause a reload from the CAPREL register.
The CAPREL register may capture the contents of timer T5 based on an external signal
transition on the corresponding port pin (CAPIN), and timer T5 may optionally be cleared
after the capture procedure. This allows the XC164LM to measure absolute time
differences or to perform pulse multiplication without software overhead.
The capture trigger (timer T5 to CAPREL) may also be generated upon transitions of
GPT1 timer T3’s inputs T3IN and/or T3EUD. This is especially advantageous when T3
operates in Incremental Interface Mode.
Data Sheet
30
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
T6CON.BPS2
2n:1
Basic Clock
fGPT
Interrupt
Request
(T5IRQ)
GPT2 Timer T5
T5
Mode
Control
U/D
T5IN
Clear
Capture
CAPIN
GPT2 CAPREL
CAPREL
Mode
Control
Interrupt
Request
(CRIRQ)
Reload
Clear
T3IN/
T3EUD
Interrupt
Request
(T6IRQ)
Toggle
FF
GPT2 Timer T6
T6OTL
T6OUT
T6OUF
T6
Mode
Control
U/D
T6IN
MCA05564
Figure 7
Block Diagram of GPT2
Data Sheet
31
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
3.7
Real Time Clock
The Real Time Clock (RTC) module of the XC164LM is directly clocked via a separate
clock driver with the prescaled on-chip main oscillator frequency (fRTC = fOSCm/32). It is
therefore independent from the selected clock generation mode of the XC164LM.
The RTC basically consists of a chain of divider blocks:
• A selectable 8:1 divider (on - off)
• The reloadable 16-bit timer T14
• The 32-bit RTC timer block (accessible via registers RTCH and RTCL), made of:
– a reloadable 10-bit timer
– a reloadable 6-bit timer
– a reloadable 6-bit timer
– a reloadable 10-bit timer
All timers count up. Each timer can generate an interrupt request. All requests are
combined to a common node request.
fRTC
MUX
:
8
RTCINT
Interrupt Sub Node
RUN
CNT
INT0
CNT
INT1
CNT
INT2
CNT
INT3
PRE
REL-Register
T14REL
10 Bits
6 Bits
6 Bits
10 Bits
fCNT
T14
10 Bits
6 Bits
6 Bits
10 Bits
T14-Register
CNT-Register
MCB05568
Figure 8
RTC Block Diagram
Note: The registers associated with the RTC are not affected by a reset in order to
maintain the correct system time even when intermediate resets are executed.
Data Sheet
32
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
The RTC module can be used for different purposes:
• System clock to determine the current time and date,
optionally during idle mode, sleep mode, and power down mode
• Cyclic time based interrupt, to provide a system time tick independent of CPU
frequency and other resources, e.g. to wake up regularly from idle mode
• 48-bit timer for long term measurements (maximum timespan is > 100 years)
• Alarm interrupt for wake-up on a defined time
3.8
Asynchronous/Synchronous Serial Interfaces (ASC0/ASC1)
The Asynchronous/Synchronous Serial Interfaces ASC0/ASC1 (USARTs) provide serial
communication with other microcontrollers, processors, terminals or external peripheral
components. They are upward compatible with the serial ports of the Infineon 8-bit
microcontroller families and support full-duplex asynchronous communication and half-
duplex synchronous communication. A dedicated baudrate generator with a fractional
divider precisely generates all standard baud rates without oscillator tuning. For
transmission, reception, error handling, and baud rate detection 5 separate interrupt
vectors are provided.
In asynchronous mode, 8- or 9-bit data frames (with optional parity bit) are transmitted
or received, preceded by a start bit and terminated by one or two stop bits. For
multiprocessor communication, a mechanism to distinguish address from data bytes has
been included (8-bit data plus wake-up bit mode). IrDA data transmissions up to
115.2 kbit/s with fixed or programmable IrDA pulse width are supported.
In synchronous mode, bytes (8 bits) are transmitted or received synchronously to a shift
clock which is generated by the ASC0/1. The LSB is always shifted first.
In both modes, transmission and reception of data is FIFO-buffered. An autobaud
detection unit allows to detect asynchronous data frames with its baudrate and mode
with automatic initialization of the baudrate generator and the mode control bits.
A number of optional hardware error detection capabilities has been included to increase
the reliability of data transfers. A parity bit can automatically be generated on
transmission or be checked on reception. Framing error detection allows to recognize
data frames with missing stop bits. An overrun error will be generated, if the last
character received has not been read out of the receive buffer register at the time the
reception of a new character is complete.
Summary of Features
• Full-duplex asynchronous operating modes
– 8- or 9-bit data frames, LSB first, one or two stop bits, parity generation/checking
– Baudrate from 2.5 Mbit/s to 0.6 bit/s (@ 40 MHz)
– Multiprocessor mode for automatic address/data byte detection
– Support for IrDA data transmission/reception up to max. 115.2 kbit/s (@ 40 MHz)
Data Sheet
33
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
– Auto baudrate detection
• Half-duplex 8-bit synchronous operating mode at 5 Mbit/s to 406.9 bit/s (@ 40 MHz)
• Buffered transmitter/receiver with FIFO support (8 entries per direction)
• Loop-back option available for testing purposes
• Interrupt generation on transmitter buffer empty condition, last bit transmitted
condition, receive buffer full condition, error condition (frame, parity, overrun error),
start and end of an autobaud detection
3.9
High Speed Synchronous Serial Channels (SSC0/SSC1)
The High Speed Synchronous Serial Channels SSC0/SSC1 support full-duplex and half-
duplex synchronous communication. It may be configured so it interfaces with serially
linked peripheral components, full SPI functionality is supported.
A dedicated baud rate generator allows to set up all standard baud rates without
oscillator tuning. For transmission, reception and error handling three separate interrupt
vectors are provided.
The SSC transmits or receives characters of 2 … 16 bits length synchronously to a shift
clock which can be generated by the SSC (master mode) or by an external master (slave
mode). The SSC can start shifting with the LSB or with the MSB and allows the selection
of shifting and latching clock edges as well as the clock polarity.
A number of optional hardware error detection capabilities has been included to increase
the reliability of data transfers. Transmit error and receive error supervise the correct
handling of the data buffer. Phase error and baudrate error detect incorrect serial data.
Summary of Features
• Master or Slave mode operation
• Full-duplex or Half-duplex transfers
• Baudrate generation from 20 Mbit/s to 305.18 bit/s (@ 40 MHz)
• Flexible data format
– Programmable number of data bits: 2 to 16 bits
– Programmable shift direction: LSB-first or MSB-first
– Programmable clock polarity: idle low or idle high
– Programmable clock/data phase: data shift with leading or trailing clock edge
• Loop back option available for testing purposes
• Interrupt generation on transmitter buffer empty condition, receive buffer full
condition, error condition (receive, phase, baudrate, transmit error)
• Three pin interface with flexible SSC pin configuration
Data Sheet
34
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
3.10
Watchdog Timer
The Watchdog Timer represents one of the fail-safe mechanisms which have been
implemented to prevent the controller from malfunctioning for longer periods of time.
The Watchdog Timer is always enabled after a reset of the chip, and can be disabled
until the EINIT instruction has been executed (compatible mode), or it can be disabled
and enabled at any time by executing instructions DISWDT and ENWDT (enhanced
mode). Thus, the chip’s start-up procedure is always monitored. The software has to be
designed to restart the Watchdog Timer before it overflows. If, due to hardware or
software related failures, the software fails to do so, the Watchdog Timer overflows and
generates an internal hardware reset.
The Watchdog Timer is a 16-bit timer, clocked with the system clock divided by
2/4/128/256. The high byte of the Watchdog Timer register can be set to a prespecified
reload value (stored in WDTREL) in order to allow further variation of the monitored time
interval. Each time it is serviced by the application software, the high byte of the
Watchdog Timer is reloaded and the low byte is cleared. Thus, time intervals between
13 μs and 419 ms can be monitored (@ 40 MHz).
The default Watchdog Timer interval after reset is 3.28 ms (@ 40 MHz).
Data Sheet
35
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
3.11
Clock Generation
The Clock Generation Unit uses a programmable on-chip PLL with multiple prescalers
to generate the clock signals for the XC164LM with high flexibility. The master clock fMC
is the reference clock signal and is output to the external system. The CPU clock fCPU
and the system clock fSYS are derived from the master clock either directly (1:1) or via a
2:1 prescaler (fSYS = fCPU = fMC / 2). See also Section 4.3.1.
The on-chip oscillator can drive an external crystal or accepts an external clock signal.
The oscillator clock frequency can be multiplied by the on-chip PLL (by a programmable
factor) or can be divided by a programmable prescaler factor.
If the bypass mode is used (direct drive or prescaler) the PLL can deliver an independent
clock to monitor the clock signal generated by the on-chip oscillator. This PLL clock is
independent from the XTAL1 clock. When the expected oscillator clock transitions are
missing the Oscillator Watchdog (OWD) activates the PLL Unlock/OWD interrupt node
and supplies the CPU with an emergency clock, the PLL clock signal. Under these
circumstances the PLL will oscillate with its basic frequency.
The oscillator watchdog can be disabled by switching the PLL off. This reduces power
consumption, but also no interrupt request will be generated in case of a missing
oscillator clock.
Data Sheet
36
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
3.12
Parallel Ports
The XC164LM provides up to 47 I/O lines which are organized into three input/output
ports and one input port. All port lines are bit-addressable, and all input/output lines are
individually (bit-wise) programmable as inputs or outputs via direction registers. The I/O
ports are true bidirectional ports which are switched to high impedance state when
configured as inputs. The output drivers of some I/O ports can be configured (pin by pin)
for push/pull operation or open-drain operation via control registers. During the internal
reset, all port pins are configured as inputs.
The edge characteristics (shape) and driver characteristics (output current) of the port
drivers can be selected via registers POCONx.
The input threshold of some ports is selectable (TTL or CMOS like), where the special
CMOS like input threshold reduces noise sensitivity due to the input hysteresis. The
input threshold may be selected individually for each byte of the respective ports.
All port lines have programmable alternate input or output functions associated with
them. All port lines that are not used for these alternate functions may be used as general
purpose IO lines.
Table 7
Port
Summary of the XC164LM’s Parallel Ports
Control
Alternate Functions
PORT1
Pad drivers
Capture inputs or compare outputs,
Serial interface lines
Port 3
Pad drivers,
Open drain,
Input threshold
Timer control signals, serial interface lines,
System clock output CLKOUT (or FOUT)
Port 5
Port 9
–
Timer control signals
Pad drivers,
Open drain,
Input threshold
Capture inputs or compare outputs
Data Sheet
37
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
3.13
Power Management
The XC164LM provides several means to control the power it consumes either at a given
time or averaged over a certain timespan. Three mechanisms can be used (partly in
parallel):
• Power Saving Modes switch the XC164LM into a special operating mode (control
via instructions).
Idle Mode stops the CPU while the peripherals can continue to operate.
Sleep Mode and Power Down Mode stop all clock signals and all operation (RTC may
optionally continue running). Sleep Mode can be terminated by external interrupt
signals.
• Clock Generation Management controls the distribution and the frequency of
internal and external clock signals. While the clock signals for currently inactive parts
of logic are disabled automatically, the user can reduce the XC164LM’s CPU clock
frequency which drastically reduces the consumed power.
External circuitry can be controlled via the programmable frequency output FOUT.
• Peripheral Management permits temporary disabling of peripheral modules (control
via register SYSCON3). Each peripheral can separately be disabled/enabled.
The on-chip RTC supports intermittent operation of the XC164LM by generating cyclic
wake-up signals. This offers full performance to quickly react on action requests while
the intermittent sleep phases greatly reduce the average power consumption of the
system.
Data Sheet
38
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
3.14
Instruction Set Summary
Table 8 lists the instructions of the XC164LM in a condensed way.
The various addressing modes that can be used with a specific instruction, the operation
of the instructions, parameters for conditional execution of instructions, and the opcodes
for each instruction can be found in the “Instruction Set Manual”.
This document also provides a detailed description of each instruction.
Table 8
Instruction Set Summary
Description
Mnemonic
ADD(B)
Bytes
2 / 4
2 / 4
2 / 4
2 / 4
2
Add word (byte) operands
ADDC(B)
SUB(B)
Add word (byte) operands with Carry
Subtract word (byte) operands
Subtract word (byte) operands with Carry
SUBC(B)
MUL(U)
(Un)Signed multiply direct GPR by direct GPR
(16- × 16-bit)
DIV(U)
(Un)Signed divide register MDL by direct GPR (16-/16-bit) 2
(Un)Signed long divide reg. MD by direct GPR (32-/16-bit) 2
DIVL(U)
CPL(B)
Complement direct word (byte) GPR
Negate direct word (byte) GPR
Bitwise AND, (word/byte operands)
Bitwise OR, (word/byte operands)
Bitwise exclusive OR, (word/byte operands)
Clear/Set direct bit
2
NEG(B)
AND(B)
OR(B)
2
2 / 4
2 / 4
2 / 4
2
XOR(B)
BCLR/BSET
BMOV(N)
Move (negated) direct bit to direct bit
4
BAND/BOR/BXOR AND/OR/XOR direct bit with direct bit
4
BCMP
Compare direct bit to direct bit
4
BFLDH/BFLDL
Bitwise modify masked high/low byte of bit-addressable
direct word memory with immediate data
4
CMP(B)
CMPD1/2
CMPI1/2
PRIOR
Compare word (byte) operands
2 / 4
Compare word data to GPR and decrement GPR by 1/2 2 / 4
Compare word data to GPR and increment GPR by 1/2
2 / 4
2
Determine number of shift cycles to normalize direct
word GPR and store result in direct word GPR
SHL/SHR
Data Sheet
Shift left/right direct word GPR
2
39
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
Table 8
Mnemonic
ROL/ROR
ASHR
Instruction Set Summary (cont’d)
Description
Bytes
Rotate left/right direct word GPR
2
Arithmetic (sign bit) shift right direct word GPR
Move word (byte) data
2
MOV(B)
MOVBS/Z
JMPA/I/R
JMPS
2 / 4
Move byte operand to word op. with sign/zero extension 2 / 4
Jump absolute/indirect/relative if condition is met
Jump absolute to a code segment
4
4
4
4
JB(C)
Jump relative if direct bit is set (and clear bit)
Jump relative if direct bit is not set (and set bit)
JNB(S)
CALLA/I/R
CALLS
Call absolute/indirect/relative subroutine if condition is met 4
Call absolute subroutine in any code segment
4
4
PCALL
Push direct word register onto system stack and call
absolute subroutine
TRAP
Call interrupt service routine via immediate trap number
Push/pop direct word register onto/from system stack
2
2
4
PUSH/POP
SCXT
Push direct word register onto system stack and update
register with word operand
RET(P)
Return from intra-segment subroutine
2
(and pop direct word register from system stack)
RETS
Return from inter-segment subroutine
Return from interrupt service subroutine
Software Break
2
RETI
2
SBRK
SRST
2
Software Reset
4
IDLE
Enter Idle Mode
4
PWRDN
SRVWDT
Enter Power Down Mode (supposes NMI-pin being low)
Service Watchdog Timer
4
4
DISWDT/ENWDT Disable/Enable Watchdog Timer
4
EINIT
End-of-Initialization Register Lock
4
ATOMIC
EXTR
Begin ATOMIC sequence
2
Begin EXTended Register sequence
Begin EXTended Page (and Register) sequence
Begin EXTended Segment (and Register) sequence
2
EXTP(R)
EXTS(R)
2 / 4
2 / 4
Data Sheet
40
V1.2, 2007-03
XC164LM
Derivatives
Functional Description
Table 8
Mnemonic
NOP
Instruction Set Summary (cont’d)
Description
Bytes
Null operation
2
4
4
4
4
4
4
4
4
4
4
CoMUL/CoMAC
CoADD/CoSUB
Co(A)SHR
Multiply (and accumulate)
Add/Subtract
(Arithmetic) Shift right
Shift left
CoSHL
CoLOAD/STORE
CoCMP
Load accumulator/Store MAC register
Compare
CoMAX/MIN
CoABS/CoRND
CoMOV
Maximum/Minimum
Absolute value/Round accumulator
Data move
CoNEG/NOP
Negate accumulator/Null operation
Data Sheet
41
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
4
Electrical Parameters
The operating range for the XC164LM is defined by its electrical parameters. For proper
operation the indicated limitations must be respected when designing a system.
4.1
General Parameters
These parameters are valid for all subsequent descriptions, unless otherwise noted.
Table 9
Absolute Maximum Ratings
Parameter
Symbol
Limit Values
Unit
Notes
Min.
-65
Max.
150
1)
Storage temperature
Junction temperature
TST
TJ
°C
°C
V
-40
150
Under bias
–
Voltage on VDDI pins with VDDI
respect to ground (VSS)
-0.5
3.25
Voltage on VDDP pins with VDDP
respect to ground (VSS)
-0.5
-0.5
-10
–
6.2
V
–
2)
Voltage on any pin with
VIN
VDDP
0.5
+
V
respect to ground (VSS)
Input current on any pin
during overload condition
–
10
mA
mA
–
–
Absolute sum of all input
currents during overload
condition
–
|100|
1) Moisture Sensitivity Level (MSL) 3, conforming to Jedec J-STD-020C for 260 °C.
2) Input pin XTAL1 belongs to the core voltage domain. Therefore, input voltages must be within the range
defined for VDDI.
Note: Stresses above those listed under “Absolute Maximum Ratings” may cause
permanent damage to the device. This is a stress rating only and functional
operation of the device at these or any other conditions above those indicated in
the operational sections of this specification is not implied. Exposure to absolute
maximum rating conditions for extended periods may affect device reliability.
During absolute maximum rating overload conditions (VIN > VDDP or VIN < VSS) the
voltage on VDDP pins with respect to ground (VSS) must not exceed the values
defined by the absolute maximum ratings.
Data Sheet
42
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
Operating Conditions
The following operating conditions must not be exceeded to ensure correct operation of
the XC164LM. All parameters specified in the following sections refer to these operating
conditions, unless otherwise noticed.
Table 10
Operating Condition Parameters
Symbol Limit Values
Parameter
Unit Notes
Min.
Max.
Digital supply voltage for VDDI
the core
2.35
2.7
V
V
Active mode,
fCPU = fCPUmax
Active mode2)3)
1)
Digital supply voltage for VDDP
IO pads
4.4
5.5
–
4)
Supply Voltage Difference ΔVDD
-0.5
0
V
V
VDDP - VDDI
Digital ground voltage
Overload current
VSS
IOV
Reference voltage
-5
–
5
mA Per IO pin5)6)
Overload current coupling KOVD
5.0 × 10-3
1.0 × 10-2
50
–
IOV > 0
factor for digital I/O pins7)
–
–
IOV < 0
6)
Absolute sum of overload Σ|IOV|
–
mA
currents
External Load
Capacitance
CL
TA
–
50
pF
Pin drivers in
default mode8)
Ambient temperature
0
70
°C
°C
°C
SAB-XC164…
SAF-XC164…
SAK-XC164…
-40
-40
85
125
1) fCPUmax = 40 MHz for devices marked … 40F, fCPUmax = 20 MHz for devices marked … 20F.
2) External circuitry must guarantee low-level at the RSTIN pin at least until both power supply voltages have
reached the operating range.
3) The specified voltage range is allowed for operation. The range limits may be reached under extreme
operating conditions. However, specified parameters, such as leakage currents, refer to the standard
operating voltage range of VDDP = 4.75 V to 5.25 V.
4) This limitation must be fulfilled under all operating conditions including power-ramp-up, power-ramp-down,
and power-save modes.
5) Overload conditions occur if the standard operating conditions are exceeded, i.e. the voltage on any pin
exceeds the specified range: VOV > VDDP + 0.5 V (IOV > 0) or VOV < VSS - 0.5 V (IOV < 0). The absolute sum of
input overload currents on all pins may not exceed 50 mA. The supply voltages must remain within the
specified limits.
Proper operation is not guaranteed if overload conditions occur on functional pins such as XTAL1.
6) Not subject to production test - verified by design/characterization.
Data Sheet
43
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
7) An overload current (IOV) through a pin injects a certain error current (IINJ) into the adjacent pins. This error
current adds to the respective pin’s leakage current (IOZ). The amount of error current depends on the overload
current and is defined by the overload coupling factor KOV. The polarity of the injected error current is inverse
compared to the polarity of the overload current that produces it.
The total current through a pin is |ITOT| = |IOZ| + (|IOV| × KOV). The additional error current may distort the input
voltage on analog inputs.
8) The timing is valid for pin drivers operating in default current mode (selected after reset). Reducing the output
current may lead to increased delays or reduced driving capability (CL).
Parameter Interpretation
The parameters listed in the following partly represent the characteristics of the
XC164LM and partly its demands on the system. To aid in interpreting the parameters
right, when evaluating them for a design, they are marked in column “Symbol”:
CC (Controller Characteristics):
The logic of the XC164LM will provide signals with the respective characteristics.
SR (System Requirement):
The external system must provide signals with the respective characteristics to the
XC164LM.
Data Sheet
44
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
4.2
DC Parameters
These parameters are static or average values, which may be exceeded during
switching transitions (e.g. output current).
Table 11
DC Characteristics (Operating Conditions apply)1)
Parameter
Symbol
Limit Values
Max.
Unit Test Condition
Min.
Input low voltage TTL VIL
(all except XTAL1)
SR -0.5
0.2 × VDDP
- 0.1
V
V
V
–
Input low voltage
XTAL12)
VILC
VILS
SR -0.5
SR -0.5
0.3 × VDDI
–
3)
Input low voltage
0.45 ×
(Special Threshold)
VDDP
Input high voltage TTL VIH
(all except XTAL1)
SR 0.2 × VDDP
VDDP + 0.5 V
VDDI + 0.5 V
VDDP + 0.5 V
– V
–
+ 0.9
Input high voltage
XTAL12)
VIHC
SR 0.7 × VDDI
–
3)
Input high voltage
(Special Threshold)
VIHS
SR 0.8 × VDDP
- 0.2
Input Hysteresis
HYS
0.04 ×
V
DDP in [V],
(Special Threshold)
VDDP
Series resis-
tance = 0 Ω3)
4)
Output low voltage
VOL
CC –
–
1.0
V
V
V
V
IOL ≤ IOLmax
4)5)
0.45
IOL ≤ IOLnom
IOH ≥ IOHmax
IOH ≥ IOHnom
4)
Output high voltage6) VOH
CC VDDP - 1.0 –
4)5)
VDDP
-
–
0.45
Input leakage current IOZ1
CC –
±300
±200
±500
nA
nA
nA
0 V < VIN < VDDP
TA ≤ 125 °C
,
,
(Port 5)7)
0 V < VIN < VDDP
TA ≤ 85 °C12)
Input leakage current IOZ2
CC –
–
0.45 V < VIN <
VDDP
(all other8))7)
10)
11)
Configuration pull-up
current9)
ICPUH
-10
–
μA VIN = VIHmin
μA VIN = VILmax
ICPUL
-100
Data Sheet
45
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
Table 11
DC Characteristics (Operating Conditions apply)1) (cont’d)
Parameter
Symbol
Limit Values
Unit Test Condition
Min.
CC –
CC –
Max.
±20
10
XTAL1 input current
Pin capacitance12)
IIL
μA
0 V < VIN < VDDI
CIO
pF
–
(digital inputs/outputs)
1) Keeping signal levels within the limits specified in this table, ensures operation without overload conditions.
For signal levels outside these specifications, also refer to the specification of the overload current IOV
2) If XTAL1 is driven by a crystal, reaching an amplitude (peak to peak) of 0.4 × VDDI is sufficient.
3) This parameter is tested for P3, P9.
.
4) The maximum deliverable output current of a port driver depends on the selected output driver mode, see
Table 12, Current Limits for Port Output Drivers. The limit for pin groups must be respected.
5) As a rule, with decreasing output current the output levels approach the respective supply level (VOL → VSS,
VOH → VDDP). However, only the levels for nominal output currents are guaranteed.
6) This specification is not valid for outputs which are switched to open drain mode. In this case the respective
output will float and the voltage results from the external circuitry.
7) An additional error current (IINJ) will flow if an overload current flows through an adjacent pin. Please refer to
the definition of the overload coupling factor KOV
.
8) The driver of P3.15 is designed for faster switching, because this pin can deliver the system clock (CLKOUT).
The maximum leakage current for P3.15 is, therefore, increased to 1 μA.
9) During a hardware reset this specification is valid for configuration on P1H.4, P1H.5, P9.4 and P9.5.
After a hardware reset this specification is valid for NMI.
10) The maximum current may be drawn while the respective signal line remains inactive.
11) The minimum current must be drawn to drive the respective signal line active.
12) Not subject to production test - verified by design/characterization.
Table 12
Current Limits for Port Output Drivers
Port Output Driver
Mode
Maximum Output Current
Nominal Output Current
1)
(IOLmax, -IOHmax
)
(IOLnom, -IOHnom
)
Strong driver
Medium driver
Weak driver
10 mA
2.5 mA
4.0 mA
1.0 mA
0.5 mA
0.1 mA
1) An output current above |IOXnom| may be drawn from up to three pins at the same time.
For any group of 16 neighboring port output pins the total output current in each direction (ΣIOL and Σ-IOH) must
remain below 50 mA.
Data Sheet
46
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
Table 13
Power Consumption XC164LM (Operating Conditions apply)
Parameter
Sym-
bol
Limit Values
Min. Max.
Unit Test Condition
Power supply current (active) IDDI
–
15 +
mA fCPU in [MHz]1)2),
with all peripherals active
2.6 × fCPU
-16F derivatives
–
10 +
mA fCPU in [MHz]1)2),
2.6 × fCPU
-4F/8F derivatives
3)
Pad supply current
IDDP
–
–
5
mA
Idle mode supply current with IIDX
15 +
mA fCPU in [MHz]2),
all peripherals active
1.2 × fCPU
-16F derivatives
–
–
10 +
1.2 × fCPU
mA fCPU in [MHz]2),
-4F/8F derivatives
5)
6)
Sleep and Power down mode IPDL
supply current caused by
leakage4)
84,000
mA VDDI = VDDImax
× e-α
TJ in [°C]
α = 4380 / (273 + TJ)
-16F derivatives
–
–
128,000
mA α = 4670 / (273 + TJ)
× e-α
-4F/8F derivatives
7)
Sleep and Power down mode IPDM
supply current caused by
0.6 +
0.02 × fOSC
+ IPDL
mA VDDI = VDDImax
fOSC in [MHz]
leakage and the RTC running,
clocked by the main oscillator4)
1) During Flash programming or erase operations the supply current is increased by max. 5 mA.
2) The supply current is a function of the operating frequency. This dependency is illustrated in Figure 9.
These parameters are tested at VDDImax and maximum CPU clock frequency with all outputs disconnected and
all inputs at VIL or VIH.
3) The pad supply voltage pins (VDDP) mainly provides the current consumed by the pin output drivers. A small
amount of current is consumed even though no outputs are driven, because the drivers’ input stages are
switched and also the Flash module draws some power from the VDDP supply.
4) The total supply current in Sleep and Power down mode is the sum of the temperature dependent leakage
current and the frequency dependent current for RTC and main oscillator.
5) This parameter is determined mainly by the transistor leakage currents. This current heavily depends on the
junction temperature (see Figure 11). The junction temperature TJ is the same as the ambient temperature TA
if no current flows through the port output drivers. Otherwise, the resulting temperature difference must be
taken into account.
6) All inputs (including pins configured as inputs) at 0 V to 0.1 V or at VDDP - 0.1 V to VDDP, all outputs (including
pins configured as outputs) disconnected. This parameter is tested at 25 °C and is valid for TJ ≥ 25 °C.
7) This parameter is determined mainly by the current consumed by the oscillator switched to low gain mode (see
Figure 10). This current, however, is influenced by the external oscillator circuitry (crystal, capacitors). The
given values refer to a typical circuitry and may change in case of a not optimized external oscillator circuitry.
Data Sheet
47
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
I [mA]
-16F
IDDImax
140
-4F/8F
-16F
IDDItyp
120
100
-4F/8F
80
60
40
20
-16F
IIDXmax
-4F/8F
-16F
IIDXtyp
-4F/8F
10
20
30
40
f
CPU [MHz]
Figure 9
Supply/Idle Current as a Function of Operating Frequency
Data Sheet
48
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
I [mA]
3.0
2.0
1.0
IPDMmax
IPDMtyp
4
8
12
16
fOSC [MHz]
Figure 10
Sleep and Power Down Supply Current due to RTC and Oscillator
Running, as a Function of Oscillator Frequency
IPDL
[mA]
1.5
1.0
0.5
-16F
-4F/8F
-50
0
50
100
150
TJ [°C]
Figure 11
Sleep and Power Down Leakage Supply Current as a Function of
Temperature
Data Sheet
49
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
4.3
AC Parameters
These parameters describe the dynamic behavior of the XC164LM.
4.3.1
Definition of Internal Timing
The internal operation of the XC164LM is controlled by the internal master clock fMC.
The master clock signal fMC can be generated from the oscillator clock signal fOSC via
different mechanisms. The duration of master clock periods (TCMs) and their variation
(and also the derived external timing) depend on the used mechanism to generate fMC.
This influence must be regarded when calculating the timings for the XC164LM.
Phase Locked Loop Operation (1:N)
fOSC
fMC
TCM
Direct Clock Drive (1:1)
fOSC
fMC
TCM
Prescaler Operation (N:1)
fOSC
fMC
TCM
MCT05555
Figure 12
Generation Mechanisms for the Master Clock
Note: The example for PLL operation shown in Figure 12 refers to a PLL factor of 1:4,
the example for prescaler operation refers to a divider factor of 2:1.
Data Sheet
50
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
The used mechanism to generate the master clock is selected by register PLLCON.
CPU and EBC are clocked with the CPU clock signal fCPU. The CPU clock can have the
same frequency as the master clock (fCPU = fMC) or can be the master clock divided by
two: fCPU = fMC / 2. This factor is selected by bit CPSYS in register SYSCON1.
The specification of the external timing (AC Characteristics) depends on the period of the
CPU clock, called “TCP”.
The other peripherals are supplied with the system clock signal fSYS which has the same
frequency as the CPU clock signal fCPU
.
Bypass Operation
When bypass operation is configured (PLLCTRL = 0xB) the master clock is derived from
the internal oscillator (input clock signal XTAL1) through the input- and output-
prescalers:
fMC = fOSC / ((PLLIDIV + 1) × (PLLODIV + 1)).
If both divider factors are selected as ‘1’ (PLLIDIV = PLLODIV = ‘0’) the frequency of fMC
directly follows the frequency of fOSC so the high and low time of fMC is defined by the duty
cycle of the input clock fOSC
.
The lowest master clock frequency is achieved by selecting the maximum values for both
divider factors:
fMC = fOSC / ((3 + 1) × (14 + 1)) = fOSC / 60.
Phase Locked Loop (PLL)
When PLL operation is configured (PLLCTRL = 11B) the on-chip phase locked loop is
enabled and provides the master clock. The PLL multiplies the input frequency by the
factor F (fMC = fOSC × F) which results from the input divider, the multiplication factor, and
the output divider (F = PLLMUL+1 / (PLLIDIV+1 × PLLODIV+1)). The PLL circuit
synchronizes the master clock to the input clock. This synchronization is done smoothly,
i.e. the master clock frequency does not change abruptly.
Due to this adaptation to the input clock the frequency of fMC is constantly adjusted so it
is locked to fOSC. The slight variation causes a jitter of fMC which also affects the duration
of individual TCMs.
The timing listed in the AC Characteristics refers to TCPs. Because fCPU is derived from
fMC, the timing must be calculated using the minimum TCP possible under the respective
circumstances.
The actual minimum value for TCP depends on the jitter of the PLL. As the PLL is
constantly adjusting its output frequency so it corresponds to the applied input frequency
(crystal or oscillator) the relative deviation for periods of more than one TCP is lower than
for one single TCP (see formula and Figure 13).
Data Sheet
51
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
This is especially important for bus cycles using waitstates and e.g. for the operation of
timers, serial interfaces, etc. For all slower operations and longer periods (e.g. pulse train
generation or measurement, lower baudrates, etc.) the deviation caused by the PLL jitter
is negligible.
The value of the accumulated PLL jitter depends on the number of consecutive VCO
output cycles within the respective timeframe. The VCO output clock is divided by the
output prescaler (K = PLLODIV+1) to generate the master clock signal fMC. Therefore,
the number of VCO cycles can be represented as K × N, where N is the number of
consecutive fMC cycles (TCM).
For a period of N × TCM the accumulated PLL jitter is defined by the deviation DN:
DN [ns] = ±(1.5 + 6.32 × N / fMC); fMC in [MHz], N = number of consecutive TCMs.
So, for a period of 3 TCMs @ 20 MHz and K = 12: D3 = ±(1.5 + 6.32 × 3 / 20) = 2.448 ns.
This formula is applicable for K × N < 95. For longer periods the K × N = 95 value can be
used. This steady value can be approximated by: DNmax [ns] = ±(1.5 + 600 / (K × fMC)).
K = 12 K = 8
K = 15 K = 10
Acc. jitter DN
K = 6 K = 5
ns
±8
±7
±6
±5
±4
±3
±2
±1
0
10 MHz
20 MHz
40 MHz
0 1
5
10
15
20
25
N
MCD05566
Figure 13
Approximated Accumulated PLL Jitter
Note: The bold lines indicate the minimum accumulated jitter which can be achieved by
selecting the maximum possible output prescaler factor K.
Data Sheet
52
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
Different frequency bands can be selected for the VCO, so the operation of the PLL can
be adjusted to a wide range of input and output frequencies:
Table 14
VCO Bands for PLL Operation1)
PLLCON.PLLVB
VCO Frequency Range
100 … 150 MHz
150 … 200 MHz
200 … 250 MHz
Reserved
Base Frequency Range
20 … 80 MHz
00
01
10
11
40 … 130 MHz
60 … 180 MHz
1) Not subject to production test - verified by design/characterization.
Data Sheet
53
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
4.3.2
On-chip Flash Operation
The XC164LM’s Flash module delivers data within a fixed access time (see Table 15).
Accesses to the Flash module are controlled by the PMI and take 1+WS clock cycles,
where WS is the number of Flash access waitstates selected via bitfield WSFLASH in
register IMBCTRL. The resulting duration of the access phase must cover the access
time tACC of the Flash array. The required Flash waitstates depend on the actual system
frequency.
The Flash access waitstates only affect non-sequential accesses. Due to prefetching
mechanisms, the performance for sequential accesses (depending on the software
structure) is only partially influenced by waitstates.
In typical applications, eliminating one waitstate increases the average performance by
5% … 15%.
Table 15
Flash Characteristics (Operating Conditions apply)
Symbol Limit Values
Parameter
Unit
Min.
tACC CC –
Typ.
–
22)
Max.
501)
5
Flash module access time
ns
Programming time per 128-byte block tPR
Erase time per sector
CC –
CC –
ms
ms
tER
2002)
500
1) The actual access time is influenced by the system frequency, see Table 16.
2) Programming and erase time depends on the system frequency. Typical values are valid for 40 MHz.
Example: For an operating frequency of 40 MHz (clock cycle = 25 ns), the Flash
accesses must be executed with 1 waitstate: ((1+1) × 25 ns) ≥ 50 ns.
Table 16 indicates the interrelation of waitstates and system frequency.
Table 16
Flash Access Waitstates
Required Waitstates
0 WS (WSFLASH = 00B)
1 WS (WSFLASH = 01B)
Frequency Range
fCPU ≤ 20 MHz
fCPU ≤ 40 MHz
Note: The maximum achievable system frequency is limited by the properties of the
respective derivative, i.e. 40 MHz (or 20 MHz for XC164LM-xF20F devices).
Data Sheet
54
V1.2, 2007-03
XC164LM
Derivatives
Electrical Parameters
4.3.3
External Clock Drive XTAL1
These parameters define the external clock supply for the XC164LM.
Table 17
External Clock Drive Characteristics (Operating Conditions apply)
Parameter
Symbol
Limit Values
Unit
Min.
25
6
Max.
2501)
Oscillator period
High time2)
Low time2)
Rise time2)
Fall time2)
tOSC
t1
SR
SR
SR
SR
SR
ns
ns
ns
ns
ns
–
–
8
8
t2
6
t3
–
t4
–
1) The maximum limit is only relevant for PLL operation to ensure the minimum input frequency for the PLL.
2) The clock input signal must reach the defined levels VILC and VIHC
.
t3
t4
t1
VIHC
VILC
0.5 VDDI
t2
tOSC
MCT05572
Figure 14
External Clock Drive XTAL1
Note: If the on-chip oscillator is used together with a crystal or a ceramic resonator, the
oscillator frequency is limited to a range of 4 MHz to 16 MHz.
It is strongly recommended to measure the oscillation allowance (negative
resistance) in the final target system (layout) to determine the optimum
parameters for the oscillator operation. Please refer to the limits specified by the
crystal supplier.
When driven by an external clock signal it will accept the specified frequency
range. Operation at lower input frequencies is possible but is verified by design
only (not subject to production test).
Data Sheet
55
V1.2, 2007-03
XC164LM
Derivatives
Package and Reliability
5
Package and Reliability
In addition to the electrical parameters, the following information ensures proper
integration of the XC164LM into the target system.
5.1
Packaging
These parameters describe the housing rather than the silicon.
Package Outlines
Figure 15
PG-LQFP-64-4 (Plastic Green Low profile Quad Flat Package),
valid for the -16F derivatives
Data Sheet
56
V1.2, 2007-03
XC164LM
Derivatives
Package and Reliability
H
0.5
±0.15
0.6
C
7.5
12
0.08
2)
+0.07
-0.03
0.2
M
0.08 A-B D C 64x
0.2 A-B D 4x
101)
0.2 A-B D H 4x
D
A
B
64
1
Index Marking
1) Does not include plastic or metal protrusion of 0.25 max. per side
2) Does not include dambar protrusion of 0.08 max. per side
Figure 16
PG-TQFP-64-8 (Plastic Thin Quad Flat Package),
valid for the -4F/8F derivatives
You can find all of our packages, sorts of packing and others in our Infineon Internet
Page “Products”: http://www.infineon.com/products
Dimensions in mm.
Table 18
Package Parameters
Symbol
Parameter
Limit Values
Unit
Notes
Min.
Max.
PG-LQFP-64-4
Thermal resistance
junction to case
RΘJC
RΘJL
–
–
8
K/W
K/W
–
–
Thermal resistance
junction to leads
23
PG-TQFP-64-8
Thermal resistance
junction to case
RΘJC
RΘJL
–
–
9
K/W
K/W
–
–
Thermal resistance
junction to leads
19
Data Sheet
57
V1.2, 2007-03
XC164LM
Derivatives
Package and Reliability
5.2
Flash Memory Parameters
The data retention time of the XC164LM’s Flash memory (i.e. the time after which stored
data can still be retrieved) depends on the number of times the Flash memory has been
erased and programmed.
Table 19
Flash Parameters
Symbol
Parameter
Limit Values
Unit
Notes
Min.
Max.
Data retention time
tRET
15
–
years 103 erase/program
cycles
Flash Erase Endurance NER
20 × 103
–
cycles Dataretentiontime
5 years
Data Sheet
58
V1.2, 2007-03
w w w . i n f i n e o n . c o m
B158-H8889-G1-X-7600
Published by Infineon Technologies AG
相关型号:
©2020 ICPDF网 联系我们和版权申明