ATMEL AT76C551

Features
• Implements Bluetooth™ Specification on Short Distance Wireless Communication in
2.4 GHz ISM Band
• Provides 1 Mbps Aggregate Bit Rate
• Supports Frequency Hopping Spread Spectrum Physical-layer Interface to Dedicated
Transceiver with Frequency Hopping Algorithm Implemented in Hardware
• Provides Baseband Functions in Hardware which Implement Bluetooth Low-level Bit
•
•
•
•
•
•
•
•
•
•
Processing Such as Forward Error Correction (FEC), Header Error Check (HEC) and
CRC Generation/Checking and Encryption/Decryption
Integrated ARM7TDMI® RISC Processor
Glueless SRAM Interface, Supporting Up to 256K Bytes of Memory
Glueless Flash Memory Interface, Supporting Up to 256K Bytes of Nonvolatile Memory
Glueless PCMCIA Bus Interface Conforming to PC Card Standard – Feb. 1995
USB Interface Conforming to Universal Serial Bus Standard Version 1.1
16550 UART Core Offering 32-byte Receive FIFO and Programmable Baud Rate
Programmable 8/16-bit Wide External Memory Interface
Supports Multiple Reference Clock Frequencies (13.000, 14.400, 16.800, 19.440 MHz)
176-lead LQFP
3.3V Supply
Single Chip
Bluetooth™
Controller
AT76C551
System Level Block Diagram
PCMCIA
Interface
USB
Slave
Receive Data Front-end
UART
Receive Data Processing
Internal
RAM
Memory
Interface
Transmit Data Processing
AMBA Bus
Interface
Voice
CODEC
3-Wire
Control Bus
Clock
Generator
RSSI
Receive Sequencing
Manager
ARM
Power
Management
Rev. 1612D–08/01
1
Overview
The AT76C551 is a single chip controller providing the functionality for high data rate, short
distance wireless communications in the free ISM band. In conjunction with a 2.4 GHz transceiver, it provides a cost effective networking solution for a wide range of digital
communication devices and computer peripherals. Integration is simplified due to the incorporation of three different interfaces: USB and 16550 UART compatible interfaces and a
PCMCIA interface conforming to the PC Card 95 specification. Additionally, a voice coding/decoding module is provided.
The AT76C551 is comprised of a baseband processor. This processor carries out all bit-level
processing after modulation/demodulation of the Bluetooth bitstream. It controls the transceiver and dedicated voice coding/decoding. The AT76C551 has an ARM7TDMI processor
core with support for internal and external memory, as well as the interface core logic.
The powerful RISC processor in the ARM7TDMI carries out all but the low level baseband
functions.
Applications
AT76C551 can be used in applications where fast short range communication is required
between portable devices such as mobile phones and digital peripherals.
Typical usages would include:
2
•
Wireless network cards
•
Mobile phones
•
Laptop and desktop computers
•
Pagers
•
Digital cameras
•
PDAs
•
Wireless computer peripherals (printers, etc.)
AT76C551
1612D–08/01
AT76C551
Typical AT76C551 Home Application
Fax
AT76C551
Bluetooth
Adapter
RS-232
RS-232
AT76C551
Bluetooth
Adapter
Printer
AT76C551
Bluetooth
Adapter
PCMCIA
USB
AT76C551
Bluetooth
Adapter
USB
AT76C551
Bluetooth
Adapter
Keyboard
Laptop Computer
AT76C551
Powered Mouse
Typical AT76C551 Mobile Application
Pen Computer
AT76C551
Bluetooth
Adapter
AT76C551
Bluetooth
Adapter
RS-232
AT76C551
Bluetooth
Adapter
USB
USB
AT76C551
Bluetooth
Adapter
Monitor
Tower Box
RS-232
Printer
AT76C551
Powered
Cell Phone
3
1612D–08/01
Functional Diagram
Register Bank
TxSync
RxFrontEnd
D.P.RAM
ARM
64K Bytes
D.P.RAM
BT
64K Bytes
D.P.RAM
Controller
RSSI
ADC
64K Bytes
D.P.RAM
ASB
1K Byte
D.P.RAM
USB
32K Bytes
D.P.RAM
UART
32K Bytes
D.P.RAM
32K Bytes
D.P.RAM
PCMCIA
Voice
64K Bytes
Internal
CODEC
RAM
ASB/APB
Bridge
Memory
ADC
DAC
Interface
APB
Interrupt Controller
4
External
External
RAM
Flash
Timer0
Timer1
AT76C551
1612D–08/01
AT76C551
Pinout and Package Options
The AT76C551 controller will be available in three different packages, each will have the same basic functionality but with a
different system interface (PCMCIA 8-bit, full-speed USB, extended speed RS-232). The prototype version comes in a
LQFP-176 package and supports the three different interfaces simultaneously.
PC-D2
PC-D3
PC-D4
PC-D5
PC-D6
PC_D7
GND
PC_A0
140
139
138
137
136
135
134
133
VCC
PC-D6
GND
PC_D7
GND
PC-D0
PC_A0
PC-D1
144
136
143
135
134
142
133
141
147 PC-D3
NCE1
139
146 PC-D4
NCE
138
145 PC-D5
NWE
137
151
143
150
142
149
141
148
140
NWAIT
GND
NREG
PC-D0
NIOWR
PC-D1
NIORD
PC-D2
TST_ECK
TMS
TEST_CTRL
TDI
TCK
VCC
NTRST
XTAL2
VCC
XTAL1
DB_CLK
GND
DB_DATA
TDO
GND
TMS
NIREQ
TDI
NINPACK
TCK
NWAIT
NTRST
NREG
VCC
NIOWR
DB_CLK
NIORD
DB_DATA
NCE1
GND
NCE
NIREQ
NWE
NINPACK
VCC
168
161
167
160
159
166
158
165
157
164
156
163
155
162
154
161
153
160
152
159
151
158
150
157
149
156
148
155
147
154
146
153
145
152
144
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
PC_A1
PC_A2
PC_A3
PC_A4
PC_A5
PC_A6
PC_A7
VCC
PC_A8
PC_A9
PC_A10
PC_A11
PC_A12
PC_A13
PC_A14
P_OR_UN
GND
DM
DP
VCC
U_CD_
USART_RX
U_DSR_
GND
U_CTS_
U_RI_
USART_TX
U_DTR_
U_RTS_
MA0
MA1
MA2
MA3
MA4
MA5
MA6
VCC
GND
MA7
MA8
MA9
MA10
MA11
MA12
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
PC_A1
PC_A2
PC_A3
PC_A4
PC_A5
PC_A6
PC_A7
VCC
PC_A8
PC_A9
PC_A10
PC_A11
PC_A12
PC_A13
PC_A14
P_OR_UN
GND
DM
DP
VCC
U_CD_
USART_RX
U_DSR_
GND
U_CTS_
U_RI_
USART_TX
U_DTR_
U_RTS_
MA0
MA1
MA2
MA3
MA4
MA5
MA6
VCC
GND
MA7
MA8
MA9
MA10
MA11
MA12
VCC
CSSFH51
ACLK_IN
CSFLH52
ABCLK_IN
NWRITE53
ASYNC_IN
NRED54
CSFLNWORD
16 55
MDH756
CSSR
MDH657
CSFL
MDH558
CSSFH
MDH459
CSFLH
MDH360
NWRITE
NREDGND61
NWORDVCC62
MDH2
MDH7 63
MDH1
MDH6 64
MDH0
MDH5 65
MD7
MDH4 66
MD6
MDH3 67
MD5
GND 68
MD4
VCC 69
MD3
MDH2MD270
MDH1MD171
MDH0MD072
MD7GND73
MD6VCC74
MD5
MA1875
MD4
MA1776
MD3
MA1677
MD2
MA1578
MA1479
MD1
MA1380
MD0
GND 81
VCC 82
MA18 83
MA17 84
MA16 85
MA15 86
MA14 87
MA13 88
GND 47
ASYNC_IN
ACLK
CSFL 1648
ABCLK
CSSR49
ASYNC
CSFL50
ADO
ADI
GND
ACLK
ABCLK
ASYNC
VCC
ADO 45
ACLK_IN
ADI 46
ABCLK_IN
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
VCC
1
EXT_13_MHz
2
EXT-13-MHz_OUT
3
GND
4
EXT_OSC
5
GND
6
TC_ENABL
7
TC_DATA
8
TC_CLK
9
VCC
10
TC_TXON
11
TXPIN
12
TC_PUPLL
13
14 TC_PURXTX
15 TC_PUVCO
16 TC_I_CP_SW
17 TC_PUREG
18
TC_RXON
19
TC_LD
20
GND
21 CLK_RXPIN
22
VCC
23
RXPIN
24
RXMODE
25
RXF_PD
26
RXF_CLK
27
RXF_OE_
28
RXF-D7
29
RXF-D6
30
RXF_D5
31
RXF_D4
32
RXF_D3
33
GND
34
RXF_D2
35
RXF_D1
36
RXF_D0
37
VDDAC
38
AGND
39
40
RSSI
41
AVCC
42
VC_IN
43
AGND
44
VC_OUT
AVCC
171 XTAL1
GND
164
170 GND
PLL_TEST_PIN
163
169 TDO
PC_RESET
162
175
168
174
167
173
166
172
165
176
175
174
173
172
171
170
176
169
CLK MODE0
TST_ECK
OSC_MODE
TEST_CTRL
GND
VCC
LFT
XTAL2
CLK_MODE1
CLK MODE0
OSC_MODE
GND
LFT
GND
PLL_TEST_PIN
CLK_MODE1
PC_RESET
Pinout of the Prototype Version
Pin 1 is marked for orientation
NCx = No Connection
5
1612D–08/01
Pin Summary – Pin Assignment in Numerical Order
Pin #
Pin Name
Type
Pin #
Pin Name
Type
Pin #
Pin Name
Type
1
VCC
Digital Supply
38
AGND
Analog Ground
75
MEM_DATA5
B
2
EXT_13_MHz
I
39
RSSI
I
76
MEM_DATA4
B
3
EXT_13_MHz_OUT
O
40
AVCC
77
MEM_DATA3
B
4
GND
Digital Ground
41
VC_IN
LOG 1
78
MEM_DATA2
B
5
EXT_OSC
I
42
AGND
Analog Ground
79
MEM_DATA1
B
6
GND
Digital Ground
43
VC_OUT
LOG O
80
MEM_DATA0
B
7
TC_ENABL
O
44
AVCC
81
GND
Digital Ground
8
TC_DATA
O
45
ADO
O
82
VCC
Digital Supply
9
TC_CLK
O
46
ADI
I
83
MEM_ADDR18
O
10
VCC
Digital Supply
47
GND
Digital Ground
84
MEM_ADDR17
O
11
TC_TXON
O
48
ACLK
O
85
MEM_ADDR16
O
12
TXPIN
O
49
ABCLK
O
86
MEM_ADDR15
O
13
TC_PUPLL
O
50
ASYNC
O
87
MEM_ADDR14
O
14
TC_PURXTX
O
51
VCC
Digital Supply
88
MEM_ADDR13
O
15
TC_PUVCO
O
52
ACLK_IN
I
89
MEM_ADDR12
O
16
TC_I_CP_SW
O
53
ABCLK_IN
I
90
MEM_ADDR11
O
17
TC_PUREG
O
54
ASYNC_IN
I
91
MEM_ADDR10
O
18
TC_RXON
O
55
CSFL16
O
92
MEM_ADDR9
O
19
TC_LD
I
56
CSSR
O
93
MEM_ADDR8
O
20
GND
Digital Ground
57
CSFL
O
94
MEM_ADDR7
O
21
CLK_PXPIN
I
58
CSSFH
95
GND
Digital Ground
22
VCC
Digital Supply
59
CSFLH
O
96
VCC
Digital Supply
23
RXPIN
I
60
NWRITE
O
97
MEM_ADDR6
O
24
RXMODE
I
61
NRED
98
MEM_ADDR5
O
25
RXF_PD
O
62
NWORD
I
99
MEM_ADDR4
O
26
RXF_CLK
O
63
MEM_DATAH7
B
100
MEM_ADDR3
O
27
RXF_OE_
O
64
MEM_DATAH6
B
101
MEM_ADDR2
O
28
RXF_D7
I
65
MEM_DATAH5
B
102
MEM_ADDR1
O
29
RXF_D6
I
66
MEM_DATAH4
B
103
MEM_ADDR0
O
30
RXF_D5
I
67
MEM_DATAH3
B
104
U_RTS_
O
31
RXF_D4
I
68
GND
Digital Ground
105
U_DTR_
O
32
RXF_D3
I
69
VCC
Digital Supply
106
USART_TX
O
33
GND
Digital Ground
70
MEM_DATAH2
B
107
U_RI_
I
34
RXF_D2
I
71
MEM_DATAH1
B
108
U_CTS_
I
35
RXF_D1
I
72
MEM_DATAH0
B
109
GND
Digital Ground
36
RXF_D0
I
73
MEM_DATA7
B
110
U_DSR_
I
37
VDDAC
74
MEM_DATA6
B
111
USART_RX
I
6
AT76C551
1612D–08/01
AT76C551
Pin Summary – Pin Assignment in Numerical Order (Continued)
Pin #
Pin Name
Type
Pin #
Pin Name
Type
Pin #
Pin Name
Type
112
U_CD_
I
134
GND
Digital Ground
156
DB_CLK
O
113
VCC
Digital Supply
135
PC_D7
B
157
VCC
Digital Supply
114
DP
B
136
PC_D6
B
158
NTRST
I
115
DM
B
137
PC_D5
B
159
TCK
I
116
GND
Digital Ground
138
PC_D4
B
160
TDI
I
117
P_OR_UN
I
139
PC_D3
B
161
TMS
I
118
PC_A14
I
140
PC_D2
B
162
TDO
I
119
PC_A13
I
141
PC_D1
B
163
GND
Digital Ground
120
PC_A12
I
142
PC_D0
B
164
XTAL1
I
121
PC_A11
I
143
GND
Digital Ground
165
XTAL2
I
122
PC_A10
I
144
VCC
Digital Supply
166
VCC
Digital Supply
123
PC_A9
I
145
NWE
I
167
TEST_CTRL
I
124
PC_A8
I
146
NCE
168
TST_ECK
I
125
VCC
Digital Supply
147
NCE1
I
169
PC_RESET
I
126
PC_A7
I
148
NIORD
I
170
PLL_TEST_PIN
I
127
PC_A6
I
149
NIOWR
I
171
GND
Digital Ground
128
PC_A5
I
150
NREG
I
172
LFT
129
PC_A4
I
151
NWAIT
O
173
GND
130
PC_A3
I
152
NINPACK
O
174
OSC_MODE
131
PC_A2
I
153
NIREQ
175
CLK_MODE0
132
PC_A1
I
154
GND
Digital Ground
176
CLK_MODE1
133
PC_A0
I
155
DB_DATA
O
Digital Ground
7
1612D–08/01
Pin Summary – Pin Assignment in Alphabetical Order
Pin #
Pin Name
Type
Pin #
Pin Name
Type
Pin #
Pin Name
Type
49
ABCLK
O
81
GND
Digital Ground
67
MEM_DATAH3
B
53
ABCLK_IN
I
95
GND
Digital Ground
66
MEM_DATAH4
B
48
ACLK
O
109
GND
Digital Ground
65
MEM_DATAH5
B
52
ACLK_IN
I
163
GND
Digital Ground
64
MEM_DATAH6
B
46
ADI
I
171
GND
Digital Ground
63
MEM_DATAH7
B
45
ADO
O
173
GND
Digital Ground
146
NCE
38
AGND
Analog Ground
172
LFT
147
NCE1
I
42
AGND
Analog Ground
103
MEM_ADDR0
O
152
NINPACK
O
50
ASYNC
O
102
MEM_ADDR1
O
148
NIORD
I
54
ASYNC_IN
I
91
MEM_ADDR10
O
149
NIOWR
I
40
AVCC
90
MEM_ADDR11
O
153
NIREQ
44
AVCC
89
MEM_ADDR12
O
61
NRED
175
CLK_MODE0
88
MEM_ADDR13
O
150
NREQ
I
176
CLK_MODE1
87
MEM_ADDR14
O
158
NTRST
I
21
CLK_PXPIN
I
86
MEM_ADDR15
O
151
NWAIT
O
57
CSFL
O
85
MEM_ADDR16
O
145
NWE
I
55
CSFL16
O
84
MEM_ADDR17
O
62
NWORD
I
59
CSFLH
O
83
MEM_ADDR18
O
60
NWRITE
O
58
CSSFH
101
MEM_ADDR2
O
174
OSC_MODE
56
CSSR
O
100
MEM_ADDR3
O
117
P_OR_UN
I
156
DB_CLK
O
99
MEM_ADDR4
O
133
PC_A0
I
155
DB_DATA
O
98
MEM_ADDR5
O
132
PC_A1
I
115
DM
B
97
MEM_ADDR6
O
122
PC_A10
I
114
DP
B
94
MEM_ADDR7
O
121
PC_A11
I
2
EXT_13_MHz
I
93
MEM_ADDR8
O
120
PC_A12
I
3
EXT_13_MHz_OUT
O
92
MEM_ADDR9
O
119
PC_A13
I
5
EXT_OSC
I
80
MEM_DATA0
B
118
PC_A14
I
4
GND
Digital Ground
79
MEM_DATA1
B
131
PC_A2
I
6
GND
Digital Ground
78
MEM_DATA2
B
130
PC_A3
I
20
GND
Digital Ground
77
MEM_DATA3
B
129
PC_A4
I
33
GND
Digital Ground
76
MEM_DATA4
B
128
PC_A5
I
116
GND
Digital Ground
75
MEM_DATA5
B
127
PC_A6
I
47
GND
Digital Ground
74
MEM_DATA6
B
126
PC_A7
I
68
GND
Digital Ground
73
MEM_DATA7
B
124
PC_A8
I
134
GND
Digital Ground
72
MEM_DATAH0
B
123
PC_A9
I
143
GND
Digital Ground
71
MEM_DATAH1
B
142
PC_D0
B
154
GND
Digital Ground
70
MEM_DATAH2
B
141
PC_D1
B
8
AT76C551
1612D–08/01
AT76C551
Pin Summary – Pin Assignment in Alphabetical Order (Continued)
Pin #
Pin Name
Type
Pin #
Pin Name
Type
Pin #
Pin Name
Type
140
PC_D2
B
9
TC_CLK
O
107
U_RI_
I
139
PC_D3
B
8
TC_DATA
O
104
U_RTS_
O
138
PC_D4
B
7
TC_ENABL
O
111
USART_RX
I
137
PC_D5
B
16
TC_I_CP_SW
O
106
USART_TX
O
136
PC_D6
B
19
TC_LD
I
41
VC_IN
LOG 1
135
PC_D7
B
13
TC_PUPLL
O
43
VC_OUT
LOG O
169
PC_RESET
I
17
TC_PUREG
O
1
VCC
Digital Supply
170
PLL_TEST_PIN
I
14
TC_PURXTX
O
10
VCC
Digital Supply
39
RSSI
I
15
TC_PUVCO
O
22
VCC
Digital Supply
26
RXF_CLK
O
18
TC_RXON
O
113
VCC
Digital Supply
36
RXF_D0
I
11
TC_TXON
O
125
VCC
Digital Supply
35
RXF_D1
I
159
TCK
I
51
VCC
Digital Supply
34
RXF_D2
I
160
TDI
I
69
VCC
Digital Supply
32
RXF_D3
I
162
TDO
I
144
VCC
Digital Supply
31
RXF_D4
I
167
TEST_CTRL
I
82
VCC
Digital Supply
30
RXF_D5
I
161
TMS
I
96
VCC
Digital Supply
29
RXF_D6
I
168
TST_ECK
I
157
VCC
Digital Supply
28
RXF_D7
I
12
TXPIN
O
166
VCC
Digital Supply
27
RXF_OE_
O
112
U_CD_
I
37
VDDAC
25
RXF_PD
O
108
U_CTS_
I
164
XTAL1
I
24
RXMODE
I
110
U_DSR_
I
165
XTAL2
I
23
RXPIN
I
105
U_DTR_
O
9
1612D–08/01
Signal Description – Pin Name Order
I = Input, O = Output, B = Bidirectional, Analog I = Analog Input, Analog O = Analog Output
Type
Pin Name
Description
Supply Pins
AGND
Power
Analog Ground
AVCC
Power
Analog Supply
GND
Power
Digital Ground
VCC
Power
Digital Supply
Global Pin
PC_RESET
I
Global Reset pin
XTAL1
I
Crystal oscillator input
XATL2
O
Crystal oscillator output
EXT_13_MHZ
I
13 MHz input clock
EXT_13_MHZ_OUT
O
13 MHz output clock
EXT_OSC
I
External oscillator input
CLK_MODE1,
CLK_MODE0
I
Clock Frequency Configuration
OSC_MODE
I
Internal/Extenal Clock Selector
Oscillator Pins
LFT
PLL Filter
PLL loop filter pin
Memory Interface Pins
CSFL16
O
Chip select when 16-bit Flash is used
CSSR
O
Chip select for low byte 8-bit SRAM
CSFL
O
Chip select for low byte Flash
CSSRH
O
Chip select for high byte SRAM
CSFLH
O
Chip select for high byte Flash
NWRITE
O
Memory write
NREAD
O
Memory read
NWORD
I
Selects between 8 and 16 memory access
MEM_ADDR [18:0]
O
Memory Address Bus – Signals MEM_ADDR [18:0] are address-bus output lines of Flash
and SRAM.
MEM_DATA [7:0]
B
Memory Data Bus – Signals MEM_DATA [7:0] are the bi-directional data bus lines for the
SRAM and Flash memory.
MEM_DATAH [7:0]
B
Memory Data Bus – Signals MEM_DATAH [7:0] are the bi-directional data bus lines for the
SRAM and Flash memory. These lines are used during 16-bit memory configuration.
P_OR_UN
I
Selects whether PCMCIA or USB will have direct access to the memories. When “1”
PCMCIA has direct access while when “0” USB has access
10
AT76C551
1612D–08/01
AT76C551
Signal Description – Pin Name Order (Continued)
I = Input, O = Output, B = Bidirectional, Analog I = Analog Input, Analog O = Analog Output
Pin Name
Type
Description
Baseband Interface Pins
TC_CLK
O
Clock output for transceiver control bus
TC_DATA
O
Data output for transceiver control bus
TC_ENBL
O
Enable output for transceiver control bus
TC_LD
I
Lock detect input
TC_PU_REG
O
Transceiver voltage regulator power up
TC_PU_PLL
O
Power up output for transceiver PLL
TC_PU_VCO
O
VCO power up output
TC_PU_RXTX
O
Power up output for Transmit/Receive sections of transceiver
TC_RX_ON
O
RX section power up control output
TC_TX_ON
O
TX section power up control output
TC_I_CP_SW
O
Transceiver Current Pump external switch signal
RSSI
I
Receive signal strength indicator input from transceiver
TXPIN
O
Transmit data output to transceiver
RXPIN
I
Receive data input from transceiver
CLK_RXPIN
I
Clock driven to internal RxFront module
RX_MODE
I
If “0”, internal clock recovery enabled and data extracted from external A/D. If “1” only BT
packet processing carried out. Clock generation and recovery must be carried out
externally
RXF_PD
O
Power Down signal for external A/D
RXF_CLK
O
Clock driven to external A/D
RXF_OE_
O
Output enable signal for external A/D
RXF_D[7:0]
I
A/D RXF_D[7:0] output bus
PC_A[14:0]
I
Address Bus – Signals A0 through A14 are address-bus input lines. Signal A0 is always
used since the data interface is 8 bits wide.
PC_D[7:0]
B
Data Bus – Signals D7 through D0 are the bi-directional data bus for PCMCIA. The most
significant bit is D7.
NWE
I
Write Enable – Used to strobe memory write data into the chip from the PCMCIA data bus.
Should be deasserted during memory read cycles. It is used for both Common memory
and Attribute memory accesses.
NOE
I
Output Enable – Active low output enable signal. It is used to gate memory read data from
the BT device onto PCMCIA data bus. It is used for Common memory accesses and
Attribute memory Accesses.
NCE1
I
Card Enable – Used to enable even-numbered word address bytes. A0 is used to select
between the even and odd number bytes within the addressed word
PCMCIA Interface Pins
11
1612D–08/01
Signal Description – Pin Name Order (Continued)
I = Input, O = Output, B = Bidirectional, Analog I = Analog Input, Analog O = Analog Output
Type
Pin Name
Description
NIORD
I
I/O Read – Asserted by the host system to indicate to BT that a read from the I/O address
space is required. The chip will not respond until it has been configured for I/O operation
by the system.
NIOWR
I
I/O Write – Asserted by the host system to indicate to the chip that a write to its I/O
address space is required. The device will not respond until it has been configured for I/O
operation by the system.
NREG
I
Attribute Memory Select – Driven by the host to select between Attribute memory or I/O
space (REG asserted) and Common memory (REG deasserted) in the device and the
PCMCIA card.
NWAIT
O
Extend Bus Cycle – This signal is asserted by the device to delay completion of the
access cycle currently in progress.
NINPACK
O
Input Acknowledge – It is asserted when the BT device is selected and can respond to an
I/O read cycle at the address currently applied on the address bus. It is used by the host to
control the enable of any input buffer between the card and the CPU. It will be inactive
during card configuration.
NIREQ
O
Interrupt Request – Asserted by the chip to indicate to the host that software service
should take place.
U_CTS_
I
Clear To Send
U_DSR_
I
Data Set Ready
U_DTR_
O
Data Terminal Ready
U_RI_
I
Ring Indicator
U_RTS_
O
Request To Send
USART_RX
I
Serial Input Port
USART_TX
O
Serial Output Port
U_CD_
I
Carrier Detect
DP
B
Upstream Plus USB I/O. This pin should be connected to CEXT through an external
1.5 kΩ pull-up resistor. DPLUS and DMINUS form the differential signal pin pairs
connected to the Host Controller or an upstream Hub.
DM
B
Upstream Minus USB I/O
UART Interface Pins
USB Interface Pins
Analog Voice CODEC Pins
VC_IN
LOG I
Voice Input
VC_OUT
LOG O
Voice Output
ADO
O
Data Transmit
ADI
I
Data Receive
ACLK
O
Master Clock – Out
ABCLK
O
Bit Clock – Out
Digital Voice CODEC Pins
12
AT76C551
1612D–08/01
AT76C551
Signal Description – Pin Name Order (Continued)
I = Input, O = Output, B = Bidirectional, Analog I = Analog Input, Analog O = Analog Output
Pin Name
Type
Description
ASYNC
O
Frame Sync – Out
ACLK_IN
I
Master Clock – In
ABCLK_IN
I
Bit Clock – In
ASYNC_IN
I
Frame Sync – In
DB_DATA
O
Debug data port
DB_CLK
O
Debug clock port
NTRST
I
JTAG reset input
TCK
I
JATG clock
TDI
I
JTAG data input
TDO
I
JTAG data output
TMS
I
JTAG master select input
TEST_CTRL
I
For production test
TEST_ECK
I
For production test
PLL_TEST_PIN
I
For production test.
JTAG Pins
TEST Pins
13
1612D–08/01
Functional Description – Pin Name Order
Name
Type
Description
AGND
Power
Analog Ground – used by the RSSI ADC, the Voice CODEC ADC and DAC
AVCC
Power
Analog Supply – used by the RSSI ADC, the Voice CODEC ADC and DAC
GND
Power
Digital Ground
VCC
Power
Digital Supply
Supply Pins
Global Pin
PC_RESET
I
Global Reset Pin
XTAL1
I
Crystal oscillator input
XATL2
O
Crystal oscillator output
EXT_13_MHZ
I
13 MHz input clock
EXT_13_MHZ_OUT
O
13 MHz output clock
EXT_OSC
I
External oscillator input
Oscillator Pins
CLK_MODE1
Clock Frequency Configuration (see “Support for Different Operating Frequencies”)
CLK_MODE0
I
Clock Frequency Configuration (see “Support for Different Operating Frequencies”)
OSC_MODE
I
Selects if the PLL will use the internal clock oscillator connected to the XTAL1, XTAL2 pins
or an external clock oscillator connected to the EXT_OSC pin.
LFT
PLL Filter
PLL loop filter pin
Memory Interface Pins
CSFL16
O
Chip Select when 16-bit Flash is used
CSSR
O
Chip select for low byte 8-bit SRAM
CSFL
O
Chip select for low byte Flash
CSSRH
O
Chip select for high byte SRAM
CSFLH
O
Chip select for high byte Flash
NWRITE
O
Memory write
NREAD
O
Memory read
NWORD
I
Selects between 8 and 16 memory access
MEM_ADDR [18:0]
O
Memory Address Bus – Signals MEM_ADDR [18:0] are address-bus output lines of Flash
and SRAM.
MEM_DATA [7:0]
B
Memory Data Bus – Signals MEM_DATA [7:0] are the bi-directional data bus lines for the
SRAM and Flash memory.
MEM_DATAH [7:0]
B
Memory Data Bus – Signals MEM_DATAH [7:0] are the bi-directional data bus lines for the
SRAM and Flash memory. These lines are used during 16-bit memory configuration
P_OR_UN
I
Selects whether PCMCIA or USB will have direct access to the memories
When “1” PCMCIA has direct access while when “0” USB has access
14
AT76C551
1612D–08/01
AT76C551
Functional Description – Pin Name Order (Continued)
Name
Type
Description
Baseband Interface Pins
TC_CLK
O
Clock output for transceiver control bus
TC_DATA
O
Data output for transceiver control bus
TC_ENBL
O
Enable output for transceiver control bus
TC_LD
I
Lock detect input
TC_PUREG
O
Transceiver voltage regulator power up
TC_PUPLL
O
Power up output for transceiver PLL
TC_PUVCO
O
VCO power up output
TC_PURXTX
O
Power up output for Transmit/Receive sections of transceiver
TC_RXON
O
RX section power up control output
TC_TXON
O
TX section power up control output
TC_I_CP_SW
O
Transceiver Current Pump external switch signal
RSSI
I
Receive signal strength indicator input from transceiver
TXPIN
O
Transmit data output to transceiver
RXPIN
I
Receive data input from transceiver
CLK_RXPIN
I
Clock driven to internal RxFront module
RXMODE
I
If “0”, internal clock recovery enabled and data extracted from external A/D. If “1” only BT
packet processing carried out. Clock generation and recovery must be carried out
externally.
RXF_PD
O
Power Down signal for external A/D
RXF_CLK
O
Clock driven to external A/D
RXF_OE_
O
Output enable signal for external A/D
RXF_D[7:0]
I
A/D RXF_D[7:0] output bus
PC_A[14:0]
I
Address Bus – Signals A0 through A14 are address-bus input lines. Signal A0 is always
used since the data interface is 8-bits wide.
PC_D[7:0]
B
Data Bus – Signals D7 through D0 are the bi-directional data bus for PCMCIA. The most
significant bit is D7.
NWE
I
Write Enable – Used to strobe memory write data into the chip from the PCMCIA data bus.
Should be deasserted during memory read cycles. It is used for both Common memory and
Attribute memory accesses.
NOE
I
Output Enable – Active low output enable signal. It is used to gate memory read data from
the BT device onto PCMCIA data bus. It is used for Common memory accesses and
Attribute memory Accesses.
NCE1
I
Card Enable – Used to enable even-numbered word address bytes. A0 is used to select
between the even and odd number bytes within the addressed word
NIORD
I
I/O Read – Asserted by the host system to indicate to BT that a read from the I/O address
space is required. The chip will not respond until it has been configured for I/O operation by
the system.
PCMCIA Interface Pins
15
1612D–08/01
Functional Description – Pin Name Order (Continued)
Name
Type
Description
NIOWR
I
I/O Write – Asserted by the host system to indicate to the chip that a write to its I/O address
space is required. The device will not respond until it has been configured for I/O operation
by the system.
NREG
I
Attribute Memory Select – Driven by the host to select between Attribute memory or I/O
space (REG asserted) and Common memory (REG deasserted) in the device and the
PCMCIA card.
NWAIT
O
Extend Bus Cycle – This signal is asserted by the device to delay completion of the access
cycle currently in progress.
NINPACK
O
Input Acknowledge – It is asserted when the BT device is selected and can respond to an
I/O read cycle at the address currently applied on the address bus. It is used by the host to
control the enable of any input buffer between the card and the CPU. It will be inactive
during card configuration.
NIREQ
O
Interrupt Request – Asserted by the chip to indicate to the host that software service should
take place.
U_CTS_
I
Clear to Send
U_DSR_
I
Data Set Ready
U_DTR_
O
Data Terminal Ready
U_RI_
I
Ring Indicator
U_RTS_
O
Request to Send
USART_RX
I
Serial input port
USART_TX
O
Serial output port
U_CD_
I
Carrier Detect
DP
B
Upstream Plus USB I/O. This pin should be connected to CEXT through an external 1.5 kΩ
pull-up resistor. DPLUS and DMINUS form the differential signal pin pairs connected to the
Host Controller or an upstream Hub.
DM
B
Upstream Minus USB I/O
UART Interface Pins
USB Interface Pins
Analog Voice CODEC Pins
VC_IN
LOG I
Voice input
VC_OUT
LOG O
Voice output
Digital Voice CODEC Pins
ADO
O
Data Transmit
ADI
I
Data Receive
ACLK
O
Master Clock – Out
ABCLK
O
Bit clock – Out
ASYNC
O
Frame Sync – Out
ACLK_IN
I
Master Clock – In
ABCLK_IN
I
Bit Clock – In
ASYNC_IN
I
Frame Sync – In
16
AT76C551
1612D–08/01
AT76C551
Functional Description – Pin Name Order (Continued)
Name
Type
Description
JTAG Pins
DB_DATA
O
Debug data port
DB_CLK
O
Debug clock port
NTRST
I
JTAG reset input
TCK
I
JATG clock
TDI
I
JTAG data input
TDO
I
JTAG data output
TMS
I
JTAG master select input
TEST_CTRL
I
For production test
TEST_ECK
I
For production test
PLL_TEST_PIN
I
For production test
TEST Pins
Internal
Architecture
The AT76C551 chip is based on the ARM7TDMI processor. All modules are connected to the
processor through a 32-bit bus including 32 KB internal SRAM. The processor operates at 24
MHz while low speed operation of the ARM® processor and power-down of virtually all interfaces is possible.
ARM Core
The controller contains the ARM7TDMI (ARM7) core, a 32-bit RISC processor. The ARM7
core can execute all the functionally called for by the Bluetooth specification. ARM7 supports
two alternative instruction sets:
1. Powerful 32-bit code can be executed by the processor in ARM® operating mode.
2. Thumb®, which stores a subset of 32-bit instructions as compressed 16-bit instructions
and decompresses them back to 32 bits upon execution.
Utilization of Thumb mode will exploit full processor power with limited external memory
resources.
Note:
Memory Interface
ARM7TDMI operating mode can be changed at run time with negligible overhead.
The memory interface interfaces the ARM processor to the 32K internal SRAM and external
Flash and SRAM memory that accompanies a complete design. Flash memory contains the
Bluetooth and Host Interface firmware and the Card Information Structure (CIS) used by the
host PCMCIA subsystem. Either 8-bit or 16-bit Flash memories and 8-bit SRAMs can be used.
The internal 32K SRAM memory accommodates ARM core stack, firmware status variables,
structures supporting host/firmware interface and network data buffers. When the host driver
software passes network data through the PCMCIA interface unit, the data can be automatically routed to either internal or external memories.
Note:
Firmware performance is optimized by permanently storing it in a slow Flash. Upon initialization
it is loaded onto faster SRAM to fetch the instructions.
External memory can be either 8-bit or 16-bit wide. External memory width is configured via
the NWORD pin. When 8-bit memory is used, up to 512 kilobytes of SRAM and Flash memory
is supported. When 16-bit memory is used, up to 1 megabyte of SRAM and Flash memory is
supported.
17
1612D–08/01
The memory interface supports two ports for efficient use of the memory unit. Each port provides access to all memories independently of the other. A round-robin priority scheme is used
when both ports require access to the same memory. One port is dedicated to the ARM interface while the other can be used by either the PCMCIA interface or the USB interface. The
selection is determined by the PC_OR_UN pin.
PCMCIA Interface
Unit
The PCMCIA interface unit implements a PCMCIA 2.1/JEIDA 4.2 compatible 8-bit wide PCcard front-end interface. The PCMCIA interface unit provides the host with master access to
internal/external SRAM and external Flash memory. The PCMCIA interface unit contains a
number of general purpose registers to allow configuration and/or status information exchange
between the host and Bluetooth firmware. Moreover, the PCMCIA interface unit provides the
host and the ARM core with the capability to raise interrupts to each other.
Consequently, the host driver software uses the PCMCIA interface unit to exchange configuration information, to monitor operation, to receive network indications and to transfer network
data from/to network data buffers in SRAM.
Baseband
Processor
The baseband processor unit carries out the low-level Bluetooth link functions. This unit has
been designed to automatically handle many time-critical physical network management tasks
used by the Bluetooth link control.
Bluetooth Clock
and Internal
Hardware Timers
A 28-bit counter running at 3.2 kHz provides the timing signals required for the baseband processing. Also other timers are included which provide general purpose interrupts or determine
the timing of specific transceiver programming events.
Frequency
Hopping
Sequence
Generator
The frequency hopping sequence generator chooses the correct hop frequency depending on
the Bluetooth clock, the device address and the device mode.
Access Code
Generation and
Detection
This module generates the correct access code for access to other Bluetooth devices from the
corresponding Lower Address Part (LAP) of the utilized Bluetooth Device address. A correlator is used to detect a Bluetooth transmission with a valid access code.
Forward Error
Correction (FEC)
Two types of forward error correction are used. The first type is a simple 3-times repetition
code where each bit is repeated three times. Majority decision decoding is used in the
receiver.
The second type of code is a (15,10) shortened Hamming code. The data is divided into 10-bit
blocks. Each block is allocated a 15-bit code word. This code can correct all single-bit errors
while it can detect double bit errors in each code word.
Header Error
Check (HEC)
Dedicated header error generation and checking is provided to guarantee correct decoding of
the important information included in the header. The generator calculates the HEC field in the
header of a transmitted Bluetooth packet while the HEC detects corrupted packet headers.
Cyclic
Redundancy
Generation and
Check (CRC)
A 16-bit CRC is used to protect the payload data transmitted using certain types of
Bluetooth packets. During transmission, the CRC is automatically generated and appended at
the end of the packet. Checking for received BT packets is a fully automated fund of the CRC
in the ARM Core. It is a simple matter of checking the corresponding CRC status bit.
18
AT76C551
1612D–08/01
AT76C551
Encryption/
Decrytion
Encryption and decryption is provided with the use of a secret key. Encryption and decryption
are carried out on-the-fly with minimal intervention from the processor. The encryption/decryption data are interchanged between the other Bluetooth low-level processing modules
automatically.
Authentication
Processing
Accelerator
Processing-intensive authentication procedures are implemented in the hardware which
reduce the time for authentication key production.
Receiver Signal
Strength Indicator
(RSSI)
This module provides a metric of the received signal strength of a Bluetooth transmission. It
uses an 8-bit A/D to read the RSSI value of the transceiver.
64-byte TX and RX
FIFOs
A 64-byte Transmit and a 64-byte Receive FIFO are used to buffer data between the Bluetooth baseband and the ARM processor.
Baseband TX and
RX Processing
Sequencer
Two dedicated sequencers are used, one for the Transmit direction and one for the Receive
direction, these automate the Bluetooth packet transactions.
These sequencers, in conjunction with firmware running on the ARM core, execute the link
control functions. The sequencer is used to free the ARM processor from the sequencing of
bit-level processing. The processing needed by the various Bluetooth packets differs from
packet type-to-packet type. The processing sequencers can be programmed according to the
different packet types and carry out the required processing functions without further ARM
processor intervention for the transmission of corresponding packet.
The baseband processor also eases the task of ensuring reliable data delivery. All bit-intensive tasks are done in hardware. The ARM core configures the modules and reads the results.
Access code generation and correlation with received packet is carried out in hardware ensuring minimal decoding delay. With the firmware reading the results of a successful packet
reception the HEC computation and header recognition is fully automated. The receive engine
is automatically configured according to the packet header and, when required, payload
header information, decodes the packet and stores it in the RX FIFO without further intervention from the processor.
8-bit ADC Interface
for Bluetooth RX
Data
An 8-bit external interface is used to connect an external analog-to-digital converter providing
the digital representation of the analog signal decoded by the transceiver during reception.
The analog signal is sampled at 4M samples per second requiring an external ADC capable of
handling this sample rate.
Automatic DCoffset Cancellation
and Symbol
Recovery
Modern low-cost transceivers used in FSK applications, employing open loop modulation
and/or demodulation together with limiter-discriminator detection at the receiver, produce output baseband signals which suffer from moderate to severe DC-offset fluctuation. The useful
signal is a small fraction of the magnitude of the maximum DC-offset fluctuation. The number
of symbols available to a Bluetooth baseband controller for DC-offset compensation and symbol timing recovery (STR) purposes are a mere 4 preamble bits, preceding the device access
code (DAC) in every packet. Fast symbol timing acquisition is a prerequisite to successful
decoding of the DAC and synchronization to the master device in a Bluetooth piconet. Due to
this fact and in order to comply with tight slot timing requirements, a state-of-the-art DC-offset
canceller, bit-symbol recovery circuit has been integrated. This module is capable of recovering the original Bluetooth bitstream in the noisiest of environments.
19
1612D–08/01
Voice CODEC
The voice CODEC module supports both CVSD (Continuous Variable Slope Delta) coding and
log PCM coding (A-law and U-law). The coded voice data from both coding algorithms will be
transferred with a constant bit rate of 64 kbits/sec.
The voice CODEC hardware consists of the following modules: A digital-to-analog converter
(D/AC) for converting linear PCM data to the analog domain, an analog-to-digital converter
(ADC), a digital interface for connection of external integrated voice codecs, a codec submodule, which implements the CVSD and log PCM alogrithms and two 32-byte FIFOs which are
capable of holding 4 ms of coded voice data in each direction. Interrupts are generated when
a programmable level of data in the FIFOs has been reached. Two externally connected lowpass filters are required to use a microphone and earphones.
Coded voice data from the Bluetooth interface can be transferred to an external voice codec
through a digital interface. This interface can be configured as either a master or a slave. The
interface accepts two possible clock formats: Short Frame Sync and Long Frame Sync.
USB Function
Interface
The USB functionality is executed by an USB hardware block and firmware running on the
ARM controller. This configuration allows acceleration of the intensive function processing
while allowing flexibility in the implementation of higher level protocols over USB.
The USB hardware block consists of a Serial Interface Engine (SIE), a Serial Bus Controller
(SBC) and a System Interface. The SIE performs the clock/data separation, NRZI encoding
and decoding, bit insertion and deletion, CRC generation and checking, and the serial-parallel
data conversion. The SBC consists of a protocol engine and a USB device with 6 endpoints,
each with dedicated double buffered FIFOs. One endpoint has an 8-byte FIFO, two endpoints
have 16-byte FIFOs, two have 32-byte FIFOs and two have 128-byte FIFOs. The SBC manages the device address, monitors the status of the transactions, manages the FIFOs and
communicates to the processor through a set of status and control registers. The System
Interface connects the Serial Bus Controller to the processor.
16550 Compatible
UART
The UART hardware module is a universal asynchronous receiver and transmitter with 16byte Transmit and Receive FIFO. A programmable baud rate generator is provided to select,
transmit and receive clock rates from 1200 bps to 921 Kbps.
The input clock to the baud rate generator is generated from a 96 MHz clock (derived from the
internal clock generator). The required division ratios and the relative error are shown in Table
1 for a 96 MHz clock.
20
AT76C551
1612D–08/01
AT76C551
Table 1. Need Table Caption
Baud Rate
Divisor Used
% Error Between Desired and Actual
1200
5000
0
2400
2500
0
4800
1250
0
9600
625
0
19.2K
312
0.16
38.4K
156
0.16
57.6K
104
0.16
115.2K
52
0.16
230.4K
26
0.16
460.8K
13
0.16
921.6K
6.5
0.16
The UART module provides serial asynchronous receive data synchronization, parallel-toserial and serial-to-parallel data conversions for both the transmitter and receiver sections.
These functions are necessary for converting the serial data stream into parallel data which is
required with digital data systems.
Synchronization for the serial data stream is accomplished by adding start and stop bits to the
transmit data to form a data character (character orientated protocol). Data integrity is insured
by attaching a parity bit to the data character for control and monitoring. The parity bit is
checked by the receiver for any transmission bit errors.
Two 32-bit Timers
AT76C551 includes two identical system timers. Each system timer is a completely independent device. Each has adjustable prescale and preload capable of producing interrupts in a
periodic or one-shot fashion.
Support for
Different
Operating
Frequencies
The AT76C551 chip is able to operate with the following frequencies: 13 MHz, 14.4 MHz, 16.8
MHz and 19.44 MHz. Table 2 shows the correct configuration for each frequency.
Either a crystal or an oscillator can be used. When the OSC_MODE pin is tied to ground the
clock available at the EXT_OSC input is used to drive internal logic. When it is tied to VCC, the
internal clock signal is derived from the XTAL1, XTAL2 pins and associated crystal and
circuitry.
Also a very stable 13 MHz oscillator is required for transceiver operation. This is connected to
the EXT_13_MHZ pin.
Table 2. Correct Configuration Frequencies
CLK_MODE0
CLK_MODE1
Crystal/Oscillator
Frequency (MHz)
0
0
14.4
0
1
16.8
1
0
19.44
1
1
13
21
1612D–08/01
Figure 1. Memory Map of Prototype Version
FFFFFFh
Reserved
FFFFFFh
Reserved APB
F30000h
F00000h
Timers
F20000h
Reserved
F10000h
Memory Interface
Configuration
E00000h
Interrupt Controller
F00000h
General Purpose Registers
D00000h
Reserved
900000h
PCMCIA
800000h
UART
700000h
Bluetooth Baseband
600000h
Voice CODEC
500000h
USB
400000h
Reserved
300000h
External SRAM
(Optional)
200000h
Internal 64K SRAM
100000h
Flash memory
000000h
22
AT76C551
1612D–08/01
AT76C551
Register
Description
Memory Controller
Register Set
The Memory Controller Register Set can be configured to cooperate with various types of
external Flash and SRAM memories. The configuration parameters are held by Memory Configuration Registers (MCR) which are mapped into AMBA™ memory space. After AT76C551
resets, MCR default values guarantee correct operation of external Flash or SRAM memories
connected to AT76C551. AT76C551 firmware adjusts MCR in order to achieve Flash and
SRAM safe operation with minimum wait states.
In the reset configuration the external Flash can be found at the bottom of the address map. If
the bit 0 of the remap register is set high, then the Memory Controller switches to the normal
memory map in where there is internal SRAM.
SRAM Configuration Register (MCR0)
addr: E00000 hex
R/W
8 bits
• Bit 7 – Reserved
• Bits 6..4 – SWW[2:0]
Number (0 - 7) of wait states during SRAM write cycles
• Bit 3 – Reserved
• Bits 2..0 – SWR[2:0]
Number (0 - 7) of wait states during SRAM read cycles
Note:
Default Value: 77 hex
Flash Memory Configuration Register (MCR1)
addr: E00004 hex
R/W
8 bits
• Bits 7 – Reserved
• Bits 6..3
Number (0 - 7) of wait states during write access of Flash memory latches
• Bits 2..0 – FWR[2:0]
Number (0 - 7) of wait states during Flash memory read cycles
Note:
Default Value: 07 hex
Flash and Internal SRAM remap Register (MCR2)
addr: E00008 hex
R/W
8 bits
• Bits 7..1 – Reserved
• Bit 0 – REMAP
Remap enable
Note:
Default Value: 00 hex
23
1612D–08/01
PCMCIA
Configuration
Registers
The PCMCIA configuration registers are required by the PCMCIA standard. These registers
are mapped into PCMCIA attribute memory space to allow the host to configure basic parameters of the PCMCIA device. They are accessible by the host but they are not accessible by
ARM core.
COR: Configuration Option Register
PCMCIA addr: 0800 hex
R/W
8 bits
• Bit 7 – SRES: System Reset
By setting this bit, the device is reset in a way equivalent to PCMCIA hardware reset signal
activation.
Note:
Tthis bit is not automatically cleared after set.
• Bit 6 – IEVREQ
Logic 1: Level mode interrupt.
Logic 0: Pulse mode interrupt
• Bits 5..0 – CFX[5:0]: Configuration Index
This field is written with the index number of the entry in the card’s configuration table which
the host selects. When all the field bits are zero, the device is in memory only mode.
Note:
Default Value: 00 hex
CSR: Configuration and Status Register
PCMCIA addr: 0802 hex
R/W
8 bits
• Bits 7..6 – Reserved
• Bit 5 – IOIS8
Logic 1: The host is only capable of 8-bit I/O accesses.
Logic 0: The host is capable of 8-bit and 16-bit I/O accesses.
• Bits 4..0 – Reserved
Note:
System Interface
Registers
Default Value: 00 hex
The System Interface Registers (SIR) lie in the PCMCIA interface unit. They are mapped into
PCMCIA I/O space, i.e. they are directly accessible by the host but they are not directly accessible by the ARM core. They allow the host to configure and communicate with AT76C551
through host I/O space.
Note:
All AMBA memory space (16M bytes address space) can be accessed by the host through the
PCMCIA interface unit, via SIR1 - SIR5.
SIR0 – GCR: General Configuration Register
PCMCIA addr: 0000 hex
R/W
8 bits
Bit 7 – SWRES: Software Reset
By setting this bit, all SIR registers are reset. However, AT76C551 units on the AMBA bus
(ARM core, PAI, etc.) are not be reset by SWRES bit activation. This bit is automatically
cleared after set.
24
AT76C551
1612D–08/01
AT76C551
• Bit 6 – CORES: Core Reset
While this bit is set, AT76C551 units on the AMBA bus (including ARM core) are held in reset
state. When this bit is cleared, AT76C551 units on the AMBA bus exit reset state and ARM
core, in particular, begins code execution by fetching its reset exception vector.
Note:
This bit is not automatically cleared after it is set.
• Bit 5 – 16/8-bit: 16/8-bit Access Mode
If set, enables the 16-bit access of PCMCIA module with the system memory. If cleared, the
access is 8-bit (see SIR1 - SIR5).
• Bit 4 – Reserved
• Bit 3 – AIH: ARM Interrupt to Host
This bit is set if an interrupt to the host has been generated by the ARM core (see bit AIH of
MIR0) and is still pending. To acknowledge the interrupt and clear this bit, the host driver software must write 1 on this bit.
• Bit 2 – HIA: HOst Interrupt to ARM
When this bit is set by the host, an interrupt to the ARM core is generated (see bit HIA of
MIR0). This bit is automatically cleared when the ARM core acknowledges the interrupt (see
MIR0).
• Bit 1 – AIHEN: ARM to Host Interrupt Enable
Logic 0: Interrupts from ARM core to the host disabled
Logic 1: Interrupts from ARM core to the host enabled
• Bit 0 – Reserved
Note:
Default Value: 00 hex – The host driver software is responsible for AT76C551 reset. The host
driver software has to set CORES bit of GCR first. This will reset ARM core and all other units
on AMBA bus. The host driver must next set SWRES bit of GCR. This will reset SIR and clear
both CORES and SWRES bits, forcing ARM core to leave reset state and begin firmware program execution.
SIR1 – AMBA BSR: Bank Select Register
PCMCIA addr: 0001 hex
R/W
8 bits
• Bits 7..4 – AD[23:20]
This register is used by the host in conjunction with SIR2, SIR3, SIR4 and SIR5 in order to
access AMBA bus resources (Flash and internal or external SRAM) through the PCMCIA
interface unit. Each time DLR (SIR4) is accessed, the AMBA Bank Select Register (BSR)
drives AMBA address lines 23…20 and 18…15. AMBA address line 19 is always driven to
logic 0.
• Bits 3..0 – AD[18:15]
Note:
Default Value: 00 he
SIR2 – AMBA ALSR: Address Low Select Register
PCMCIA addr: 0002 hex
R/W
8 bits
• Bits 7..0 – AD[7:0]
This register is used by the host in conjunction with SIR1, SIR3, SIR4 and SIR5 in order to
access AMBA bus resources (Flash and internal or external SRAM) through the PCMCIA
interface unit. Each time SIR4 is accessed, the AMBA ALSR drives AMBA address lines 7..0.
Note:
Default Value: 00 hex
25
1612D–08/01
SIR3 – AMBA AHSR: Address High Select Register
PCMCIA addr: 0003 hex
R/W
8 bits
• Bit 7 – Reserved
• Bits 6..0 – AD[14:8]
This register is used by the host in conjunction with SIR1, SIR2, SIR4 and SIR5 in order to
access AMBA bus resources (Flash and internal or external SRAM) through the PCMCIA
interface unit. Each time SIR4 is accessed, the AMBA AHSR drives AMBA address lines
14..8.
Note:
Default Value: 00 he
SIR4 – AMBA I/O DLR: Data Low Register
PCMCIA addr: 0004 hex
R/W
8 bits
• Bits 7..0 – D[7:0]
This register is used by the host in conjunction with SIR1, SIR2, SIR3 and SIR5 in order to
access AMBA bus resources (Flash and internal or external SRAM) through the PCMCIA
interface unit.
Note:
Default Value: 00 hex
Writing the AMBA DLR initiates an AMBA write cycle. AMBA address lines are driven by SIR1,
SIR2 and SIR3 while AMBA data lines are driven by SIR4 and SIR5. As a result an AMBA
resource is written.
Reading the AMBA DLR initiates an AMBA read cycle. AMBA address lines are driven by
SIR1, SIR2 and SIR3 while AMBA data lines are reflected to SIR4 and SIR5. As a result, an
AMBA resource is read.
SIR5 – AMBA I/O DHR: Data High Register
PCMCIA addr: 0005 hex
R/W
8 bits
• Bits 7..0 – D[15:8]
This register is used by the host in conjunction with SIR1, SIR2, SIR3 and SIR4 in order to
access 16-bit AMBA bus resources (Flash and internal or external SRAM) through the PCMCIA interface unit.
Note:
Default Value: 00 hex
Writing/reading SIR4 causes an AMBA write/read cycle. During this cycle the SIR4 is connected to AMBA data lines 7..0 while the AMBA Data High Register (DHR) is connected to
AMBA data lines 15..8.
In order to write a 16-bit AMBA resource, the first most significant 8-bit write the AMBA DHR
and second least significant 8-bit write the AMBA DLR. Writing to the AMBA DLR initiates the
AMBA write cycle.
In order to read a 16-bit AMBA resource, the least stanching 8 bits must be read first for AMBA
DLR and secondly the most significant 8 bits are read for AMBA DHR. Reading the AMBA
DLR initiates the AMBA read cycle.
Note:
26
Writing/reading only the AMBA DHR without writing/reading the AMBA DLR does not cause an
AMBA write/read cycle.
AT76C551
1612D–08/01
AT76C551
• SIR6 – GPR1: General Purpose Register 1 GPR1
PCMCIA addr: 0006 hex
W
8 bits
• Bits 7..0 – GPR1[7:0]
The host can only write GPR1. GPR1 bits 7..0 are reflected to bits 7..0 of MIR4 so theARM
core can read them.
Note:
Default Value: 00 hex
SIR7 – GPR2: General Purpose Register 2
PCMCIA addr: 0007 hex
8 bits
• Bits 7..0 – GPR2[7:0]
The host can only write GPR2. GPR2 bits 7..0 are reflected to bits 15..8 of MIR4 so the ARM
core can read them.
Note:
Default Value: 00 hex
SIR8 – GPR3: General Purpose Register 3
PCMCIA addr: 0008 hex
W
8 bits
• Bits 7..0 – GPR3[7:0]
The host can only write GPR3. GPR3 bits 7..0 are reflected to bits 7..0 of MIR5 so the ARM
core can read them.
Note:
Default Value: 00 hex
In general, General Purpose Registers provide a means of one-way communication from the
host driver software to AT76C551 firmware. Each GPR bit, or field, can carry any kind of information (configuration information, status information, command signaling) required by the
interface between host driver software and AT76C551 firmware.
• SIR9 – MR1: Mirror Register 1
PCMCIA addr: 000E hex
R
8 bits
• Bits 7..0 – MR1[7:0]
The host can only read MR1. MR1 bits 7..0 reflect bits 7..0 of MIR0, which can be written by
the ARM core.
Note:
Default Value: 00 hex
SIR10 – MR2: Mirror Register 2
PCMCIA addr: 000F hex
R
8 bits
• Bits 7..0 – MR2[7:0]
The host can only read MR2. MR2 bits 7..0 reflect bits 15..8 of MIR0, which can be written by
the ARM core.
Note:
Default Value: 00 hex
SIR11 – MR3: Mirror Register 3
PCMCIA addr: 0010 hex
R
8 bits
• Bits 7..0 – MR3[7:0]
The host can only read MR3. MR3 bits 7..0 reflect bits 7..0 of MIR1, which can be written by
the ARM core.
Note:
Default Value: 00 hex
27
1612D–08/01
SIR12 – MR4: Mirror Register 4
PCMCIA addr: 0011 hex
R
8 bits
• Bits 7..0 – MR4[7:0]
Note:
Default Value: 00 hex – The host can only read MR4. MR4 bits 7..0 reflect bits 15..8 of MIR1,
which can be written by the ARM core.
SIR13 – MR5: Mirror Register 5
PCMCIA addr: 0012 hex
R
8 bits
• Bits 7..0 – MR5[7:0]
The host can only read MR5. MR5 bits 7..0 reflect bits 7..0 of MIR2, which can be written by
the ARM core.
Note:
Default Value: 00 hex
SIR14 – MR6: Mirror Register 6
PCMCIA addr: 0013 hex
R
8 bits
• Bits 7..0 – MR6[7:0]
The host can only read MR6. MR6 bits 7..0 reflect bits 15..8 of MIR2, which can be written by
the ARM core.
Note:
Default Value: 00 hex
SIR15 – MR7: Mirror Register 7
PCMCIA addr: 0014 hex
R
8 bits
• Bits 7..0 – MR7[7:0]
The host can only read MR7. MR7 bits 7..0 reflect bits 7..0 of MIR3, which can be written by
the ARM core.
Note:
Default Value: 00 hex
SIR16 – MR8: Mirror Register 8
PCMCIA addr: 0015 hex
R
8 bits
• Bits 7..0 – MR8[7:0]
The host can only read MR8. MR8 bits 7..0 reflect bits 15..8 of MIR3, which can be written by
the ARM core.
Note:
Default Value: 00 hex
In general, Mirror Registers provide a means of one-way communication from AT76C551 firmware to the host driver software. See also MIR0 - MIR3.
28
AT76C551
1612D–08/01
AT76C551
MAC Interface
Registers
MAC Interface Registers (MIR) lie in the PCMCIA interface unit. They are mapped into AMBA
memory space, i.e. they are directly accessible by the ARM core but they are not directly
accessible by the host. MIRs allow AT76C551 firmware to communicate with the host and to
generate interrupts to the host processor.
MIR0 – PIR1: Processor Interface Register 1
addr: 800000 hex
R/W
16 bits
• Bits 15..4 – PIR1[15:4]
General purpose I/O
Bits 15..8 are reflected to bits 7..0 of MR2 so that the host can read them.
Bits 7..0 are reflected to bits 7..0 of MR1 so that the host can read them.
• Bit 3 – HIA: Host Interrupt to ARM
This bit is set if an interrupt to the ARM core has been generated by the host (see bit HIA of
SIR0) and is still pending. To acknowledge the interrupt and clear this bit, AT76C551 firmware
must write 1 on this bit.
• Bit 2 – AIH: ARM Interrupt to Host
When this bit is set by the ARM core, an interrupt to the host is generated (see bit AIH of
SIR0). This bit is automatically cleared when the host acknowledges the interrupt.
• Bit 1 – HIAEN: Host to ARM Interrupt Enable
Logic 0: Interrupts from the host to ARM core disabled
Logic 1: Interrupts from the host to ARM core enabled
• Bit 0 – Reserved
Note:
Default Value: 0000 hex
MIR1 – PIR2: Processor Interface Register 2
addr: 800004 hex
R/W
16 bits
• Bits 15..8 – PIR2[15:8]
General purpose I/O
MIR1 bits 15..8 are reflected to bits 7..0 of MR4 so that the host can read them.
• Bits 7..0 – PIR2[7:0] General purpose I/O
MIR1 bits 7..0 are reflected to bits 7..0 of MR3 so that the host can read them.
Note:
Default Value: 0000 hex
Table MIR2 – PIR3: Processor Interface Register 3
addr: 800008 hex
R/W
16 bits
• Bits 15..8 – PIR3[15:8]
General purpose I/O
MIR2 bits 15..8 are reflected to bits 7..0 of MR6 so that the host can read them.
• Bits 7..0 – PIR3[7:0]
General purpose I/O
MIR2 bits 7..0 are reflected to bits 7..0 of MR5 so that the host can read them.
Note:
Default Value: 0000 hex
29
1612D–08/01
MIR3 – PIR4: Processor Interface Register 4
addr: 80000C hex
R/W
16 bits
• Bits 15..8 – PIR4[15:8]
General purpose I/O
MIR3 bits 15..8 are reflected to bits 7..0 of MR8 so that the host can read them.
• Bits 7..0 – PIR4[7:0]
General purpose I/O
MIR3 bits 7..0 are reflected to bits 7..0 of MR7 so that the host can read them.
Note:
Default Value: 0000 hex
MIR0 – MIR3 provide a means of one-way communication from AT76C551 firmware to the
host driver software. Each MIR bit, or field, can carry any kind of information required by the
interface between host driver software and AT76C551 firmware. The MIR4-MIR5 provide a
means of one-way communication from the host driver software to AT76C551 firmware. See
also GCR (SIR0) and GPR1 - GPR3 (SIR6 - SIR8).
MIR4 – PIR5: Processor Interface Register 5
addr: 800010 hex
R/W
16 bits
• Bits 15..8 – PIR5[15:8]
General purpose I/O
MIR4 bits 15..8 reflect bits 7..0 of GPR2 (SIR7), which can be written by the host.
• Bits 7..0 – PIR5[7:0]
General purpose I/O
MIR4 bits 7..0 reflect bits 7..0 of GPR1 (SIR6), which can be written by the host.
Note:
Default Value: 0000 hex
MIR5 – PIR6: Processor Interface Register 6
addr: 800014 hex
R/W
16 bits
• Bits 15..8 – PIR6[15:8]
General purpose I/O
MIR5 bits 15..8 reflect bits 7..0 of GCR (SIR0), which can be written by the host.
• Bits 7..0 – PIR6[7:0]
General purpose I/O
MIR5 bits 7..0 reflect bits 7..0 of GPR3 (SIR8), which can be written by the host.
Note:
30
Default Value: 0000 hex
AT76C551
1612D–08/01
AT76C551
Bluetooth Baseband Register Set
Bluetooth Baseband processor register file is mapped to the AMBA address space. Table 3 summarizes Bluetooth Baseband registers, grouped in functional sections.
Table 3. Bluetooth Register Set
Register
Addr. (hex)
Function
Packet Processing
Address0
600000
Sets ADDR field used is various processes
Address1
600004
Access code, packet encoding, encryption, etc.
Pgrsp_counter
600008
Counter used in page response substate
Parity0
60000C
Set/Get the parity bits included in current access
Parity1
600010
Code/FHS packet
RSSI_CtrlStatus
600014
Control/Status of RSSI ADC
Controlstatus1
600018
Packet processing control/status 1 register
Controlstatus2
60001C
Packet processing control/status 2 register
CLKN
600020
Native clock (free-running, RO)
CLOCK
600024
Provides estimated clock to frequency hopping
CLKPhase
600028
Native clock phase (free-running, RO)
CLKPhaseCorrelCorrect
60002C
Clock phase correction used at correlator trigger
CLKPhaseLimit
600030
Native clock phase limit (sets slot duration)
CLKPhaseWhenCorrel
600034
Native clock phase latched at correlator trigger
CLKControl
600038
Clock control register
CmpTimer_RxTxDataStart
60003C
RX/TX start compare timer
CmpTimer_GenPurpose
600040
General purpose compare timer
RxTxSettleTimes
600044
Settle times for RX/TX power-up signals
TcCtrlStatus
600048
Transceiver control/status register
TcCommand
60004C
Transceiver command register
TcProgData
600050
Transceiver programming (via 3-wire bus) register
IntMask
600054
Bluetooth interrupt mask register
IntStatus
600058
Bluetooth interrupt status register
IntClear
60005C
Bluetooth interrupt clear register
RxFifoCtrlStatus
600060
RX FIFO control/status register
RxFifoReadPort
600064
RX FIFO read port (8-bit)
TxFifoCtrlStatus
600068
TX FIFO control/status register
TxFifoWritePort
60006C
TX FIFO write port (8-bit)
Bluetooth Clock
Transceiver Control
Bluetooth Interrupt
Payload FIFOs
31
1612D–08/01
Table 3. Bluetooth Register Set (Continued)
Register
Addr. (hex)
Function
Hop Frequency Selection
HopSelCtrlStatus
600070
Hop selection control/status register
HopSelKern_ABCDE
600074
Hop selection kernel inputs A, B, C, D, E
HopSelKern_FXY1Y2
600078
Hop selection kernel inputs F, X, Y1, Y2
60007C
Rx Front register
Kc0
600080
Hold the encryption key used for data payload
Kc1
600084
Enciphering/deciphering
Kc2
600088
Kc3
60008C
Rx Front
RxFrontReg
Packet Encryption
E_functions
ArReg0
600090
ArReg1
600094
ArReg2
600098
ArReg3
60009C
KeyReg0
6000A0
KeyReg1
6000A4
KeyReg2
6000A8
KeyReg3
6000AC
KeyReg4
6000B0
32
Sets configuration
Set the half keys used in SAFER Ar rounds
AT76C551
1612D–08/01
AT76C551
Address0
addr: 600000 hex
R/W
32 bits
• Bits 31..0 – ADDR[31:0]
Sets ADDR field, used in access code generation, packet encoding, encryption and
frequency hopping.
Note:
Default Value: 00000000 hex
Address1
addr: 600004 hex
R/W
32 bits
• Bits 15..0 – ADDR[47:32]
Sets ADDR field, used in access code generation, packet encoding, encoding and
frequency hopping.
• Bits 31..16 – Reserved
Note:
Default Value: 00000000 hex
Pgrsp_counter
addr: 600008 hex
R/W
32 bits
• Bits 31..5 – Reserved
• Bits 4..0 – PageRspCounter[4:0]
Sets page response counter value to be used for page response routine and data whitening
initialization prior FHS packet transmission or reception.
Note:
Default Value: 00000000 hex
Parity0
addr: 60000C hex
R/W
32 bits
• Bits 31..0 – ParityBits[31:0]
When channel access code is generated from FHS syncword, sets the ParityBits[31:0] to be
used in channel access code construction.
When channel access code is generated from BD_ADDR only, gets the ParityBits[31:0] of the
channel access code.
Note:
Default Value: 00000000 hex
Parity1
addr: 600010 hex
R/W
32 bits
• Bits 31..2 – Reserved
• Bits 1..0 – ParityBits[33:32]
When channel access code is generated from FHS syncword, sets the ParityBits[33:32] to be
used in channel access code construction.
When channel access code is generated from BD_ADDR only, gets the ParityBits[33:32] of
the channel access code
Note:
Default Value: 00000000 hex
33
1612D–08/01
RSSI_CtrlStatus
addr: 600014 hex
R/W
32 bits
• Bits 31..16 – Reserved
• Bits 15..8 R – ADC data
Result of last conversion (last RSSI value sampled)
• Bit 7 – R ADC Status
Set by hardware when conversion procedure has been completed
• Bits 6..4 – Reserved
• Bits 3..2 W – ADC Mode
00: ADC idle
01: One shot conversion
10: Continuous conversion
• Bit 1 – W ADC Start
Set by firmware to start a conversion procedure when ADC mode is “one shot conversion”
(auto-clear).
• Bit 0 – W ADC Power
0: ADC off
1: ADC on
Note:
Default Value: 0000 hex
Controlstatus1
addr: 600018 hex
R/W
32 bits
• Bits 31..19 – Reserved
• Bits 18..9 – Packet_header
Sets packet header before packet TX.
Gets packet header after packet header RX during packet RX.
• Bits 8..0 – Payload_length
Sets payload body length before data packet TX
Gets payload body length after payload header RX during packet RX
Note:
Default Value: 00000000 hex
CtrlStatus2
addr: 60001C hex
R/W
32 bits
• Bits 31..20 – Reserved
• Bit 19 R – AccCodeBusy
Set by hardware during access code calculation or transmission
• Bit 18 R – CipherBusy
Set by hardware during ciphering/deciphering
• Bit 17 R – E_funBusy
Set by hardware during E_function calculation
34
AT76C551
1612D–08/01
AT76C551
• Bit 16 R – TxDataBusy
Set by hardware while TX data is being streamed out
• Bit 15 R – RxDataBusy
Set by hardware while RX data is being streamed in
• Bits 14...13 W – E_funType
Selects the type of E function to be calculated
00: E1 (used for authentication)
01: E21 (used for link key generation)
10: E22 (used for link key generation)
11: E3 (used for encryption key generation)
• Bit 12 R/W – EfunEnblBusy
Set by firmware to start E function calculation
Reset by hardware when calculation is complete
• Bit 11 W – CipherMode
0: No encryption used
1: Packet payload is encrypted in TX and decrypted in RX
• Bits 10..4 W – CorrelThresh
Sliding correlator threshold value, default = 51
Sets sliding correlator sensitivity.
• Bit 3 W– GetFHS_syncword
Set by firmware to start access code recovery from LAP and FHS packet parity bits. Auto-clear
• Bit 2 W – EvalAccCode
Set by firmware to start access code calculation from BD_ADDR only. Auto-clear
• Bit 1 W – AccCodeType
0: Access code TXed (and loaded on sliding correlator) has no trailer bits, thus access code
size is 68 bits.
1: Access code TXed (and loaded on sliding correlator) has trailer bits, thus access code size
is 72 bits.
• Bit 0 W – RxFHS
0: The packet expected to be RXed is not an FHS packet.
1: An FHS packet RX is expected.
Note:
Default Value: 00000000 hex
CLKN
addr: 600020 hex
R
32 bits
Bits 31..28 – Reserved
35
1612D–08/01
• Bits 27..0 – CLKN[27:0]
Provides native clock current value to firmware.
Note:
Default Value: 00000000 hex
CLOCK
addr: 600024 hex
R/W
32 bits
• Bits 31..28 – Reserved
• Bits 27..0 – CLOCK[27:0]
In this register specific fields of device’s native clock or of transmitter’s estimated in receiver
native clock are set.
Note:
Default Value: 00000000 hex
CLKPhase
addr: 600028 hex
R/W
32 bits
• Bits 31..15 – Reserved
• Bits 14..0 – CLKPhase[14:0]
Provides native clock phase current value to firmware. Native clock phase is estimated in system clock cycles.
Note:
Default Value: 00000000 hex
CLKPhaseCorrelCorrect
addr: 60002C hex
R/W
32 bits
• Bits 31..15 – Reserved
• Bits 14..0 CLKPhase_, Correl_, Correct[14:0]
Provides slave’s hardware with the proper native clock phase value just after correlator trigger.
At this moment slave’s hardware automatically adjusts CLKN with CLKN of corresponding
master.
Note:
Default Value: 00000000 hex
CLKPhaseLimit
addr: 600030 hex
R/W
32 bits
• Bits 31..15 – Reserved
• Bits 14..0 – CLKPhase_, Limit[14:0]
Sets native clock phase maximum value in system clock cycles. Effectively sets half-slot duration in system clock cycles.
Note:
Default Value: 00000000 hex
CLKPhaseWhenCorrel
addr: 600034 hex
R/W
32 bits
• Bits 31..15 – Reserved
• Bits 14..0 – CLKPhase_, When_, Correl[14:0]
Samples and holds native clock phase at correlator trigger. Thus enables slave-to-master
clock drift estimation.
Note:
36
Default Value: 00000000 hex
AT76C551
1612D–08/01
AT76C551
CLKCtrl
addr: 600038 hex
R/W
32 bits
• Bits 31..4 – Reserved
• Bit 3 – cmpCLKN0_invert
0: Native clock bit 0 is not inverted for timer comparisons.
1: Native clock bit 0 is inverted for timer comparisons.
Bit 3 value is “don’t care” if bit 0 of the register is reset.
• Bit 2 – ForcePhase_, Adjust
Set by firmware to force native clock phase adjustment, i.e. set native clock phase equal to
CLKPhaseCorrelCorrect register contents. Auto-clear.
• Bit 1 – AutoPhaseAdjust
0: Native clock phase is not auto-adjusted.
1: Native clock phase is auto-adjusted, i.e. set equal to CLKPhaseCorrelCorrect register contents just after each correlator trigger.
• Bit 0 – cmpCLKN0_ enable
0: Compare timer event is generated when compare timer bits 14 - 0 are equal to native clock
phase.
1: Compare timer event is generated when compare timer bits 14 - 0 are equal to native clock
phase AND compare timer bit 15 is equal to native clock bit 0 (possibly inverted).
Note:
Default Value: 00000000 hex
CmpTimer_RxTxStart
addr: 60003C hex
R/W
32 bits
• Bits 15..0 – CmpTimer_, RxTxStart[15:0]
Sets compare timer for packet RX or TX procedure start
Note:
Default Value: 00000000 hex
CmpTimer_GenPurpose
addr: 600040 hex
R/W
32 bits
• Bits 15..0 – CmpTimer_, GenPurpose[15:0]
Sets general purpose compare timer
Note:
Default Value: 00000000 hex
Compare timers are used to notify an event during a full-slot or a half-slot. Each compare timer
is compared to current native clock phase. Optionally, MSB of each compare timer can be
compared to bit 0 of native clock (possibly inverted).
When compare timer matches current native clock phase and current native clock bit 0, the
corresponding event is generated.
CmpTimer_RxTxStart generates a maskable interrupt and starts RX or TX procedure, if the
corresponding bit of TcCommand register has been set.
CmpTimer_GenPurpose only generates a maskable interrupt.
37
1612D–08/01
RxTxSettleTimes
addr: 600044 hex
R/W
32 bits
• Bits 31..24 – Reserved
• Bits 23..16 – TC_TXON, settleTime[7:0]
Microseconds from TC_TXON rise to outgoing packet data transmission.
• Bits 15..8 – TC_RXON, settleTime[7:0]
Microseconds from TC_RXON rise to correlator activation.
• Bits 7..0 – TC_PURX/TX, settleTime[7:0]
Microseconds from TC_PURX/TX rise to TC_TXON or TC_RXON rise.
Note:
Default Value: 00000000 hex
TcCtrlStatus
addr: 600048 hex
R/W
32 bits
• Bits 31..9 – Reserved
• Bit 8 TC_LD
Reflects transceiver TC_LD pin level
• Bit 7 R/W – TC_PUREG
Sets transceiver TC_PUREG pin level
• Bit 6 R/W – TC_PUVCO
Sets transceiver TC_PUVCO pin level
• Bit 5 R/W – TC_PUPLL
Sets transceiver TC_PUPLL pin level
• Bit 4 R/W – TC_PURXTX
Sets transceiver TC_PURXTX pin level, when bit 1 of this register is reset
• Bit 3 R/W – TC_RXON
Sets transceiver TC_RXON pin level, when bit 1 of this register is reset
• Bit 2 R/W – TC_TXON
Sets transceiver TC_TXON pin level, when bit 1 of this register is reset
• Bit 1 R/W – RX/TX_auto
Selects control mode for transceiver signals TC_RXON, TC_TXON & TC_PURXTX
1: The transceiver signals are controlled automatically.
0: The transceiver signals are set to reflect bits 4...2 of this register.
• Bit 0 R/W – TC_I_CP_SW
Sets transceiver TC_I_CP_SW pin level
Note:
Default Value: 00000000 hex
TcCommand
addr: 60004C hex
W
32 bits
• Bits 31..3 – Reserved
• Bit 2 – RxEnable
Set by firmware to start a RX cycle at then next event generated by compare timer
CmpTimer_RxTxStart
38
AT76C551
1612D–08/01
AT76C551
• Bit 1 – TxEnable
Set by firmware to start a RX cycle at then next event generated by compare timer
CmpTimer_RxTxStart.
• Bit 0 – RxTx_, Abort
Set by firmware to immediately abort current RX or TX cycle, or to cancel the programmed RX
or TX cycle due to start.
Note:
Default Value: 00000000 hex
Provided that bit 1 of TcCtrlStatus register is set the Bluetooth baseband processor has the
ability to automatically generate the sequence of signals necessary to implement TX and RX.
To initiate an automatic RX cycle, the firmware has to program CmpTimer_RxTxStart register
and then set bit 2 of TcCommand register. When the compare timer generates its event the
RX cycle begins and PU_RX/TX signal is raised. After PU_RX/TX settle time the RX_ON signal is raised. After RX_ON settle time baseband data acquisition circuits are enabled and the
correlator begins to search for a known access code. If correlator is triggered, then the correlator is powered down and RX packet data is acquired. After RX packet completion the RX cycle
ends and the transceiver is powered down.
Note:
The transceiver and the correlator will be held active until correlator trigger occurs, or RX cycle
is aborted by firmware, i.e. firmware sets bit 0 of TcCommand register.
To initiate an automatic TX cycle the firmware has to program CmpTimer_RxTxStart register
and then set bit 1 of the TcCommand register. When the compare timer generates its event,
the TX cycle begins and PU_RX/TX signal is raised. After PU_RX/TX settle time the TX_ON
signal is raised causing TX ramp rise. While TX ramp rises, the transmitter is fed with a 0/1alternating data stream. After TX_ON settle time (which should include TX ramp set time), the
actual TX packet data stream is given to the transceiver. After TX packet completion, the TX
cycle ends and the transceiver is powered down.
A RX or TX automatic cycle can be aborted at any moment. To abort a current RX or TX cycle
the firmware will set bit 0 of TcCommand register. This will power down the transceiver and
reset all baseband internal state machines to an idle state. To cancel the program, which has
not yet started, RX or TX automatic cycle firmware can also use bit 0 of TcCommand register.
Note:
Please note that the baseband is aware of RX or TX packet type and length therefore it has the
ability to trace RX or TX packet fields and decide the FEC encoding, CRC calculation, etc.
TcProg
addr: 600050 hex
R/W
32 bits
• Bits 31..26 – Reserved
• Bit 25 – 3wb_, EnableBusy
Set by firmware to initiate serial data send on the 3-wire bus. Reset by hardware to indicate
that 3-wire bus access is complete.
• Bit 2 – 3wb_,ClockRate
0: 3-wire bus clock is generated by system clock division by 4.
1: 3-wire bus clock is generated by system clock division by 8.
39
1612D–08/01
• Bits 23..0 – 3wb_, Data[23:0]
24-bit data word to be send on the 3-wire bus. MSB is sent first.
Note:
Default Value: 00000000 hex
IntStatus
addr: 600054 hex
R
32 bits
• Bits 31..13 – Reserved
• Bit 12 – TxFifoAlmEmpty_IntStatus
TX FIFO almost empty interrupt status.
• Bit 11 – RxFifoAlmFull_IntStatus
RX FIFO almost full interrupt.
• Bit 10 – GenPurpTim_ IntStatus
General purpose compare timer interrupt.
• Bit 9 – TxAcCodeComplete_IntStatus
RX/TX start compare timer interrupt enable.
• Bit 8 – RxTxStart_ IntStatus
RX/TX start compare timer interrupt.
• Bit 7 – TxPktComplete_IntStatus
TX packet completion interrupt.
• Bit 6 – RxCorrelTrig_ IntStatus
Correlator trigger interrupt.
• Bit 5 – RxHecFail_IntStatus
HEC fail interrupt.
• Bit 4 – RxCrcFail_ IntStatus
CRC fail interrupt.
• Bit 3 – RxFecFail_ IntStatus
FEC fail interrupt.
• Bit 2 – RxPktHeaderRdy_IntStatus
RX packet header arrival interrupt.
• Bit 1 – RxPayHeaderRdy_IntStatus
RX payload header arrival interrupt.
• Bit 0 – RxPayloadRdy_IntStatus
RX payload completion interrupt.
Note:
Default Value: 00000000 hex
IntMask
addr: 600058 hex
R/W
32 bits
• Bits 31..13 – Reserved
• Bit 12 – TxFifoAlmEmpty_IntEnable
TX FIFO almost empty interrupt enable.
40
AT76C551
1612D–08/01
AT76C551
• Bit 11 – RxFifoAlmFull_ IntEnable
RX FIFO almost full interrupt enable.
• Bit 10 – GenPurpTim_IntEnable
General purpose compare timer interrupt enable.
• Bit 9 – TxAcCodeComplete_IntEnable
TX of Access Code has been completed.
• Bit 8 – RxTxStart_ IntEnable
RX/TX start compare timer interrupt enable.
• Bit 7 – TxPktComplete_IntEnable
TX packet completion interrupt enable.
• Bit 6 – RxCorrelTrig_IntEnable
Correlator trigger interrupt enable.
• Bit 5 – RxHecFail_IntEnable
HEC fail interrupt enable.
• Bit 4 – RxCrcFail_IntEnable
CRC fail interrupt enable.
• Bit 3 – RxFecFail_IntEnable
FEC fail interrupt enable.
• Bit 2 – RxPktHeaderRdy_IntEnable
RX packet header arrival interrupt enable.
• Bit 1 – RxPayHeaderRdy_IntEnable
RX payload header arrival interrupt enable.
• Bit 0 – RxPayloadRdy_IntEnable
RX payload completion interrupt enable.
Note:
Default Value: 00000000 hex
IntClear
addr: 60005C hex
W
32 bits
• Bits 31..11 – Reserved
• Bit 10 – GenPurpTim_IntClear
Clears general purpose compare timer interrupt
• Bit 9 – TxAcCodeComplete_IntClear
Clears access Code Tx completed interrupt
• Bit 8 – RxTxStart_IntClear
Clears RX/TX start compare timer interrupt
• Bit 7 – TxPktComplete_IntClear
Clears TX packet completion interrupt
• Bit 6 – RxCorrelTrig_IntClear
Clears correlator trigger interrupt
• Bit 5 – RxHecFail_IntClear
41
1612D–08/01
Clears HEC fail interrupt
• Bit 4 – RxCrcFail_IntClear
Clears CRC fail interrupt
• Bit 3 – RxFecFail_IntClear
Clears FEC fail interrupt
• Bit 2 – RxPktHeaderRdy_IntClear
Clears RX packet header arrival interrupt
• Bit 1 – RxPayHeaderRdy_IntClear
Clears RX payload header arrival interrupt
• Bit 0 – RxPayloadRdy_IntClear
Clears RX payload completion interrupt
All events related to packet RX/TX as well as events generated by compare timers can activate the “Bluetooth Baseband” system interrupt. Conditions related to Bluetooth Baseband
FIFOs can activate “Bluetooth Baseband FIFOs” system interrupt.
Each event related to packet RX/TX, or generated by a compare timer, is always latched on
the corresponding bit of IntStatus register. The bit is set when the event occurs. The bit is
reset when the corresponding bit of IntClear register is set by the firmware to acknowledge the
event.
However, an event related to packet RX/TX or generated by a compare timer will produce an
interrupt only if the corresponding bit of IntMask register has been set by firmware.
Conditions related to Bluetooth Baseband FIFOs are “TX FIFO almost full” and “RX FIFO
almost empty”. These conditions are not latched, but just reflected on the corresponding bits of
IntStatus register. Bluetooth Baseband FIFO conditions have no corresponding bits in IntClear
register, because they will be automatically reset after proper FIFO service by firmware.
Bluetooth Baseband FIFO conditions will produce an interrupt only if the corresponding bit of
IntMask register has been set by firmware.
RxFifoCtrlStatus
addr: 600060 hex
R/W
32 bits
• Bits 31..15 – Reserved
• Bit 14 R – Empty
Set by hardware while FIFO is empty
• Bit 13 R Full – Set by hardware while FIFO is full
• Bit 12 W – Reset
Set by firmware to discard any possible FIFO contents. Auto-clear.
• Bits 11..6 R/W – Threshold[5...0]
Set by firmware to define the minimum level at which FIFO is considered “almost full”
• Bits 5..0 R – Level[5...0]
Current FIFO level, i.e. number of received bytes into FIFO waiting to be read
Note:
Default Value: 00000000 hex
RxFifoReadPort
addr: 600064 hex
42
R
32 bits
AT76C551
1612D–08/01
AT76C551
• Bits 31..8 – Reserved
• Bits 7..0 – RX_byte[7:0]
Least recent received byte not yet read
Note:
Please note that reading RxFifoReadPort register is meaningful only if RX FIFO level is at least
one, i.e. at least one byte exists in RX FIFO.
If RX FIFO is not serviced before it is full it will overflow and subsequent bytes received will be
lost. RX FIFO capacity is 64 bytes.
TxFifoCtrlStatus
addr: 600068 hex
R/W
32 bits
• Bits 31..15 – Reserved
• Bit 14 R – Empty
Set by hardware while FIFO is empty
• Bit 13 R – Full
Set by hardware while FIFO is full
• Bit 12 W – Reset
Set by firmware to discard any possible FIFO contents. Auto-clear
• Bits 11..6 R/W – Threshold[5...0]
Set by firmware to define the maximum level at which FIFO is considered “almost empty”.
• Bits 5..0 R – Level[5...0]
Current FIFO level, i.e. number of bytes written into FIFO, waiting to be transmitted.
Note:
Default Value: 00000000 hex
TxFifoWritePort
addr: 60006C hex
W
32 bits
• Bits 31..8 – Reserved
• Bits 7..0 – TX_byte[7:0]
Next byte to transmit
Note:
Writing TxFifoWritePort register is not permitted if TX FIFO is full.
If TX FIFO is not serviced before it is empty it will underflow and transmitted bytes will be lost.
TX FIFO capacity is 64 bytes.
hopSelCtrlStatus
addr: 600070 hex
RW
32 bits
Bits 31..4 – Reserved
• Bit 4..3 – Hop_Type
Indicates frequency hop type (page, inquiry, etc.).
• Bit 2 – Hop_Kernel_Direct
0: Hop selection calculation parameters (A,B,.X,Y1,.) are estimated by hardware.
1: Hop selection calculation parameters are provided directly by firmware.
• Bit 1 – Mode_79_23
0: 79 Frequency Hop System
43
1612D–08/01
1: 23 Frequency Hop System
• Bit0 – HopSelEnable_Busy
Set by firmware and enables hardware frequency pointer calculation. Cleared by hardware
when calculation is finished
Note:
Default Value: 00000000 hex
hopSel_ABCDE
addr: 600074 hex
RW
32 bits
• Bits 31..30 – Reserved
• Bits 29..25 – A[4:0]
Hop kernel register A
• Bits 24..21 – B[4:0]
Hop kernel register B
• Bits 20..16 – C[4:0]
Hop kernel register C
• Bits 25..7 – D[4:0]
Hop kernel register D
• Bits 6..0 – E[4:0]
Hop kernel register E
Note:
Default Value: 00000000 hex
hopSel_FXY1Y2
addr: 600078 hex
RW
32 bits
• Bits 31..30 – Reserved
• Bits 29..25 – F[4:0]
Hop kernel register F
• Bits 24..21 – X4:0]
Hop kernel register X
• Bits 20..16 – Y14:0]
Hop kernel register Y1
• Bits 25..7 – Y24:0]
Hop kernel register Y2
Note:
Default Value: 00000000 hex
RxFrontReg
addr: 60007C hex
W
32 bits
Bits 31..24 – Reserved
• Bits 22..20 – RxFront_n_C[3:0]
• Bits 18..16 – RxFront_n_A[3:0]
• Bits 15..8 – RxFrontThresh_A[7:0]
• Bits 7..0 – RxFrontThreshB[7:0]
Note:
44
Default Value: 00000000 hex
AT76C551
1612D–08/01
AT76C551
Kc0
addr: 600080 hex
W
32 bits
• Bits 31..0 – Kc0[31:0]
Key used for encryption
Note:
Default Value: 00000000 hex
Kc1
addr: 600084 hex
W
32 bits
• Bits 31..0 – Kc1[31:0]
Key used for encryption
Note:
Default Value: 00000000 hex
Kc2
addr: 600088 hex
W
32 bits
• Bits 31..0 – Kc2[31:0]
Key used for encryption
Note:
Default Value: 00000000 hex
Kc3
addr: 60008C hex
W
32 bits
• Bits 31..0 – Kc3[31:0]
Key used for encryption
Note:
Default Value: 00000000 hex
ArReg0
addr: 600090 hex
RW
32 bits
• Bits 31..0 – ArReg0[31:0]
Used in E_functions.Initialized by firmware and is set by hardware with E_function result.
Note:
Default Value: 00000000 hex
ArReg1
addr: 600094 hex
RW
32 bits
• Bits 31..0 – ArReg1[31:0]
Used in E_functions. Initialized by firmware and is set by hardware with E_function result.
Note:
Default Value: 00000000 hex
45
1612D–08/01
ArReg2
addr: 600098 hex
RW
32 bits
• Bits 31..0 – ArReg2[31:0]
Used in E_functions. Initialized by firmware and is set by hardware with E_function result.
Note:
Default Value: 00000000 hex
ArReg3
addr: 60009C hex
RW
32 bits
• Bits 31..0 – ArReg3[31:0]
Used in E_functions. Initialized by firmware and is set by hardware with E_function result.
Note:
Default Value: 00000000 hex
KeyReg0
addr: 60000 hex
RW
32 bits
• Bits 31..0 – KeyReg0[31:0]
Key used in E_functions
Note:
Default Value: 00000000 hex
KeyReg1
addr: 6000A4 hex
RW
32 bits
• Bits 31..0 – KeyReg1[31:0]
Key used in E_functions
Note:
Default Value: 00000000 hex
KeyReg2
addr: 6000A8 hex
RW
32 bits
• Bits 31..0 – KeyReg2[31:0]
Key used in E_functions
Note:
Default Value: 00000000 hex
KeyReg3
addr: 6000AC hex
RW
32 bits
• Bits 31..0 – KeyReg3[31:0]
Key used in E_functions
Note:
Default Value: 00000000 hex
KeyReg4
addr: 6000B0 hex
46
RW
32 bits
AT76C551
1612D–08/01
AT76C551
Voice CODEC
Register Set
The Voice CODEC has four modes: CVSD, A-law, U-law and pass through where data is
transferred out through the digital interface. The module has independent receive and transmit
paths – each having a dedicated 32-byte FIFO.
VC_CTRL: Voice CODEC Analog Control
addr: 500000 hex
R/W
13 bits
• Bits 15..13 – Reserved
• Bit 12 – Rate
1= 64 kHz sampling rate
0= 8 kHz sampling rate
• Bits 11..10 – ADC_TC[1:0]
Type of AD conversion:
00 = Reserved
01 = Reserved
10 = Reserved
11 = Conversion initiated by 64/8 kHz clock
• Bit 9 – ADC_SC
Start conversion
• Bit 8 – ADC_EN: Enables ADC Converter
• Bit 7 – DAC_EN: Enables DAC Converter
• Bit 6 – DIG_INT: Enables Digital Interface
• Bit 5 – AL_DEC: Enables A-law Decoder
• Bit 4 – UL_DEC: Enables U-law Decoder
• Bit 3 – CV_DEC: Enables CVSD Decoder
• Bit 2 – AL_ENC: Enables A-law Encoder
• Bit 1 – UL_ENC: Enables U-law Encoder
• Bit 0 – CV_ENC: Enables CVSD encoder
Note:
Default Value: 0000 hex
Before conversions can take place the ADC and the DAC must be powered up. The ADC
requires 10 µs power-up time while the DAC 20 µs power-up time. During this time, the coding
modules must not be enabled. After powering up, the ADC/DAC conversion rate and the
required coding mode can be programmed.
VCDI_MODE: Voice CODEC Digital Interface Control
addr: 500004 hex
R/W
16 bits
Bits 15..6 – Reserved
• Bit 5 – ENA: Enables Serial Transmission
1= Enabled
0= Not enabled
• Bit 4 – OSF: Output Sample Format
1 = 16 bits
0 = 8 bits
47
1612D–08/01
• Bit 3 – DIR: Audio Clock Direction
1= Digital interface is slave
0= Digital interface is master
• Bit 2 – BDIV: Divides Audio Clock
Divides Audio Clock (depending on mode[4] bit) in order to drive the bit clock.
{mode[2], mode[4]} = 00, abclk = aclk/32
{mode[2], mode[4]} = 01, abclk = aclk/16
{mode[2], mode[4]} = 10, abclk = aclk/24
{mode[2], mode[4]} = 11, abclk = aclk/12
• Bits 1..0 – M_CDC[1:0]: Master Audio Clock Divider Control
00 = aclk is driven by mclock
01 = aclk = mclock/2
10 = aclk = mclock/4
11 = aclk = mclock/8
Note:
Default Value: 0000 hex
The digital interface is able to operate either as a master or a slave. When operating as a master, a 6.144 MHz clock is used, while in slave mode, the clock available at the ABCLK_IN pin is
used to drive the digital interface.
VC_INT_CTRL_STATUS: Voice CODEC Interrupt Control Status
addr: 500008 hex
R/W
16 bits
• Bits 15..4 – Reserved
• Bit 3 – EN_RC_I:Enable Voice CODEC Transmit FIFO Interrupt
• Bit 2 – EN_TR_I: Enable Voice CODEC Receive FIFO Interrupt
• Bit 1 – VCRC_S: Transmit FIFO Interrupt Status
• Bit 0 – VCTR_S: Receive FIFO Interrupt Status
Note:
Default Value: 0000 hex
VC_RxFifoCtrl: Voice CODEC Receive FIFO Control Status Register ()
addr: 50000C hex
R/W
16 bits
• Bit 15 – EMPTY
• Bit 14 – ALEMPTY
1 byte left to be transmitted.
• Bit 13 – FULL
• Bit 12 – RESFF: Reset Receive FIFO
• Bits 11..10 – Reserved
• Bits 8..5 – RCFTR[4:0]: Receive FIFO Threshold
• Bits 1..0 – LEVEL[4:0]: Receive FIFO Level
Note:
48
Default Value: 0000 hex
AT76C551
1612D–08/01
AT76C551
VC_RxReadPort: Voice CODEC Receive FIFO Read Port
addr: 500010 hex
R
8 bits
• Bits 7..0 – VC_RXD[7:0]: Receive Data
Note:
Default Value: 00 hex
VC_TxFifoCtrl: Voice CODEC Transmit FIFO Control Status Register
addr: 500014 hex
R/W
16 bits
• Bit 15 – EMPTY
• Bit 14 – ALEMPTY
1 byte left to be transmitted.
• Bit 13 – FULL
• Bit 12 – RESFF: Reset Transmit FIFO
• Bits 11..10 – Reserved
• Bits 9..5 – TXFTR[4:0]: Transmit FIFO threshold
• Bits 4..0 – LEVEL[4:0]: Transmit FIFO Level
Note:
Default Value: 0000 hex
VC_TxWritePort: Voice CODEC Transmit FIFO Write Port
addr: 500018 hex
W
8 bits
• Bits 7..0 – VC_RXD[7:0]: Transmit Data
Note:
Default Value: 00 hex
49
1612D–08/01
USB Registers – USB Wrapper Registers
The following registers are found in the USB wrapper block and control the overall performance of the USB hardware block.
They provide status information, allow interrupt masking and DMA programming for fast data transfers between the
DPRAM and the endpoint buffers.l
Table 4. Summary of the USB Cell Specific Registers
Register
Address
Default
Function
SLP_MD_EN
5000000h
00000000
Sleep mode control
GLB_IRQ_MSK
5000004h
00000000
Global Interrupt Master register
IRQ_STAT
5000008h
00000000
Master Interrupt Status
RES_STAT
500000Ch
00000000
Reset Status
DEF_EP_PAIRS
5000010h
00000000
Endpoint Pairs Definition
USB_RDMA_LEN
500001Ch
00000000
Receive DMA packet length requested
USB_DMA_FADD
5000020h
00000000
DMA target Endpoint address
USB_RDMA_LENR
5000024h
00000000
Receive DMA packet length transferred
USB_RDMA_EN
5000028h
00000000
Receive DMA Enable
USB_DMA_RADD
5000040h
00000000
RAM target address for DMA cycles
USB_TDMA_LEN
5000044h
00000000
Transmit DMA packet length requested
USB_TDMA_LENR
5000048h
00000000
Transmit DMA packet length transferred
USB_TDMA_EN
500004Ch
00000000
Transmit DMA Enable
FRM_NUM_H
50003F4h
xxxxx000
Frame Number High Register
FRM_NUM_L
50003F0h
xxxxx000
Frame Number Low Register
GLB_STATE
50003ECh
xxxxx000
Global State Register
SPRSR
50003E8h
xxxxx000
Suspend/Resume Register
SPRSIE
50003E4h
xxxxxx00
Suspend/Resume Interrupt Enable Register
UISR
50003DCh
00000000
USB Interrupt Status Register
UIAR
50003D4h
xxxxx000
USB Interrupt Acknowledge Register
UIER
50003CCh
xxxxx000
USB Interrupt Enable Register
FADDR
50003C8h
00000000
Function Address Register
ENDPPGPG
50003C4h
00000000
Function Endpoint Ping-pong Register
ECR0
50003BCh
0xxx0000
Endpoint0 Control Register
ECR1
50003B8h
0xxx0000
Endpoint1 Control Register
ECR2
50003B4h
0xxx0000
Endpoint2 Control Register
ECR3
50003B0h
0xxx0000
Endpoint3 Control Register
ECR4
50003ACh
0xxx0000
Endpoint4 Control Register
ECR5
50003A8h
0xxx0000
Endpoint5 Control Register
ECR6
50003A4h
0xxx0000
Endpoint6 Control Register
CSR0
500037Ch
x1110000
Endpoint0 Control and Status Register
CSR1
5000378h
x1110000
Endpoint1 Control and Status Register
50
AT76C551
1612D–08/01
AT76C551
Table 4. Summary of the USB Cell Specific Registers (Continued)
Register
Address
Default
Function
CSR2
5000374h
x1110000
Endpoint2 Control and Status Register
CSR3
5000370h
x1110000
Endpoint3 Control and Status Register
CSR4
500036Ch
x1110000
Endpoint4 Control and Status Register
CSR5
5000368h
x1110000
Endpoint5 Control and Status Register
CSR6
5000364h
x1110000
Endpoint6 Control and Status Register
FDR0
500033Ch
00000000
FIFO 0 Data Register
FDR1
5000338h
00000000
FIFO 1 Data Register
FDR2
5000334h
00000000
FIFO 2 Data Register
FDR3
5000330h
00000000
FIFO 3 Data Register
FDR4
500032Ch
00000000
FIFO 4 Data Register
FDR5
5000328h
00000000
FIFO 5 Data Register
FDR6
5000324h
00000000
FIFO 6 Data Register
FBYTE_CNT0_L
50002FCh
00000000
Byte Count FIFO 0 Register [7:0]
FBYTE_CNT1_L
50002F8h
00000000
Byte Count FIFO 1 Register [7:0]
FBYTE_CNT2_L
50002F4h
00000000
Byte Count FIFO 2 Register [7:0]
FBYTE_CNT3_L
50002F0h
00000000
Byte Count FIFO 3 Register [7:0]
FBYTE_CNT4_L
50002ECh
00000000
Byte Count FIFO 4 Register [7:0]
FBYTE_CNT5_L
50002E8h
00000000
Byte Count FIFO 5 Register [7:0]
FBYTE_CNT6_L
50002E4h
00000000
Byte Count FIFO 6 Register [7:0]
FBYTE_CNT0_H
50002BCh
00000000
Byte Count FIFO 0 Register [10:8]
FBYTE_CNT1_H
50002B8h
00000000
Byte Count FIFO 1 Register [10:8]
FBYTE_CNT2_H
50002B4h
00000000
Byte Count FIFO 2 Register [10:8]
FBYTE_CNT3_H
50002B0h
00000000
Byte Count FIFO 3 Register [10:8]
FBYTE_CNT4_H
50002ACh
00000000
Byte Count FIFO 4 Register [10:8]
FBYTE_CNT5_H
50002A8h
00000000
Byte Count FIFO 5 Register [10:8]
FBYTE_CNT6_H
50002A4h
00000000
Byte Count FIFO 6 Register [10:8]
51
1612D–08/01
SLP_MD_EN: Sleep Mode Control
addr 5000000h
R/W
8 bits
• Bits 7..6 – Reserved
• Bit 5 – SLP
Put the USB module in sleep mode
• Bits 4..0 – Reserved
Note:
Default: 00h
GLB_IRQ_MSK: Global Interrupt Master Register
addr 5000004h
R/W
16 bits
• Bits 15..11 – Reserved
• Bit 10 – TDMA_IEN:Transmit DMA Interrupt Enable
• Bit 9 – RDMA_IEN: Receive DMA Interrupt Enable
• Bit 8 – URES_INT
When this bit is high, the USB reset interrupts are enabled
• Bit 7 – Reserved
• Bit 6 – INT_EN
When this bit is high, it allows the INTERRUPT line from the USB protocol handler to cause
interrupts
• Bits 5..2 – Reserved
• Bit 1 – SUSP_INT
If this bit is high, an interrupt is generated when the USB enters suspend mode.
• Bit 0 – RSM_INT
If this bit is high, an interrupt is generated when the USB enters resume mode.
Note:
Default: 00h
These registers allow interrupt masking for the following interrupt sources:
1. INTERRUPT line from USB protocol handler.
2. USB reset (USB_RES). A USB reset signal is asserted from USB protocol handler
when the USB host requests it by forcing both the differential USB network signals to
low level.
3. Suspend: A USB device enters in suspend only when requested by the USB host
through bus inactivity for at least 3 ms.
4. Resume: a J to K state change on the USB port signals resume.
IRQ_STAT: Master Interrupt Status
addr 5000008h
R
16 bits
• Bits 15..11 – Reserved
• Bit 10 – TDMA_TC: Transmit DMA Complete
• Bit 9 – RDMA_TC: Receive DMA Complete
• Bit 8 – SUS_RES_ST
Indicates the current status of the USB block. When this bit is high, the USB is in Suspend
mode while, when low, the USB has resumed.
• Bit 7 – Reserved
52
AT76C551
1612D–08/01
AT76C551
• Bit 6 – INTER_LINE
The INTERRUPT line from the USB protocol handler is asserted.
• Bits 5..2 – Reserved
• Bit 1 – SUSP
When this bit is high, the USB has entered the suspend state.
• Bit 0 – RSM
When this bit is high, the USB has entered the resume state.
Note:
Default: 00h
RES_STAT: Reset Status
addr 500000Ch
R/W
8 bits
• Bits 7..5 – Reserved
• Bit 4 – USB_RES
Set when USB module enters reset state.
• Bits 3..0 – Reserved
Note:
Default: 00h
DEF_EP_PAIRS: Endpoint Pairs Definition
addr 5000010h
R/W
8 bits
• Bits 7...4 – Reserved
• Bit 3 – EP3_EN_PAIR
When this bit is high, the EP3 supports an OUT and an IN endpoint. In this case the EP6 is used as the
IN endpoint.
• Bit 2 – EP2_EN_PAIR
When this bit is high, the EP2 supports an OUT and an IN endpoint. In this case the EP5 is used as the
IN endpoint.
• Bit 1 – EP1_EN_PAIR
When this bit is high, the EP1 supports an OUT and an IN endpoint. In this case the EP4 is used as the
IN endpoint
• Bit 0 – Reserved
Note:
Default: 00h
This 3-bit register defines which endpoints support both IN and OUT connections. Only the
endpoints 1 - 3 support endpoint pair addressing. There is a correspondence between endpoints 1 to 3 and endpoints 4 to 6, e.g. endpoint 1 pair addressing is enabled, endpoint 4
becomes the pair endpoint. In this case, the endpoint 1 should be configured as an OUT endpoint, while endpoint 4 is an IN endpoint.
This correspondence is transparent to the USB host which considers that there are two endpoints at address 0x01, an OUT.
USB_RDMA_LEN: Receive DMA Packet Length Requested
addr 500001Ch
R/W
16 bits
• Bits 15..9 – Reserved
• Bits 8..0 – URDL[8:0]: USB Receive DMA Length
Note:
Default: 00h
ARM programs this register with the number of bytes to be transferred during the next DMA.
53
1612D–08/01
USB_DMA_FADD: DMA Target Endpoint Address
addr 5000020h
R/W
16 bits
• Bits 7..0 – FAD[7:0]: USB Target Endpoint FIFO Address
Note:
Default: 00h
This register is programmed with the address of the Endpoint FIFO Register of the USB block
that the DMA operation is going to transfer bytes from/to. The addresses of the six endpoints
supported by the USB block are listed in Table 5.
Table 5. DMA Target Endpoint Addresses
Address
Target
0xCF
FDR0 Function Endpoint0
0xCE
FDR1 Function Endpoint1
0xCD
FDR2 Function Endpoint2
0xCC
FDR3 Function Endpoint3
0xCB
FDR4 Function Endpoint4
0xCA
FDR5 Function Endpoint5
0xC9
FDR6 Function Endpoint6
USB_RDMA_LENR: Receive DMA Packet Length Transferred
addr 5000024h
R
8 bits
• Bits 7..0 URDL[7:0]: Receive DMA Transferred Length
Note:
Default: 00h
The contents of this register after the end of a DMA reflect the number of bytes that have been
transferred.
USB_RDMA_EN
addr 5000028h
R/W
8 bits
Bits 7..2 – Reserved
• Bit 1 – RDMAEN
Activates receive DMA (DMA for an OUT endpoint). This bit is reset after the completion of the
DMA.
• Bit 0 – Reserved
Note:
Default: 00h
USB_DMA_RADD: RAM Target Address for DMA Cycles
addr 5000040h
R/W
32 bits
• Bits 31..24 – Reserved
• Bits 23..0 – RAD[23:0]
Target address in SRAM for DMA transfers.
Note:
Default: 00h
USB_TDMA_LEN: Transmit DMA Packet Length Requested
addr 5000044h
54
R/W
16 bits
AT76C551
1612D–08/01
AT76C551
• Bits 15..9 – Reserved
• Bits 8..0 – UTDL[8:0]: USB Transmit DMA Length
Note:
Default: 00h
The ARM programs this register with the number of bytes to be transferred during the next
DMA.
USB_TDMA_LENR: Transmit DMA Packet Length Transferred
addr 5000048h
R
8 bits
• Bits 7..0 UTDL[7:0]: Transmit DMA Transferred Length
Note:
Default: 00h
After the end of a DMA, the contents of this register reflect the number of bytes that have been
transferred from main system memory to the transmit FIFO.
USB_TDMA_EN: Transmit DMA Enable
addr 500004Ch
R/W
8 bits
Bits 7..2 – Reserved
• Bit 1 – Reserved
• Bit 0 – TDMAEN
Activates transmit DMA (DMA for an IN endpoint)
Note:
Default: 00h
This bit is reset after the completion of the DMA.
FRM_NUM_H: Frame Number High Register
addr 50003F4h
W
8 bits
Bits 7..3 – Reserved
• Bits 2..0 – FCH[10:8]
This is the upper 3 bits of the 11-bit frame number of SOF packet.
Note:
Default: 00h
FRM_NUM_L: Frame Number Low Register
addr 50003F0h
W
8 bits
Bits 7..3 – Reserved
• Bits 2..0 FCL[7:0]
This is the lower 8 bits of the 11-bit frame number of SOF packet.
Note:
Default: 00h
GLB_STATE: Global State Register
addr 50003ECh
8 bits
• Bits 7..4 – Reserved
• Bit 3 W – RSMINPR
Set by the hardware when a Resume is send in the USB bus during Remote Wake-up feature
(13 ms).
55
1612D–08/01
• Bit 2 R – RMWUPE
Remote Wake-up Enable. This bit is set if the Host enables the function’s remote wake-up
feature.
• Bit 1 R – CONFG
Configured. This bit is set by the firmware after a valid SET_CONFIGURATION request is
received. It is cleared by a reset or by a SET_CONFIGURATION with a value of 0.
• Bit 0 R – FADD Enable: Function Address Enable
This bit is set by firmware after the status phase of a SET_ADRESS request transaction. The
Host will use the new address starting at the next transaction.
Note:
Default: 00h
SPRSR: Suspend/Resume Register
addr 50003E8h
W
8 bits
• Bits 7..4 – Reserved
• Bit 3 – SOF INT: Start Of Frame Interrupt
• Bit 2 – EXT RSM: Received External Resume
The USB hardware sets this bit to denote an External Resume Interrupt. If RMWUPE = 1, a
RESUME signal is send in USB BUS.
• Bit 1 – RCVD RSM: Received Resume
The USB hardware sets this bit when a USB resume signaling is detected at its port.
• Bit 0 – SUSP: Suspend
The USB hardware sets this bit when it detects no SOF for 3 ms. The USB macro enters in
SUSPEND MODE, the processor has to go in SLEEP mode.
Note:
Default: x0h
SPRSIE: Suspend/Resume Interrupt Enable Register
addr 50003E4h
R
8 bits
Bits 7..4 – Reserved
• Bit 3 – SOF IE: Enable SOF Interrupt
• Bit 2 – EXTRSM IE: Enable External Resume Signaling Interrupt
1 = Enable
0 = Disable
• Bit 1 – RCVDRSM IE: Enable BUS Resume Signaling Interrupt
1 = Enable
0 = Disable
• Bit 0 – SUSP IE: Enable Suspend Signaling Interrupt
1 = Enable
0 = Disable
Note:
Default: x0h
UISR: USB Interrupt Status Register
addr 50003DChW8 bits
56
AT76C551
1612D–08/01
AT76C551
• Bit 7 – Reserved
• Bit 6 – EP6 INT: Endpoint 6 Interrupt
• Bit 5 – EP5 INT: Endpoint 5 Interrupt
• Bit 4 – EP4 INT: Endpoint 4 Interrupt
• Bit 3 – EP3 INT: Endpoint 3 Interrupt
• Bit 2 – EP2 INT: Endpoint 2 Interrupt
• Bit 1 – EP1 INT: Endpoint 1 Interrupt
• Bit 0 – EP0 INT: Endpoint 0 Interrupt
Note:
Default: 00h
The function interrupt bits will be set by the hardware whenever the following bits in the corresponding Endpoint’s Control and Status Register are modified by the USB hardware:
1. RX OUT Packet is set (Control and OUT Endpoint).
2. TX Packet Ready is cleared (Control and IN Endpoint).
3. RX SETUP is set (Control Endpoints only).
4. TX Complete is set (Control Endpoints only).
UIAR: USB Interrupt Acknowledge Register
addr 50003D4h
W
8 bits
• Bit 7 – Reserved
• Bit 6 – EP6 INTA: Endpoint 6 Interrupt Acknowledge
• Bit 5 – EP5 INTA: Endpoint 5 Interrupt Acknowledge
• Bit 4 – EP4 INTA: Endpoint 4 Interrupt Acknowledge
• Bit 3 – EP3 INTA: Endpoint 3 Interrupt Acknowledge
• Bit 2 – EP2 INTA: Endpoint 2 Interrupt Acknowledge
• Bit 1 – EP1 INTA Endpoint 1 Interrupt Acknowledge
• Bit 0 – EP0 INTA: Endpoint 0 Interrupt Acknowledge
Note:
Default: 00h
The bits in this register are used to indirectly clear the bits of the UISR. A bit in the UISR is
cleared if a 1 is written in the corresponding bit of UIAR.
UIER: USB Interrupt Enable Register
addr 50003CCh
R/W
8 bits
• Bit 7 – SOFIE: Enable SOF Interrupt
• Bit 6 – EP6 IE: Enable Endpoint 6 Interrupt
• Bit 5 – EP5 IE: Enable Endpoint 5 Interrupt
• Bit 4 – EP4 IE: Enable Endpoint 4 Interrupt
• Bit 3 – EP3 IE: Enable Endpoint 3 Interrupt
• Bit 2 – EP2 IE: Enable Endpoint 2 Interrupt
• Bit 1 – EP1 IE: Enable Endpoint 1 Interrupt
• Bit 0 – EP0 IE:Enable Endpoint 0 Interrupt
Note:
Default: 00h
The bits in this register has the following meaning:
1 = Enable interrupt
57
1612D–08/01
0 = Disable interrupt
FADDR: Function Address Register
addr 50003C8h
R
8 bits
• Bit 7 – FEN: Function Enable
• Bits 6..0 – FADD[6:0]: Function Address
Note:
Default: 00h
The FIU address register contains the function address assigned by the Host. This Function
Address Register must be programmed by the processor once it has:
1. Received a SET_ADDRESS command from the Host.
2. Completed the status phase of the transaction. After power up or reset this register will
contain the value of 0x00.
The Function Enable bit (FEN) allows the firmware to enable or disable the function Endpoints.
The firmware will set this bit after receipt of a reset through the USB hardware. Once this bit is
set the USB hardware passes packets to and from the Host.
ENDPPGPG: Endpoint Ping-pong Enable Register
addr 50003C4h
R
8 bits
Bit 7 – Reserved
• Bit 6 – PG_EP6_EN:Enable Endpoint 6 Ping-pong
• Bit 5 – PG_EP5_EN: Enable Endpoint 5 Ping-pong
• Bit 4 – PG_EP4_EN: Enable Endpoint 4 Ping-pong
• Bit 3 – PG_EP3_EN: Enable Endpoint 3 Ping-pong
• Bit 2 – PG_EP2_EN: Enable Endpoint 2 Ping-pong
• Bit 1 – PG_EP1_EN: Enable Endpoint 1 Ping-pong
• Bit 0 – PG_EP0_EN: Enable Endpoint 0 Ping-pong
Endpoint Control Registers
addr: see below
8 bits
Endpoint Control Registers
addr: see below 8 bits
• Bit 7 R – EPEDS: Endpoint Enable/Disable
0 = Disable Endpoint
1 = Enable Endpoint
• Bit 6 – Reserved
• Bits 5..4 – Reserved and set to 0
• Bit 3 W – DTGLE: Data Toggle
Identifies DATA0 or DATA1 packets.
• Bit 2 R – EPDIR: Endpoint Direction
Only applicable for non-control Endpoints (0 = Out, 1 = In).
• Bits 1..0 R – EPTYPE: Endpoint Type
These bits represent the type of the Endpoint (see Tables 6, 7, 8 and 9).
58
AT76C551
1612D–08/01
AT76C551
Table 6. Endpoint Type
Note:
Bit 1
Bit 0
Type
0
0
Control
0
1
Isochronous
1
0
Bulk
1
1
Interrupt
Default: 00h
Table 7. Endpoint Control Registers’ Address
Address
Register
D0003BCh
ENDP0_CNTR Endpoint 0
D0003B8h
ENDP1_CNTR Endpoint 1
D0003B4h
ENDP2_CNTR Endpoint 2
D0003B0h
ENDP3_CNTR Endpoint 3
D0003ACh
ENDP4_CNTR Endpoint 4
D0003A8h
ENDP5_CNTR Endpoint 5
D0003A4h
ENDP6_CNTR Endpoint 6
59
1612D–08/01
Table 8. Endpoint Control and Status Register
addr: see below
8 bits
Bit
Bit Name
Function
Description of Bit
Bit 7
R
Control Direction
Set by the processor to indicate to the
USB hardware the direction of a control
transfer.
0 = control write. No data stage
1 = control read
This bit is used by Control Endpoints only.
This bit is only used by Control Endpoints. It is used
by firmware to indicate the direction of a control
transfer. It is written by the firmware after it receives a
RX SETUP interrupt. The hardware uses this bit to
determine the status phase of a control transfer.
Bit 6
R
Data End
Indicates that the processor has placed
the last data packet in FIFO0, or that the
processor has processed the last data
packet it expects from the Host.
This bit is used only by Control Endpoints. Together
with bit 1 (TX Packet Ready) it will signal the USB
hardware to go to the STATUS phase after the packet
currently residing in the FIFO is transmitted.
After the hardware completes the STATUS phase it
will interrupt the processor without clearing this bit.
CAUTION: Since the Data End bit signals “END OF
TRANSACTION” any other Endpoint controller bit set
after the DATA END is not considered by the Pingpong controller. For this reason, Tx_Packet Ready
should be set before Data_End.
Bit 5
R
Force Stall
Set by the processor to indicate a stalled
Endpoint. The hardware will send a
STALL handshake as a response to the
next IN or OUT token.
The processor sets this bit if it wants to force a STALL
after an unsupported request is received, or if the
Host continues to ask for data after the data is
exhausted. This bit should be set at the end of any
data phase or setup phase.
Bit 5
R/C
TX Packet Ready
Indicates that the processor has loaded
the FIFO with a packet of data. This bit is
cleared by hardware after the USB Host
acknowledges the packet. For ISO
Endpoints, this bit is cleared
unconditionally after the data is sent.
This bit is used for the following operations:
Control read transactions by a Control Endpoint.
IN transactions with DATA1 PID to complete the
status phase for a Control Endpoint, when this bit
is "0”, but bit Data End (bit 4) is "1”.
By a BULK IN or ISO IN or INT IN Endpoint.
The processor should write to the FIFO only if this bit
is cleared. The bit will be set after it has completed
writing the data. The data can be a zero length. For a
Control Endpoint the processor should write to the
FIFO only while bit 6 (TX Packet Requested) is set.
The hardware clears this bit after it receives an ACK.
If the interrupt is enabled, clearing this bit by the
hardware, it causes an interrupt to the processor.
Bit 3
W
Stall Snd
The USB hardware sets this bit after a
STALL is sent to the Host.
Indicates End of data stage for the Control
Endpoint only.
The USB hardware sets this bit after a STALL has
been sent. The firmware uses this bit when
responding to a USB GetStatus Request.
60
AT76C551
1612D–08/01
AT76C551
Table 8. Endpoint Control and Status Register (Continued)
addr: see below
8 bits
Bit
Bit Name
Function
Description of Bit
Bit 2
W
RX Setup
The USB hardware sets this bit when it
receives a valid setup packet from the
Host. This bit is used by Control Endpoints
only.
This bit is used only by Control Endpoints to signal
the processor that the USB hardware has received a
valid SETUP packet, and that the data portion of the
packet is stored in the FIFO. The hardware will clear
all other bits in this register and will set RX SETUP. If
the corresponding interrupt is enabled, the processor
will be interrupted when RX SETUP is set. After the
data has been completely read from the FIFO the
firmware should clear this bit.
Bit 1
W
RX OUT Packet
Indicates that the USB hardware has
decoded an OUT token and that the data
is in the FIFO.
The USB hardware sets this bit after it has stored the
data of an OUT transaction in the FIFO. While this bit
is set, the hardware will NAK all OUT tokens. For
Control Endpoints only, bit 7 of this register, Enable
Control Write, has to be set for the hardware to
accept the OUT data. The USB hardware will not
overwrite the data in the FIFO except for an early
USB Setup Request. Bit RX OUT Packet is used for
the following operations:
Control write transactions by a Control Endpoint
OUT transaction with DATA1 PID to complete the
status phase of a control Endpoint.
By a BULK OUT or ISO OUT or INT OUT
Endpoint
Setting this bit causes an interrupt to the processor if
the interrupt is enabled. The firmware clears this bit
after the FIFO are read.
Bit 0
R
TX Complete
The hardware sets this bit to indicate to a
Control Endpoint that it has received an
ACK handshake from the Host.
This bit is used by hardware in a Control Endpoint to
signal to the processor that it has successfully
completed certain transactions. TX Complete is set at
the completion of a:
Control read data stage
Status stage without data stage
Status stage after a control write transaction
Note:
Default: 00h
Table 9. Endpoint Control and Status Register’s Address
Address
Register
D00037Ch
FCSR0 Endpoint 0
D000378h
FCSR1 Endpoint 1
D000374h
FCSR2 Endpoint 2
D000370h
FCSR3 Endpoint 3
D00036Ch
FCSR4 Endpoint 4
D000368h
FCSR5 Endpoint 5
D000364h
FCSR6 Endpoint 6
61
1612D–08/01
UART Register Set
In Table 10, the register file and its fields are briefly presented. A more detailed description is provided in the following
sections.
Table 10. UART Register File and Register Fields
Addr.
(hex)
Register
Bit-7
Bit-6
Bit-5
Bit-4
Bit-3
Bit-2
Bit-1
Bit-0
700000
US_RHR
X
X
X
X
X
X
X
X
700000
US_THR
X
X
X
X
X
X
X
X
700004
US_IER
Transmitter
empty
interrupt
Receive
time-out
interrupt
Parity
error
interrupt
Framing
error
interrupt
Overrun
error
interrupt
Receive
break
interrupt
Transmit
holding
register
Receive
holding
register
700008
US_FCR
RCVR
trigger
(MSB)
RCVR
trigger
(LSB)
0
0
DMA
mode
select
0
RCVR
FIFO
reset
FIFO
enable
70000C
US_PMR
Character
length
(MSB)
Character
length
(MSB)
Number of
stop bits
(MSB)
Number of
stop bits
(LSB)
Parity
mode
(PTM2)
Parity
mode
(PTM1)
Parity
type
(PT)
0
700010
US_MR
Channel
mode
(CHM1)
Channel
mode
(CHM0)
0
0
0
0
0
0
700014
US_CSR
Transmitter
empty
Receive
time-out
Parity
error
Framing
error
Overrun
error
Receive
break
Transmit
holding
register
ready
Receive
holding
register
ready
700018
US_CR
Rx
enable
Reset
status bit
Tx enable
Restart
time-out
Tx
teset
Rx
teset
Stop
break
Start
break
70001C
US_BL
MSB
LSB
700020
US_BM
MSB
LSB
700024
US_RTO
MSB
LSB
700028
US_TTG
MSB
LSB
70002C
US_MCI
DSR
RI
CD
CTS
DSR
change
RI change
CD
change
CTS
change
70002C
US_MCO
0
0
0
0
0
0
RTS
DTR
700030
US_MCC
0
LB RI
value
LB CD
value
MC Loop
back
enable
DSR
change
mask
RI change
mask
CD
change
mask
CTS
change
mask
62
AT76C551
1612D–08/01
AT76C551
US_RHR: Receive Holding Register
addr: 700000 hex
R
8 bits
• Bits 7..0 – US_RHR[7:0]
Received data
Note:
Default Value: 00 hex
US_THR: Transmit Holding Register
addr: 700000 hex
W
8 bits
• Bits 7..0 – US_THR[7:0]
Transmit data
Note:
Default Value: 00 hex
US_IER: Interrupt Enable Register
addr: 700004 hex
R/W
8 bits
• Bit 7 – TXEI: Transmitter Empty Interrupt
When set the interrupt is enabled. When both the Transmit Holding Register US_THR and the
Transmit Shift Register are empty and the I bit in Status Register SREG of the MCU is set, an
interrupt will occur.
• Bit 6 – RXTOI: Receive Time-out Interrupt
When set, the time-out interrupt is enabled. When the time-out period for the receiver has
passed and the I bit in the Status Register SREG of the MCU is set, an interrupt will occur.
• Bit 5 – PEI: Parity Error Interrupt
This bit when set enables the Parity Error interrupt. If the Parity Error bit of Control Status Register US_CSR is set, an interrupt will occur.
• Bit 4 – FEI: Framing Error Interrupt
This bit when set enables the Framing Error interrupt. If the Parity Error bit of Control Status
Register US_CSR is set, an interrupt will occur.
• Bit 3 – OEI: Overrun Error Interrupt
This bit when set enables the Overrun Error interrupt. If the Parity Error bit of Control Status
Register US_CSR is set, an interrupt will occur.
• Bit 2 – RBRI: Receive Break Interrupt
When set enables receive break interrupt. If a receive break condition is detected and both
this and the I bit of SREG of the MCU is set, an interrupt will occur.
• Bit 1 – THRI: Transmit Register Interrupt
When set indicates that the transmit ready interrupt is enabled. When the contents of the
Transmit Holding Register are transferred to the Transmit Shift Register and both this and the
I bit of SREG of the MCU are set, an interrupt occurs.
• Bit 0 – RHRI: Receive Holding Register Interrupt
When set, indicates that the Receive Holding Register interrupt is enabled. If the data loaded
in the Receive Holding Register (US_RHR) are not read or the trigger level has been reached,
an interrupt occurs, if this bit and the I bit of SREG of the MCU are set.
Note:
Default Value: 00 hex – The Modem Control Interrupts are controlled only from the US_MCC
register.
63
1612D–08/01
US_FCR: FIFO Control Register
addr: 700008 hex
R/W
8 bits
• Bits 7..6 RCVR[1:0]a; RCVR Trigger Bits
These bits indicate the minimum number of bytes required in the receive FIFO to generate a
receive ready interrupt.
• Bits 5..4 – Reserved
• Bit 3 – RDMA: DMA Mode Select.
When set the DMA is in burst mode according to the value in US_FCR. When it is cleared the
characters are read one byte each time.
• Bit 2 – Reserved
• Bit 1 – FRS: FIFO Reset
When set, resets the receive FIFO.
• Bit 0 – FEN: FIFO Enable
When set, enables the 16 byte receive FIFO.
Note:
Default Value: 00 hex
The trigger level is shown in Table 11.
Table 11. Trigger Level
Bit 7
Bit 6
Trigger Level
0
0
1
0
1
4
1
0
8
1
1
14
Protocol Mode Register (US_PMR)
US_PMR: Protocol Mode Register
addr: 70000C hex
R/W
8 bits
• Bits 7..6 – CHL[1:0]: Character Length
00: 5 bits
01: 6 bits
10: 7 bits
11: 8 bits
• Bits 5..4 – SBN[1:0]: Number of Stop Bits
00: 1-bit time
01: 1- ,5-bit time
10: 2-bit time
11: Reserved
• Bits 3..2 – PM[1:0]: Parity Mode
00: Normal parity
01: Parity forced
64
AT76C551
1612D–08/01
AT76C551
10: No parity
11: Multi drop
• Bit 1 – RES: Parity Type
In normal parity mode this bit is used for the determination of parity. In force parity mode this
bit is forced to be the parity bit.
• Bit 0 – LSB: Reserved
Note:
Default Value: 00 hex
US_MR: Mode Register
addr: 700010 hex
R/W
8 bits
• Bits 7..6 – CHM[1:0] Channel Mode
00: Normal
01: Automatic echo
10: Local loop-back
11: Remote loop-back
• Bits 5..0 – Reserved
Note:
Default Value: 00 hex
US_CSR: Control Status Register
addr: 700014 hex
R/W
8 bits
• Bit 7 – TXE: Transmitter Empty
When set, this indicates that both the Transmit Holding Register US_THR and Transmit Shift
Register are empty.
• Bit 6 – RXTO: Receive Time-out
When set, this indicates that a receive time-out condition has occurred.
• Bit 5 – PE: Parity Error
When set, this indicates that a parity error has occurred.
• Bit 4 – FE: Framing Error
When set, this indicates that a framing error has occurred (start or stop bits has been received
with errors).
• Bit 3 – OE: Overrun Error
When set indicates that an overrun error has occurred. This means that the Receive Holding
Register is being written with a new value, while the previous one has not been read.
• Bit 2 – RBR: Receive Break
Receive Break. When set indicates that a break condition has occurred during reception
• Bit 1 – THR: Transmit Holding Register Ready
When set, this indicates that the contents of the Transmit Holding Register have been transferred to the Transmit Shift Register.
65
1612D–08/01
• Bit 0 – RHR: Receive Holding Register Ready
When set indicates that the Receive Holding Register is full. In order to clear this bit you must
empty the RHR (or the FIFO if it is enabled) by reading the US_RHR register.
Note:
Default Value: 00 hex
US_CR: Control Register
addr: 700018 hex
R/W
8 bits
• Bit 7 – RXEN: Enable
When set, this enables the receiver block of UART.
• Bit 6 – RLES: Reset Line Error Status bits
When set, this resets the PE, FE, OE bits of US_CSR register.
• Bit 5 – TXEN: Tx Enable
When set, this enables the transmitter block of UART.
• Bit 4 – RSTO: Restart Time-out
When set, this resets the time-out counter for a new time-out period.
• Bit 3 – TXRS: Tx Reset
• When set, this resets the transmit logic.
• Bit 2 – RXRS: Rx Reset
When set, this resets the receive logic.
• Bit 1 – SPB: Stop Break
Break command to the transmit logic. When set, this stops break condition.
• Bit 0 – STB: Start Break
Break command to the transmit logic. When set, this starts break condition.
Note:
Default Value: 00 hex
US_BL: Low Byte, Baud Rate Register
addr: 70001C hex
R/W
8 bits
• Bits 7..0 – US_BL[7:0]
Baud rate generator division ratio low. The main system clock is divided by the number contained in US_BL and US_BM, to provide the USART clock (which is 16 times the actual serial
data rate).
Note:
Default Value: 00 hex
US_BM: High Byte, Baud Rate Register
addr: 700020 hex
R/W
8 bits
• Bits 7..0 – US_BM[7:0]
Baud rate generator division ratio high.
Note:
66
Default Value: 00 hex
AT76C551
1612D–08/01
AT76C551
Table 12. Baud Rate Generation Example (Internal UART Clock = 14,76923 MHz)
Baud Rate
US_BM (hex)
US_BL (hex)
Error %
100
24
00
0.16
200
12
00
0.16
400
09
00
0.16
600
06
00
0.16
1200
03
00
0.16
2400
01
80
0.16
4800
00
C0
0.16
9600
00
60
0.16
19200
00
30
0.16
28800
00
20
0.16
38400
00
18
0.16
57.6K
00
10
0.16
115.2K
00
08
0.16
230.4K
00
04
0.16
307.2K
00
03
0.16
460.8K
00
02
0.16
921.6K
00
01
0.16
US_RTO: Receiver Time-out Register
addr: 700024 hex
R/W
8 bits
• Bits 7..0 – US_RTO[7:0]
This register contains the maximum period, for which the UART can wait before a character
arrives, during the time-out function. This function is disabled when this register is zero. The
value of register US_RTO represents bit periods
Note:
Default Value: 00 hex
US_TTG: Transmitter Time Guard Register
addr: 700028 hex
R/W
8 bits
• Bits 7..0 – US_TTG[7:0]
The value of this register indicates the delay (in bit periods) that an active transmitter has to
interpose between two consecutive character transmissions.
Note:
Default Value: 00 hex
US_MCI Modem Control Inputs
addr: 70002C hex
R
8 bits
• Bit 7 – DSR: Data Set Ready
Active high. This bit is the compliment of the DSR input pin.
• Bit 6 – RI: Ring Indicator
Active high. This bit is the compliment of the RI input pin.
67
1612D–08/01
• Bit 5 – CD: Carrier Detect
Active high. This bit is the compliment of the CD input pin.
• Bit 4 – CTS: Clear To Send
Active high. This bit is the compliment of the CTS input pin.
• Bit 3 – DSR Change
Active high
Logic 0: No DSR change
Logic 1: The DSR input pin has changed state since the last time it was read. An interrupt will
be generated.
• Bit 2 – RI: Ring Indicator Change
Active high
Logic 0: No RI change
Logic 1: The RI input pin has changed state since the last time it was read. An interrupt will be
generated.
• Bit 1 – CD: Change
Active high
Logic 0: No CD change
Logic 1: The CD input pin has changed state since the last time it was read. An interrupt will be
generated.
• Bit 0 – CTS Change
Active high
Logic 0: No CTS change
Logic 1: The CTS input pin has changed state since the last time it was read. An interrupt will
be generated.
Note:
Default Value: 00 hex
US_MCO: Modem Control Outputs
addr: 70002C hex
W
8 bits
• Bits 7..5 – Reserved
• Bit 1 – RTS
Control RTS output pin:
Logic 1: Force RTS output pin to a logic
Logic 0: Force RTS output pin to a logic 0
• Bit 0 – DTR
Control DTR output pin:
Logic 1: Force DTR output pin to a logic 1
Logic 0: Force DTR output pin to a logic 0
Note:
68
Default Value: 00 hex
AT76C551
1612D–08/01
AT76C551
US_MCC: Modem Control Register
addr: 700030 hex
R/W
8 bits
• Bit 7 – Reserved
• Bit 6 – LB RI Value
The compliment of the value of RI input, when Modem Control Loop Back mode is enabled.
• Bit 5 – LB CD Value
The compliment of the value of CD input, when Modem Control Loop Back mode is enabled.
• Bit 4 – MC LB EN: Modem Control Loop Back Mode Enable
• Bit 3 – DSR Change Mask
This bit when set enables the DSR change interrupt. If the DSR change bit of Modem Control
Input Register US_MCI is set, then an interrupt will occur.
• Bit 2 – RI Change Mask
This bit when set enables the RI change interrupt. If the RI change bit of Modem Control Input
Register US_MCI is set, then an interrupt will occur.
• Bit 1 – CD Change Mask
This bit when set enables the CD change interrupt. If the CD change bit of Modem Control
Input Register US_MCI is set, then an interrupt will occur.
• Bit 0 – CTS Change Mask
This bit when set enables the CTS change interrupt. If the CTS change bit of Modem Control
Input Register US_MCI is set, then an interrupt will occur.
Note:
Default Value: 00 hex
The low nibble of the Modem-control register is the Modem Control interrupt mask register
(see US_MCI).
Note:
US_IER cannot control the interrupts from modem control logic.
The high nibble is used to control the Modem Control Loop-back mode. If MC Loop Back
enable bit is set, then the US_MCC bits 5 - 6 control the values of CD and RI inputs (see and
US_MCI bits 5 - 6 and 1 - 2).
When MC Loop-back mode is enabled, then input pins RI, CD, DSR, CTS are assigned the
following values:
RI
bit 6 of register US_MCC (inverted)
CD
bit 5 of register US_MCC (inverted)
DSR
pin DTR
CTS
pin RTS
69
1612D–08/01
General
Purpose
Registers
Power Down
addr: D00000 hex
R/W
6 bits
• Bit 5 – VCPU: VC Power Up
• Bit 4 – UARTPU: UART Power Up
• Bit 3 – USBPU: USB Power Up
• Bit 2 – BDPRPD: BT Baseband Power Down
• Bit 1 – Reserved
• Bit 0 – ARMSPD: ARM Speed
Note:
Default Value: 00 hex
Module Reset
addr: D00004 hex
R/W
5 bits
• Bit 4 – PCMCIARES: PCMCIA Core Reset
• Bit 3 – USBRES: USB Reset
• Bit 2 – VCRES: VC Reset
• Bit 1 – UARTRES: UART Reset
• Bit 0 – BTRES: BT Baseband Reset
Note:
Default Value: 00 hex
USB Pad Enable
addr: D00008 hex
R/W
• Bit 2 – USBPDEN: USB Pad Enable
Note:
1 bit
Default Value: 0
DEBUG Port
addr: D0000C hex
R/W
1 bit
• Bit 9 – BTRXDB
When enabled, the output of the BT clock recovery circuit is transferred to the Debug pins.
• Bit 8 DBEN: Debug TX Enable
• Bit 7..0 – DBDATA: Debug Data
Interrupt
Controller
Registers
Interrupt Status Register
addr: F00000 hex
R
8 bits
• Bit 7 – VC: Voice Codec Interrupt
• Bit 6 – PCMCIA:PCMCIA Interrupt
• Bit 5 – UART: UART Interrupt
• Bit 4 – USB: USB Interrupt
• Bit 3 – BDPR: Baseband DPRAM Interrupt
• Bit 2 – BT: Baseband and Timers Interrupt
• Bit 1 – TM1: Timer 1 Interrupt
• Bit 0 – TM2: Timer 2 Interrupt
Note:
70
Default Value: 00 hex
AT76C551
1612D–08/01
AT76C551
Interrupt Mask Register
addr: F00004 hex
R/W
8 bits
• Bit 7 – VC Mask
Enables the Voice Codec interrupt
• Bit 6 – PCMCIA Mask
Enables the PCMCIA interrupt
• Bit 5 – UART Mask
Enables the UART interrupt
• Bit 4 – USB Mask
Enables the USB interrupt
• Bit 3 – BDPR Mask
Enables the Baseband DPRAM interrupt
• Bit 2 – BT Mask
Enables the Baseband and Timers interrupt
• Bit 1 – TM1 Mask
Enables the Timer 1 Interrupt
• Bit 0 – TM2 Mask
Enables the Timer 2 Interrupt
Note:
Default Value: 00 hex
Interrupt Masked Status Register
addr: F00008 hex
R
8 bits
• Bits 7..0 – US_ISM[7:0]
Each bit of this register is the boolean and of the corresponding bits of Interrupt Status register
and the Interrupt Mask Register.
Note:
Default Value: 00 hex
Interrupt Priority Register
addr: F0000C hex
R/W
8 bits
• Bit 7 – VC_PR
Enables FIQ priority for the Voice Codec interrupt line
• Bit 6 – PCMCIA_PR
Enables FIQ priority for PCMCIA interrupt line
• Bit 5 – UART_PR
Enables FIQ priority for UART interrupt line
• Bit 4 – USB _PR
Enables FIQ priority for USB interrupt line
• Bit 3 – BDPR_PR
Enables FIQ priority for DPRAM interrupt line
• Bit 2 – BT_PR
Enables FIQ priority for Baseband interrupt line
71
1612D–08/01
• Bit 1 – TM1_PR
Enables FIQ priority for the Timer 1 interrupt line
• Bit 0 – TM2_PR
Enables FIQ priority for the Timer 2 interrupt line
Note:
Timer Device
Registers
Default Value: 00 hex
AT76C551 incorporates two identical and completely independent system timer devices,
Timer Device 1 and Timer Device 2.
Each Timer Device is implemented as a 32-bit down counter which advances at a programmable rate driven by a prescale circuit. The counter is loaded with a programmable 32-bit value
(preload) when the Timer Device is enabled. When the counter reaches zero an interrupt to
the ARM core is generated. Timer Device behavior after the counter reaches zero depends on
the selected operating mode. In one-shot mode the counter stops and no interrupt is generated to the ARM until the Timer Device is reenabled. In periodic mode the counter is reloaded
with the preload value and countdown is continued, effectively generating a periodic interrupt
to the ARM core.
AT76C551 firmware can program and control each Timer Device via registers mapped into
AMBA memory space and thus accessible by the ARM core. (See Table 13).
Table 13. Timer Device Registers
Register Name
AMBA Address for
Timer Device 1
AMBA Address for
Timer Device 2
Timer Preload Low Register
F200000h
F200020h
Timer Preload High Register
F200004h
F200024h
Timer Value Low Register
F200008h
F200028h
Timer Value High Register
F20000Ch
F20002Ch
Timer Prescale Register
F200010h
F200030h
Timer Control Register
F200014h
F200034h
Timer Interrupt Clear Register
F200018h
F200038h
Timer Preload Low Register
R/W
16 bits
Timer Preload High Register
R/W
16 bits
Timer Preload Low Register and Timer Preload High Register contain the 32-bit preload value.
Timer Value Low Register
R
16 bits
Timer Value High Register
R
16 bits
Timer Value Low Register and Timer Value High Register reflect the 32-bit counter current
value. Note that full 32-bit counter value can be acquired by reading both Timer Value Low
Register and Timer Value High Register, but result consistency cannot be guaranteed by the
Timer Device and must be ensured by software means.
72
AT76C551
1612D–08/01
AT76C551
Timer Prescale Register
R/W
16 bits
Timer Prescale Register sets the divisor for the prescale circuit. If Timer Prescale Register
contains p and PAI clock frequency is f (MHz) then countdown rate for the Timer Device
counter will be r = f/p
Note:
The Timer Prescale Register must contain a non-zero value for proper Timer Device operation.
Timer Control Register
R/W
16 bits
• Bits 15..2 – Reserved
Returns 0 when read
• Bit 1 – Enable
Logic 1: The counter is allowed to run.
Logic 0: The counter is stopped. The Timer Device may be configured via Timer Preload Low
Register, Timer Preload High Register and Timer Prescale Register.
• Bit 0 – Periodic
Logic 1: Periodic mode operation is selected.
Logic 0: One-shot mode operation is selected.
Timer Interrupt Clear Register
W
16 bits
Writing Timer Interrupt Clear Register with any value clears an interrupt generated by the
Timer Device.
AT76C551 firmware is expected to write to Timer Interrupt Clear Register each time a Timer
Device interrupt is processed or else, interrupt request to the ARM core will persist.
73
1612D–08/01
Electrical Specifications
Recommended Operating Conditions
Table 14 shows the range for which Atmel library cells have been characterized. Operation of a device outside this range
may result in the device failing to meet some of its specification.
Table 14. Recommended Operating Conditions
Symbol
Parameter
Conditions
Min
Typ
Max
Unit
VDD3
DC Supply Voltage
Core and Standard I/Os
3.0
3.3
3.6
V
VI
DC Input Voltage
0
VDD
V
VO
DC Output Voltage
0
VDD
V
TEMP
Operating Free Air Temperature Range
-40
+85
°C
Industrial
Absolute Maximum Ratings
Operation of a device outside of the range givein in Table 15 may cause permanent damage to the device and/or affect
reliability.
Table 15. Absolute Maximum Ratings
Symbol
Parameter
Conditions
Min
Max
Unit
VDD3
DC Supply Voltage
Core and Standard I/Os
-0.3
3.6
V
VI
DC Input Voltage
-0.3
VDD+0.3
V
VO
DC Output Voltage
-0.3
VDD+0.3
V
TEMP
Operating Free Air Temperature Range
-40
+85
°C
TSG
Storage Temperature
-60
+150
°C
74
Industrial
AT76C551
1612D–08/01
AT76C551
DC Characteristics
The values shown in this table are valid for TA = 0°C to 85°C, VCC = 3.3V unless otherwise noted.
Oscillator Signals: XIN, XOUT
Table 16. Power Supply
Symbol
Parameter
VCC
Condition
Min
Max
Unit
Power Supply
3.3
V
ICC
Supply Current
50
mA
ICCS
Suspended Device Current
200
µA
Table 17. USB Signals: DP, DM
Symbol
Parameter
Condition
Min
Max
Unit
ILO
High-Z Data Line Leakage
0V < Vin < 3.3V
-10
+10
µA
VDI
Differential Input Sensitivity
DPx and DMx
0.2
VCM
Differential Common Mode Range
0.8
2.5
V
VSE
Single Ended Receiver Threshold
0.8
2.0
V
VCRS
Output Signal Crossover
Except first transition from idle state
1.3
2.0
V
VOL1
Static Output Low
RL of 15 kΩ to 3.6V
0.3
V
VOH1
Static Output High
RL of 15 kΩ to GND
Min
Max
Unit
V
Table 18. Oscillator Signals: XTAL1, XTAL2(1)
Symbol
Parameter
VLH
XTAL1 Switching Level
0.47
1.20
V
VHL
XTAL2 Switching Level
0.67
1.44
V
CX1
Input Capacitance, XTAL1
9
pF
CX2
Output Capacitance, XTAL2
9
pF
C12
XTAL1/XTAL2 Capacitance
1
pF
tSU
Start-up Time
2
ms
1
mW
DL
Note:
Condition
6 MHz, Fundamental
Drive Level
VCC = 3.3V, 13 MHz crystal, 120Ω Equiv. Series Resistor
1. XTAL2 must not be used to drive other circuitry.
75
1612D–08/01
AC Characteristics
Table 19. DP, DM Driver Characteristics
Symbol
Parameter
Condition
Min
Max
Unit
tR
Rise Time
CL = 50 pF
4
20
ns
tF
Fall Time
CL = 50 pF
4
20
ns
tRFM
TR/TF Matching
90
110
%
VCRS
ZDRV
(1)
Note:
Output Signal Crossover
Except First Transition From Idle State
1.3
2.0
V
Driver Output Resistance
Steady State Drive
29
44
W
1. With external 27W series resistor
Table 20. DP, DM Data Source Timings
Symbol
Parameter
Condition
TDRATE
Full Speed Data Rate
Average Bit Rate
TFRAME
Frame Interval
TDJ1
TDJ2
Source Diff Driver Jitter To Next Transition For Paired Transitions
Min
Max
Unit
11.97
12.03
Mbs
0.9995
1.0005
ms
-3.5
-4.0
3.5
4.0
ns
ns
TFDEOP
Source Jitter for Differential
Transition to SE0 Transition
-2
5
ns
TFEOPT
Source SE0 interval of EOP
160
175
ns
TFEOPR
Receiver SE0 interval of EOP
82
TJR1
TJR2
Recvr Data Jitter Tolerance
To Next Transition
For Paired Transitions
TFST
Width of SE0 interval during differential transition
76
-18.5
-9
ns
18.5
9
ns
ns
14
ns
AT76C551
1612D–08/01
Atmel Headquarters
Atmel Product Operations
Corporate Headquarters
Atmel Colorado Springs
2325 Orchard Parkway
San Jose, CA 95131
TEL (408) 441-0311
FAX (408) 487-2600
Europe
Atmel SarL
Route des Arsenaux 41
Casa Postale 80
CH-1705 Fribourg
Switzerland
TEL (41) 26-426-5555
FAX (41) 26-426-5500
Asia
Atmel Asia, Ltd.
Room 1219
Chinachem Golden Plaza
77 Mody Road Tsimhatsui
East Kowloon
Hong Kong
TEL (852) 2721-9778
FAX (852) 2722-1369
Japan
Atmel Japan K.K.
9F, Tonetsu Shinkawa Bldg.
1-24-8 Shinkawa
Chuo-ku, Tokyo 104-0033
Japan
TEL (81) 3-3523-3551
FAX (81) 3-3523-7581
1150 E. Cheyenne Mtn. Blvd.
Colorado Springs, CO 80906
TEL (719) 576-3300
FAX (719) 540-1759
Atmel Grenoble
Avenue de Rochepleine
BP 123
38521 Saint-Egreve Cedex, France
TEL (33) 4-7658-3000
FAX (33) 4-7658-3480
Atmel Heilbronn
Theresienstrasse 2
POB 3535
D-74025 Heilbronn, Germany
TEL (49) 71 31 67 25 94
FAX (49) 71 31 67 24 23
Atmel Nantes
La Chantrerie
BP 70602
44306 Nantes Cedex 3, France
TEL (33) 0 2 40 18 18 18
FAX (33) 0 2 40 18 19 60
Atmel Rousset
Zone Industrielle
13106 Rousset Cedex, France
TEL (33) 4-4253-6000
FAX (33) 4-4253-6001
Atmel Smart Card ICs
Scottish Enterprise Technology Park
East Kilbride, Scotland G75 0QR
TEL (44) 1355-357-000
FAX (44) 1355-242-743
e-mail
[email protected]
Web Site
http://www.atmel.com
BBS
1-(408) 436-4309
© Atmel Corporation 2001.
Atmel Corporation makes no warranty for the use of its products, other than those expressly contained in the Company’s standard warranty
which is detailed in Atmel’s Terms and Conditions located on the Company’s web site. The Company assumes no responsibility for any errors
which may appear in this document, reserves the right to change devices or specifications detailed herein at any time without notice, and does
not make any commitment to update the information contained herein. No licenses to patents or other intellectual property of Atmel are granted
by the Company in connection with the sale of Atmel products, expressly or by implication. Atmel’s products are not authorized for use as critical
components in life support devices or systems.
ATMEL ® is the registered trademarks of Atmel.
Bluetooth ™ is a trademark owned by the Bluetooth SIG, Inc.; ARM7TDMI®, ARM ®, Thumb ® are the registered
trademarks of ARM Limited; AMBA ™ is the trademark of ARM Limited.
Other terms and product names may be the trademarks of others.
Printed on recycled paper.
1612D–08/01/xM