Psoc Datasheet
Psoc Datasheet
Mixed-Signal Array
with On-board Controller
CY8C25122, CY8C26233, CY8C26443, CY8C26643
Device Data Sheet for Silicon Revision D
Programmable System-on-Chip (PSoC)
CYPRESS MICROSYSTEMS
CYPRESS MICROSYSTEMS
Cypress MicroSystems, Inc. 2000-2003. All rights reserved. PSoC (Programmable System-on-Chip) and PSoC Desgner are trademarks of Cypress
MicroSystems, Inc. All other trademarks or registered trademarks referenced herein are property of the respective corporations. The information contained herein is subject to change without notice. Cypress MicroSystems assumes no responsibility for the use of any circuitry other than circuitry
embodied in a Cypress MicroSystems product. Nor does it convey or imply any license under patent or other rights. Cypress MicroSystems does not
authorize its products for use as critical components in life support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress MicroSystems products in life-support system applications implies that the manufacturer assumes all
risk of such use and in doing so, indemnifies Cypress MicroSystems against all charges.
The PSoC CY8C25122/CY8C26233/CY8C26443/CY8C26643 family of programmable system-on-chip devices replace multiple MCU-based system components with one single-chip, configurable device. A PSoC device includes configurable analog and digital peripheral blocks, a fast
CPU, Flash program memory, and SRAM data memory in a range of convenient pin-outs and
memory sizes. The driving force behind this innovative programmable system-on-chip comes
from user configurability of the analog and digital arrays: the PSoC blocks.
Programmable System-on-Chip (PSoC) Blocks
CRC modules
Full-duplex UARTs
SPI master or slave configuration
Flexible clocking sources for analog PSoC blocks
Powerful Harvard Architecture Processor with Fast
Multiply/Accumulate
External 32.768 kHz Crystal Oscillator (optional precision source for PLL)
Dedicated Peripherals
CYPRESS MICROSYSTEMS
This page has intentionally been left blank.
Table of Contents
List of Tables
10
List of Figures
11
12
P5
P4
P3
P2
P1
P0
I/O Ports
Analog Input
Muxing
Analog Output
Drivers
A
C
A
0
0
A
C
A
0
1
A
C
A
0
2
A
C
A
0
3
A
S
A
1
0
A
S
B
1
1
A
S
A
1
2
A
S
B
1
3
A
S
B
2
0
A
S
A
2
1
A
S
B
2
2
A
S
A
2
3
Global I/O
Programmable Interconnect
Clocks to
Analog
Comparator
Outputs
D
B
A
0
0
D
B
A
0
1
D
B
A
0
2
D
B
A
0
3
D
C
A
0
4
D
C
A
0
5
D
C
A
0
6
D
C
A
0
7
Flash Program
Memory
Oscillator
and PLL
MAC
Multiply
Accumulate
SRAM
Memory
M8C CPU
Core
Decimator
Watchdog/
Sleep Timer
LVD/POR
Interrupt
Controller
13
1.0
Functional Overview
The CPU heart of this next generation family of microcontrollers is a high performance, 8-bit, M8C Harvard
architecture microprocessor. Separate program and
memory busses allow for faster overall throughput. Processor clock speeds to 24 MHz are available. The processor may also be run at lower clock speeds for powersensitive applications. A rich instruction set allows for
efficient low-level language support.
All devices in this family include both analog and digital
configurable peripherals (PSoC blocks). These blocks
enable the user to define unique functions during configuration of the device. Included are twelve analog PSoC
blocks and eight digital PSoC blocks. Potential applications for the digital PSoC blocks are timers, counters,
UARTs, CRC generators, PWMs, and other functions.
The analog PSoC blocks can be used for SAR ADCs,
Multi-slope ADCs, programmable gain amplifiers, programmable filters, DACs, and other functions. Higher
order User Modules such as modems, complex motor
controllers, and complete sensor signal chains can be
created from these building blocks. This allows for an
unprecedented level of flexibility and integration in microcontroller-based systems.
A Multiplier/Accumulator (MAC) is available on all
devices in this family. The MAC is implemented on this
device as a peripheral that is mapped into the register
space. When an instruction writes to the MAC input registers, the result of an 8x8 multiply and a 32-bit accumulate are available to be read from the output registers on
the next instruction cycle.
The number of general purpose I/Os available in this
family of parts range from 6 to 44. Each of these I/O pins
has a variety of programmable options. In the output
1.1
Table 1:
Multiple oscillator options are available for use in clocking the CPU, analog PSoC blocks and digital PSoC
blocks. These options include an internal main oscillator
running at 48/24 MHz, an external crystal oscillator for
use with a 32.768 kHz watch crystal, and an internal lowspeed oscillator for use in clocking the PSoC blocks and
the Watchdog/Sleep timer. User selectable clock divisors
allow for optimizing code execution speed and power
trade-offs.
The different device types in this family provide various
amounts of code and data memory. The code space
ranges in size from 4K to 16K bytes of user programmable Flash memory. This memory can be programmed
serially in either a programming Pod or on the user
board. The endurance on the Flash memory is 50,000
erase/write cycles. The data space is 256 bytes of user
SRAM.
A powerful and flexible protection model secures the
users sensitive information. This model allows the user
to selectively lock blocks of memory for read and write
protection. This allows partial code updates without
exposing proprietary information.
Devices in this family range from 8 pins through 48 pins
in PDIP, SOIC and SSOP packages.
Key Features
Device Family Key Features
Operating Frequency
Operating Voltage
Program Memory (KBytes)
Data Memory (Bytes)
Digital PSoC Blocks
Analog PSoC Blocks
I/O Pins
External Switch Mode Pump
Available Packages
14
CY8C25122
93.7kHz - 24MHz
3.0 - 5.25V
4
256
8
12
6
No
8 PDIP
CY8C26233
93.7kHz - 24MHz
3.0 - 5.25V
8
256
8
12
16
Yes
20 PDIP
20 SOIC
20 SSOP
CY8C26443
93.7kHz - 24MHz
3.0 - 5.25V
16
256
8
12
24
Yes
28 PDIP
28 SOIC
28 SSOP
CY8C26643
93.7kHz - 24MHz
3.0 - 5.25V
16
256
8
12
40/44
Yes
48 PDIP
48 SSOP
44 TQFP
Functional Overview
1.2
Pin-out Descriptions
Table 2:
Name
Pin-out 8 Pin
I/O
Pin
Pin-out 20 Pin
Table 3:
Description
Name
I/O
Pin
Description
I/O
P0[7]
I/O
P0[5]
I/O
P0[5]
I/O
P1[1]
I/O
P0[3]
I/O
Vss
Power
4 Ground
P0[1]
I/O
P1[0]
I/O
SMP
P0[2]
I/O
P1[7]
I/O
6 Port 1[7]
P0[4]
I/O
P1[5]
I/O
7 Port 1[5]
Vcc
Power
8 Supply Voltage
P1[3]
I/O
8 Port 1[3]
P1[1]
I/O
Vss
Power
P1[0]
I/O
P1[2]
I/O
12 Port 1[2]
P1[4]
I/O
13 Port 1[4]
P1[6]
I/O
14 Port 1[6]
P0[7]
P0[5]
XtalIn/SCLK/P1[1]
Vss
1
2
3
4
CY8C25122
P0[7]
8
7
6
5
Vcc
P0[4]
P0[2]
P1[0]/XtalOut/SDATA
Figure 2: CY8C25122
10 Ground
XRES I
15 External Reset
P0[0]
I/O
P0[2]
I/O
P0[4]
I/O
P0[6]
I/O
Vcc
Power
20 Supply Voltage
XtalIn/SCLK/P1[1]
Vss
1
2
3
4
5
6
7
8
9
10
CY8C26233 PDIP/SOIC/SSOP
P0[7]
P0[5]
P0[3]
P0[1]
SMP
P1[7]
P1[5]
P1[3]
20
19
18
17
16
15
14
13
12
11
Vcc
P0[6]
P0[4]
P0[2]
P0[0]
XRES
P1[6]
P1[4]
P1[2]
P1[0]/XtalOut/SDATA
Figure 3: CY8C26233
15
Table 4:
Pin-out 28 Pin
Name
P0[7]
I/O
Pin
Description
P0[5]
I/O
P0[3]
I/O
P0[1]
I/O
P2[7]
I/O
5 Port 2[7]
P2[5]
I/O
6 Port 2[5]
P2[3]
I/O
P2[1]
I/O
SMP
P1[7]
I/O
10 Port 1[7]
P1[5]
I/O
11 Port 1[5]
P1[3]
I/O
12 Port 1[3]
P1[1]
I/O
Vss
Power
14 Ground
P1[0]
I/O
P1[2]
I/O
16 Port 1[2]
P1[4]
I/O
P1[6]
P0[7]
P0[5]
P0[3]
P0[1]
P2[7]
P2[5]
P2[3]
P2[1]
SMP
P1[7]
P1[5]
P1[3]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
XtalIn/SCLK/P1[1]
Vss
26443 PDIP/SOIC/SSOP
I/O
28
27
26
25
24
23
22
21
20
19
18
17
16
15
Vcc
P0[6]
P0[4]
P0[2]
P0[0]
P2[6]/External V ref
P2[4]/External AGND
P2[2]
P2[0]
Xres
P1[6]
P1[4]
P1[2]
P1[0]/XtalOut/SDATA
Pin-out 44 Pin
Table 5:
Name
I/O
Pin
Description
P2[5]
I/O
1 Port 2[5]
P2[3]
I/O
P2[1]
I/O
17 Port 1[4]
P3[7]
I/O
4 Port 3[7]
I/O
18 Port 1[6]
P3[5]
I/O
5 Port 3[5]
XRES
19 External Reset
P3[3]
I/O
6 Port 3[3]
P2[0]
I/O
20
P3[1]
I/O
7 Port 3[1]
SMP
P2[2]
I/O
P4[7]
I/O
9 Port 4[7]
P2[4]
I/O
P4[5]
I/O
10 Port 4[5]
P2[6]
I/O
P4[3]
I/O
11 Port 4[3]
P0[0]
I/O
P4[1]
I/O
12 Port 4[1]
I/O
13 Port 1[7]
I/O
25
P1[7]
P0[2]
P1[5]
I/O
14 Port 1[5]
P0[4]
I/O
26
P1[3]
I/O
15 Port 1[3]
P1[1]
I/O
P0[6]
I/O
Vss
Power
17 Ground
Vcc
Power
28 Supply Voltage
P1[0]
I/O
P1[2]
I/O
19 Port 1[2]
P1[4]
I/O
20 Port 1[4]
P1[6]
I/O
21 Port 1[6]
P4[0]
I/O
22 Port 4[0]
P4[2]
I/O
23 Port 4[2]
P4[4]
I/O
24 Port 4[4]
16
Functional Overview
Table 5:
P4[6]
I/O
25 Port 4[6]
XRES
26 External Reset
P3[0]
I/O
27 Port 3[0]
P3[2]
I/O
28 Port 3[2]
P3[4]
I/O
29 Port 3[4]
P3[6]
I/O
30 Port 3[6]
P2[0]
I/O
31
P2[2]
Pin-out 48 Pin
Table 6:
Name
I/O
Pin
Description
P0[5]
I/O
P0[3]
I/O
P0[1]
I/O
P2[7]
I/O
5 Port 2[7]
I/O
P2[5]
I/O
6 Port 2[5]
P2[4]
I/O
P2[3]
I/O
P2[6]
I/O
P0[0]
I/O
P2[1]
I/O
P0[2]
I/O
P3[7]
I/O
9 Port 3[7]
P0[4]
I/O
P3[5]
I/O
10 Port 3[5]
P0[6]
I/O
P3[3]
I/O
11 Port 3[3]
Vcc
Power
39 Supply Voltage
P3[1]
I/O
12 Port 3[1]
P0[7]
I/O
SMP
P0[5]
I/O
P4[7]
I/O
14 Port 4[7]
P0[3]
I/O
P4[5]
I/O
15 Port 4[5]
P0[1]
I/O
P4[3]
I/O
16 Port 4[3]
P2[7]
I/O
44 Port 2[7]
P4[1]
I/O
17 Port 4[1]
P5[3]
I/O
18 Port 5[3]
P5[1]
I/O
19 Port 5[1]
P1[7]
I/O
20 Port 1[7]
P1[5]
I/O
21 Port 1[5]
P1[3]
I/O
22 Port 1[3]
P1[1]
I/O
Vss
Power
24 Ground
P1[0]
I/O
P1[2]
I/O
26 Port 1[2]
P1[4]
I/O
27 Port 1[4]
P1[6]
I/O
28 Port 1[6]
1 44 43 42 41 40 39 38 37 36 35 34
2
3
4
5
6
7
8
9
10
11
26643 TQFP
P2[5]
P2[3]
P2[1]
P3[7]
P3[5]
P3[3]
P3[1]
SMP
P4[7]
P4[5]
P4[3]
P2[6]/ExVrefIn
I/O
P2[7]
P0[1]
P0[3]
P0[5]
P0[7]
Vcc
P0[6]
P0[4]
P0[2]
P0[0]
P0[7]
33
32
31
30
29
28
27
26
25
24
23
P2[4]/Ex AGNDIn
P2[2]
P2[0]
P3[6]
P3[4]
P3[2]
P3[0]
Xres
P4[6]
P4[4]
P4[2]
P4[1]
P1[7]
P1[5]
P1[3]
XtalIn/SCLK/P1[1]
Vss
XtalOut/SDATA/P1[0]
P1[2]
P1[4]
P1[6]
P4[0]
12 13 14 15 16 17 18 19 20 21 22
17
Table 6:
P5[0]
I/O
29 Port 5[0]
P5[2]
I/O
30 Port 5[2]
P4[0]
I/O
31 Port 4[0]
P4[2]
I/O
32 Port 4[2]
P4[4]
I/O
33 Port 4[4]
P4[6]
I/O
34 Port 4[6]
XRES
35 External Reset
P3[0]
I/O
36 Port 3[0]
P3[2]
I/O
37 Port 3[2]
P3[4]
I/O
38 Port 3[4]
P3[6]
I/O
39 Port 3[6]
P2[0]
I/O
40
P2[2]
I/O
41
P2[4]
I/O
P2[6]
I/O
P0[0]
I/O
P0[2]
I/O
45
P0[4]
I/O
46
P0[6]
I/O
Vcc
Power
48 Supply Voltage
XtalIn/SCLK/P1[1]
Vss
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
26643 PDIP/SSOP
P0[7]
P0[5]
P0[3]
P0[1]
P2[7]
P2[5]
P2[3]
P2[1]
P3[7]
P3[5]
P3[3]
P3[1]
SMP
P4[7]
P4[5]
P4[3]
P4[1]
P5[3]
P5[1]
P1[7]
P1[5]
P1[3]
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
Vcc
P0[6]
P0[4]
P0[2]
P0[0]
P2[6]/External V ref IN
P2[4] /External AGNDIN
P2[2]
P2[0]
P3[6]
P3[4]
P3[2]
P3[0]
Xres
P4[6]
P4[4]
P4[2]
P4[0]
P5[2]
P5[0]
P1[6]
P1[4]
P1[2]
P1[0]/XtalOut/SDATA
18
CPU Architecture
2.0
CPU Architecture
2.1
Introduction
Mnemonic
Flags
CPU_F
Program Counter
CPU_PC
Accumulator
CPU_A
Stack Pointer
CPU_SP
Index
CPU_X
19
2.2
CPU Registers
2.2.1
Flags Register
The Flags Register can only be set or reset with logical instruction.
Table 8:
Flags Register
Bit #
POR
Read/
Write
--
--
--
RW
RW
RW
RW
Bit Name
Reserved
Reserved
Reserved
XIO
Super
Carry
Zero
Global IE
Bit 7: Reserved
Bit 6: Reserved
Bit 5: Reserved
Bit 4: XIO Set by the user to select between the register banks
0 = Bank 0
1 = Bank 1
Bit 3: Super Indicates whether the CPU is executing user code or Supervisor Code. (This code cannot be accessed
directly by the user and is not displayed in the ICE debugger.)
0 = User Code
1 = Supervisor Code
Bit 2: Carry Set by CPU to indicate whether there has been a carry in the previous logical/arithmetic operation
0 = No Carry
1 = Carry
Bit 1: Zero Set by CPU to indicate whether there has been a zero result in the previous logical/arithmetic operation
0 = Not Equal to Zero
1 = Equal to Zero
Bit 0: Global IE Determines whether all interrupts are enabled or disabled
0 = Disabled
1 = Enabled
2.2.2
Accumulator Register
Table 9:
Bit #
POR
Read/Write
Bit Name
7
0
System1
Data [7]
6
0
5
0
System1
Data [6]
System1
Data [5]
4
0
System1
Data [4]
3
0
System1
Data [3]
2
0
System1
Data [2]
1
0
0
0
System1
Data [1]
System1
Data [0]
Bit [7:0]: Data [7:0] 8-bit data value holds the result of any logical/arithmetic instruction that uses a source addressing mode
1.
20
CPU Architecture
2.2.3
Index Register
Table 10:
Bit #
POR
Read/
Write
Bit Name
7
0
6
0
5
0
4
0
3
0
2
0
1
0
0
0
System1
System1
System1
System1
System1
System1
System1
System1
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
Bit [7:0]: Data [7:0] 8-bit data value holds an index for any instruction that uses an indexed addressing mode
1.
2.2.4
Table 11:
Bit #
POR
Read/
Write
Bit Name
7
0
6
0
5
0
4
0
3
0
2
0
1
0
0
0
System1
System1
System1
System1
System1
System1
System1
System1
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
Bit [7:0]: Data [7:0] 8-bit data value holds a pointer to the current top-of-stack
1.
2.2.5
Table 12:
Bit #
POR
Read/
Write
Bit
Name
14
0
13
0
12
0
11
0
10
0
9
0
8
0
7
0
6
0
5
0
4
0
3
0
2
0
1
0
0
0
Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data
[15] [14] [13] [12] [11] [10]
[9]
[8]
[7]
[6]
[5]
[4]
[3]
[2]
[1]
Data
[0]
Bit [15:0]: Data [15:0] 16-bit data value is the low-order/high-order byte of the Program Counter
1.
2.3
Addressing Modes
2.3.1
Source Immediate
Table 13:
Source Immediate
Opcode
Instruction
Operand 1
Immediate Value
21
Examples:
ADD
MOV
AND
2.3.2
A,
X,
F,
a location in either the RAM memory space or the register space that is the source for the instruction. Arithmetic
instructions require two sources, the second source is
the A register or X register specified in the opcode.
Instructions using this addressing mode are two bytes.
Table 15:
Source Indexed
Opcode
Instruction
Operand 1
Source Index
Examples:
[X+7]
REG[X+8]
Source Direct
ADD
A,
MOV
X,
Table 14:
Destination Direct
Operand 1
Source Address
Opcode
Instruction
2.3.4
Source Direct
Examples:
ADD
MOV
2.3.3
A,
X,
[7]
Table 16:
Destination Direct
Opcode
Instruction
Operand 1
Destination Address
Source Indexed
22
CPU Architecture
Examples:
ADD
MOV
2.3.5
[7],
REG[8], A
Table 18:
Opcode
Instruction
Operand 1
Operand 2
Destination Address
Immediate Value
Examples:
ADD [7],
Destination Indexed
MOV REG[8], 6
Table 17:
Destination Indexed
Opcode
Instruction
Operand 1
2.3.7
Destination Index
Example:
ADD [X+7],
2.3.6
Table 19:
Opcode
Instruction
Operand 2
Immediate Value
23
Examples:
ADD
MOV
2.3.8
[X+7],
REG[X+8], 6
tion.
Table 21:
Opcode
Instruction
Operand 1
Source Address Address
Example:
MVI
A,
[8]
Table 20:
Opcode
Instruction
Operand 2
2.3.9
Example:
MOV
in length.
Table 22:
Opcode
Instruction
Operand 1
Destination Address Address
Example:
MVI
[8], A
24
CPU Architecture
2.4
Table 23:
INC [expr]
INC [X+expr]
INDEX
JACC
JC
JMP
JNC
JNZ
JZ
LCALL
LJMP
MOV X, SP
MOV A, expr
MOV A, [expr]
MOV A, [X+expr]
MOV [expr], A
MOV [X+expr], A
MOV [expr], expr
MOV [X+expr], expr
MOV X, expr
MOV X, [expr]
MOV X, [X+expr]
MOV [expr], X
MOV A, X
MOV X, A
MOV A, reg[expr]
MOV A, reg[X+expr]
MOV [expr], [expr]
MOV reg[expr], A
MOV reg[X+expr], A
MOV reg[expr], expr
MOV reg[X+expr], expr
MVI A, [ [expr]++ ]
MVI [ [expr]++ ], A
NOP
OR A, expr
OR A, [expr]
OR A, [X+expr]
OR [expr], A
OR [X+expr], A
OR [expr], expr
OR [X+expr], expr
OR reg[expr], expr
OR reg[X+expr], expr
OR F, expr
C, Z
C, Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
C, Z
20
18
10
08
7E
7F
6A
6B
6C
28
6D
6E
6F
19
1A
1B
1C
1D
1E
1F
00
11
12
13
14
15
16
17
4B
4C
4D
4E
47
48
49
4A
72
31
32
33
34
35
36
37
45
46
Instruction Format
Flags
Bytes
Cycles
Flags
Bytes
Cycles
09 4 2 ADC A, expr
C, Z
76 7 2
0A 6 2 ADC A, [expr]
C, Z
77 8 2
0B 7 2 ADC A, [X+expr]
C, Z
Fx 13 2
0C 7 2 ADC [expr], A
C, Z
Ex 7 2
0D 8 2 ADC [X+expr], A
C, Z
Cx 5 2
0E 9 3 ADC [expr], expr
C, Z
8x 5 2
0F 10 3 ADC [X+expr], expr
C, Z
Dx 5 2
01 4 2 ADD A, expr
C, Z
Bx 5 2
02 6 2 ADD A, [expr]
C, Z
Ax 5 2
03 7 2 ADD A, [X+expr]
C, Z
7C 13 3
04 7 2 ADD [expr], A
C, Z
7D 7 3
05 8 2 ADD [X+expr], A
C, Z
4F 4 1
06 9 3 ADD [expr], expr
C, Z
50 4 2
07 10 3 ADD [X+expr], expr
C, Z
51 5 2
38 5 2 ADD SP, expr
52 6 2
21 4 2 AND A, expr
Z
53 5 2
22 6 2 AND A, [expr]
Z
54 6 2
23 7 2 AND A, [X+expr]
Z
55 8 3
24 7 2 AND [expr], A
Z
56 9 3
25 8 2 AND [X+expr], A
Z
57 4 2
26 9 3 AND [expr], expr
Z
58 6 2
27 10 3 AND [X+expr], expr
Z
59 7 2
70 4 2 AND F, expr
C, Z
5A 5 2
41 9 3 AND reg[expr], expr
Z
5B 4 1
42 10 3 AND reg[X+expr], expr
Z
5C 4 1
64 4 1 ASL A
C, Z
5D 6 2
65 7 2 ASL [expr]
C, Z
5E 7 2
66 8 2 ASL [X+expr]
C, Z
5F 10 3
67 4 1 ASR A
C, Z
60 5 2
68 7 2 ASR [expr]
C, Z
61 6 2
69 8 2 ASR [X+expr]
C, Z
62 8 3
9x 11 2 CALL
63 9 3
39 5 2 CMP A, expr
if (A=B) Z=1 3E 10 2
3A 7 2 CMP A, [expr]
if (A<B) C=1 3F 10 2
3B 8 2 CMP A, [X+expr]
40 4 1
3C 8 3 CMP [expr], expr
29 4 2
3D 9 3 CMP [X+expr], expr
2A 6 2
73 4 1 CPL A
Z
2B 7 2
78 4 1 DEC A
C, Z
2C 7 2
79 4 1 DEC X
C, Z
2D 8 2
7A 7 2 DEC [expr]
C, Z
2E 9 3
7B 8 2 DEC [X+expr]
C, Z
2F 10 3
30 9 1 HALT
43 9 3
74 4 1 INC A
C, Z
44 10 3
75 4 1 INC X
C, Z
71 4 2
Note: Interrupt acknowledge to Interrupt Vector table = 13 cycles.
Instruction Format
Opcode Hex
Flags
Opcode Hex
Bytes
Cycles
Opcode Hex
Instruction Format
5
5
4
4
10
8
4
7
8
11
4
7
8
4
6
7
7
8
9
10
15
4
6
7
7
8
9
10
5
7
7
5
8
9
9
10
4
4
6
7
7
8
9
10
9
10
1
1
1
1
1
1
1
2
2
1
1
2
2
2
2
2
2
2
3
3
1
2
2
2
2
2
3
3
1
2
2
1
3
3
3
3
2
2
2
2
2
2
3
3
3
3
POP X
POP A
PUSH X
PUSH A
RETI
RET
RLC A
RLC [expr]
RLC [X+expr]
ROMX
RRC A
RRC [expr]
RRC [X+expr]
SBB A, expr
SBB A, [expr]
SBB A, [X+expr]
SBB [expr], A
SBB [X+expr], A
SBB [expr], expr
SBB [X+expr], expr
SSC
SUB A, expr
SUB A, [expr]
SUB A, [X+expr]
SUB [expr], A
SUB [X+expr], A
SUB [expr], expr
SUB [X+expr], expr
SWAP A, X
SWAP A, [expr]
SWAP X, [expr]
SWAP A, SP
TST [expr], expr
TST [X+expr], expr
TST reg[expr], expr
TST reg[X+expr], expr
XOR F, expr
XOR A, expr
XOR A, [expr]
XOR A, [X+expr]
XOR [expr], A
XOR [X+expr], A
XOR [expr], expr
XOR [X+expr], expr
XOR reg[expr], expr
XOR reg[X+expr], expr
C, Z
C, Z
C, Z
C, Z
Z
C, Z
C, Z
C, Z
C, Z
C, Z
C, Z
C, Z
C, Z
C, Z
C, Z
C, Z
C, Z
C, Z
C, Z
C, Z
C, Z
C, Z
Z
Z
Z
Z
Z
Z
Z
C, Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
25
3.0
Memory Organization
3.1
Table 24:
Address
Description
3.2
0x0000
Reset Vector
0x0004
after the Global Variables until 0xFF. The stack will wrap
0x0008
0x000C
Table 25:
0x0010
0x0014
0x00
0x0018
0xXX
0x001C
0xXY
0x0020
0xXZ
0x0024
0xYX
0x0028
0xYY
0x002C
0xFF
0x0030
0x0034
0x0038
0x003C
0x0040
Address
Description
4.0
Register Organization
4.1
Introduction
***
devices. Each bank contains 256 addresses. The purpose of these register banks is to personalize and
***
***
0x3FFF
26
Register Organization
4.2
Table 26:
Bank 0
ARF_CR
CMP_CR
ASY_CR
ACA00CR0
ACA00CR1
ACA00CR2
Reserved
ACA01CR0
ACA01CR1
ACA01CR2
Reserved
ACA02CR0
ACA02CR1
ACA02CR2
Reserved
ACA03CR0
ACA03CR1
ACA03CR2
104
RW
73
101
102
RW
1
1
82
83
84
RW
RW
RW
82
83
84
RW
RW
RW
82
83
84
RW
RW
RW
82
83
84
RW
RW
RW
Access
Reserved
Data Sheet
Page
AMX_IN
Address
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
45
46
46
116
113
113
113
RW
RW
RW
RW
RW
R
RW
110
110
111
111
111
111
112
112
W
W
R
R
RW
RW
RW
RW
114
Reserved
54
54
54
55
54
54
54
55
54
54
54
55
54
54
54
55
54
54
54
55
54
54
54
55
54
54
54
55
54
54
54
55
C0h
C1h
C2h
C3h
C4h
C5h
C6h
C7h
C8h
C9h
CAh
CBh
CCh
CDh
CEh
CFh
D0h
D1h
D2h
D3h
D4h
D5h
D6h
D7h
D8h
D9h
DAh
DBh
DCh
DDh
DEh
DFh
INT_MSK0
E0h
INT_MSK1
E1h
INT_VC
E2h
RES_WDT
E3h
DEC_DH/DEC_CL
E4h
DEC_DL
E5h
DEC_CR
E6h
Reserved
E7h
MUL_X
E8h
MUL_Y
E9h
MUL_DH
EAh
MUL_DL
EBh
ACC_DR1/MAC_X
ECh
ACC_DR0/MAC_Y
EDh
ACC_DR3/MAC_CL0 EEh
ACC_DR2/MAC_CL1 EFh
F0h
F1h
F2h
F3h
F4h
F5h
F6h
F7h
F8h
F9h
FAh
FBh
FCh
FDh
FEh
CPU_SCR
FFh
Reserved
RW
W
W
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
Register
Name
31
31
32
88
90
92
93
95
97
99
100
88
90
92
93
95
97
99
100
95
97
99
100
88
90
92
93
95
97
99
100
88
90
92
93
Access
RW
W
W
80h
81h
82h
83h
84h
85h
86h
87h
88h
89h
8Ah
8Bh
8Ch
8Dh
8Eh
8Fh
90h
91h
92h
93h
94h
95h
96h
97h
98h
99h
9Ah
9Bh
9Ch
9Dh
9Eh
9Fh
A0h
A1h
A2h
A3h
A4h
A5h
A6h
A7h
A8h
A9h
AAh
ABh
ACh
ADh
AEh
AFh
B0h
B1h
B2h
B3h
B4h
B5h
B6h
B7h
B8h
B9h
BAh
BBh
BCh
BDh
BEh
BFh
Data Sheet
Page
31
31
32
Address
RW
W
W
ASA10CR0
ASA10CR1
ASA10CR2
ASA10CR3
ASB11CR0
ASB11CR1
ASB11CR2
ASB11CR3
ASA12CR0
ASA12CR1
ASA12CR2
ASA12CR3
ASB13CR0
ASB13CR1
ASB13CR2
ASB13CR3
ASB20CR0
ASB20CR1
ASB20CR2
ASB20CR3
ASA21CR0
ASA21CR1
ASA21CR2
ASA21CR3
ASB22CR0
ASB22CR1
ASB22CR2
ASB22CR3
ASA23CR0
ASA23CR1
ASA23CR2
ASA23CR3
Reserved
31
31
32
Register
Name
RW
W
W
Access
31
31
32
40h
41h
42h
43h
44h
45h
46h
47h
48h
49h
4Ah
4Bh
4Ch
4Dh
4Eh
4Fh
50h
51h
52h
53h
54h
55h
56h
57h
58h
59h
5Ah
5Bh
5Ch
5Dh
5Eh
5Fh
60h
61h
62h
63h
64h
65h
66h
67h
68h
69h
6Ah
6Bh
6Ch
6Dh
6Eh
6Fh
70h
71h
72h
73h
74h
75h
76h
77h
78h
79h
7Ah
7Bh
7Ch
7Dh
7Eh
7Fh
Data Sheet
Page
RW
W
W
Address
31
31
32
Reserved
RW
W
W
Reserved
31
31
32
Register
Name
Access
DBA00DR0
DBA00DR1
DBA00DR2
DBA00CR0
DBA01DR0
DBA01DR1
DBA01DR2
DBA01CR0
DBA02DR0
DBA02DR1
DBA02DR2
DBA02CR0
DBA03DR0
DBA03DR1
DBA03DR2
DBA03CR0
DCA04DR0
DCA04DR1
DCA04DR2
DCA04CR0
DCA05DR0
DCA05DR1
DCA05DR2
DCA05CR0
DCA06DR0
DCA06DR1
DCA06DR2
DCA06CR0
DCA07DR0
DCA07DR1
DCA07DR2
DCA07CR0
Data Sheet
Page
Address
00h
01h
02h
03h
04h
05h
06h
07h
08h
09h
0Ah
0Bh
0Ch
0Dh
0Eh
0Fh
10h
11h
12h
13h
14h
15h
16h
17h
18h
19h
1Ah
1Bh
1Ch
1Dh
1Eh
1Fh
20h
21h
22h
23h
24h
25h
26h
27h
28h
29h
2Ah
2Bh
2Ch
2Dh
2Eh
2Fh
30h
31h
32h
33h
34h
35h
36h
37h
38h
39h
3Ah
3Bh
3Ch
3Dh
3Eh
3Fh
Reserved
Register
Name
PRT0DR
PRT0IE
PRT0GS
Reserved
PRT1DR
PRT1IE
PRT1GS
Reserved
PRT2DR
PRT2IE
PRT2GS
Reserved
PRT3DR
PRT3IE
PRT3GS
Reserved
PRT4DR
PRT4IE
PRT4GS
Reserved
PRT5DR
PRT5IE
PRT5GS
27
4.3
Table 27:
Bank 1
RW
RW
RW
CPU_SCR
40
40
Access
82
83
84
Page
RW
RW
RW
C0h
C1h
C2h
C3h
C4h
C5h
C6h
C7h
C8h
C9h
CAh
CBh
CCh
CDh
CEh
CFh
D0h
D1h
D2h
D3h
D4h
D5h
D6h
D7h
D8h
D9h
DAh
DBh
DCh
DDh
DEh
DFh
E0h
E1h
E2h
E3h
E4h
E5h
E6h
E7h
E8h
E9h
EAh
EBh
ECh
EDh
EEh
EFh
F0h
F1h
F2h
F3h
F4h
F5h
F6h
F7h
F8h
F9h
FAh
FBh
FCh
FDh
FEh
FFh
Data Sheet
82
83
84
Address
RW
RW
RW
OSC_CR0
OSC_CR1
Reserved
VLT_CR
Reserved
Reserved
Reserved
Reserved
IMO_TR
ILO_TR
BDG_TR
ECO_TR
Reserved
82
83
84
Reserved
50
51
53
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
RW
Register
Name
50
51
53
Reserved
50
51
53
82
83
84
88
90
92
93
95
97
99
100
88
90
92
93
95
97
99
100
95
97
99
100
88
90
92
93
95
97
99
100
88
90
92
93
Access
RW
RW ACA00CR0
RW ACA00CR1
ACA00CR2
RW Reserved
RW ACA01CR0
RW ACA01CR1
ACA01CR2
RW Reserved
RW ACA02CR0
RW ACA02CR1
ACA02CR2
RW Reserved
RW ACA03CR0
RW ACA03CR1
ACA03CR2
Page
50
51
53
80h
81h
82h
83h
84h
85h
86h
87h
88h
89h
8Ah
8Bh
8Ch
8Dh
8Eh
8Fh
90h
91h
92h
93h
94h
95h
96h
97h
98h
99h
9Ah
9Bh
9Ch
9Dh
9Eh
9Fh
A0h
A1h
A2h
A3h
A4h
A5h
A6h
A7h
A8h
A9h
AAh
ABh
ACh
ADh
AEh
AFh
B0h
B1h
B2h
B3h
B4h
B5h
B6h
B7h
B8h
B9h
BAh
BBh
BCh
BDh
BEh
BFh
Data Sheet
RW
RW
RW
Address
50
51
53
ASA10CR0
ASA10CR1
ASA10CR2
ASA10CR3
ASB11CR0
ASB11CR1
ASB11CR2
ASB11CR3
ASA12CR0
ASA12CR1
ASA12CR2
ASA12CR3
ASB13CR0
ASB13CR1
ASB13CR2
ASB13CR3
ASB20CR0
ASB20CR1
ASB20CR2
ASB20CR3
ASA21CR0
ASA21CR1
ASA21CR2
ASA21CR3
ASB22CR0
ASB22CR1
ASB22CR2
ASB22CR3
ASA23CR0
ASA23CR1
ASA23CR2
ASA23CR3
Reserved
RW
RW
RW
RW
RW
W
RW
Register
Name
50
51
53
76
77
106
107
Access
50
51
53
RW CLK_CR0
RW CLK_CR1
RW ABF_CR
AMD_CR
RW
RW
RW
Page
50
51
53
40h
41h
42h
43h
44h
45h
46h
47h
48h
49h
4Ah
4Bh
4Ch
4Dh
4Eh
4Fh
50h
51h
52h
53h
54h
55h
56h
57h
58h
59h
5Ah
5Bh
5Ch
5Dh
5Eh
5Fh
60h
61h
62h
63h
64h
65h
66h
67h
68h
69h
6Ah
6Bh
6Ch
6Dh
6Eh
6Fh
70h
71h
72h
73h
74h
75h
76h
77h
78h
79h
7Ah
7Bh
7Ch
7Dh
7Eh
7Fh
Data Sheet
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
W
Reserved
32
33
33
34
32
33
33
34
32
33
33
34
32
33
33
34
32
33
33
34
32
33
33
34
Address
Register
Name
28
Access
1.
Page
DBA00FN
DBA00IN
DBA00OU
Reserved
DBA01FN
DBA01IN
DBA01OU
Reserved
DBA02FN
DBA02IN
DBA02OU
Reserved
DBA03FN
DBA03IN
DBA03OU
Reserved
DCA04FN
DCA04IN
DCA04OU
Reserved
DCA05FN
DCA05IN
DCA05OU
Reserved
DCA06FN
DCA06IN
DCA06OU
Reserved
DCA07FN
DCA07IN
DCA07OU
Reserved
Data Sheet
Address
00h
01h
02h
03h
04h
05h
06h
07h
08h
09h
0Ah
0Bh
0Ch
0Dh
0Eh
0Fh
10h
11h
12h
13h
14h
15h
16h
17h
18h
19h
1Ah
1Bh
1Ch
1Dh
1Eh
1Fh
20h
21h
22h
23h
24h
25h
26h
27h
28h
29h
2Ah
2Bh
2Ch
2Dh
2Eh
2Fh
30h
31h
32h
33h
34h
35h
36h
37h
38h
39h
3Ah
3Bh
3Ch
3Dh
3Eh
3Fh
Reserved
Register
Name
PRT0DM0
PRT0DM1
PRT0IC0
PRT0IC1
PRT1DM0
PRT1DM1
PRT1IC0
PRT1IC1
PRT2DM0
PRT2DM1
PRT2IC0
PRT2IC1
PRT3DM0
PRT3DM1
PRT3IC0
PRT3IC1
PRT4DM0
PRT4DM1
PRT4IC0
PRT4IC1
PRT5DM0
PRT5DM1
PRT5IC0
PRT5IC1
RW
RW
118 RW
35
36
120
37
W
W
W
W
114 1
I/O Ports
5.0
I/O Ports
5.1
Introduction
capabilities:
gram:
29
GPIO
InterruptEnable
(INT_MSK0:5)
IM0
IM1
From
Other
GPIO
Pins
Rise
1
IM0
IM1
GPIO Int
Fall
Interrupt Mode
IM1 IM0
Output
D Q
0
0
1
1
En
IM0
IM1
GPIO Read
Change
0
1
0
1
Suppress Interrupt
Falling Edge
Rising Edge
Change from last read
To CPU Bus
DM0
DM1
Global Select
Bonding
Pad
DM0
DM1
0
0
1
1
CPU Bus
VDD
D
GPIO Write
Global Out
0
1
0
1
Output
Resistive Pulldown
Strong Drive
High Z (off)
Resistive Pullup
5.6K
Q
DM1
Global Select
DM0
5.6K
VSS
DM0
DM1
VSS
30
I/O Registers
6.0
I/O Registers
6.1
Table 28:
Bit #
POR
Read/Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
Bit [7:0]: Data [7:0] When written is the bits for output on port pins. When read is the state of the port pins
Port 0 Data Register (PRT0DR, Address = Bank 0, 00h)
Port 1 Data Register (PRT1DR, Address = Bank 0, 04h)
Port 2 Data Register (PRT2DR, Address = Bank 0, 08h)
Port 3 Data Register (PRT3DR, Address = Bank 0, 0Ch)
Port 4 Data Register (PRT4DR, Address = Bank 0, 10h)
Port 5 Data Register (PRT5DR, Address = Bank 0, 14h) Note: Port 5 is 4-bits wide, Bit [3:0]
6.2
Table 29:
Bit #
POR
Read/Write
Bit Name
Int En [7]
Int En [6]
Int En [5]
Int En [4]
Int En [3]
Int En [2]
Int En [1]
Int En [0]
Bit [7:0]: Int En [7:0] When written sets the pin interrupt state
0 = Interrupt disabled for pin
1 = Interrupt enabled for pin
Port 0 Interrupt Enable Register (PRT0IE, Address = Bank 0, 01h)
Port 1 Interrupt Enable Register (PRT1IE, Address = Bank 0, 05h)
Port 2 Interrupt Enable Register (PRT2IE, Address = Bank 0, 09h)
Port 3 Interrupt Enable Register (PRT3IE, Address = Bank 0, 0Dh)
Port 4 Interrupt Enable Register (PRT4IE, Address = Bank 0, 11h)
Port 5 Interrupt Enable Register (PRT5IE, Address = Bank 0, 15h) Note: Port 5 is 4-bits wide
31
6.3
Table 30:
Bit #
POR
Read/Write
Bit Name
GlobSel
[7]
GlobSel
[6]
GlobSel
[5]
GlobSel
[4]
GlobSel
[3]
GlobSel
[2]
GlobSel
[1]
GlobSel
[0]
Bit [7:0]: Global Select [7:0] When written determines whether a pin is connected to the Global Input Bus and Global Output Bus
0 = Not Connected
1 = Connected
Drive Mode xx = Global Select Register 0 = Standard CPU controlled port (Default)
Drive Mode 1 0 (High Z) = Global Select Register 1 = Direct Drive of associated Global Input line
Drive Mode 0 0, 0 1, 1 1 = Global Select Register 1 = Direct Receive from associated Global Output line
Port 0 Global Select Register (PRT0GS, Address = Bank 0, 02h)
Port 1 Global Select Register (PRT1GS, Address = Bank 0, 06h)
Port 2 Global Select Register (PRT2GS, Address = Bank 0, 0Ah)
Port 3 Global Select Register (PRT3GS, Address = Bank 0, 0Eh)
Port 4 Global Select Register (PRT4GS, Address = Bank 0, 12h)
Port 5 Global Select Register (PRT5GS, Address = Bank 0, 16h) Note: If implemented, Port 5 is 4-bits wide
6.3.1
Table 31:
Bit #
POR
Read/Write
Bit Name
DM0 [7]
DM0 [6]
DM0 [5]
DM0 [4]
DM0 [3]
DM0 [2]
DM0 [1]
DM0 [0]
Bit [7:0]: DM0 [7:0] The two Drive Mode bits that control a particular port pin are treated as a pair and are decoded
as follows:
Port Data Register Bit 0 = Drive Mode 0 0 = 0 Resistive (Default)
Port Data Register Bit 0 = Drive Mode 0 1 = 0 Strong
Port Data Register Bit 0 = Drive Mode 1 0 = High Z
Port Data Register Bit 0 = Drive Mode 1 1 = 0 Strong
Port Data Register Bit 1 = Drive Mode 0 0 = 1 Strong
Port Data Register Bit 1 = Drive Mode 0 1 = 1 Strong
Port Data Register Bit 1 = Drive Mode 1 0 = High Z
Port Data Register Bit 1 = Drive Mode 1 1 = 1 Resistive
Port 0 Drive Mode 0 Register (PRT0DM0, Address = Bank 1, 00h)
Port 1 Drive Mode 0 Register (PRT1DM0, Address = Bank 1, 04h)
Port 2 Drive Mode 0 Register (PRT2DM0, Address = Bank 1, 08h)
Port 3 Drive Mode 0 Register (PRT3DM0, Address = Bank 1, 0Ch)
Port 4 Drive Mode 0 Register (PRT4DM0, Address = Bank 1, 10h)
Port 5 Drive Mode 0 Register (PRT5DM0, Address = Bank 1, 14h) Note: Port 5 is 4-bits wide
32
I/O Registers
6.3.2
Table 32:
Bit #
POR
Read/Write
Bit Name
DM1 [7]
DM1 [6]
DM1 [5]
DM1 [4]
DM1 [3]
DM1 [2]
DM1 [1]
DM1 [0]
Bit [7:0]: DM1 [7:0] See truth table for Port Drive Mode 0 Registers, above
Port 0 Drive Mode 1 Register (PRT0DM1, Address = Bank 1, 01h)
Port 1 Drive Mode 1 Register (PRT1DM1, Address = Bank 1, 05h)
Port 2 Drive Mode 1 Register (PRT2DM1, Address = Bank 1, 09h)
Port 3 Drive Mode 1 Register (PRT3DM1, Address = Bank 1, 0Dh)
Port 4 Drive Mode 1 Register (PRT4DM1, Address = Bank 1, 11h)
Port 5 Drive Mode 1 Register (PRT5DM1, Address = Bank 1, 15h) Note: Port 5 is 4-bits wide
6.3.3
Table 33:
Bit #
POR
Read/Write
Bit Name
IC0 [7]
IC0 [6]
IC0 [5]
IC0 [4]
IC0 [3]
IC0 [2]
IC0 [1]
IC0 [0]
Bit [7:0]: IC0 [7:0] The two Interrupt Control bits that control a particular port pin are treated as a pair and are
decoded as follows:
IC1 [x], IC0 [x] = 0 0 = Disabled (Default)
IC1 [x], IC0 [x] = 0 1 = Falling Edge (-)
IC1 [x], IC0 [x] = 1 0 = Rising Edge (+)
IC1 [x], IC0 [x] = 1 1 = Change from Last Direct Read
Port 0 Interrupt Control 0 Register (PRT0IC0, Address = Bank 1, 02h)
Port 1 Interrupt Control 0 Register (PRT1IC0, Address = Bank 1, 06h)
Port 2 Interrupt Control 0 Register (PRT2IC0, Address = Bank 1, 0Ah)
Port 3 Interrupt Control 0 Register (PRT3IC0, Address = Bank 1, 0Eh)
Port 4 Interrupt Control 0 Register (PRT4IC0, Address = Bank 1, 12h)
Port 5 Interrupt Control 0 Register (PRT5IC0, Address = Bank 1, 16h) Note: Port 5 is 4-bits wide
33
6.3.4
Table 34:
Bit #
POR
Read/
Write
Bit Name
IC1 [7]
IC1 [6]
IC1 [5]
IC1 [4]
IC1 [3]
IC1 [2]
IC1 [1]
IC1 [0]
Bit [7:0]: IC1 [7:0] See truth table for Port Interrupt Control 0 Registers, above
Port 0 Interrupt Control 1 Register (PRT0IC1, Address = Bank 1, 03h)
Port 1 Interrupt Control 1 Register (PRT1IC1, Address = Bank 1, 07h)
Port 2 Interrupt Control 1 Register (PRT2IC1, Address = Bank 1, 0Bh)
Port 3 Interrupt Control 1 Register (PRT3IC1, Address = Bank 1, 0Fh)
Port 4 Interrupt Control 1 Register (PRT4IC1, Address = Bank 1, 13h)
Port 5 Interrupt Control 1 Register (PRT5IC1, Address = Bank 1, 17h) Note: Port 5 is 4-bits wide
34
Clocking
7.0
Clocking
7.1
Oscillator Options
7.1.1
Table 35:
Bit #
POR
FS1
FS1
FS1
FS1
FS1
FS1
FS1
FS1
Read/Write
Bit Name
IMO Trim
[7]
IMO Trim
[6]
IMO Trim
[5]
IMO Trim
[4]
IMO Trim
[3]
IMO Trim
[2]
IMO Trim
[1]
IMO Trim
[0]
Bit [7:0]: IMO Trim [7:0] Data value stored will alter the trimmed frequency of the Internal Main Oscillator. A larger
value in this register will increase the speed of the Internal Main Oscillator
1.
7.1.2
35
Table 36:
Bit #
POR
FS
FS
FS
FS
FS
FS1
Read/
Write
--
Bit Name
Reserved
Disable
ILO Trim
[5]
ILO Trim
[4]
ILO Trim
[3]
ILO Trim
[2]
ILO Trim
[1]
ILO Trim
[0]
Bit 7: Reserved
Bit 6: Disable
0 = Low Speed Oscillator is on
1 = Low Speed Oscillator is off (minimum power state)
Bit [5:0]: ILO Trim [5:0] Data value stored will alter the trimmed frequency of the Internal Low Speed Oscillator. (Not
recommended for customer alteration)
1.
Internal Low Speed Oscillator Trim Register (ILO_TR, Address = Bank 1, E9h)
7.1.3
32.768 kHz watch crystal to drive the 32K clock. To connect to the external crystal, the XtalIn and XtalOut pins
drive modes must be set to High Z. To enable the external crystal oscillator, bit 7 of the Oscillator Control 0 Register (OSC_CR0) must be set (default is off). Note that
the Internal Low Speed Oscillator continues to run when
this external function is selected. It runs until the oscillator is automatically switched over when the sleep timer
reaches terminal count. External feedback capacitors to
Vcc are required.
5.
Internal Low Speed Oscillator and External Crystal OscilNote: Transitions between oscillator domains may pro-
2.
3.
4.
36
User immediately selects a sleep interval of 1 second in the Oscillator Control 0 Register (OSC_CR0),
as the oscillator stabilization interval.
Clocking
Table 37:
Bit #
POR
FS
FS
FS
FS
FS
FS1
Read/Write
--
--
Reserved
Reserved
Amp [1]
Amp [0]
Bias [1]
Bias [0]
Bit Name
Bit [7:6]: PSSDC [1:0] Power System Sleep Duty Cycle. (Not recommended for customer alteration)
0 0 = 1/128
0 1 = 1/512
1 0 = 1/32
1 1 = 1/8
Bit 5: Reserved
Bit 4: Reserved
Bit [3:2]: Amp [1:0] Sets the amplitude of the adjustment. (Not recommended for customer alteration)
Bit [1:0]: Bias [1:0] Sets the bias of the adjustment. (Not recommended for customer alteration)
1.
7.1.4
Vc c
Vc c
C1
C2
XtalOut
XtalIn
Crys tal
Figure 8: External Crystal Oscillator Connections
Table 38:
Capacitors C1, C2
Use NPO-type ceramic caps
C1 = C2 = 25 pF - (Package Cap) - (Board Parasitic
Cap)
8 PDIP
Package
Package Capacitance
0.9 pF
20 PDIP
2 pF
20 SOIC
1 pF
20 SSOP
0.5 pF
28 PDIP
28 SOIC
28 SSOP
0.5 pF
44 TQFP
0.5 pF
quency.
48 PDIP
48 SSOP
2 pF
1 pF
5 pF
0.6 pF
37
7.1.5
1.
2.
3.
4.
7.2
Table 39:
Signal
48M
24M
24V1
The 24 MHz output from the Internal Main Oscillator that has been passed through a user-selectable 1
to 16 divider {F = 24 MHz / (1 to 16) = 24 MHz to 1.5 MHz}. The divider value is found in the Oscillator
Control 1 Register (OSC_CR1). Note that the divider will be N+1, based on a value of N written into the
register bits.
24V2
The 24V1 signal that has been passed through an additional user-selectable 1 to 16 divider {F = 24
MHz / ((1 to 16) * (1 to 16)) = 24 MHz to 93.7 kHz}. The divider value is found in the Oscillator Control 1
Register (OSC_CR1). Note that the divider will be N+1, based on a value of N written into the register
bits.
32K
The multiplexed output of either the Internal Low Speed Oscillator or the External Crystal Oscillator.
CPU
The output from the Internal Main Oscillator that has been passed through a divider that has 8 user
selectable ratios ranging from 1:1 to 1:256, yielding frequencies ranging from 24 MHz to 93.7 kHz.
SLP
The 32K system-clocking signal that has been passed through a divider that has 4 user selectable
ratios ranging from 1:26 to 1:215, yielding frequencies ranging from 512 Hz to 1 Hz. This signal is used
to clock the sleep timer period.
38
Clocking
The following diagram shows the PSoC MCU Clock Tree of signals 48M through SLP:
48M
48 MHz
Internal
Main
Oscillator
24M
24 MHz
Phase
Lock Loop
24V1
Vcc
P1[1]
External
Crystal
Oscillator
P1[0]
Vcc
24V2
32 kHz Select
OSC_CR0[7]
1
2
4
8
16
32
128
256
CPU
32K
Internal
Low Speed
Oscillator
26
29
212
215
SLP
39
Table 40:
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
32k Select
PLL Mode
Reserved
Sleep [1]
Sleep [0]
CPU [2]
CPU [1]
CPU [0]
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
24V1 [3]
24V1 [2]
24V1 [1]
24V1 [0]
24V2 [3]
24V2 [2]
24V2 [1]
24V2 [0]
Bit [7:4]: 24V1 [3:0] 4-bit data value determines the divider value for the 24V1 system-clocking signal. Note that the
4-bit data value equals n-1, where n is the desired divider value, as illustrated in PSoC MCU Clock Tree of Signals.
See Table 42 on page 41.
Bit [3:0]: 24V2 [3:0] 4-bit data value determines the divider value for the 24V2 system-clocking signal. Note that the
4-bit data value equals n-1, where n is the desired divider value, as illustrated in the PSoC MCU Clock Tree of Signals. See Table 42 on page 41.
Oscillator Control 1 Register (OSC_CR1, Address = Bank 1, E1h)
40
Clocking
7.2.2
OSC_CR1 register.
24V2 kHz
24000.00
12000.00
8000.00
6000.00
4800.00
4000.00
3428.57
3000.00
2666.67
2400.00
2181.82
2000.00
1846.15
1714.29
1600.00
1500.00
12000.00
6000.00
4000.00
3000.00
2400.00
2000.00
1714.29
1500.00
1333.33
1200.00
1090.91
1000.00
923.08
857.14
800.00
750.00
8000.00
4000.00
2666.67
2000.00
1600.00
1333.33
1142.86
1000.00
888.89
800.00
727.27
666.67
615.38
571.43
533.33
500.00
6000.00
3000.00
2000.00
1500.00
1200.00
1000.00
857.14
750.00
666.67
600.00
545.45
500.00
461.54
428.57
400.00
375.00
Reg.
Value
40
41
42
43
44
45
46
47
48
49
4A
4B
4C
4D
4E
4F
50
51
52
53
54
55
56
57
58
59
5A
5B
5C
5D
5E
5F
60
61
62
63
64
65
66
67
68
69
6A
6B
6C
6D
6E
6F
70
71
72
73
74
75
76
77
78
79
7A
7B
7C
7D
7E
7F
24V1
MHz
4.80
4.80
4.80
4.80
4.80
4.80
4.80
4.80
4.80
4.80
4.80
4.80
4.80
4.80
4.80
4.80
4.00
4.00
4.00
4.00
4.00
4.00
4.00
4.00
4.00
4.00
4.00
4.00
4.00
4.00
4.00
4.00
3.43
3.43
3.43
3.43
3.43
3.43
3.43
3.43
3.43
3.43
3.43
3.43
3.43
3.43
3.43
3.43
3.00
3.00
3.00
3.00
3.00
3.00
3.00
3.00
3.00
3.00
3.00
3.00
3.00
3.00
3.00
3.00
24V2 kHz
4800.00
2400.00
1600.00
1200.00
960.00
800.00
685.71
600.00
533.33
480.00
436.36
400.00
369.23
342.86
320.00
300.00
4000.00
2000.00
1333.33
1000.00
800.00
666.67
571.43
500.00
444.44
400.00
363.64
333.33
307.69
285.71
266.67
250.00
3428.57
1714.29
1142.86
857.14
685.71
571.43
489.80
428.57
380.95
342.86
311.69
285.71
263.74
244.90
228.57
214.29
3000.00
1500.00
1000.00
750.00
600.00
500.00
428.57
375.00
333.33
300.00
272.73
250.00
230.77
214.29
200.00
187.5
Reg.
Value
80
81
82
83
84
85
86
87
88
89
8A
8B
8C
8D
8E
8F
90
91
92
93
94
95
96
97
98
99
9A
9B
9C
9D
9E
9F
A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
AA
AB
AC
AD
AE
AF
B0
B1
B2
B3
B4
B5
B6
B7
B8
B9
BA
BB
BC
BD
BE
BF
24V1
MHz
2.67
2.67
2.67
2.67
2.67
2.67
2.67
2.67
2.67
2.67
2.67
2.67
2.67
2.67
2.67
2.67
2.40
2.40
2.40
2.40
2.40
2.40
2.40
2.40
2.40
2.40
2.40
2.40
2.40
2.40
2.40
2.40
2.18
2.18
2.18
2.18
2.18
2.18
2.18
2.18
2.18
2.18
2.18
2.18
2.18
2.18
2.18
2.18
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
24V2 kHz
2666.67
1333.33
888.89
666.67
533.33
444.44
380.95
333.33
296.30
266.67
242.42
222.22
205.13
190.48
177.78
166.67
2400.00
1200.00
800.00
600.00
480.00
400.00
342.86
300.00
266.67
240.00
218.18
200.00
184.62
171.43
160.00
150.00
2181.82
1090.91
727.27
545.45
436.36
363.64
311.69
272.73
242.42
218.18
198.35
181.82
167.83
155.84
145.45
136.36
2000.00
1000.00
666.67
500.00
400.00
333.33
285.71
250.00
222.22
200.00
181.82
166.67
153.85
142.86
133.33
125.00
Reg.
Value
C0
C1
C2
C3
C4
C5
C6
C7
C8
C9
CA
CB
CC
CD
CE
CF
D0
D1
D2
D3
D4
D5
D6
D7
D8
D9
DA
DB
DC
DD
DE
DF
E0
E1
E2
E3
E4
E5
E6
E7
E8
E9
EA
EB
EC
ED
EE
EF
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
FA
FB
FC
FD
FE
FF
24V1
MHz
1.85
1.85
1.85
1.85
1.85
1.85
1.85
1.85
1.85
1.85
1.85
1.85
1.85
1.85
1.85
1.85
1.71
1.71
1.71
1.71
1.71
1.71
1.71
1.71
1.71
1.71
1.71
1.71
1.71
1.71
1.71
1.71
1.60
1.60
1.60
1.60
1.60
1.60
1.60
1.60
1.60
1.60
1.60
1.60
1.60
1.60
1.60
1.60
1.50
1.50
1.50
1.50
1.50
1.50
1.50
1.50
1.50
1.50
1.50
1.50
1.50
1.50
1.50
1.50
24V2 kHz
1846.15
923.08
615.38
461.54
369.23
307.69
263.74
230.77
205.13
184.62
167.83
153.85
142.01
131.87
123.08
115.38
1714.29
857.14
571.43
428.57
342.86
285.71
244.90
214.29
190.48
171.43
155.84
142.86
131.87
122.45
114.29
107.14
1600.00
800.00
533.33
400.00
320.00
266.67
228.57
200.00
177.78
160.00
145.45
133.33
123.08
114.29
106.67
100.00
1500.00
750.00
500.00
375.00
300.00
250.00
214.29
187.50
166.67
150.00
136.36
125.00
115.38
107.14
100.00
93.75
41
7.2.3
8.0
Interrupts
8.1
Overview
in
the
General
Interrupt
Mask
Register
42
Interrupts
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0
R
Q
Interrupt
Source
IRQ
IRQ
Flip Flop
1
D
IRQ
...
...
Priority
Decode
Logic
Interrupt
Vector Table
Interrupt Vector
Interrupt
Source
IRQ
IRQ
Flip Flop
D
Bit
7
Bit
6
Bit
5
Bit
4
Bit
3
Bit
2
Bit
1
Bit
0
43
8.2
8.3
Interrupt Vectors
Table 43:
Address
Interrupt Priority
Number
Description
and interrupt-type bits for each I/O pin must be set (see
0x0004
0x0008
0x000C
0x0010
0x0014
0x0018
0x001C
0x0020
0x0024
0x0028
10
0x002C
11
0x0030
12
0x0034
13
0x0038
14
0x003C
15
and Table 34 on page 34). For Analog Column Interrupts, the interrupt source must be set (see section 10.10
and Table 77 on page 101).
using the PUSH and POP instructions. The memory oriented CPU architecture requires minimal state saving
during interrupts, providing very fast interrupt context
switching. The Program Counter and Flag registers
(CPU_PC and CPU_F) are restored when the RETI
instruction is executed. If two or more interrupts are
pending at the same time, the higher priority interrupt
(lower priority number) will be serviced first.
0x0040
44
Interrupts
8.4
Interrupt Masks
Table 44:
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
Reserved
Sleep
GPIO
Acolumn3
Acolumn2
Acolumn1
Acolumn0
Voltage Monitor
Bit 7: Reserved
Bit 6: Sleep Interrupt Enable Bit (see 11.4)
0 = Disabled
1 = Enabled
Bit 5: GPIO Interrupt Enable Bit (see 8.6)
0 = Disabled
1 = Enabled
Bit [4]: Acolumn 3 Interrupt Enable Bit (see 10.0)
0 = Disabled
1 = Enabled
Bit [3]: Acolumn 2 Interrupt Enable Bit (see 10.0)
0 = Disabled
1 = Enabled
Bit [2]: Acolumn 1 Interrupt Enable Bit (see 10.0)
0 = Disabled
1 = Enabled
Bit [1]: Acolumn 0 Interrupt Enable Bit (see 10.0)
0 = Disabled
1 = Enabled
Bit 0: Voltage Monitor Interrupt Enable Bit (see 11.5)
0 = Disabled
1 = Enabled
General Interrupt Mask Register (INT_MSK0, Address = Bank 0, E0h)
45
Table 45:
Bit #
POR
Read/Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
DCA07
DCA06
DCA05
DCA04
DBA03
DBA02
DBA01
DBA00
8.5
Table 46:
Bit #
POR
Read/Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
Data[7]
Data[6]
Data[5]
Data[4]
Data[3]
Data[2]
Data[1]
Data[0]
46
Interrupts
8.6
GPIO Interrupt
any change from the last read state, 2) rising edge, and
3) falling edge.
well as the enable bits for each pin, which are located in
R
1
GPIO Cell
D
Q
IRQ
OR
To Priority
Decode Logic
INTOUTn
PIN
Int Logic
GPIO BIT IE
PORTX IE Register
(PRT0IE...PRT5IE)
2.
3.
4.
5.
6.
47
9.0
9.1
Introduction
user.
Data
(DBA00DR1-
48
DBA0
(Basic Block)
DCA4
(Comm Block)
DBA1
(Basic Block)
DCA5
(Comm Block)
DBA2
(Basic Block)
DBA3
(Basic Block)
*Decimator/
Incremental
*Broadcast
DCA6
(Comm Block)
DCA7
(Comm Block)
*Decimator/
Incremental
9.2
9.2.1
49
Table 47:
Bit #
POR
RW
RW
Read/Write
RW
Bit Name
Reserved
Reserved End
RW
RW
RW
RW
RW
Mode 1
Mode 0
Function [2]
Function [1]
Function [0]
Bit 7: Reserved
Bit 6: Reserved
Bit 5: End
0 = PSoC block is not the end of a chained function (End should not be set to 0 in block DCA07)
1 = PSoC block is the end of a chained function, or is an unchained PSoC block
Bit 4: Mode 1 The definition of the Mode [1] bit depends on the block function selected
Timer: The Mode [1] bit signifies the Compare Type
0 = Less Than or Equal
1 = Less Than
Counter: The Mode [1] bit signifies the Compare Type
0 = Less Than or Equal
1 = Less Than
CRC/PRS: The Mode [1] bit is unused in this function
Deadband: The Mode [1] bit is unused in this function
UART: The Mode[1] bit signifies the Interrupt Type (Transmitter only)
0 = Transmit: Interrupt on TX_Reg Empty
1 = Transmit: Interrupt on TX Complete
SPI: The Mode[1] bit signifies the Interrupt Type
0 = Master: Interrupt on TX Reg Empty, Slave: Interrupt on RX Reg Full
1 = Master: Interrupt on SPI Complete, Slave: Interrupt on SPI Complete
Bit 3: Mode 0 The definition of the Mode [0] bit depends on the block function selected
Timer: The Mode [0] bit signifies Interrupt Type
0 = Terminal Count
1 = Compare True
Counter: The Mode [0] bit signifies Interrupt Type
0 = Terminal Count
1 = Compare True
CRC/PRS: The Mode [0] bit is unused in this function
Deadband: The Mode [0] bit is unused in this function
UART: The Mode [0] bit signifies the Direction
0 = Receive
1 = Transmit
SPI: The Mode [0] bit signifies the Type
0 = Master
1 = Slave
Bit [2:0]: Function [2:0] The Function [2:0] bits select the block function which determines the basic hardware configuration
0 0 0 = Timer (chainable)
0 0 1 = Counter (chainable)
0 1 0 = CRC/PRS (Cyclical Redundancy Checker or Pseudo Random Sequencer) (chainable)
0 1 1 = Reserved
1 0 0 = Deadband for Pulse Width Modulator
1 0 1 = UART (function only available on DCA type blocks)
1 1 0 = SPI (function only available on DCA type blocks)
1 1 1 = Reserved
50
9.2.2
Bit #
POR
Read/Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
Data [3]
Data [2]
Data [1]
Data [0]
Clock [3]
Clock [2]
Clock [1]
Clock [0]
51
for each digital PSoC block. The sources for each digital
tant to note that clock inputs selected from the GPIO pins
that are selected from the GPIO pins (through the Global
Table 49:
Function
Data Input
Timer
Counter
CRC
Data Input
PRS
N/A
Deadband
TX UART
N/A
RX UART
RX Data In
SPI Master
SPI Slave
9.2.3
52
Table 50:
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
Reserved
Reserved
AUX Out
Enable
AUX IO Sel
[1]
AUX IO Sel
[0]
Out
Enable
Out Sel
[1]
Out Sel
[0]
Bit 7: Reserved
Bit 6: Reserved
Bit 5: AUX Out Enable
0 = Disable Auxiliary Output
1 = Enable Auxiliary Output (function dependent)
Bit [4:3]: AUX IO Sel [1:0] Function-dependent selection of auxiliary input or output
0 0 = Drive Global Output[0] (for Digital Blocks 00 to 03) or
Input from Global Input[4] or Drive Global Output [4] (for Digital Blocks 04 to 07)
0 1 = Drive Global Output[1] (for Digital Blocks 00 to 03) or
Input from Global Input[5] or Drive Global Output[5] (for Digital Blocks 04 to 07)
1 0 = Drive Global Output[2] (for Digital Blocks 00 to 03) or
Input from Global Input[6] or Drive Global Output[6] (for Digital Blocks 04 to 07)
1 1 = Drive Global Output[3] (for Digital Blocks 00 to 03) or
Input from Global Input[7] or Drive Global Output[7] (for Digital Blocks 04 to 07)
Bit 2: Out Enable
0 = Disable Primary Output
1 = Enable Primary Output (function dependant)
Bit [1:0]: Out Sel [1:0] Primary Output
0 0 = Drive Global Output[0] (for Digital Blocks 00 to 03) or Drive Global Output[4] (for Digital Blocks 04 to 07)
0 1 = Drive Global Output[1] (for Digital Blocks 00 to 03) or Drive Global Output[5] (for Digital Blocks 04 to 07)
1 0 = Drive Global Output[2] (for Digital Blocks 00 to 03) or Drive Global Output[6] (for Digital Blocks 04 to 07)
1 1 = Drive Global Output[3] (for Digital Blocks 00 to 03) or Drive Global Output[7] (for Digital Blocks 04 to 07)
The Primary Output is the source for Previous Digital PSoC Block or Digital Block 03, selections for the Clock
Source Select in the Digital Basic Type A/Communications Type A Block xx Input Register (Table 48 on page 51).
A digital PSoC block may have 0, 1, or 2 outputs depending on its function, as shown in the following table:
53
Table 51:
Function
Auxiliary Output
Auxiliary Input
Timer
Terminal Count
Compare True
N/A
Counter
Compare True
Terminal Count
N/A
CRC
N/A
Compare True
N/A
PRS
Serial Data
Compare True
N/A
Deadband
F0
F1
N/A
TX UART
TX Data Out
N/A
N/A
RX UART
N/A
N/A
N/A
SPI Master
MOSI
SCLK
N/A
SPI Slave
MISO
N/A
SS_
9.3
9.3.1
Table 52:
Bit #
POR
Read/Write
VF1
VF1
VF1
VF1
VF1
VF1
VF1
VF1
Bit Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
54
Function
DR0
R/W
1
DR1
R/W
DR2
R/W
Timer
Count
Period Value
Capture Value
RW
Counter
Count
R1
Period Value
Compare Value
RW
CRC
R1
Seed Value
RW
PRS
Current Value
R1
Seed Value
RW
Deadband
Count
R1
Period Value
Not Used
RW
RX UART
Shifter
NA
Not Used
NA
Data Register
TX UART
Shifter
NA
Data Register
Not Used
NA
SPI
Shifter
NA
TX Data Register
RX Data Register
1.
Each time the register is read, its value is written to the DR2 register.
9.3.2
Table 54:
Bit #
POR
Read/Write
VF1
VF1
VF1
VF1
VF1
VF1
VF1
VF1
Bit Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
Varies by function.
55
9.3.3
Digital Basic Type A/Communications Type A Block xx Control Register 0 When Used
as Timer, Counter, CRC, and Deadband
Table 55:
Bit #
POR
--
--
--
--
--
--
--
Read/Write
--
--
--
--
--
--
--
RW
Bit Name
Reserved
Reserved
Reserved
Reserved
Reserved
Reserved
Reserved
Enable
Bit 7: Reserved
Bit 6: Reserved
Bit 5: Reserved
Bit 4: Reserved
Bit 3: Reserved
Bit 2: Reserved
Bit 1: Reserved
Bit 0: Enable
0 = Function Disabled
1 = Function Enabled
56
9.3.4
Digital Communications Type A Block xx Control Register 0 When Used as UART Transmitter
Table 56:
Bit #
POR
Read/
Write
--
--
--
RW
RW
RW
Bit Name
Reserved
Reserved
TX Complete
TX Reg
Empty
Reserved
Parity Type
Parity
Enable
Enable
Bit 7: Reserved
Bit 6: Reserved
Bit 5: TX Complete
0 = Indicates that if a transmission has been initiated, it is still in progress
1 = Indicates that the current transmission is complete (including framing bits)
Optional interrupt source for TX UART. Reset when this register is read.
Bit 4: TX Reg Empty
0 = Indicates TX Data register is not available to accept another byte (writing to register will cause data to be lost)
1 = Indicates TX Data register is available to accept another byte
Note that the interrupt does not occur until at least 1 byte has been previously written to the TX Data Register
Default interrupt source for TX UART. Reset when the TX Data Register (Data Register 1) is written.
Bit 3: Reserved
Bit 2: Parity Type
0 = Even
1 = Odd
Bit 1: Parity Enable
0 = Parity Disabled
1 = Parity Enabled
Bit 0: Enable
0 = Function Disabled
1 = Function Enabled
Digital Communications Type A Block 04 Control Register 0
Digital Communications Type A Block 05 Control Register 0
Digital Communications Type A Block 06 Control Register 0
Digital Communications Type A Block 07 Control Register 0
57
9.3.5
Table 57:
Bit #
POR
Read/Write
RW
RW
RW
Bit Name
Parity
Error
Overrun
Framing
Error
RX Active
RX Reg
Full
Parity
Type
Parity
Enable
Enable
58
9.3.6
Digital Communications Type A Block xx Control Register 0 When Used as SPI Transceiver
Table 58:
Bit #
POR
Read/
Write
RW
RW
RW
RW
Bit Name
LSB First
Overrun
SPI Complete
TX Reg
Empty
RX Reg
Full
Clock
Phase
Clock
Polarity
Enable
59
9.4
and
Output
registers
(DBA00IN-DCA07IN,
Table 59:
Global
Input [7]
9.4.1
Input Assignments
Global
Input [5]
Global
Input [4]
Global
Input [3]
Global
Input [2]
Global
Input [1]
Global
Input [0]
Port x[7]
Port x[6]
Port x[5]
Port x[4]
Port x[3]
Port x[2]
Port x[1]
Port x[0]
PSoC Block 04
PSoC Block 05
PSoC Block 06
PSoC Block 07
PSoC Block 04
PSoC Block 05
PSoC Block 06
PSoC Block 07
PSoC Block 04
PSoC Block 05
PSoC Block 06
PSoC Block 07
PSoC Block 04
PSoC Block 05
PSoC Block 06
PSoC Block 07
PSoC Block 00
PSoC Block 01
PSoC Block 02
PSoC Block 03
PSoC Block 00
PSoC Block 01
PSoC Block 02
PSoC Block 03
PSoC Block 00
PSoC Block 01
PSoC Block 02
PSoC Block 03
PSoC Block 00
PSoC Block 01
PSoC Block 02
PSoC Block 03
9.4.2
Output Assignments
puts may drive out to GPIO pins. In this case, once the
shown in the table below. The Global Output bus has two
Table 60:
Global
Output [7]
Global
Output [5]
Global
Output [4]
Global
Output [3]
Global
Output [2]
Global
Output [1]
Global
Output [0]
Port x[7]
Port x[6]
Port x[5]
Port x[4]
Port x[3]
Port x[2]
Port x[1]
Port x[0]
PSoC Block 04
PSoC Block 05
PSoC Block 06
PSoC Block 07
PSoC Block 04
PSoC Block 05
PSoC Block 06
PSoC Block 07
PSoC Block 04
PSoC Block 05
PSoC Block 06
PSoC Block 07
PSoC Block 04
PSoC Block 05
PSoC Block 06
PSoC Block 07
PSoC Block 00
PSoC Block 01
PSoC Block 02
PSoC Block 03
PSoC Block 00
PSoC Block 01
PSoC Block 02
PSoC Block 03
PSoC Block 00
PSoC Block 01
PSoC Block 02
PSoC Block 03
PSoC Block 00
PSoC Block 01
PSoC Block 02
PSoC Block 03
9.5
9.5.1
9.5.1.1
Summary
60
current count is less than (or less than or equal to) the
9.5.1.2
Registers
9.5.1.5
Interrupts
count.
tion.
9.5.1.3
9.5.1.6
Inputs
1.
There are two inputs, the Source Clock and the Hard-
Constraints
Hardware/software synchronous capture is only
available with a clocking rate of 24 MHz and below.
Usage Notes
2.
Software Capture
When a capture event occurs, all bytes in a multibyte timer transfer simultaneously from the current
count (Data Register 0) to the capture register (Data
Register 2). To generate a software capture event,
only the least significant Data Register 0 byte needs
to be read by the CPU. This causes the same simultaneous transfer as a hardware event.
9.5.1.4
Outputs
3.
Disabled State
When the Control Register Enable bit is set to 0,
the internal block clock is turned off. A write to Data
Register 1 (Period) is loaded directly into Data Register 0 (Counter) to initialize or reset the count. All
outputs are low and the block interrupt is held low.
Disabling a timer does not affect the current count
value and it may be read by the CPU. However,
since hardware/software capture is disabled in this
state, two reads are required to read each byte of a
multi-byte register. One to transfer each Data Register 0 count value to the associated Data Register 2
capture register, then one to read the result in Data
Register 2.
61
4.
Register 2.
9.5.2
9.5.2.1
9.5.2.3
Inputs
There are two primary inputs, the Source Clock and the
Enable signal. When the Enable signal is high, the down
counter is decremented on the rising-edge of the Source
Clock. The multiplexers selecting these inputs are con-
Summary
DCA07IN).
9.5.2.4
Outputs
9.5.2.2
9.5.2.5
Interrupts
Registers
9.5.2.6
1.
Usage Notes
Enable Input
The enable input is synchronous and when low
forces the counter into a hold state. Outputs are
unaffected by the state of the enable input. If an
external source is selected as the enable input, it is
synchronized to the 24 MHz clock.
62
2.
3.
4.
Disabled State
9.5.3.2
9.5.3.3
The input controls the period and duty cycle of the dead-
Inputs
9.5.3.1
Extra Count
9.5.3
Registers
Deadband Generator
Summary
9.5.3.4
Outputs
PSoC block for its clock input, it only sees the F0 out-
9.5.3.5
Interrupts
9.5.3.6
1.
Usage Notes
Constraints
The dead time must not exceed the minimum of the
input signals pulse-width high and pulse-width low
time, less two CPU clocks. Dead time equals the
period of the input clock times one plus the value
written to Data Register 1.
63
2.
Enabling
The data input to the Dead-Band function is hardware to the primary output of the previous block,
which is typically programmed to be a PWM. The
proper order for enabling these blocks (writing the
Control Register 0) is PWM first, then Dead-Band.
3.
5.
chain of N PSoC blocks can generate numbers from 2to 8N-bits wide and sequences of up to 28N-1 distinct values.
9.5.4.2
Disabled State
When the Control Register Enable bit is set to 0,
the internal block clock is turned off. A write to Data
Register 1 (Period) is loaded directly into Data Register 0 (Counter) to initialize or reset the dead-band
time. All outputs are low and the block interrupt is
held low.
4.
Registers
Data Register 0 implements a linear-feedback shift register. Data Register 2 holds the seed value and when the
block is disabled, a write to Data Register 2 is loaded
directly into Data Register 0 (The block must be disabled
when writing this value). Data Register 1 specifies the
polynomial and width of the numbers in the sequence
(see 9.5.4.6).
9.5.4.3
The Kill signal may be negated at any time. However, the output may be enabled at an arbitrary time
with respect to the F0 and F1 generation. If exact
timing is required when re-enabling the F0 and F1
outputs, the following procedure is recommended:
1.Kill is asserted.
Inputs
9.5.4.4
Outputs
9.5.4.5
Interrupts
Compare signal between Data Register 0 and Data Register 2. Data Register 2 is initially loaded with the seed
value, and therefore a periodic interrupt will be gener-
9.5.4
9.5.4.1
Summary
The PRS function generates an output waveform corresponding to a sequence of pseudo-random numbers. A
linear-feedback shift register generates the sequence
according to a user-specified polynomial. The width of
the numbers in the sequence is variable and the initial
value is determined by a user-defined seed value. PRS
64
9.5.4.6
The PRS function utilizes a different modular architecture with one XOR gate between each bit of the shift reg-
modular LFSR
+
1
9.5.5
9.5.5.1
sponding to the length and all tap bits are turned on; the
The CRC uses a shift register and XOR gates like the
ally the CRC block is identical to the PRS with the excep-
10001110b or 8Eh.
9.5.4.7
1.
Usage Notes
Disabled State
When the Control Register Enable bit is set to 0,
the internal block clock is turned off. A write to Data
Register 2 (Seed) is loaded directly into Data Register 0 (LFSR) to initialize or reset the seed value. All
outputs are low and the block interrupt is held low.
2.
Summary
9.5.5.2
Registers
Data Register 0 implements a linear-feedback shift register. Data Register 2 holds the seed value and when the
block is disabled, a write to Data Register 2 is loaded
65
9.5.5.3
9.5.5.7
1.
Inputs
9.5.5.4
Outputs
Like the PRS, the CRC function drives the output serial
data stream with the most significant bit of CRC processing synchronous with the input clock. Normally the CRC
output is not used. The output may be driven on the Global Output bus or to the subsequent digital PSoC block.
The
PSoC
block
Output
Register
(DBA00OU-
9.5.5.5
2.
9.5.6
9.5.6.1
Interrupts
9.5.5.6
Disabled State
When the Control Register Enable bit is set to 0,
the internal block clock is turned off. A write to Data
Register 2 (Seed) is loaded directly into Data Register 0 (LFSR) to initialize or reset the seed value. All
outputs are low and the block interrupt is held low.
Usage Notes
9.5.6.2
Registers
66
9.5.6.3
Inputs
9.5.7.2
Registers
by the Input
Register (DCA04IN-DCA07IN).
9.5.6.4
Outputs
be immediately loaded with the next byte to transmit, acting as a 1 byte transmit buffer. Data Register 2 is not
None.
9.5.6.5
Interrupts
Register 2 is full)
9.5.7.3
9.5.6.6
1.
Usage Notes
Inputs
Reading Control Register 0, which contains the status bits, automatically resets all status bits to 0 with
the exception of RX Reg Full. Reading Data Register 2 (Receive Data Register) clears the RX Reg Full
status.
9.5.7.4
Outputs
Using Interrupts
9.5.7
9.5.7.1
9.5.7.5
9.5.7.6
Summary
1.
output half of a basic 8-bit UART. Start and Stop bits are
Usage Notes
generated. Parity bit generation and type are configurable features. This function requires a Digital Communications Type PSoC block. It cannot be chained for
longer data words.
Interrupts
2.
67
9.5.8
except for TX Reg Empty. TX Reg Empty is automatically cleared when a byte is written to the TX
Data Register (Data Register 1).
3.
9.5.8.1
Summary
The SPI Master function provides a full-duplex synchroTX Reg Empty status or optionally TX Complete status generates the block interrupt. Executing the
interrupt routine does not automatically clear status.
If TX Complete is selected as the interrupt source,
Control Register 0 (status) must be read in the interrupt routine to clear the status. If TX Reg Empty is
selected, a byte must be written to the TX Data Register (Data Register 1) to clear the status. If the status is not cleared, further interrupts will be
suppressed.
SCLK
Polarity=0, Mode 0
Polarity=1, Mode 1
MOSI/MISO
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
Bit7
Polarity=1, Mode 3
MOSI/MISO
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
Registers
Data Register 0 provides a shift register for both incoming and outgoing data. Output data is written to Data
Register 1 (TX Data Register). When this block is idle, a
write to the TX Data Register will initiate a transmission.
Input data is read from Data Register 2 (RX Data Register). When Data Register 0 is empty, its value is updated
from Data Register 1, if new data is available. As data
bits are shifted in, the transmit bits are shifted out. After
the 8 bits are transmitted and received by Data Register
68
9.5.8.3
Inputs
9.5.9
9.5.9.1
trolled by the PSoC block Input Register (DCA04INThe SPI Slave function provides a full-duplex bi-direc-
DCA07IN).
9.5.8.4
Outputs
9.5.9.2
Registers
output options.
Data Register 0 provides a shift register for both incomNote: The SPIM function does not provide the SS_ sig-
9.5.8.5
new data bits are shifted in, the transmit bits are shifted
Interrupts
9.5.8.6
1.
Usage Notes
Reading Control Register 0, which contains the status bits, automatically resets the status bits to 0 with
the exception of TX Reg Empty, which is cleared
when a byte is written to the TX Data Register (Data
Register 1), and the RX Reg Full, which is cleared
when a byte is read from the RX Data Register
(Data Register 2).
2.
9.5.9.3
Inputs
Using Interrupts
69
Register 2) to clear the status. If the interrupting status is not cleared further interrupts will be suppressed.
9.5.9.4
Outputs
9.5.9.5
4.
Interrupts
9.5.9.6
1.
Usage Notes
2.
Multi-Slave Environment
The SS_ signal does not have any affect on the output from the slave. The output of the slave at the
end of a reception/transmission is always the first bit
sent (the MSB, unless LSBF option is selected, then
its the LSB). To implement a multi-slave environment, a GPIO interrupt may be configured on the
SS_ input, and the Slave output strength may be
toggled between driving and High Z in firmware.
3.
Using Interrupts
RX Reg Full status or SPI Complete status generates an interrupt. Executing the interrupt routine
does not automatically clear status. If SPI Complete
is selected as the interrupt source, Control Register
0 (status) must be read in the interrupt routine to
clear the status. If RX Reg Full status is selected, a
byte must be read from the RX Data Register (Data
70
10.0
10.1
Introduction
sensor.
Integrated Development Environment provides automated configuration of PSoC blocks by simply selecting
the desired functions. PSoC Designer then generates
the proper configuration information and can print a
device data sheet unique to that configuration.
Single ended configuration is cost effective for reasonable speed / accuracy, and provides simple
interface to most real-world analog inputs and outputs.
71
10.2
Table 61:
Signal
Definition
ACLK0
A system-clocking signal that is driven by the clock output of a digital PSoC block and can be selected
by the user to drive the clocking signal to an analog column. Any of the 8 digital PSoC blocks can be
muxed into this line using the ACLK0[2:0] bits in the Analog Clock Select Register (CLK_CR1).
ACLK1
A system-clocking signal that is driven by the clock output of a digital PSoC block and can be selected
by the user to drive the clocking signal to an analog column. Any of the 8 digital PSoC blocks can be
muxed into this line using the ACLK1[2:0] bits in the Analog Clock Select Register (CLK_CR1).
A system-clocking signal that can drive all analog PSoC blocks in Analog Column 0. This signal is
derived from the muxed input of the 24V1, 24V2, ACLK0, and ACLK1 system clock signals. The output
Acolumn0
of this mux is then passed through a 1:4 divider to reduce the frequency by a factor of 4. The
Acolumn0[1:0] bits in the CLK_CR0 Register determine the selected Column Clock.
A system-clocking signal that can drive all analog PSoC blocks in Analog Column 1. This signal is
derived from the muxed input of the 24V1, 24V2, ACLK0, and ACLK1 system clock signals. The output
Acolumn1
of this mux is then passed through a 1:4 divider to reduce the frequency by a factor of 4.The
Acolumn1[1:0] bits in the CLK_CR0 Register determine the selected Column Clock.
A system-clocking signal that can drive all analog PSoC blocks in Analog Column 2. This signal is
derived from the muxed input of the 24V1, 24V2, ACLK0, and ACLK1 system clock signals. The output
Acolumn2
of this mux is then passed through a 1:4 divider to reduce the frequency by a factor of 4. The
Acolumn2[1:0] bits in the CLK_CR0 Register determine the selected Column Clock.
A system-clocking signal that can drive all analog PSoC blocks in Analog Column 3. This signal is
derived from the muxed input of the 24V1, 24V2, ACLK0, and ACLK1 system clock signals. The output
Acolumn3
of this mux is then passed through a 1:4 divider to reduce the frequency by a factor of 4. The
Acolumn3[1:0] bits in the CLK_CR0 Register determine the selected Column Clock.
10.3
Analog
Column 0
Analog
Column 1
Analog
Column 2
Analog
Column 3
ACA00
ACA01
ACA02
ACA03
ASA10
ASB11
ASA12
ASB13
ASB20
ASA21
ASB22
ASA23
72
10.4
thresholds in comparators.
Vcc
Vbandgap
RefHI to
Analog
Blocks
Port 2.6
Distributed
Gound
2*Vbandgap
Port 2.4
Vcc/2
x12
AGND
Ground Buffer in
Each Analog
Block
RefLO to
Analog
Blocks
Vss
HBE
most from the low bias level. At high bias, the analog
block op-amps have faster slew rate but slightly less volt-
73
Table 62:
RefHI
Source
Voltage
RefLO
Source
Voltage
Notes
000
Vcc/2
2.5 V
1.65 V
Vcc+Vbg
3.8 V
2.95 V
Vcc-Vbg
1.2 V
0.35 V
5.0 V System
3.3 V System
001
P2[4]
2.2 V1
P2[4]+P2[6]
3.2 V1
P2[4]-P2[6]
1.2 V1
User Adjustable
010
Vcc/2
2.5 V
1.65 V
Vcc
5.0 V
3.3 V
Vss
0.0 V
0.0 V
5.0 V System
3.3 V System
011
2*Vbg
2.6 V
2*Vbg+Vbg
3.9 V
2*Vbg-Vbg
1.3 V
100
2*Vbg
2.6 V
2*Vbg+P2[6]
3.6 V
101
P2[4]
2.2 V1
P2[4]+Vbg
3.5 V1
110
Reserved
111
Reserved
1.
2*Vbg-P2[6]
1.6 V
P2[4]-Vbg
0.9 V1
Example shown for AGND P2[4] = 2.2 V and Ref P2[6] = 1.0 V
power is controlled through the bias circuits in the Continuous Time blocks and separate bias circuits in the
Switched Capacitor blocks. Continuous Time blocks
(ACAxx) can be operated to make low power comparators independent of Switched Capacitor (ASAxx and
ASBxx) blocks, without their power consumption.
The reference array supplies voltage to all blocks and
current to the Switched Capacitor blocks. At higher block
clock rates, there is increased reference current
demand; the reference power should be set equal to the
highest power level of the analog blocks used.
74
Table 63:
Bit #
POR
Read/Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
BGT
HBE
REF[2]
REF[1]
REF[0]
PWR[2]
PWR[1]
PWR[0]
Bit 7: BGT Bandgap Test used for internal reference voltage testing (customer should not alter; must be written as 0)
Bit 6: HBE Bias level control for op-amps
0 = Low bias mode for analog array
1 = High bias mode for analog array
Bit [5:3]: REF [2:0] Analog Array Reference Control
AGND
High/Low
0 0 0 = Vcc/2
Bandgap
0 0 1 = P2[4]
P2[6]
0 1 0 = Vcc/2
Vcc/2
0 1 1 = 2 Bandgap Bandgap
1 0 0 = 2 Bandgap P2[6]
1 0 1 = P2[4]
Bandgap
1 1 0 = Reserved
1 1 1 = Reserved
Bit [2:0]: PWR [2:0] Analog Array Power Control
0 0 0 = All Analog Off
0 0 1 = SC Off, REFPWR Low
0 1 0 = SC Off, REFPWR Med
0 1 1 = SC Off, REFPWR High
1 0 0 = All Analog Off
1 0 1 = SC On, REFPWR Low
1 1 0 = SC On, REFPWR Med
1 1 1 = SC On, REFPWR High
Analog Reference Control Register (ARF_CR, Address = Bank 0, 63h)
75
10.5
2.
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
Acolumn3
[1]
Acolumn3
[0]
Acolumn2
[1]
Acolumn2
[0]
Acolumn1
[1]
Acolumn1
[0]
Acolumn0
[1]
Acolumn0
[0]
76
10.6
Table 65:
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
Reserved
SHDIS
ACLK1 [2]
ACLK1 [1]
ACLK1 [0]
ACLK0 [2]
ACLK0 [1]
ACLK0 [0]
Bit 7: Reserved
Bit 6: SHDIS During normal operation of an SC block for the amplifier of a column enabled to drive the output bus,
the connection is only made for the last half of PHI2 (during PHI1 and for the first half of PHI2, the output bus floats
at the last voltage to which it was driven). This forms a sample and hold operation using the output bus and its associated capacitance. This design prevents the output bus from being perturbed by the intermediate states of the SC
operation (often a reset state for PHI1 and settling to the valid state during PHI2)
Following are the exceptions: 1) If the ClockPhase bit in CR0 (for the SC block in question) is set to 1, then the output is enabled for the whole of PHI2. 2) If the SHDIS signal is set in bit 6 of the Analog Clock Select Register, then
sample and hold operation is disabled for all columns and all enabled outputs of SC blocks are connected to their
respective output busses for the entire period of their respective PHI2s
0 = Sample and hold function enabled
1 = Sample and hold function disabled
Bit [5:3]: ACLK1 [2:0]
0 0 0 = Digital Basic Type A Block 00
0 0 1 = Digital Basic Type A Block 01
0 1 0 = Digital Basic Type A Block 02
0 1 1 = Digital Basic Type A Block 03
1 0 0 = Digital Communications Type A Block 04
1 0 1 = Digital Communications Type A Block 05
1 1 0 = Digital Communications Type A Block 06
1 1 1 = Digital Communications Type A Block 07
Bit [2:0]: ACLK0 [2:0] Same configurations as ACLK1 [2:0]
0 0 0 = Digital Basic Type A Block 00
0 0 1 = Digital Basic Type A Block 01
0 1 0 = Digital Basic Type A Block 02
0 1 1 = Digital Basic Type A Block 03
1 0 0 = Digital Communications Type A Block 04
1 0 1 = Digital Communications Type A Block 05
1 1 0 = Digital Communications Type A Block 06
1 1 1 = Digital Communications Type A Block 07
Analog Clock Select Register (CLK_CR1, Address = Bank 1, 61h)
There are a total of twelve analog PSoC blocks imple-
77
divided into distinct bit fields. Some bit fields set the
separately below.
tively.
following
diagrams
show
how
each
10.6.1.1
The
multiplexer connects its ACA block connect to its neighPSoC block, bus or reference voltage to the block where
it is used. Each arrow is labeled with the value to which
the bit-field must be set to select that input source.
NMux
N (Inverting) Input Multiplexer Connections
REFLO
(2)
(4)
(3)
ACA
00
(3)
(1)
AGND
REFHI
(3)
(0)
(6)
(5)
(3)
(0)
(4)
(3)
REFLO
(2)
(2)
ACA
01
ACA
02
(1)
(6)
(5)
(4)
(3)
(1)
AGND
REFHI
(3)
(0)
(6)
(3)
(0)
(4)
(3)
ACA
03
(3)
(1)
(6)
(5)
REFLO
(2)
(5)
ASA
10
ASB
11
ASA
12
ASB
13
ASB
20
ASA
21
ASB
22
ASA
23
AGND
78
10.6.1.2
PMux
Port
Inputs
Port
Inputs
ABUS 0
(1)
REFLO
(0)
ACA
00
(3)
(5)
AGND
ABUS 1
(1)
(6)
(2)
(2)
Port
Inputs
ACA
01
(0)
(3)
(5)
(4)
(4)
ABUS 2
(1)
(6)
(0)
ACA
02
(3)
ABUS 3
(1)
(6)
(2)
(2)
(5)
(0)
ACA
03
REFLO
(3)
(5)
(4)
AGND
(6)
AGND
(4)
ASA
10
ASB
11
ASA
12
ASB
13
ASB
20
ASA
21
ASB
22
ASA
23
RBotMux
VSS
(2)
(2)
ACA
00
(3)
(1)
AGND
VSS
(0)
(0)
(2)
ACA
01
AGND
(3)
ACA
02
(0)
(3)
AGND
(0)
ACA
03
(1)
(3)
(1)
(1)
(3)
VSS
(3)
AGND
(3)
ASA
10
ASB
11
ASA
12
ASB
13
ASB
20
ASA
21
ASB
22
ASA
23
79
10.7
10.7.1 Introduction
The Analog Continuous Time PSoC blocks are built
around an operational amplifier. There are several analog muxes that are controlled by register-bit settings in
the control registers that determine the signal topology
inside the block. There is also a precision resistor matrix
that is located in the feedback path for the op-amp, and
is controlled by register-bit setting. There is also an analog comparator connected to the output OUT, which converts analog comparisons into digital signals.
There are five discrete outputs from this block. These
outputs are:
1.
2.
3.
80
TestMux
REFHI
REFLO
AGND
Gain
ABUS
AnalogBus
PMuxOut
CompCap
OUT
Power
CBUS
CompBus
Block Inputs
Port Input
CLatch
ABUS
CPhase
GOUT
AGND
VCC
PMux
NMux
RTopMux
Block Inputs
AGND
LOUT
REFHI, LO
Gain
RESISTOR
MATRIX
FB
RTapMux
RBotMux
GIN
LIN
SCBLK
AGND
VSS
in the table.
81
the block). Note that setting Gain alone does not guaran-
adjacent CT block.
Table 66:
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
RTapMux[3]
RTapMux[2]
RTapMux[1]
RTapMux[0]
Gain
RTopMux
RBotMux[1]
RBotMux[0]
00=
01=
10=
11=
ACA00
ACA01
AGND
Vss
ASA10
ACA01
ACA00
AGND
Vss
ASB11
ACA02
ACA03
AGND
Vss
ASA12
ACA03
ACA02
AGND
Vss
ASB13
Analog Continuous Time Block 00 Control 0 Register (ACA00CR0, Address = Bank 0/1, 71h)
Analog Continuous Time Block 01 Control 0 Register (ACA01CR0, Address = Bank 0/1, 75h)
Analog Continuous Time Block 02 Control 0 Register (ACA02CR0, Address = Bank 0/1, 79h)
Analog Continuous Time Block 03 Control 0 Register (ACA03CR0, Address = Bank 0/1, 7Dh)
82
10.7.2.2
only 7 inputs.
The 8th code (111) will leave the input floating. This is not
Table 67:
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
AnalogBus
CompBus
NMux2
NMux1
NMux0
PMux2
PMux1
PMux0
Bit Name
ACA00
ACA01
AGND
REFLO
REFHI
ACA00
ASA10
ASB11
Reserved
ACA01
ACA00
AGND
REFLO
REFHI
ACA01
ASB11
ASA10
Reserved
ACA02
ACA03
AGND
REFLO
REFHI
ACA02
ASA12
ASB13
Reserved
ACA03
ACA02
AGND
REFLO
REFHI
ACA03
ASB13
ASA12
Reserved
ACA00
REFLO
Port Inputs
ACA01
AGND
ASA10
ASB11
ABUS0
Reserved
ACA01
ACA02
Port Inputs
ACA00
AGND
ASB11
ASA10
ABUS1
Reserved
ACA02
ACA01
Port Inputs
ACA03
AGND
ASA12
ASB13
ABUS2
Reserved
ACA03
REFLO
Port Inputs
ACA02
AGND
ASB13
ASA12
ABUS3
Reserved
Analog Continuous Time Block 00 Control 1 Register (ACA00CR1, Address = Bank 0/1, 72h)
Analog Continuous Time Block 01 Control 1 Register (ACA01CR1, Address = Bank 0/1, 76h)
Analog Continuous Time Block 02 Control 1 Register (ACA02CR1, Address = Bank 0/1, 7Ah)
Analog Continuous Time Block 03 Control 1 Register (ACA03CR1, Address = Bank 0/1, 7Eh)
83
10.7.2.3
parator.
always transparent.
characterization purposes.
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
CPhase
CLatch
CompCap
Power[1]
Power[0]
Bit 7: CPhase
0 = Comparator Control latch transparent on PHI1
1 = Comparator Control latch transparent on PHI2
Bit 6: CLatch
0 = Comparator Control latch is always transparent
1 = Comparator Control latch is active
Bit 5: CompCap
0 = Comparator Mode
1 = Op-amp Mode
Bit [4:2]: TestMux [2:0] Select block bypass mode for testing and characterization purposes
ACA02 ACA03
ACA00 ACA01
1 0 0 = Positive Input to ABUS0 ABUS1
ABUS2 ABUS3
1 0 1 = AGND to
ABUS0 ABUS1
ABUS2 ABUS3
1 1 0 = REFLO to
ABUS0 ABUS1
ABUS2 ABUS3
1 1 1 = REFHI to
ABUS0 ABUS1
ABUS2 ABUS3
0 x x = All Paths Off
Bit [1:0]: Power [1:0] Encoding for selecting 1 of 4 power levels
0 0 = Off
0 1 = Low (60 A)
1 0 = Med (150 A)
1 1 = High (500 A)
Analog Continuous Time Block 00 Control 2 Register (ACA00CR2, Address = Bank 0/1, 73h)
Analog Continuous Time Block 01 Control 2 Register (ACA01CR2, Address = Bank 0/1, 77h)
Analog Continuous Time Block 02 Control 2 Register (ACA02CR2, Address = Bank 0/1, 7Bh)
Analog Continuous Time Block 03 Control 2 Register (ACA03CR2, Address = Bank 0/1, 7Fh)
84
10.8
10.8.1
Introduction
2.
3.
switched
capacitors,
allowing
user
85
1*AutoZero
BQTAP
CCap
0..31 C
FCap
16,32 C
C Inputs
(2+!AutoZero)
* FSW1
1* FSW0
ACMux
1
A Inputs
REFHI
REFLO
AGND
2+AutoZero
1 *
!AutoZero
ARefMux
ASign
B Inputs
ACap
0..31 C
OUT
AnalogBus*2B
ABUS
BCap
0..31 C
Power
CompBus
CBUS
BMuxSCA
86
AMux
A Input Multiplexer
Connections
ACA
00
ACA
01
ACA
02
ACA
03
(1)
ABUS0
VTemp
(0)
(4
-
P2.2
(3)
(0)
(3)
(1)
RefHi
(2
)
(5
)
ASA
23
(2)
(3)
(2
)
(0)
ASB
22
(3)
(3)
(1)
(3)
(0)
(5
)
(0)
(3)
(3)
(2
)
ASA
21
(1)
ASB
13
(2)
)
-7
(4
(2)
RefHi
)
(4
(1)
ASB
20
(1)
)
(4
)
(4
)
(4
(1)
P2.1
)
-7
(4
RefHi
ASA
12
(2
)
ASB
11
(2)
7)
(0)
(0)
(4
-7
)
(0)
)
(5
)
(5
(1)
ASA
10
ABUS2
ABUS3
CMux
C Input Multiplexer
Connections
ASA
21
ACA
03
ASB
13
(0-3)
ASA
12
)
-7
(4
)
-7
(4
ASB
20
(0-3)
ASB
11
(0-3)
ASA
10
ACA
02
(4
-7
)
ACA
01
(4
-7
)
(0-3)
ACA
00
ASB
22
ASA
23
87
10.8.2.3
ACMux
10.8.2.4
BMuxSCA/SCB
ASB
11
(1)
ASA
12
(1)
ASA
21
(1
)
(1)
ASB
22
ASA
23
(2)
P2.0
(3)
(2)
ASB
13
(3)
ASB
20
(0)
(0)
(1
)
(0)
(3)
(3)
(2)
(0)
(0)
(0)
(1)
ASA
10
ACA
03
)
(1
)
(1
(2)
P2.3
ACA
02
(0)
ACA
01
(0)
ACA
00
ABUS3
TRefGND
path.
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
FCap
ClockPhase
ASign
ACap[4]
ACap[3]
ACap[2]
ACap[1]
ACap[0]
88
Table 69:
Analog Switch Cap Type A Block 10 Control 0 Register (ASA10CR0, Address = Bank 0/1, 80h)
Analog Switch Cap Type A Block 12 Control 0 Register (ASA12CR0, Address = Bank 0/1, 88h)
Analog Switch Cap Type A Block 21 Control 0 Register (ASA21CR0, Address = Bank 0/1, 94h)
Analog Switch Cap Type A Block 23 Control 0 Register (ASA23CR0, Address = Bank 0/1, 9Ch)
89
10.8.3.2
biquad filters.
when the bit is high, it also overrides the two low order
path.
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
ACMux[2]
ACMux[1]
ACMux[0]
BCap[4]
BCap[3]
BCap[2]
BCap[1]
BCap[0]
Bit [7:5] ACMux [2:0] Encoding for selecting A and C inputs. (Note that available mux inputs vary by individual
PSoC block.)
ASA10
A Inputs C Inputs
0 0 0 = ACA00 ACA00
0 0 1 = ASB11 ACA00
0 1 0 = REFHI ACA00
0 1 1 = ASB20 ACA00
1 0 0 = ACA01Reserved
1 0 1 = Reserved Reserved
1 1 0 = Reserved Reserved
1 1 1 = Reserved Reserved
ASA21
A Inputs C Inputs
ASB11
ASB11
ASB20
ASB11
REFHI
ASB11
Vtemp
ASB11
ASA10
Reserved
Reserved Reserved
Reserved Reserved
Reserved Reserved
ASA12
A Inputs C Inputs
ACA02 ACA02
ASB13 ACA02
REFHI
ACA02
ASB22 ACA02
ACA03 Reserved
Reserved Reserved
Reserved Reserved
Reserved Reserved
ASA23
A Inputs C Inputs
ASB13
ASB13
ASB22
ASB13
REFHI
ASB13
ABUS3 ASB13
ASA12
Reserved
Reserved Reserved
Reserved Reserved
Reserved Reserved
Bit [4:0]: BCap [4:0] Binary encoding for 32 possible capacitor sizes for B Capacitor:
0 0 0 0 0 = 0 Capacitor units in array
0 0 0 0 1 = 1 Capacitor units in array
0 0 0 1 0 = 2 Capacitor units in array
0 0 0 1 1 = 3 Capacitor units in array
0 0 1 0 0 = 4 Capacitor units in array
0 0 1 0 1 = 5 Capacitor units in array
0 0 1 1 0 = 6 Capacitor units in array
0 0 1 1 1 = 7 Capacitor units in array
0 1 0 0 0 = 8 Capacitor units in array
0 1 0 0 1 = 9 Capacitor units in array
0 1 0 1 0 = 10 Capacitor units in array
0 1 0 1 1 = 11 Capacitor units in array
0 1 1 0 0 = 12 Capacitor units in array
0 1 1 0 1 = 13 Capacitor units in array
0 1 1 1 0 = 14 Capacitor units in array
0 1 1 1 1 = 15 Capacitor units in array
Analog Switch Cap Type A Block 10 Control 1 Register (ASA10CR1, Address = Bank 0/1, 81h)
Analog Switch Cap Type A Block 12 Control 1 Register (ASA12CR1, Address = Bank 0/1, 89h)
Analog Switch Cap Type A Block 21 Control 1 Register (ASA21CR1, Address = Bank 0/1, 95h)
Analog Switch Cap Type A Block 23 Control 1 Register (ASA23CR1, Address = Bank 0/1, 9Dh)
90
10.8.3.3
91
Table 71:
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
AnalogBus
CompBus
AutoZero
CCap[4]
CCap[3]
CCap[2]
CCap[1]
CCap[0]
Analog Switch Cap Type A Block 10 Control 2 Register (ASA10CR2, Address = Bank 0/1, 82h)
Analog Switch Cap Type A Block 12 Control 2 Register (ASA12CR2, Address = Bank 0/1, 8Ah)
Analog Switch Cap Type A Block 21 Control 2 Register (ASA21CR2, Address = Bank 0/1, 96h)
Analog Switch Cap Type A Block 23 Control 2 Register (ASA23CR2, Address = Bank 0/1, 9Eh)
92
10.8.3.4
FSW1 is used to control a switch in the integrator capacitor path. It connects the output of the op-amp to the integrating cap. The state of the switch is affected by the
state of the AutoZero bit in Control 2 Register
(ASA10CR2, ASA12CR2, ASA21CR2, ASA23CR2). If
the FSW1 bit is set to 0, the switch is always disabled. If
the FSW1 bit is set to 1, the AutoZero bit determines the
state of the switch. If the AutoZero bit is 0, the switch is
FSW0 is used to control a switch in the integrator capacitor path. It connects the output of the op-amp to analog
ground.
Table 72:
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
FSW[1]
FSW[0]
BMuxSCA[1]
BMuxSCA[0]
Power[1]
Power[0]
Bit Name
ARefMux[1] ARefMux[0]
93
10.9
10.9.1
Introduction
2.
3.
94
1*AutoZero
FCap
16,32 C
CCap
0..31 C
(2+!AutoZero)
* FSW1
BQTAP
1* FSW0
A Mux
ACap
0..31 C
A Inputs
REFHI
REFLO
AGND
2+AutoZero
1 *
!AutoZero
ARefMux
ASign
OUT
AnalogBus*2B
2 +!BSW
B Inputs
ABUS
BCap
0..31 C
2+!BSW
Power
CompBus
CBUS
1*BSW
BMuxSCB
1*BSW
Registers
10.9.2.1
path.
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
FCap
ClockPhase
ASign
ACap[4]
ACap[3]
ACap[2]
ACap[1]
ACap[0]
Bit Name
95
Table 73:
Analog Switch Cap Type B Block 11 Control 0 Register (ASB11CR0, Address = Bank 0/1, 84h)
Analog Switch Cap Type B Block 13 Control 0 Register (ASB13CR0, Address = Bank 0/1, 8Ch)
Analog Switch Cap Type B Block 20 Control 0 Register (ASB20CR0, Address = Bank 0/1, 90h)
Analog Switch Cap Type B Block 22 Control 0 Register (ASB22CR0, Address = Bank 0/1, 98h)
96
10.9.2.2
branch.
path.
Table 74:
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
AMux[2]
AMux[1]
AMux[0]
BCap[4]
BCap[3]
BCap[2]
BCap[1]
BCap[0]
Bit [7:5]: AMux [2:0] Input muxing select for A capacitor branch. (Note that available mux inputs vary by individual
PSoC block.)
ASB11
0 0 0 = ACA01
0 0 1 = ASA12
0 1 0 = ASA10
0 1 1 = ASA21
1 0 0 = REFHI
1 0 1 = ACA00
1 1 0 = Reserved
1 1 1 = Reserved
ASB13
ACA03
P2.2
ASA12
ASA23
REFHI
ACA02
Reserved
Reserved
ASB20
ASA10
P2.1
ASA21
ABUS0
REFHI
ASB11
Reserved
Reserved
ASB22
ASA12
ASA21
ASA23
ABUS2
REFHI
ASB13
Reserved
Reserved
Bit [4:0]: BCap [4:0] Binary encoding for 32 possible capacitor sizes for B Capacitor:
0 0 0 0 0 = 0 Capacitor units in array
0 0 0 0 1 = 1 Capacitor units in array
0 0 0 1 0 = 2 Capacitor units in array
0 0 0 1 1 = 3 Capacitor units in array
0 0 1 0 0 = 4 Capacitor units in array
0 0 1 0 1 = 5 Capacitor units in array
0 0 1 1 0 = 6 Capacitor units in array
0 0 1 1 1 = 7 Capacitor units in array
0 1 0 0 0 = 8 Capacitor units in array
0 1 0 0 1 = 9 Capacitor units in array
0 1 0 1 0 = 10 Capacitor units in array
0 1 0 1 1 = 11 Capacitor units in array
0 1 1 0 0 = 12 Capacitor units in array
0 1 1 0 1 = 13 Capacitor units in array
0 1 1 1 0 = 14 Capacitor units in array
0 1 1 1 1 = 15 Capacitor units in array
Analog Switch Cap Type B Block 11 Control 1 Register (ASB11CR1, Address = Bank 0/1, 85h)
Analog Switch Cap Type B Block 13 Control 1 Register (ASB13CR1, Address = Bank 0/1, 8Dh)
Analog Switch Cap Type B Block 20 Control 1 Register (ASB20CR1, Address = Bank 0/1, 91h)
Analog Switch Cap Type B Block 22 Control 1 Register (ASB22CR1, Address = Bank 0/1, 99h)
97
10.9.2.3
98
Table 75:
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
AnalogBus
CompBus
AutoZero
CCap[4]
CCap[3]
CCap[2]
CCap[1]
CCap[0]
Analog Switch Cap Type B Block 11 Control 2 Register (ASB11CR2, Address = Bank 0/1, 86h)
Analog Switch Cap Type B Block 13 Control 2 Register (ASB13CR2, Address = Bank 0/1, 8Eh)
Analog Switch Cap Type B Block 20 Control 2 Register (ASB20CR2, Address = Bank 0/1, 92h)
Analog Switch Cap Type B Block 22 Control 2 Register (ASB22CR2, Address = Bank 0/1, 9Ah)
99
10.9.2.4
BSW is used to control switching in the B branch. If disabled, the B capacitor branch is a continuous time
branch like the C branch of the SC A Block. If enabled,
then on internal PHI1, both ends of the cap are switched
to analog ground. On internal PHI2, one end is switched
to the B input and the other end is switched to the summing node.
BMuxSCB controls muxing to the input of the B capacitor
branch. The B branch can be switched or unswitched.
6
0
5
0
4
0
3
0
2
0
1
0
0
0
RW
RW
RW
RW
RW
RW
RW
RW
FSW[1]
FSW[0]
BSW
BMuxSCB
Power[1]
Power[0]
ARefMux[1] ARefMux[0]
100
parator output that can drive out on this bus, but the
itself.
bus can drive into the digital blocks, and is also available
Bit #
POR
Read/
Write
RW
RW
RW
RW
Bit Name
COMP 3
COMP 2
COMP 1
COMP 0
AINT 3
AINT 2
AINT 1
AINT 0
Bit 7: COMP 3 COMP 3 bit [0] indicates the state of the analog comparator bus for the Analog Column x
Bit 6: COMP 2 COMP 2 bit [0] indicates the state of the analog comparator bus for the Analog Column x
Bit 5: COMP 1 COMP 1 bit [0] indicates the state of the analog comparator bus for the Analog Column x
Bit 4: COMP 0 COMP 0 bit [0] indicates the state of the analog comparator bus for the Analog Column x
Bit 3: AINT 3 AINT 3 bit [0] or [1] (as defined below) selects the Analog Interrupt Source for the Analog Column x
Bit 2: AINT 2 AINT 2 bit [0] or [1] (as defined below) selects the Analog Interrupt Source for the Analog Column x
Bit 1: AINT 1 AINT 1 bit [0] or [1] (as defined below) selects the Analog Interrupt Source for the Analog Column x
Bit 0: AINT 0 AINT 0 bit [0] or [1] (as defined below) selects the Analog Interrupt Source for the Analog Column x
0 = Comparator bus
1 = PHI2 (Falling edge of PHI2 causes an interrupt)
Analog Comparator Control Register (CMP_CR, Address = Bank 0, 64h)
101
Table 78:
below, and set the sign bit of the DAC as the first guess
in the algorithm. A sequence of OR instructions (Read,
CPU Clock
3.
1.5
0.75
0.18, 0.093
0.37
0.18, 0.093
0.18
0.093
You can still run the CPU clock slower than the column
CR0 register.
power of two multiple of any CPU frequency and therefore any CPU frequency can be selected. If the CPU fre-
such as DAC writes and the stalled IOR of the SAR hardTable 79:
Bit #
POR
Read/
Write
--
RW
RW
RW
RW
Bit Name
Reserved
SARCOUNT
[2]
SARCOUNT
[1]
SARCOUNT
[0]
SARSIGN
SARCOL
[1]
SARCOL
[0]
SYNCEN
Bit 7: Reserved
Bit [6:4]: SARCOUNT [2:0] Initial SAR count. Load this field with the number of bits to process. In a typical 6-bit
SAR, the value would be 6
Bit 3: SARSIGN Adjust the SAR comparator based on the type of block addressed. In a DAC configuration with
more than one PSoC block (more than 6-bits), this bit would be 0 when processing the most significant block and 1
when processing the least significant block. This is because the least significant block of a DAC is an inverting input
to the most significant block
Bit [2:1]: SARCOL [1:0] Column select for SAR comparator input. The DAC portion of the SAR can reside in any of
the appropriate positions in the analog PSOC block array. However, once the comparator block is positioned (and it
is possible to have the DAC and comparator in the same block), this should be the column selected
Bit 0: SYNCEN Set to 1, will stall the CPU until the rising edge of PHI1, if a write to a register within an analog Switch
Cap block takes place
Analog Synchronization Control Register (ASY_CR, Address = Bank 0, 65h)
102
MUX
ACM1
AC0
BUF
AC1
MUX
ACI2
ACM2
ACol1Mux
P0[6]
MUX
ACI1
P0[4]
MUX
ACM0
P0[2]
P0[0]
P0[7]
P0[5]
P0[3]
P0[1]
ACI0
ACI3
ACM3
ACol2Mux
BUF
AC2
BUF
AC3
ACA00
ACA01
ACA02
ACA03
P2[3]
ASA10
ASB11
ASA12
ASB13
P2[1]
ASB20
ASA21
ASB22
ASA23
BUF
P2[2]
P2[0]
103
Table 80:
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
ACI3 [1]
ACI3 [0]
ACI2 [1]
ACI2 [0]
ACI1 [1]
ACI1 [0]
ACI0 [1]
ACI0 [0]
104
10.12.3
ter (ABF_CR).
P0[3]
P0[5]
P0[4]
P0[2]
ACA 00
ACA 01
ACA 02
ACA 03
ASA 10
ASB 11
ASA 12
ASB 13
ASB 20
ASA 21
ASB 22
ASA 23
105
Bit #
POR
Read/
Write
--
Bit Name
ACol1Mux
ACol2Mux
ABUF1EN
ABUF2EN
ABUF0EN
ABUF3EN
Reserved
PWR
Bit 7: ACol1Mux
0 = Set column 1 input to column 1 input mux output
1 = Set column 1 input to column 0 input mux output
Bit 6: ACol2Mux
0 = Set column 2 input to column 2 input mux output
1 = Set column 2 input to column 3 input mux output
Bit 5: ABUF1EN Enables the analog output buffer for Analog Column 1 (Pin P0[5])
0 = Disable analog output buffer
1 = Enable analog output buffer
Bit 4: ABUF2EN Enables the analog output buffer for Analog Column 2 (Pin P0[4])
0 = Disable analog output buffer
1 = Enable analog output buffer
Bit 3: ABUF0EN Enables the analog output buffer for Analog Column 0 (Pin P0[3])
0 = Disable analog output buffer
1 = Enable analog output buffer
Bit 2: ABUF3EN Enables the analog output buffer for Analog Column 3 (Pin P0[2])
0 = Disable analog output buffer
1 = Enable analog output buffer
Bit [1]: Reserved Must be left as 0
Bit [0]: PWR Determines power level of all output buffers
0 = Low output power
1 = High output power
Analog Output Buffer Control Register (ABF_CR, Address = Bank 1, 62h)
106
Table 82:
Bit #
POR
Read/
Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
Reserved
Reserved
Reserved
Reserved
AMOD2[1]
AMOD2[0]
AMOD0[1]
AMOD0[0]
Bit 7: Reserved
Bit 6: Reserved
Bit 5: Reserved
Bit 4: Reserved
Bit [3:2]: AMOD2[1], AMOD2[0] Selects the modulation signal for Analog Column 2
0 0 = No Modulation
0 1 = Global Output [0]
1 0 = Global Output [4]
1 1 = Digital Basic Type A Block 03
Bit [1:0]: AMOD0[1], AMOD0[0] Selects the modulation signal for Analog Column 0
0 0 = No Modulation
0 1 = Global Output [0]
1 0 = Global Output [4]
1 1 = Digital Basic Type A Block 03
Analog Modulator Control Register (AMD_CR, Address = Bank 1, 63h)
Amplitude Modulators
Amplitude Demodulators
Sine-Wave Generators
Sine-Wave Detectors
Sideband Detection
Sideband Stripping
DTMF Generator
FSK Modulator
Analog Comparators
Zero-Crossing Detectors
Low-Pass Filter
Band-Pass Filter
Notch Filter
107
108
11.0
11.1
Multiplier/Accumulator
rate.
a.
mov reg[MAC_X],a
nop //add nop or any other instruction
mov reg[MAC_X],a
mov reg[MAC_X],a
nop //add nop or any other instruction
mov a,[ACC_DR2] // or ACC_DR3
109
MUL_DH
MUL_DL
MUL_X or MAC_X
A CC_DR3
MULTIPLIER
Z out, 16 BIT
16 BIT
A CC_DR2
32-BIT
ACCUMULATOR
MUL_Y or MAC_Y
To
Internal
System
Bus
A CC_DR1
A CC_DR0
32-BIT ACC
MAC_CL1
MAC_CL0
Bit #
POR
Read/Write
Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
Bit [7:0]: Data [7:0] 8-bit data is the input value for X multiplier
Multiply Input X Register (MUL_X, Address = Bank 0, E8h)
Table 84:
Bit #
POR
Read/Write
Bit Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
Bit [7:0]: Data [7:0] 8-bit data is the input value for Y multiplier
Multiply Input Y Register (MUL_Y, Address = Bank 0, E9h)
110
Table 85:
Bit #
POR
Read/Write
Bit Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
Bit [7:0]: Data [7:0] 8-bit data value is the high order result of the multiply function
Multiply Result High Register (MUL_DH, Address = Bank 0, EAh)
Table 86:
Bit #
POR
Read/Write
Bit Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
Bit [7:0]: Data [7:0] 8-bit data value is the low order result of the multiply function
Multiply Result Low Register (MUL_DL, Address = Bank 0, EBh)
Table 87:
Bit #
POR
Read/Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
Bit #
POR
Read/Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
111
Table 89:
Bit #
POR
Read/Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
Bit #
POR
Read/Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
11.2
Decimator
a data decimator.
Coeff
n
0
0
n-1
2n-1
112
Bit #
POR
Read/Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
IGEN [3]
IGEN [2]
IGEN [1]
IGEN [0]
ICCKSEL
DCol [1]
DCol [0]
DCLKSEL
Bit [7:4]: IGEN [3:0] Individual enables for each analog column that gates the Analog Comparator based on the
ICCKSEL input (Bit 3)
Bit 3: ICCKSEL Clock select for Incremental gate function
0 = Digital Basic Type A Block 02
1 = Digital Communications Type A Block 06
Bit [2:1]: DCol [1:0] Selects Analog Column Comparator source
0 0 = Analog Column Comparator 0
0 1 = Analog Column Comparator 1
1 0 = Analog Column Comparator 2
1 1 = Analog Column Comparator 3
Bit 0: DCLKSEL Clock select for Decimator latch
0 = Digital Basic Type A Block 02
1 = Digital Communications Type A Block 06
Decimator Incremental Register (DEC_CR, Address = Bank 0, E6h)
Table 92:
Bit #
POR
Read/Write
RW
RW
RW
RW
RW
RW
RW
RW
Bit Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
Bit #
POR
Read/Write
Bit Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
113
11.3
Reset
11.3.1 Overview
tively. The firmware can interrogate these bits to determine the cause of a reset.
Table 94:
Bit #
POR
Read/
Write
--
R/C1
R/C1
RW
--
--
RW
Bit Name
IES
Reserved
WDRS
PORS
Sleep
Reserved
Reserved
Stop
Bit 7: IES Global interrupt enable status from CPU Flag register
0 = Global interrupts disabled
1 = Global interrupts enabled
Bit 6: Reserved
Bit 5: WDRS
WDRS is set by the CPU to indicate that a Watchdog Reset event has occurred. The user can read this bit to determine the type of reset that has occurred. The user can clear but not set this bit
0 = No WDR
1 = A WDR event has occurred
Bit 4: PORS
PORS is set by the CPU to indicate that a Power On Reset event has occurred. The user can read this bit to determine the type of reset that has occurred. The user can clear but not set this bit
0 = No POR
1 = A POR event has occurred. (Note that WDR events will not occur until this bit is cleared)
Bit 3: Sleep Set by the user to enable CPU sleep state. CPU will remain in sleep mode until any interrupt is pending
0 = Normal operation
1 = Sleep
Bit 2: Reserved
Bit 1: Reserved
Bit 0: Stop Set by the user to halt the CPU. The CPU will remain halted until a reset (WDR or POR) has taken place
0 = Normal CPU operation
1 = CPU is halted (not recommended)
1.
C = Clear
114
11.3.2
is reasserted.
power on transient. Bit 4 of the Status and Control Register (CPU_SCR) is set to record this event (the register
contents are set to 00010000 by the POR). After a POR,
the microprocessor is suspended for 64 ms. This pro-
vides time for the Vcc supply to stabilize after the POR
11.3.3
Execution Reset
TrVdd
3.0V (Good)
Vcc Power
3.0 - 5.5
64 ms
2502 ~
Boot
Calibration
Reset
Vector
Start CPU
3 MHz
boot.asm
User Code
The user has the option to enable the WDT. The WDT is
enabled by clearing the PORS bit. Once the PORS bit is
cleared, the Watchdog Timer (WDT) cannot be disabled.
sleep time period. The user can program the sleep time
clock. When the sleep time elapses (sleep timer overflows), an interrupt to the Sleep Timer Interrupt Vector
will be generated.
115
This timer chain is also used to time the startup for the
The user can either clear the WDT, or the WDT and the
put into sleep for this event to occur. Note that if too short
the data that is written is the hex value 38H, the Sleep
unpredictable.
Table 95:
Bit #
POR
Read/Write
Bit Name
Data [7]
Data [6]
Data [5]
Data [4]
Data [3]
Data [2]
Data [1]
Data [0]
Bit [7:0]: Data [7:0] Any write to this register will clear Watchdog Timer, a write of 38h will also clear the Sleep Timer
11.4
Sleep States
The user can also put all the analog PSoC block circuits
116
interrupt will wake the part from sleep. The Stop bit in the
Status and Control Register (CPU_SCR) must be
cleared for a part to resume out of sleep.
CPU Running
Run
Analog
Sleep
CPU Sleep
Full Sleep
mode.
The Internal Main Oscillator restarts immediately on exiting either the Full Sleep or CPU Sleep modes. Analog
functions must be re-enabled by firmware. If the External
Crystal Oscillator is used and the internal PLL is
enabled, the PLL will take many cycles to change from
its initial 2.5% accuracy to track that of the External Crystal Oscillator. If the PLL is enabled, there will be a 30s
(one full 32K cycle) delay hold-off time for the CPU to let
the VCO and PLL stabilize. If the PLL is not enabled, the
hold-off time is one half of the 32K cycle. For further
117
11.5
value. There are eight voltage trip points that are select-
mode.
Table 96:
Bit #
POR
Read/
Write
--
--
--
--
Bit Name
SMP
Reserved
Reserved
Reserved
Reserved
VM [2]
VM [1]
VM [0]
Voltages are ideal typical values. Tolerances are in Table 104 on page 129.
118
11.6
(VLT_CR) bit 7 to a 1.
Battery Voltage
VCC
SMP
SMP
Control
Logic
SMP Reset
X
RST
Reset
To Rest Of
Circuitry
119
11.7
Bit #
POR
FS1
FS1
FS1
FS1
FS1
FS1
FS1
FS1
Read/Write
Bit Name
FMRD
BGT[2]
BGT[1]
BGT[0]
BGO[3]
BGO[2]
BGO[1]
BGO[0]
Bit 7: FMRD
0 = Enable voltage divider between BG and Flash (User must not use other than this setting)
1 = Disable voltage divider between BG and Flash (Test purposes only)
Bit [6:4]: BGT [2:0] Provides Temperature Curve compensation
Bit [3:0]: BGO [3:0] Provides +/- 5% Offset Trim to center Vbg to 1.30V
1.
11.8
memory space.
120
Table 98:
Operation
Function
Accumulator
1
Reset
Calibrates
then sets
PC and SP
values to 0
F8h
F9h
FAh
FBh
FCh
FDh
FEh
FFh
F8h
F9h
FAh
FBh
FCh
FDh
FEh
FFh
00
NA
NA
NA
NA
NA
NA
NA
NA
Read Block
Move block
of 64 bytes
of FLASH
data into
SRAM
01
3Ah
SP
+3
Blk
ID
Pointer
NA
Write Block2
Program
block of
FLASH with
data from
SRAM
02
3Ah
SP
+3
Blk
ID
Pointer
Clock
Erase Block
Erase block
of FLASH
03
3Ah
SP
+3
Blk
ID
NA
Clock
Protect Block3
Set memory
protection
bits4
04
3Ah
SP
+3
NA
NA
Clock
Erase All3
Erase all
FLASH data
05
3Ah
SP
+3
NA
NA
Clock
Table Read
Read device
type code
06
3Ah
SP
+3
Tbl
ID
NA
NA
NA
NA
NA
TV
(0)
TV
(1)
TV
(2)
TV
(3)
TV
(4)
TV
(5)
TV
(6)
TV
(7)
Checksum
Calculate
FLASH
checksum
for data
range specified
07
3Ah
SP
+3
Blk
Cou
nter
NA
NA
CS
H
CSL
Calibrate5
08
3Ah
SP
+3
NA
NA
NA
1.
2.
3.
4.
5.
Notes:
NA: Not applicable
*: Indeterminate
Blk ID: Number of 64-byte block within FLASH memory space
Clock: CPU system clocking signal value
Pointer: Address of first byte of 64-byte block within SRAM memory space
TV: Table value
121
Table
ID
Function
001
01
1.
TV(0)
TV(1)
Production Silicon ID
Silicon ID
1
Silicon ID
0
Provides
trim value
for Internal Main
Oscillator
and Internal Voltage
Reference
Internal
Voltage
Reference trim
value for
3.3V
Internal
Main
Oscillator
trim value
for 3.3V
TV(2)
TV(3)
TV(4)
TV(5)
TV(6)
TV(7)
Reserved
Reserved
Internal
Voltage
ReferReserved Reserved
ence trim
value for
5.0V
Reserved
Reserved
Internal
Main
Oscillator trim
value for
5.0V
11.9
The user has the option to define the access to the Flash
memory. A flexible system allows the user to select one
of four protection modes for each 64-byte block within
the Flash, based on the particular application. The protection mechanism is implemented by a device program-
Table 101:
Programmer Requirements
command is executed, two bits within the data programmed into the Flash will select the protection mode.
Pin
Name
SDATA
SCLK
Serial Clock
Vss
Power Supply
Ground Connection
Low Resistance
Ground Connection
Vcc
Power Supply
Positive Voltage
Function
Mode Name
External
Read
External
Write
Internal
Write
00
Unprotected
Enabled
Enabled
Enabled
01
Factory
Upgrade
Disabled
Enabled
Enabled
10
Field Upgrade
Disabled
Disabled
Enabled
11
Full Protection
Disabled
Disabled
Disabled
Programmer HW Pin
Requirements
122
11.10.2.1
Verify Silicon ID
Set Vcc=0V
Set SDATA=HighZ
Set SCLK=VILP
Set Vcc=Vccp
Start the programmers SCLK driver
free running
WAIT-AND-POLL
ID-SETUP
WAIT-AND-POLL
READ-ID-WORD
Notes: See DC Specifications table in section 13 for
value of Vccp and VILP. See AC Specifications table in
section 13 for value of frequency for the SCLK driver
(Fsclk).
Erase
SET-CLK-FREQ(num_MHz_times_5)
11.10.2.3
Program
11.10.2.2
Erase All
WAIT-AND-POLL
11.10.2.5
Set Security
For address =0 to 63
WRITE-SECURITY-BYTE(address,data):
End for address loop
SET-CLK-FREQ(num_MHz_times_5)
SECURE
WAIT-AND-POLL
Note: This sequence is done at Vcc=Vccp.
123
11.10.2.6
11.10.2.7
Power Down
CHECKSUM-SETUP(max_data_block)
WAIT-AND-POLL
READ-CHECKSUM(data)
Vcc
SDATA
OUT
OUT
IN
Tssclk
IN
Thsclk
SCLK
Figure 34: Programming Wave Forms
Notes:
1
Vcc is only turned off (0V) at the very beginning and the very end of the flow - not within the programming flow.
When the programmer puts the driver on SDATA in a High Z (floating) state, the SDATA pin will float to a low
due to an internal device pull down circuit.
SCLK is set to VILP during the power up and power down; at other times the SCLK is free running. The frequency of the hardwares SCLK signal must be known by the software because the value (entered in the number of MegaHertz multiplied by the number 5) must be passed into the device with the SET-CLK-FREQ()
mnemonic.
124
Development Tools
12.0
Development Tools
Graphical
Designer
Interface
Commands
Context
Sensitive Help
Results
Device
Database
PSoC
Configuration
Sheet
Application
Database
PSoC
Designer
Manufacturing
Info File
Project
Database
Emulation
Pod
In-Circuit
Emulator
Device
Programmer
12.1
Overview
Microsoft
PSoC Designer helps the customer to select an operating configuration for the microcontroller, write application
code that uses the microcontroller, and debug the application. This system provides design database management by project, an integrated debugger with In-Circuit
125
12.2
12.2.5 Debugger
12.3
Hardware Tools
12.2.3 Assembler
The included CYASM macro assembler supports the
M8C microcontroller instruction set and generates a load
file ready for device programming or system debugging
using the ICE hardware.
126
DC and AC Characteristics
13.0
DC and AC Characteristics
Specifications are valid for -40 oC </= TA </= 85 oC and TJ </= 100 oC as specified, except where noted. Specifications
for devices running at 24 MHz are valid at -40 oC </= TA </= 70oC and TJ </= 82 oC.
5.25
4.75
Voltage
3.00
93 kHz
CPU Frequency
12 MHz
24 MHz
13.1
Table 102:
Symbol
1.
Minimum
Typical
Maximum
1
Unit
oC
Storage Temperature
-65
+100
-40
+85
oC
-0.5
+6.0
DC Input Voltage
-0.5
Vcc+0.5
Vss-0.5
Vcc+0.5
-25
+50
mA
-50
+50
mA
1002
oC
82
2000
Latch-up Current
200
mA
127
2.
The temperature rise from junction to ambient is package specific. (See Table 122 on page 148 for thermal impedances of available packages.) User must limit power consumption to comply with this requirement.
Table 103:
Symbol
TA
TJ
128
Temperature Specifications
Temperature Specifications
Ambient Temperature
Junction Temperature
Minimum
-40
Typical
24
-40
Maximum
Unit
+85
100
oC
DC and AC Characteristics
13.2
DC Characteristics
Table 104:
DC Operating Specifications
Symbol
DC Operating Specifications
Minimum
Typical
Maximum
Unit
Vcc
Supply Voltage
3.00
5.25
Icc
Supply Current
81
mA
Isb
52
Isbxtl
Vref
1.275
1.3
1.3254
Vil
0.8
Vih
2.2
Vh
Hysterisis Voltage
60
mV
Vol
Vss+0.755
-1.06
Voh
Vcc
Rpu
4000
5600
8000
Rpd
4000
5600
8000
Iil
0.1
Cin
0.5
1.7
107
pF
1.7
107
pF
1.05 x Ideal8
Cout
0.5
VLVD
1.
2.
3.
Conditions are 3.0V <= Vcc <= 3.6V, -40 oC <= TA <= 85 oC. Correct operation assumes a properly loaded, 1 uW
maximum drive level, 32.768 kHz crystal.
Trimmed for appropriate Vcc.
Isink = 25 mA, Vcc = 4.5 V (maximum of 8 IO sinking, 4 on each side of the IC).
Isource =10 mA, Vcc = 4.5 V (maximum of 8 IO sourcing, 4 on each side of the IC).
Package dependent.
Ideal values are +/- 5% absolute tolerance and +/- 1% tolerance relative to each other (for adjacent levels).
4.
5.
6.
7.
8.
129
13.2.1
13.2.1.1
5V Specifications
page 131.
Table 105:
Symbol
1.
2.
3.
130
Minimum
Typical
Maximum
Unit
30
mV
+24
V/C
1000
nA
Input Capacitance2
.30
.34
.40
pF
.5
Vcc - 1.0
VDC
80
dB
80
dB
Vcc - .4
Vcc - .4
Vcc - .4
V
V
V
0.1
0.1
0.1
V
V
V
125
280
760
300
600
1500
A
A
A
60
dB
The leakage current includes the Analog Continuous Time PSoC block mux and the analog input mux. The leakage related to the General Purpose I/O pins is not included here.
The Input Capacitance includes the Analog Continuous Time PSoC block mux and the analog input mux. The
capacitance of the General Purpose I/O pins is not included here.
The common-mode input voltage range is measured through an analog output buffer. The specification includes
the limitations imposed by the characteristics of the analog output buffer.
DC and AC Characteristics
13.2.1.2
3.3V Specifications
ranges, 3.3V +/- 10% and -40C <= TA <= 85C. The
on page 130.
Table 106:
Symbol
2.
3.
Typical
Maximum
Unit
30
mV
+24
V/C
700
nA
Input Capacitance2
.32
.36
.42
pF
.5
Vcc - 1.0
VDC
80
dB
80
dB
Vcc - .4
Vcc - .4
Vcc - .4
V
V
V
0.1
0.1
0.1
V
V
V
80
112
320
200
300
800
A
A
A
60
dB
Input Leakage
1.
Minimum
Current1
The leakage current includes the Analog Continuous Time PSoC block mux and the analog input mux. The leakage related to the General Purpose I/O pins is not included here.
The Input Capacitance includes the Analog Continuous Time PSoC block mux and the analog input mux. The
capacitance of the General Purpose I/O pins is not included here.
The common-mode input voltage range is measured through an analog output buffer. The specification includes
the limitations imposed by the characteristics of the analog output buffer
131
13.2.2
Table 107:
Symbol
Minimum
Unit
0.1
Input Capacitance
0.5
1.7
pF
Bandwidth
10
MHz
Vcc
Table 108:
1.
2.
Maximum
13.2.3
Symbol
Typical
Minimum
Typical
Maximum
Unit
51
Input Capacitance
0.5
10
pF
Bandwidth
1002
kHz
Vcc
13.2.4
page 133.
Table 109:
Symbol
132
Minimum
Typical
Maximum
Unit
12
mV
+6
V/C
.5
Vcc - 1.0
Output Resistance
Bias = Low
Bias = High
1
1
V
V
.5 x Vcc - 1.3 V
.5 x Vcc - 1.3 V
1.1
2.6
5.1
8.8
mA
mA
80
dB
DC and AC Characteristics
The following table lists guaranteed maximum and minimum specifications for the voltage and temperature
ranges, 3.3V +/- 10% and -40C <= TA <= 85C. Typical
parameters apply to 5V at 25C and are for design guidance only. For 5V operation, see Table 109 on page 132.
Table 110:
Symbol
Minimum
Typical
Maximum
Unit
12
mV
+6
V/C
.5
Vcc - 1.0
Output Resistance
Bias = Low
Bias = High
1
1
.5 x Vcc + 1.3
.5 x Vcc + 1.3
V
V
.5 x Vcc - 1.3
.5 x Vcc - 1.3
V
V
0.8
2.0
2.0
4.3
mA
mA
80
dB
133
13.2.5
Table 111:
Symbol
1.
2.
3.
4.
134
Minimum
Typical
Maximum
Unit
Output Voltage1
3.07
5.15
82
5
mA
mA
12
mA
1.0
3.3
1.1
1.2
%Vo
%Vo
Load Regulation
%Vo
253
mVpp
Transient Response
50% Load Change to 5% error envelope
Vo Over/Undershoot for 50% Load Change
1
1
s
%Vo
Efficiency
354
50
Switching Frequency
1.3
MHz
50
DC and AC Characteristics
13.2.6
Reference Specifications.)
PSoC block. The bias levels for RefHi and RefLo refer to
Table 112:
Symbol
Minimum
Typical
Maximum
Unit
AGND = Vcc/21
CT Block Bias = High
Vcc/2 - 0.010
Vcc/2 - 0.004
Vcc/2 + 0.003
AGND = 2*BandGap1
CT Block Bias = High
2*BG - 0.043
2*BG - 0.010
2*BG + 0.024
P24 - 0.013
P24 0.001
P24 + 0.014
-0.034
0.000
0.034
mV
Vcc/2+BG - 0.140
Vcc/2+BG - 0.018
Vcc/2+BG +
REFHI = 3*BandGap
Ref Control Bias = High
3*BG - 0.112
3*BG - 0.018
3*BG + 0.076
2*BG+P2[6] 0.113
2*BG+P2[6] 0.018
2*BG+P2[6]+
0.077
P2[4]+BG 0.130
P2[4]+BG 0.016
P2[4]+BG +
0.098
P2[4]+P2[6] 0.133
P2[4]+P2[6] 0.016
P2[4]+P2[6]+
0.100
Vcc/2-BG - 0.051
Vcc/2-BG + 0.024
Vcc/2-BG + 0.098
REFLO = BandGap
Ref Control Bias = High
BG - 0.082
BG + 0.023
BG + 0.129
2*BG-P2[6] 0.084
2*BG-P2[6] +
0.025
2*BG-P2[6] +
0.134
P2[4]-BG 0.056
P2[4]-BG +
0.026
P2[4]-BG +
0.107
P2[4]-P2[6] 0.057
P24-P26 +
0.026
P2[4]-P2[6] +
0.110
0.103
135
Table 113:
Symbol
Minimum
Typical
Maximum
Unit
Vcc/2 - 0.007
Vcc/2 - 0.003
Vcc/2 + 0.002
AGND = Vcc/2
CT Block Bias = High
1
AGND = 2*BandGap
CT Block Bias = High
Not Allowed
P24 - 0.008
P24 + 0.001
P24 + 0.009
-0.034
0.000
0.034
mV
Not Allowed
REFHI = 3*BandGap
Ref Control Bias = High
Not Allowed
Not Allowed
Not Allowed
P2[4]+P2[6] 0.075
P2[4]+P2[6] 0.009
P2[4]+P2[6]+
0.057
Not Allowed
REFLO = BandGap
Ref Control Bias = High
Not Allowed
Not Allowed
Not Allowed
P2[4]-P2[6] 0.048
P24-P26 +
0.022
P2[4]-P2[6] +
0.092
AGND tolerance includes the offsets of the local buffer in the PSoC block. Bandgap voltage is 1.3V 2%
13.2.7
136
Minimum
Typical
Maximum
Unit
45
70
fF
DC and AC Characteristics
13.2.8
DC Programming Specifications
Table 115:
DC Programming Specifications
Symbol
DC Programming Specifications
Minimum
Typical
Maximum
Unit
Iccp
20
mA
Vilp
0.8
Vihp
2.2
Iilp
0.2
mA
Iihp
1.51
mA
Volv
Vss + 0.75 V
Vohv
Vcc - 1.0
Vcc
Flashenpb
50,000
E/W Cycles
per Block
Flashent
1,800,000
Flashdr
10
1.
2.
E/W Cycles
-
Years
137
13.3
AC Characteristics
Table 116:
AC Operating Specifications
Symbol
AC Operating Specifications
Minimum
Typical
Maximum
Unit
FCPU1
91.35
2,400
2,460
kHz
FCPU2
4,3
91.35
1,200
1,230
kHz
F48M
48
49.21,5
MHz
F24M
24
24.62,4
MHz
FGPIO
12
FIMO
23.4
24
24.6
MHz
FIMOC
22.44
24
24.6
MHz
F32K1
156
32
50
kHz
F32K2
157
32
64
kHz
F32K3
32.7688
kHz
Fpll
PLL Frequency
23.9869
MHz
Tf
210
12
ns
Tr
310
18
ns
Tpllslew
0.5
10
ms
SVdd
8011
mV/ms
Tos
100
50012
ms
Tosacc
150
60013
ms
Txrst
10
MHz
1.
2.
3.
4.
5.
0oC to +85oC.
3.0V < Vcc < 3.6V.
See Application Note AN2012 Adjusting PSoC Microcontroller Trims for Dual Voltage-Range Operation for information on maximum frequency for User Modules.
Limits are valid only when not in sleep mode.
Limits are valid only when in sleep mode.
Accuracy is capacitor and crystal dependent.
Is a multiple (x732) of crystal frequency.
Load capacitance = 50 pF.
To minimum allowable voltage for desired frequency.
The crystal oscillator frequency is guaranteed to be within 1% of its final value by the end of the 1s startup timer
period. Timer period may be as short as 640 ms for the case where F32K1 is 50 kHz. Correct operation assumes a
properly loaded 1uW maximum drive level 32.768 kHz crystal.
The crystal oscillator frequency is within 100 ppm of its final value by the end of the Tosacc period. Correct opera-
6.
7.
8.
9.
10.
11.
12.
13.
tion assumes a properly loaded 1 uW maximum drive level 32.768 kHz crystal. 3.0V <= Vcc <= 5.5V, -40 oC <= TA
<= 85 oC.
138
DC and AC Characteristics
13.3.1
on, 16 input caps are used (divide by 2), and the output
Table 117:
Symbol
Minimum
Typical
Maximum
Unit
2.7
1.4
0.6
s
s
s
1.7
0.9
0.5
s
s
s
0.4
0.7
2.0
V/s
V/s
V/s
0.7
1.7
2.5
V/s
V/s
V/s
1.7
4.6
8.9
MHz
MHz
MHz
139
Table 118:
Symbol
140
Minimum
Typical
Maximum
Unit
3.0
1.6
1.5
s
s
s
2.6
1.7
1.6
s
s
s
0.2
0.3
0.3
V/s
V/s
V/s
0.3
0.3
0.3
V/s
V/s
V/s
1.5
4.4
8.7
MHz
MHz
MHz
DC and AC Characteristics
13.3.2
Table 119:
Symbol
Minimum
Typical
Maximum
Unit
2.5
2.5
s
s
2.2
2.2
s
s
.9
.9
V/s
V/s
.9
.9
V/s
V/s
1.5
1.5
MHz
MHz
600
600
kHz
kHz
141
Table 120:
Symbol
Typical
Maximum
Unit
3.2
3.2
s
s
2.6
2.6
s
s
.5
.5
V/s
V/s
.5
.5
V/s
V/s
1.3
1.3
MHz
MHz
360
360
kHz
kHz
Maximum
Unit
13.3.3
AC Programming Specifications
Table 121:
AC Programming Specifications
Symbol
Minimum
AC Programming Specifications
Minimum
Typical
Trsclk
20
ns
Tfsclk
20
ns
Tssclk
25
ns
Thsclk
25
ns
Fsclk
Frequency of SCLK
20
MHz
Teraseb
10
ms
Terasef
40
ms
Twrite
10
20
ms
142
Packaging Information
14.0
Packaging Information
51-85064-B
143
144
51-85077-B
Packaging Information
51-85079-B
8 ead S
S a Out
ac age O 8
51-85061-C
145
51-85011-A
51-85014-B
51-85020-A
146
Packaging Information
51-85024-A
51-85026-A
147
REVISIONS
ZONE
REV
ECN
**
1550
*A
49422
DESCRIPTION
DATE
APPROVED
NEW RELEASE
04/01/96
CHG. TITLE
04/03/97
PIN 1 ID
0.300
0.325
0.100 BSC.
SEATING
PLANE
0.115
0.145
0.180 MAX.
0.008
0.015
0.015 MIN.
0.125
0.140
0-10
0.055
0.070
0.014
0.022
0.430 MAX.
DATE
DESIGNED BY
.XX
.XXX
.XXXX
-+
+
-
MATERIAL
DATE
DRAWN
ANGLES
+
-
HTN
DATE
APPROVED BY
DATE
APPROVED BY
DATE
FINISH
CYPRESS
SEMICONDUCTOR
04/03/97
CHK BY
TITLE
SIZE
A
SCALE
P08.3
5X
DWG NO
REV
*A
51-85075
SHEET
OF
14.1
Table 122:
Thermal Impedances
Package
Typical JA
8 PDIP
121 C/W
20 PDIP
107 C/W
20 SOIC
80 C/W
20 SSOP
116 C/W
28 PDIP
68 C/W
28 SOIC
72 C/W
28 SSOP
95 C/W
48 PDIP
70 C/W
48 SSOP
69 C/W
44 TQFP
58 C/W
148
Ordering Guide
15.0
Ordering Guide
Table 123:
Ordering Guide
Type
Ordering Code
Flash
(KBytes)
RAM
(Bytes)
SMP
Temperature
Range
CY8C25122-24PI
256
No
CY8C26233-24PI
256
Yes
CY8C26233-24SI
256
Yes
CY8C26233-24PVI
256
Yes
CY8C26443-24PI
16
256
Yes
CY8C26443-24SI
16
256
Yes
CY8C26443-24PVI
16
256
Yes
CY8C26643-24PI
16
256
Yes
CY8C26643-24PVI
16
256
Yes
CY8C26643-24AI
16
256
Yes
149
16.0
Table 124:
Document Title: CY8C25122, CY8C26233, CY8C26443, CY8C26643 Device Data Sheet for Silicon Revision D
Document Number: 38-12010
Revision
ECN #
Issue Date
Origin of Change
Description of Change
**
116628
6/17/2002
*A
127231
5/22/2003
HMT.
*B
127231
5/22/2003
HMT.
Distribution: External/Public
Posting: None
150